Skip to content
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

build: pin jsonschema to >4, <4.18 to avoid installing 4.18.x #49

Merged
merged 4 commits into from
Jul 25, 2023

Conversation

DnPlas
Copy link
Contributor

@DnPlas DnPlas commented Jul 25, 2023

Because some dependencies of jsonschema now require the rust toolchain (see 1 and 2), building charms that depend on SDI (and therefore pull jsonschema) fail when building because none of them have rustc available when pip installing the charm's python dependencies.

Reasoning:
jsonschema 4.18.x introduced a dependency on rdps-py which at the same time introduced a dependency on maturin, a python package that requires the rustc toolchain to be built and installed from source. jsonschema 4.17.x does not have that dependency.

Merge after #50

Links:
[1]python-jsonschema/jsonschema#1117
[2] python-jsonschema/jsonschema#1114

Part of: canonical/bundle-kubeflow#648

Because some dependencies of jsonschema now require the rust toolchain (see 1 and 2), building
charms that depend on SDI (and therefore pull jsonschema) fail when building because none
of them have rustc available when pip installing the charm's python dependencies.

Reasoning:
jsonschema 4.18.x introduced a dependency on rdps-py which at the same time introduced
a dependency on maturin, a python package that requires the rustc toolchain to be
built and installed from source. jsonschema 4.17.x does not have that dependency.

Links:
[1]python-jsonschema/jsonschema#1117
[2] python-jsonschema/jsonschema#1114

Partially fixes: canonical/bundle-kubeflow#648
@DnPlas DnPlas requested a review from a team as a code owner July 25, 2023 11:02
@DnPlas DnPlas requested review from ca-scribner and removed request for a team July 25, 2023 12:16
Copy link
Contributor

@addyess addyess left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

poetry requirements don't make things easy

pyproject.toml Outdated Show resolved Hide resolved
Co-authored-by: Adam Dyess <adam.dyess@canonical.com>
Copy link
Contributor

@addyess addyess left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is right if the intent is to avoid 4.18.* and beyond

pyproject.toml Outdated Show resolved Hide resolved
@DnPlas DnPlas changed the title build: pin jsonschema to ^4.17.3 to avoid installing 4.18.x build: pin jsonschema to ^4.17.* to avoid installing 4.18.x Jul 25, 2023
@addyess
Copy link
Contributor

addyess commented Jul 25, 2023

🚀

@DnPlas DnPlas changed the title build: pin jsonschema to ^4.17.* to avoid installing 4.18.x build: pin jsonschema to >4, <4.18 to avoid installing 4.18.x Jul 25, 2023
@DnPlas DnPlas merged commit 8ab9b71 into main Jul 25, 2023
@DnPlas DnPlas deleted the dnplas-pin-jsonschema branch July 25, 2023 14:58
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.

3 participants