Commit graph

36 commits

Author SHA1 Message Date
agc
286ea2536c Add SHA512 digests for distfiles for math category
Problems found locating distfiles:
	Package dfftpack: missing distfile dfftpack-20001209.tar.gz
	Package eispack: missing distfile eispack-20001130.tar.gz
	Package fftpack: missing distfile fftpack-20001130.tar.gz
	Package linpack: missing distfile linpack-20010510.tar.gz
	Package minpack: missing distfile minpack-20001130.tar.gz
	Package odepack: missing distfile odepack-20001130.tar.gz
	Package py-networkx: missing distfile networkx-1.10.tar.gz
	Package py-sympy: missing distfile sympy-0.7.6.1.tar.gz
	Package quadpack: missing distfile quadpack-20001130.tar.gz

Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden).  All existing
SHA1 digests retained for now as an audit trail.
2015-11-03 23:33:26 +00:00
wiz
490710b08f Update to 3.1.1 and fix build with py-cython-0.20+.
We are happy to announce PyTables 3.1.1.

This is a bug-fix release that addresses a critical bug that make PyTables
unusable on some platforms.


What's new
==========

- Fixed a critical bug that caused an exception at import time.
  The error was triggered when a bug in long-double detection is detected
  in the HDF5 library (see :issue:`275`) and numpy_ does not expose
  `float96` or `float128`. Closes :issue:`344`.
- The internal Blosc_ library has been updated to version 1.3.5.
  This fixes a false buffer overrun condition that made c-blosc to fail,
  even if the problem was not real.

As always, a large amount of bugs have been addressed and squashed as well.
2014-09-20 17:56:36 +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
obache
a170ca136b recursive bump from hdf5 shlib major bump. 2013-09-01 12:14:06 +00:00
markd
be777b7739 If not building with lzo option give bogus path for lzo otherwise it will
be detected if its installed and build will fail.
2013-08-13 21:24:37 +00:00
fhajny
26ca11ce10 Update py-pytables to 2.4.0.
Major changes in 2.4:
- Improved HDF5 error logging management.
- Added support for the float16 data type.
- Leaf nodes now have attributes for retrieving the size of data in memory
  and on disk.
- Configurable maximum number of threads for Blosc and Numexpr.
- ndim (read-only) attribute added to Leaf, Atom and Col objects.
- Added read support for variable length string attributes.

Full changelog for 2.4.0, see:

  http://pytables.github.io/release-notes/RELEASE_NOTES_v2.4.x.html

Major changes in 2.3:

- Integrated functionality from PyTablesPro (re-licensed under a BSD license).
- OPSI is a powerful and innovative indexing engine allowing PyTables
  to perform fast queries on arbitrarily large tables.
- A fine-tuned LRU cache for both metadata (nodes) and regular data.

Full changelog for 2.3.x, see:

  http://pytables.github.io/release-notes/RELEASE_NOTES_v2.3.x.html
2013-05-14 09:57:58 +00:00
wiz
79434c2ac7 Update for python25 removal. 2012-10-03 22:14:00 +00:00
asau
b63c74fdfd "user-destdir" is default these days 2012-09-11 23:04:15 +00:00
dholland
523eb32ad6 This blows up on python25 and it doesn't really seem like it's worth
trying to figure out what's wrong, so just mark it INCOMPATIBLE.
2012-06-16 05:40:05 +00:00
wiz
aada88e659 Remove python24 and all traces of it from pkgsrc.
Remove devel/py-ctypes (only needed by and supporting python24).
Remove PYTHON_VERSIONS_ACCEPTED and PYTHON_VERSIONS_INCOMPATIBLE
lines that just mirror defaults now.
Miscellaneous cleanup while editing all these files.
2012-04-08 19:08:44 +00:00
alnsn
ea99f0cc88 Revision dump after devel/hdf5 update. 2011-10-07 10:45:16 +00:00
wiz
f09b8dbca6 Let's assume for now that everything that worked with python-2.6 also
works with python-2.7.
2011-02-25 09:47:18 +00:00
drochner
1129688a9c update to 2.2.1
changes:
-misc fixes and feature additions
-space saving / time improvements
-needs py-cython-0.13
2010-11-24 18:06:01 +00:00
joerg
74122dc4a0 py-cython dependency doesn't support 2.4. 2010-07-17 18:13:08 +00:00
drochner
2b92df22ae update to 2.2
changes:
-new compressor called Blosc (speed-up)
-A new `tables.Expr` module (based on Numexpr) that allows to do
 persistent, on-disk computations on many algebraic operations.
