Skip to content

v4.0.0

Compare
Choose a tag to compare
@nejch nejch released this 17 Oct 16:39
· 102 commits to main since this release

Feature

  • client: mask tokens by default when logging (1611d78)
  • api: add ProjectPackagePipeline
  • feat: officially support Python 3.12 (2a69c0e)
  • packages: Allow uploading bytes and files
  • feat: Use requests AuthBase classes (5f46cfd)
  • api: add support for job token scope settings (59d6a88)
  • api: support project remote mirror deletion (d900910)
  • api: add optional GET attrs for /projects/:id/ci/lint (40a102d)
  • api: add support for new runner creation API (#2635)
  • releases: Add support for direct_asset_path
  • feat: Added iteration to issue and group filters (8d2d297)

Fix

  • cli: add _from_parent_attrs to user-project manager (#2558) (016d90c)
  • cli: fix action display in --help when there are few actions
  • client: support empty 204 responses in http_patch (e15349c)
  • snippets: allow passing list of files (31c3c5e)

Documentation

  • correct error with back-ticks (#2653)
  • access_token: adopt token docs to 16.1
  • files: fix minor typo in variable declaration (118ce42)

Breaking

  • python-gitlab now explicitly passes auth to requests, meaning
    it will only read netrc credentials if no token is provided, fixing a bug where
    netrc credentials took precedence over OAuth tokens. This also affects the CLI,
    where all environment variables now take precedence over netrc files. (45b8930)
  • python-gitlab now stores metadata in pyproject.toml
    as per PEP 621, with setup.py removed. pip version v21.1 or higher is
    required if you want to perform an editable install. (71fca8c)
  • Constants defined in gitlab.const can no longer be imported globally from gitlab.
    Import them from gitlab.const instead. (e4a1f6e)
  • Support for the deprecated as_list argument in
    list() calls has been removed. Use iterator instead. (9b6d89e)
  • The deprecated lint() method is no longer available.
    Use ci_lint.create() instead. (0b17a2d)
  • The deprecated project.artifact() method is no longer available.
    Use project.artifacts.raw() instead. (90134c9)
  • The deprecated project.artifacts() method is no longer available.
    Use project.artifacts.download() instead. (42639f3)
  • The deprecated group.add_ldap_group_link() and group.delete_ldap_group_link()
    methods are no longer available. Use group.ldap_group_links.create() and group.ldap_group_links.delete()
    instead. (5c8b7c1)
  • The deprecated project.transfer_project() method is no longer available.
    Use project.transfer() instead. (27ed490)
  • The --all option is no longer available in the CLI. Use --get-all instead. (e9d48cf)
  • As of python-gitlab 4.0.0, Python 3.7 is no longer
    supported. Python 3.8 or higher is required. (058d5a5)