Opened 12 months ago
Last modified 4 months ago
#29847 needs_work enhancement
Install sage_setup with setuptools as a prerequisite for building/installing sagelib
Reported by:  mkoeppe  Owned by:  

Priority:  major  Milestone:  sage9.4 
Component:  build  Keywords:  sd111 
Cc:  fbissey, jhpalmieri, dimpase  Merged in:  
Authors:  Matthias Koeppe  Reviewers:  
Report Upstream:  N/A  Work issues:  rebase 
Branch:  u/mkoeppe/install_sage_setup_with_pip__move_sage_include_directories__cython_aliases_from_sage_env_to_sage_setup (Commits, GitHub, GitLab)  Commit:  1bb5b3453ac6d4a163be5c28446afb7ac66750b8 
Dependencies:  #30010, #30913, #31377  Stopgaps: 
Description (last modified by )
sage_setup will be used by the build system of various distutils packages (#29705).
So we make it a regular distutils package itself and install it with setup.py install
. (That's build/pkgs/sage_setup/src/setup.py
.)
sagelib
's setup.py
will no longer install sage_setup
.
sage_setup
will become a buildsystem requires
(declared in pyproject.toml
)
Followup:
 #29924: Do not fail if
sage.env
,sage.*
are not available
References:
python  pip ignores dependency_links in setup.py  Stack Overflow https://stackoverflow.com/questions/12518499/pipignoresdependencylinksinsetuppy
dependency_links flag ignored when package exists on PyPI · Issue #987 · pypa/setuptools https://github.com/pypa/setuptools/issues/987
Suggest alternatives for processdependencylinks · Issue #6162 · pypa/pip https://github.com/pypa/pip/issues/6162
PEP 508  Dependency specification for Python Software Packages  Python.org https://www.python.org/dev/peps/pep0508/#pep440
PEP 440  Version Identification and Dependency Specification  Python.org https://www.python.org/dev/peps/pep0440/#localversionsegments
Change History (61)
comment:1 Changed 12 months ago by
 Description modified (diff)
comment:2 Changed 12 months ago by
 Dependencies set to #29702
comment:3 Changed 12 months ago by
 Description modified (diff)
comment:4 Changed 12 months ago by
 Description modified (diff)
comment:5 Changed 12 months ago by
 Description modified (diff)
comment:6 Changed 12 months ago by
 Summary changed from Install sage_setup with pip to Install sage_setup with pip, move sage_include_directories, cython_aliases from sage.env to sage_setup
comment:7 Changed 12 months ago by
 Description modified (diff)
comment:8 Changed 12 months ago by
 Dependencies changed from #29702 to #29702, #29706, #29785
 Description modified (diff)
comment:9 Changed 12 months ago by
 Description modified (diff)
comment:10 Changed 12 months ago by
 Description modified (diff)
comment:11 Changed 12 months ago by
 Description modified (diff)
comment:12 Changed 12 months ago by
 Branch set to u/mkoeppe/install_sage_setup_with_pip__move_sage_include_directories__cython_aliases_from_sage_env_to_sage_setup
comment:13 Changed 12 months ago by
 Commit set to 4ce81bf162906ba72c5fc8ca7c349dedf33cd033
 Dependencies changed from #29702, #29706, #29785 to #29702, #29706, #29785, #29855
comment:14 Changed 12 months ago by
 Commit changed from 4ce81bf162906ba72c5fc8ca7c349dedf33cd033 to 4a9dd3ad8c103784403e8ecce172427b2f5c0eff
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
041c9e8  sage_setup.command.sage_build_cython: Use SAGE_GMP_PREFIX, SAGE_NTL_PREFIX for header dependencies instead of SAGE_INC

4a9dd3a  Merge branch 't/29855/sagelib_setup_py__fix_dependencies_on_header_files_of_packages_gmp__ntl' into t/29847/install_sage_setup_with_pip__move_sage_include_directories__cython_aliases_from_sage_env_to_sage_setup

comment:15 Changed 12 months ago by
 Description modified (diff)
comment:16 Changed 12 months ago by
 Milestone changed from sage9.2 to sage9.3
comment:17 Changed 12 months ago by
 Description modified (diff)
comment:18 Changed 12 months ago by
 Summary changed from Install sage_setup with pip, move sage_include_directories, cython_aliases from sage.env to sage_setup to Install sage_setup with pip as a prerequisite for building/installing sagelib
comment:19 Changed 12 months ago by
 Milestone changed from sage9.3 to sage9.2
comment:20 Changed 12 months ago by
 Cc fbissey added
 Description modified (diff)
comment:21 Changed 12 months ago by
 Description modified (diff)
comment:22 Changed 12 months ago by
 Description modified (diff)
 Summary changed from Install sage_setup with pip as a prerequisite for building/installing sagelib to Install sage_setup with setuptools as a prerequisite for building/installing sagelib, install sagethedistribution scripts as "scripts"
comment:23 Changed 12 months ago by
 Description modified (diff)
comment:24 followup: ↓ 27 Changed 12 months ago by
[sagelib9.1.rc5] running build [sagelib9.1.rc5] Generating autogenerated sources [sagelib9.1.rc5] Building interpreters for fast_callable [sagelib9.1.rc5] > Rebuilding interpreters because /Users/mkoeppe/s/sage/sagerebasing/src/sage_setup/autogen/interpreters/memory.py changed [sagelib9.1.rc5] running build_cython [sagelib9.1.rc5] Enabling Cython debugging support [sagelib9.1.rc5] Updating Cython code.... [sagelib9.1.rc5] Compiling sage/algebras/finite_dimensional_algebras/finite_dimensional_algebra_element.pyx because it changed. [sagelib9.1.rc5] error: [Errno 21] Is a directory: '/Users/mkoeppe/s/sage/sagerebasing/src/sage/cpython'
Hm....
comment:25 Changed 12 months ago by
 Commit changed from 4a9dd3ad8c103784403e8ecce172427b2f5c0eff to 010c6e3b7abcf381a691ca87c6e0d4238d922ce5
comment:26 Changed 12 months ago by
 Commit changed from 010c6e3b7abcf381a691ca87c6e0d4238d922ce5 to 2d0d0a7720bbef005892f5f56c982c26e5eb0fb8
Branch pushed to git repo; I updated commit sha1. New commits:
18aae7f  sage_setup.command.sage_build_cython: Fix up  add list brackets

2d0d0a7  Merge branch 't/29855/sagelib_setup_py__fix_dependencies_on_header_files_of_packages_gmp__ntl' into t/29847/install_sage_setup_with_pip__move_sage_include_directories__cython_aliases_from_sage_env_to_sage_setup

comment:27 in reply to: ↑ 24 Changed 12 months ago by
comment:28 Changed 12 months ago by
 Commit changed from 2d0d0a7720bbef005892f5f56c982c26e5eb0fb8 to 0459006f8ad828e3c3f83004b6db605ec036a0f6
Branch pushed to git repo; I updated commit sha1. New commits:
0459006  .gitignore: Ignore generated files in build/pkgs/*/src

comment:29 Changed 12 months ago by
 Work issues set to Install scripts, add spkgsrc
comment:30 Changed 12 months ago by
 Commit changed from 0459006f8ad828e3c3f83004b6db605ec036a0f6 to c66384d34edb84b22dd2cc9c5e3afa1b049a3e8f
Branch pushed to git repo; I updated commit sha1. New commits:
c66384d  build/pkgs/sage_setup/spkginstall: Fixup use of root

comment:31 Changed 12 months ago by
 Commit changed from c66384d34edb84b22dd2cc9c5e3afa1b049a3e8f to 58956e65bcf221fac3aa670d165d89948a65e825
Branch pushed to git repo; I updated commit sha1. New commits:
58956e6  build/pkgs/sage_setup/spkgsrc: New

comment:32 Changed 12 months ago by
 Work issues changed from Install scripts, add spkgsrc to Install scripts
comment:33 Changed 12 months ago by
 Cc jhpalmieri added
 Description modified (diff)
 Status changed from new to needs_review
 Summary changed from Install sage_setup with setuptools as a prerequisite for building/installing sagelib, install sagethedistribution scripts as "scripts" to Install sage_setup with setuptools as a prerequisite for building/installing sagelib
 Work issues Install scripts deleted
comment:34 Changed 12 months ago by
 Commit changed from 58956e65bcf221fac3aa670d165d89948a65e825 to 0e1702396fc2e66b851e187a02a52bc2853da7e6
Branch pushed to git repo; I updated commit sha1. New commits:
0e17023  Merge tag '9.2.beta2' into t/29847/install_sage_setup_with_pip__move_sage_include_directories__cython_aliases_from_sage_env_to_sage_setup

comment:35 Changed 12 months ago by
 Dependencies changed from #29702, #29706, #29785, #29855 to #29702, #29855
comment:36 Changed 12 months ago by
 Cc dimpase added
comment:37 Changed 12 months ago by
 Description modified (diff)
comment:38 Changed 12 months ago by
 Description modified (diff)
comment:39 Changed 12 months ago by
 Commit changed from 0e1702396fc2e66b851e187a02a52bc2853da7e6 to 0d22cefeb55b66cbd1e9e3b0057861f8db486963
Branch pushed to git repo; I updated commit sha1. New commits:
0d22cef  build/pkgs/sage_setup/spkgsrc: chmod +x

comment:40 Changed 12 months ago by
 Commit changed from 0d22cefeb55b66cbd1e9e3b0057861f8db486963 to 21eb31edf8575b13f6f1baa312f73c2c60a8ce82
Branch pushed to git repo; I updated commit sha1. New commits:
21eb31e  build/pkgs/sage_setup/src/tox.ini, requirements.txt: New

comment:41 Changed 12 months ago by
 Commit changed from 21eb31edf8575b13f6f1baa312f73c2c60a8ce82 to eeeaa47644aad4801b99e645ccd24176864bfa54
Branch pushed to git repo; I updated commit sha1. New commits:
eeeaa47  build/pkgs/sage_setup/src/setup.cfg: Add nested packages

comment:42 Changed 12 months ago by
 Commit changed from eeeaa47644aad4801b99e645ccd24176864bfa54 to 4dcaf1cd1b203e6fc08d0d57ba872b085284f685
Branch pushed to git repo; I updated commit sha1. New commits:
4dcaf1c  build/pkgs/sage_setup/src/setup.cfg: Add remaining nested packages

comment:43 Changed 12 months ago by
 Description modified (diff)
 Milestone changed from sage9.2 to sage9.3
comment:44 Changed 11 months ago by
 Dependencies changed from #29702, #29855 to #29702, #29855, #30011
comment:45 Changed 11 months ago by
 Work issues set to merge #30011, remove dep on six
comment:46 Changed 11 months ago by
comment:47 Changed 11 months ago by
 Commit changed from 4dcaf1cd1b203e6fc08d0d57ba872b085284f685 to 44cc65dbdf5c7f3818eb0a880835162579238b57
Branch pushed to git repo; I updated commit sha1. New commits:
212d183  trac 30011: remove sage_setup/fpickle_setup.py

0ef60f5  Merge branch 'u/jhpalmieri/sage_setup__remove_use_of_six' of git://trac.sagemath.org/sage into t/29847/install_sage_setup_with_pip__move_sage_include_directories__cython_aliases_from_sage_env_to_sage_setup

44cc65d  build/pkgs/sage_setup/dependencies: New

comment:48 Changed 11 months ago by
 Work issues merge #30011, remove dep on six deleted
comment:49 Changed 11 months ago by
This ticket is not so urgent (I've set its milestone to 9.3)
comment:50 Changed 11 months ago by
 Status changed from needs_review to needs_work
 Work issues set to Merge #29950
comment:51 Changed 11 months ago by
 Work issues changed from Merge #29950 to Merge #30010
comment:52 Changed 9 months ago by
 Dependencies changed from #29702, #29855, #30011 to #29500, #30010
comment:53 Changed 9 months ago by
 Commit changed from 44cc65dbdf5c7f3818eb0a880835162579238b57 to 8d465d72bf2b199f3fb46b7a72e51a186c954228
Branch pushed to git repo; I updated commit sha1. This was a forced push. Last 10 new commits:
8aa6fd9  build/bin/sagedisthelpers (sdh_pip_install): Build a wheel, store it

d369aab  build/bin/sagedisthelpers (sdh_store_and_pip_install_wheel): New, factored out from sdh_pip_install

2d435ab  build/pkgs/numpy/spkginstall.in: Install via setup.py bdist_wheel

55993b6  build/bin/sagedisthelpers: Fixup

0a64674  build/pkgs/gambit/spkginstall.in: Install via bdist_wheel

ca58693  build/pkgs/pillow/spkginstall.in: Install via bdist_wheel

65773f7  Merge branch 't/29500/install_all_python_packages_via_pip_wheel__create_pep_503_simple_repository_for_wheels' into t/30010/split_sage_setup_docbuild_out_to_a_separate_package

14ab446  build/pkgs/sage_setup_docbuild/spkginstall: Install via setup.py bdist_wheel

3c5584d  Merge branch 't/30010/split_sage_setup_docbuild_out_to_a_separate_package' into t/29847/install_sage_setup_with_pip__move_sage_include_directories__cython_aliases_from_sage_env_to_sage_setup

8d465d7  build/pkgs/sage_setup/spkginstall: Install via setup.py bdist_wheel

comment:54 Changed 9 months ago by
 Status changed from needs_work to needs_review
 Work issues Merge #30010 deleted
comment:55 Changed 9 months ago by
 Commit changed from 8d465d72bf2b199f3fb46b7a72e51a186c954228 to db56301317b59708186defd76e2e6db1423e86af
Branch pushed to git repo; I updated commit sha1. New commits:
db56301  build/pkgs/sagelib/src/requirements.txt: Update

comment:56 Changed 9 months ago by
 Commit changed from db56301317b59708186defd76e2e6db1423e86af to 1bb5b3453ac6d4a163be5c28446afb7ac66750b8
comment:57 Changed 7 months ago by
 Dependencies changed from #29500, #30010 to #30010
 Description modified (diff)
 Milestone changed from sage9.3 to sage9.4
comment:58 Changed 6 months ago by
 Keywords sd111 added
Hoping we can make progress on this ticket this week  https://wiki.sagemath.org/days111
comment:60 Changed 4 months ago by
 Description modified (diff)
comment:61 Changed 4 months ago by
 Dependencies changed from #30010 to #30010, #30913, #31377
 Work issues set to rebase
Last 10 new commits:
src/sage/tests: Move Extension options from src/module_list.py to distutils directives
src/sage/structure: Move Extension options from src/module_list.py to distutils directives
src/sage/stats: Move Extension options from src/module_list.py to distutils directives
src/sage/schemes: Move Extension options from src/module_list.py to distutils directives
src/sage/modular/pollack_stevens/dist.pyx: Add missing distutils directives
Remove selflisting in distutils sources directive
sage.env.cython_aliases: Fix for systems without zlib pc
Merge branch 't/29706/move_extension_options_from_src_module_list_py_to__distutils___directives_in_the_individual_files' into t/29785/move_extension_options_from_src_module_list_py_to__distutils___directives_in_the_individual_files__part_3__get_rid_of_uname_specific_
Merge branch 't/29785/move_extension_options_from_src_module_list_py_to__distutils___directives_in_the_individual_files__part_3__get_rid_of_uname_specific_' into t/29847/install_sage_setup_with_pip__move_sage_include_directories__cython_aliases_from_sage_env_to_sage_setup
sage_setup.command.sage_build_cython: Use SAGE_GMP_PREFIX, SAGE_NTL_PREFIX for header dependencies instead of SAGE_INC