-Support for HDF5 hard links, soft links and automatic external links
-Suport for 'fancy' indexing
-bugfixes
2010-07-16 12:17:59 +00:00
drochner
b7a8a22980 use PYVERSSUFFIX, fixes Python!=2.5 2009-12-16 16:59:48 +00:00
drochner
dbd8ae2390 update to 2.1.2
this is a major update, too much to list here
2009-11-15 15:56:55 +00:00
joerg
62d1ba2bac Remove @dirrm entries from PLISTs 2009-06-14 18:03:28 +00:00
joerg
ba171a91fa Add DESTDIR support. 2008-06-12 02:14:13 +00:00
joerg
a77e7015fe Update PYTHON_VERSIONS_COMPATIBLE
- assume that Python 2.4 and 2.5 are compatible and allow checking for
fallout.
- remove PYTHON_VERSIONS_COMPATIBLE that are obsoleted by the 2.3+
default. Modify the others to deal with the removals.
2008-04-25 20:39:06 +00:00
drochner
0e17b5081c Merge archivers/ucl and devel/ucl into one. This was an accident.
Pointed out by wiz.
2007-04-10 15:58:34 +00:00
drochner
44144cdb0e update to 1.3.3
changes:
-almost complete support for numpy objects
-better hdf5 support
-bugfixes (one important about file flushing)
2006-10-17 14:32:32 +00:00
joerg
8380d41cf5 Needs Python 2.3+ 2006-06-06 15:35:45 +00:00
jlam
9c8b5ede43 Point MAINTAINER to pkgsrc-users@NetBSD.org in the case where no
developer is officially maintaining the package.

The rationale for changing this from "tech-pkg" to "pkgsrc-users" is
that it implies that any user can try to maintain the package (by
submitting patches to the mailing list).  Since the folks most likely
to care about the package are the folks that want to use it or are
already using it, this would leverage the energy of users who aren't
developers.
2006-03-04 21:28:51 +00:00
drochner
41bab092fb optionally support lzo and ucl for internal compression,
pull in buildlink files for all compression libs used
2006-02-15 16:56:09 +00:00
drochner
d3fcbbb4c9 update to 1.2.1
This is a major version release.
changes include:
-Undo/Redo
-support for objects (and indexes!) with more than 2**31 rows
-new datatypes
-improved HDF5 support
-compression support
2006-02-10 20:05:11 +00:00
joerg
5911def816 Recursive revision bump / recommended bump for gettext ABI change. 2006-02-05 23:08:03 +00:00
rillig
b71a1d488b Fixed pkglint warnings. The warnings are mostly quoting issues, for
example MAKE_ENV+=FOO=${BAR} is changed to MAKE_ENV+=FOO=${BAR:Q}. Some
other changes are outlined in

    http://mail-index.netbsd.org/tech-pkg/2005/12/02/0034.html
2005-12-05 20:49:47 +00:00
tv
f816d81489 Remove USE_BUILDLINK3 and NO_BUILDLINK; these are no longer used. 2005-04-11 21:44:48 +00:00
agc
1e46c076aa Add RMD160 digests in addition to SHA1 ones. 2005-02-23 12:06:53 +00:00
markd
da4fe312bc Update py-pytables to 0.9.1
PyTables 0.9.1:
This release is mainly a maintenance version. In it, some bugs has been
fixed and a few improvements has been made. One important thing is that
chunk sizes in EArrays has been re-tuned to get much better performance
and compression rations. Besides, it has been tested against the latest
Python 2.4 and all test units seems to pass fine.

PyTables 0.9:
In this release you will find a series of quite exciting new features,
the most important being new indexing capabilities, in-kernel selections,
support for complex datatypes and the possibility to modify values in both
tables and arrays (yeah, finally :).
2005-02-09 12:29:10 +00:00
recht
367eed19fe Build Python with thread support by default and turn the existing
python*-pth packages into meta-packages which will install the non-pth
packages. Bump PKGREVISIONs on the non-pth versions to propagate the
thread change, but leave the *-pth versions untouched to not affect
existing installations.
Sync all PYTHON_VERSIONS_AFFECTED lines in package Makefiles.
2005-01-23 20:41:45 +00:00
tv
c487cb967a Libtool fix for PR pkg/26633, and other issues. Update libtool to 1.5.10
in the process.  (More information on tech-pkg.)

Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and
installing .la files.

Bump PKGREVISION (only) of all packages depending directly on the above
via a buildlink3 include.
2004-10-03 00:12:51 +00:00
recht
4150812b27 add python as category
ok'd a while back at pkgsrcCon by agc and wiz
2004-07-22 09:15:59 +00:00
recht
f9cf005428 Adapt to numarray 1.0 API change. 2004-07-09 15:51:44 +00:00
drochner
ffbf375478 import pytables-0.8, a data manipulation package (frontend to HDF5) 2004-04-22 15:17:08 +00:00