Changing default RPM built to GCL.
[maxima.git] / ChangeLog-Current.md
blobfde7b40cd78e5daf3f2a5fe3b3c61c8e66f2863a
1 Maxima next change log
2 ======================
4 New items in core:
5 ------------------
6  * nonnegative_lp now replaces nonegative_lp which now is merely an alias.
7  * The environment variable MAXIMA_DOC_PREFIX that allows to override the
8    location the documentation is searched for.
9  * The environment variable GCL_DISABLE_MULTIPROCESS_MEMORY_POOL disables
10    GCL's ability to share the system memory between gcl-compiled maxima
11    processes.
12  * The lisp function defun-maclisp, a function that allows to define 
13    non-user functions using the maclisp nargs syntax.
14  * Documentation: ./update_examples now interprets lines beginning with 
15    the string "input:" as text that should be sent as input to the 
16    preceding command.
17  * garbage_collect() which manually triggers the lisp's garbage collector 
18    or returns false.
19  * newdet: An determinant algorithm that is optimized on sparse matrices
20  * maxima_frontend and maxima_frontend_version: Two variables that can be
21    set in order to inform build_info() which frontend is in use.
22  * cartesian_product_list makes cartesian products between lists.
24 New items in share:
25 -------------------
26  * Many improvements to the simplex algorithm including the ability to handle
27    symbolic inputs
28  * The ode package now has a testbench.
29  * killing.dem, a demo for Killing vector fields.
30  * The logic share package now provides logic_simplify that uses the
31    K-Map reduction method by Quine-Mccluskey, see merge-request #10.
33 Changes in core:
34 ----------------
35  * Many strings in error messages now are properly formatted
36  * The error message on calling a command with the wrong number of arguments
37    now in most cases tells which command the error was raised by.
38    error message that didn't tell which command the error was caused by.
39  * to_cl, a function that outputs the lisp code a maxima function would be 
40    compiled to now is autoloaded.
41  * A few functions from the linear algebra package weren't autoloaded.
42  * Removed the unused variable "variables_set" that wasn't assigned a meaningful
43    value to by the build system anyway.
44  * out-of-tree-builds now should work if maxima isn't compiled using ECL 
45    (see src/maxima.system for details about the reason)
46  * Part of the build process for the documentation is now off-loaded to 
47    doc/info/build_html.sh 
48  * The build system now uses /usr/bin/perl instead of /usr/local/bin/perl
49  * Tweaked the memory management for GCL towards big maxima projects by default
50  * Compatibility for newer autotools.
51  * configure now has an --enable-abcl switch.
52  * Many improvements for gentran, a translator from maxima to efficient
53    c, ratfor or fortran code.
54  * Maxima.bat now autodetects 64-bit systems and does the necessary
55    modifications for making lapack work in SBCL it this test is positive.
56  * perl is now uniformly called as /usr/bin/env perl
57  * Resolved the "simplifya: I don't know how to simplify this operator: ~M"
58    error triggered by some array actions.
59  * The Windows installer can now include ABCL.
60  * Corrected many markers that tell if an example can be updated using the 
61    doc/info/update_example scripts.
62  * user-visible functions are now defined using defmfun, only internally-used
63    ones by defun.
64  * The testsuite summary now not only which tells unexpectedly failed, but also
65    which ones unexpectedly passed.
66  * The maxima-to-lisp translator now handles the case properly that a list
67    is assigned to a global variable.
68  * ./configure: Tried to make the summary nicer.
69  * maxima.asd should mow match maxima.system again.
70  * The lists of test suite files and share test suite files now are maxima lists
71    and therefore can be manipulated without having to resolve to lisp commands.
72  * The lists of core and share test suite files (testsuite_files and 
73    share_testsuite_files) are now available directly after starting maxima and 
74    not only after using or manually loading the test suite.
75  * "make check" manipulates the list of tests now in a more canonical way in order
76    to automatically run the interactive tests, as well.
77  * "make check" now compiles maxima before running the tests, if maxima still 
78    needs compiling.
79  * ./configure --enable-quiet-build now muffles more warnings.
80  * src/shares_subdirs.lisp is now no more generated directly but using an 
81    immediate file which hinders "make distclean" from automatically deleting it.
82  * documented the clisp bug that if a frontend acknowledges a network packet 
83    while maxima is still preparing the next one the result might be garbled
84    data.
85  * Small improvements for ./configure's --enable-quiet-build switch
86  * The one-file-per-chapter version of the html manual now starts in 
87    maxima-1.html, not in maxima.html
88  * The documentation now is build using the standard makeinfo tools
89  * doc/info/update_examples.sh can now be used for more examples of the 
90    documentation including interactive ones.
91  * Many documentation updates including many hyperrefs and more and better 
92    examples.
93  * add series expansion for expintegral_si and gamma_incomplete. This
94    unfortunately breaks the following integrals found in the test suite:
95      integrate(log(cot(x) - 1), x, 0, %pi/4);           /* rtest16  524 */
96      integrate(log(cos(x)), x, 0, %pi/2);               /* rtest16  525 */
97      integrate((log((2-x)/2)+log(2))/(1-x), x, 0, 1);   /* rtestint 232 */
98  * float_approx_equal now does what the comments in the code say.
99  * an ecl-based maxima no more enters an endless loop if the front-end dies.
100  * maxima-sbcl now supports non-ascii user names and install dirs on MacOs 
101    and MS Windows
102  * translate() now temporarily sets prederror to true which produces an
103    error message if the translator fails to translate a nested if() 
104    correctly, see Bug #3412.
105  * A workaround for a bug in GCL that makes $load_pathname work again
106  * "make clean" now removes the temporary files for lisps that aren't
107    currently configured.
108  * "make check" now runs the share and the core testsuite in the same
109    maxima session.
110  * Fix the error message for an invalid upper limit of integration
111    If the upper limit of integration was invalid, the error message
112    incorrectly printed the lower limit instead.
113  * The feature "nonscalar" was named "nonscalarp" in some places.
114    Now it is named "nonscalar" consistently. 
115  * Arraymake should now output an error if the result isn't a valid array
116  * interval(a,b) created an interval, but maxima lacked functions to do
117    anything with these intervals => this undocumented function was 
118    commented out.
119  * MRELATIONP now knows how to deal with the "not equal" operator.
120  * shipped around a clisp bug that caused broken output with fast front-ends
121  * '[x][1]; now is output as a list, too.
122  * The last output label of a batch file is no more clobbered with the file
123    name.
124  * emaxima now correctly expands tabs in emacs' comint buffer.
125  * "make install" now installs emaxima and imaxima in a place emacs will 
126    find by default. configure's --emacs-prefix= option allows to choose
127    a different directory.
128  * Code clean up.
130 Changes in share:
131 --------------
132  * The the arguments to Krylov matrix are now checked for being of the 
133    correct type.
134  * ODEPAK now works in conjunction with ECL.
135  * LAPACK now works in conjunction with ECL, too.
136  * Sarag: Fix the missing definition of SQUARE_FREE_ALGORITHM used in the 
137    certificate code.. It adds explicit details while proving the sign of 
138    a polynomial in a given interval
139  * Sarag: Make certificate proof more explicit (verify certificate)
140  * Added the existing lapack checks to the share testsuite for all lisps
141    except ECL (in ECL a try to use lapack results in an error message)
142    and SBCL (receives an out-of-memory, depending on the system).
143  * A primitive testsuite for ODEPACK that tests if it works at all.
144  * ezunits: A conversion rule for nondimensional/(sum of dimensional)
145  * ezunits: 0 now can have a dimension.
146  * ezunits test script: Avoid kill(m) which kills the unit meter.
147  * The tests for the "sym" package are now part of the share testsuite.
148  * The tests for the "ode" package are now part of the share testsuite, too
149    but have been disabled as they failed.
150  * Sarag no more overwrites the function resultant() which means the 
151    share test suite no more kills this function in a kill(all);
152  * Draw now accepts numbers as color specification besides the html-style
153    and the gnuplot-style color identifiers it already understood.
154  * Draw now accepts plot titles even if they aren't strings.
155  * wrstcse now gets the ranges and resolution of random numbers for monte
156    carlo analysis right.
158 Bug fixes:
159 ----------
160  * #3470: 
161     -Replace the option variable nonegative_lp with nonnegative_lp; the
162       former is retained as an alias.
163     -Correct spelling of non-negative in documentation.
164     -Document the undocumented optional input <all> to min/maximize_lp.
165  * #3463: mention epsilon_lp more explicitly in minimize_lp
166  * #3497: Resolved an error in demos concerning the Ricci tensor
167  * #3497: ctensor documentation on the Ricci tensor is inconsistent
168  * #3532: Wrong substitution on integrating cos(x)*abs(cos(x))
170 Unnumbered bugs:
171 ----------------
172  * ezUnits: microS is microSiemens, not microSievert.
173  * radcan(sqrt(-1/(sqrt(-3)+1))*sqrt(2)) runs out-of-memory
175 Additional improvements:
176 ------------------------
177  * Updated the external utilities for the Windows installer
178  * Updated the wxMaxima version the Windows installer comes with
179  * Nightly Test: A summary of the share tests
180  * Crosscompiling: Add 'maxima_longnames.c' to automake
181  * Documentation Updates