Commit Graph
2098 Commits
Author SHA1 Message Date
Jirka Borovec 13e178a3ab Set line length to 120 characters (#2599) 2023-07-13 17:37:20 +02:00
Enrico Minack de80ff4b91 Add retry issue to GithubException, don't log it (#2611) 2023-07-11 16:10:42 +02:00
Trim21 8bdfc3a0d7 Merge some simple class' type stubs back to source (#2570) 2023-07-11 15:57:16 +02:00
Trim21andEnrico Minack 61f9ae6c4b Merge some simple classes' type stubs back to source (#2576)
Co-authored-by: Enrico Minack <github@enrico.minack.dev>
2023-07-08 12:14:34 +02:00
Trim21 f087cad3cb Add message property to GithubException (#2591) 2023-07-08 11:51:19 +02:00
Mauricio Alejandro Martínez PachecoandEnrico Minack 91b3f40f79 Add support for repo and org level actions variables (#2580)
Co-authored-by: Enrico Minack <github@enrico.minack.dev>
2023-07-07 15:29:30 +02:00
Thomas Burghout 766df993da Add missing arguments to Workflow.get_runs() (#2346)
Adds missing arguments created, exclude_pull_requests, head_sha to the query options of Workflow.get_runs().
2023-07-07 15:14:40 +02:00
Jirka Borovec 3c880e7669 CI: Build and check package before release (#2593) 2023-07-07 09:01:45 -04:00
Trim21andEnrico Minack e306a3209b Merge Issue.pyi back to source (#2568)
Co-authored-by: Enrico Minack <github@enrico.minack.dev>
2023-07-07 11:43:29 +02:00
950a69493f Use timezone-aware reset datetime in GithubRetry.py (#2610)
Co-authored-by: Patryk Szulczyk <patryk.szulczyk@skyscanner.net>
Co-authored-by: Enrico Minack <github@enrico.minack.dev>
2023-07-07 09:05:48 +02:00
Trim21 5fcb0c7d3b Use typing_extensions for TypedDict (#2592) 2023-07-06 09:21:15 +02:00
Trim21 50e26d566f Merge WorkflowRun type stub back to source (#2554) 2023-07-05 09:50:31 +02:00
Trim21 f6e6af6f5a Merge ApplicationOAuth.pyi back to source (#2569) 2023-07-05 09:02:59 +02:00
Christian ClaussandEnrico Minack 2e5cd31e69 CI: Update action actions/setup-python (#2382)
Co-authored-by: Enrico Minack <github@enrico.minack.dev>
2023-07-04 13:23:27 +02:00
Felipe Peter 72840de4b3 Add more methods and attributes to Repository.pyi (#2581) 2023-07-04 12:48:17 +02:00
c4c2e5273c Add github.Rate.used field (#2531)
Co-authored-by: Nikolay Yurin <yurinnick@meta.com>
Co-authored-by: Enrico Minack <github@enrico.minack.dev>
2023-07-04 09:50:00 +02:00
Trim21andEnrico Minack c5682489d9 Merge Branch type stubs back to source (#2571)
Introduces new helper methods `is_defined`, `is_undefined`, `is_optional`, `is_optional_list` that is going to simplify input assertions in all our methods.

Co-authored-by: Enrico Minack <github@enrico.minack.dev>
2023-07-04 09:42:53 +02:00
Jirka Borovec 7324110249 CI: Make pytest color logs (#2597) 2023-07-04 09:12:54 +02:00
Jirka Borovec 11bb6bd719 precommit: move flake8 as last (#2595) 2023-07-04 08:33:12 +02:00
Enrico MinackandJirka Borovec 5c6008948a Test on Windows and macOS, don't fail fast (#2590)
Co-authored-by: Jirka Borovec <6035284+Borda@users.noreply.github.com>
2023-07-04 08:22:24 +02:00
Enrico Minack bc68626941 Publish version 2.0.0 (#2583) 2023-07-04 07:59:53 +02:00
Trim21 8d3b905786 Remove symlinks from test data (#2588) 2023-06-30 21:46:12 +02:00
Enrico Minack b41dd629a1 Add myself to funding (#2585) 2023-06-30 10:58:52 -04:00
Thomas Devoogdt c5542a6ae8 Fix Branch.bypass_pull_request_allowances failing with "nil is not an object" (#2535)
Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com>
2023-06-30 11:58:40 +02:00
Enrico MinackandJohn T. Wodder II 0177f7c513 Make datetime objects timezone-aware (#2565)
Comparing timestamps returned by the API with naive datetime objects (without timezone information) will raise an error. Add `tzinfo=datetime.timezone.utc` to your datetime instance.

Co-authored-by: John T. Wodder II <git@varonathe.org>
2023-06-28 21:47:48 +02:00
Enrico Minack 99155806ed Throttle requests to mitigate RateLimitExceededExceptions (#2145)
This introduces a throttling of requests to the Github REST API (1s for writes, 0.25s for reads, configurable)
to mitigate secondary rate limit errors and comply with Github's best practices:

https://docs.github.com/en/rest/guides/best-practices-for-integrators?apiVersion=2022-11-28#dealing-with-secondary-rate-limits
2023-06-28 21:38:29 +02:00
Enrico Minack 0bb72ca004 Retry retryable 403 (rate limit) (#2387) 2023-06-28 12:49:20 -04:00
Trim21 094538e10c Force Unix EOL (#2573) 2023-06-27 14:34:12 +02:00
Trim21 3bb4e901fb Merge Artifact type stub back to source (#2553) 2023-06-26 08:28:49 +02:00
Enrico Minack e66c163a96 Move to main default branch (#2566) 2023-06-23 04:46:37 +08:00
Enrico Minack 14ae2cad4c Release 1.59.0 (#2563) 2023-06-22 19:41:10 +02:00
Enrico Minack ff3b80f8f1 Test and fix UTC issue with AppInstallationAuth (#2561) 2023-06-22 16:15:34 +02:00
Giulia Vergottini d514222cb1 Add type stub for MainClass.get_project_column (#2502)
Co-Authored: Attila Dulovics <dulovicsattila@gmail.com>
2023-06-21 21:11:04 +02:00
Enrico Minack ea45237d3b Sync GithubIntegration __init__ arguments with github.Github (#2556)
Github and GithubIntegration now both support the same (full) set of Requester arguments.
Creating a Github instance for a Github App Installation coming from GithubIntegration uses the same
Requester arguments (except for auth).
2023-06-21 09:04:19 +02:00
Jonathan LeitschuhandEnrico Minack f4e9dcb341 Update MAINTAINERS (#2545)
Co-authored-by: Enrico Minack <github@enrico.minack.dev>
2023-06-21 07:23:55 +08:00
Enrico Minack 006766f985 Link to stable docs, update introduction in package used by pypi, move auth arg front (#2557) 2023-06-20 15:04:04 +02:00
Jonathan GregandEnrico Minack 517ad33654 Add Webhook Deliveries (#2508)
Co-authored-by: Enrico Minack <github@enrico.minack.dev>
2023-06-20 08:49:02 +02:00
Jeppe Fihl-PearsonandEnrico Minack 804c3107c8 Add support for workflow jobs and steps (#1951)
Co-authored-by: Enrico Minack <github@enrico.minack.dev>
2023-06-20 14:37:56 +08:00
Trim21andEnrico Minack cb50dec5ba Merge PaginatedList.pyi back to source (#2555)
Co-authored-by: Enrico Minack <github@enrico.minack.dev>
2023-06-20 08:13:20 +02:00
b6258f4be9 merge GithubObject.pyi/Requester.pyi stubs back to source (#2463)
Co-authored-by: Enrico Minack <github@enrico.minack.dev>
Co-authored-by: Jonathan Leitschuh <jonathan.leitschuh@gmail.com>
2023-06-16 11:57:35 -04:00
chantra 6d4b6d1419 Add support for get_app() with App authentication (#2549)
Moves `Github.get_app()` called without `slug` parameter into `GithubIntegration`, because it needs an `AppAuth`,
and we collect all such endpoints there. Calling `Github.get_app()` without `slug` parameter is now deprecated.

Replaces `datetime.utcnow()` with `datetime.now(timezone.utc)`, as it is deprecated in Python 3.12.
2023-06-16 08:09:16 +02:00
Heitor Polidoro 6a21761e0f Allow multiline comments in PullRequest (#2540)
- change deprecated parameter position to line
- add a parameter to allow multiline comment: start_line
- add a parameter to allow comment as suggestion: as_suggestion
- add more missing parameters: side, start_side, in_reply_to, subject_type
2023-06-15 21:16:58 +02:00
Trim21 52fc107735 [CI] Moving linting into separate workflow (#2522) 2023-06-14 21:26:49 +02:00
Enrico Minack f291a368bb Implement AppUserAuth for Github App user tokens (#2546)
Allows to refresh Github App user token. Integrates `ApplicationOAuth` into `github.Auth`.
2023-06-14 19:40:29 +02:00
alson 0384e2fd13 Add support for environments (#2223) 2023-06-13 21:07:11 +02:00
Enrico Minack 7be3f76372 Make Requester.__createException robust against missing message and body (#2159) 2023-06-13 11:14:14 +02:00
Enrico Minack 6407512079 Fix auth issues with Installation.get_repos (#2547) 2023-06-13 08:35:47 +02:00
Jonathan Leitschuh daf62bd461 Add support for new RepositoryAdvisories API 🎉 (#2483) 2023-06-09 13:42:18 -04:00
Enrico Minack 84912a675c Make MainClass.get_app return completed GithubApp when slug is given (#2543)
Fixes slug attribute to fetch app when not set. Loads app with slug lazily, fetch complete app without slug.
2023-06-08 10:06:28 +02:00
Enrico Minack fc2d0e150a Add authentication classes, move auth logic there (#2528)
This adds argument `auth` and deprecates `login_or_token`, `password`, `jwt`, and `app_auth` arguments of `github.Github`.

This adds argument `auth` and deprecates `integration_id`, `private_key` of `github.GithubIntegration`.

This deprecates the `create_jwt` method of `github.GithubIntegration`, replaced by `github.Auth.AppAuth.create_jwt`.
2023-06-08 09:17:25 +02:00