Skip to content

Exclude cryptography package by default for tasks on PowerPC/zSeries distros #1314

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Jan 8, 2025

Conversation

eramongodb
Copy link
Collaborator

@eramongodb eramongodb commented Jan 7, 2025

Addresses task failures on PowerPC and zSeries distros due to failure to build the cryptography package (43.0.3) despite no notable updates to Rust toolchain dependencies in uv release notes since 0.5.9. Attempts to limit or pin the cryptography package version failed. Therefore, this PR proposes using dependency groups to by-default exclude packages required by the make_release.py script which require the cryptography package. Verified by this patch.

Note

uv installs the dev package by default (e.g. during a plain uv run command). We only use dev because we do not publish this project as a Python package itself (solely for development purposes). Therefore, include-group is used to add installed-by-default dev packages (config generation, formatting, and API documentation patching) with far less demanding dependency requirements. This list can be tweaked as necessary going forward.

Note

The current dependency tree looks as follows (including make_release) per uv tree --frozen:

mongo-cxx-driver v0.1.0
├── beautifulsoup4 v4.12.3 (group: apidocs)
│   └── soupsieve v2.6
├── packaging v24.2 (group: apidocs)
├── clang-format v19.1.5 (group: dev)
├── packaging v24.2 (group: dev)
├── pydantic v2.9.2 (group: dev)
│   ├── annotated-types v0.7.0
│   ├── pydantic-core v2.23.4
│   │   └── typing-extensions v4.12.2
│   └── typing-extensions v4.12.2
├── shrub-py v3.6.0 (group: dev)
│   ├── croniter v1.4.1
│   │   └── python-dateutil v2.9.0.post0
│   │       └── six v1.16.0
│   ├── pydantic v2.9.2 (*)
│   ├── pyyaml v6.0.2
│   └── typing-extensions v4.12.2
├── click v8.1.7 (group: make-release)
├── gitpython v3.1.43 (group: make-release)
│   └── gitdb v4.0.11
│       └── smmap v5.0.1
├── jira v3.8.0 (group: make-release)
│   ├── defusedxml v0.7.1
│   ├── packaging v24.2
│   ├── pillow v11.0.0
│   ├── requests v2.32.3
│   │   ├── certifi v2024.8.30
│   │   ├── charset-normalizer v3.4.0
│   │   ├── idna v3.10
│   │   └── urllib3 v2.2.3
│   ├── requests-oauthlib v2.0.0
│   │   ├── oauthlib v3.2.2
│   │   └── requests v2.32.3 (*)
│   ├── requests-toolbelt v1.0.0
│   │   └── requests v2.32.3 (*)
│   └── typing-extensions v4.12.2
├── looseversion v1.3.0 (group: make-release)
└── pygithub v2.5.0 (group: make-release)
    ├── deprecated v1.2.15
    │   └── wrapt v1.16.0
    ├── pyjwt[crypto] v2.10.0
    │   └── cryptography v43.0.3 (extra: crypto)
    │       └── cffi v1.17.1
    │           └── pycparser v2.22
    ├── pynacl v1.5.0
    │   └── cffi v1.17.1 (*)
    ├── requests v2.32.3 (*)
    ├── typing-extensions v4.12.2
    └── urllib3 v2.2.3
(*) Package tree already displayed

@eramongodb eramongodb requested a review from kevinAlbs January 7, 2025 20:12
@eramongodb eramongodb self-assigned this Jan 7, 2025
@eramongodb
Copy link
Collaborator Author

After further consideration, given patch-apidoc-* scripts are typically only executed during a release, it has been omitted from the dev group as well.

@eramongodb eramongodb merged commit 606ad78 into mongodb:master Jan 8, 2025
15 of 17 checks passed
@eramongodb eramongodb deleted the cxx-cryptography branch January 8, 2025 18:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants