Hello folks,

Sage 2.11 has been released on March 30th, 2008. It is available at

           http://sagemath.org/download.html

* About Sage (http://www.sagemath.org)

Sage is developed by volunteers and combines 71 open source packages.
It is available for download from sagemath.org and its mirrors in
source or binary form. If you have any questions and/or problems
please report them to the google groups sage-devel or sage-support.
You can also drop by in #sage-devel or #sage-support in freenode.

---------------------------------------------------------------------

The following 31 people contributed code to this release:

 * Tim Abbott
 * Michael Abshoff
 * Martin Albrecht
 * Nick Alexander
 * Tom Boothby
 * Robert Bradshaw
 * Craig Citro
 * John Cremona
 * Dan Drake
 * Didier Deshommes
 * Burcin Erocal
 * Lars Fischer
 * Gary Furnish
 * Alex Ghitza
 * Jason Grout
 * Marshall Hampton
 * Carlo Hamalainen
 * Mike Hansen
 * Ryan Hinton
 * David Joyner
 * Michael Kallweit
 * Emily Kirkman
 * Robert Miller
 * Joel Mohler
 * R. Rishikesh
 * David Roe
 * William Stein
 * Jaap Spies
 * Justin Walker
 * Carl Witty
 * Yi Qiang

Cheers,

Michael Abshoff (release chair), William Stein

* Major Features, New Spkgs and Bugfixes

 * ATLAS: Michael Abshoff and Burcin Erocal upgraded ATLAS to the 
   3.8.1 release. In addition tuning info for 32 bit Prescott CPUs 
   as well as Powerbook G4s under Linux was added. 

 * zn_poly: David Harvey's zn_poly library is now a standard package 
   for Sage. zn_poly is a new C library for polynomial arithmetic in 
   (Z/nZ)[x] where 3≤n≤ULONG_MAX (i.e. any machine-word-sized modulus). 
   The main benefit is speed. The library is used so far only to 
   compute the zeta function for hyperelliptic curves.

 * Small roots method for polynomials mod N (N composite): Martin 
   Albrecht implemented Coppersmith's method for finding small roots 
   of univariate polynomials modulo N where N is composite.

 * Generic Multivariate Polynomial Arithmetic: Joel Mohler improved 
   the efficiency of the generic multivariate polynomial arithmetic 
   in Sage by roughly a factor of ten. 

 * k-Schur Functions and Non-symmetric Macdonald Polynomials: Mike 
   Hansen: k-Schur functions s^(k)_\lambda are a relatively new 
   family of symmetric functions which play a role in Z[h1,...,hk] 
   as the Schur functions s_\lambda do in \Lambda. The k-Schur 
   functions, amongst other things, provide a natural basis for the 
   quantum cohomology of the Grassmannian. The k-Schur functions can 
   be used like any other symmetric functions and are created with 
   kSchurFunctions. Non-symmetric Macdonald polynomials in type A 
   can now be accessed in Sage. The polynomials are computed from 
   the main theorem in "A Combinatorial Formula for the Non-symmetric 
   Macdonald Polynomials" by Haglun, Haiman, and Loehr.

 * Marshall Hampton did upgrade gfan as well as the optional phcpack
   spkgs and their interfaces. He also increased doctest coverage to 
   100% for both interfaces.

 * Improved capabilities for solving matrix equations: William Stein 
   implemented code so that one can now solve matrix equations AX=B 
   and XA=B whenever a solution exists. In particular, solving linear 
   equations now works even if A is singular or nonsquare. 

 * Generators for congruence subgroups: Robert Miller implemented an 
   algorithm for very quickly computing generators for congruence 
   subgroups \Gamma_0(N), \Gamma_1(N), and \Gamma_H(N).

 * Various other people fixed a number of bugs and did improve other 
   bits of Sage.

* Known Issues with 2.11:

 * None

* Bug Statistics

We closed 129 tickets. For details see

   http://trac.sagemath.org/sage_trac/milestone/sage-2.11

or check out the closed ticket section at the end of the 
announcement. 

* Upcoming Releases

The next release will be 3.0, chaired by Michael Abshoff. 
The release is planned in about two weeks. Potential features 
include:

 * DOCTESTS: Raise the doctest coverage of the Sage library 
   to 50%.
 * INTERACT: Interactive versions of functions in the notebook; 
   kind of like Mathematica's Manipulate command.
 * R: a pexpect R interface
 * TIMING/BENCHMARK: Making it so doctesting Sage also saves 
   complete timing and profiling information. Start using and 
   publishing the results of this.
 * PORTING: OSX 10.5 64 bit, FreeBSD, PPC 64 bit build support 
   out of the box. Experimental 32 bit Solaris 10 build support.
 * MODULAR ABELIAN VARIETIES: Implement Stein's algorithms for 
   computing with modular abelian varieties. This is very 
   symbolic, because Stein started the Sage project in the 
   first place specifically to implement these algorithms. 

* Doctesting Coverage

For 2.10.4 we had:

Overall weighted coverage score:  47.6%
Total number of functions:  18616

We increased coverage by 1.3% in 2.11 while adding 237 functions:

Overall weighted coverage score:  48.9%
Total number of functions:  18853

* Closed Tickets:

Merged in final:

#2736: Yi Qiang: fix for dsage doctest failures in 
       sage-2.11.rc0

Merged in rc0:

#1882: Marshall Hampton, Carl Witty: update optional 
       phcpack.spkg to 2.3.39, mixed volume computation
#1990: Carl Witty: ZZ.random_element() -- never returns 
       0 and typos/nonsense in docstrings
#2173: Tim Abbott: SAGE setup.py should run cython as 
       "python2.5 cython" and other debian fixes
#2688: Emily Kirkman: Kuratowski subgraph isolator for 
       planarity checking
#2702: Martin Albrecht, Mike Hansen: get coverage of 
       multi_polynomial_libsingular to almost 100%
#2709: Nick Alexander: add a prime_above() function to 
       NumberField_generic for finding prime ideals above 
       other ideals
#2714: Carl Witty: many interfaces have gp-specific code
#2715: Mike Hansen: sage -coverage currently counts 
       functions that are defined in doctests
#2717: Carl Witty: maxima expect interface synchronization 
       not sufficiently robust
#2718: Michael Abshoff: increase the default doctest 
       timeout to 360 seconds
#2719: Robert Bradshaw: bitset is completely broken on OSX 
       10.4 G5
#2720: Michael Abshoff: Sage 2.11.alpha2: fix documentation 
       build issues
#2721: Gary Furnish: parallel doctest not robust against 
       filesystem issues
#2722: William Stein: interact -- a doctest problem
#2723: Joel Mohler: coercion error in monomial_quotient
#2725: Joel Mohler: MPolynomial_polydict doc-tests and some 
       refactoring
#2727: Tim Abbott: fix uninitialized cdef in 
       multi_polynomial_libsingular.pyx

Merged in alpha2:

#1010: Marshall Hampton: upgrade gfan to version 0.3
#1618: Michael Abshoff: Make SCons ignore Intel ifort's 
       linker options
#1707: Carlo Hamalainen: add Carlo Hamalainen's latin square 
       stuff to Sage
#2276: Martin Albrecht: M.divides(N) gives an error if M and 
       N are monomials in R.<x,y> = PolynomialRing(QQ)
#2355: Didier Deshommes, Gary Furnish: Write a clearer 
       submatrix implementation
#2415: Michael Abshoff: update NTL to 5.4.2 (bugfix release)
#2417: Alex Ghitza: discriminant method sometimes returns 
       values in the fraction field
#2470: Yi Qiang: dsage docs in tutorial -- can't tex them
#2498: Alex Ghitza: PARI's is_irreducible being used 
       inappropriately
#2565: Dan Drake: logging is extremely broken
#2596: William Stein: Sage 2.11.alpha0: sage/plot/plot.py 
       doctest failure
#2597: Ryan Hinton: Add reduced adjacency matrix and a list 
       file format support to BipartiteGraph
#2600: Carl Witty: vector plot throws error when function 
       contains a float
#2609: Robert Miller: generators for congruence subgroups
#2611: Martin Albrecht: add monomial_coefficent to boolean 
       polynomials
#2612: Robert Bradshaw: String to Integer Conversion
#2614: Joel Mohler: MPolynomial coefficient/
       polynomial_coefficient merging
#2627: Robert Bradshaw: Integer(abs(gamma(n+1))) is not always 
       equal to factorial(n) for n a positive integer
#2634: Martin Albrecht: Unable to create certain multivariate 
       polynomial rings since libsingular is invoked instead 
       of generic code
#2642: Martin Albrecht, Carl Witty: doctest failure in 
       polynomial_modn_dense_ntl.pyx: .small_roots()
#2645: Jason Grout: arrow3d is sometimes too long
#2653: Robert Bradshaw: norm and trace of elements of orders 
       are Rational not Integer
#2657: Tim Abbott: Debian fplll cleanup
#2660: Michael Abshoff: copy work around stdint.h on Solaris 9
#2661: Mike Hansen: sage cannot compute floor / ceil of 
       log(8)/log(2)
#2664: Nick Alexander: implement a symplectic form for 
       finding symplectic bases
#2668: Nick Alexander, Carl Witty: loads/dumps do not work 
       with QQbar and AA
#2672: Michael Abshoff: Fix OSX 10.5 detection code - it 
       fails for the currect OSX 10.5.2
#2674: Craig Citro, Justin Walker: Bug in modforms
#2676: Robert Miller: equitable partitions: two bugs
#2677: Didier Deshommes: sage 2.11.alpha1: doctest failures 
       in real_double_dense.pyx
#2681: Alex Ghitza:improve doctest coverage in libs/pari/gen.pyx
#2683: Mike Hansen: Add initial support of k-Schur functions
#2685: Robert Miller: compute the girth of a graph
#2689: Robert Miller: compute blocks and cut-vertices of a 
       graph
#2690: Emily Kirkman: add circular argument to genus command
#2691: Robert Miller: generate digraphs
#2692: William Stein: bug displaying list of published worksheets
#2701: David Joyner: simple bug fixed for linear_codes
#2706: Robert Bradshaw: Fast bitset implimentation
#2707: Nick Alexander: clean and better document 
       is_totally_real(), add is_totally_imaginary() to 
       NumberField_generic
#2708: Mike Hansen: add support for nonsymmetric Macdonald 
       polynomials in type A via HHL formula
#2712: Justin Walker: Add 'scalar_part()' and other methods 
       for quaternion elements

Merged in alpha1:

#291: Joel Mohler: strange printing of -1 in multivariate 
      polynomial rings
#679: Gary Furnish: print statistics about the number of 
      failed doctests and exact nature of failures
#2287: Michael Abshoff: error installing rubiks related 
       to location of install
#2493: Jaap Spies: Updated experimental vtk spkg 
       (vtk-5.0.4.spkg)
#2495: Jaap Spies: Updated experimental Mayavi2 spkg 
       (mayavi_2.1.1) linux only
#2514: David Joyner, Robert Miller: additions to coding 
       modules
#2572: Carl Witty: imag() not defined for Algebraic Real 
       Field
#2586: Alex Ghitza, Michael Abshoff: latex products need 
       to be space separated
#2595: Michael Abshoff: rubiks and polymake both have a 
       cube binary
#2598: Martin Albrecht: allow ZZ element to be constructed 
       from GF(2) list
#2599: Mike Hansen: Permutation -> PermutationGroupElement 
       fails for the identity
#2613: Michael Kallweit: Moving all_paths() to GenericGraph
#2618: Martin Albrecht: documentation for QuotientRingElement
#2619: Martin Albrecht: Gröbner bases over quotient rings
#2621: Gary Furnish: parallel doctest: concurrency problem 
       when creating .doctest directories
#2622: Martin Albrecht: add PolyBoRi to reference manual
#2623: Michael Abshoff: fix repo consistency issue with 
       sage/schemes/hyperelliptic_curves/hypellfrob/README
#2626: Martin Albrecht: useless __list__ methods
#2635: Tom Boothby: MAJOR NOTEBOOK BUG -- sending unevaluated 
       cells back to the server is severly broken
#2639: Carl Witty: ZZ(QQbar(0)) fails
#2640: Michael Abshoff: add sage-edu to list of mailing lists
#2644: Didier Deshommes: fix numerical noise doctest failures 
       in matrix_real_double_dense
#2647: Tim Abbott: Fixed Debian support for linbox
#2648: William Stein: bug in octave version

Merged in alpha0: 

#1567: David Harvey: Make zn_poly a standard package
#1568: David Harvey: hypellfrob -- faster zeta functions for 
       hyperelliptic curves
#2108: Burcin Erocal, Michael Abshoff: Add Atlas Tuning 
       information for 32 bit Pentium D CPUs under Linux 
#2148: Burcin Erocal: PolyBoRi monomial orders are wrong
#2260: Michael Abshoff: Upgrade ATLAS to 3.8.1
#2262: Michael Abshoff: Move the debian directory from the sage 
       to the ext repo
#2368: Michael Abshoff: Add Atlas Tuning information for G4
       Powerbook under Linux 
#2405: Joel Mohler: increase Polydict speed
#2424: Martin Albrecht: small roots method for polynomials 
       mod N (N composite)
#2426: Michael Abshoff: inst.tex - update compiler and 
       operating system support
#2431: Marshall Hampton: fix optional polymake-2.2.p4.spkg 
#2437: Tom Boothby, Michael Abshoff: update eclib.spkg to 
       eclib-20080304.p0
#2468: Didier Deshommes: inverting a non-invertible matrix over 
       RDF returns weird results
#2517: Jason Grout: ignore bad values in plot
#2545: Burcin Erocal: FractionFieldElement lacks derivative method
#2566: Robert Miller: fix all known bugs in graph_isom and 
       binary_code
#2571: John Cremona: problem with copy() on 
       sage.rings.integer_mod.IntegerMod_gmp
#2574: David Joyner: problem with Abelian groups and trivial 
       elements
#2576: William Stein: preserve docstrings of decorated methods 
       in multi_polynomial_ideal.py
#2579: R. Rishikesh: Inconsistency in integer quotient
#2580: Robert Miller: Implement backends for graphs
#2581: William Stein: extend solve_right to all cases; implement 
       solve_left
#2582: Robert Miller: fix bug in PermutationGroupElement
#2583: Robert Miller: Sage 2.11.a0: doctest failure in plot.py 
       due to #2580
#2584: Jason Grout, Mike Hansen: printing bug with list_function())
#2585: David Roe, Mike Hansen: padic bugfix for check=False in 
       constructor
#2587: Robert Miller: subgroup of a permutation group is so slow 
       it's silly
#2588: Nick Alexander: documentation and tests for 
       sage.schemes.hyperelliptic_curves.jacobian_morphism
#2593: Martin Albrecht: Sage chokes on utf-8 in .sage files
#2594: Joel Mohler: MPolynomial_polydict __floordiv__ wrong 
       arithmetic
#2602: Jason Grout: plot_vector_field docs are unnecessarily 
       complicated (and use the slow lambda functions!)
#2610: Lars Fischer, Michael Abshoff: Website: add missing 
       line for emacs config