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

make sagelib a script package #29411

Closed
mkoeppe opened this issue Mar 26, 2020 · 78 comments
Closed

make sagelib a script package #29411

mkoeppe opened this issue Mar 26, 2020 · 78 comments

Comments

@mkoeppe
Copy link
Contributor

mkoeppe commented Mar 26, 2020

... so that sagelib is just an ordinary script package whose source tree is included (hence, no checksums.ini file; see #29287).

Related sage-devel discussions:

Related tickets:

Depends on #29098
Depends on #29697
Depends on #29793

CC: @embray @videlec @orlitzky @dimpase @jhpalmieri @kiwifb

Component: build

Author: Matthias Koeppe

Branch: cc30471

Reviewer: Dima Pasechnik

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

@mkoeppe mkoeppe added this to the sage-9.1 milestone Mar 26, 2020
@mkoeppe mkoeppe modified the milestones: sage-9.1, sage-9.2 Apr 14, 2020
@mkoeppe

This comment has been minimized.

@mkoeppe
Copy link
Contributor Author

mkoeppe commented May 16, 2020

Changed dependencies from #29287 to #29098

@mkoeppe
Copy link
Contributor Author

mkoeppe commented May 16, 2020

@mkoeppe
Copy link
Contributor Author

mkoeppe commented May 16, 2020

Commit: 80cb1b9

@mkoeppe
Copy link
Contributor Author

mkoeppe commented May 16, 2020

New commits:

768a314Merge build/make/deps into build/make/Makefile.in
80cb1b9Make sagelib a script package

@mkoeppe
Copy link
Contributor Author

mkoeppe commented May 16, 2020

comment:6

Not quite done yet. Next step is to get rid of src/Makefile.in, moving the contents into the spkg-install and spkg-clean scripts.

@mkoeppe
Copy link
Contributor Author

mkoeppe commented May 16, 2020

comment:7

The clean target should perhaps be transformed into setup.py clean, reference: pypa/setuptools#1347

@mkoeppe
Copy link
Contributor Author

mkoeppe commented May 16, 2020

Author: Matthias Koeppe

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented May 16, 2020

Changed commit from 80cb1b9 to 91e5a3d

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented May 16, 2020

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

91e5a3dsrc/Makefile.in: Merge into build/make/Makefile.in, build/pkgs/sagelib/spkg-install

@mkoeppe
Copy link
Contributor Author

mkoeppe commented May 16, 2020

comment:10

Replying to @mkoeppe:

The clean target should perhaps be transformed into setup.py clean, reference: pypa/setuptools#1347

That's already noted in #21508, will not happen on the present ticket

@mkoeppe
Copy link
Contributor Author

mkoeppe commented May 16, 2020

comment:11

TBD: sagelib rebuilds are no longer triggered because it now goes through a non-phony target

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented May 16, 2020

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

08cbbf2build/make/Makefile.in, build/pkgs/sagelib/dependencies: Make sure sagelib spkg-install is always run

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented May 16, 2020

Changed commit from 91e5a3d to 08cbbf2

@kiwifb
Copy link
Member

kiwifb commented May 16, 2020

comment:15

Not quite what I had in mind but this is a step in the right direction. It makes sagelib less special in the build system. I believe the dependency part is OK. The makefile bits deserve a bit scrutiny and field testing.

@jhpalmieri
Copy link
Member

comment:16

The old src/Makefile.in and now the new build/pkgs/sagelib/spkg-install has this in it:

Hoping that #20382 will make this unnecessary.

#20382 has been merged, so perhaps this should be clarified, although not necessarily on this ticket.

@mkoeppe
Copy link
Contributor Author

mkoeppe commented May 16, 2020

comment:17

Right, this is now #28815.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented May 16, 2020

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

5e915b0build/pkgs/sagelib/spkg-install: Update references to tickets

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented May 16, 2020

Changed commit from 08cbbf2 to 5e915b0

@mkoeppe
Copy link
Contributor Author

mkoeppe commented May 17, 2020

Changed dependencies from #29098 to #29098, #29697

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented May 17, 2020

Changed commit from 5e915b0 to f6e3fa1

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented May 17, 2020

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

53f0359src/sage/env.py (sage_include_directories): Do not put SAGE_INC in front of the sage source include directories
16247adsrc/setup.py: Do not put SAGE_LOCAL/lib in front of the library directories
9a50cbasrc/sage/env.py (sage_include_directories): Fixup doctest
73fb13aMerge branch 't/29697/src_setup_py__src_sage_env_py__sage_include_directories___do_not_add_another_copy_of_sage_inc__sage_local_lib_to_include_dirs__library_dirs' into t/29411/make_sagelib_a_script_package
f6e3fa1build/pkgs/sagelib/spkg-install: Also poison environment variables SAGE_LOCAL etc.

@mkoeppe
Copy link
Contributor Author

mkoeppe commented May 17, 2020

comment:21

Ready for review.

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jun 12, 2020

comment:51

When this ticket is merged, src/bin/sage-update-version will update build/pkgs/sagelib/package-version.txt, where this comes from

@dimpase
Copy link
Member

dimpase commented Jun 12, 2020

comment:52

OK

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jun 12, 2020

comment:53

Thanks!

@dimpase
Copy link
Member

dimpase commented Jun 15, 2020

comment:54

rebased over rebased #29793


Last 10 new commits:

aa206bfsrc/Makefile.in: Merge into build/make/Makefile.in, build/pkgs/sagelib/spkg-install
e052741build/make/Makefile.in, build/pkgs/sagelib/dependencies: Make sure sagelib spkg-install is always run
1e19861build/pkgs/sagelib/spkg-install: Update references to tickets
d6ee516build/pkgs/sagelib/spkg-install: Also poison environment variables SAGE_LOCAL etc.
8a4b60dbuild/pkgs/sagelib/spkg-install: Add comment regarding SAGE_SPKG_INST
4071eebbuild/pkgs/sagelib/spkg-install: Also poison SAGE_PKGCONFIG, SAGE_SPKG_SCRIPTS
1707161src/setup.py: Update comment (not specific to gcc)
985bfcabuild/pkgs/sagelib/spkg-install: Do not poison SAGE_LOCAL, used in script installed by spkg pkgconf
b212ce8build/pkgs/sagelib/spkg-install: Fix up error exits
5790687build/bin/write-dockerfile.sh: Do not ADD removed file src/Makefile.in

@dimpase
Copy link
Member

dimpase commented Jun 15, 2020

@dimpase
Copy link
Member

dimpase commented Jun 15, 2020

Changed commit from cc30471 to 5790687

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jun 15, 2020

Changed commit from 5790687 to cc30471

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jun 15, 2020

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jun 25, 2020

Changed commit from cc30471 to 539c182

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jun 25, 2020

Branch pushed to git repo; I updated commit sha1 and set ticket back to needs_review. New commits:

539c182build/make/install: Do not depend on src/bin/sage-version.sh

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jun 25, 2020

comment:57

Pushed to wrong ticket, sorry

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jun 25, 2020

Changed commit from 539c182 to cc30471

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jun 25, 2020

Branch pushed to git repo; I updated commit sha1 and set ticket back to needs_review. This was a forced push. New commits:

@vbraun
Copy link
Member

vbraun commented Jul 2, 2020

Changed branch from u/mkoeppe/make_sagelib_a_script_package to cc30471

@dimpase
Copy link
Member

dimpase commented Jul 12, 2020

comment:61

this has caused a breakage of jupyter notebook/server. Apparently some of its dependencies get "blessed"
by ./sage -b, but no longer get blessed by make build.


Running 'make build' on that ticket's commit in the develop branch (0bcd001 make sagelib a script package) produces the error for me whereas doing so on the immediately previous commit (10fb624 Trac #29289: Remove support for installing old-style SPKGs, deprecated in Sage 6.9) does not. Interestingly, it's been sort of hit-and-miss on whether the error shows up when doing just a './sage -b'.

On Saturday, July 11, 2020 at 5:26:02 PM UTC-7, Paul Masson wrote:

Just built a ticket based on 9.2.beta3 and the same problem occurs.

On Saturday, July 11, 2020 at 4:09:56 PM UTC-7, Paul Masson wrote:

    After a successful incremental build from 9.2.beta2, trying to start a new notebook results in the browser console error "Failed to load resource: the server responded with a status of 404 (Not Found)" when trying to fetch Mathjax from http://localhost:8888/nbextensions/mathjax/MathJax.js. Has anyone other than Dima seen this also?

    This appears to be a serious server configuration error. I don't see any ticket in either this beta or the previous one that would cause this. Am I missing some new configuration step? Sage built and runs just fine.

@dimpase
Copy link
Member

dimpase commented Jul 12, 2020

Changed commit from cc30471 to none

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jul 12, 2020

comment:62

This is now #30123

@jhpalmieri
Copy link
Member

comment:63

This broke sage -b: it wants to run make in a directory with no Makefile.

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

6 participants