On Sunday, May 31, 2020 at 5:49:46 AM UTC-7, Tobias Diez wrote:
>
> currently `./sage -b` rebuilds the python interpreter part of sage (i.e. 
> special syntax support etc)
>

There's no such thing, actually. "sage -b" just builds and installs 
"sagelib" (the "actual python package"). 

If this were done using just "pip install .", then it would indeed have to 
build all of sagelib, and this would take very long because of the size of 
sage.*

Because of this, our src/setup.py actually makes a lot of efforts to 
"propagate changes to package files without a complete recompilation of 
sage".
There are multiple steps of copying, including the last step of copying 
into site-packages.
It is possible that parts of this do not play well with VS code -- this is 
something that we should investigate and improve.

The logs that you included showed a 4 min of wall clock time, but "only" 24 
seconds of user time for an incremental build in which effectively nothing 
was built. It would be interesting to profile this to see where the time is 
spent. Likely this is due to slow file I/O on WSL during distutils/Cython 
dependency tracking.


In a slightly different direction, we may also want to check whether 
"in-place" builds, such as those done with "pip install --editable", could 
be supported.


If you are interested in helping improve the build system of sagelib, you 
may be interested in the following meta-tickets: 

https://trac.sagemath.org/ticket/21507
  Meta-ticket: Make sagelib a pip-installable Python source package, listed 
on PyPI

https://trac.sagemath.org/ticket/21508
  Meta-ticket: Clean up src/setup.py to bring it to standard distutils 
behavior

https://trac.sagemath.org/ticket/29705
  Meta-ticket: Modularize sagelib into separate distributions (distutils 
packages)


-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/c8ea9d25-b7ce-44be-8cb7-bb63f426a8fe%40googlegroups.com.

Reply via email to