Craig Citro and I (Nick Alexander) are your humble release managers for this iteration, sage-4.0.2.
The plan is to cut a release candidate Friday, June 12, probably evening PST. The release itself will be Saturday, June 13. Hopefully Minh will update the release notes and Harald the website shortly afterward.
We are going to try to merge all the code on trac that currently has a positive review. However, there are a significant number of patches needing review; now is the time to campaign for reviews. Please email reviewers ASAP! You can also add them to the cc field on trac, possibly using the list on the front page of trac (http://trac.sagemath.org/sage_trac/ ) to help map names to trac usernames. If you can't think of a suitable reviewer for one of your patches, Craig and I will try to assist.
We intend to upgrade the following software:
* Singular * Scipy * Numpy * mpir
There was some talk about merging the categories code of the sage- combinat group. Since much of this code is still under review, that won't happen this iteration. Sorry! Hopefully a push can be made to get this in for sage-4.1.
This is a relatively minor release but fixes some issues on Cygwin
which sage-cygwin currently patches, adds Tom Boothby's code for fast
perfect power testing, my one line factor program and Tom's heuristic
for a faster factoring routine for numbers less that one limb, etc.
I've also added the F_mpz module, which was specifically requested by
Fredrick Johansson, though it is only documented in the F_mpz.h file
at this stage, not the main pdf file and I have not added an F_mpz_cmp
function or the other functions Fredrick requested as yet.
I've valgrinded all the changed code and tested the release on 32 and
64 bit machines, including Cygwin.
This is not a critical update for Sage, but does supply features some
people have been waiting for, including fast factorisation of unsigned
longs. I also fixed the issues that David Harvey noted in the makefile
and fmpz.c which Sage currently patches.
> Craig Citro and I (Nick Alexander) are your humble release managers
> for this iteration, sage-4.0.2.
> The plan is to cut a release candidate Friday, June 12, probably
> evening PST. The release itself will be Saturday, June 13. Hopefully
> Minh will update the release notes and Harald the website shortly
> afterward.
> We are going to try to merge all the code on trac that currently has a
> positive review. However, there are a significant number of patches
> needing review; now is the time to campaign for reviews. Please email
> reviewers ASAP! You can also add them to the cc field on trac,
> possibly using the list on the front page of trac (http://trac.sagemath.org/sage_trac/ > ) to help map names to trac usernames. If you can't think of a
> suitable reviewer for one of your patches, Craig and I will try to
> assist.
> We intend to upgrade the following software:
> * Singular
> * Scipy
> * Numpy
> * mpir
> There was some talk about merging the categories code of the sage-
> combinat group. Since much of this code is still under review, that
> won't happen this iteration. Sorry! Hopefully a push can be made to
> get this in for sage-4.1.
> This is a relatively minor release but fixes some issues on Cygwin > which sage-cygwin currently patches, adds Tom Boothby's code for fast > perfect power testing, my one line factor program
You don't say. Really? :-) I'm no FLINT nor C/C++ expert, but just out of curiosity, can you post that one-liner here for everyone to look through?
>> This is a relatively minor release but fixes some issues on Cygwin
>> which sage-cygwin currently patches, adds Tom Boothby's code for fast
>> perfect power testing, my one line factor program
> You don't say. Really? :-) I'm no FLINT nor C/C++ expert, but just out
> of curiosity, can you post that one-liner here for everyone to look
> through?
>>> This is a relatively minor release but fixes some issues on Cygwin >>> which sage-cygwin currently patches, adds Tom Boothby's code for >>> fast >>> perfect power testing, my one line factor program
>> You don't say. Really? :-) I'm no FLINT nor C/C++ expert, but just >> out >> of curiosity, can you post that one-liner here for everyone to look >> through?
Here it is:
sage: factor(n)
:)
On a more serious note, this sounds like a good candidate for 4.0.2 as well.
> This is a relatively minor release but fixes some issues on Cygwin > which sage-cygwin currently patches, adds Tom Boothby's code for fast > perfect power testing, my one line factor program and Tom's heuristic > for a faster factoring routine for numbers less that one limb, etc.
> I've also added the F_mpz module, which was specifically requested by > Fredrick Johansson, though it is only documented in the F_mpz.h file > at this stage, not the main pdf file and I have not added an F_mpz_cmp > function or the other functions Fredrick requested as yet.
Why are the files F_mpz_mat* no longer present? sage was applying patches that built some kind of NTL interface that (still) depends on those files. With those patches, modified, I can't build this, partly because
... NTL-interface.cpp:41:23: error: F_mpz_mat.h: No such file or directory In file included from NTL-interface.cpp:43: NTL-interface.h:93: error: variable or field ‘mat_ZZ_to_F_mpz_mat’ declared void NTL-interface.h:93: error: ‘F_mpz_mat_t’ was not declared in this scope NTL-interface.h:93: error: expected primary-expression before ‘const’ NTL-interface.h:99: error: expected ‘,’ or ‘...’ before ‘mat’ NTL-interface.h:99: error: ISO C++ forbids declaration of ‘F_mpz_mat_t’ with no type NTL-interface.cpp:201: error: variable or field ‘mat_ZZ_to_F_mpz_mat’ declared void NTL-interface.cpp:201: error: ‘F_mpz_mat_t’ was not declared in this scope NTL-interface.cpp:201: error: expected primary-expression before ‘const’ make: *** [NTL-interface.o] Error 1
Even a vanilla untar and make fails, presumably due to not picking up GMP and NTL headers. There's a flint-env file that hardcodes various relevant settings to /home/wbhart and /home/was, am I expected to source that? A README or INSTALL file -- even if it's very brief -- would be nice.
>> This is a relatively minor release but fixes some issues on Cygwin
>> which sage-cygwin currently patches, adds Tom Boothby's code for fast
>> perfect power testing, my one line factor program and Tom's heuristic
>> for a faster factoring routine for numbers less that one limb, etc.
>> I've also added the F_mpz module, which was specifically requested by
>> Fredrick Johansson, though it is only documented in the F_mpz.h file
>> at this stage, not the main pdf file and I have not added an F_mpz_cmp
>> function or the other functions Fredrick requested as yet.
> Why are the files F_mpz_mat* no longer present? sage was applying
> patches that built some kind of NTL interface that (still) depends on
> those files. With those patches, modified, I can't build this, partly
> because
> ...
> NTL-interface.cpp:41:23: error: F_mpz_mat.h: No such file or directory
> In file included from NTL-interface.cpp:43:
> NTL-interface.h:93: error: variable or field ‘mat_ZZ_to_F_mpz_mat’
> declared void
> NTL-interface.h:93: error: ‘F_mpz_mat_t’ was not declared in this
> scope
> NTL-interface.h:93: error: expected primary-expression before
> ‘const’
> NTL-interface.h:99: error: expected ‘,’ or ‘...’ before
> ‘mat’
> NTL-interface.h:99: error: ISO C++ forbids declaration of
> ‘F_mpz_mat_t’ with no type
> NTL-interface.cpp:201: error: variable or field
> ‘mat_ZZ_to_F_mpz_mat’ declared void
> NTL-interface.cpp:201: error: ‘F_mpz_mat_t’ was not declared in
> this scope
> NTL-interface.cpp:201: error: expected primary-expression before
> ‘const’
> make: *** [NTL-interface.o] Error 1
> Even a vanilla untar and make fails, presumably due to not picking up
> GMP and NTL headers. There's a flint-env file that hardcodes various
> relevant settings to /home/wbhart and /home/was, am I expected to
> source that? A README or INSTALL file -- even if it's very brief --
> would be nice.
OK I've fixed FLINT-1.3.0 so that the NTL-interface builds correctly
unpatched. These files shouldn't be there, so I removed any reference
to them from NTL-interface.cpp, etc.
Let me know if there are any further issues with this.
Bill.
2009/6/10 Bill Hart <goodwillh...@googlemail.com>:
>>> This is a relatively minor release but fixes some issues on Cygwin
>>> which sage-cygwin currently patches, adds Tom Boothby's code for fast
>>> perfect power testing, my one line factor program and Tom's heuristic
>>> for a faster factoring routine for numbers less that one limb, etc.
>>> I've also added the F_mpz module, which was specifically requested by
>>> Fredrick Johansson, though it is only documented in the F_mpz.h file
>>> at this stage, not the main pdf file and I have not added an F_mpz_cmp
>>> function or the other functions Fredrick requested as yet.
>> Why are the files F_mpz_mat* no longer present? sage was applying
>> patches that built some kind of NTL interface that (still) depends on
>> those files. With those patches, modified, I can't build this, partly
>> because
>> ...
>> NTL-interface.cpp:41:23: error: F_mpz_mat.h: No such file or directory
>> In file included from NTL-interface.cpp:43:
>> NTL-interface.h:93: error: variable or field ‘mat_ZZ_to_F_mpz_mat’
>> declared void
>> NTL-interface.h:93: error: ‘F_mpz_mat_t’ was not declared in this
>> scope
>> NTL-interface.h:93: error: expected primary-expression before
>> ‘const’
>> NTL-interface.h:99: error: expected ‘,’ or ‘...’ before
>> ‘mat’
>> NTL-interface.h:99: error: ISO C++ forbids declaration of
>> ‘F_mpz_mat_t’ with no type
>> NTL-interface.cpp:201: error: variable or field
>> ‘mat_ZZ_to_F_mpz_mat’ declared void
>> NTL-interface.cpp:201: error: ‘F_mpz_mat_t’ was not declared in
>> this scope
>> NTL-interface.cpp:201: error: expected primary-expression before
>> ‘const’
>> make: *** [NTL-interface.o] Error 1
>> Even a vanilla untar and make fails, presumably due to not picking up
>> GMP and NTL headers. There's a flint-env file that hardcodes various
>> relevant settings to /home/wbhart and /home/was, am I expected to
>> source that? A README or INSTALL file -- even if it's very brief --
>> would be nice.
> Let me know if there are any further issues with this.
The introduced -fopenmp command in LIBS makes this fail at runtime on sage.math. Remove that command and it works fine. openmp is not used anywhere, can this go?
It would be really nice if there was a make target that built the library with the NTL interface included, or a separate NTL target that built a separate additional NTL library and the tests. Then you would remember to test the NTL interface and sage wouldn't have to patch the makefile. Is that doable?