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

Upgrade to pari 2.17, cypari 2.2.1, cysignals 1.12.3 #38749

Open
wants to merge 34 commits into
base: develop
Choose a base branch
from

Conversation

antonio-rojas
Copy link
Contributor

NEXT_PRIME_VIADIFF is removed in 2.17, port pari_prime_range to pari_PRIMES instead

Needs sagemath/cypari2#165 applied to cypari

@antonio-rojas
Copy link
Contributor Author

Needs work because this is not compatible with 2.15. So either it needs to be merged with the pari upgrade or be made to work with older pari too (no idea how).

Running tests now.

@antonio-rojas antonio-rojas changed the title Fix build with pari 2.17 [WIP] Fix build with pari 2.17 Oct 3, 2024
@antonio-rojas
Copy link
Contributor Author

Many test failures.

@antonio-rojas antonio-rojas changed the title [WIP] Fix build with pari 2.17 [WIP] Fix build and tests with pari 2.17 Oct 3, 2024
@jhpalmieri
Copy link
Member

If the changes here eventually allow us to use a system Pari 2.17, then we should undo the change in #38772.

@antonio-rojas antonio-rojas changed the title [WIP] Fix build and tests with pari 2.17 Fix build and tests with pari 2.17 Oct 6, 2024
@antonio-rojas
Copy link
Contributor Author

antonio-rojas commented Oct 6, 2024

With this MR and the cypari fixes sagemath/cypari2#165 and sagemath/cypari2#166 all tests are passing with pari 2.17.

The changes are not compatible with 2.15 though, making them compatible requires more work. Also, some pari opeations (such as the number field prime ideals above a given prime) give random output with 2.17, which makes it harder to test. To solve both issues (and make tests more future proof), we should gradually move away from testing the exact output to just testing that the output is correct.

@isuruf
Copy link
Member

isuruf commented Jan 21, 2025

conda pari packages should be available now

@antonio-rojas
Copy link
Contributor Author

Thanks. How does one force re-running the CI?

@tornaria
Copy link
Contributor

Thanks. How does one force re-running the CI?

push a new head (e.g. use amend to redo the last commit so its hash changes)

@dimpase
Copy link
Member

dimpase commented Jan 21, 2025

conda pari packages should be available now

we probably also need conda-forge/cysignals-feedstock#55

@dimpase
Copy link
Member

dimpase commented Jan 21, 2025

conda pari packages should be available now

we probably also need conda-forge/cysignals-feedstock#55
@isuruf
also a bump of https://anaconda.org/conda-forge/cypari2 to 2.2.1

@isuruf
Copy link
Member

isuruf commented Jan 22, 2025

Both are available now

@antonio-rojas
Copy link
Contributor Author

Can someone who understands conda please update the environment-*.yml stuff?

@dimpase
Copy link
Member

dimpase commented Jan 22, 2025

yeah, we actually need to manually run some script nowadays to update these. Perhaps it can be automated. @tobiasdiez

@dimpase
Copy link
Member

dimpase commented Jan 23, 2025

Can someone who understands conda please update the environment-*.yml stuff?

@antonio-rojas please check tools/README.md and run tools/update-conda.py
(if you have a conda install).
Or I can try do it for you and make a PR to your PR branch. Tell me your preferences

@antonio-rojas
Copy link
Contributor Author

I don't have a conda install, I'd appreciate a PR

@dimpase
Copy link
Member

dimpase commented Jan 24, 2025

I don't have a conda install, I'd appreciate a PR

please see antonio-rojas#5

(the macOS envs still need a fix on the conda-forge side, I'll add more info on antonio-rojas#5
)

@antonio-rojas
Copy link
Contributor Author

antonio-rojas commented Jan 24, 2025

sigh - conda CI is now failing because of the cysignals upgrade to the broken 1.12.2 version - can we please just merge this and then deal with the cysignals upgrade (which would need a new release made first)?

@user202729
Copy link
Contributor

yeah, we actually need to manually run some script nowadays to update these. Perhaps it can be automated. @tobiasdiez

It's intentional that the list of files are explicitly written in a file so that meson/ninja can find changes quickly without needing to glob through a list of files.

The only question is whether they should be committed to git or autogenerated by some bootstrap script dynamically for each user.

Also related #39172

@dimpase
Copy link
Member

dimpase commented Jan 25, 2025

another update for envs: antonio-rojas#6 @antonio-rojas

@antonio-rojas
Copy link
Contributor Author

@dimpase can you make a new cysignals release to fix the tests breakage?

@dimpase
Copy link
Member

dimpase commented Jan 25, 2025

@dimpase can you make a new cysignals release to fix the tests breakage?

Just done, it's on pypi already. @isuruf @antonio-rojas

@antonio-rojas antonio-rojas changed the title Upgrade to pari 2.17, cypari 2.2.1 Upgrade to pari 2.17, cypari 2.2.1, cysignals 1.12.3 Jan 25, 2025
@tornaria tornaria closed this Jan 26, 2025
@tornaria tornaria reopened this Jan 26, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants