On 17/08/16 11:03, Simon King wrote:
Hi Vincent,
On 2016-08-17, Vincent Delecroix <20100.delecr...@gmail.com> wrote:
Why are you keeping sources in the Sage tree instead of moving
everything to your module? (see also my previous post).
It's the other way around. Previously, in my old-style spkg, everything
(code in C, gap, singular, cython and python) was in the spkg, and could
after installation be found in a module pGroupCohomology. Now, my plan
is (or maybe has been...) to move the cython and python code into the
Sage tree.
Why?
When I created the optional (new-style) meataxe spkg, the aim was to
improve matrix arithmetic for finite non-prime fields of odd
characteristic (for these fields, meataxe provides a huge improvement
over what's in Sage by default). Since it affects Sage's matrices,
I was advised to implement it as an OptionalExtension in src/sage/matrix/,
and so I did.
+1: if meataxe is a great improvement for basic arithmetic it should
even be standard.
Maybe I am over-generalising that advice, but I got the impression:
If you have a module that makes heavy use of SageMath's infra structure
and relies on an optional C library, then the C library should be put
into a new-style spkg and the rest should be put as an OptionalExtension
into the Sage tree.
In addition, I made the repeated frustrating experience that my old-style
spkg was broken by changes in SageMath. I hope that my spkg would be
easier to maintain when being more closely tied to the Sage tree.
This is indeed a current problem in Sage with many packages (and many
people maintaining them). But IMHO the solution is not to move
everything in Sage source tree. Rather, we should find a solution to
test the optional packages on large basis of Sage versions.
The OptionalExtension for me are dedicated for compiling modules that
depends on external libraries that can not be shipped with Sage (e.g.
closed source code such as gurobi). And many of these should actually be
optional packages.
Of course, we have no clear politics about how should be the things. But
I think that having a Sage more modular would be much better.
Vincent
--
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 post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.