157 Commits
Author SHA1 Message Date
Max Mehl 26d353e7aa Add license attribute to Repository (#2721) 2023-09-04 16:09:03 +02:00
Roberto Pastor Muela 65cfeb1b8b Add missing attributes to Repository (#2742) 2023-09-04 09:28:01 +02:00
Oskar Jansson b6a28a26f2 Add is_alphanumeric attribute to Autolink and Repository.create_autolink (#2630) 2023-08-31 21:08:53 +02:00
Enrico Minack 8bf542aedd Pass Requester arguments to AppInstallationAuth.__integration (#2695) 2023-08-28 15:43:49 +02:00
YugoHinoandEnrico Minack a7bfdf2d65 Adding feature for enterprise consumed license (#2626)
Co-authored-by: Enrico Minack <github@enrico.minack.dev>
2023-08-17 21:21:20 +02:00
Armen Martirosyan eadc241e07 Search Workflows by Name (#2711) 2023-08-17 21:15:21 +02:00
Mauricio Alejandro Martínez PachecoandEnrico Minack bcca758d13 Add Secret and Variable classes (#2623)
Co-authored-by: Enrico Minack <github@enrico.minack.dev>
2023-08-10 10:06:44 +02:00
vanya20074andEnrico Minack 4933459e6b Fix assertion for subject_type in creating pull request review comment (#2642)
Co-authored-by: Enrico Minack <github@enrico.minack.dev>
2023-07-21 19:02:14 +02:00
7a80fad9bb Add required_linear_history attribute to BranchProtection (#2643)
Co-authored-by: Jacob Beard <jake@minnow.io>
Co-authored-by: Paul Melnikow <github@paulmelnikow.com>
2023-07-18 14:26:35 +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
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
Trim21 8d3b905786 Remove symlinks from test data (#2588) 2023-06-30 21:46:12 +02: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 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
Trim21 094538e10c Force Unix EOL (#2573) 2023-06-27 14:34:12 +02:00
Enrico Minack ff3b80f8f1 Test and fix UTC issue with AppInstallationAuth (#2561) 2023-06-22 16:15:34 +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 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
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
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 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 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
Enrico Minack a8e7c4237d Add sort order and direction for getting comments (#2544)
Note: This is a breaking change. The order of parameters of `PullRequest.get_review_comments` has changed to match other `get_comments` methods and Github API parameter order. Users should change `PullRequest.get_review_comments(since)` to `PullRequest.get_review_comments(since=since)`.

Calling without parameter is not breaking: `PullRequest.get_review_comments()`
2023-06-07 14:50:07 +02:00
Trim21andEnrico Minack 9f52e9486a Add name filter to Repository.get_artifacts() (#2459)
Co-authored-by: Enrico Minack <github@enrico.minack.dev>
2023-06-01 14:32:55 +02:00
Sasha Chung 10816389d2 Add name, display_title and path attributes to WorkflowRun (#2397) 2023-06-01 10:41:33 +02:00
Jonathan Leitschuh b94a83cbf3 Add new create_fork arguments (#2493)
Adds support for new `create_fork` arguments:
 - `name` - To set the name of the fork on creation
 - `default_branch_only` - To only include the default branch

Signed-off-by: Jonathan Leitschuh <Jonathan.Leitschuh@gmail.com>
2023-05-23 17:40:02 +02:00
Wojciech Barczyński 49b3ae16bf Add generate_release_notes parameter to create_git_release and create_git_tag_and_release (#2417) 2023-05-23 15:53:33 +02:00
BradChengIRESSandGlenn McDonald 8c4b9465e6 Add allow_auto_merge support to Repository (#2477)
Co-authored-by: Glenn McDonald <testworksau@users.noreply.github.com>
2023-05-18 15:33:18 -04:00
Enrico Minack 17cd0b7964 Raise error on unsupported redirects, log supported redirects (#2524) 2023-05-13 20:36:08 +02:00
Juan Manuel "Kang" PérezandJuan Manuel Kang Perez e296dbdbad Add missing attributes to Branch (#2512)
Co-authored-by: Juan Manuel "Kang" Perez <devel@kangmak.es>
2023-05-09 12:06:35 +02:00
Felipe Peter bab4180fd5 Add allow_update_branch option to Organization (#2465) 2023-05-08 20:16:36 +02:00
Nicolas SchweitzerandNicolas Schweitzer 5aa544a1cf Add support for Issue.state_reason #2370 (#2392)
Co-authored-by: Nicolas Schweitzer <nicolas.schweitzer@amadeus.com>
2023-05-08 08:01:05 +02:00
Mikhail f. Shiryaev 4198dbfbac Add parameters to Repository.get_workflow_runs (#2408) 2023-05-06 17:00:09 +08:00
Enrico Minack a343100084 Fix GithubIntegration using exiring jwt (#2460) 2023-05-05 14:54:52 +02:00
5e27c10a31 Support full GitHub app authentication (#1986)
* Support full GitHub app authentication
 Refactor GithubIntegration class and add test case for app authentication
Add permissions and repository properties in InstallationAuthorization
Set JWT_EXPIRY=60 by default in GithubIntegration constructor
* Modify existing testcases for GithubIntegration as per the framework and add missing tests
* Provide installation ID for creating the access token instead of getting the first installation
* Add optional permissions support for installation access token
* Add lock around app authentication
* Keep compatibility for importing GithubIntegration from MainClass
* Group app authentication parameters in a class

Co-authored-by: Malik Ammar Akbar <malikammar.akbar@pfizer.com>
Co-authored-by: Enrico Minack <github@enrico.minack.dev>
2023-02-06 20:50:15 +11:00
Ibrahim Hussainiandhussaiia 6c53e5442a feat: add allow_forking to Repository (#2380)
* chore(dependency): flake8 has moved to github

* feat: add allow_forking to Repository

* chore: linting

Co-authored-by: hussaiia <ibrahim.hussaini@cba.com.au>
2022-12-15 11:05:02 +08:00
Eric Nieuwland 7902351d4f Add code scanning alerts (#2227) 2022-11-09 14:59:34 +08:00
Gabriele Oliaro 3a6235b56e [WorkflowRun] - Add missing attributes (run_started_at & run_attempt), remove deprecated unicode type (#2273) 2022-10-29 11:26:24 +08:00
Marco Köpcke 0fadd6be8e Add support for repository autolink references (#2016) 2022-10-29 09:03:57 +08:00
Aleksei FedotovandAleksei Fedotov 437ff8452a Add class Artifact (#2313) (#2319)
Co-authored-by: Aleksei Fedotov <aleksei@fedotov.email>
2022-10-25 11:02:33 +08:00
b50283a7cf Create repo from template (#2090)
Co-authored-by: bagashvilit <bagashvilit@allegheny.edu>
Co-authored-by: WonjoonC <chos@allegheny.edu>
Co-authored-by: Isac Souza <isouza@daitangroup.com>
Co-authored-by: Isac Souza <isouza@daitan.com>
Co-authored-by: Liuyang Wan <tsfdye@gmail.com>
2022-10-13 09:13:31 +08:00
xmo-odoo 001970d4a8 Improve signature of Repository.create_repo (#2118)
The docstring stated that `"*"` and `"none"` were valid values for the
organization, but neither was actually supported (unless your
organization was called `"none"`).

Remove the misleading information from the docstring, and add support
for passing in an actual `Organization` object, for better typing and
reliability properties.

Fixes #2116
2021-12-20 18:27:19 +11:00
Steve Kowalik 5c290c9a32 Fix replay data for Organization.create_secret() (#2096)
A recently merged PR added a const, which will be used when fetching
repositories. Update replay data for a test that was not included in
that change.
2021-11-01 21:19:38 +11:00
Tanner 8d1397af2f Add support for 'visibility' attribute preview for Repositories (#1872)
Expose the new 'visibility' attribute for repository objects.

Fixes #1446
2021-11-01 21:02:16 +11:00
Steve Kowalik 6452ddfeb4 Add Repository.rename_branch method (#2089)
The GitHub API exposes an endpoint to rename a branch, so we should
support calling it. Sadly, there is not enough information to add
that method to the Branch class, so expose it in the Repository object.

Fixes #1901
2021-10-24 15:21:31 +11:00