Commit graph

3313 commits

Author SHA1 Message Date
prlw1
f02bd0fbf2 Move (BUILD_)DEPENDS after the maintainer section. Requested by wiz@ 2014-01-25 12:57:30 +00:00
prlw1
0703c77982 Removed gcalctool-gtk3 successor gnome-calculator 2014-01-25 12:52:56 +00:00
prlw1
1263746996 Add gnome-calculator 3.10.2
gcalctool ported to vala and renamed gnome-calculator.
2014-01-25 12:35:19 +00:00
wiz
aa67e11089 Mark packages as not ready for python-3.x where applicable;
either because they themselves are not ready or because a
dependency isn't. This is annotated by
PYTHON_VERSIONS_INCOMPATIBLE=  33 # not yet ported as of x.y.z
or
PYTHON_VERSIONS_INCOMPATIBLE=  33 # py-foo, py-bar
respectively, please use the same style for other packages,
and check during updates.

Use versioned_dependencies.mk where applicable.
Use REPLACE_PYTHON instead of handcoded alternatives, where applicable.
Reorder Makefile sections into standard order, where applicable.

Remove PYTHON_VERSIONS_INCLUDE_3X lines since that will be default
with the next commit.

Whitespace cleanups and other nits corrected, where necessary.
2014-01-25 10:29:56 +00:00
wiz
d8ddffa21a Update HOMEPAGE. Mark as not ready for python-3.x (use py-numpy there). 2014-01-25 09:06:42 +00:00
wiz
3a699c9bf7 Update HOMEPAGE. Mark as not ready for python-3.x. 2014-01-25 09:06:15 +00:00
wiz
eaaa4631c2 Mark as not useful for python-3.x (included since 3.3, the only version
currently in pkgsrc).
2014-01-25 09:05:56 +00:00
jperkin
6eadc93a87 Improve comment and description. 2014-01-24 09:16:18 +00:00
wiz
daf2449515 Remove unused patch. 2014-01-23 18:43:11 +00:00
wiz
c8af012c74 Remove unused patch 2014-01-23 18:42:34 +00:00
wiz
7978a088b6 Update to 3.0.0. Convert to distutils.mk. Move option handling
into options.mk.

Changes from 2.4 to 3.0
=======================

New features
------------

- Since this release PyTables provides full support to Python_ 3
  (closes :issue:`188`).

- The entire code base is now more compliant with coding style guidelines
  describe in the PEP8_ (closes :issue:`103` and :issue:`224`).
  See `API changes`_ for more details.

- Basic support for HDF5 drivers.  Now it is possible to open/create an
  HDF5 file using one of the SEC2, DIRECT, LOG, WINDOWS, STDIO or CORE
  drivers.  Users can also set the main driver parameters (closes
  :issue:`166`).
  Thanks to Michal Slonina.

- Basic support for in-memory image files.  An HDF5 file can be set from or
  copied into a memory buffer (thanks to Michal Slonina).  This feature is
  only available if PyTables is built against HDF5 1.8.9 or newer.
  Closes :issue:`165` and :issue:`173`.

- New :meth:`File.get_filesize` method for retrieving the HDF5 file size.

- Implemented methods to get/set the user block size in a HDF5 file
  (closes :issue:`123`)

- Improved support for PyInstaller_.  Now it is easier to pack frozen
  applications that use the PyTables package (closes: :issue:`177`).
  Thanks to Stuart Mentzer and Christoph Gohlke.

- All read methods now have an optional *out* argument that allows to pass a
  pre-allocated array to store data (closes :issue:`192`)

- Added support for the floating point data types with extended precision
  (Float96, Float128, Complex192 and Complex256).  This feature is only
  available if numpy_ provides it as well.
  Closes :issue:`51` and :issue:`214`.  Many thanks to Andrea Bedini.

- Consistent ``create_xxx()`` signatures.  Now it is possible to create all
  data sets :class:`Array`, :class:`CArray`, :class:`EArray`,
  :class:`VLArray`, and :class:`Table` from existing Python objects (closes
  :issue:`61` and :issue:`249`).  See also the `API changes`_ section.

- Complete rewrite of the :mod:`nodes.filenode` module. Now it is fully
  compliant with the interfaces defined in the standard :mod:`io` module.
  Only non-buffered binary I/O is supported currently.
  See also the `API changes`_ section.  Closes :issue:`244`.

- New :program:`pt2to3` tool is provided to help users to port their
  applications to the new API (see `API changes`_ section).


Improvements
------------

- Improved runtime checks on dynamic loading of libraries: meaningful error
  messages are generated in case of failure.
  Also, now PyTables no more alters the system PATH.
  Closes :issue:`178` and :issue:`179` (thanks to Christoph Gohlke).

- Improved list of search paths for libraries as suggested by Nicholaus
  Halecky (see :issue:`219`).

- Removed deprecated Cython_ include (.pxi) files. Contents of
  :file:`convtypetables.pxi` have been moved in :file:`utilsextension.pyx`.
  Closes :issue:`217`.

- The internal Blosc_ library has been upgraded to version 1.2.3.

- Pre-load the bzip2_ library on windows (closes :issue:`205`)

- The :meth:`File.get_node` method now accepts unicode paths
  (closes :issue:`203`)

- Improved compatibility with Cython_ 0.19 (see :issue:`220` and
  :issue:`221`)

- Improved compatibility with numexpr_ 2.1 (see also :issue:`199` and
  :issue:`241`)

- Improved compatibility with development versions of numpy_
  (see :issue:`193`)

- Packaging: since this release the standard tar-ball package no more includes
  the PDF version of the "PyTables User Guide", so it is a little bit smaller
  now.  The complete and pre-build version of the documentation both in HTML
  and PDF format is available on the file `download area`_ on SourceForge.net.
  Closes: :issue:`172`.

- Now PyTables also uses `Travis-CI`_ as continuous integration service.
  All branches and all pull requests are automatically tested with different
  Python_ versions.  Closes :issue:`212`.


Other changes
-------------

- PyTables now requires Python 2.6 or newer.

- Minimum supported version of Numexpr_ is now 2.0.


API changes
-----------

The entire PyTables API as been made more PEP8_ compliant (see :issue:`224`).

This means that many methods, attributes, module global variables and also
keyword parameters have been renamed to be compliant with PEP8_ style
guidelines (e.g. the ``tables.hdf5Version`` constant has been renamed into
``tables.hdf5_version``).

We made the best effort to maintain compatibility to the old API for existing
applications.  In most cases, the old 2.x API is still available and usable
even if it is now deprecated (see the Deprecations_ section).

The only important backwards incompatible API changes are for names of
function/methods arguments.  All uses of keyword arguments should be
checked and fixed to use the new naming convention.

The new :program:`pt2to3` tool can be used to port PyTables based applications
to the new API.

Many deprecated features and support for obsolete modules has been dropped:

- The deprecated :data:`is_pro` module constant has been removed

- The nra module and support for the obsolete numarray module has been removed.
  The *numarray* flavor is no more supported as well (closes :issue:`107`).

- Support for the obsolete Numeric module has been removed.
  The *numeric* flavor is no longer available (closes :issue:`108`).

- The tables.netcdf3 module has been removed (closes :issue:`68`).

- The deprecated :exc:`exceptions.Incompat16Warning` exception has been
  removed

- The :meth:`File.create_external_link` method no longer has a keyword
  parameter named *warn16incompat*.  It was deprecated in PyTables 2.4.

Moreover:

- The :meth:`File.create_array`, :meth:`File.create_carray`,
  :meth:`File.create_earray`, :meth:`File.create_vlarray`, and
  :meth:`File.create_table` methods of the :class:`File` objects gained a
  new (optional) keyword argument named ``obj``.  It can be used to initialize
  the newly created dataset with an existing Python object, though normally
  these are numpy_ arrays.

  The *atom*/*descriptor* and *shape* parameters are now optional if the
  *obj* argument is provided.

- The :mod:`nodes.filenode` has been completely rewritten to be fully
  compliant with the interfaces defined in the :mod:`io` module.

  The FileNode classes currently implemented are intended for binary I/O.

  Main changes:

  * the FileNode base class is no more available,
  * the new version of :class:`nodes.filenode.ROFileNode` and
    :class:`nodes.filenode.RAFileNode` objects no more expose the *offset*
    attribute (the *seek* and *tell* methods can be used instead),
  * the *lineSeparator* property is no more available end the ``\n``
    character is always used as line separator.

- The `__version__` module constants has been removed from almost all the
  modules (it was not used after the switch to Git).  Of course the package
  level constant (:data:`tables.__version__`) still remains.
  Closes :issue:`112`.

- The :func:`lrange` has been dropped in favor of xrange (:issue:`181`)

- The :data:`parameters.MAX_THREADS` configuration parameter has been dropped
  in favor of :data:`parameters.MAX_BLOSC_THREADS` and
  :data:`parameters.MAX_NUMEXPR_THREADS` (closes :issue:`147`).

- The :func:`conditions.compile_condition` function no more has a *copycols*
  argument, it was no more necessary since Numexpr_ 1.3.1.
  Closes :issue:`117`.

- The *expectedsizeinMB* parameter of the :meth:`File.create_vlarray` and of
  the :meth:`VLArrsy.__init__` methods has been replaced by *expectedrows*.
  See also (:issue:`35`).

- The :meth:`Table.whereAppend` method has been renamed into
  :meth:`Table.append_where` (closes :issue:`248`).

Please refer to the :doc:`../MIGRATING_TO_3.x` document for more details about
API changes and for some useful hint about the migration process from the 2.X
API to the new one.


Other possibly incompatible changes
-----------------------------------

- All methods of the :class:`Table` class that take *start*, *stop* and
  *step* parameters (including :meth:`Table.read`, :meth:`Table.where`,
  :meth:`Table.iterrows`, etc) have been redesigned to have a consistent
  behaviour.  The meaning of the *start*, *stop* and *step* and their default
  values now always work exactly like in the standard :class:`slice` objects.
  Closes :issue:`44` and :issue:`255`.

- Unicode attributes are not stored in the HDF5 file as pickled string.
  They are now saved on the HDF5 file as UTF-8 encoded strings.

  Although this does not introduce any API breakage, files produced are
  different (for unicode attributes) from the ones produced by earlier
  versions of PyTables.

- System attributes are now stored in the HDF5 file using the character set
  that reflects the native string behaviour: ASCII for Python 2 and UTF8 for
  Python 3.  In any case, system attributes are represented as Python string.

- The :meth:`iterrows` method of :class:`*Array` and :class:`Table` as well
  as the :meth:`Table.itersorted` now behave like functions in the standard
  :mod:`itertools` module.
  If the *start* parameter is provided and *stop* is None then the
  array/table is iterated from *start* to the last line.
  In PyTables < 3.0 only one element was returned.


Deprecations
------------

- As described in `API changes`_, all functions, methods and attribute names
  that was not compliant with the PEP8_ guidelines have been changed.
  Old names are still available but they are deprecated.

- The use of upper-case keyword arguments in the :func:`open_file` function
  and the :class:`File` class initializer is now deprecated.  All parameters
  defined in the :file:`tables/parameters.py` module can still be passed as
  keyword argument to the :func:`open_file` function just using a lower-case
  version of the parameter name.


Bugs fixed
----------

- Better check access on closed files (closes :issue:`62`)

- Fix for :meth:`File.renameNode` where in certain cases
  :meth:`File._g_updateLocation` was wrongly called (closes :issue:`208`).
  Thanks to Michka Popoff.

- Fixed ptdump failure on data with nested columns (closes :issue:`213`).
  Thanks to Alexander Ford.

- Fixed an error in :func:`open_file` when *filename* is a :class:`numpy.str_`
  (closes :issue:`204`)

- Fixed :issue:`119`, :issue:`230` and :issue:`232`, where an index on
  :class:`Time64Col` (only, :class:`Time32Col` was ok) hides the data on
  selection from a Tables. Thanks to Jeff Reback.

- Fixed ``tables.tests.test_nestedtypes.ColsTestCase.test_00a_repr`` test
  method.  Now the ``repr`` of of cols on big-endian platforms is correctly
  handled  (closes :issue:`237`).

- Fixes bug with completely sorted indexes where *nrowsinbuf* must be equal
  to or greater than the *chunksize* (thanks to Thadeus Burgess).
  Closes :issue:`206` and :issue:`238`.

- Fixed an issue of the :meth:`Table.itersorted` with reverse iteration
  (closes :issue:`252` and :issue:`253`).
2014-01-21 16:32:42 +00:00
wiz
77f7d6abdf Update to 2.2.2. Set LICENSE. Update HOMEPAGE.
Changes from 2.2.1 to 2.2.2
===========================

* The `copy_args` argument of `NumExpr` function has been brought
  back.  This has been mainly necessary for compatibility with
  PyTables < 3.0, which I decided to continue to support.  Fixed #115.

* The `__nonzero__` method in `ExpressionNode` class has been
  commented out.  This is also for compatibility with PyTables < 3.0.
  See #24 for details.

* Fixed the type of some parameters in the C extension so that s390
  architecture compiles.  Fixes #116.  Thank to Antonio Valentino for
  reporting and the patch.


Changes from 2.2 to 2.2.1
=========================

* Fixes a secondary effect of "from numpy.testing import `*`", where
  division is imported now too, so only then necessary functions from
  there are imported now.  Thanks to Christoph Gohlke for the patch.

Changes from 2.1 to 2.2
=======================

* [LICENSE] Fixed a problem with the license of the
  numexpr/win32/pthread.{c,h} files emulating pthreads on Windows
  platforms.  After persmission from the original authors is granted,
  these files adopt the MIT license and can be redistributed without
  problems.  See issue #109 for details
  (https://code.google.com/p/numexpr/issues/detail?id=110).

* [ENH] Improved the algorithm to decide the initial number of threads
  to be used.  This was necessary because by default, numexpr was
  using a number of threads equal to the detected number of cores, and
  this can be just too much for moder systems where this number can be
  too high (and counterporductive for performance in many cases).
  Now, the 'NUMEXPR_NUM_THREADS' environment variable is honored, and
  in case this is not present, a maximum number of *8* threads are
  setup initially.  The new algorithm is fully described in the Users
  Guide now in the note of 'General routines' section:
  https://code.google.com/p/numexpr/wiki/UsersGuide#General_routines.
  Closes #110.

* [ENH] numexpr.test() returns `TestResult` instead of None now.
  Closes #111.

* [FIX] Modulus with zero with integers no longer crashes the
  interpreter.  It nows puts a zero in the result.  Fixes #107.

* [API CLEAN] Removed `copy_args` argument of `evaluate`.  This should
  only be used by old versions of PyTables (< 3.0).

* [DOC] Documented the `optimization` and `truediv` flags of
  `evaluate` in Users Guide
  (https://code.google.com/p/numexpr/wiki/UsersGuide).

Changes from 2.0.1 to 2.1
===========================

* Dropped compatibility with Python < 2.6.

* Improve compatibiity with Python 3:

  - switch from PyString to PyBytes API (requires Python >= 2.6).
  - fixed incompatibilities regarding the int/long API
  - use the Py_TYPE macro
  - use the PyVarObject_HEAD_INIT macro instead of PyObject_HEAD_INIT

* Fixed several issues with different platforms not supporting
  multithreading or subprocess properly (see tickets #75 and #77).

* Now, when trying to use pure Python boolean operators, 'and',
  'or' and 'not', an error is issued suggesting that '&', '|' and
  '~' should be used instead (fixes #24).

Changes from 2.0 to 2.0.1
=========================

* Added compatibility with Python 2.5 (2.4 is definitely not supported
  anymore).

* `numexpr.evaluate` is fully documented now, in particular the new
  `out`, `order` and `casting` parameters.

* Reduction operations are fully documented now.

* Negative axis in reductions are not supported (they have never been
  actually), and a `ValueError` will be raised if they are used.


Changes from 1.x series to 2.0
==============================

- Added support for the new iterator object in NumPy 1.6 and later.

  This allows for better performance with operations that implies
  broadcast operations, fortran-ordered or non-native byte orderings.
  Performance for other scenarios is preserved (except for very small
  arrays).

- Division in numexpr is consistent now with Python/NumPy.  Fixes #22
  and #58.

- Constants like "2." or "2.0" must be evaluated as float, not
  integer.  Fixes #59.

- `evaluate()` function has received a new parameter `out` for storing
  the result in already allocated arrays.  This is very useful when
  dealing with large arrays, and a allocating new space for keeping
  the result is not acceptable.  Closes #56.

- Maximum number of threads raised from 256 to 4096.  Machines with a
  higher number of cores will still be able to import numexpr, but
  limited to 4096 (which is an absurdly high number already).
2014-01-21 13:26:52 +00:00
wiz
32e59c4932 Update to 0.7.4.1:
0.7.4.1

These are the release notes for SymPy 0.7.4.1, which was released
on December 15, 2013.

This version of SymPy has been tested on Python 2.6, 2.7, 3.2, 3.3,
and PyPy.

This was a small bugfix release to fix an import issue on Windows
(https://github.com/sympy/sympy/issues/2681).

0.7.4

These are the release notes for SymPy 0.7.4, which was released on
December 9, 2013.

This version of SymPy has been tested on Python 2.6, 2.7, 3.2, 3.3,
and PyPy.
Major changes
Python 3

SymPy now uses a single code-base for Python 2 and Python 3.
Geometric Algebra

The internal representation of a multivector has been changes to
more fully use the inherent capabilities of SymPy. A multivector
is now represented by a linear combination of real commutative
SymPy expressions and a collection of non-commutative SymPy symbols.
Each non-commutative symbol represents a base in the geometric
algebra of an N-dimensional vector space. The total number of
non-commutative bases is 2**N - 1 (N of which are a basis for the
vector space) which when including scalars give a dimension for
the geometric algebra of 2**N. The different products of geometric
algebra are implemented as functions that take pairs of bases
symbols and return a multivector for each pair of bases.

The LaTeX printing module for multivectors has been rewritten to
simply extend the existing sympy LaTeX printing module and the
sympy LaTeX module is now used to print the bases coefficients in
the multivector representation instead of writing an entire LaTeX
printing module from scratch.

The main change in the geometric algebra module from the viewpoint
of the user is the inteface for the gradient operator and the
implementation of vector manifolds:

The gradient operator is now implemented as a special vector (the
user can name it grad if they wish) so the if F is a multivector
field all the operations of grad on F can be written grad*F, F*grad,
grad^F, F^grad, grad|F, F|grad, grad<F, F<grad, grad>F, and F>grad
where **, ^, |, <, and > are the geometric product, outer product,
inner product, left contraction, and right contraction, respectively.

The vector manifold is defined as a parametric vector field in an
embedding vector space. For example a surface in a 3-dimensional
space would be a vector field as a function of two parameters. Then
multivector fields can be defined on the manifold. The operations
available to be performed on these fields are directional derivative,
gradient, and projection. The weak point of the current manifold
representation is that all fields on the manifold are represented
in terms of the bases of the embedding vector space.
Classical Cryptography

Implements:

    Affine ciphers
    Vigenere ciphers
    Bifid ciphers
    Hill ciphers
    RSA and "kid RSA"
    linear feedback shift registers.

Common Subexpression Elimination (CSE)

Major changes have been done in cse internals resulting in a big
speedup for larger expressions. Some changes reflect on the user
side:

    Adds and Muls are now recursively matched ([w*x, w*x*y, w*x*y*z]
    ǹow turns into [(x0, w*x), (x1, x0*y)], [x0, x1, x1*z])
    CSE is now not performed on the non-commutative parts of
    multiplications (it avoids some bugs).
    Pre and post optimizations are not performed by default anymore.
    The optimizations parameter still exists and optimizations='basic'
    can be used to apply previous default optimizations. These
    optimizations could really slow down cse on larger expressions
    and are no guarantee of better results.
    An order parameter has been introduced to control whether Adds
    and Muls terms are ordered independently of hashing implementation.
    The default order='canonical' will independently order the
    terms. order='none' will not do any ordering (hashes order is
    used) and will represent a major performance improvement for
    really huge expressions.
    In general, the output of cse will be slightly different from
    the previous implementation.

Diophantine Equation Module

This is a new addition to SymPy as a result of a GSoC project. With
the current release, following five types of equations are supported.

    Linear Diophantine equation, a_{1}x_{1} + a_{2}x_{2} + . . .
    + a_{n}x_{n} = b
    General binary quadratic equation, ax^2 + bxy + cy^2 + dx + ey
    + f = 0
    Homogeneous ternary quadratic equation, ax^2 + by^2 + cz^2 +
    dxy + eyz + fzx = 0
    Extended Pythagorean equation, a_{1}x_{1}^2 + a_{2}x_{2}^2 +
    . . . + a_{n}x_{n}^2 = a_{n+1}x_{n+1}^2
    General sum of squares, x_{1}^2 + x_{2}^2 + . . . + x_{n}^2 =
    k

Unification of Sum, Product, and Integral classes

A new superclass has been introduced to unify the treatments of
indexed expressions, such as Sum, Product, and Integral. This
enforced common behavior accross the objects, and provides more
robust support for a number of operations. For example, Sums and
Integrals can now be factored or expanded. S.subs() can be used to
substitute for expressions inside a Sum/Integral/Product that are
independent of the index variables, including unknown functions,
for instance, Integral(f(x), (x, 1, 3)).subs(f(x), x**2), while
Sum.change_index() or Integral.transform are now used for other
changes of summation or integration variables. Support for finite
and infinite sequence products has also been restored.

In addition there were a number of fixes to the evaluation of nested
sums and sums involving Kronecker delta functions, see issue 3924
and issue 3987.
Series

    The Order object used to represent the growth of a function in
    series expansions as a variable tend to zero can now also
    represent growth as a variable tend to infinity. This also
    fixed a number of issues with limits. See issue 234 and issue
    2670.

    Division by Order is disallowed, see issue 1756.

    Addition of Order object is now commutative, see issue 1180.

Physics

    Initial work on gamma matrices, depending on the tensor module.

Logic

    New objects true and false which are Basic versions of the
    Python builtins True and False.

Other

    Arbitrary comparisons between expressions (like x < y) no longer
    have a boolean truth value. This means code like if x < y or
    sorted(exprs) will raise TypeError if x < y is symbolic. A
    typical fix of the former is if (x < y) is True (assuming the
    if block should be skipped if x < y is symbolic), and of the
    latter is sorted(exprs, key=default_sort_key), which will order
    the expressions in an arbitrary, but consistent way, even across
    platforms and Python versions. See issue 2832.

    Arbitrary comparisons between complex numbers (for example, I
    > 1) now raise TypeError as well (see PR #2510).

    minpoly now works with algebraic functions, like minpoly(sqrt(x)
    + sqrt(x + 1), y).

    exp can now act on any matrix, even those which are not
    diagonalizable. It is also more comfortable to call it, exp(m)
    instead of just m.exp(), as was required previously.

    sympify now has an option evaluate=False that will not
    automatically simplify expressions like x+x.

    Deep processing of cancel and simplify functions. simplify is
    now recursive through the expression tree. See e.g. issue 3923.

    Improved the modularity of the codebase for potential subclasses,
    see issue 3652.

    The SymPy cheatsheet was cleaned up.

Backwards compatibility breaks and deprecations

    Removed deprecated Real class and is_Real property of Basic,
    see issue 1721.
    Removed deprecated 'each_char' option for symbols(), see issue
    1919.
    The viewer="StringIO" option to preview() has been deprecated.
    Use viewer="BytesIO" instead. See issue 3984.
    TransformationSet has been renamed to ImageSet. Added public
    facing imageset function.


0.7.3

These are the release notes for SymPy 0.7.3, which was released on
July 13, 2013. It can be downloaded from
https://github.com/sympy/sympy/releases/tag/sympy-0.7.3.

This version of SymPy has been tested on Python 2.5, 2.6, 2.7, 3.2,
3.3, and PyPy.
Major changes
Integration

This release includes Risch integration algorithm from Aaron Meurer's
2010 Google Summer of Code project. This makes integrate much more
powerful and much faster for the supported functions. The algorithm
is called automatically from integrate(). For now, only transcendental
elementary functions containing exp or log are supported. To access
the algorithm directly, use integrate(expr, x, risch=True). The
algorithm has the ability to prove that integrals are nonelementary.
To determine if a function is nonelementary, integrate using
risch=True. If the resulting Integral class is an instance of
NonElementaryIntegral, then it is not elementary (otherwise, that
part of the algorithm has just not been implemented yet).

Here is an example integral that could not be computed before:

>>> f = x*(x + 1)*(2*x*(x - (2*x**3 + 2*x**2 + x + 1)*log(x +
1))*exp(3*x**2) + (x**2*exp(2*x**2) - log(x + 1)**2)**2)/((x +
1)*log(x + 1)**2 - (x**3 + x**2)*exp(2*x**2))**2
>>> integrate(f, x)
x + x*exp(x**2)*log(x + 1)/(x**2*exp(2*x**2) - log(x + 1)**2) -
log(x + 1) - log(exp(x**2) - log(x + 1)/x)/2 + log(exp(x**2) +
log(x + 1)/x)/2

ODE

    Built basic infrastructure of the PDE module (PR #1970)

Theano Interaction

SymPy expressions can now be translated into Theano expressions
for numeric evaluation. This includes most standard scalar operations
(e.g. sin, exp, gamma, but not beta or MeijerG) and matrices. This
system generally outperforms lambdify and autowrap but does require
Theano to be installed.
Matrix Expressions
Assumptions

Matrix expressions now support inference using the new assumptions
system. New predicates include invertible, symmetric, positive_definite,
orthogonal, ....
New Operators

New operators include Adjoint, HadamardProduct, Determinant,
MatrixSlice, DFT. Also, preliminary support exists for factorizations
like SVD and LU.
Context manager for New Assumptions

Added the with assuming(*facts) context manager for new assumptions.
See blogpost
Backwards compatibility breaks and deprecations

    This is the last version of SymPy to support Python 2.5.

    The IPython extension, i.e., %load_ext
    sympy.interactive.ipythonprinting is deprecated. Use from sympy
    import init_printing; init_printing() instead. See issue 3914.

    The viewer='file' option to preview without a file name is
    deprecated. Use filename='name' in addition to viewer='file'.
    See issue 3919.

    The deprecated syntax Symbol('x', dummy=True), which had been
    deprecated since 0.7.0, has been removed. Use Dummy('x') or
    symbols('x', cls=Dummy) instead. See issue 3378.

    The deprecated Expr methods as_coeff_terms and as_coeff_factors,
    which have been deprecated in favor of as_coeff_mul and
    as_coeff_add, respectively (see also as_coeff_Mul and as_coeff_Add),
    were removed. The methods had been deprecated since SymPy 0.7.0.
    See issue 3377.

    The spherical harmonics have been completely rewritten. See PR
    #1510.

Minor changes
Solvers

    Added enhancements and improved the methods of solving exact
    differential equation ((PR #1955)) and ((PR #1823))
    Support for differential equations with linear coefficients
    and those that can be reduced to separable and linear form ((PR
    #1940), (PR #1864), (PR #1883))
    Support for first order linear general PDE's with constant
    coefficients ((PR #2109))
    Return all found independent solutions for underdetermined
    systems.
    Handle recursive problems for which y(0) = 0.
    Handle matrix equations.

Integration

    integrate will split out integrals into Piecewise expressions
    when conditions must hold for the answer to be true. For example,
    integrate(x**n, x) now gives Piecewise((log(x), Eq(n, -1),
    (x**(n + 1)/(n + 1), True)) (previously it just gave x**(n +
    1)/(n + 1))
    Calculate Gauss-Legendre and Gauss-Laguerre points and weights
    (PR #1497)
    Various new error and inverse error functions (PR #1703)
    Use in heurisch for more symmetric and nicer results
    Gruntz for expintegrals and all new erf*
    Li, li logarithmic integrals (PR #1708)
    Integration of li/Li by heurisch (PR #1712)
    elliptic integrals, complete and incomplete
    Integration of complete elliptic integrals by meijerg
    Integration of Piecewise with symbolic conditions.
    Fixed many wrong results of DiracDelta integrals.

Logic

    Addition of SOPform and POSform functions to sympy.logic to
    generate boolean expressions from truth tables.
    Addition of simplify_logic function and enabling simplify() to
    reduce logic expressions to their simplest forms.
    Addition of bool_equals function to check equality of boolean
    expressions and return a mapping of variables from one expr to
    other that leads to the equality.
    Addition of disjunctive normal form methods - to_dnf, is_dnf

Others

    gmpy version 2 is now supported
    Added is_algebraic_expr() method (PR #2176)
    Many improvements to the handling of noncommutative symbols:
	Better support in simplification functions, e.g. factor,
	trigsimp
	Better integration with Order()
	Better pattern matching
    Improved pattern matching including matching the identity.
    normalizes Jacobi polynomials
    Quadrature rules for orthogonal polynomials in arbitrary
    precision (hermite, laguerre, legendre, gen_legendre, jacobi)
    summation of harmonic numbers
    Many improvements of the polygamma functions
    evaluation at special arguments
    Connections to harmonic numbers
    structured full partial fraction decomposition (mainly interesting
    for developers)
    besselsimp improvements
    Karr summation convention
    New spherical harmonics
    improved minimal_polynomial using composition of algebraic
    numbers (PR #2038)
    faster integer polynomial factorization (PR #2148)
    Euler-Descartes method for quartic equations (PR #1947)
    algebraic operations on tensors (PR #1700)
    tensor canonicalization (PR #1644)
    Handle the simplification of summations and products over a
    KroneckerDelta.
    Implemented LaTeX printing of DiracDelta, Heaviside, KroneckerDelta
    and LeviCivita, also many Matrix expressions.
    Improved LaTeX printing of fractions, Mul in general.
    IPython integration and printing issues have been ironed out.
    Stats now supports discrete distributions (e.g. Poisson) by
    relying on Summation objects
    Added DOT printing for visualization of expression trees
    Added information about solvability and nilpotency of named
    groups.
2014-01-21 08:38:04 +00:00
wiz
ab663550bf Update to 1.0.6: changes not found, but this version works with python-3. 2014-01-20 20:26:39 +00:00
wiz
5d1909ba0c Add math to CATEGORIES. 2014-01-20 12:51:38 +00:00
wiz
6d9663135f + py-ephem3. 2014-01-20 12:50:46 +00:00
wiz
21ea1010ee Import py33-ephem-3.7.5.1 as math/py-ephem3.
PyEphem provides scientific-grade astronomical computations for the Python
programming language. Given a date and location on the Earth's surface, it can
compute the positions of the Sun and Moon, of the planets and their moons, and
of any asteroids, comets, or earth satellites whose orbital elements the user
can provide. Additional functions are provided to compute the angular
separation between two objects in the sky, to determine the constellation in
which an object lies, and to find the times at which an object rises, transits,
and sets on a particular day.
2014-01-20 12:50:31 +00:00
wiz
27cb8f02a3 Update to 3.7.5.1, changed not found.
Mark as not for python-3.x.
2014-01-20 12:47:40 +00:00
wiz
936f44710a Update to 2.3.0:
Release 2.3.0
=============

New Features
------------

:mod:`rpy2.rinterface`:

- C-level API, allowing other C-level modules to make use of utilities
  without going through the Python level. The exact definition of
  the API is not yet fixed. For now there is
  PyRinteractive_IsInitialized() to assess whether R was initialized
  (through :mod:`rpy2.rinterface` or not).

- C-module _rpy_device, allowing one to implement R graphical devices
  in Python [(very) experimental]

- Tracking of R objects kept protected from garbage collection by rpy2
  is now possible.

- New method :meth:`Sexp.rid` to return the identifier of the R object
  represented by a Python/rpy2 object

:mod:`rpy2.rinteractive`:

- Dynamic build of Python docstrings out of the R manual pages

:mod:`rpy2.robjects.help`:

- Build dynamic help

:mod:`rpy2.robjects.packages:

- Build anonymous R packages from strings

- When using :func:`importr`, the datasets are added as an attribute
  :attr:`data`, itself an instance of a new class :class:`PackageData`.
  It no longer possible to access datasets are regular objects from
  a code package (because of changes in R), and the new system is
  more robust against quirks.

Changes
-------

:mod:`rpy2.rinterface`:

- :attr:`SexpClosure.env` to replace the method `closureenv`.


Release 2.2.6
=============

Bugs fixed
----------

- Newest R-2.15 and ggplot2 0.9 broke the ggplot2 interaface
  in :mod:`rpy2.robjects.lib.ggplot2`


Release 2.2.5
=============

Bugs fixed
----------

- install process: Library location for some of the R installations

- should compile on win32 (thanks to a patch from Evgeny Cherkashin),
   a work to a limited extend


Release 2.2.4
=============

Bugs fixed
----------

- Memory leak when creating R vectors from Python (issue #82)

Release 2.2.3
=============

Bugs fixed
----------

- Dynamic construction of S4 classes was looking for R help as 'class.<class>'
  rather than '<class>-class'

- The cleanup of temporary directories created by R was not happening if
  the Python process terminated without calline :func:`rpy2.rinterface.endr()`
  (issue #68, and proof-of-principle fix by chrish42)


Release 2.2.2
=============

Bugs fixed
----------

- With the robjects layer, repr() on a list containing non-vector elements
  was failing

Release 2.2.1
=============

Bugs fixed
----------

- MANIFEST.in was missing from MANIFEST.in, required with Python 3


Release 2.2.0
=============

New Features
------------

- Support for Python 3, and for some of its features ported to Python 2.7

:mod:`rpy2.robjects`:

- :meth:`Environment.keys` to list the keys

- classes :class:`robjects.vectors.POSIXlt` and
  :class:`robjects.vectors.POSIXlt` to represent vectors of R
  dates/time

- :func:`packages.get_packagepath` to get the path to an R package

- module :mod:`rpy2.robjects.help` to expose the R help system to Python

- Metaclass utilities in :mod:`rpy2.robjects.methods`, allowing to reflect
  automatically R S4 classes as Python classes.

- :meth:`rpy2.robjects.vectors.FactorVector.iter_labels` to iterate over the labels

- :class:`rpy2.robjects.vectors.ListVector` to represent R lists.

- Constructor for :class:`rpy2.robjects.vectors.ListVector` and
  :class:`rpy2.robjects.vectors.DataFrame` accept any iterable at the condition
  that the elements iterated through also valid subscripts for it (e.g., given
  an iterable v, the following is valid:

  .. code-block:: python

     x[k] for x in v


:mod:`rpy2.rinterface`:

- :data:`NA_Complex` and :class:`NAComplexType` for missing complex values.

- :class:`SexpExtPtr` to represent R objects of type EXTPTR (external pointers).

- :func:`rpy2.rinterface.parse` to parse a string a R code

- :func:`rpy2.rinterface.rternalise` to wrap Python function as :class:`SexpClosure` that can
  be called by R just as it was a function of its own.

- :class:`rpy2.rinterface.RNULLType` for R's C-level NULL value and
  :class:`rpy2.rinterface.UnboundValueType` for R's C-level R_UnboundValue
  (both singletons).

- :meth:`rinterface.SexpVector.index`, of similar behaviour to :meth:`list.index`.

- :meth:`rpy2.rinterface.Sexp.list_attrs` to list the names of all R attributes
  for a given object.

- :class:`rpy2.rinterface.ByteSexpVector` to represent R 'raw' vectors.

- constant `R_LEN_T_MAX` to store what is the maximum length for a vector in R.

- tuple `R_VERSION_BUILD` to store the version of R rpy2 was built against

- getter :attr:`Sexp.rclass` to return the R class associated with an object

:mod:`rpy2.rlike`:

- :class:`container.OrdDict` get proper methods :meth:`keys` and `get`

:mod:`rpy2.interactive`:

- A new sub-package to provide utilities for interactive work, either for
  handling R interactive events or use Python for interactive programming
  (as often done with the R console)

Changes
-------

:mod:`rpy2.robjects`:

- NA_bool, NA_real, NA_integer, NA_character and NA_complex are now
  deprecated (and removed).
  NA_Logical, NA_Real, NA_Integer, NA_Character, NA_Complex should be used.

- :class:`rpy2.robjects.packages.Package` now inherits from :class:`types.ModuleType`

- classes representing R vector also inherit their type-specific
  rinterface-level counterpart.

- Importing the :class:`rpy2.robjects.numpy2ri` is no longer sufficient
  to active the conversion. Explicit activation is now needed; the function
  `activate` can do that.


:mod:`rpy2.rinterface`:

- :class:`IntSexpVector`, :class:`FloatSexpVector`,
  :class:`StrSexpVector`, :class:`BoolSexpVector`, :class:`ComplexSexpVector`
  are now defined at the C level, improving performances
  and memory footprint whenever a lot of instances are created.

Bugs fixed
----------

- Better and more explicit detection system for needed libraries when
  compiling rpy2 (ported to release 2.1.6)

- Long-standing issue with readline fixed (issue #10)


Release 2.1.9
=============

Bugs fixed
----------

- The R class in rpy2.robjects is now truly a singleton

- When using numpy 1.5 and Python >= 2.7, the exposed buffer for R numerical (double)
  vectors or arrays was wrong.


Release 2.1.8
=============

Bugs fixed
----------

- Fixed issue with R arrays with more than 2 dimensions and numpy arrays
  (issue #47 - backported from the branch 2.2.x).


Release 2.1.7
=============

Bugs fixed
----------

- More fixes for the automated detection of include and libraries at build time.


Release 2.1.6
=============

Bugs fixed
----------

- Further fixes in the automatic detection of includes and libraries
  needed to compile rpy2 against R. The detection code has
  been refactored (backport from the 2.2.x branch)


Release 2.1.5
=============

Bugs fixed
----------

- fixes the automatic detection of R_HOME/lib during building/compiling
  when R_HOME/lib is not in lib/ (issue #54)


Release 2.1.4
=============

New features
------------

- :mod:`rpy2.robjects.lib.ggplot2` now has the functions :func:`limits`,
  :func:`xlim`, :func:`ylim` exposed (patch contributed anonymously)

Bugs fixed
----------

- Install script when the BLAS library used by R is specified as a library
  file (patch by Michael Kuhn)
2014-01-19 22:50:43 +00:00
asau
4fa6c28ccf malloc.h raises error on FreeBSD intentionally, use stdlib.h instead. 2014-01-16 18:09:46 +00:00
wiz
7cfcd21e9e Convert to use versioned_dependencies.mk. 2014-01-16 10:41:53 +00:00
drochner
de146d2357 update to 2.12.4.13
changes:
-additions to builtins and library
-minor fixes
2014-01-15 16:23:31 +00:00
jperkin
bc99af1d4e Exclude 64-bit system library paths on SunOS. 2014-01-13 11:25:54 +00:00
adam
41e677f366 Revbump after updating tcl/tk. 2014-01-11 14:42:00 +00:00
jperkin
b514201ebd Needs zlib. Provide dummy Minisat::memUsedPeak(). 2014-01-09 14:38:33 +00:00
jperkin
3e18cff4db Do not include system library paths in R_LD_LIBRARY_PATH, picking up system
libraries when previously preferring libraries from pkgsrc causes conflicts.

Fixes build on SmartOS where the platform /usr/lib/libgcc_s.so.1 for legacy
applications conflicts with GCC libraries from pkgsrc.
2014-01-09 13:52:41 +00:00
jperkin
3b1e0a5467 Do not build statically on SunOS. 2014-01-09 12:07:42 +00:00
richard
2c2da6499b add missing dependencies to build when option x11 is present 2014-01-05 10:57:11 +00:00
wiz
20d1ed99ed Update to 1.12.9:
Gnumeric 1.12.9

Jean
	* Implement double click for graph sheets. [#712216]

Morten:
	* Minor improvement to history dialog.
	* Fix drop-down sizing (gtk+ regression).  [#710749]
	* Improve accuracy of R.QCAUCHY.
	* Acquire more special function test cases.
	* Improve accuracy of R.QGAMMA and thus R.QCHISQ.
	* Improve accuracy of R.QBETA, R.QF, R.QTUKEY, R.QSNORM, and R.QST.
	* Improve accuracy of COMBIN, PERMUT, POCHHAMMER, FACT, GAMMA.
	* Improve accuracy of bessel functions with large non-integer alpha.
	* Improve accuracy of ACOTH.
	* Fix fuzzed file problems.  [#708091] [#712662] [#712685] [#712700]
	  [#712708] [#712772] [#712788] [#712731] [#715003]
	* Restore sheet reordering by drag.
	* Fix BETA on win32.
	* Fix win32 registry initialization.
	* Fix win32 gdk-pixbuf install heisen-crash.
	* Incorporate new tests from crlibm.
	* New functions SINPI and COSPI.
	* Improve accuracy of SIN/COS/TAN on win32.
	* Work around GTK+ ABI break.  [Redhat #1033827]

Xabier Rodríguez Calvar:
	* Fix dialog button order. [#710378]
2014-01-02 18:50:03 +00:00
wiz
e03c03b6dc Recursive PKGREVISION bump for libgcrypt-1.6.0 shlib major bump. 2014-01-01 11:52:02 +00:00
wiz
5889401244 Remove packages that were either BROKEN for more than a year or
BROKEN and explicitly scheduled to be removed after 2013Q4.
2013-12-31 17:08:08 +00:00
wiz
d33dfdeb7c Reset maintainer for resigned developers. 2013-12-23 11:57:02 +00:00
asau
a711a389da FreeBSD 9 lacks the same set of functions as NetBSD 6. 2013-12-15 19:58:11 +00:00
joerg
f2d4303a3e The Clang 3.4RCs started to use slightly more memory when compiling
Calculator.cpp, but it was enough to push it over 2GB. So disable
optimisation for now.
2013-12-15 19:41:23 +00:00
bad
0f337cd1d7 Update pandas to 0.12.0.
This is a major release from 0.11.0 and includes several new features
and enhancements along with a large number of bug fixes.

Highlites include a consistent I/O API naming scheme, routines to read
html, write multi-indexes to csv files, read & write STATA data files,
read & write JSON format files, Python 3 support for HDFStore, filtering
of groupby expressions via filter, and a revamped replace routine that
accepts regular expressions.

For detailed changes see:
http://pandas.pydata.org/pandas-docs/stable/whatsnew.html
2013-12-10 13:00:30 +00:00
obache
9b57b4605a Fix/Update DEPENDS paterns for perl CORE modules, with some trivial fixes.
Bump PKGREVISION for runtime dependency pattern changed packages.
2013-12-09 14:17:41 +00:00
dholland
48c888fd85 Create wildcard NAMESPACE file; fixes build with latest R 2013-12-07 19:32:48 +00:00
joerg
6a0f1f2a22 Fix build. 2013-12-06 21:24:59 +00:00
obache
e854d59d80 Update ruby-spreadsheet to 0.9.6.
### 0.9.6 / 02.12.2013

Author: Malcolm Blyth <trashbat@co.ck>
Date:   Mon Dec 2 11:44:25 2013 +0000

* Fixed issue whereby object author being null caused a gross failure.
* Now returns object author as an empty string
2013-12-04 14:00:28 +00:00
bsiegert
fe9d3b13a4 Fix build on MirBSD. 2013-12-03 21:47:36 +00:00
joerg
0619356b1b Fix extraction of rpath options from Fortran linker. 2013-11-29 12:59:31 +00:00
obache
9dc9ebde62 Update ruby-spreadsheet to 0.9.5.
### 0.9.5 / 20.11.2013

Author: Malcolm Blyth <trashbat@co.ck>
Date:   Tue Nov 19 15:14:31 2013 +0000

* Bumped revision
* Fixed author stringname error (damn this 1 based counting)
* Updating integration test to check for comments contained within the cells.
* Checking also for multiple comments in a sheet
2013-11-21 07:57:10 +00:00
adam
81059da3bd Revbump after updating devel/boost-libs 2013-11-20 20:04:35 +00:00
obache
be6a7bf66d recursive bump from boost-lib shlib major bump. 2013-11-20 13:23:41 +00:00
asau
69114395fc + ipopt 2013-11-14 15:04:53 +00:00
asau
1a8650f97c Import IPOPT version 3.11.5 as math/ipopt
Ipopt (Interior Point OPTimizer, pronounced eye-pea-Opt)
is a software package for large-scale nonlinear optimization.
It is designed to find (local) solutions of mathematical
optimization problems of the form

min_{x in R^n} f(x)

s.t.  g_L <= g(x) <= g_U
      x_L <=  x   <= x_U

where f(x): R^n --> R is the objective function,
and g(x): R^n --> R^m are the constraint functions.
The vectors g_L and g_U denote the lower and upper bounds on the
constraints, and the vectors x_L and x_U are the bounds on the
variables x. The functions f(x) and g(x) can be nonlinear and
nonconvex, but should be twice continuously differentiable.
Note that equality constraints can be formulated in the above
formulation by setting the corresponding components of g_L and
g_U to the same value.

Ipopt is part of the  COIN-OR Initiative.
2013-11-14 15:04:12 +00:00
obache
b1431c4c9d Update ruby-spreadsheet to 0.9.4.
### 0.9.4 / 12.11.2013

* Updated Manifest.txt

### 0.9.3 / 12.11.2013

commit e15d8b45d7587f7ab78c7b7768de720de9961341 (refs/remotes/gguerrero/master)
Author: Guillermo Guerrero <g.guerrero.bus@gmail.com>
Date:   Tue Nov 12 11:50:30 2013 +0100

* Refactor update_format for cloning format objects
* Added lib/spreadsheet/note.rb to Manifest.txt file
* 'update_format' methods now receive a hash of key => values to update

Author: Przemysław Ciąćka <przemyslaw.ciacka@gmail.com>
Date:   Tue Nov 12 00:07:57 2013 +0100

* Added lib/spreadsheet/note.rb to Manifest.txt file
2013-11-13 01:30:50 +00:00
obache
c9ab91bfe5 Update ruby-spreadsheet to 0.9.2.
### 0.9.2 / 11.11.2013

commit e70dc0dbbc966ce312b45b0d44d0c3b1dc10aad6
Author: Malcolm Blyth <trashbat@co.ck>
Date:   Mon Nov 11 15:53:58 2013 +0000

*Corrected compressed string formatting - *U (UTF-8) should have been *S (16-bit
 string)
*Completed addition of notes hash to worksheet
*Bumped revision
*Updated reader and note
 Note class no longer extends string for simplicity and debug of class (pp now
 works a bit more easily)
 Reader has had loads of changes (still WIP) to allow objects of class
 Note and NoteObject to be created and combined in the postread_worksheet function
*Adding noteObject to deal with the Object (and ultimately text comment field)
 created by excel's madness
2013-11-12 11:43:23 +00:00
joerg
83d7ad1bdd Friends may not add default arguments. 2013-11-08 21:15:02 +00:00
markd
74bd62e0f3 Update to KDE SC 4.11.3
bugfixes, many new features, improved stability and performance.
2013-11-07 11:53:59 +00:00