| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
Add support for `projects.groups.list()` endpoint.
Closes #1717
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before we were generating 725 tests for the
meta/test_ensure_type_hints.py tests. Which isn't a huge concern as
it was fairly fast. But when we had a failure we would usually get two
failures for each problem as the same test was being run multiple
times.
Changed it so that:
1. Don't add tests that are not for *Manager classes
2. Use a set so that we don't have duplicate tests.
After doing that our generated test count in
meta/test_ensure_type_hints.py went from 725 to 178 tests.
Additionally removed the parsing of `pyproject.toml` to generate files
to ignore as we have finished adding type-hints to all files in
gitlab/v4/objects/. This also means we no longer use the toml library
so remove installation of `types-toml`.
To determine the test count the following command was run:
$ tox -e py39 -- -k test_ensure_type_hints
|
|\
| |
| | |
chore: enable mypy for tests/meta/*
|
| | |
|
|/
|
|
|
|
|
|
|
| |
The test was checking twice if the same group3 was not in the returned
list. Should have been checking for group3 and group4.
Also added a test that only skipped one group and checked that the
group was not in the returned list and a non-skipped group was in the
list.
|
|
|
|
|
|
|
|
| |
Fix classes which don't have correct 'get()' methods for classes
derived from GetMixin.
Add a unit test which verifies that classes have the correct return
type in their 'get()' method.
|
|
|
|
|
| |
The 'test_mro.py' file is not really a unit test but more of a 'meta'
check on the validity of the code base.
|
| |
|
| |
|
|\
| |
| | |
feat(api): add merge trains
|
| |
| |
| |
| | |
Add support for merge trains
|
| | |
|
| |
| |
| |
| |
| |
| | |
Adds promotion to Project Milestones
Signed-off-by: Raimund Hook <raimund.hook@exfo.com>
|
|\ \
| | |
| | | |
feat(api): add merge request approval state
|
| |/
| |
| |
| | |
Add support for merge request approval state
|
| |
| |
| |
| |
| |
| | |
Adds a mixin that allows the /promote endpoint to be called.
Signed-off-by: Raimund Hook <raimund.hook@exfo.com>
|
| |
| |
| |
| |
| | |
* fix(api): delete 'group-runner get' and 'group-runner delete' commands
Co-authored-by: Léo GATELLIER <git@leogatellier.fr>
|
| | |
|
| | |
|
|/
|
|
|
| |
BREAKING CHANGE: As of python-gitlab 3.0.0, the default branch for development
has changed from `master` to `main`.
|
| |
|
| |
|
|
|
|
|
| |
BREAKING CHANGE: remove deprecated constants defined in
gitlab.v4.objects, and use only gitlab.const module
|
|
|
|
|
| |
BREAKING CHANGE: remove deprecated tag release API.
This was removed in GitLab 14.0
|
|
|
|
|
| |
BREAKING CHANGE: remove deprecated project.issuesstatistics
in favor of project.issues_statistics
|
|
|
|
|
| |
BREAKING CHANGE: remove deprecated members.all() method
in favor of members_all.list()
|
|
|
|
| |
BREAKING CHANGE: remove deprecated pipelines() methods in favor of pipelines.list()
|
|
|
|
|
| |
BREAKING CHANGE: python-gitlab will now default to gitlab.com
if no URL is given
|
|\
| |
| | |
fix!: raise error if there is a 301/302 redirection
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Before we raised an error if there was a 301, 302 redirect but only
from an http URL to an https URL. But we didn't raise an error for
any other redirects.
This caused two problems:
1. PUT requests that are redirected get changed to GET requests
which don't perform the desired action but raise no error. This
is because the GET response succeeds but since it wasn't a PUT it
doesn't update. See issue:
https://github.com/python-gitlab/python-gitlab/issues/1432
2. POST requests that are redirected also got changed to GET
requests. They also caused hard to debug tracebacks for the user.
See issue:
https://github.com/python-gitlab/python-gitlab/issues/1477
Correct this by always raising a RedirectError exception and improve
the exception message to let them know what was redirected.
Closes: #1485
Closes: #1432
Closes: #1477
|
| |
| |
| |
| |
| | |
Add an additional check to attempt to solve the flakiness of the
test_merge_request_should_remove_source_branch() test.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Convert our manager usage to be done via type annotations.
Now to define a manager to be used in a RESTObject subclass can simply
do:
class ExampleClass(CRUDMixin, RESTObject):
my_manager: MyManager
Any type-annotation that annotates it to be of type *Manager (with the
exception of RESTManager) will cause the manager to be created on the
object.
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The 'managers' are dynamically created. This unfortunately means that
we don't have any type-hints for them and so editors which understand
type-hints won't know that they are valid attributes.
* Add the type-hints for the managers we define.
* Add a unit test that makes sure that the type-hints and the
'_managers' attribute are kept in sync with each other.
* Add unit test that makes sure specified managers in '_managers'
have a name ending in 'Managers' to keep with current convention.
* Make RESTObject._managers always present with a default value of
None.
* Fix a type-issue revealed now that mypy knows what the type is
|
| |
|
|
|
|
|
|
| |
`retry_transient_errors` can now be set through the Gitlab instance and global configuration
Documentation for API usage has been updated and missing tests have been added.
|
| |
|
|
|
|
|
| |
Stop requiring a `name` attribute for creating a Release, since a
release name has not been required since GitLab 12.5.
|
|
|
|
|
|
|
| |
- Add test for using merge_ref on non-merged MR
- Add test for using merge_ref on MR with conflicts
Signed-off-by: Matej Focko <mfocko@redhat.com>
|
|\
| |
| | |
feat(api): add group hooks
|
| | |
|
| | |
|
| | |
|
|/ |
|
| |
|
|
|
|
|
|
|
|
| |
Sometimes we have errors where we don't get a dictionary passed to
RESTObject.__init__() method. This breaks things but in confusing
ways.
Check in the __init__() method and raise an exception if it occurs.
|
|
|
| |
chore: fix functional project service test
|
| |
|
|
|
| |
feat(objects): add support for Group wikis
|
|
|
|
|
|
|
| |
Timing issues between requesting group deletion and GitLab enacting that
deletion resulted in errors while attempting to delete a user which was
the sole owner of said group (see: test_groups). Pass the 'hard_delete'
parameter to ensure user deletion.
|