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

Meta-ticket: improve conda setup #33331

Closed
tobiasdiez opened this issue Feb 13, 2022 · 27 comments
Closed

Meta-ticket: improve conda setup #33331

tobiasdiez opened this issue Feb 13, 2022 · 27 comments

Comments

@tobiasdiez
Copy link
Contributor

tobiasdiez commented Feb 13, 2022

Fix remaining tests that fail:

  • sage distutils classes
File "src/sage/interfaces/sage0.py", line 208, in sage.interfaces.sage0.Sage.cputime
Failed example:
    sage0.cputime()     # random output
Exception raised:
    Traceback (most recent call last):
      File "/home/runner/work/sage/sage/src/sage/doctest/forker.py", line 695, in _run
        self.compile_and_execute(example, compiler, test.globs)
      File "/home/runner/work/sage/sage/src/sage/doctest/forker.py", line 1093, in compile_and_execute
        exec(compiled, globs)
      File "<doctest sage.interfaces.sage0.Sage.cputime[0]>", line 1, in <module>
        sage0.cputime()     # random output
      File "/home/runner/work/sage/sage/src/sage/interfaces/sage0.py", line 219, in cputime
        return float(s)
    ValueError: could not convert string to float: 'iniconda/envs/sage-build/lib/python3.8/site-packages/setuptools/_distutils/version.py:351: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead.\n  other = LooseVersion(other)\n1.60718'
 File "src/sage/repl/ipython_kernel/install.py", line 127, in sage.repl.ipython_kernel.install.SageKernelSpec.use_local_threejs
Failed example:
    os.path.isdir(threejs)
Expected:
    True
Got:
    False

CC: @isuruf @dimpase @saraedum @mkoeppe @slel

Component: build

Issue created by migration from https://trac.sagemath.org/ticket/33331

@tobiasdiez tobiasdiez added this to the sage-9.6 milestone Feb 13, 2022
@tobiasdiez

This comment has been minimized.

@tobiasdiez

This comment has been minimized.

@isuruf

This comment has been minimized.

@isuruf
Copy link
Member

isuruf commented Feb 17, 2022

comment:4

The correct version of rpy2, scipy, sphinx among other packages is not installed in the conda env, so add version constraints in the corresponding conda.txt files

@tobiasdiez, is this fixed by #33358 too?

@tobiasdiez
Copy link
Contributor Author

comment:5

Replying to @isuruf:

The correct version of rpy2, scipy, sphinx among other packages is not installed in the conda env, so add version constraints in the corresponding conda.txt files

@tobiasdiez, is this fixed by #33358 too?

Nope, still present. See e.g. output of https://pipelines.actions.githubusercontent.com/wUvxDab7ZCURYAl3HeSwsAoJVAdvXg6u4iTbsP5NChUqrJ4TKs/_apis/pipelines/1/runs/9243/signedlogcontent/3?urlExpires=2022-02-17T12%3A02%3A43.1351322Z&urlSigningMethod=HMACV1&urlSignature=ildfTJhaQ2KGVywf69MDFQSVOl7GTONDSdIOurIphKI%3D

Conda is installing rpy2 v3.4.5, while sagelib install requires specify <3.4,>=3.3. Thus pip will download an older version. I think it should be enough to specify the same upper constraint (for the few python packages that have one) in the distros/conda.txt.

@mkoeppe

This comment has been minimized.

@dimpase

This comment has been minimized.

@mkoeppe

This comment has been minimized.

@mkoeppe

This comment has been minimized.

@mkoeppe

This comment has been minimized.

@mkoeppe

This comment has been minimized.

@dimpase
Copy link
Member

dimpase commented Mar 21, 2022

comment:12

in ​https://wiki.sagemath.org/Conda there is a confusing mix of conda and mamba commands. Can they all be mamba?

@slel
Copy link
Member

slel commented Mar 21, 2022

comment:13

I think after running mamba init you can
always use mamba instead of conda.

@slel
Copy link
Member

slel commented Mar 21, 2022

comment:14

I followed the "Conda for Sage developers"
section of the Conda page on the Sage wiki.

I noticed it downgrades the openssl version from 3.0.0 to 1.1.1l.
Can that be fixed?

@slel
Copy link
Member

slel commented Mar 21, 2022

comment:15

Using src/environment-optional.yml
downgrades a few more packages:

  • boost-cpp from 1.77.0 to 1.74.0
  • cmake from 3.22.3 to 3.21.3
  • ncursesfrom 6.3 to 6.2
  • python from 3.10.2 to 3.8.12
  • singular from 4.2.1.p3 to 4.2.0.p3
  • sqlite from 3.37.1 to 3.37.0

@mkoeppe
Copy link
Contributor

mkoeppe commented Mar 21, 2022

comment:16

Did you use the branch of #30845?

@mkoeppe
Copy link
Contributor

mkoeppe commented Mar 21, 2022

comment:17

Replying to @dimpase:

in ​https://wiki.sagemath.org/Conda there is a confusing mix of conda and mamba commands. Can they all be mamba?

They can, but I'm not sure if it would be an improvement to this documentation.
I have added a comment to the step "conda install mamba", please take a look

@mkoeppe

This comment has been minimized.

@slel
Copy link
Member

slel commented Mar 22, 2022

comment:19

Replying to @mkoeppe:

Did you use the branch of #30845?

Oops, I had not used that branch.
Using it, only openssl gets downgraded,

  • whether using src/environment.yml
  • or using src/environment-optional.yml

This is on macOS 11.6.5 Big Sur.

@tobiasdiez

This comment has been minimized.

@mkoeppe

This comment has been minimized.

@mkoeppe

This comment has been minimized.

@slel

This comment has been minimized.

@tobiasdiez

This comment has been minimized.

@mkoeppe mkoeppe modified the milestones: sage-9.6, sage-9.7 May 3, 2022
@mkoeppe

This comment has been minimized.

@mkoeppe

This comment has been minimized.

@mkoeppe mkoeppe modified the milestones: sage-9.7, sage-9.8 Sep 19, 2022
@mkoeppe mkoeppe removed this from the sage-9.8 milestone Jan 29, 2023
@tobiasdiez
Copy link
Contributor Author

Everything is done here, so let's close this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants