Opened 2 years ago

Closed 20 months ago

#29850 closed enhancement (fixed)

Install sage-env-config as part of sage_conf

Reported by: mkoeppe Owned by:
Priority: major Milestone: sage-9.3
Component: build Keywords: sd111
Cc: jhpalmieri, fbissey, mjo, dimpase, isuruf, gh-tobiasdiez Merged in:
Authors: Matthias Koeppe Reviewers: Dima Pasechnik
Report Upstream: N/A Work issues:
Branch: 4b52dcf (Commits, GitHub, GitLab) Commit: 4b52dcf3def54b17a565d027b757a46b95f94e81
Dependencies: #31002 Stopgaps:

Status badges

Description (last modified by mkoeppe)

As a follow-up to #21559 and #30128, we reassign sage-env-config from the package sagelib to the package sage_conf.

(After #22731, sage-env-config is no longer required by the sage script.)

(This is preparation for allowing installation of sagelib for example in a conda environment without having to run ./configure first - see #28745, #30845.)


Part of Meta-ticket #21707: Split sage-env into 5 to clean up sage configuration

Change History (48)

comment:1 Changed 2 years ago by mkoeppe

  • Dependencies set to #29825
  • Description modified (diff)

comment:2 Changed 2 years ago by mkoeppe

  • Dependencies changed from #29825 to #29825, #21559

comment:3 Changed 2 years ago by mkoeppe

  • Branch set to u/mkoeppe/install_sage_env_config_with_sage_conf

comment:4 follow-ups: Changed 2 years ago by mkoeppe

  • Commit set to dacea8b8d9a58555003d425957093b11ad0952fd
  • Dependencies changed from #29825, #21559 to #29825, #21559, #29803

Branch on this ticket does NOT work because pip/setuptools do not handle the symlink well.


Last 10 new commits:

70378edbuild/pkgs/pip/dependencies: Add wheel, simplify $(PYTHON) python3 to $(PYTHON)
10a2bacbuild/pkgs/setuptools, build/pkgs/pip: Remove python2 support from dependencies, install scripts
6755adbbuild/pkgs/pkgconfig/spkg-install.in: Remove pyproject.toml so that pip installs using setup.py
29327d3build/pkgs/entrypoints: Do not provide setup.py, not needed for entrypoints 0.3
bcc79a5build/pkgs/entrypoints/spkg-install.in: Remove pyproject.toml so that setup.py is used
361b98bbuild/pkgs/terminado/spkg-install.in: Remove pyproject.toml so that setup.py is used
5040d7ebuild/pkgs/testpath/spkg-install.in: Remove pyproject.toml so that setup.py is used
371ede6build/pkgs/zope_interface: Change to a dummy script package
10a2bacMerge branch 't/29803/upgrade_setuptools__pip__2020_06_' into t/29850/install_sage_env_config_with_sage_conf
dacea8bWIP: Install sage-env-config with sage_conf

comment:5 Changed 2 years ago by mkoeppe

Perhaps it's easier to get rid of sage-env-config altogether (#29852).

Last edited 2 years ago by mkoeppe (previous) (diff)

comment:6 Changed 2 years ago by mkoeppe

  • Summary changed from Install sage-env-config with sage_conf to Install sage-env-config as part of sage_conf

comment:7 in reply to: ↑ 4 Changed 2 years ago by mkoeppe

Replying to mkoeppe:

Branch on this ticket does NOT work because pip/setuptools do not handle the symlink well.

Using flit instead of setuptools (#29854) does not help for this ticket because flit does not know how to install prepared shell scripts -- it can only install Python scripts

comment:8 Changed 2 years ago by git

  • Commit changed from dacea8b8d9a58555003d425957093b11ad0952fd to 5f7b1cc40b66a94030e3e53607e2f0350363e40a

Branch pushed to git repo; I updated commit sha1. New commits:

1ee054cFixup
5f7b1ccMerge branch 't/21559/change-src-bin-installation' into t/29850/install_sage_env_config_with_sage_conf

comment:9 in reply to: ↑ 4 Changed 2 years ago by mkoeppe

Replying to mkoeppe:

Branch on this ticket does NOT work because pip/setuptools do not handle the symlink well.

It would probably suffice to just replace the use of pip by setup.py install.

comment:10 Changed 2 years ago by mkoeppe

  • Cc jhpalmieri fbissey added
  • Description modified (diff)

comment:11 Changed 2 years ago by mkoeppe

  • Work issues set to use setup.py install, add spkg-src

comment:12 Changed 2 years ago by git

  • Commit changed from 5f7b1cc40b66a94030e3e53607e2f0350363e40a to 308ca6971af903adf4822e5349ef665cddc1e08a

Branch pushed to git repo; I updated commit sha1. New commits:

ae07682Merge tag '9.2.beta1' into t/29850/install_sage_env_config_with_sage_conf
a4e4124build/pkgs/sage_conf/spkg-install: Install with setup.py instead of pip
308ca69build/pkgs/sage_conf/spkg-src: New

comment:13 Changed 2 years ago by mkoeppe

  • Work issues changed from use setup.py install, add spkg-src to make sage-env-config optional for sage-env

comment:14 Changed 2 years ago by mkoeppe

  • Description modified (diff)
  • Work issues make sage-env-config optional for sage-env deleted

comment:15 Changed 2 years ago by mkoeppe

  • Authors set to Matthias Koeppe
  • Status changed from new to needs_review

comment:16 Changed 2 years ago by mkoeppe

  • Work issues set to Move sage_conf.py to SAGE_ROOT/src/, symlink to there

comment:17 Changed 2 years ago by mkoeppe

./sage -sh -c '(cd build/pkgs/sagelib/src && tox -r -v -v)'
...
RuntimeError: libSingular not found--a working Singular install in $SAGE_LOCAL is required for Sage to work
ERROR: InvocationError for command /Users/mkoeppe/s/sage/sage-rebasing/worktree-algebraic-2018-spring/build/pkgs/sagelib/src/.tox/python/bin/python -c 'import sys; "" in sys.path and sys.path.remove(""); import sage.all' (exited with code 1)

This is because of:

$ build/pkgs/sagelib/src/.tox/python/bin/python
Python 3.7.7 (v3.7.7:d7c567b08f, Mar 10 2020, 02:56:16) 
[Clang 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import sage.env
>>> sage.env.SINGULAR_SO
>>> sage.env.GAP_SO
>>> sage.env.SAGE_LOCAL
'/Users/mkoeppe/s/sage/sage-rebasing/worktree-algebraic-2018-spring/build/pkgs/sagelib/src/.tox/python'
>>> 
Version 0, edited 2 years ago by mkoeppe (next)

comment:18 Changed 2 years ago by mkoeppe

  • Work issues Move sage_conf.py to SAGE_ROOT/src/, symlink to there deleted

comment:19 Changed 2 years ago by git

  • Commit changed from 308ca6971af903adf4822e5349ef665cddc1e08a to 03301806c3b9d41fdfaf576fd84ac887f4156e1a

Branch pushed to git repo; I updated commit sha1. This was a forced push. Last 10 new commits:

3a0193csrc/bin/sage: Remove handling of 'sage -axiom'
6b04075Merge branch 't/29111/specify_a_subset_of_sage_command_line_options_that_are_supported_by_sagelib___rather_than_sage_the_distribution' into t/21559/change-src-bin-installation
9c7116bsrc/bin/sage-list-optional, sage-list-experimental, sage-list-standard: Remove deprecated scripts
831cc09Merge branch 't/29920/remove_deprecated_scripts_sage_list_optional__sage_list_experimental__sage_list_standard' into t/21559/change-src-bin-installation
e3eca85Merge branch 'public/move_all_code_from_src_setup_py__src_fpickle_setup_py_to_sage_setup' of git://trac.sagemath.org/sage into t/21559/change-src-bin-installation
7d29141src/setup.py: Do not install removed script sage-rsyncdist
c5f7f2fMerge tag '9.2.beta3' into t/21559/change-src-bin-installation
6bc0cd4Install sage-env-config with sage_conf
5e6ca95build/pkgs/sage_conf/spkg-install: Install with setup.py instead of pip
0330180build/pkgs/sage_conf/spkg-src: New

comment:20 Changed 2 years ago by mkoeppe

  • Dependencies changed from #29825, #21559, #29803 to #21559

Rebased away from #29825, on top of updated #21559 (on top of 9.2.beta3)

comment:21 Changed 2 years ago by git

  • Commit changed from 03301806c3b9d41fdfaf576fd84ac887f4156e1a to 709ebca31bd68a64865b6251b264fcd5a2e38aa7

Branch pushed to git repo; I updated commit sha1. New commits:

3953671Merge tag '9.2.beta4' into t/29111/specify_a_subset_of_sage_command_line_options_that_are_supported_by_sagelib___rather_than_sage_the_distribution
19d7f67Merge branch 't/29111/specify_a_subset_of_sage_command_line_options_that_are_supported_by_sagelib___rather_than_sage_the_distribution' into t/21559/change-src-bin-installation
709ebcaMerge branch 't/21559/change-src-bin-installation' into t/29850/install_sage_env_config_with_sage_conf

comment:22 Changed 2 years ago by mkoeppe

  • Cc mjo added

comment:23 Changed 2 years ago by mkoeppe

  • Description modified (diff)
  • Summary changed from Install sage-env-config as part of sage_conf to Install sage-env-config as part of sage_conf; make sage-env-config optional

comment:24 Changed 2 years ago by mkoeppe

  • Dependencies changed from #21559 to #29951
  • Status changed from needs_review to needs_work

comment:25 Changed 2 years ago by mkoeppe

  • Milestone changed from sage-9.2 to sage-9.3

comment:26 Changed 21 months ago by mkoeppe

  • Cc dimpase isuruf added

comment:27 Changed 21 months ago by git

  • Commit changed from 709ebca31bd68a64865b6251b264fcd5a2e38aa7 to a3615809e0eda053534d6f0713ee95e6c5939c7d

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

53805b0src/bin/sage-env: Make SAGE_ROOT and SAGE_LOCAL optional
09584eaMerge tag '9.2.beta14' into t/29951/src_bin_sage_env__make_sage_env_config_and_sage_local_optional
a2571b1Merge tag '9.2' into t/29951/src_bin_sage_env__make_sage_env_config_and_sage_local_optional
9ba8cf2Merge tag '9.3.beta0' into t/29951/src_bin_sage_env__make_sage_env_config_and_sage_local_optional
c8e6910Merge tag '9.3.beta1' into t/29951/src_bin_sage_env__make_sage_env_config_and_sage_local_optional
9ab593cInstall sage-env-config with sage_conf
a361580build/pkgs/sage_conf/spkg-src: New

comment:28 Changed 21 months ago by git

  • Commit changed from a3615809e0eda053534d6f0713ee95e6c5939c7d to d02b59722808b81329c390017e55e69237cc9557

Branch pushed to git repo; I updated commit sha1. New commits:

d02b597build/pkgs/sagelib/src/setup.py: Do not install sage-env-config

comment:29 Changed 21 months ago by git

  • Commit changed from d02b59722808b81329c390017e55e69237cc9557 to 1b4bc9938d3dcef8cd4f745f0bc26a718b35178d

Branch pushed to git repo; I updated commit sha1. New commits:

1b4bc99src/bin/sage: Only source sage-env-config if it exists

comment:30 Changed 21 months ago by git

  • Commit changed from 1b4bc9938d3dcef8cd4f745f0bc26a718b35178d to a1a6df55d880441fe57975c653c161e929cc9dd5

Branch pushed to git repo; I updated commit sha1. New commits:

a1a6df5src/bin/sage: Use python3 etc. from PATH instead of using SAGE_LOCAL

comment:31 Changed 21 months ago by git

  • Commit changed from a1a6df55d880441fe57975c653c161e929cc9dd5 to 19f7eae793b3eee1113f98e31b952246ebfd51c4

Branch pushed to git repo; I updated commit sha1. New commits:

d30b410build/pkgs/sage_conf/spkg-install: Build wheel manually
19f7eaesrc/bin/sage-env: Make sage-env-config optional

comment:32 Changed 21 months ago by mkoeppe

  • Description modified (diff)
  • Status changed from needs_work to needs_review

comment:33 Changed 21 months ago by dimpase

  • Reviewers set to Dima Pasechnik
  • Status changed from needs_review to positive_review

lgtm

comment:34 Changed 21 months ago by mkoeppe

Thanks!

comment:35 Changed 21 months ago by mkoeppe

  • Status changed from positive_review to needs_info

comment:36 Changed 21 months ago by mkoeppe

I set it to "needs info" because this design potentially conflicts with #30896 (./configure --without-python); see also #29852 (Get rid of sage-env-config).

comment:37 Changed 21 months ago by mkoeppe

  • Dependencies changed from #29951 to #29951 | #22731
  • Work issues set to Rebase on top of #22731

comment:38 Changed 21 months ago by git

  • Commit changed from 19f7eae793b3eee1113f98e31b952246ebfd51c4 to 5dc4266d471b31e08b97b7e4ab8f8ee7aca9f58e

Branch pushed to git repo; I updated commit sha1. This was a forced push. Last 10 new commits:

4577f37src/bin/sage-env: Make sage-env-config optional
c35c170sage.env: Add SAGE_VENV
c585d94src/sage: Replace some SAGE_LOCAL by SAGE_VENV
2fd195fsrc/bin/sage: Fix reference to trac ticket
f3b7a9csrc/sage/env.py: Add documentation
0e4764cMerge branch 't/22731/22731' into t/29850/install_sage_env_config_with_sage_conf
657eea0Install sage-env-config with sage_conf
7e18730build/pkgs/sage_conf/spkg-src: New
36e479cbuild/pkgs/sagelib/src/setup.py: Do not install sage-env-config
5dc4266build/pkgs/sage_conf/spkg-install: Build wheel manually

comment:39 Changed 21 months ago by mkoeppe

  • Cc gh-tobiasdiez added
  • Dependencies changed from #29951 | #22731 to #22731
  • Description modified (diff)
  • Status changed from needs_info to needs_review
  • Summary changed from Install sage-env-config as part of sage_conf; make sage-env-config optional to Install sage-env-config as part of sage_conf
  • Work issues Rebase on top of #22731 deleted

comment:40 Changed 21 months ago by mkoeppe

  • Keywords sd111 added

comment:41 Changed 21 months ago by mkoeppe

  • Dependencies changed from #22731 to #31002
  • Status changed from needs_review to needs_work
  • Work issues set to use new function from #31002

comment:42 Changed 21 months ago by mkoeppe

  • Work issues changed from use new function from #31002 to use new function from #31002 - or use #30013 and move sage-env-config into the sage_conf source directory

comment:43 Changed 21 months ago by git

  • Commit changed from 5dc4266d471b31e08b97b7e4ab8f8ee7aca9f58e to 4b52dcf3def54b17a565d027b757a46b95f94e81

Branch pushed to git repo; I updated commit sha1. New commits:

a8e0364Specify bdist temp folder for WSL compatibility
a3077c7Use mktemp
c5a14a3build/bin/sage-dist-helpers (sdh_setup_bdist_wheel): New
fb10429build/pkgs/*/spkg-install.in: Use new function sdh_setup_bdist_wheel
5f11e24Merge branch 'public/build/bdist_wsl' of git://trac.sagemath.org/sage into t/29850/install_sage_env_config_with_sage_conf
0773001Merge tag '9.3.beta3' into t/29850/install_sage_env_config_with_sage_conf
4b52dcfbuild/pkgs/sage_conf/spkg-install: Use sdh_setup_bdist_wheel

comment:44 Changed 21 months ago by mkoeppe

  • Status changed from needs_work to needs_review
  • Work issues use new function from #31002 - or use #30013 and move sage-env-config into the sage_conf source directory deleted

comment:45 Changed 20 months ago by mkoeppe

Still needs review...

comment:46 Changed 20 months ago by dimpase

  • Status changed from needs_review to positive_review

OK.

comment:47 Changed 20 months ago by mkoeppe

Thanks!

comment:48 Changed 20 months ago by vbraun

  • Branch changed from u/mkoeppe/install_sage_env_config_with_sage_conf to 4b52dcf3def54b17a565d027b757a46b95f94e81
  • Resolution set to fixed
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.