forked from jsonn/pkgsrc
-
Notifications
You must be signed in to change notification settings - Fork 64
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
net/modpcap: fix build on SmartOS #136
Closed
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
jperkin
pushed a commit
that referenced
this pull request
Dec 9, 2013
v0.17.0 - multi_get_columns with only one query (courtesy @christian-blades-cb) - documentation fixes for get and multi_get (issue #136, courtesy @christian-blades-cb) v0.16.0 - New :queue_size option for batch mode (courtesy @vicentllongo) - Cassandra 1.1 support (courtesy @hawknewton)
jperkin
pushed a commit
that referenced
this pull request
Dec 9, 2013
== Ruby-GNOME2 1.2.5: 2013-03-28 Crash bug fix release! === Changes ==== All * Fixes * Fixed crash bugs. [GitHub #138] [Reported by Takuma Nakajima] === Thanks * Takuma Nakajima == Ruby-GNOME2 1.2.4: 2013-03-24 Ruby/WebKitGtk2 addition release! === Changes ==== All * Improvements * Start mswin64 support. (But it is not completed yet.) [GitHub #135] [Patch by usa] ==== Ruby/GLib2 * Improvements * Reduce needless GBoxed object copy. ==== Ruby/GdkPixbuf2 * Fixes * Fix build error by a typo. ==== Ruby/GtkSourceView2 * Improvements * Support auto RPM install on CentOS 6. ==== Ruby/GObjectIntrospection * Improvements * Add method name to arguments validation failure message. * Support specific version loading. ==== Ruby/GTK3 * Improvements * [windows] Add gschemas.compiled. [ruby-talk:406026] [Reported by Regis d'Aubarede] ==== Ruby/WebKitGtk2 * New! [GitHub #136] [Patch by eumario] === Thanks * usa * Regis d'Aubarede * eumario
jperkin
pushed a commit
that referenced
this pull request
Dec 9, 2013
Changelog: ------------------------------------------------------------- mp3splt-gtk version 0.8.2 - fixed important bug in mp3splt-gtk: split using cue file was not splitting the last part - fixed tags encoding issue in mp3splt-gtk: encode in UTF-8 tags if not valid UTF-8 - implemented "prelisten a section to its ending splitpoint" in mp3splt-gtk (feature request #98) - libmp3splt check is now more correct and checks for the exact version of libmp3splt with = instead of >=; will be changed to >= when final version of libmp3splt will be released - now using pkg-config instead of mp3splt.m4 (bug #145) - corrected build files (configure.ac, Makefile.am, ...) and check using 'make distcheck' (bug #147) ------------------------------------------------------------- mp3splt-gtk version 0.8.1 - fixed important bug: application was crashing when pushing the split button without any splitpoint (libmp3splt) - fixed important bug: split by time was in hundreths of seconds instead of seconds ------------------------------------------------------------- mp3splt-gtk version 0.8 - added tags edition from the splitpoints table - closes feature #92 - added cloning features for mass copying of tags using right click on the splitpoints table - enhanced the CUE export to export the tags as REM comments and also the splitpoint names - automatically save & restore splitpoints in '~/.mp3splt-gtk/splitpoints.cue' - better amplitude wave display (wave does not "shake" anymore) - done issue #37 & #138 - nicer GUI for the option 'same output directory as the input file' - fixed amplitude wave to be more precise with ogg vorbis files (libmp3splt) - fixed important bug on mp3splt-gtk 'Queue to player' button - fixed bug #128 - hash symbol in filename breaks the player - done feature #38 - reorder filenames in mp3splt-gtk (description_here_partXX) - fixed bug #133 - updated GPLv2 COPYING file - fixed bug #137 - autogen.sh should run libtoolize before aclocal/automake - fixed bug #143 - be able to add splitpoint at the end from the player - fixed bug #136 - various compilation issues - fixed issue #90 - added back the icons to split preview and play preview in the splitpoints table - added a lot of tooltip and GUI renamings - done feature #91 - amplitude wave now persists in preferences - added one more interpolation level for the amplitude wave (level 6) - more precise wave preview in preferences - fixed bug when detecting the input tags version - output had no tags when the input only had ID3v1 (libmp3splt) - fixed bug #141 - when input file is a symlink and output directory is the one of the input file (libmp3splt) - amplitude more precise with ogg vorbis files (libmp3splt) - fixed bug on mp3 trim silence scan: last frame was skipped (libmp3splt) ------------------------------------------------------------- mp3splt-gtk version 0.7.3 - redesigned the mp3splt-gtk user interface - added option to specify the wave quality in the parameters (for performance reasons) - wave interpolation is now much correct - we use the douglas peucker algorithm instead of the previous one which was stupid - added gray areas where no splitpoints - regarding #3520736 - added seek key shortcuts to the player - #1811400 & #3528001 - heavy refactoring of mp3splt-gtk code - fixed bug: removing TLEN id3v2 tag from the split files (libmp3splt) - fixed bug #3530488 - regression introduced with ogg multiple logical streams (libmp3splt) ------------------------------------------------------------- mp3splt-gtk version 0.7.2 - fixed an important bug of memory leak in player drawing when using GTK+-2 - fixed bug not showing icon and image in the about dialog - fix for the '--disable-gtk3' option; also fixed the gtk 2.x/3.x check - made some player graphic optimisations - added player refresh rate option in Preferences->Player - added expanders to the player history and player splitpoints view - we don't need gtk 2 version >= 2.20; changed it to 2.18 ------------------------------------------------------------- mp3splt-gtk version 0.7.1 - added minimum track length option for silence scan - closes #2393766 - added gtk3 support (auto detection or --enable-gtk3, --disable-gtk3) - almost closes #3385903 (some tests still need to be done) - fixed #3385841 - removed scrollkeeper warnings - fixed #3385827 - added --disable-doxygen_doc - fixed #3385829 - building doxygen documentation by itself + installing doxygen files - fixed #3385833 - don't apply debugging flags or warnings flags by default: added --enable-c-debug --enable-optimise --enable-extra-warnings - added support for multiple ogg/vorbis logical streams (mail) (libmp3splt) - fixed mp3 frame mode with skippoint when skippoint too small (on the same frame as previous) (libmp3splt) - fixed several audacity labels issues (libmp3splt) - fixed some regression regarding mp3splt v2.1c - removed some checks relative to the total time - we cannot rely on the total time - for example with concatenated mp3s (libmp3splt)
jperkin
pushed a commit
that referenced
this pull request
Dec 9, 2013
pkgsrc changes: --------------- - Depends on security/py-ecdsa - FETCH_USING=curl to deal with PyPi's htpps only website. upstream changes: ----------------- v1.12.0 (27th Sep 2013) ----------------------- * #152: Add tentative support for ECDSA keys. *This adds the ecdsa module as a new dependency of Paramiko.* The module is available at [warner/python-ecdsa on Github](https://github.com/warner/python-ecdsa) and [ecdsa on PyPI](https://pypi.python.org/pypi/ecdsa). * Note that you might still run into problems with key negotiation -- Paramiko picks the first key that the server offers, which might not be what you have in your known_hosts file. * Mega thanks to Ethan Glasser-Camp for the patch. * #136: Add server-side support for the SSH protocol's 'env' command. Thanks to Benjamin Pollack for the patch. v1.11.2 (27th Sep 2013) ----------------------- * #156: Fix potential deadlock condition when using Channel objects as sockets (e.g. when using SSH gatewaying). Thanks to Steven Noonan and Frank Arnold for catch & patch. * #179: Fix a missing variable causing errors when an ssh_config file has a non-default AddressFamily set. Thanks to Ed Marshall & Tomaz Muraus for catch & patch. * #200: Fix an exception-causing typo in `demo_simple.py`. Thanks to Alex Buchanan for catch & Dave Foster for patch. * #199: Typo fix in the license header cross-project. Thanks to Armin Ronacher for catch & patch. v1.12.0 (27th Sep 2013) ----------------------- * #152: Add tentative support for ECDSA keys. *This adds the ecdsa module as a new dependency of Paramiko.* The module is available at [warner/python-ecdsa on Github](https://github.com/warner/python-ecdsa) and [ecdsa on PyPI](https://pypi.python.org/pypi/ecdsa). * Note that you might still run into problems with key negotiation -- Paramiko picks the first key that the server offers, which might not be what you have in your known_hosts file. * Mega thanks to Ethan Glasser-Camp for the patch. * #136: Add server-side support for the SSH protocol's 'env' command. Thanks to Benjamin Pollack for the patch. v1.11.2 (27th Sep 2013) ----------------------- * #156: Fix potential deadlock condition when using Channel objects as sockets (e.g. when using SSH gatewaying). Thanks to Steven Noonan and Frank Arnold for catch & patch. * #179: Fix a missing variable causing errors when an ssh_config file has a non-default AddressFamily set. Thanks to Ed Marshall & Tomaz Muraus for catch & patch. * #200: Fix an exception-causing typo in `demo_simple.py`. Thanks to Alex Buchanan for catch & Dave Foster for patch. * #199: Typo fix in the license header cross-project. Thanks to Armin Ronacher for catch & patch.
Fixed upstream, thanks! |
jperkin
pushed a commit
that referenced
this pull request
Jan 21, 2014
Changelog: ------------------------------------------------------------- mp3splt-gtk version 0.8.2 - fixed important bug in mp3splt-gtk: split using cue file was not splitting the last part - fixed tags encoding issue in mp3splt-gtk: encode in UTF-8 tags if not valid UTF-8 - implemented "prelisten a section to its ending splitpoint" in mp3splt-gtk (feature request #98) - libmp3splt check is now more correct and checks for the exact version of libmp3splt with = instead of >=; will be changed to >= when final version of libmp3splt will be released - now using pkg-config instead of mp3splt.m4 (bug #145) - corrected build files (configure.ac, Makefile.am, ...) and check using 'make distcheck' (bug #147) ------------------------------------------------------------- mp3splt-gtk version 0.8.1 - fixed important bug: application was crashing when pushing the split button without any splitpoint (libmp3splt) - fixed important bug: split by time was in hundreths of seconds instead of seconds ------------------------------------------------------------- mp3splt-gtk version 0.8 - added tags edition from the splitpoints table - closes feature #92 - added cloning features for mass copying of tags using right click on the splitpoints table - enhanced the CUE export to export the tags as REM comments and also the splitpoint names - automatically save & restore splitpoints in '~/.mp3splt-gtk/splitpoints.cue' - better amplitude wave display (wave does not "shake" anymore) - done issue #37 & #138 - nicer GUI for the option 'same output directory as the input file' - fixed amplitude wave to be more precise with ogg vorbis files (libmp3splt) - fixed important bug on mp3splt-gtk 'Queue to player' button - fixed bug #128 - hash symbol in filename breaks the player - done feature #38 - reorder filenames in mp3splt-gtk (description_here_partXX) - fixed bug #133 - updated GPLv2 COPYING file - fixed bug #137 - autogen.sh should run libtoolize before aclocal/automake - fixed bug #143 - be able to add splitpoint at the end from the player - fixed bug #136 - various compilation issues - fixed issue #90 - added back the icons to split preview and play preview in the splitpoints table - added a lot of tooltip and GUI renamings - done feature #91 - amplitude wave now persists in preferences - added one more interpolation level for the amplitude wave (level 6) - more precise wave preview in preferences - fixed bug when detecting the input tags version - output had no tags when the input only had ID3v1 (libmp3splt) - fixed bug #141 - when input file is a symlink and output directory is the one of the input file (libmp3splt) - amplitude more precise with ogg vorbis files (libmp3splt) - fixed bug on mp3 trim silence scan: last frame was skipped (libmp3splt) ------------------------------------------------------------- mp3splt-gtk version 0.7.3 - redesigned the mp3splt-gtk user interface - added option to specify the wave quality in the parameters (for performance reasons) - wave interpolation is now much correct - we use the douglas peucker algorithm instead of the previous one which was stupid - added gray areas where no splitpoints - regarding #3520736 - added seek key shortcuts to the player - #1811400 & #3528001 - heavy refactoring of mp3splt-gtk code - fixed bug: removing TLEN id3v2 tag from the split files (libmp3splt) - fixed bug #3530488 - regression introduced with ogg multiple logical streams (libmp3splt) ------------------------------------------------------------- mp3splt-gtk version 0.7.2 - fixed an important bug of memory leak in player drawing when using GTK+-2 - fixed bug not showing icon and image in the about dialog - fix for the '--disable-gtk3' option; also fixed the gtk 2.x/3.x check - made some player graphic optimisations - added player refresh rate option in Preferences->Player - added expanders to the player history and player splitpoints view - we don't need gtk 2 version >= 2.20; changed it to 2.18 ------------------------------------------------------------- mp3splt-gtk version 0.7.1 - added minimum track length option for silence scan - closes #2393766 - added gtk3 support (auto detection or --enable-gtk3, --disable-gtk3) - almost closes #3385903 (some tests still need to be done) - fixed #3385841 - removed scrollkeeper warnings - fixed #3385827 - added --disable-doxygen_doc - fixed #3385829 - building doxygen documentation by itself + installing doxygen files - fixed #3385833 - don't apply debugging flags or warnings flags by default: added --enable-c-debug --enable-optimise --enable-extra-warnings - added support for multiple ogg/vorbis logical streams (mail) (libmp3splt) - fixed mp3 frame mode with skippoint when skippoint too small (on the same frame as previous) (libmp3splt) - fixed several audacity labels issues (libmp3splt) - fixed some regression regarding mp3splt v2.1c - removed some checks relative to the total time - we cannot rely on the total time - for example with concatenated mp3s (libmp3splt)
jperkin
pushed a commit
that referenced
this pull request
Jan 21, 2014
pkgsrc changes: --------------- - Depends on security/py-ecdsa - FETCH_USING=curl to deal with PyPi's htpps only website. upstream changes: ----------------- v1.12.0 (27th Sep 2013) ----------------------- * #152: Add tentative support for ECDSA keys. *This adds the ecdsa module as a new dependency of Paramiko.* The module is available at [warner/python-ecdsa on Github](https://github.com/warner/python-ecdsa) and [ecdsa on PyPI](https://pypi.python.org/pypi/ecdsa). * Note that you might still run into problems with key negotiation -- Paramiko picks the first key that the server offers, which might not be what you have in your known_hosts file. * Mega thanks to Ethan Glasser-Camp for the patch. * #136: Add server-side support for the SSH protocol's 'env' command. Thanks to Benjamin Pollack for the patch. v1.11.2 (27th Sep 2013) ----------------------- * #156: Fix potential deadlock condition when using Channel objects as sockets (e.g. when using SSH gatewaying). Thanks to Steven Noonan and Frank Arnold for catch & patch. * #179: Fix a missing variable causing errors when an ssh_config file has a non-default AddressFamily set. Thanks to Ed Marshall & Tomaz Muraus for catch & patch. * #200: Fix an exception-causing typo in `demo_simple.py`. Thanks to Alex Buchanan for catch & Dave Foster for patch. * #199: Typo fix in the license header cross-project. Thanks to Armin Ronacher for catch & patch. v1.12.0 (27th Sep 2013) ----------------------- * #152: Add tentative support for ECDSA keys. *This adds the ecdsa module as a new dependency of Paramiko.* The module is available at [warner/python-ecdsa on Github](https://github.com/warner/python-ecdsa) and [ecdsa on PyPI](https://pypi.python.org/pypi/ecdsa). * Note that you might still run into problems with key negotiation -- Paramiko picks the first key that the server offers, which might not be what you have in your known_hosts file. * Mega thanks to Ethan Glasser-Camp for the patch. * #136: Add server-side support for the SSH protocol's 'env' command. Thanks to Benjamin Pollack for the patch. v1.11.2 (27th Sep 2013) ----------------------- * #156: Fix potential deadlock condition when using Channel objects as sockets (e.g. when using SSH gatewaying). Thanks to Steven Noonan and Frank Arnold for catch & patch. * #179: Fix a missing variable causing errors when an ssh_config file has a non-default AddressFamily set. Thanks to Ed Marshall & Tomaz Muraus for catch & patch. * #200: Fix an exception-causing typo in `demo_simple.py`. Thanks to Alex Buchanan for catch & Dave Foster for patch. * #199: Typo fix in the license header cross-project. Thanks to Armin Ronacher for catch & patch.
jperkin
pushed a commit
that referenced
this pull request
Jan 21, 2014
FITS (Flexible Image Transport System) is a data format most used in astronomy. PyFITS is a Python module for reading, writing, and manipulating FITS files. The module uses Python's object-oriented features to provide quick, easy, and efficient access to FITS files. The use of Python's array syntax enables immediate access to any FITS extension, header cards, or data items. Changes to 2.4.0 (in py-pyfits): Changelog =========== 3.2 (2013-11-26) ---------------- Highlights ^^^^^^^^^^ - Rewrote CFITSIO-based backend for handling tile compression of FITS files. It now uses a standard CFITSIO instead of heavily modified pieces of CFITSIO as before. PyFITS ships with its own copy of CFITSIO v3.35 which supports the latest version of the Tiled Image Convention (v2.3), but system packagers may choose instead to strip this out in favor of a system-installed version of CFITSIO. Earlier versions may work, but nothing earlier than 3.28 has been tested yet. (#169) - Added support for reading and writing tables using the Q format for columns. The Q format is identical to the P format (variable-length arrays) except that it uses 64-bit integers for the data descriptors, allowing more than 4 GB of variable-length array data in a single table. (#160) - Added initial support for table columns containing pseudo-unsigned integers. This is currently enabled by using the ``uint=True`` option when opening files; any table columns with the correct BZERO value will be interpreted and returned as arrays of unsigned integers. - Some refactoring of the table and ``FITS_rec`` modules in order to better separate the details of the FITS binary and ASCII table data structures from the HDU data structures that encapsulate them. Most of these changes should not be apparent to users (but see API Changes below). API Changes ^^^^^^^^^^^ - Assigning to values in ``ColDefs.names``, ``ColDefs.formats``, ``ColDefs.nulls`` and other attributes of ``ColDefs`` instances that return lists of column properties is no longer supported. Assigning to those lists will no longer update the corresponding columns. Instead, please just modify the ``Column`` instances directly (``Column.name``, ``Column.null``, etc.) - The ``pyfits.new_table`` function is marked "pending deprecation". This does not mean it will be removed outright or that its functionality has changed. It will likely be replaced in the future for a function with similar, if not subtly different functionality. A better, if not slightly more verbose approach is to use ``pyfits.FITS_rec.from_columns`` to create a new ``FITS_rec`` table--this has the same interface as ``pyfits.new_table``. The difference is that it returns a plan ``FITS_rec`` array, and not an HDU instance. This ``FITS_rec`` object can then be used as the data argument in the constructors for ``BinTableHDU`` (for binary tables) or ``TableHDU`` (for ASCII tables). This is analogous to creating an ``ImageHDU`` by passing in an image array. ``pyfits.FITS_rec.from_columns`` is just a simpler way of creating a FITS-compatible recarray from a FITS column specification. - The ``updateHeader``, ``updateHeaderData``, and ``updateCompressedData`` methods of the ``CompDataHDU`` class are pending deprecation and moved to internal methods. The operation of these methods depended too much on internal state to be used safely by users; instead they are invoked automatically in the appropriate places when reading/writing compressed image HDUs. - The ``CompDataHDU.compData`` attribute is pending deprecation in favor of the clearer and more PEP-8 compatible ``CompDataHDU.compressed_data``. - The constructor for ``CompDataHDU`` has been changed to accept new keyword arguments. The new keyword arguments are essentially the same, but are in underscore_separated format rather than camelCase format. The old arguments are still pending deprecation. - The internal attributes of HDU classes ``_hdrLoc``, ``_datLoc``, and ``_datSpan`` have been replaced with ``_header_offset``, ``_data_offset``, and ``_data_size`` respectively. The old attribute names are still pending deprecation. This should only be of interest to advanced users who have created their own HDU subclasses. - The following previously deprecated functions and methods have been removed entirely: ``createCard``, ``createCardFromString``, ``upperKey``, ``ColDefs.data``, ``setExtensionNameCaseSensitive``, ``_File.getfile``, ``_TableBaseHDU.get_coldefs``, ``Header.has_key``, ``Header.ascardlist``. If you run your code with a previous version of PyFITS (>= 3.0, < 3.2) with the ``python -Wd`` argument, warnings for all deprecated interfaces still in use will be displayed. - Interfaces that were pending deprecation are now fully deprecated. These include: ``create_card``, ``create_card_from_string``, ``upper_key``, ``Header.get_history``, and ``Header.get_comment``. - The ``.name`` attribute on HDUs is now directly tied to the HDU's header, so that if ``.header['EXTNAME']`` changes so does ``.name`` and vice-versa. - The ``pyfits.file.PYTHON_MODES`` constant dict was renamed to ``pyfits.file.PYFITS_MODES`` which better reflects its purpose. This is rarely used by client code, however. Support for the old name will be removed by PyFITS 3.4. Other Changes and Additions ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - The new compression code also adds support for the ZQUANTIZ and ZDITHER0 keywords added in more recent versions of this FITS Tile Compression spec. This includes support for lossless compression with GZIP. (#198) By default no dithering is used, but the ``SUBTRACTIVE_DITHER_1`` and ``SUBTRACTIVE_DITHER_2`` methods can be enabled by passing the correct constants to the ``quantize_method`` argument to the ``CompImageHDU`` constuctor. A seed can be manually specified, or automatically generated using either the system clock or checksum-based methods via the ``dither_seed`` argument. See the documentation for ``CompImageHDU`` for more details. (#198) (spacetelescope/PYFITS#32) - Images compressed with the Tile Compression standard can now be larger than 4 GB through support of the Q format. (#159) - All HDUs now have a ``.ver`` ``.level`` attribute that returns the value of the EXTVAL and EXTLEVEL keywords from that HDU's header, if the exist. This was added for consistency with the ``.name`` attribute which returns the EXTNAME value from the header. - Then ``Column`` and ``ColDefs`` classes have new ``.dtype`` attributes which give the Numpy dtype for the column data in the first case, and the full Numpy compound dtype for each table row in the latter case. - There was an issue where new tables created defaulted the values in all string columns to '0.0'. Now string columns are filled with empty strings by default--this seems a less surprising default, but it may cause differences with tables created with older versions of PyFITS. - Improved round-tripping and preservation of manually assigned column attributes (``TNULLn``, ``TSCALn``, etc.) in table HDU headers. (astropy/astropy#996) Bug Fixes ^^^^^^^^^ - Binary tables containing compressed images may, optionally, contain other columns unrelated to the tile compression convention. Although this is an uncommon use case, it is permitted by the standard. (#159) - Reworked some of the file I/O routines to allow simpler, more consistent mapping between OS-level file modes ('rb', 'wb', 'ab', etc.) and the more "PyFITS-specific" modes used by PyFITS like "readonly" and "update". That is, if reading a FITS file from an open file object, it doesn't matter as much what "mode" it was opened in so long as it has the right capabilities (read/write/etc.) Also works around bugs in the Python io module in 2.6+ with regard to file modes. (spacetelescope/PyFITS#33) - Fixed an obscure issue that can occur on systems that don't have flush to memory-mapped files implemented (namely GNU Hurd). (astropy/astropy#968) 3.1.3 (2013-11-26) ------------------ - Disallowed assigning NaN and Inf floating point values as header values, since the FITS standard does not define a way to represent them in. Because this is undefined, the previous behavior did not make sense and produced invalid FITS files. (spacetelescope/PyFITS#11) - Added a workaround for a bug in 64-bit OSX that could cause truncation when writing files greater than 2^32 bytes in size. (spacetelescope/PyFITS#28) - Fixed a long-standing issue where writing binary tables did not correctly write the TFORMn keywords for variable-length array columns (they ommitted the max array length parameter of the format). This was thought fixed in v3.1.2, but it was only fixed there for compressed image HDUs and not for binary tables in general. - Fixed an obscure issue that can occur on systems that don't have flush to memory-mapped files implemented (namely GNU Hurd). (Backported from 3.2) 3.0.12 (2013-11-26) ------------------- - Disallowed assigning NaN and Inf floating point values as header values, since the FITS standard does not define a way to represent them in. Because this is undefined, the previous behavior did not make sense and produced invalid FITS files. (Backported from 3.1.3) - Added a workaround for a bug in 64-bit OSX that could cause truncation when writing files greater than 2^32 bytes in size. (Backported from 3.1.3) - Fixed a long-standing issue where writing binary tables did not correctly write the TFORMn keywords for variable-length array columns (they ommitted the max array length parameter of the format). This was thought fixed in v3.1.2, but it was only fixed there for compressed image HDUs and not for binary tables in general. (Backported from 3.1.3) - Fixed an obscure issue that can occur on systems that don't have flush to memory-mapped files implemented (namely GNU Hurd). (Backported from 3.2) 3.1.2 (2013-04-22) ------------------ - When an error occurs opening a file in fitsdiff the exception message will now at least mention which file had the error. (#168) - Fixed support for opening gzipped FITS files by filename in a writeable mode (PyFITS has supported writing to gzip files for some time now, but only enabled it when GzipFile objects were passed to ``pyfits.open()`` due to some legacy code preventing full gzip support. (#195) - Added a more helpful error message in the case of malformatted FITS files that contain non-float NULL values in an ASCII table but are missing the required TNULLn keywords in the header. (#197) - Fixed an (apparently long-standing) issue where writing compressed images did not correctly write the TFORMn keywords for variable-length array columns (they ommitted the max array length parameter of the format). (#199) - Slightly refactored how tables containing variable-length array columns are handled to add two improvements: Fixes an issue where accessing the data after a call to the `pyfits.getdata` convenience function caused an exception, and allows the VLA data to be read from an existing mmap of the FITS file. (#200) - Fixed a bug that could occur when opening a table containing multi-dimensional columns (i.e. via the TDIMn keyword) and then writing it out to a new file. (#201) - Added use of the console_scripts entry point to install the fitsdiff and fitscheck scripts, which if nothing else provides better Windows support. The generated scripts now override the ones explicitly defined in the scripts/ directory (which were just trivial stubs to begin with). (#202) - Fixed a bug on Python 3 where attempting to open a non-existent file on Python 3 caused a seemingly unrelated traceback. (#203) - Fixed a bug in fitsdiff that reported two header keywords containing NaN as value as different. (#204) - Fixed an issue in the tests that caused some tests to fail if pyfits is installed with read-only permissions. (#208) - Fixed a bug where instantiating a ``BinTableHDU`` from a numpy array containing boolean fields converted all the values to ``False``. (#215) - Fixed an issue where passing an array of integers into the constructor of ``Column()`` when the column type is floats of the same byte width caused the column array to become garbled. (#218) - Fixed inconsistent behavior in creating CONTINUE cards from byte strings versus unicode strings in Python 2--CONTINUE cards can now be created properly from unicode strings (so long as they are convertable to ASCII). (spacetelescope/PyFITS#1) - Fixed a couple cases where creating a new table using TDIMn in some of the columns could caused a crash. (spacetelescope/PyFITS#3) - Fixed a bug in parsing HIERARCH keywords that do not have a space after the first equals sign (before the value). (spacetelescope/PyFITS#5) - Prevented extra leading whitespace on HIERARCH keywords from being treated as part of the keyword. (spacetelescope/PyFITS#6) - Fixed a bug where HIERARCH keywords containing lower-case letters was mistakenly marked as invalid during header validation. (spacetelescope/PyFITS#7) - Fixed an issue that was ancillary to (spacetelescope/PyFITS#7) where the ``Header.index()`` method did not work correctly with HIERARCH keywords containing lower-case letters. 3.0.11 (2013-04-17) ------------------- - Fixed support for opening gzipped FITS files by filename in a writeable mode (PyFITS has supported writing to gzip files for some time now, but only enabled it when GzipFile objects were passed to ``pyfits.open()`` due to some legacy code preventing full gzip support. Backported from 3.1.2. (#195) - Added a more helpful error message in the case of malformatted FITS files that contain non-float NULL values in an ASCII table but are missing the required TNULLn keywords in the header. Backported from 3.1.2. (#197) - Fixed an (apparently long-standing) issue where writing compressed images did not correctly write the TFORMn keywords for variable-length array columns (they ommitted the max array length parameter of the format). Backported from 3.1.2. (#199) - Slightly refactored how tables containing variable-length array columns are handled to add two improvements: Fixes an issue where accessing the data after a call to the `pyfits.getdata` convenience function caused an exception, and allows the VLA data to be read from an existing mmap of the FITS file. Backported from 3.1.2. (#200) - Fixed a bug that could occur when opening a table containing multi-dimensional columns (i.e. via the TDIMn keyword) and then writing it out to a new file. Backported from 3.1.2. (#201) - Fixed a bug on Python 3 where attempting to open a non-existent file on Python 3 caused a seemingly unrelated traceback. Backported from 3.1.2. (#203) - Fixed a bug in fitsdiff that reported two header keywords containing NaN as value as different. Backported from 3.1.2. (#204) - Fixed an issue in the tests that caused some tests to fail if pyfits is installed with read-only permissions. Backported from 3.1.2. (#208) - Fixed a bug where instantiating a ``BinTableHDU`` from a numpy array containing boolean fields converted all the values to ``False``. Backported from 3.1.2. (#215) - Fixed an issue where passing an array of integers into the constructor of ``Column()`` when the column type is floats of the same byte width caused the column array to become garbled. Backported from 3.1.2. (#218) - Fixed a couple cases where creating a new table using TDIMn in some of the columns could caused a crash. Backported from 3.1.2. (spacetelescope/PyFITS#3) 3.1.1 (2013-01-02) ------------------ This is a bug fix release for the 3.1.x series. Bug Fixes ^^^^^^^^^ - Improved handling of scaled images and pseudo-unsigned integer images in compressed image HDUs. They now work more transparently like normal image HDUs with support for the ``do_not_scale_image_data`` and ``uint`` options, as well as ``scale_back`` and ``save_backup``. The ``.scale()`` method works better too. (#88) - Permits non-string values for the EXTNAME keyword when reading in a file, rather than throwing an exception due to the malformatting. Added verification for the format of the EXTNAME keyword when writing. (#96) - Added support for EXTNAME and EXTVER in PRIMARY HDUs. That is, if EXTNAME is specified in the header, it will also be reflected in the ``.name`` attribute and in ``pyfits.info()``. These keywords used to be verboten in PRIMARY HDUs, but the latest version of the FITS standard allows them. (#151) - HCOMPRESS can again be used to compress data cubes (and higher-dimensional arrays) so long as the tile size is effectively 2-dimensional. In fact, PyFITS will automatically use compatible tile sizes even if they're not explicitly specified. (#171) - Added support for the optional ``endcard`` parameter in the ``Header.fromtextfile()`` and ``Header.totextfile()`` methods. Although ``endcard=False`` was a reasonable default assumption, there are still text dumps of FITS headers that include the END card, so this should have been more flexible. (#176) - Fixed a crash when running fitsdiff on two empty (that is, zero row) tables. (#178) - Fixed an issue where opening files containing random groups HDUs in update mode could cause an unnecessary rewrite of the file even if none of the data is modified. (#179) - Fixed a bug that could caused a deadlock in the filesystem on OSX if PyFITS is used with Numpy 1.7 in some cases. (#180) - Fixed a crash when generating diff reports from diffs using the ``ignore_comments`` options. (#181) - Fixed some bugs with WCS Paper IV record-valued keyword cards: - Cards that looked kind of like RVKCs but were not intended to be were over-permissively treated as such--commentary keywords like COMMENT and HISTORY were particularly affected. (#183) - Looking up a card in a header by its standard FITS keyword only should always return the raw value of that card. That way cards containing values that happen to valid RVKCs but were not intended to be will still be treated like normal cards. (#184) - Looking up a RVKC in a header with only part of the field-specifier (for example "DP1.AXIS" instead of "DP1.AXIS.1") was implicitly treated as a wildcard lookup. (#184) - Fixed a crash when diffing two FITS files where at least one contains a compressed image HDU which was not recognized as an image instead of a table. (#187) - Fixed bugs in the backwards compatibility layer for the ``CardList.index`` and ``CardList.count`` methods. (#190) - Improved ``__repr__`` and text file representation of cards with long values that are split into CONTINUE cards. (#193) - Fixed a crash when trying to assign a long (> 72 character) value to blank ('') keywords. This also changed how blank keywords are represented--there are still exactly 8 spaces before any commentary content can begin; this *may* affect the exact display of header cards that assumed there could be fewer spaces in a blank keyword card before the content begins. However, the current approach is more in line with the requirements of the FITS standard. (#194) 3.0.10 (2013-01-02) ------------------- - Improved handling of scaled images and pseudo-unsigned integer images in compressed image HDUs. They now work more transparently like normal image HDUs with support for the ``do_not_scale_image_data`` and ``uint`` options, as well as ``scale_back`` and ``save_backup``. The ``.scale()`` method works better too. Backported from 3.1.1. (#88) - Permits non-string values for the EXTNAME keyword when reading in a file, rather than throwing an exception due to the malformatting. Added verification for the format of the EXTNAME keyword when writing. Backported from 3.1.1. (#96) - Added support for EXTNAME and EXTVER in PRIMARY HDUs. That is, if EXTNAME is specified in the header, it will also be reflected in the ``.name`` attribute and in ``pyfits.info()``. These keywords used to be verbotten in PRIMARY HDUs, but the latest version of the FITS standard allows them. Backported from 3.1.1. (#151) - HCOMPRESS can again be used to compress data cubes (and higher-dimensional arrays) so long as the tile size is effectively 2-dimensional. In fact, PyFITS will not automatically use compatible tile sizes even if they're not explicitly specified. Backported from 3.1.1. (#171) - Fixed a bug when writing out files containing zero-width table columns, where the TFIELDS keyword would be updated incorrectly, leaving the table largely unreadable. Backported from 3.1.0. (#174) - Fixed an issue where opening files containing random groups HDUs in update mode could cause an unnecessary rewrite of the file even if none of the data is modified. Backported from 3.1.1. (#179) - Fixed a bug that could caused a deadlock in the filesystem on OSX if PyFITS is used with Numpy 1.7 in some cases. Backported from 3.1.1. (#180) 3.1 (2012-08-08) ---------------- Highlights ^^^^^^^^^^ - The ``Header`` object has been significantly reworked, and ``CardList`` objects are now deprecated (their functionality folded into the ``Header`` class). See API Changes below for more details. - Memory maps are now used by default to access HDU data. See API Changes below for more details. - Now includes a new version of the ``fitsdiff`` program for comparing two FITS files, and a new FITS comparison API used by ``fitsdiff``. See New Features below. API Changes ^^^^^^^^^^^ - The ``Header`` class has been rewritten, and the ``CardList`` class is deprecated. Most of the basic details of working with FITS headers are unchanged, and will not be noticed by most users. But there are differences in some areas that will be of interest to advanced users, and to application developers. For full details of the changes, see the "Header Interface Transition Guide" section in the PyFITS documentation. See ticket #64 on the PyFITS Trac for futher details and background. Some highlights are listed below: * The Header class now fully implements the Python dict interface, and can be used interchangably with a dict, where the keys are header keywords. * New keywords can be added to the header using normal keyword assignment (previously it was necessary to use ``Header.update`` to add new keywords). For example:: >>> header['NAXIS'] = 2 will update the existing 'FOO' keyword if it already exists, or add a new one if it doesn't exist, just like a dict. * It is possible to assign both a value and a comment at the same time using a tuple:: >>> header['NAXIS'] = (2, 'Number of axes') * To add/update a new card and ensure it's added in a specific location, use ``Header.set()``:: >>> header.set('NAXIS', 2, 'Number of axes', after='BITPIX') This works the same as the old ``Header.update()``. ``Header.update()`` still works in the old way too, but is deprecated. * Although ``Card`` objects still exist, it generally is not necessary to work with them directly. ``Header.ascardlist()``/``Header.ascard`` are deprecated and should not be used. To directly access the ``Card`` objects in a header, use ``Header.cards``. * To access card comments, it is still possible to either go through the card itself, or through ``Header.comments``. For example:: >>> header.cards['NAXIS'].comment Number of axes >>> header.comments['NAXIS'] Number of axes * ``Card`` objects can now be used interchangeably with ``(keyword, value, comment)`` 3-tuples. They still have ``.value`` and ``.comment`` attributes as well. The ``.key`` attribute has been renamed to ``.keyword`` for consistency, though ``.key`` is still supported (but deprecated). - Memory mapping is now used by default to access HDU data. That is, ``pyfits.open()`` uses ``memmap=True`` as the default. This provides better performance in the majority of use cases--there are only some I/O intensive applications where it might not be desirable. Enabling mmap by default also enabled finding and fixing a large number of bugs in PyFITS' handling of memory-mapped data (most of these bug fixes were backported to PyFITS 3.0.5). (#85) * A new ``pyfits.USE_MEMMAP`` global variable was added. Set ``pyfits.USE_MEMMAP = False`` to change the default memmap setting for opening files. This is especially useful for controlling the behavior in applications where pyfits is deeply embedded. * Likewise, a new ``PYFITS_USE_MEMMAP`` environment variable is supported. Set ``PYFITS_USE_MEMMAP = 0`` in your environment to change the default behavior. - The ``size()`` method on HDU objects is now a ``.size`` property--this returns the size in bytes of the data portion of the HDU, and in most cases is equivalent to ``hdu.data.nbytes`` (#83) - ``BinTableHDU.tdump`` and ``BinTableHDU.tcreate`` are deprecated--use ``BinTableHDU.dump`` and ``BinTableHDU.load`` instead. The new methods output the table data in a slightly different format from previous versions, which places quotes around each value. This format is compatible with data dumps from previous versions of PyFITS, but not vice-versa due to a parsing bug in older versions. - Likewise the ``pyfits.tdump`` and ``pyfits.tcreate`` convenience function versions of these methods have been renamed ``pyfits.tabledump`` and ``pyfits.tableload``. The old deprecated, but currently retained for backwards compatibility. (r1125) - A new global variable ``pyfits.EXTENSION_NAME_CASE_SENSITIVE`` was added. This serves as a replacement for ``pyfits.setExtensionNameCaseSensitive`` which is not deprecated and may be removed in a future version. To enable case-sensitivity of extension names (i.e. treat 'sci' as distict from 'SCI') set ``pyfits.EXTENSION_NAME_CASE_SENSITIVE = True``. The default is ``False``. (r1139) - A new global configuration variable ``pyfits.STRIP_HEADER_WHITESPACE`` was added. By default, if a string value in a header contains trailing whitespace, that whitespace is automatically removed when the value is read. Now if you set ``pyfits.STRIP_HEADER_WHITESPACE = False`` all whitespace is preserved. (#146) - The old ``classExtensions`` extension mechanism (which was deprecated in PyFITS 3.0) is removed outright. To our knowledge it was no longer used anywhere. (r1309) - Warning messages from PyFITS issued through the Python warnings API are now output to stderr instead of stdout, as is the default. PyFITS no longer modifies the default behavior of the warnings module with respect to which stream it outputs to. (r1319) - The ``checksum`` argument to ``pyfits.open()`` now accepts a value of 'remove', which causes any existing CHECKSUM/DATASUM keywords to be ignored, and removed when the file is saved. New Features ^^^^^^^^^^^^ - Added support for the proposed "FITS" extension HDU type. See http://listmgr.cv.nrao.edu/pipermail/fitsbits/2002-April/001094.html. FITS HDUs contain an entire FITS file embedded in their data section. `FitsHDU` objects work like other HDU types in PyFITS. Their ``.data`` attribute returns the raw data array. However, they have a special ``.hdulist`` attribute which processes the data as a FITS file and returns it as an in-memory HDUList object. FitsHDU objects also support a ``FitsHDU.fromhdulist()`` classmethod which returns a new `FitsHDU` object that embeds the supplied HDUList. (#80) - Added a new ``.is_image`` attribute on HDU objects, which is True if the HDU data is an 'image' as opposed to a table or something else. Here the meaning of 'image' is fairly loose, and mostly just means a Primary or Image extension HDU, or possibly a compressed image HDU (#71) - Added an ``HDUList.fromstring`` classmethod which can parse a FITS file already in memory and instantiate and ``HDUList`` object from it. This could be useful for integrating PyFITS with other libraries that work on FITS file, such as CFITSIO. It may also be useful in streaming applications. The name is a slight misnomer, in that it actually accepts any Python object that implements the buffer interface, which includes ``bytes``, ``bytearray``, ``memoryview``, ``numpy.ndarray``, etc. (#90) - Added a new ``pyfits.diff`` module which contains facilities for comparing FITS files. One can use the ``pyfits.diff.FITSDiff`` class to compare two FITS files in their entirety. There is also a ``pyfits.diff.HeaderDiff`` class for just comparing two FITS headers, and other similar interfaces. See the PyFITS Documentation for more details on this interface. The ``pyfits.diff`` module powers the new ``fitsdiff`` program installed with PyFITS. After installing PyFITS, run ``fitsdiff --help`` for usage details. - ``pyfits.open()`` now accepts a ``scale_back`` argument. If set to ``True``, this automatically scales the data using the original BZERO and BSCALE parameters the file had when it was first opened, if any, as well as the original BITPIX. For example, if the original BITPIX were 16, this would be equivalent to calling ``hdu.scale('int16', 'old')`` just before calling ``flush()`` or ``close()`` on the file. This option applies to all HDUs in the file. (#120) - ``pyfits.open()`` now accepts a ``save_backup`` argument. If set to ``True``, this automatically saves a backup of the original file before flushing any changes to it (this of course only applies to update and append mode). This may be especially useful when working with scaled image data. (#121) Changes in Behavior ^^^^^^^^^^^^^^^^^^^ - Warnings from PyFITS are not output to stderr by default, instead of stdout as it has been for some time. This is contrary to most users' expectations and makes it more difficult for them to separate output from PyFITS from the desired output for their scripts. (r1319) Bug Fixes ^^^^^^^^^ - Fixed ``pyfits.tcreate()`` (now ``pyfits.tableload()``) to be more robust when encountering blank lines in a column definition file (#14) - Fixed a fairly rare crash that could occur in the handling of CONTINUE cards when using Numpy 1.4 or lower (though 1.4 is the oldest version supported by PyFITS). (r1330) - Fixed ``_BaseHDU.fromstring`` to actually correctly instantiate an HDU object from a string/buffer containing the header and data of that HDU. This allowed for the implementation of ``HDUList.fromstring`` described above. (#90) - Fixed a rare corner case where, in some use cases, (mildly, recoverably) malformatted float values in headers were not properly returned as floats. (#137) - Fixed a corollary to the previous bug where float values with a leading zero before the decimal point had the leading zero unnecessarily removed when saving changes to the file (eg. "0.001" would be written back as ".001" even if no changes were otherwise made to the file). (#137) - When opening a file containing CHECKSUM and/or DATASUM keywords in update mode, the CHECKSUM/DATASUM are updated and preserved even if the file was opened with checksum=False. This change in behavior prevents checksums from being unintentionally removed. (#148) - Fixed a bug where ``ImageHDU.scale(option='old')`` wasn't working at all--it was not restoring the image to its original BSCALE and BZERO values. (#162) - Fixed a bug when writing out files containing zero-width table columns, where the TFIELDS keyword would be updated incorrectly, leaving the table largely unreadable. This fix will be backported to the 3.0.x series in version 3.0.10. (#174) 3.0.9 (2012-08-06) ------------------ This is a bug fix release for the 3.0.x series. Bug Fixes ^^^^^^^^^ - Fixed ``Header.values()``/``Header.itervalues()`` and ``Header.items()``/ ``Header.iteritems()`` to correctly return the different values for duplicate keywords (particularly commentary keywords like HISTORY and COMMENT). This makes the old Header implementation slightly more compatible with the new implementation in PyFITS 3.1. (#127) .. note:: This fix did not change the existing behavior from earlier PyFITS versions where ``Header.keys()`` returns all keywords in the header with duplicates removed. PyFITS 3.1 changes that behavior, so that ``Header.keys()`` includes duplicates. - Fixed a bug where ``ImageHDU.scale(option='old')`` wasn't working at all--it was not restoring the image to its original BSCALE and BZERO values. (#162) - Fixed a bug where opening a file containing compressed image HDUs in 'update' mode and then immediately closing it without making any changes caused the file to be rewritten unncessarily. (#167) - Fixed two memory leaks that could occur when writing compressed image data, or in some cases when opening files containing compressed image HDUs in 'update' mode. (#168) 3.0.8 (2012-06-04) ------------------ Changes in Behavior ^^^^^^^^^^^^^^^^^^^ - Prior to this release, image data sections did not work with scaled data--that is, images with non-trivial BSCALE and/or BZERO values. Previously, in order to read such images in sections, it was necessary to manually apply the BSCALE+BZERO to each section. It's worth noting that sections *did* support pseudo-unsigned ints (flakily). This change just extends that support for general BSCALE+BZERO values. Bug Fixes ^^^^^^^^^ - Fixed a bug that prevented updates to values in boolean table columns from being saved. This turned out to be a symptom of a deeper problem that could prevent other table updates from being saved as well. (#139) - Fixed a corner case in which a keyword comment ending with the string "END" could, in some circumstances, cause headers (and the rest of the file after that point) to be misread. (#142) - Fixed support for scaled image data and psuedo-unsigned ints in image data sections (``hdu.section``). Previously this was not supported at all. At some point support was supposedly added, but it was buggy and incomplete. Now the feature seems to work much better. (#143) - Fixed the documentation to point out that image data sections *do* support non-contiguous slices (and have for a long time). The documentation was never updated to reflect this, and misinformed users that only contiguous slices were supported, leading to some confusion. (#144) - Fixed a bug where creating an ``HDUList`` object containing multiple PRIMARY HDUs caused an infinite recursion when validating the object prior to writing to a file. (#145) - Fixed a rare but serious case where saving an update to a file that previously had a CHECKSUM and/or DATASUM keyword, but removed the checksum in saving, could cause the file to be slightly corrupted and unreadable. (#147) - Fixed problems with reading "non-standard" FITS files with primary headers containing SIMPLE = F. PyFITS has never made many guarantees as to how such files are handled. But it should at least be possible to read their headers, and the data if possible. Saving changes to such a file should not try to prepend an unwanted valid PRIMARY HDU. (#157) - Fixed a bug where opening an image with ``disable_image_compression = True`` caused compression to be disabled for all subsequent ``pyfits.open()`` calls. (r1651) 3.0.7 (2012-04-10) ------------------ Changes in Behavior ^^^^^^^^^^^^^^^^^^^ - Slices of GroupData objects now return new GroupData objects instead of extended multi-row _Group objects. This is analogous to how PyFITS 3.0 fixed FITS_rec slicing, and should have been fixed for GroupData at the same time. The old behavior caused bugs where functions internal to Numpy expected that slicing an ndarray would return a new ndarray. As this is a rare usecase with a rare feature most users are unlikely to be affected by this change. - The previously internal _Group object for representing individual group records in a GroupData object are renamed Group and are now a public interface. However, there's almost no good reason to create Group objects directly, so it shouldn't be considered a "new feature". - An annoyance from PyFITS 3.0.6 was fixed, where the value of the EXTEND keyword was always being set to F if there are not actually any extension HDUs. It was unnecessary to modify this value. Bug Fixes ^^^^^^^^^ - Fixed GroupData objects to return new GroupData objects when sliced instead of _Group record objects. See "Changes in behavior" above for more details. - Fixed slicing of Group objects--previously it was not possible to slice slice them at all. - Made it possible to assign `np.bool_` objects as header values. (#123) - Fixed overly strict handling of the EXTEND keyword; see "Changes in behavior" above. (#124) - Fixed many cases where an HDU's header would be marked as "modified" by PyFITS and rewritten, even when no changes to the header are necessary. (#125) - Fixed a bug where the values of the PTYPEn keywords in a random groups HDU were forced to be all lower-case when saving the file. (#130) - Removed an unnecessary inline import in `ExtensionHDU.__setattr__` that was causing some slowdown when opening files containing a large number of extensions, plus a few other small (but not insignficant) performance improvements thanks to Julian Taylor. (#133) - Fixed a regression where header blocks containing invalid end-of-header padding (i.e. null bytes instead of spaces) couldn't be parsed by PyFITS. Such headers can be parsed again, but a warning is raised, as such headers are not valid FITS. (#136) - Fixed a memory leak where table data in random groups HDUs weren't being garbage collected. (#138) 3.0.6 (2012-02-29) ------------------ Highlights ^^^^^^^^^^ The main reason for this release is to fix an issue that was introduced in PyFITS 3.0.5 where merely opening a file containing scaled data (that is, with non-trivial BSCALE and BZERO keywords) in 'update' mode would cause the data to be automatically rescaled--possibly converting the data from ints to floats--as soon as the file is closed, even if the application did not touch the data. Now PyFITS will only rescale the data in an extension when the data is actually accessed by the application. So opening a file in 'update' mode in order to modify the header or append new extensions will not cause any change to the data in existing extensions. This release also fixes a few Windows-specific bugs found through more extensive Windows testing, and other miscellaneous bugs. Bug Fixes ^^^^^^^^^ - More accurate error messages when opening files containing invalid header cards. (#109) - Fixed a possible reference cycle/memory leak that was caught through more extensive testing on Windows. (#112) - Fixed 'ostream' mode to open the underlying file in 'wb' mode instead of 'w' mode. (#112) - Fixed a Windows-only issue where trying to save updates to a resized FITS file could result in a crash due to there being open mmaps on that file. (#112) - Fixed a crash when trying to create a FITS table (i.e. with new_table()) from a Numpy array containing bool fields. (#113) - Fixed a bug where manually initializing an ``HDUList`` with a list of of HDUs wouldn't set the correct EXTEND keyword value on the primary HDU. (#114) - Fixed a crash that could occur when trying to deepcopy a Header in Python < 2.7. (#115) - Fixed an issue where merely opening a scaled image in 'update' mode would cause the data to be converted to floats when the file is closed. (#119) 3.0.5 (2012-01-30) ------------------ - Fixed a crash that could occur when accessing image sections of files opened with memmap=True. (r1211) - Fixed the inconsistency in the behavior of files opened in 'readonly' mode when memmap=True vs. when memmap=False. In the latter case, although changes to array data were not saved to disk, it was possible to update the array data in memory. On the other hand with memmap=True, 'readonly' mode prevented even in-memory modification to the data. This is what 'copyonwrite' mode was for, but difference in behavior was confusing. Now 'readonly' is equivalent to 'copyonwrite' when using memmap. If the old behavior of denying changes to the array data is necessary, a new 'denywrite' mode may be used, though it is only applicable to files opened with memmap. (r1275) - Fixed an issue where files opened with memmap=True would return image data as a raw numpy.memmap object, which can cause some unexpected behaviors--instead memmap object is viewed as a numpy.ndarray. (r1285) - Fixed an issue in Python 3 where a workaround for a bug in Numpy on Python 3 interacted badly with some other software, namely to vo.table package (and possibly others). (r1320, r1337, and #110) - Fixed buggy behavior in the handling of SIGINTs (i.e. Ctrl-C keyboard interrupts) while flushing changes to a FITS file. PyFITS already prevented SIGINTs from causing an incomplete flush, but did not clean up the signal handlers properly afterwards, or reraise the keyboard interrupt once the flush was complete. (r1321) - Fixed a crash that could occur in Python 3 when opening files with checksum checking enabled. (r1336) - Fixed a small bug that could cause a crash in the `StreamingHDU` interface when using Numpy below version 1.5. - Fixed a crash that could occur when creating a new `CompImageHDU` from an array of big-endian data. (#104) - Fixed a crash when opening a file with extra zero padding at the end. Though FITS files should not have such padding, it's not explictly forbidden by the format either, and PyFITS shouldn't stumble over it. (#106) - Fixed a major slowdown in opening tables containing large columns of string values. (#111) 3.0.4 (2011-11-22) ------------------ - Fixed a crash when writing HCOMPRESS compressed images that could happen on Python 2.5 and 2.6. (r1217) - Fixed a crash when slicing an table in a file opened in 'readonly' mode with memmap=True. (r1230) - Writing changes to a file or writing to a new file verifies the output in 'fix' mode by default instead of 'exception'--that is, PyFITS will automatically fix common FITS format errors rather than raising an exception. (r1243) - Fixed a bug where convenience functions such as getval() and getheader() crashed when specifying just 'PRIMARY' as the extension to use (r1263). - Fixed a bug that prevented passing keyword arguments (beyond the standard data and header arguments) as positional arguments to the constructors of extension HDU classes. - Fixed some tests that were failing on Windows--in this case the tests themselves failed to close some temp files and Windows refused to delete them while there were still open handles on them. (r1295) - Fixed an issue with floating point formatting in header values on Python 2.5 for Windows (and possibly other platforms). The exponent was zero-padded to 3 digits; although the FITS standard makes no specification on this, the formatting is now normalized to always pad the exponent to two digits. (r1295) - Fixed a bug where long commentary cards (such as HISTORY and COMMENT) were broken into multiple CONTINUE cards. However, commentary cards are not expected to be found in CONTINUE cards. Instead these long cards are broken into multiple commentary cards. (#97) - GZIP/ZIP-compressed FITS files can be detected and opened regardless of their filename extension. (#99) - Fixed a serious bug where opening scaled images in 'update' mode and then closing the file without touching the data would cause the file to be corrupted. (#101) 3.0.3 (2011-10-05) ------------------ - Fixed several small bugs involving corner cases in record-valued keyword cards (#70) - In some cases HDU creation failed if the first keyword value in the header was not a string value (#89) - Fixed a crash when trying to compute the HDU checksum when the data array contains an odd number of bytes (#91) - Disabled an unnecessary warning that was displayed on opening compressed HDUs with disable_image_compression = True (#92) - Fixed a typo in code for handling HCOMPRESS compressed images. 3.0.2 (2011-09-23) ------------------ - The ``BinTableHDU.tcreate`` method and by extension the ``pyfits.tcreate`` function don't get tripped up by blank lines anymore (#14) - The presence, value, and position of the EXTEND keyword in Primary HDUs is verified when reading/writing a FITS file (#32) - Improved documentation (in warning messages as well as in the handbook) that PyFITS uses zero-based indexing (as one would expect for C/Python code, but contrary to the PyFITS standard which was written with FORTRAN in mind) (#68) - Fixed a bug where updating a header card comment could cause the value to be lost if it had not already been read from the card image string. - Fixed a related bug where changes made directly to Card object in a header (i.e. assigning directly to card.value or card.comment) would not propagate when flushing changes to the file (#69) [Note: This and the bug above it were originally reported as being fixed in version 3.0.1, but the fix was never included in the release.] - Improved file handling, particularly in Python 3 which had a few small file I/O-related bugs (#76) - Fixed a bug where updating a FITS file would sometimes cause it to lose its original file permissions (#79) - Fixed the handling of TDIMn keywords; 3.0 added support for them, but got the axis order backards (they were treated as though they were row-major) (#82) - Fixed a crash when a FITS file containing scaled data is opened and immediately written to a new file without explicitly viewing the data first (#84) - Fixed a bug where creating a table with columns named either 'names' or 'formats' resulted in an infinite recursion (#86) 3.0.1 (2011-09-12) ------------------ - Fixed a bug where updating a header card comment could cause the value to be lost if it had not already been read from the card image string. - Changed ``_TableBaseHDU.data`` so that if the data contain an empty table a ``FITS_rec`` object with zero rows is returned rather than ``None``. - The ``.key`` attribute of ``RecordValuedKeywordCards`` now returns the full keyword+field-specifier value, instead of just the plain keyword (#46) - Fixed a related bug where changes made directly to Card object in a header (i.e. assigning directly to card.value or card.comment) would not propagate when flushing changes to the file (#69) - Fixed a bug where writing a table with zero rows could fail in some cases (#72) - Miscellanous small bug fixes that were causing some tests to fail, particularly on Python 3 (#74, #75) - Fixed a bug where creating a table column from an array in non-native byte order would not preserve the byte order, thus interpreting the column array using the wrong byte order (#77) 3.0.0 (2011-08-23) -------------------- - Contains major changes, bumping the version to 3.0 - Large amounts of refactoring and reorganization of the code; tried to preserve public API backwards-compatibility with older versions (private API has many changes and is not guaranteed to be backwards-compatible). There are a few small public API changes to be aware of: * The pyfits.rec module has been removed completely. If your version of numpy does not have the numpy.core.records module it is too old to be used with PyFITS. * The ``Header.ascardlist()`` method is deprecated--use the ``.ascard`` attribute instead. * ``Card`` instances have a new ``.cardimage`` attribute that should be used rather than ``.ascardimage()``, which may become deprecated. * The ``Card.fromstring()`` method is now a classmethod. It returns a new ``Card`` instance rather than modifying an existing instance. * The ``req_cards()`` method on HDU instances has changed: The ``pos`` argument is not longer a string. It is either an integer value (meaning the card's position must match that value) or it can be a function that takes the card's position as it's argument, and returns True if the position is valid. Likewise, the ``test`` argument no longer takes a string, but instead a function that validates the card's value and returns True or False. * The ``get_coldefs()`` method of table HDUs is deprecated. Use the ``.columns`` attribute instead. * The ``ColDefs.data`` attribute is deprecated--use ``ColDefs.columns`` instead (though in general you shouldn't mess with it directly--it might become internal at some point). * ``FITS_record`` objects take ``start`` and ``end`` as arguments instead of ``startColumn`` and ``endColumn`` (these are rarely created manually, so it's unlikely that this change will affect anyone). * ``BinTableHDU.tcreate()`` is now a classmethod, and returns a new ``BinTableHDU`` instance. * Use ``ExtensionHDU`` and ``NonstandardExtHDU`` for making new extension HDU classes. They are now public interfaces, wheres previously they were private and prefixed with underscores. * Possibly others--please report if you find any changes that cause difficulties. - Calls to deprecated functions will display a Deprecation warning. However, in Python 2.7 and up Deprecation warnings are ignored by default, so run Python with the `-Wd` option to see if you're using any deprecated functions. If we get close to actually removing any functions, we might make the Deprecation warnings display by default. - Added basic Python 3 support - Added support for multi-dimensional columns in tables as specified by the TDIMn keywords (#47) - Fixed a major memory leak that occurred when creating new tables with the ``new_table()`` function (#49) be padded with zero-bytes) vs ASCII tables (where strings are padded with spaces) (#15) - Fixed a bug in which the case of Random Access Group parameters names was not preserved when writing (#41) - Added support for binary table fields with zero width (#42) - Added support for wider integer types in ASCII tables; although this is non- standard, some GEIS images require it (#45) - Fixed a bug that caused the index_of() method of HDULists to crash when the HDUList object is created from scratch (#48) - Fixed the behavior of string padding in binary tables (where strings should be padded with nulls instead of spaces) - Fixed a rare issue that caused excessive memory usage when computing checksums using a non-standard block size (see r818) - Add support for forced uint data in image sections (#53) - Fixed an issue where variable-length array columns were not extended when creating a new table with more rows than the original (#54) - Fixed tuple and list-based indexing of FITS_rec objects (#55) - Fixed an issue where BZERO and BSCALE keywords were appended to headers in the wrong location (#56) - ``FITS_record`` objects (table rows) have full slicing support, including stepping, etc. (#59) - Fixed a bug where updating multiple files simultaneously (such as when running parallel processes) could lead to a race condition with mktemp() (#61) - Fixed a bug where compressed image headers were not in the order expected by the funpack utility (#62)
jperkin
pushed a commit
that referenced
this pull request
Mar 14, 2014
v0.17.0 - multi_get_columns with only one query (courtesy @christian-blades-cb) - documentation fixes for get and multi_get (issue #136, courtesy @christian-blades-cb) v0.16.0 - New :queue_size option for batch mode (courtesy @vicentllongo) - Cassandra 1.1 support (courtesy @hawknewton)
jperkin
pushed a commit
that referenced
this pull request
Mar 14, 2014
== Ruby-GNOME2 1.2.5: 2013-03-28 Crash bug fix release! === Changes ==== All * Fixes * Fixed crash bugs. [GitHub #138] [Reported by Takuma Nakajima] === Thanks * Takuma Nakajima == Ruby-GNOME2 1.2.4: 2013-03-24 Ruby/WebKitGtk2 addition release! === Changes ==== All * Improvements * Start mswin64 support. (But it is not completed yet.) [GitHub #135] [Patch by usa] ==== Ruby/GLib2 * Improvements * Reduce needless GBoxed object copy. ==== Ruby/GdkPixbuf2 * Fixes * Fix build error by a typo. ==== Ruby/GtkSourceView2 * Improvements * Support auto RPM install on CentOS 6. ==== Ruby/GObjectIntrospection * Improvements * Add method name to arguments validation failure message. * Support specific version loading. ==== Ruby/GTK3 * Improvements * [windows] Add gschemas.compiled. [ruby-talk:406026] [Reported by Regis d'Aubarede] ==== Ruby/WebKitGtk2 * New! [GitHub #136] [Patch by eumario] === Thanks * usa * Regis d'Aubarede * eumario
jperkin
pushed a commit
that referenced
this pull request
Mar 14, 2014
Changelog: ------------------------------------------------------------- mp3splt-gtk version 0.8.2 - fixed important bug in mp3splt-gtk: split using cue file was not splitting the last part - fixed tags encoding issue in mp3splt-gtk: encode in UTF-8 tags if not valid UTF-8 - implemented "prelisten a section to its ending splitpoint" in mp3splt-gtk (feature request #98) - libmp3splt check is now more correct and checks for the exact version of libmp3splt with = instead of >=; will be changed to >= when final version of libmp3splt will be released - now using pkg-config instead of mp3splt.m4 (bug #145) - corrected build files (configure.ac, Makefile.am, ...) and check using 'make distcheck' (bug #147) ------------------------------------------------------------- mp3splt-gtk version 0.8.1 - fixed important bug: application was crashing when pushing the split button without any splitpoint (libmp3splt) - fixed important bug: split by time was in hundreths of seconds instead of seconds ------------------------------------------------------------- mp3splt-gtk version 0.8 - added tags edition from the splitpoints table - closes feature #92 - added cloning features for mass copying of tags using right click on the splitpoints table - enhanced the CUE export to export the tags as REM comments and also the splitpoint names - automatically save & restore splitpoints in '~/.mp3splt-gtk/splitpoints.cue' - better amplitude wave display (wave does not "shake" anymore) - done issue #37 & #138 - nicer GUI for the option 'same output directory as the input file' - fixed amplitude wave to be more precise with ogg vorbis files (libmp3splt) - fixed important bug on mp3splt-gtk 'Queue to player' button - fixed bug #128 - hash symbol in filename breaks the player - done feature #38 - reorder filenames in mp3splt-gtk (description_here_partXX) - fixed bug #133 - updated GPLv2 COPYING file - fixed bug #137 - autogen.sh should run libtoolize before aclocal/automake - fixed bug #143 - be able to add splitpoint at the end from the player - fixed bug #136 - various compilation issues - fixed issue #90 - added back the icons to split preview and play preview in the splitpoints table - added a lot of tooltip and GUI renamings - done feature #91 - amplitude wave now persists in preferences - added one more interpolation level for the amplitude wave (level 6) - more precise wave preview in preferences - fixed bug when detecting the input tags version - output had no tags when the input only had ID3v1 (libmp3splt) - fixed bug #141 - when input file is a symlink and output directory is the one of the input file (libmp3splt) - amplitude more precise with ogg vorbis files (libmp3splt) - fixed bug on mp3 trim silence scan: last frame was skipped (libmp3splt) ------------------------------------------------------------- mp3splt-gtk version 0.7.3 - redesigned the mp3splt-gtk user interface - added option to specify the wave quality in the parameters (for performance reasons) - wave interpolation is now much correct - we use the douglas peucker algorithm instead of the previous one which was stupid - added gray areas where no splitpoints - regarding #3520736 - added seek key shortcuts to the player - #1811400 & #3528001 - heavy refactoring of mp3splt-gtk code - fixed bug: removing TLEN id3v2 tag from the split files (libmp3splt) - fixed bug #3530488 - regression introduced with ogg multiple logical streams (libmp3splt) ------------------------------------------------------------- mp3splt-gtk version 0.7.2 - fixed an important bug of memory leak in player drawing when using GTK+-2 - fixed bug not showing icon and image in the about dialog - fix for the '--disable-gtk3' option; also fixed the gtk 2.x/3.x check - made some player graphic optimisations - added player refresh rate option in Preferences->Player - added expanders to the player history and player splitpoints view - we don't need gtk 2 version >= 2.20; changed it to 2.18 ------------------------------------------------------------- mp3splt-gtk version 0.7.1 - added minimum track length option for silence scan - closes #2393766 - added gtk3 support (auto detection or --enable-gtk3, --disable-gtk3) - almost closes #3385903 (some tests still need to be done) - fixed #3385841 - removed scrollkeeper warnings - fixed #3385827 - added --disable-doxygen_doc - fixed #3385829 - building doxygen documentation by itself + installing doxygen files - fixed #3385833 - don't apply debugging flags or warnings flags by default: added --enable-c-debug --enable-optimise --enable-extra-warnings - added support for multiple ogg/vorbis logical streams (mail) (libmp3splt) - fixed mp3 frame mode with skippoint when skippoint too small (on the same frame as previous) (libmp3splt) - fixed several audacity labels issues (libmp3splt) - fixed some regression regarding mp3splt v2.1c - removed some checks relative to the total time - we cannot rely on the total time - for example with concatenated mp3s (libmp3splt)
jperkin
pushed a commit
that referenced
this pull request
Mar 14, 2014
pkgsrc changes: --------------- - Depends on security/py-ecdsa - FETCH_USING=curl to deal with PyPi's htpps only website. upstream changes: ----------------- v1.12.0 (27th Sep 2013) ----------------------- * #152: Add tentative support for ECDSA keys. *This adds the ecdsa module as a new dependency of Paramiko.* The module is available at [warner/python-ecdsa on Github](https://github.com/warner/python-ecdsa) and [ecdsa on PyPI](https://pypi.python.org/pypi/ecdsa). * Note that you might still run into problems with key negotiation -- Paramiko picks the first key that the server offers, which might not be what you have in your known_hosts file. * Mega thanks to Ethan Glasser-Camp for the patch. * #136: Add server-side support for the SSH protocol's 'env' command. Thanks to Benjamin Pollack for the patch. v1.11.2 (27th Sep 2013) ----------------------- * #156: Fix potential deadlock condition when using Channel objects as sockets (e.g. when using SSH gatewaying). Thanks to Steven Noonan and Frank Arnold for catch & patch. * #179: Fix a missing variable causing errors when an ssh_config file has a non-default AddressFamily set. Thanks to Ed Marshall & Tomaz Muraus for catch & patch. * #200: Fix an exception-causing typo in `demo_simple.py`. Thanks to Alex Buchanan for catch & Dave Foster for patch. * #199: Typo fix in the license header cross-project. Thanks to Armin Ronacher for catch & patch. v1.12.0 (27th Sep 2013) ----------------------- * #152: Add tentative support for ECDSA keys. *This adds the ecdsa module as a new dependency of Paramiko.* The module is available at [warner/python-ecdsa on Github](https://github.com/warner/python-ecdsa) and [ecdsa on PyPI](https://pypi.python.org/pypi/ecdsa). * Note that you might still run into problems with key negotiation -- Paramiko picks the first key that the server offers, which might not be what you have in your known_hosts file. * Mega thanks to Ethan Glasser-Camp for the patch. * #136: Add server-side support for the SSH protocol's 'env' command. Thanks to Benjamin Pollack for the patch. v1.11.2 (27th Sep 2013) ----------------------- * #156: Fix potential deadlock condition when using Channel objects as sockets (e.g. when using SSH gatewaying). Thanks to Steven Noonan and Frank Arnold for catch & patch. * #179: Fix a missing variable causing errors when an ssh_config file has a non-default AddressFamily set. Thanks to Ed Marshall & Tomaz Muraus for catch & patch. * #200: Fix an exception-causing typo in `demo_simple.py`. Thanks to Alex Buchanan for catch & Dave Foster for patch. * #199: Typo fix in the license header cross-project. Thanks to Armin Ronacher for catch & patch.
jperkin
pushed a commit
that referenced
this pull request
Mar 14, 2014
FITS (Flexible Image Transport System) is a data format most used in astronomy. PyFITS is a Python module for reading, writing, and manipulating FITS files. The module uses Python's object-oriented features to provide quick, easy, and efficient access to FITS files. The use of Python's array syntax enables immediate access to any FITS extension, header cards, or data items. Changes to 2.4.0 (in py-pyfits): Changelog =========== 3.2 (2013-11-26) ---------------- Highlights ^^^^^^^^^^ - Rewrote CFITSIO-based backend for handling tile compression of FITS files. It now uses a standard CFITSIO instead of heavily modified pieces of CFITSIO as before. PyFITS ships with its own copy of CFITSIO v3.35 which supports the latest version of the Tiled Image Convention (v2.3), but system packagers may choose instead to strip this out in favor of a system-installed version of CFITSIO. Earlier versions may work, but nothing earlier than 3.28 has been tested yet. (#169) - Added support for reading and writing tables using the Q format for columns. The Q format is identical to the P format (variable-length arrays) except that it uses 64-bit integers for the data descriptors, allowing more than 4 GB of variable-length array data in a single table. (#160) - Added initial support for table columns containing pseudo-unsigned integers. This is currently enabled by using the ``uint=True`` option when opening files; any table columns with the correct BZERO value will be interpreted and returned as arrays of unsigned integers. - Some refactoring of the table and ``FITS_rec`` modules in order to better separate the details of the FITS binary and ASCII table data structures from the HDU data structures that encapsulate them. Most of these changes should not be apparent to users (but see API Changes below). API Changes ^^^^^^^^^^^ - Assigning to values in ``ColDefs.names``, ``ColDefs.formats``, ``ColDefs.nulls`` and other attributes of ``ColDefs`` instances that return lists of column properties is no longer supported. Assigning to those lists will no longer update the corresponding columns. Instead, please just modify the ``Column`` instances directly (``Column.name``, ``Column.null``, etc.) - The ``pyfits.new_table`` function is marked "pending deprecation". This does not mean it will be removed outright or that its functionality has changed. It will likely be replaced in the future for a function with similar, if not subtly different functionality. A better, if not slightly more verbose approach is to use ``pyfits.FITS_rec.from_columns`` to create a new ``FITS_rec`` table--this has the same interface as ``pyfits.new_table``. The difference is that it returns a plan ``FITS_rec`` array, and not an HDU instance. This ``FITS_rec`` object can then be used as the data argument in the constructors for ``BinTableHDU`` (for binary tables) or ``TableHDU`` (for ASCII tables). This is analogous to creating an ``ImageHDU`` by passing in an image array. ``pyfits.FITS_rec.from_columns`` is just a simpler way of creating a FITS-compatible recarray from a FITS column specification. - The ``updateHeader``, ``updateHeaderData``, and ``updateCompressedData`` methods of the ``CompDataHDU`` class are pending deprecation and moved to internal methods. The operation of these methods depended too much on internal state to be used safely by users; instead they are invoked automatically in the appropriate places when reading/writing compressed image HDUs. - The ``CompDataHDU.compData`` attribute is pending deprecation in favor of the clearer and more PEP-8 compatible ``CompDataHDU.compressed_data``. - The constructor for ``CompDataHDU`` has been changed to accept new keyword arguments. The new keyword arguments are essentially the same, but are in underscore_separated format rather than camelCase format. The old arguments are still pending deprecation. - The internal attributes of HDU classes ``_hdrLoc``, ``_datLoc``, and ``_datSpan`` have been replaced with ``_header_offset``, ``_data_offset``, and ``_data_size`` respectively. The old attribute names are still pending deprecation. This should only be of interest to advanced users who have created their own HDU subclasses. - The following previously deprecated functions and methods have been removed entirely: ``createCard``, ``createCardFromString``, ``upperKey``, ``ColDefs.data``, ``setExtensionNameCaseSensitive``, ``_File.getfile``, ``_TableBaseHDU.get_coldefs``, ``Header.has_key``, ``Header.ascardlist``. If you run your code with a previous version of PyFITS (>= 3.0, < 3.2) with the ``python -Wd`` argument, warnings for all deprecated interfaces still in use will be displayed. - Interfaces that were pending deprecation are now fully deprecated. These include: ``create_card``, ``create_card_from_string``, ``upper_key``, ``Header.get_history``, and ``Header.get_comment``. - The ``.name`` attribute on HDUs is now directly tied to the HDU's header, so that if ``.header['EXTNAME']`` changes so does ``.name`` and vice-versa. - The ``pyfits.file.PYTHON_MODES`` constant dict was renamed to ``pyfits.file.PYFITS_MODES`` which better reflects its purpose. This is rarely used by client code, however. Support for the old name will be removed by PyFITS 3.4. Other Changes and Additions ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - The new compression code also adds support for the ZQUANTIZ and ZDITHER0 keywords added in more recent versions of this FITS Tile Compression spec. This includes support for lossless compression with GZIP. (#198) By default no dithering is used, but the ``SUBTRACTIVE_DITHER_1`` and ``SUBTRACTIVE_DITHER_2`` methods can be enabled by passing the correct constants to the ``quantize_method`` argument to the ``CompImageHDU`` constuctor. A seed can be manually specified, or automatically generated using either the system clock or checksum-based methods via the ``dither_seed`` argument. See the documentation for ``CompImageHDU`` for more details. (#198) (spacetelescope/PYFITS#32) - Images compressed with the Tile Compression standard can now be larger than 4 GB through support of the Q format. (#159) - All HDUs now have a ``.ver`` ``.level`` attribute that returns the value of the EXTVAL and EXTLEVEL keywords from that HDU's header, if the exist. This was added for consistency with the ``.name`` attribute which returns the EXTNAME value from the header. - Then ``Column`` and ``ColDefs`` classes have new ``.dtype`` attributes which give the Numpy dtype for the column data in the first case, and the full Numpy compound dtype for each table row in the latter case. - There was an issue where new tables created defaulted the values in all string columns to '0.0'. Now string columns are filled with empty strings by default--this seems a less surprising default, but it may cause differences with tables created with older versions of PyFITS. - Improved round-tripping and preservation of manually assigned column attributes (``TNULLn``, ``TSCALn``, etc.) in table HDU headers. (astropy/astropy#996) Bug Fixes ^^^^^^^^^ - Binary tables containing compressed images may, optionally, contain other columns unrelated to the tile compression convention. Although this is an uncommon use case, it is permitted by the standard. (#159) - Reworked some of the file I/O routines to allow simpler, more consistent mapping between OS-level file modes ('rb', 'wb', 'ab', etc.) and the more "PyFITS-specific" modes used by PyFITS like "readonly" and "update". That is, if reading a FITS file from an open file object, it doesn't matter as much what "mode" it was opened in so long as it has the right capabilities (read/write/etc.) Also works around bugs in the Python io module in 2.6+ with regard to file modes. (spacetelescope/PyFITS#33) - Fixed an obscure issue that can occur on systems that don't have flush to memory-mapped files implemented (namely GNU Hurd). (astropy/astropy#968) 3.1.3 (2013-11-26) ------------------ - Disallowed assigning NaN and Inf floating point values as header values, since the FITS standard does not define a way to represent them in. Because this is undefined, the previous behavior did not make sense and produced invalid FITS files. (spacetelescope/PyFITS#11) - Added a workaround for a bug in 64-bit OSX that could cause truncation when writing files greater than 2^32 bytes in size. (spacetelescope/PyFITS#28) - Fixed a long-standing issue where writing binary tables did not correctly write the TFORMn keywords for variable-length array columns (they ommitted the max array length parameter of the format). This was thought fixed in v3.1.2, but it was only fixed there for compressed image HDUs and not for binary tables in general. - Fixed an obscure issue that can occur on systems that don't have flush to memory-mapped files implemented (namely GNU Hurd). (Backported from 3.2) 3.0.12 (2013-11-26) ------------------- - Disallowed assigning NaN and Inf floating point values as header values, since the FITS standard does not define a way to represent them in. Because this is undefined, the previous behavior did not make sense and produced invalid FITS files. (Backported from 3.1.3) - Added a workaround for a bug in 64-bit OSX that could cause truncation when writing files greater than 2^32 bytes in size. (Backported from 3.1.3) - Fixed a long-standing issue where writing binary tables did not correctly write the TFORMn keywords for variable-length array columns (they ommitted the max array length parameter of the format). This was thought fixed in v3.1.2, but it was only fixed there for compressed image HDUs and not for binary tables in general. (Backported from 3.1.3) - Fixed an obscure issue that can occur on systems that don't have flush to memory-mapped files implemented (namely GNU Hurd). (Backported from 3.2) 3.1.2 (2013-04-22) ------------------ - When an error occurs opening a file in fitsdiff the exception message will now at least mention which file had the error. (#168) - Fixed support for opening gzipped FITS files by filename in a writeable mode (PyFITS has supported writing to gzip files for some time now, but only enabled it when GzipFile objects were passed to ``pyfits.open()`` due to some legacy code preventing full gzip support. (#195) - Added a more helpful error message in the case of malformatted FITS files that contain non-float NULL values in an ASCII table but are missing the required TNULLn keywords in the header. (#197) - Fixed an (apparently long-standing) issue where writing compressed images did not correctly write the TFORMn keywords for variable-length array columns (they ommitted the max array length parameter of the format). (#199) - Slightly refactored how tables containing variable-length array columns are handled to add two improvements: Fixes an issue where accessing the data after a call to the `pyfits.getdata` convenience function caused an exception, and allows the VLA data to be read from an existing mmap of the FITS file. (#200) - Fixed a bug that could occur when opening a table containing multi-dimensional columns (i.e. via the TDIMn keyword) and then writing it out to a new file. (#201) - Added use of the console_scripts entry point to install the fitsdiff and fitscheck scripts, which if nothing else provides better Windows support. The generated scripts now override the ones explicitly defined in the scripts/ directory (which were just trivial stubs to begin with). (#202) - Fixed a bug on Python 3 where attempting to open a non-existent file on Python 3 caused a seemingly unrelated traceback. (#203) - Fixed a bug in fitsdiff that reported two header keywords containing NaN as value as different. (#204) - Fixed an issue in the tests that caused some tests to fail if pyfits is installed with read-only permissions. (#208) - Fixed a bug where instantiating a ``BinTableHDU`` from a numpy array containing boolean fields converted all the values to ``False``. (#215) - Fixed an issue where passing an array of integers into the constructor of ``Column()`` when the column type is floats of the same byte width caused the column array to become garbled. (#218) - Fixed inconsistent behavior in creating CONTINUE cards from byte strings versus unicode strings in Python 2--CONTINUE cards can now be created properly from unicode strings (so long as they are convertable to ASCII). (spacetelescope/PyFITS#1) - Fixed a couple cases where creating a new table using TDIMn in some of the columns could caused a crash. (spacetelescope/PyFITS#3) - Fixed a bug in parsing HIERARCH keywords that do not have a space after the first equals sign (before the value). (spacetelescope/PyFITS#5) - Prevented extra leading whitespace on HIERARCH keywords from being treated as part of the keyword. (spacetelescope/PyFITS#6) - Fixed a bug where HIERARCH keywords containing lower-case letters was mistakenly marked as invalid during header validation. (spacetelescope/PyFITS#7) - Fixed an issue that was ancillary to (spacetelescope/PyFITS#7) where the ``Header.index()`` method did not work correctly with HIERARCH keywords containing lower-case letters. 3.0.11 (2013-04-17) ------------------- - Fixed support for opening gzipped FITS files by filename in a writeable mode (PyFITS has supported writing to gzip files for some time now, but only enabled it when GzipFile objects were passed to ``pyfits.open()`` due to some legacy code preventing full gzip support. Backported from 3.1.2. (#195) - Added a more helpful error message in the case of malformatted FITS files that contain non-float NULL values in an ASCII table but are missing the required TNULLn keywords in the header. Backported from 3.1.2. (#197) - Fixed an (apparently long-standing) issue where writing compressed images did not correctly write the TFORMn keywords for variable-length array columns (they ommitted the max array length parameter of the format). Backported from 3.1.2. (#199) - Slightly refactored how tables containing variable-length array columns are handled to add two improvements: Fixes an issue where accessing the data after a call to the `pyfits.getdata` convenience function caused an exception, and allows the VLA data to be read from an existing mmap of the FITS file. Backported from 3.1.2. (#200) - Fixed a bug that could occur when opening a table containing multi-dimensional columns (i.e. via the TDIMn keyword) and then writing it out to a new file. Backported from 3.1.2. (#201) - Fixed a bug on Python 3 where attempting to open a non-existent file on Python 3 caused a seemingly unrelated traceback. Backported from 3.1.2. (#203) - Fixed a bug in fitsdiff that reported two header keywords containing NaN as value as different. Backported from 3.1.2. (#204) - Fixed an issue in the tests that caused some tests to fail if pyfits is installed with read-only permissions. Backported from 3.1.2. (#208) - Fixed a bug where instantiating a ``BinTableHDU`` from a numpy array containing boolean fields converted all the values to ``False``. Backported from 3.1.2. (#215) - Fixed an issue where passing an array of integers into the constructor of ``Column()`` when the column type is floats of the same byte width caused the column array to become garbled. Backported from 3.1.2. (#218) - Fixed a couple cases where creating a new table using TDIMn in some of the columns could caused a crash. Backported from 3.1.2. (spacetelescope/PyFITS#3) 3.1.1 (2013-01-02) ------------------ This is a bug fix release for the 3.1.x series. Bug Fixes ^^^^^^^^^ - Improved handling of scaled images and pseudo-unsigned integer images in compressed image HDUs. They now work more transparently like normal image HDUs with support for the ``do_not_scale_image_data`` and ``uint`` options, as well as ``scale_back`` and ``save_backup``. The ``.scale()`` method works better too. (#88) - Permits non-string values for the EXTNAME keyword when reading in a file, rather than throwing an exception due to the malformatting. Added verification for the format of the EXTNAME keyword when writing. (#96) - Added support for EXTNAME and EXTVER in PRIMARY HDUs. That is, if EXTNAME is specified in the header, it will also be reflected in the ``.name`` attribute and in ``pyfits.info()``. These keywords used to be verboten in PRIMARY HDUs, but the latest version of the FITS standard allows them. (#151) - HCOMPRESS can again be used to compress data cubes (and higher-dimensional arrays) so long as the tile size is effectively 2-dimensional. In fact, PyFITS will automatically use compatible tile sizes even if they're not explicitly specified. (#171) - Added support for the optional ``endcard`` parameter in the ``Header.fromtextfile()`` and ``Header.totextfile()`` methods. Although ``endcard=False`` was a reasonable default assumption, there are still text dumps of FITS headers that include the END card, so this should have been more flexible. (#176) - Fixed a crash when running fitsdiff on two empty (that is, zero row) tables. (#178) - Fixed an issue where opening files containing random groups HDUs in update mode could cause an unnecessary rewrite of the file even if none of the data is modified. (#179) - Fixed a bug that could caused a deadlock in the filesystem on OSX if PyFITS is used with Numpy 1.7 in some cases. (#180) - Fixed a crash when generating diff reports from diffs using the ``ignore_comments`` options. (#181) - Fixed some bugs with WCS Paper IV record-valued keyword cards: - Cards that looked kind of like RVKCs but were not intended to be were over-permissively treated as such--commentary keywords like COMMENT and HISTORY were particularly affected. (#183) - Looking up a card in a header by its standard FITS keyword only should always return the raw value of that card. That way cards containing values that happen to valid RVKCs but were not intended to be will still be treated like normal cards. (#184) - Looking up a RVKC in a header with only part of the field-specifier (for example "DP1.AXIS" instead of "DP1.AXIS.1") was implicitly treated as a wildcard lookup. (#184) - Fixed a crash when diffing two FITS files where at least one contains a compressed image HDU which was not recognized as an image instead of a table. (#187) - Fixed bugs in the backwards compatibility layer for the ``CardList.index`` and ``CardList.count`` methods. (#190) - Improved ``__repr__`` and text file representation of cards with long values that are split into CONTINUE cards. (#193) - Fixed a crash when trying to assign a long (> 72 character) value to blank ('') keywords. This also changed how blank keywords are represented--there are still exactly 8 spaces before any commentary content can begin; this *may* affect the exact display of header cards that assumed there could be fewer spaces in a blank keyword card before the content begins. However, the current approach is more in line with the requirements of the FITS standard. (#194) 3.0.10 (2013-01-02) ------------------- - Improved handling of scaled images and pseudo-unsigned integer images in compressed image HDUs. They now work more transparently like normal image HDUs with support for the ``do_not_scale_image_data`` and ``uint`` options, as well as ``scale_back`` and ``save_backup``. The ``.scale()`` method works better too. Backported from 3.1.1. (#88) - Permits non-string values for the EXTNAME keyword when reading in a file, rather than throwing an exception due to the malformatting. Added verification for the format of the EXTNAME keyword when writing. Backported from 3.1.1. (#96) - Added support for EXTNAME and EXTVER in PRIMARY HDUs. That is, if EXTNAME is specified in the header, it will also be reflected in the ``.name`` attribute and in ``pyfits.info()``. These keywords used to be verbotten in PRIMARY HDUs, but the latest version of the FITS standard allows them. Backported from 3.1.1. (#151) - HCOMPRESS can again be used to compress data cubes (and higher-dimensional arrays) so long as the tile size is effectively 2-dimensional. In fact, PyFITS will not automatically use compatible tile sizes even if they're not explicitly specified. Backported from 3.1.1. (#171) - Fixed a bug when writing out files containing zero-width table columns, where the TFIELDS keyword would be updated incorrectly, leaving the table largely unreadable. Backported from 3.1.0. (#174) - Fixed an issue where opening files containing random groups HDUs in update mode could cause an unnecessary rewrite of the file even if none of the data is modified. Backported from 3.1.1. (#179) - Fixed a bug that could caused a deadlock in the filesystem on OSX if PyFITS is used with Numpy 1.7 in some cases. Backported from 3.1.1. (#180) 3.1 (2012-08-08) ---------------- Highlights ^^^^^^^^^^ - The ``Header`` object has been significantly reworked, and ``CardList`` objects are now deprecated (their functionality folded into the ``Header`` class). See API Changes below for more details. - Memory maps are now used by default to access HDU data. See API Changes below for more details. - Now includes a new version of the ``fitsdiff`` program for comparing two FITS files, and a new FITS comparison API used by ``fitsdiff``. See New Features below. API Changes ^^^^^^^^^^^ - The ``Header`` class has been rewritten, and the ``CardList`` class is deprecated. Most of the basic details of working with FITS headers are unchanged, and will not be noticed by most users. But there are differences in some areas that will be of interest to advanced users, and to application developers. For full details of the changes, see the "Header Interface Transition Guide" section in the PyFITS documentation. See ticket #64 on the PyFITS Trac for futher details and background. Some highlights are listed below: * The Header class now fully implements the Python dict interface, and can be used interchangably with a dict, where the keys are header keywords. * New keywords can be added to the header using normal keyword assignment (previously it was necessary to use ``Header.update`` to add new keywords). For example:: >>> header['NAXIS'] = 2 will update the existing 'FOO' keyword if it already exists, or add a new one if it doesn't exist, just like a dict. * It is possible to assign both a value and a comment at the same time using a tuple:: >>> header['NAXIS'] = (2, 'Number of axes') * To add/update a new card and ensure it's added in a specific location, use ``Header.set()``:: >>> header.set('NAXIS', 2, 'Number of axes', after='BITPIX') This works the same as the old ``Header.update()``. ``Header.update()`` still works in the old way too, but is deprecated. * Although ``Card`` objects still exist, it generally is not necessary to work with them directly. ``Header.ascardlist()``/``Header.ascard`` are deprecated and should not be used. To directly access the ``Card`` objects in a header, use ``Header.cards``. * To access card comments, it is still possible to either go through the card itself, or through ``Header.comments``. For example:: >>> header.cards['NAXIS'].comment Number of axes >>> header.comments['NAXIS'] Number of axes * ``Card`` objects can now be used interchangeably with ``(keyword, value, comment)`` 3-tuples. They still have ``.value`` and ``.comment`` attributes as well. The ``.key`` attribute has been renamed to ``.keyword`` for consistency, though ``.key`` is still supported (but deprecated). - Memory mapping is now used by default to access HDU data. That is, ``pyfits.open()`` uses ``memmap=True`` as the default. This provides better performance in the majority of use cases--there are only some I/O intensive applications where it might not be desirable. Enabling mmap by default also enabled finding and fixing a large number of bugs in PyFITS' handling of memory-mapped data (most of these bug fixes were backported to PyFITS 3.0.5). (#85) * A new ``pyfits.USE_MEMMAP`` global variable was added. Set ``pyfits.USE_MEMMAP = False`` to change the default memmap setting for opening files. This is especially useful for controlling the behavior in applications where pyfits is deeply embedded. * Likewise, a new ``PYFITS_USE_MEMMAP`` environment variable is supported. Set ``PYFITS_USE_MEMMAP = 0`` in your environment to change the default behavior. - The ``size()`` method on HDU objects is now a ``.size`` property--this returns the size in bytes of the data portion of the HDU, and in most cases is equivalent to ``hdu.data.nbytes`` (#83) - ``BinTableHDU.tdump`` and ``BinTableHDU.tcreate`` are deprecated--use ``BinTableHDU.dump`` and ``BinTableHDU.load`` instead. The new methods output the table data in a slightly different format from previous versions, which places quotes around each value. This format is compatible with data dumps from previous versions of PyFITS, but not vice-versa due to a parsing bug in older versions. - Likewise the ``pyfits.tdump`` and ``pyfits.tcreate`` convenience function versions of these methods have been renamed ``pyfits.tabledump`` and ``pyfits.tableload``. The old deprecated, but currently retained for backwards compatibility. (r1125) - A new global variable ``pyfits.EXTENSION_NAME_CASE_SENSITIVE`` was added. This serves as a replacement for ``pyfits.setExtensionNameCaseSensitive`` which is not deprecated and may be removed in a future version. To enable case-sensitivity of extension names (i.e. treat 'sci' as distict from 'SCI') set ``pyfits.EXTENSION_NAME_CASE_SENSITIVE = True``. The default is ``False``. (r1139) - A new global configuration variable ``pyfits.STRIP_HEADER_WHITESPACE`` was added. By default, if a string value in a header contains trailing whitespace, that whitespace is automatically removed when the value is read. Now if you set ``pyfits.STRIP_HEADER_WHITESPACE = False`` all whitespace is preserved. (#146) - The old ``classExtensions`` extension mechanism (which was deprecated in PyFITS 3.0) is removed outright. To our knowledge it was no longer used anywhere. (r1309) - Warning messages from PyFITS issued through the Python warnings API are now output to stderr instead of stdout, as is the default. PyFITS no longer modifies the default behavior of the warnings module with respect to which stream it outputs to. (r1319) - The ``checksum`` argument to ``pyfits.open()`` now accepts a value of 'remove', which causes any existing CHECKSUM/DATASUM keywords to be ignored, and removed when the file is saved. New Features ^^^^^^^^^^^^ - Added support for the proposed "FITS" extension HDU type. See http://listmgr.cv.nrao.edu/pipermail/fitsbits/2002-April/001094.html. FITS HDUs contain an entire FITS file embedded in their data section. `FitsHDU` objects work like other HDU types in PyFITS. Their ``.data`` attribute returns the raw data array. However, they have a special ``.hdulist`` attribute which processes the data as a FITS file and returns it as an in-memory HDUList object. FitsHDU objects also support a ``FitsHDU.fromhdulist()`` classmethod which returns a new `FitsHDU` object that embeds the supplied HDUList. (#80) - Added a new ``.is_image`` attribute on HDU objects, which is True if the HDU data is an 'image' as opposed to a table or something else. Here the meaning of 'image' is fairly loose, and mostly just means a Primary or Image extension HDU, or possibly a compressed image HDU (#71) - Added an ``HDUList.fromstring`` classmethod which can parse a FITS file already in memory and instantiate and ``HDUList`` object from it. This could be useful for integrating PyFITS with other libraries that work on FITS file, such as CFITSIO. It may also be useful in streaming applications. The name is a slight misnomer, in that it actually accepts any Python object that implements the buffer interface, which includes ``bytes``, ``bytearray``, ``memoryview``, ``numpy.ndarray``, etc. (#90) - Added a new ``pyfits.diff`` module which contains facilities for comparing FITS files. One can use the ``pyfits.diff.FITSDiff`` class to compare two FITS files in their entirety. There is also a ``pyfits.diff.HeaderDiff`` class for just comparing two FITS headers, and other similar interfaces. See the PyFITS Documentation for more details on this interface. The ``pyfits.diff`` module powers the new ``fitsdiff`` program installed with PyFITS. After installing PyFITS, run ``fitsdiff --help`` for usage details. - ``pyfits.open()`` now accepts a ``scale_back`` argument. If set to ``True``, this automatically scales the data using the original BZERO and BSCALE parameters the file had when it was first opened, if any, as well as the original BITPIX. For example, if the original BITPIX were 16, this would be equivalent to calling ``hdu.scale('int16', 'old')`` just before calling ``flush()`` or ``close()`` on the file. This option applies to all HDUs in the file. (#120) - ``pyfits.open()`` now accepts a ``save_backup`` argument. If set to ``True``, this automatically saves a backup of the original file before flushing any changes to it (this of course only applies to update and append mode). This may be especially useful when working with scaled image data. (#121) Changes in Behavior ^^^^^^^^^^^^^^^^^^^ - Warnings from PyFITS are not output to stderr by default, instead of stdout as it has been for some time. This is contrary to most users' expectations and makes it more difficult for them to separate output from PyFITS from the desired output for their scripts. (r1319) Bug Fixes ^^^^^^^^^ - Fixed ``pyfits.tcreate()`` (now ``pyfits.tableload()``) to be more robust when encountering blank lines in a column definition file (#14) - Fixed a fairly rare crash that could occur in the handling of CONTINUE cards when using Numpy 1.4 or lower (though 1.4 is the oldest version supported by PyFITS). (r1330) - Fixed ``_BaseHDU.fromstring`` to actually correctly instantiate an HDU object from a string/buffer containing the header and data of that HDU. This allowed for the implementation of ``HDUList.fromstring`` described above. (#90) - Fixed a rare corner case where, in some use cases, (mildly, recoverably) malformatted float values in headers were not properly returned as floats. (#137) - Fixed a corollary to the previous bug where float values with a leading zero before the decimal point had the leading zero unnecessarily removed when saving changes to the file (eg. "0.001" would be written back as ".001" even if no changes were otherwise made to the file). (#137) - When opening a file containing CHECKSUM and/or DATASUM keywords in update mode, the CHECKSUM/DATASUM are updated and preserved even if the file was opened with checksum=False. This change in behavior prevents checksums from being unintentionally removed. (#148) - Fixed a bug where ``ImageHDU.scale(option='old')`` wasn't working at all--it was not restoring the image to its original BSCALE and BZERO values. (#162) - Fixed a bug when writing out files containing zero-width table columns, where the TFIELDS keyword would be updated incorrectly, leaving the table largely unreadable. This fix will be backported to the 3.0.x series in version 3.0.10. (#174) 3.0.9 (2012-08-06) ------------------ This is a bug fix release for the 3.0.x series. Bug Fixes ^^^^^^^^^ - Fixed ``Header.values()``/``Header.itervalues()`` and ``Header.items()``/ ``Header.iteritems()`` to correctly return the different values for duplicate keywords (particularly commentary keywords like HISTORY and COMMENT). This makes the old Header implementation slightly more compatible with the new implementation in PyFITS 3.1. (#127) .. note:: This fix did not change the existing behavior from earlier PyFITS versions where ``Header.keys()`` returns all keywords in the header with duplicates removed. PyFITS 3.1 changes that behavior, so that ``Header.keys()`` includes duplicates. - Fixed a bug where ``ImageHDU.scale(option='old')`` wasn't working at all--it was not restoring the image to its original BSCALE and BZERO values. (#162) - Fixed a bug where opening a file containing compressed image HDUs in 'update' mode and then immediately closing it without making any changes caused the file to be rewritten unncessarily. (#167) - Fixed two memory leaks that could occur when writing compressed image data, or in some cases when opening files containing compressed image HDUs in 'update' mode. (#168) 3.0.8 (2012-06-04) ------------------ Changes in Behavior ^^^^^^^^^^^^^^^^^^^ - Prior to this release, image data sections did not work with scaled data--that is, images with non-trivial BSCALE and/or BZERO values. Previously, in order to read such images in sections, it was necessary to manually apply the BSCALE+BZERO to each section. It's worth noting that sections *did* support pseudo-unsigned ints (flakily). This change just extends that support for general BSCALE+BZERO values. Bug Fixes ^^^^^^^^^ - Fixed a bug that prevented updates to values in boolean table columns from being saved. This turned out to be a symptom of a deeper problem that could prevent other table updates from being saved as well. (#139) - Fixed a corner case in which a keyword comment ending with the string "END" could, in some circumstances, cause headers (and the rest of the file after that point) to be misread. (#142) - Fixed support for scaled image data and psuedo-unsigned ints in image data sections (``hdu.section``). Previously this was not supported at all. At some point support was supposedly added, but it was buggy and incomplete. Now the feature seems to work much better. (#143) - Fixed the documentation to point out that image data sections *do* support non-contiguous slices (and have for a long time). The documentation was never updated to reflect this, and misinformed users that only contiguous slices were supported, leading to some confusion. (#144) - Fixed a bug where creating an ``HDUList`` object containing multiple PRIMARY HDUs caused an infinite recursion when validating the object prior to writing to a file. (#145) - Fixed a rare but serious case where saving an update to a file that previously had a CHECKSUM and/or DATASUM keyword, but removed the checksum in saving, could cause the file to be slightly corrupted and unreadable. (#147) - Fixed problems with reading "non-standard" FITS files with primary headers containing SIMPLE = F. PyFITS has never made many guarantees as to how such files are handled. But it should at least be possible to read their headers, and the data if possible. Saving changes to such a file should not try to prepend an unwanted valid PRIMARY HDU. (#157) - Fixed a bug where opening an image with ``disable_image_compression = True`` caused compression to be disabled for all subsequent ``pyfits.open()`` calls. (r1651) 3.0.7 (2012-04-10) ------------------ Changes in Behavior ^^^^^^^^^^^^^^^^^^^ - Slices of GroupData objects now return new GroupData objects instead of extended multi-row _Group objects. This is analogous to how PyFITS 3.0 fixed FITS_rec slicing, and should have been fixed for GroupData at the same time. The old behavior caused bugs where functions internal to Numpy expected that slicing an ndarray would return a new ndarray. As this is a rare usecase with a rare feature most users are unlikely to be affected by this change. - The previously internal _Group object for representing individual group records in a GroupData object are renamed Group and are now a public interface. However, there's almost no good reason to create Group objects directly, so it shouldn't be considered a "new feature". - An annoyance from PyFITS 3.0.6 was fixed, where the value of the EXTEND keyword was always being set to F if there are not actually any extension HDUs. It was unnecessary to modify this value. Bug Fixes ^^^^^^^^^ - Fixed GroupData objects to return new GroupData objects when sliced instead of _Group record objects. See "Changes in behavior" above for more details. - Fixed slicing of Group objects--previously it was not possible to slice slice them at all. - Made it possible to assign `np.bool_` objects as header values. (#123) - Fixed overly strict handling of the EXTEND keyword; see "Changes in behavior" above. (#124) - Fixed many cases where an HDU's header would be marked as "modified" by PyFITS and rewritten, even when no changes to the header are necessary. (#125) - Fixed a bug where the values of the PTYPEn keywords in a random groups HDU were forced to be all lower-case when saving the file. (#130) - Removed an unnecessary inline import in `ExtensionHDU.__setattr__` that was causing some slowdown when opening files containing a large number of extensions, plus a few other small (but not insignficant) performance improvements thanks to Julian Taylor. (#133) - Fixed a regression where header blocks containing invalid end-of-header padding (i.e. null bytes instead of spaces) couldn't be parsed by PyFITS. Such headers can be parsed again, but a warning is raised, as such headers are not valid FITS. (#136) - Fixed a memory leak where table data in random groups HDUs weren't being garbage collected. (#138) 3.0.6 (2012-02-29) ------------------ Highlights ^^^^^^^^^^ The main reason for this release is to fix an issue that was introduced in PyFITS 3.0.5 where merely opening a file containing scaled data (that is, with non-trivial BSCALE and BZERO keywords) in 'update' mode would cause the data to be automatically rescaled--possibly converting the data from ints to floats--as soon as the file is closed, even if the application did not touch the data. Now PyFITS will only rescale the data in an extension when the data is actually accessed by the application. So opening a file in 'update' mode in order to modify the header or append new extensions will not cause any change to the data in existing extensions. This release also fixes a few Windows-specific bugs found through more extensive Windows testing, and other miscellaneous bugs. Bug Fixes ^^^^^^^^^ - More accurate error messages when opening files containing invalid header cards. (#109) - Fixed a possible reference cycle/memory leak that was caught through more extensive testing on Windows. (#112) - Fixed 'ostream' mode to open the underlying file in 'wb' mode instead of 'w' mode. (#112) - Fixed a Windows-only issue where trying to save updates to a resized FITS file could result in a crash due to there being open mmaps on that file. (#112) - Fixed a crash when trying to create a FITS table (i.e. with new_table()) from a Numpy array containing bool fields. (#113) - Fixed a bug where manually initializing an ``HDUList`` with a list of of HDUs wouldn't set the correct EXTEND keyword value on the primary HDU. (#114) - Fixed a crash that could occur when trying to deepcopy a Header in Python < 2.7. (#115) - Fixed an issue where merely opening a scaled image in 'update' mode would cause the data to be converted to floats when the file is closed. (#119) 3.0.5 (2012-01-30) ------------------ - Fixed a crash that could occur when accessing image sections of files opened with memmap=True. (r1211) - Fixed the inconsistency in the behavior of files opened in 'readonly' mode when memmap=True vs. when memmap=False. In the latter case, although changes to array data were not saved to disk, it was possible to update the array data in memory. On the other hand with memmap=True, 'readonly' mode prevented even in-memory modification to the data. This is what 'copyonwrite' mode was for, but difference in behavior was confusing. Now 'readonly' is equivalent to 'copyonwrite' when using memmap. If the old behavior of denying changes to the array data is necessary, a new 'denywrite' mode may be used, though it is only applicable to files opened with memmap. (r1275) - Fixed an issue where files opened with memmap=True would return image data as a raw numpy.memmap object, which can cause some unexpected behaviors--instead memmap object is viewed as a numpy.ndarray. (r1285) - Fixed an issue in Python 3 where a workaround for a bug in Numpy on Python 3 interacted badly with some other software, namely to vo.table package (and possibly others). (r1320, r1337, and #110) - Fixed buggy behavior in the handling of SIGINTs (i.e. Ctrl-C keyboard interrupts) while flushing changes to a FITS file. PyFITS already prevented SIGINTs from causing an incomplete flush, but did not clean up the signal handlers properly afterwards, or reraise the keyboard interrupt once the flush was complete. (r1321) - Fixed a crash that could occur in Python 3 when opening files with checksum checking enabled. (r1336) - Fixed a small bug that could cause a crash in the `StreamingHDU` interface when using Numpy below version 1.5. - Fixed a crash that could occur when creating a new `CompImageHDU` from an array of big-endian data. (#104) - Fixed a crash when opening a file with extra zero padding at the end. Though FITS files should not have such padding, it's not explictly forbidden by the format either, and PyFITS shouldn't stumble over it. (#106) - Fixed a major slowdown in opening tables containing large columns of string values. (#111) 3.0.4 (2011-11-22) ------------------ - Fixed a crash when writing HCOMPRESS compressed images that could happen on Python 2.5 and 2.6. (r1217) - Fixed a crash when slicing an table in a file opened in 'readonly' mode with memmap=True. (r1230) - Writing changes to a file or writing to a new file verifies the output in 'fix' mode by default instead of 'exception'--that is, PyFITS will automatically fix common FITS format errors rather than raising an exception. (r1243) - Fixed a bug where convenience functions such as getval() and getheader() crashed when specifying just 'PRIMARY' as the extension to use (r1263). - Fixed a bug that prevented passing keyword arguments (beyond the standard data and header arguments) as positional arguments to the constructors of extension HDU classes. - Fixed some tests that were failing on Windows--in this case the tests themselves failed to close some temp files and Windows refused to delete them while there were still open handles on them. (r1295) - Fixed an issue with floating point formatting in header values on Python 2.5 for Windows (and possibly other platforms). The exponent was zero-padded to 3 digits; although the FITS standard makes no specification on this, the formatting is now normalized to always pad the exponent to two digits. (r1295) - Fixed a bug where long commentary cards (such as HISTORY and COMMENT) were broken into multiple CONTINUE cards. However, commentary cards are not expected to be found in CONTINUE cards. Instead these long cards are broken into multiple commentary cards. (#97) - GZIP/ZIP-compressed FITS files can be detected and opened regardless of their filename extension. (#99) - Fixed a serious bug where opening scaled images in 'update' mode and then closing the file without touching the data would cause the file to be corrupted. (#101) 3.0.3 (2011-10-05) ------------------ - Fixed several small bugs involving corner cases in record-valued keyword cards (#70) - In some cases HDU creation failed if the first keyword value in the header was not a string value (#89) - Fixed a crash when trying to compute the HDU checksum when the data array contains an odd number of bytes (#91) - Disabled an unnecessary warning that was displayed on opening compressed HDUs with disable_image_compression = True (#92) - Fixed a typo in code for handling HCOMPRESS compressed images. 3.0.2 (2011-09-23) ------------------ - The ``BinTableHDU.tcreate`` method and by extension the ``pyfits.tcreate`` function don't get tripped up by blank lines anymore (#14) - The presence, value, and position of the EXTEND keyword in Primary HDUs is verified when reading/writing a FITS file (#32) - Improved documentation (in warning messages as well as in the handbook) that PyFITS uses zero-based indexing (as one would expect for C/Python code, but contrary to the PyFITS standard which was written with FORTRAN in mind) (#68) - Fixed a bug where updating a header card comment could cause the value to be lost if it had not already been read from the card image string. - Fixed a related bug where changes made directly to Card object in a header (i.e. assigning directly to card.value or card.comment) would not propagate when flushing changes to the file (#69) [Note: This and the bug above it were originally reported as being fixed in version 3.0.1, but the fix was never included in the release.] - Improved file handling, particularly in Python 3 which had a few small file I/O-related bugs (#76) - Fixed a bug where updating a FITS file would sometimes cause it to lose its original file permissions (#79) - Fixed the handling of TDIMn keywords; 3.0 added support for them, but got the axis order backards (they were treated as though they were row-major) (#82) - Fixed a crash when a FITS file containing scaled data is opened and immediately written to a new file without explicitly viewing the data first (#84) - Fixed a bug where creating a table with columns named either 'names' or 'formats' resulted in an infinite recursion (#86) 3.0.1 (2011-09-12) ------------------ - Fixed a bug where updating a header card comment could cause the value to be lost if it had not already been read from the card image string. - Changed ``_TableBaseHDU.data`` so that if the data contain an empty table a ``FITS_rec`` object with zero rows is returned rather than ``None``. - The ``.key`` attribute of ``RecordValuedKeywordCards`` now returns the full keyword+field-specifier value, instead of just the plain keyword (#46) - Fixed a related bug where changes made directly to Card object in a header (i.e. assigning directly to card.value or card.comment) would not propagate when flushing changes to the file (#69) - Fixed a bug where writing a table with zero rows could fail in some cases (#72) - Miscellanous small bug fixes that were causing some tests to fail, particularly on Python 3 (#74, #75) - Fixed a bug where creating a table column from an array in non-native byte order would not preserve the byte order, thus interpreting the column array using the wrong byte order (#77) 3.0.0 (2011-08-23) -------------------- - Contains major changes, bumping the version to 3.0 - Large amounts of refactoring and reorganization of the code; tried to preserve public API backwards-compatibility with older versions (private API has many changes and is not guaranteed to be backwards-compatible). There are a few small public API changes to be aware of: * The pyfits.rec module has been removed completely. If your version of numpy does not have the numpy.core.records module it is too old to be used with PyFITS. * The ``Header.ascardlist()`` method is deprecated--use the ``.ascard`` attribute instead. * ``Card`` instances have a new ``.cardimage`` attribute that should be used rather than ``.ascardimage()``, which may become deprecated. * The ``Card.fromstring()`` method is now a classmethod. It returns a new ``Card`` instance rather than modifying an existing instance. * The ``req_cards()`` method on HDU instances has changed: The ``pos`` argument is not longer a string. It is either an integer value (meaning the card's position must match that value) or it can be a function that takes the card's position as it's argument, and returns True if the position is valid. Likewise, the ``test`` argument no longer takes a string, but instead a function that validates the card's value and returns True or False. * The ``get_coldefs()`` method of table HDUs is deprecated. Use the ``.columns`` attribute instead. * The ``ColDefs.data`` attribute is deprecated--use ``ColDefs.columns`` instead (though in general you shouldn't mess with it directly--it might become internal at some point). * ``FITS_record`` objects take ``start`` and ``end`` as arguments instead of ``startColumn`` and ``endColumn`` (these are rarely created manually, so it's unlikely that this change will affect anyone). * ``BinTableHDU.tcreate()`` is now a classmethod, and returns a new ``BinTableHDU`` instance. * Use ``ExtensionHDU`` and ``NonstandardExtHDU`` for making new extension HDU classes. They are now public interfaces, wheres previously they were private and prefixed with underscores. * Possibly others--please report if you find any changes that cause difficulties. - Calls to deprecated functions will display a Deprecation warning. However, in Python 2.7 and up Deprecation warnings are ignored by default, so run Python with the `-Wd` option to see if you're using any deprecated functions. If we get close to actually removing any functions, we might make the Deprecation warnings display by default. - Added basic Python 3 support - Added support for multi-dimensional columns in tables as specified by the TDIMn keywords (#47) - Fixed a major memory leak that occurred when creating new tables with the ``new_table()`` function (#49) be padded with zero-bytes) vs ASCII tables (where strings are padded with spaces) (#15) - Fixed a bug in which the case of Random Access Group parameters names was not preserved when writing (#41) - Added support for binary table fields with zero width (#42) - Added support for wider integer types in ASCII tables; although this is non- standard, some GEIS images require it (#45) - Fixed a bug that caused the index_of() method of HDULists to crash when the HDUList object is created from scratch (#48) - Fixed the behavior of string padding in binary tables (where strings should be padded with nulls instead of spaces) - Fixed a rare issue that caused excessive memory usage when computing checksums using a non-standard block size (see r818) - Add support for forced uint data in image sections (#53) - Fixed an issue where variable-length array columns were not extended when creating a new table with more rows than the original (#54) - Fixed tuple and list-based indexing of FITS_rec objects (#55) - Fixed an issue where BZERO and BSCALE keywords were appended to headers in the wrong location (#56) - ``FITS_record`` objects (table rows) have full slicing support, including stepping, etc. (#59) - Fixed a bug where updating multiple files simultaneously (such as when running parallel processes) could lead to a race condition with mktemp() (#61) - Fixed a bug where compressed image headers were not in the order expected by the funpack utility (#62)
jperkin
pushed a commit
that referenced
this pull request
Aug 22, 2014
Last pkgsrc was version from 2002. Changes in 2.04: Add new programming language ObjectiveâC. Add new bracket style option "style=google" (-A14). Add new option "indent-preproc-cond" (xw) to indent preprocessor conditional statements (#118). Add new bracket modify options "attach-namespaces", "attach-classes", "attach-inlines", and "attach-extern-c". Add new option "indent-modifiers" (-xG) to indent class access modifiers one-half indent (#130). Add new option "remove-brackets" (-xj) to remove brackets from single line conditional statements. Add new option "remove-comment-prefix" (-xp) to remove the leading '*' from multi-line comments. Add new option "align-method-colon" (-xM) to align ObjectiveâC method colons. Add new option "pad-method-colon=#" (-xP#) to space pad ObjectiveâC method colons. Add new options "pad-method-prefix" (-xQ), and "unpad-method-prefix" (-xR) to pad the ObjectiveâC "-" and "+" method prefix. Add new dll entry point AStyleMainUtf16 for processing C# UTF-16 strings. Add formatting of C++11 raw string literals (#222). Add "style=knf" as an alternative to "style=linux". Remove depreciated "bracket=" options. Improve recognition and formatting of pointers and references (#174 and other changes). Improve the recognition of block-opening brackets. Improve code using a static code analyzer (#195). Change "max-code-length" to include ObjectiveâC methods. Change "indent-elseifs" and "break-blocks" to look ahead only if in command-type brackets (speed improvement). Fix linux bracket styles to break the opening bracket in inline function definitions (#185). Fix indentation of switch block comments (#164). Fix enums to indent with tabs when requested (#92, #121). Fix formatting of rvalue reference without a name in a declaration (#219). Fix "pad-first-paren-out" to not pad if the following parens are empty (#232). Fix end-of-statement reset when comments follow closing bracket. Fix the ASBeautifier active and waiting stacks to delete the ASBeautifier objects before deleting the pointers. Fix ASBeautifier "init" to delete the tempStack vectors before deleting the tempStack. Fix Linux piping problem by changing "cin" input to build a stringstream before formatting. Fix to identify the correct bracket type when 'extern "C"' is part of the enum definition. Fix to clear 'extern "C"' variables when the block is closed. Fix unindented 'extern "C"' to not indent when in a #else preprocessor directive. Fix not always correctly formatting linux type brackets for enum blocks. Fix align-pointer in a range-based for statement (#217). Fix pointer-reference argument alignment to correctly position a following comment (#235). Fix to not attach a bracket to a line ending in a backslash '\' (#186, #214, #220). Fix to recognize templates using multiple lines (#85, #87, #136). Fix formatting of template continuation lines (#85, #87, #136). Fix to allow '^' as an array operator (#233). Fix an "enum" argument being mistaken for an enumeration (#211). Fix to recognize a non-instatement array after a "},{" sequence. Fix "pad-oper" to not pad before a following comma. Fix recognition of an operator when the calculation contains a bitwise "not" '~' (#166). Fix to allow a preprocessor statement within a preprocessor define (#238). Fix preprocessor comparison to check for whole words (#246). Fix "add-brackets" when a line contains more than one paren pairs (#181). Fix to allow Mac old CR line endings in the options file (#129). Refactor to aid debugging and improve design and decomposition: Move ALL preliminary indentation calculations to computePreliminaryIndentation() in ASBeautifier. Move calculation of 'force tab' indents to preLineWS() in ASBeautifier. Combine methods init() and init(ASSourceIterator*) in ASBeautifier. Extract method adjustParsedLineIndentation() in ASBeautifier. Extract method parseCurrentLine() in ASEnhancer. Remove astyle_main.cpp unused functions getFilesUnchanged, getOptionsFileRequired, and setOptionsFileRequired. Older changes included in distfile, or available on http://astyle.sourceforge.net/notes.html
jperkin
pushed a commit
that referenced
this pull request
Mar 5, 2015
Version 7.41.0 (25 Feb 2015) Daniel Stenberg (25 Feb 2015) - THANKS: added contributors from the 7.41.0 RELEASE-NOTES - RELEASE-NOTES: sync with ffc2aeec6e (7.41.0 release time!) Marc Hoersken (25 Feb 2015) - Revert "telnet.c: fix handling of 0 being returned from custom read function" This reverts commit 03fa576833643c67579ae216c4e7350fa9b5f2fe. - telnet.c: fix invalid use of custom read function if not being set obj_count can be 1 if the custom read function is set or the stdin handle is a reference to a pipe. Since the pipe should be handled using the PeekNamedPipe-check below, the custom read function should only be used if it is actually enabled. - telnet.c: fix handling of 0 being returned from custom read function According to [1]: "Returning 0 will signal end-of-file to the library and cause it to stop the current transfer." This change makes the Windows telnet code handle this case accordingly. [1] http://curl.haxx.se/libcurl/c/CURLOPT_READFUNCTION.html Daniel Stenberg (24 Feb 2015) - sws: stop logging about TPC_NODELAY nonsense - lib530: make it less timing sensible ... by making sure the first request is completed before doing the remainder. Kamil Dudka (23 Feb 2015) - connect: wait for IPv4 connection attempts ... even if the last IPv6 connection attempt has failed. Bug: https://bugzilla.redhat.com/show_bug.cgi?id=1187531#c4 - connect: avoid skipping an IPv4 address ... in case the protocol versions are mixed in a DNS response (IPv6 -> IPv4 -> IPv6). Bug: https://bugzilla.redhat.com/show_bug.cgi?id=1187531#c3 Daniel Stenberg (23 Feb 2015) - RELEASE-NOTES: synced with 5e4395eab839d - ROADMAP: curl_easy_setopt.3 has already been split up Remove cmake as marked for removal. It is in much better state now. - ROADMAP: extend the HTTP/2 stuff, remove SPDY - [Julian Ospald brought this change] configure: allow both --with-ca-bundle and --with-ca-path SSL_CTX_load_verify_locations by default (and if given non-Null parameters) searches the CAfile first and falls back to CApath. This allows for CAfile to be a basis (e.g. installed by the package manager) and CApath to be a user configured directory. This wasn't reflected by the previous configure constraint which this patch fixes. Bug: curl/curl#139 - [Ben Boeckel brought this change] cmake: install the dll file to the correct directory - [Alessandro Ghedini brought this change] nss: fix NPN/ALPN protocol negotiation Correctly check for memcmp() return value (it returns 0 if the strings match). This is not really important, since curl is going to use http/1.1 anyway, but it's still a bug I guess. - [Alessandro Ghedini brought this change] polarssl: fix ALPN protocol negotiation Correctly check for strncmp() return value (it returns 0 if the strings match). - [Sergei Nikulov brought this change] CMake: Fix generation of tool_hugehelp.c on windows Use "cmake -E echo" instead of "echo". Reviewed-by: Brad King <[email protected]> - [Sergei Nikulov brought this change] CMake: fix winsock2 detection on windows Set CMAKE_REQUIRED_DEFINITIONS to include definitions needed to get the winsock2 API from windows.h. Simplify the order of checks to avoid extra conditions. Use check_include_file instead of check_include_file_concat to look for OpenSSL headers. They do not need to participate in a sequence of dependent system headers. Also they may cause winsock.h to be included before ws2tcpip.h, causing the latter to not be detected in the sequence. Reviewed-by: Brad King <[email protected]> - [Alessandro Ghedini brought this change] gtls: fix build with HTTP2 Steve Holme (16 Feb 2015) - Makefile.vc6: Corrected typos in rename of darwinssl.obj Nick Zitzmann (15 Feb 2015) - By request, change the name of "curl_darwinssl.[ch]" to "darwinssl.[ch]" Steve Holme (14 Feb 2015) - RELEASE-NOTES: Synced with 6f89f86c3d - tests/README: Updated to reflect email test ranges - [Alessandro Ghedini brought this change] curl.1: --cert-status is also supported by OpenSSL now - build: Removed Visual Studio SuppressStartupBanner directive for VC8+ Visual Studio 2005 and above defaults to disabling the startup banner for the Compiler, Linker and MIDL tools (with /NOLOGO). As such there is no need to explicitly set the SuppressStartupBanner directive, as this is a leftover from the VC7 and VC7.1 projects being upgraded to VC8 and above. Kamil Dudka (12 Feb 2015) - openssl: fix a compile-time warning lib/vtls/openssl.c:1450:7: warning: extra tokens at end of #endif directive Steve Holme (11 Feb 2015) - openssl: Use OPENSSL_IS_BORINGSSL for BoringSSL detection For consistency with other conditionally compiled code in openssl.c, use OPENSSL_IS_BORINGSSL rather than HAVE_BORINGSSL and try to use HAVE_BORINGSSL outside of openssl.c when the OpenSSL header files are not included. Patrick Monnerat (11 Feb 2015) - ftp: accept all 2xx responses to the PORT command Steve Holme (9 Feb 2015) - openssl: Disable OCSP in old versions of OpenSSL Versions of OpenSSL prior to v0.9.8h do not support the necessary functions for OCSP stapling. Daniel Stenberg (9 Feb 2015) - [Tatsuhiro Tsujikawa brought this change] http2: Fix bug that associated stream canceled on PUSH_PROMISE Previously we don't ignore PUSH_PROMISE header fields in on_header callback. It makes header values mixed with following HEADERS, resulting protocol error. - [Jay Satiro brought this change] polarssl: Fix exclusive SSL protocol version options Prior to this change the options for exclusive SSL protocol versions did not actually set the protocol exclusive. http://curl.haxx.se/mail/lib-2015-01/0002.html Reported-by: Dan Fandrich - [Jay Satiro brought this change] gskit: Fix exclusive SSLv3 option - curl.1: clarify that -X is used for all requests Reported-by: Jon Seymour - curl.1: add warning when using -H and redirects Steve Holme (7 Feb 2015) - schannel: Removed curl_ prefix from source files Removed the curl_ prefix from the schannel source files as discussed with Marc and Daniel at FOSDEM. Daniel Stenberg (6 Feb 2015) - md5: use axTLS's own MD5 functions when available - MD(4|5): make the MD4_* and MD5_* functions static - axtls: fix conversion from size_t to int warning Steve Holme (5 Feb 2015) - ftp: Use 'CURLcode result' for curl result codes Daniel Stenberg (5 Feb 2015) - openssl: SSL_SESSION->ssl_version no longer exist The struct went private in 1.0.2 so we cannot read the version number from there anymore. Use SSL_version() instead! Reported-by: Gisle Vanem Bug: http://curl.haxx.se/mail/lib-2015-02/0034.html Dan Fandrich (4 Feb 2015) - unit1600: Fix compilation when NTLM is disabled Daniel Stenberg (4 Feb 2015) - MD5: fix compiler warnings and code style nits - MD5: replace implementation The previous one was "encumbered" by RSA Inc - to avoid the licensing restrictions it has being replaced. This is the initial import, inserting the md5.c and md5.h files from http://openwall.info/wiki/people/solar/software/public-domain-source-code/md5 Code-by: Alexander Peslyak - MD4: fix compiler warnings and code style nits - MD4: replace implementation The previous one was "encumbered" by RSA Inc - to avoid the licensing restrictions it has being replaced. This is the initial import, inserting the md4.c and md4.h files from http://openwall.info/wiki/people/solar/software/public-domain-source-code/md4 Code-by: Alexander Peslyak Steve Holme (4 Feb 2015) - telnet: Prefer 'CURLcode result' for curl result codes - hostasyn: Prefer 'CURLcode result' for curl result codes - schannel: Prefer 'CURLcode result' for curl result codes Daniel Stenberg (3 Feb 2015) - unit1601: MD5 unit tests - unit1600: unit test for Curl_ntlm_core_mk_nt_hash - unit1600: NTLM unit test - tests/README: add a new range, clean up some language - [Jay Satiro brought this change] opts: CURLOPT_CAINFO availability depends on SSL engine - getpass: protect include with proper #ifdef Reported-by: Tamir - getpass_r: read from stdin, not stdout! The file number used was wrong. This bug was introduced over 10 years ago, proving this function isn't used much... Bug: http://curl.haxx.se/bug/view.cgi?id=1476 Reported-by: Tamir - test1135: verify the CURL_EXTERN order in header files - Makefile.am: fix 'make distcheck' ... by removing generated files from the *_DIST variable [*] and instead generate them with a .dist suffix, since that is then handled and put into the release archive by our generic dist-hook. [*] = 'make distcheck' fails with non-existing files listed there Steve Holme (2 Feb 2015) - curl_sasl.c: More code policing Better use of 80 character line limit, comment corrections and line spacing preferences. Daniel Stenberg (2 Feb 2015) - libcurl-symbols: first basic shot for autogenerated docs - FAQ: minor edit of 3.22 Steve Holme (2 Feb 2015) - build: Added removal of Visual Studio project files Added the removal of the locally generated project files so one may revert to a clean repository. - build: Renamed top level Visual Studio solution files In preparation for adding the test suite and examples projects renamed the top level "all" solution files to better describe what they are. This will also enable us to use "curl" rather than "curlsrc" for the command line tool solution and project files, which will simplify some of the configuration. - build: Enabled DEBUGBUILD in Visual Studio debug builds Defined the DEBUGBUILD pre-processor variable to allow extra logging, which is particularly useful in debug builds, as we use this and Visual Studio typically uses _DEBUG. We could define DEBUBBUILD, in curl_setup.h, when _MSC_VER and _DEBUG is defined but that would also affect the makefile based builds which we probably don't want to do. - build: Removed unused Visual Studio bscmake settings Daniel Stenberg (2 Feb 2015) - CURLOPT_HTTP_VERSION.3: CURL_HTTP_VERSION_2_0 added in 7.33.0 And modify the text to refer to HTTP 2 as it isn't called "2.0". Reported-By: Michael Wallner Marc Hoersken (31 Jan 2015) - TODO: moved WinSSL/SChannel todo items into docs Daniel Stenberg (29 Jan 2015) - [Michael Kaufmann brought this change] CURLOPT_SEEKFUNCTION.3: also when server closes a connection Steve Holme (29 Jan 2015) - curl_sasl.c: Fixed compilation warning when cryptography is disabled curl_sasl.c:1506: warning: unused variable 'chlg' - curl_sasl.c: Fixed compilation warning when verbose debug output disabled curl_sasl.c:1317: warning: unused parameter 'conn' - ntlm_core: Use own odd parity function when crypto engine doesn't have one - ntlm_core: Prefer sizeof(key) rather than hard coded sizes - ntlm_core: Added consistent comments to DES functions - des: Added Curl_des_set_odd_parity() Added Curl_des_set_odd_parity() for use when cryptography engines don't include this functionality. - tests: Grouped SMTP SASL EXTERNAL tests with other SMTP tests - tests: Grouped POP3 SASL EXTERNAL tests with other POP3 tests - tests: Grouped IMAP SASL EXTERNAL tests with other IMAP tests - sasl: Minor code policing and grammar corrections Daniel Stenberg (28 Jan 2015) - [Gisle Vanem brought this change] ldap: build with BoringSSL - security: avoid compiler warning Possible access to uninitialised memory '&nread' at line 140 of lib/security.c in function 'ftp_send_command'. Reported-by: Rich Burridge - runtests: identify BoringSSL and libressl Patrick Monnerat (27 Jan 2015) - docs: cite SASL external authentication. - sasl: remove XOAUTH2 from default enabled authentication mechanism. - test: add test cases for sasl external authentication (imap/pop3/smtp). - imap: remove automatic password setting: it breaks external sasl authentication - sasl: implement EXTERNAL authentication mechanism. Its use is only enabled by explicit requirement in URL (;AUTH=EXTERNAL) and by not setting the password. Steve Holme (27 Jan 2015) - openssl: Fixed Curl_ossl_cert_status_request() not returning FALSE Modified the Curl_ossl_cert_status_request() function to return FALSE when built with BoringSSL or when OpenSSL is missing the necessary TLS extensions. - openssl: Fixed compilation errors when OpenSSL built with 'no-tlsext' Fixed the build of openssl.c when OpenSSL is built without the necessary TLS extensions for OCSP stapling. Reported-by: John E. Malmberg - [Brad Spencer brought this change] curl_setup: Disable SMB/CIFS support when HTTP only - RELEASE-NOTES: Synced with 37824498a3 Daniel Stenberg (22 Jan 2015) - configure: remove detection of the old yassl emulation API ... as that is ancient history and not used. - OCSP stapling: disabled when build with BoringSSL - [Alessandro Ghedini brought this change] openssl: add support for the Certificate Status Request TLS extension Also known as "status_request" or OCSP stapling, defined in RFC6066 section 8. Thanks-to: Joe Mason - for the work-around for the OpenSSL bug. - BoringSSL: fix build for non-configure builds HAVE_BORINGSSL gets defined now by configure and should be defined by other build systems in case a BoringSSL build is desired. - configure: fix BoringSSL detection and detect libresssl Steve Holme (22 Jan 2015) - curl_sasl: Reinstate the sasl_ prefix for locally scoped functions Commit 7a8b2885e2 made some functions static and removed the public Curl_ prefix. Unfortunately, it also removed the sasl_ prefix, which is the naming convention we use in this source file. - curl_sasl: Minor code policing following recent commits Daniel Stenberg (22 Jan 2015) - [John Malmberg brought this change] openvms: Handle openssl/0.8.9zb version parsing packages/vms/gnv_link_curl.com was assuming only a single letter suffix in the openssl version. That assumption has been fixed for 7.40. - BoringSSL: detected by configure, switches off NTLM - BoringSSL: no PKCS12 support nor ERR_remove_state - [Leith Bade brought this change] BoringSSL: fix build Steve Holme (20 Jan 2015) - curl_sasl.c: chlglen is not used when cryptography is disabled - curl_sasl.c: Fixed compilation warning when cyptography is disabled curl_sasl.c:1453: warning C4101: 'serverdata' : unreferenced local variable - curl_sasl.c: Fixed compilation error when USE_WINDOWS_SSPI defined curl_sasl.c:1221: error C2065: 'mechtable' : undeclared identifier This error could also happen for non-SSPI builds when cryptography is disabled (CURL_DISABLE_CRYPTO_AUTH is defined). Patrick Monnerat (20 Jan 2015) - SASL: make some procedures local-scoped - SASL: common state engine for imap/pop3/smtp - SASL: common URL option and auth capabilities decoders for all protocols - IMAP/POP3/SMTP: use a per-connection sub-structure for SASL parameters. Daniel Stenberg (20 Jan 2015) - ipv6: enclose AF_INET6 uses with proper #ifdefs for ipv6 Reported-by: Chris Young - [Chris Young brought this change] timeval: typecast for better type (on Amiga) There is an issue with conflicting "struct timeval" definitions with certain AmigaOS releases and C libraries, depending on what gets included when. It's a minor difference - the OS one is unsigned, whereas the common structure has signed elements. If the OS one ends up getting defined, this causes a timing calculation error in curl. It's easy enough to resolve this at the curl end, by casting the potentially errorneous calculation to a signed long. - openssl: do public key pinning check independently ... of the other cert verification checks so that you can set verifyhost and verifypeer to FALSE and still check the public key. Bug: http://curl.haxx.se/bug/view.cgi?id=1471 Reported-by: Kyle J. McKay Patrick Monnerat (19 Jan 2015) - OS400: CURLOPT_SSL_VERIFYSTATUS for ILE/RPG too. Steve Holme (18 Jan 2015) - ldap: Renamed the CURL_LDAP_WIN definition to USE_WIN32_LDAP For consistency with other USE_WIN32_ defines as well as the USE_OPENLDAP define. - http_negotiate: Use dynamic buffer for SPN generation Use a dynamicly allocated buffer for the temporary SPN variable similar to how the SASL GSS-API code does, rather than using a fixed buffer of 2048 characters. - sasl_gssapi: Make Curl_sasl_build_gssapi_spn() public - sasl_gssapi: Fixed memory leak with local SPN variable Daniel Stenberg (17 Jan 2015) - http_negotiate.c: unused variable 'ret' Steve Holme (17 Jan 2015) - gskit.h: Code policing of function pointer arguments - vtls: Removed unimplemented overrides of curlssl_close_all() Carrying on from commit 037cd0d991, removed the following unimplemented instances of curlssl_close_all(): Curl_axtls_close_all() Curl_darwinssl_close_all() Curl_cyassl_close_all() Curl_gskit_close_all() Curl_gtls_close_all() Curl_nss_close_all() Curl_polarssl_close_all() - vtls: Separate the SSL backend definition from the API setup Slight code cleanup as the SSL backend #define is mixed up with the API function setup. - vtls: Fixed compilation errors when SSL not used Fixed the following warning and error from commit 3af90a6e19 when SSL is not being used: url.c:2004: warning C4013: 'Curl_ssl_cert_status_request' undefined; assuming extern returning int error LNK2019: unresolved external symbol Curl_ssl_cert_status_request referenced in function Curl_setopt - http_negotiate: Added empty decoded challenge message info text - http_negotiate: Return CURLcode in Curl_input_negotiate() instead of int - http_negotiate_sspi: Prefer use of 'attrs' for context attributes Use the same variable name as other areas of SSPI code. - http_negotiate_sspi: Use correct return type for QuerySecurityPackageInfo() Use the SECURITY_STATUS typedef rather than a unsigned long for the QuerySecurityPackageInfo() return and rename the variable as per other areas of SSPI code. - http_negotiate_sspi: Use 'CURLcode result' for CURL result code - curl_endian: Fixed build when 64-bit integers are not supported (Part 2) Missed Curl_read64_be() in commit bb12d44471 :( Daniel Stenberg (16 Jan 2015) - CURLOPT_SSL_VERIFYSTATUS.3: mention it is added in version 7.41.0 - curlver.h: next release is 7.41.0 due to the changes - RELEASE-NOTES: mention the new OCSP stapling options, bump version - opts: add CURLOPT_SSL_VERIFYSTATUS* to docs/Makefile - help: add --cert-status to --help output - copyright years: after OCSP stapling changes - [Alessandro Ghedini brought this change] curl: add --cert-status option This enables the CURLOPT_SSL_VERIFYSTATUS functionality. - [Alessandro Ghedini brought this change] nss: add support for the Certificate Status Request TLS extension Also known as "status_request" or OCSP stapling, defined in RFC6066 section 8. This requires NSS 3.15 or higher. - [Alessandro Ghedini brought this change] gtls: add support for the Certificate Status Request TLS extension Also known as "status_request" or OCSP stapling, defined in RFC6066 section 8. This requires GnuTLS 3.1.3 or higher to build, however it's recommended to use at least GnuTLS 3.3.11 since previous versions had a bug that caused the OCSP response verfication to fail even on valid responses. - [Alessandro Ghedini brought this change] url: add CURLOPT_SSL_VERIFYSTATUS option This option can be used to enable/disable certificate status verification using the "Certificate Status Request" TLS extension defined in RFC6066 section 8. This also adds the CURLE_SSL_INVALIDCERTSTATUS error, to be used when the certificate status verification fails, and the Curl_ssl_cert_status_request() function, used to check whether the SSL backend supports the status_request extension. - TheArtOfHttpScripting: skip the date at the top, we have git - TheArtOfHttpScripting: phrase it TLS lib agnostic Steve Holme (16 Jan 2015) - TODO: Added some SMB ideas - RELEASE-NOTES: Synced with 5f09947d28 - build-openssl.bat: Added check for Perl installation - checksrc.bat: Better detection of Perl installation - curl_endian: Fixed build when 64-bit integers are not supported Bug: http://curl.haxx.se/mail/lib-2015-01/0094.html Reported-by: John E. Malmberg Daniel Stenberg (15 Jan 2015) - [Yun SangHo brought this change] curl.h: remove extra space - Curl_pretransfer: reset expected transfer sizes Reported-by: Mohammad AlSaleh Bug: http://curl.haxx.se/mail/lib-2015-01/0065.html Marc Hoersken (12 Jan 2015) - curl_schannel.c: mark session as removed from cache if not freed If the session is still used by active SSL/TLS connections, it cannot be closed yet. Thus we mark the session as not being cached any longer so that the reference counting mechanism in Curl_schannel_shutdown is used to close and free the session. Reported-by: Jean-Francois Durand Steve Holme (9 Jan 2015) - RELEASE-NOTES: Synced with d21b66835f Guenter Knauf (9 Jan 2015) - Merge pull request #134 from vszakats/mingw-m64 add -m64 CFLAGS when targeting mingw64, add -m32/-m64 to LDFLAGS - Merge pull request #136 from vszakats/mingw-allow-custom-cflags mingw build: allow to pass custom CFLAGS Daniel Stenberg (9 Jan 2015) - NSS: fix compiler error when built http2-enabled Steve Holme (9 Jan 2015) - gssapi: Remove need for duplicated GSS_C_NT_HOSTBASED_SERVICE definitions Better code reuse and consistency in calls to gss_import_name(). Viktor Szakats (9 Jan 2015) - mingw build: allow to pass custom CFLAGS Daniel Stenberg (8 Jan 2015) - FTP: if EPSV fails on IPV6 connections, bail out ... instead of trying PASV, since PASV can't work with IPv6. Reported-by: Vojtěch Král - FTP: fix IPv6 host using link-local address ... and make sure we can connect the data connection to a host name that is longer than 48 bytes. Also simplifies the code somewhat by re-using the original host name more, as it is likely still in the DNS cache. Original-Patch-by: Vojtěch Král Bug: http://curl.haxx.se/bug/view.cgi?id=1468 Steve Holme (8 Jan 2015) - [Sam Schanken brought this change] winbuild: Added option to build with c-ares Added support for a WITH_CARES option to be used when invoking nmake via Makefile.vc. This option enables linking against both the DLL and static versions of the c-ares libraries, as well as the debug and release varients, depending on the value of DEBUG. The USE_ARES preprocessor symbol is also defined. Guenter Knauf (8 Jan 2015) - NetWare build: added TLS-SRP enabled build. Steve Holme (8 Jan 2015) - sasl_gssapi: Fixed build on NetBSD with built-in GSS-API Bug: http://curl.haxx.se/bug/view.cgi?id=1469 Reported-by: Thomas Klausner Viktor Szakats (8 Jan 2015) - add -m64 clags when targeting mingw64, add -m32/-m64 to LDFLAGS Daniel Stenberg (8 Jan 2015) - bump: start working towards 7.40.1 - THANKS: 14 new contributors from the 7.40.0 release notes
jperkin
pushed a commit
that referenced
this pull request
Apr 16, 2015
Add test target Upstream changes: 2015-03-14 -- 1.3.6 * Class.slots raises NotImplementedError for old style classes. Closes issue #67. * Add a new option to AstroidManager, `optimize_ast`, which controls if peephole optimizer should be enabled or not. This prevents a regression, where the visit_binop method wasn't called anymore with astroid 1.3.5, due to the differences in the resulting AST. Closes issue #82. 2015-03-11 -- 1.3.5 * Add the ability to optimize small ast subtrees, with the first use in the optimization of multiple BinOp nodes. This removes recursivity in the rebuilder when dealing with a lot of small strings joined by the addition operator. Closes issue #59. * Obtain the methods for the nose brain tip through an unittest.TestCase instance. Closes Pylint issue #457. * Fix a crash which occurred when a class was the ancestor of itself. Closes issue #78. * Improve the scope_lookup method for Classes regarding qualified objects, with an attribute name exactly as one provided in the class itself. For example, a class containing an attribute 'first', which was also an import and which had, as a base, a qualified name or a Gettattr node, in the form 'module.first', then Pylint would have inferred the `first` name as the function from the Class, not the import. Closes Pylint issue #466. * Implement the assigned_stmts operation for Starred nodes, which was omitted when support for Python 3 was added in astroid. Closes issue #36. 2015-01-17 -- 1.3.4 * Get the first element from the method list when obtaining the functions from nose.tools.trivial. Closes Pylint issue #448. 2015-01-16 -- 1.3.3 * Restore file_stream to a property, but deprecate it in favour of the newly added method Module.stream. By using a method instead of a property, it will be easier to properly close the file right after it is used, which will ensure that no file descriptors are leaked. Until now, due to the fact that a module was cached, it was not possible to close the file_stream anywhere. file_stream will start emitting PendingDeprecationWarnings in astroid 1.4, DeprecationWarnings in astroid 1.5 and it will be finally removed in astroid 1.6. * Add inference tips for 'tuple', 'list', 'dict' and 'set' builtins. * Add brain definition for most string and unicode methods * Changed the API for Class.slots. It returns None when the class doesn't define any slots. Previously, for both the cases where the class didn't have slots defined and when it had an empty list of slots, Class.slots returned an empty list. * Add a new method to Class nodes, 'mro', for obtaining the the method resolution order of the class. * Add brain tips for six.moves. Closes issue #63. * Improve the detection for functions decorated with decorators which returns static or class methods. * .slots() can contain unicode strings on Python 2. * Add inference tips for nose.tools. 2014-11-22 -- 1.3.2 * Fixed a crash with invalid subscript index. * Implement proper base class semantics for Python 3, where every class derives from object. * Allow more fine-grained control over C extension loading in the manager. 2014-11-21 -- 1.3.1 * Fixed a crash issue with the pytest brain module. 2014-11-20 -- 1.3.0 * Fix a maximum recursion error occured during the inference, where statements with the same name weren't filtered properly. Closes pylint issue #295. * Check that EmptyNode has an underlying object in EmptyNode.has_underlying_object. * Simplify the understanding of enum members. * Fix an infinite loop with decorator call chain inference, where the decorator returns itself. Closes issue #50. * Various speed improvements. Patch by Alex Munroe. * Add pytest brain plugin. Patch by Robbie Coomber. * Support for Python versions < 2.7 has been dropped, and the source has been made compatible with Python 2 and 3. Running 2to3 on installation for Python 3 is not needed anymore. * astroid now depends on six. * modutils._module_file opens __init__.py in binary mode. Closes issues #51 and #13. * Only C extensions from trusted sources (the standard library) are loaded into the examining Python process to build an AST from the live module. * Path names on case-insensitive filesystems are now properly handled. This fixes the stdlib detection code on Windows. * Metaclass-generating functions like six.with_metaclass are now supported via some explicit detection code. * astroid.register_module_extender has been added to generalize the support for module extenders as used by many brain plugins. * brain plugins can now register hooks to handle failed imports, as done by the gobject-introspection plugin. * The modules have been moved to a separate package directory, `setup.py develop` now works correctly. 2014-08-24 -- 1.2.1 * Fix a crash occurred when inferring decorator call chain. Closes issue #42. * Set the parent of vararg and kwarg nodes when inferring them. Closes issue #43. * namedtuple inference knows about '_fields' attribute. * enum members knows about the methods from the enum class. * Name inference will lookup in the parent function of the current scope, in case searching in the current scope fails. * Inference of the functional form of the enums takes into consideration the various inputs that enums accepts. * The inference engine handles binary operations (add, mul etc.) between instances. * Fix an infinite loop in the inference, by returning a copy of instance attributes, when calling 'instance_attr'. Closes issue #34 (patch by Emile Anclin). * Don't crash when trying to infer unbound object.__new__ call. Closes issue #11. 2014-07-25 -- 1.2.0 * Function nodes can detect decorator call chain and see if they are decorated with builtin descriptors (`classmethod` and `staticmethod`). * infer_call_result called on a subtype of the builtin type will now return a new `Class` rather than an `Instance`. * `Class.metaclass()` now handles module-level __metaclass__ declaration on python 2, and no longer looks at the __metaclass__ class attribute on python 3. * Function nodes can detect if they are decorated with subclasses of builtin descriptors when determining their type (`classmethod` and `staticmethod`). * Add `slots` method to `Class` nodes, for retrieving the list of valid slots it defines. * Expose function annotation to astroid: `Arguments` node exposes 'varargannotation', 'kwargannotation' and 'annotations' attributes, while `Function` node has the 'returns' attribute. * Backported most of the logilab.common.modutils module there, as most things there are for pylint/astroid only and we want to be able to fix them without requiring a new logilab.common release * Fix names grabed using wildcard import in "absolute import mode" (ie with absolute_import activated from the __future__ or with python 3). Fix pylint issue #58. * Add support in pylint-brain for understanding enum classes. 2014-04-30 -- 1.1.1 * `Class.metaclass()` looks in ancestors when the current class does not define explicitly a metaclass. * Do not cache modules if a module with the same qname is already known, and only return cached modules if both name and filepath match. Fixes pylint Bitbucket issue #136. 2014-04-18 -- 1.1.0 * All class nodes are marked as new style classes for Py3k. * Add a `metaclass` function to `Class` nodes to retrieve their metaclass. * Add a new YieldFrom node. * Add support for inferring arguments to namedtuple invocations. * Make sure that objects returned for namedtuple inference have parents. * Don't crash when inferring nodes from `with` clauses with multiple context managers. Closes #18. * Don't crash when a class has some __call__ method that is not inferable. Closes #17. * Unwrap instances found in `.ancestors()`, by using their _proxied class.
jperkin
pushed a commit
that referenced
this pull request
Jul 4, 2015
------ 18.0.1 ------ * Issue #401: Fix failure in test suite. ---- 18.0 ---- * Dropped support for builds with Pyrex. Only Cython is supported. * Issue #288: Detect Cython later in the build process, after ``setup_requires`` dependencies are resolved. Projects backed by Cython can now be readily built with a ``setup_requires`` dependency. For example:: ext = setuptools.Extension('mylib', ['src/CythonStuff.pyx', 'src/CStuff.c']) setuptools.setup( ... ext_modules=[ext], setup_requires=['cython'], ) For compatibility with older versions of setuptools, packagers should still include ``src/CythonMod.c`` in the source distributions or require that Cython be present before building source distributions. However, for systems with this build of setuptools, Cython will be downloaded on demand. * Issue #396: Fixed test failure on OS X. * Pull Request #136: Remove excessive quoting from shebang headers for Jython.
jperkin
pushed a commit
that referenced
this pull request
Nov 24, 2015
**Released on November 22nd, 2015.** This is a huge release and marks a major milestone for Kyua as it finally implements a long-standing feature request: the ability to execute test cases in parallel. This is a big deal because test cases are rarely CPU-bound: running them in parallel yields much faster execution times for large test suites, allowing faster iteration of changes during development. As an example: the FreeBSD test suite as of this date contains 3285 test cases. With sequential execution, a full test suite run takes around 12 minutes to complete, whereas on a 4-core machine with a high level of parallelism it takes a little over 1 minute. Implementing parallel execution required rewriting most of Kyua's core and partly explains explains why there has not been a new release for over a year. The current implementation is purely subprocess-based, which works but has some limitations and has resulted in a core that is really complex and difficult to understand. Future versions will investigate the use of threads instead for a simplified programming model and additional parallelization possibilities. * Issue #2: Implemented support to execute test cases in parallel when invoking `kyua test`. Parallel execution is *only* enabled when the new `parallelism` configuration variable is set to a value greater than `1`. The default behavior is still to run tests sequentially because some test suites contain test cases with side-effects that might fail when run in parallel. To resolve this, the new metadata property `is_exclusive` can be set to `true` on a test basis to indicate that the test must be run on its own. * Known regression: Running `kyua debug` on a TAP-based test program does not currently report the output in real time. The output will only be displayed once the test program completes. This is a shortcoming of the new parallel execution engine and will be resolved. * Removed the external C-based testers code in favor of the new built-in implementations. The new approach feels significantly faster than the previous one. * Fixed the handling of relative paths in the `fs.*` functions available in `Kyuafile`s. All paths are now resolved relative to the location of the caller `Kyuafile`. `Kyuafile.top` has been updated with these changes and you should update custom copies of this file with the new version. * Changed temporary directory creation to always grant search permissions on temporary directories. This is to prevent potential problems when running Kyua as root and executing test cases that require dropping privileges (as they may later be unable to use absolute paths that point inside their work directory). * The cleanup of work directories does not longer attempt to deal with mount points. If a test case mounts a file system and forgets to unmount it, the mount point will be left behind. It is now the responsibility of the test case to clean after itself. The reasons for this change are simplicity and clarity: there are many more things that a test case can do that have side-effects on the system and Kyua cannot protect against them all, so it is better to just have the test undo anything it might have done. * Improved `kyua report --verbose` to properly handle environment variables with continuation lines in them, and fixed the integration tests for this command to avoid false negatives. * Changed the configuration file format to accept the definition of unknown variables without declaring them local. The syntax version number remains at 2. This is to allow configuration files for newer Kyua versions to work on older Kyua versions, as there is no reason to forbid this. * Fixed stacktrace gathering with FreeBSD's ancient version of GDB. GDB 6.1.1 (circa 2004) does not have the `-ex` flag so we need to generate a temporary GDB script and feed it to GDB with `-x` instead. * Issue #136: Fixed the XML escaping in the JUnit output so that non-printable characters are properly handled when they appear in the process's stdout or stderr. * Issue #141: Improved reporting of errors triggered by sqlite3. In particular, all error messages are now tagged with their corresponding database filename and, if they are API-level errors, the name of the sqlite3 function that caused them. * Issue #144: Improved documentation on the support for custom properties in the test metadata. * Converted the `INSTALL`, `NEWS`, and `README` distribution documents to Markdown for better formatting online.
jperkin
pushed a commit
that referenced
this pull request
Feb 7, 2016
* Lwt_stream.on_terminate -> Lwt_stream.on_termination * Lwt_unix: handle O_CLOEXEC * Lwt_log: add OSX syslog path * Ppx: Improve lwt%match, improve catchall detection * Add Lwt_unix.file_exists and Lwt_unix.Large_file.file_exists * Build fixes * API CHANGE: Functions in Lwt_io that were previously using a ~buffer_size argument now takes a ~buffer argument. * Accept ?buffer argument in Lwt_ssl.{in,out}_channel_of_descr. * Use newer Ssl bigarray read/write functionality to avoid allocation in Lwt_ssl. * Fix non-reentrant function calls (#136) * IPv4 multicast support. * Add support for if%lwt in ppx extension. * Add Lwt.return_some. * Disable log syntax extension by default in ppx. Give [-log] as ppx argument to enable it. * Nanosecond precision for Lwt_unix.stat. * Minor fixes + documentation improvements. * Fix compilation under Windows (#117, #129) * Fix Lwt_engine.on_timer (#121) * Add Lwt_log_core.reset_rules (#123) * Fixed typos in the documentation (#119, #131) * camlp4 is now optional. * Add safe_string compliance except for Lwt_ssl (need ocaml-ssl fix). * Add Lwt.Infix module to open instead of Lwt to have (>>=), etc. * Add Lwt_list.filter_map_{s,p} functions. * Add Lwt.fail_{with,invalid_arg} functions. * Improved Android support. * Remove deprecated lwt.text and lwt.top libraries. * Remove deprecated Lwt_signal and Lwt_event modules from lwt.react. * Fix #111: try_lwt wrongly warns about unused match case. * Fix #96: Fix Lwt_react.S.limit and Lwt_react.E.limit. * Fix #91: Workaround to fix compilation on OSX. * Add a ppx syntax extension * Add a ?fd argument to Lwt_io.{open_connection,with_connection,establish_server}. * Fix stub for getaddrinfo and getprotobyname * Windows fix: don't throw an exception in the notification handler if we're shutting down * Fix include file search in ./configure * ./configure fixes for windows * Fix: use sys_exit instead of exit when Unix.execv fails
jperkin
pushed a commit
that referenced
this pull request
Feb 11, 2016
* Lwt_stream.on_terminate -> Lwt_stream.on_termination * Lwt_unix: handle O_CLOEXEC * Lwt_log: add OSX syslog path * Ppx: Improve lwt%match, improve catchall detection * Add Lwt_unix.file_exists and Lwt_unix.Large_file.file_exists * Build fixes * API CHANGE: Functions in Lwt_io that were previously using a ~buffer_size argument now takes a ~buffer argument. * Accept ?buffer argument in Lwt_ssl.{in,out}_channel_of_descr. * Use newer Ssl bigarray read/write functionality to avoid allocation in Lwt_ssl. * Fix non-reentrant function calls (#136) * IPv4 multicast support. * Add support for if%lwt in ppx extension. * Add Lwt.return_some. * Disable log syntax extension by default in ppx. Give [-log] as ppx argument to enable it. * Nanosecond precision for Lwt_unix.stat. * Minor fixes + documentation improvements. * Fix compilation under Windows (#117, #129) * Fix Lwt_engine.on_timer (#121) * Add Lwt_log_core.reset_rules (#123) * Fixed typos in the documentation (#119, #131) * camlp4 is now optional. * Add safe_string compliance except for Lwt_ssl (need ocaml-ssl fix). * Add Lwt.Infix module to open instead of Lwt to have (>>=), etc. * Add Lwt_list.filter_map_{s,p} functions. * Add Lwt.fail_{with,invalid_arg} functions. * Improved Android support. * Remove deprecated lwt.text and lwt.top libraries. * Remove deprecated Lwt_signal and Lwt_event modules from lwt.react. * Fix #111: try_lwt wrongly warns about unused match case. * Fix #96: Fix Lwt_react.S.limit and Lwt_react.E.limit. * Fix #91: Workaround to fix compilation on OSX. * Add a ppx syntax extension * Add a ?fd argument to Lwt_io.{open_connection,with_connection,establish_server}. * Fix stub for getaddrinfo and getprotobyname * Windows fix: don't throw an exception in the notification handler if we're shutting down * Fix include file search in ./configure * ./configure fixes for windows * Fix: use sys_exit instead of exit when Unix.execv fails
jperkin
pushed a commit
that referenced
this pull request
Feb 19, 2016
# Changelog ## 1.0.9.1 (January 14, 2016) * Fix EPROTO not defined on Windows [#676] * Fix missing cast to struct sockaddr * [#671] * Fix bug in OpenSSL path detection [#675] ## 1.0.9 (January 13, 2016) * Try more ways to detect OpenSSL [#602, #643, #661, #663, #668, #669] * Use WSAGetLastError in pipe.cpp same as ed.cpp [#659] * Test compiler flags with the C++ compiler and add them to CXXFLAGS [#634, #651] * Restore silent-fail on unsupported EM.epoll and EM.kqueue [#638, #649] * getDescriptorByFileno deprecated in JRuby 1.7.x, removed in JRuby 9000 [#642, #648] * Add -Wno-address always-true because on Windows rb_fd_select [#578] * Remove the WITHOUT_SSL constant [#578] * Fix SSL error when the server replies a TLS Alert to our ClientHello [#544, #653] * Use WSAStringToAddress in lieu of inet_pton for IPv6 address detection on Windows [#595, #632] * Fix nasty TCP/IPv6 bug [#595, #632] * Use select_large_fdset on Solaris [#611, #625] * Detect the Solaris Studio compiler [#611, #625] * Throw a message with strerror included [#136, #621]
jperkin
pushed a commit
that referenced
this pull request
Mar 18, 2016
== 2.1.0 / 2016-03-13 Enhancements - appender factories now fail explicitly on bad arguments [PR #117] - console loggers (stdout, stderr) use `write` for compatibility [PR #127] - allow whitespace in traced method names [PR #128] - accessor methods for `backtrace` settings [PR #134] - asynchronous writing from buffered appenders [PR #135] - improve date format performance when outputting microseconds [PR #136] - added some thread safety to log level setters [PR #137] - use `write` everywhere instead of `syswrite` [PR #138] Bug Fixes - fixing encodings in tests [PR #116] - fix Rails4 logger compatibility [PR #121] - explicitly adding the MIT license [PR #123] - update `object_id` format in inspect methods [PR #133] - fixed Travis-CI tests
mamash
pushed a commit
that referenced
this pull request
Apr 6, 2016
v2.1 - Issue #156 parsedatetime 2.0 doesn't work on py26 v2.0 - Issue #155 Relative times containing years fail when computed from a leap day - Issue #145 cal.parse('2015-11-18') returns November 19th 2015 - Issue #143 What is the second value returned by `parse`? - Issue #141 Bad test case in TestComplexDateTimes - Issue #123 update supporting files for v2.0 release - Issue #124 Put locales into config-files (yaml) - Issue #125 Remove extra files - Issue #137 Year is parsed wrongly if the date is of format MMM DD, YYxx xx:SS bug - Issue #136 Why I see 2016 instead of 2015? - Issue #133 Bug: "2015-01-01" is parsed as the current date. - Issue #126 "Unresolved attribute reference 'parse' for class 'object'... " in Pycharm IDE. bug - Issue #120 the pdt_locales/en_AU.py file uses en_A for the localID instead of en_AU - Issue #114 Dates in the format 'YYYY-MM-DD HH:MM' give the incorrect month and day - Issue #112 Document getting a time from parsedatetime into a standard Python structure - Issue #110 AttributeError when running in the context of an HTTP request - Issue #109 YearParseStyle is ignored for dates in MM/DD style - Issue #107 yyyy/mm/dd date format - Issue #105 "this week" is not parsed - Issue #103 get UTC times from parseDT - trouble with at 9:30 clock times being interpreted directly in UTC - Issue #100 Fractional deltas result in incoherent results. - PR #118 ADD: improve russian locale - PR #117 ADD: Russian Locale - PR #116 Fix spelling of "separator". - PR #115 Update README.rst - PR #113 Add datetime example to readme. - PR #111 Allowed real number appear in text like "5.5 days ago" v1.5 - Issue #99 Which year is implied when given just a month and day? Next and last? question - Issue #96 Word boundary issues for specials (on, at, in) in nlp - Issue #94 inconsistent application of sourceTime in Calendar.parseDT - Issue #87 nlp() doesn't recognize some "next ..." expressions - Issue #84 Afternoon? bug - Issue #82 'last week' and 'next week' are broken - Issue #81 parse returns default time of 0900 with dates like 'next friday' despite passed struct_time bug - Issue #78 Link for Travis in README is wrong - Issue #72 Enable travis - Issue #71 Calendar() class can not be initialized 1.4 (it's fine) - Issue #66 Unexpected struct_time flag with Calendar.parse on HTML <a href> string - Issue #65 NLP false positives - Issue #63 Supporting multiple shortweekday abbreviations - Issue #61 Short weekday abbreviations bug - Issue #56 Parse words to numbers (thirteen => 13) - Issue #54 testMonths fails - commit 107c7e4655 fix for issue 95 - parsing 'next june 15' - commit 2c0c8ec778 Fixed faulty test, "730am" parses as "73:0 am" which is a bug for a later day. - commit 6f244e891d Fix "ones" parsing as "1s." Require a word boundary between spelled numbers and units. - commit 035818edef Fix "1 day ago" parsing like "1d 1y ago" where "a" within the word "day" is interpreted as 1. - commit 45002e6eec Fixes "next week" and similar modifier + unit pairs in nlp() - commit 47d2e1d527 Fixed "last week" v1.4 - Updated setup.py for wheel compatibility - renamed README.txt to README.rst - renamed MANIFEST to MANIFEST.in - cleaned up a lot of the doc and notes - Commit 3fc165e701 mafagafo Now it works for Python 3.4.1 - Commit d5883801e7 borgstrom Restore Python 2.6 compatibility 1.3 - Issue #45 make a new release to really fix backwards compatibility - Issue #43 Please tag version 1.3 - Commit 29c5c8961d devainandor fixed Python 3 compatibility in pdtLocale_icu - Commit d7304f18f7 inean Fix support for 'now' when no modifiers are present - Commit 26bfc91c28 sashaacker Added parseDT method. - Commit 848deb47e2 rmecham Added support for dotted meridians. - Commit c821e08ce2 ccho-sevenrooms corrected misspelling of 'thirteen' - Biggest change is the addition of the nlp() function by Geoffrey Floyd: nlp() function that utilizes parse() after making judgements about what datetime information belongs together. It makes logical groupings based on proximity and returns a parsed datetime for each matched grouping of datetime text, along with location info within the given inputString.
jperkin
pushed a commit
that referenced
this pull request
Apr 7, 2016
v2.1 - Issue #156 parsedatetime 2.0 doesn't work on py26 v2.0 - Issue #155 Relative times containing years fail when computed from a leap day - Issue #145 cal.parse('2015-11-18') returns November 19th 2015 - Issue #143 What is the second value returned by `parse`? - Issue #141 Bad test case in TestComplexDateTimes - Issue #123 update supporting files for v2.0 release - Issue #124 Put locales into config-files (yaml) - Issue #125 Remove extra files - Issue #137 Year is parsed wrongly if the date is of format MMM DD, YYxx xx:SS bug - Issue #136 Why I see 2016 instead of 2015? - Issue #133 Bug: "2015-01-01" is parsed as the current date. - Issue #126 "Unresolved attribute reference 'parse' for class 'object'... " in Pycharm IDE. bug - Issue #120 the pdt_locales/en_AU.py file uses en_A for the localID instead of en_AU - Issue #114 Dates in the format 'YYYY-MM-DD HH:MM' give the incorrect month and day - Issue #112 Document getting a time from parsedatetime into a standard Python structure - Issue #110 AttributeError when running in the context of an HTTP request - Issue #109 YearParseStyle is ignored for dates in MM/DD style - Issue #107 yyyy/mm/dd date format - Issue #105 "this week" is not parsed - Issue #103 get UTC times from parseDT - trouble with at 9:30 clock times being interpreted directly in UTC - Issue #100 Fractional deltas result in incoherent results. - PR #118 ADD: improve russian locale - PR #117 ADD: Russian Locale - PR #116 Fix spelling of "separator". - PR #115 Update README.rst - PR #113 Add datetime example to readme. - PR #111 Allowed real number appear in text like "5.5 days ago" v1.5 - Issue #99 Which year is implied when given just a month and day? Next and last? question - Issue #96 Word boundary issues for specials (on, at, in) in nlp - Issue #94 inconsistent application of sourceTime in Calendar.parseDT - Issue #87 nlp() doesn't recognize some "next ..." expressions - Issue #84 Afternoon? bug - Issue #82 'last week' and 'next week' are broken - Issue #81 parse returns default time of 0900 with dates like 'next friday' despite passed struct_time bug - Issue #78 Link for Travis in README is wrong - Issue #72 Enable travis - Issue #71 Calendar() class can not be initialized 1.4 (it's fine) - Issue #66 Unexpected struct_time flag with Calendar.parse on HTML <a href> string - Issue #65 NLP false positives - Issue #63 Supporting multiple shortweekday abbreviations - Issue #61 Short weekday abbreviations bug - Issue #56 Parse words to numbers (thirteen => 13) - Issue #54 testMonths fails - commit 107c7e4655 fix for issue 95 - parsing 'next june 15' - commit 2c0c8ec778 Fixed faulty test, "730am" parses as "73:0 am" which is a bug for a later day. - commit 6f244e891d Fix "ones" parsing as "1s." Require a word boundary between spelled numbers and units. - commit 035818edef Fix "1 day ago" parsing like "1d 1y ago" where "a" within the word "day" is interpreted as 1. - commit 45002e6eec Fixes "next week" and similar modifier + unit pairs in nlp() - commit 47d2e1d527 Fixed "last week" v1.4 - Updated setup.py for wheel compatibility - renamed README.txt to README.rst - renamed MANIFEST to MANIFEST.in - cleaned up a lot of the doc and notes - Commit 3fc165e701 mafagafo Now it works for Python 3.4.1 - Commit d5883801e7 borgstrom Restore Python 2.6 compatibility 1.3 - Issue #45 make a new release to really fix backwards compatibility - Issue #43 Please tag version 1.3 - Commit 29c5c8961d devainandor fixed Python 3 compatibility in pdtLocale_icu - Commit d7304f18f7 inean Fix support for 'now' when no modifiers are present - Commit 26bfc91c28 sashaacker Added parseDT method. - Commit 848deb47e2 rmecham Added support for dotted meridians. - Commit c821e08ce2 ccho-sevenrooms corrected misspelling of 'thirteen' - Biggest change is the addition of the nlp() function by Geoffrey Floyd: nlp() function that utilizes parse() after making judgements about what datetime information belongs together. It makes logical groupings based on proximity and returns a parsed datetime for each matched grouping of datetime text, along with location info within the given inputString.
jperkin
pushed a commit
that referenced
this pull request
Aug 24, 2016
NEWS: Version 2.5.3 ------------- - Updated zoneinfo to 2016d - Fixed parser bug where unambiguous datetimes fail to parse when dayfirst is set to true. (gh issue #233, pr #234) - Bug in zoneinfo file on platforms such as Google App Engine which do not do not allow importing of subprocess.check_call was reported and fixed by @savraj (gh issue #239, gh pr #240) - Fixed incorrect version in documentation (gh issue #235, pr #243) Version 2.5.2 ------------- - Updated zoneinfo to 2016c - Fixed parser bug where yearfirst and dayfirst parameters were not being respected when no separator was present. (gh issue #81 and #217, pr #229) Version 2.5.1 ------------- - Updated zoneinfo to 2016b - Changed MANIFEST.in to explicitly include test suite in source distributions, with help from @koobs (gh issue #193, pr #194, #201, #221) - Explicitly set all line-endings to LF, except for the NEWS file, on a per-repository basis (gh pr #218) - Fixed an issue with improper caching behavior in rruleset objects (gh issue #104, pr #207) - Changed to an explicit error when rrulestr strings contain a missing BYDAY (gh issue #162, pr #211) - tzfile now correctly handles files containing leapcnt (although the leapcnt information is not actually used). Contributed by @hjoukl (gh issue #146, pr #147) - Fixed recursive import issue with tz module (gh pr #204) - Added compatibility between tzwin objects and datetime.time objects (gh issue #216, gh pr #219) - Refactored monolithic test suite by module (gh issue #61, pr #200 and #206) - Improved test coverage in the relativedelta module (gh pr #215) - Adjusted documentation to reflect possibly counter-intuitive properties of RFC-5545-compliant rrules, and other documentation improvements in the rrule module (gh issue #105, gh issue #149 - pointer to the solution by @phep, pr #213). Version 2.5.0 ------------- - Updated zoneinfo to 2016a - zoneinfo_metadata file version increased to 2.0 - the updated updatezinfo.py script will work with older zoneinfo_metadata.json files, but new metadata files will not work with older updatezinfo.py versions. Additionally, we have started hosting our own mirror of the Olson databases on a github pages site (https://dateutil.github.io/tzdata/) (gh pr #183) - dateutil zoneinfo tarballs now contain the full zoneinfo_metadata file used to generate them. (gh issue #27, gh pr #85) - relativedelta can now be safely subclassed without derived objects reverting to base relativedelta objects as a result of arithmetic operations. (lp:1010199, gh issue #44, pr #49) - relativedelta 'weeks' parameter can now be set and retrieved as a property of relativedelta instances. (lp: 727525, gh issue #45, pr #49) - relativedelta now explicitly supports fractional relative weeks, days, hours, minutes and seconds. Fractional values in absolute parameters (year, day, etc) are now deprecated. (gh issue #40, pr #190) - relativedelta objects previously did not use microseconds to determine of two relativedelta objects were equal. This oversight has been corrected. Contributed by @elprans (gh pr #113) - rrule now has an xafter() method for retrieving multiple recurrences after a specified date. (gh pr #38) - str(rrule) now returns an RFC2445-compliant rrule string, contributed by @schinckel and @armicron (lp:1406305, gh issue #47, prs #50, #62 and #160) - rrule performance under certain conditions has been significantly improved thanks to a patch contributed by @dekoza, based on an article by Brian Beck (@exogen) (gh pr #136) - The use of both the 'until' and 'count' parameters is now deprecated as inconsistent with RFC2445 (gh pr #62, #185) - Parsing an empty string will now raise a ValueError, rather than returning the datetime passed to the 'default' parameter. (gh issue #78, pr #187) - tzwinlocal objects now have a meaningful repr() and str() implementation (gh issue #148, prs #184 and #186) - Added equality logic for tzwin and tzwinlocal objects. (gh issue #151, pr #180, #184) - Added some flexibility in subclassing timelex, and switched the default behavior over to using string methods rather than comparing against a fixed list. (gh pr #122, #139) - An issue causing tzstr() to crash on Python 2.x was fixed. (lp: 1331576, gh issue #51, pr #55) - An issue with string encoding causing exceptions under certain circumstances when tzname() is called was fixed. (gh issue #60, #74, pr #75) - Parser issue where calling parse() on dates with no day specified when the day of the month in the default datetime (which is "today" if unspecified) is greater than the number of days in the parsed month was fixed (this issue tended to crop up between the 29th and 31st of the month, for obvious reasons) (canonical gh issue #25, pr #30, #191) - Fixed parser issue causing fuzzy_with_tokens to raise an unexpected exception in certain circumstances. Contributed by @MichaelAquilina (gh pr #91) - Fixed parser issue where years > 100 AD were incorrectly parsed. Contributed by @Bachmann1234 (gh pr #130) - Fixed parser issue where commas were not a valid separator between seconds and microseconds, preventing parsing of ISO 8601 dates. Contributed by @RyansS (gh issue #28, pr #106) - Fixed issue with tzwin encoding in locales with non-Latin alphabets (gh issue #92, pr #98) - Fixed an issue where tzwin was not being properly imported on Windows. Contributed by @labrys. (gh pr #134) - Fixed a problem causing issues importing zoneinfo in certain circumstances. Issue and solution contributed by @alexxv (gh issue #97, pr #99) - Fixed an issue where dateutil timezones were not compatible with basic time objects. One of many, many timezone related issues contributed and tested by @labrys. (gh issue #132, pr #181) - Fixed issue where tzwinlocal had an invalid utcoffset. (gh issue #135, pr #141, #142) - Fixed issue with tzwin and tzwinlocal where DST transitions were incorrectly parsed from the registry. (gh issue #143, pr #178) - updatezinfo.py no longer suppresses certain OSErrors. Contributed by @bjamesv (gh pr #164) - An issue that arose when timezone locale changes during runtime has been fixed by @carlosxl and @mjschultz (gh issue #100, prs #107, #109) - Python 3.5 was added to the supported platforms in the metadata (@tacaswell gh pr #159) and the test suites (@moreati gh pr #117). - An issue with tox failing without unittest2 installed in Python 2.6 was fixed by @moreati (gh pr #115) - Several deprecated functions were replaced in the tests by @moreati (gh pr #116) - Improved the logic in Travis and Appveyor to alleviate issues where builds were failing due to connection issues when downloading the IANA timezone files. In addition to adding our own mirror for the files (gh pr #183), the download is now retried a number of times (with a delay) (gh pr #177) - Many failing doctests were fixed by @moreati. (gh pr #120) - Many fixes to the documentation (gh pr #103, gh pr #87 from @radarhere, gh pr #154 from @gpoesia, gh pr #156 from @awsum, gh pr #168 from @ja8zyjits) - Added a code coverage tool to the CI to help improve the library. (gh pr #182) - We now have a mailing list - [email protected], graciously hosted by Python.org. Version 2.4.2 ------------- - Updated zoneinfo to 2015b. - Fixed issue with parsing of tzstr on Python 2.7.x; tzstr will now be decoded if not a unicode type. gh #51 (lp:1331576), gh pr #55. - Fix a parser issue where AM and PM tokens were showing up in fuzzy date stamps, triggering inappropriate errors. gh #56 (lp: 1428895), gh pr #63. - Missing function "setcachesize" removed from zoneinfo __all__ list by @RyansS, fixing an issue with wildcard imports of dateutil.zoneinfo. (gh pr #66). - (PyPi only) Fix an issue with source distributions not including the test suite. Version 2.4.1 ------------- - Added explicit check for valid hours if AM/PM is specified in parser. (gh pr #22, issue #21) - Fix bug in rrule introduced in 2.4.0 where byweekday parameter was not handled properly. (gh pr #35, issue #34) - Fix error where parser allowed some invalid dates, overwriting existing hours with the last 2-digit number in the string. (gh pr #32, issue #31) - Fix and add test for Python 2.x compatibility with boolean checking of relativedelta objects. Implemented by @nimasmi (gh pr #43) and Cédric Krier (lp: 1035038) - Replaced parse() calls with explicit datetime objects in unit tests unrelated to parser. (gh pr #36) - Changed private _byxxx from sets to sorted tuples and fixed one currently unreachable bug in _construct_byset. (gh pr #54) - Additional documentation for parser (gh pr #29, #33, #41) and rrule. - Formatting fixes to documentation of rrule and README.rst. - Updated zoneinfo to 2015a.
jperkin
pushed a commit
that referenced
this pull request
Oct 5, 2016
2016.9.19 ========= ---- * Default image alt text option created and set to a default of empty string "" to maintain backward compatibility * Fix #136: --default-image-alt now takes a string as argument * Fix #113: Stop changing quiet levels on \/script tags. * Merge #126: Fix deprecation warning on py3 due to html.escape * Fix #145: Running test suite on Travis CI for Python 2.6.
jperkin
pushed a commit
that referenced
this pull request
Oct 22, 2016
2.4.0 (2016-10-10) ------------------ * Added a "disarm" option: ``--no-cov``. It will disable coverage measurements. Contributed by Zoltan Kozma in `PR#135 <https://github.com/pytest-dev/pytest-cov/pull/135>`_. **WARNING: Do not put this in your configuration files, it's meant to be an one-off for situations where you want to disable coverage from command line.** * Fixed broken exception handling on ``.pth`` file. See `#136 <https://github.com/pytest-dev/pytest-cov/issues/136>`_.
jperkin
pushed a commit
that referenced
this pull request
Nov 28, 2016
A major update to Streamlink. With this release, we include a Windows binary as well as numerous plugin changes and fixes. The main features are: Windows binary (and generation!) thanks to the fabulous work by @beardypig Multiple plugin fixes Remove unneeded run-as-root (no more warning you when you run as root, we trust that you know what you're doing) Fix stream quality naming issue Beardypig <[email protected]> (13): fix stream quality naming issue with py2 vs. py3, fixing #89 (#96) updated connectcast plugin to support the new rtmp streams; fixes #93 (#95) Fix for erroneous escape coding the livecoding plugin. Fixes #106 (#121) TVPlayer.com: fix for 400 error, correctly set the platform parameter (#123) Added a method to automatically determine the encoding when parsing JSON, if no encoding is provided. (#122) when retry-streams and twitch-disable-hosting arguments are used the stream is retried until a non-hosted stream is found (#125) plugins.goodgame: Update for API change (#130) plugins.adultswim: added a new adultswim.com plugin (#139) plugins.goodgame: restored DDOS protection cookie support (#136) plugins.younow: update API url (#135) plugins.euronew: update to support the new site (#141) plugins.webtv: added a new plugin to support web.tv (#144) plugins.connectcast: fix regex issue with python 3 (#152) Brainzyy <[email protected]> (1): Add piczel.tv plugin (courtesy of @intact) (#114) Charlie Drage <[email protected]> (1): Update release scripts Erk- <[email protected]> (1): Changed the twitch plugin to use https instead of http as discussed in #103 (#104) Forrest <[email protected]> (2): Modify the changelog link (#107) Update cli to note a few windows issues (#108) Simon Bernier St-Pierre <[email protected]> (1): change icon Simon Bernier St-Pierre <[email protected]> (1): finish the installer (#98) Stefan <[email protected]> (1): Debian packaging base (#80) Stefan <[email protected]> (1): remove run-as-root option, reworded warning #85 (#109) Weslly <[email protected]> (1): Fixed afreecatv.com url matching (#90) bastimeyer <[email protected]> (2): Improve NSIS installer script Remove shortcut from previous releases on Windows beardypig <[email protected]> (8): plugins.cybergame: update to support changes to the live streams on the cybergame.tv website Use pycryptodome inplace of pyCrypto Automated build of the Windows NSIS installer support for relative paths for rtmpdump makeinstaller: install the streamlinkrc file in to the users %APPDATA% directory remove references to livestreamer in the win32 config template stream.rtmpdump: fixed the rtmpdump path issue, introduced in 6bf7fd7 pin requests to <2.12.0 to avoid the strict IDNA2008 validation ethanhlc <[email protected]> (1): fixed instance of livestreamer (#99) intact <[email protected]> (1): plugins.livestream: Support old player urls mmetak <[email protected]> (2): fix vaughnlive.tv info_url (#88) fix vaughnlive.tv info_url (yet again...) (#143) skulblakka <[email protected]> (1): Overworked Plugin for ZDF Mediathek (#154) sqrt2 <[email protected]> (1): Fix ORF TVthek plugin (#113) tam1m <[email protected]> (1): Fix zdf_mediathek TypeError (#156)
jperkin
pushed a commit
that referenced
this pull request
Apr 20, 2017
This is a relatively minor release of Miller, containing feature requests and bugfixes while I've been working on the Windows port (which is nearly complete). Features: JSON arrays: as described here, Miller being a tabular data processor isn't well-position to handle arbitrary JSON. (See jq for that.) But as of 5.1.0, arrays are converted to maps with integer keys, which are then at least processable using Miller. Details are here. The short of it is that you now have three options for the main mlr executable: --json-map-arrays-on-input Convert JSON array indices to Miller map keys. (This is the default.) --json-skip-arrays-on-input Disregard JSON arrays. --json-fatal-arrays-on-input Raise a fatal error when JSON arrays are encountered in the input. This resolves #133. The new mlr fraction verb makes possible in a few keystrokes what was only possible before using two-pass DSL logic: here you can turn numerical values down a column into their fractional/percentage contribution to column totals, optionally grouped by other key columns. The DSL functions strptime and strftime now handle fractional seconds. For parsing, use %S format as always; for formatting, there are now %1S through %9S which allow you to configure a specified number of decimal places. The return value from strptime is now floating-point, not integer, which is a minor backward incompatibility not worth labeling this release as 6.0.0. (You can work around this using int(strptime(...)).) The DSL functions gmt2sec and sec2gmt, which are keystroke-savers for strptime and strftime, are similarly modified, as is the sec2gmt verb. This resolves #125. A few nearly-standalone programs -- which do not have anything to do with record streams -- are packaged within the Miller. (For example, hex-dump, unhex, and show-line-endings commands.) These are described here. The stats1 and merge-fields verbs now support an antimode aggregator, in addition to the existing mode aggregator. The join verb now by default does not require sorted input, which is the more common use case. (Memory-parsimonious joins which require sorted input, while no longer the default, are available using -s.) This another minor backward incompatibility not worth making a 6.0.0 over. This resolves #134. mlr nest has a keystroke-saving --evar option for a common use case, namely, exploding a field by value across records. Documentation: The DSL reference now has per-function descriptions. There is a new feature-counting example in the cookbook. Bugfixes: mlr join -j -l was not functioning correctly. This resolves #136. JSON escapes on output (\t and so on) were incorrect. This resolves #135.
jperkin
pushed a commit
that referenced
this pull request
May 22, 2017
* Do not extract war file Changelog: What's new in 2.61 (2017-05-14) 78 sunny3 cloudy6 stormCommunity reported issues: 2×JENKINS-42959 1×JENKINS-44331 1×JENKINS-44330 Upgrade Groovy from 2.4.8 to 2.4.11. (Groovy 2.4.9 changelog, Groovy 2.4.10 changelog, Groovy 2.4.11 changelog) Integration of Winstone 4: Upgrade bundled Jetty from 9.2.15.v20160210 to 9.4.5.v20170502. This removes support for the deprecated SPDY protocol. The --spdy parameter has been removed accordingly and Jenkins may refuse to start if it's set. (issue 43713) Update the Mailer plugin version installed when updating from very old Jenkins releases to include the fix for SECURITY-372, the SSH Slaves plugin for SECURITY-161, and the Script Security plugin for SECURITY-258. (SECURITY-372, SECURITY-161, SECURITY-258) Freestyle projects may now list Pipeline jobs as downstream and trigger them, without needing to use the Parameterized Trigger plugin or reverse triggers ("Build after other projects are built"). (issue 28113) Internal: Define enabling/disabling in ParameterizedJob rather than AbstractProject. (issue 27299) Internal: Offer default methods on ParameterizedJob to have less boilerplate code. (pull 2864) What's new in 2.60 (2017-05-10) 61 sunny0 cloudy2 stormCommunity reported issues: 1×JENKINS-42959 Update to Windows Service Wrapper 2.1.0 to support new features: download command with authentication, flag for startup failure on download error, Delayed Automatic Start mode. (issue 43737) Windows services: Add system property that allows disabling WinSW automatic upgrade on agents. (issue 43603, more information) Windows services: Restore compatibility of the WindowsSlaveInstaller#generateSlaveXml() method (regression in 2.50, no known external usages). (issue 42745) Windows services: Prevent fatal file descriptor leak when agent service installer fails to read data from the service startup.log. (issue 43930) Use full display name for runs in RSS feed to restore the project name there (regression in 2.59). (issue 44117) Internal: Generalize the changelog API to support non-AbstractBuild run types. (issue 24141) What's new in 2.59 (2017-05-07) 99 sunny0 cloudy5 stormCommunity reported issues: 1×JENKINS-43772 1×JENKINS-42959 1×JENKINS-44117 Move to latest version of Trilead to fix SSH connection issues following a previous Trilead upgrade. (issue 42959, issue 43979, issue 44046) Prevent Internet Explorer from caching AJAX requests using Cache-Control header. (issue 43929) Properly fail with error when updating view with CLI using input of a different view type. (issue 42728) Fix AccessDeniedException in "Build after other projects are built" when user has Discover permission but not Read. (issue 42707) Properly log failure due to empty archive in Pipeline. (issue 38005) Prevent rare NullPointerException if an admin user is created in the setup wizard after first disabling CSRF protection. (issue 44010) What's new in 2.58 (2017-04-30) 152 sunny6 cloudy58 stormCommunity reported issues: 41×JENKINS-43979 3×JENKINS-33021 2×JENKINS-43934 2×JENKINS-42959 1×JENKINS-43772 1×JENKINS-43986 1×JENKINS-44073 1×JENKINS-44071 1×JENKINS-44046 1×JENKINS-112852540 1×JENKINS-2 Use build display names in RSS feed titles. (pull 2845) Update the Trilead SSH library to get support of new Mac, Key, and Key Exchange Algorithms. (issue 33021, issue 26379, issue 31549) Migrate legacy users only once per restart to improve performance of the user retrieval logic. (issue 43936) Internal: Pick up the latest release of version-number library. (issue 43733) Internal: Refactor ProcessTree.Windows logic to propagate errors. (issue 43825) What's new in 2.57 (2017-04-26) 90 sunny0 cloudy4 stormCommunity reported issues: 1×JENKINS-33021 1×JENKINS-43772 1×JENKINS-43934 Important security fixes. (security advisory) What's new in 2.56 (2017-04-23) 87 sunny0 cloudy3 stormCommunity reported issues: 1×JENKINS-43772 Plugins did not expect InvalidPathException to be thrown in file-related methods, so wrap them in IOException to restore behavior (regression in 2.55). (issue 43531) Remove links in stack traces to the stacktrace.jenkins-ci.org service that has been shut down. (issue 42861) If an exception is thrown while rendering an HTTP response, just log the stack trace on the server side, without trying to send an error page to the client. (issue 21695) Prevent NullPointerException when a non-existent default view is specified in Configure System. (issue 42717) Deleting jobs with running builds could result in NullPointerException (regression in 2.55). (issue 43653) What's new in 2.55 (2017-04-15) 111 sunny2 cloudy5 stormCommunity reported issues: 1×JENKINS-43694 1×JENKINS-43531 1×JENKINS-43629 1×JENKINS-43495 1×JENKINS-43772 1×JENKINS-43653 Packaging: Debian package now requires Java 8. (causes regression since 2.54). (issue 43495) Added fine-grain logging of FullDuplexHttpService to diagnose issues when establishing an HTTP Duplex connection. (pull 2481) Update LibZFS from 0.5 to 0.8 to fix compatibility issues with ZFS filesystem and illumos distributions. (issue 41932) Before deleting jobs, try to abort the running builds. Error will be thrown instead of the job deletion if its builds cannot be aborted. (issue 35160) Ensure that Cloud.PROVISION is properly initialized during the configuration loading. (issue 37616) Fix log message formatting when migrating `AllView` names due to JENKINS-38606". (issue 43611) Setup wizard gets into bad state when failures like network issues happen. (issue 41778) Catch and log RuntimeException in Computer#setNode() when updating the Computer list. (issue 42043) SSH CLI client authenticator 1.4. Add missing SSH Public Key field validation in user configuration. (issue 16337) Internal API: SSH CLI client authenticator 1.3. Expose PublicKeySignatureWriter to plugins. (pull 2840) What's new in 2.54 (2017-04-09) 116 sunny3 cloudy37 stormCommunity reported issues: 6×JENKINS-43492 5×JENKINS-43481 4×JENKINS-43495 2×JENKINS-27624 2×JENKINS-30561 1×JENKINS-43772 1×JENKINS-43694 1×JENKINS-43666 1×JENKINS-43199 1×JENKINS-43178 1×JENKINS-41745 1×JENKINS-43503 1×JENKINS-12345 Jenkins (master and agents) now requires Java 8 to run. (issue 27624, issue42709, pull 2802, announcement blog post) Non-Remoting-based CLI. (issue 41745, pull 2795, announcement blog post) Disable SSH server by default. (issue 33595) Use case-insensitive search by default for new and anonymous users. (issue 42645) Introduce status indicator for skipped download job. (issue 40848) Properly handle saving system configuration when disabling all, or all but one, administrative monitors. (issue 42852) When validating a cron expression, consider the specified t) 124 sunny1 cloudy3 stormCommunity reported issues: 1×JENKINS-43178 1×JENKINS-43772 Update to Windows Service Wrapper 2.0.3 and Windows Agent Installer 1.8 to prevent conversion of environment variables to lowercase in the agent executable, regresion in Jenkins 2.50. (issue 42744, WinSW Changelog, Windows Agent Installer changelog) GC Performance: Avoid using FileInputStream and FileOutputStream in the core codebase. (JDK-8080225, issue 42934) Internal API: Add support of a new full screen.jelly. (issue 34670) What's new in 2.52 (2017-03-26) 165 sunny1 cloudy0 stormCommunity reported issues: 1×JENKINS-43178 Computer#addAction would throw an UnsupportedOperationException since Jenkins 2.30. Such a call site was released in SSH SlavesPlugin 1.15 for SECURITY-161. (issue 42969, security advisory including SECURITY-161) Update German localization. (pull 2777) Removed localizations with very low coverage: Albanian, Basque, Belarusian, Bengali, Esperanto, Galician, Georgian, Gujarati, Hindi, Icelandic, Indonesian, Irish, Kannada, Macedonian, Marathi, Mongolian, Occitan, Punjabi, Sinhala, Tamil, Telugu, Thai. (pull 2813) What's new in 2.51 (2017-03-19) 129 sunny0 cloudy5 stormCommunity reported issues: 2×JENKINS-42744 1×JENKINS-42959 Restore Windows Slaves Plugin 1.2 compatibility by restoring windows-service/jenkins.xml, regression in 2.50. (issue 42724) SSHD 1.10: Move SSH server port configuration to security options page. (pull 2796) Update Russian localization. (pull 2798) Update French localization. (issue 42627) Internal: Make sure system threads run as SYSTEM. (issue 42556) Internal API: Add the ability for ItemListener to veto copy operations. (issue 34691) Internal API: Make Run#compareTo work across jobs. (issue 42319) Internal API: Save Jenkins after calling setSecurityRealm or setAuthorizationStrategy. (pull 2790) Internal API: Annotate PermissionGroup#owner @nonnull. (pull 2805) What's new in 2.50 (2017-03-11) 180 sunny10 cloudy12 stormCommunity reported issues: 4×JENKINS-42724 4×JENKINS-42744 2×JENKINS-123 1×JENKINS-111 1×JENKINS-42834 1×JENKINS-4 Allow searching by build parameter values in the Build History widget. (issue 40718) Searching in the Build History widget takes into account user preferences (case sensitivity by default). (pull 2683) When creating temporary files, use the jenkins prefix instead of the old hudson one. (pull 2778) Fix relative links in the SCM polling administrative monitor. (pull 2780) Update Remoting from 3.5 to 3.7 in order to prevent file descriptor leaks on agents in the case of multiple connection attempts. (full changelog) Upgrade the Windows Agent Installer module from 1.6 to 1.7. This change picks major updates in Windows service management logic. This fix caused a critical regression in the Windows Slaves Plugin (JENKINS-42724). Update to Windows Slaves 1.3.1 in order to get the fix applied. (full changelog, guide to upgrading old Windows service agents) Windows services: Upgrade the bundled Windows Service Wrapper from 1.18 to 2.0.2. (full changelog) Windows services: Enable Runaway Process Killer by default in new Agent and Master installations. (issue 39231) Windows services: Enable auto-upgrade of remoting on newly installed agents if they are connected by HTTPS. (issue 39237) Windows services: Add support of shared directories mapping in Windows agent services. (Shared Directory Mapper documentation) Windows services: Change the default Agent service display name prefix to Jenkins agent %ID%. (issue 42468) Windows services: Prevent agent connection reset issues when WinSW gets terminated due to the system shutdown. (issue 22692) Windows services: Integrate various stability and performance fixes in Windows Service Wrapper from 1.18 to 2.0.2. There are many fixes around configuration options and process termination. (full changelog) Prevent file descriptor leaks when Windows Service installer fails to read data from the service startup log. (issue 42670) Select controls in Jenkins Web UI now show the spinner icon while waiting for the list of possible options during AJAX. requests. (issue 42443) Improve plugin access performance in the default PluginManager implementation. (issue 42585) Internal API: Allow providing a custom task name in Run/Schedule UI via the AlternativeUiTextProvider extension. (issue 34522) Search results page did not correctly encode query parameters. (issue 42390) What's new in 2.49 (2017-03-05) 341 sunny32 cloudy0 stormCommunity reported issues: 1×JENKINS-200 1×JENKINS-32986 1×JENKINS-4162 Do not attempt to find the next occurrence of an impossible date such as June 31st in validation of trigger schedules. (issue 41864) Remove invalid translations in Slovene (issue 41756) What's new in 2.48 (2017-02-26) 114 sunny0 cloudy2 stormCommunity reported issues: 1×JENKINS-42910 1×JENKINS-43197 Upgrade Apache Commons Collections to version 3.2.2. Note: Jenkins has been using a blacklist to prevent exploiting the serialization vulnerability in 3.2.1 since before 3.2.2 was released. (issue 31598) Use redirect URLs on jenkins.io instead of linking to wiki pages directly, allowing future reorganization of documentation without breaking links in Jenkins. (pull 2756) Fix performance issue in deduplication of lists of tool installers. (issue 42141) Use of the remote API to create items in views (/view/…/createItem) didn't actually add items to views since Jenkins 2.22. (issue 41128) Do not display a warning when an SCM trigger has no schedules (either to disable SCM post-commit hooks, or to enable them without polling). (issue 42194) Developer: Allow referencing radio buttons in f:validateButton validation methods. (pull 2734) What's new in 2.47 (2017-02-19) 43 sunny1 cloudy3 stormCommunity reported issues: 3×JENKINS-42189 1×JENKINS-43197 Update Groovy to 2.4.8 to address memory leak issue. Do not use this version if you are running Pipeline builds unless you also update Pipeline: Groovy to 2.28 or higher. (issue 33358, issue 42189) Windows service restart did not retain build queue. (issue 32820) Exceptions during Jenkins cleanup step should not block restart. (issue 42164) Upgrade remoting to version 3.5. (full changelog) Remoting 3.5: Remoting clients now accept lowercase (HTTP 2) headers sent by reverse proxies. (issue 40710) Remoting 3.5: Add option to specify the remoting protocol to use on the client. (issue 41730) Remoting 3.5: Stability improvements. (issue 41513, issue 41852) Developer: Snapshot builds of plugins that had dependencies on other snapshot builds were not having their version numbers compared correctly. (issue 41899) What's new in 2.46 (2017/02/13) 69 sunny0 cloudy0 storm Failure to serialize a single Action could cause an entire REST export response to fail. Upgraded to Stapler 1.250 with a fix. (issue 40088) Do not fail to write a log file just because something deleted the parent directory. (issue 16634) Use extensible BUILD_NOW_TEXT for parameterized jobs. (issue 41457) Display an informative message, rather than a Groovy exception, when View#getItems fails. (issue 41825) Don't consider a project to be parameterized if no parameters are defined. (issue 37590) Don't add all group names as HTTP headers on "access denied" pages. (issue 39402) Ensure that PluginManager#dynamicLoad runs as SYSTEM. (issue 41684) Add Usage Statistics section to the global configuration to make it easier to find. (issue 32938) Allow groovy CLI command via SSH CLI. (issue 41765) What's new in 2.45 (2017/02/06) 33 sunny0 cloudy0 storm Delete obsolete pinning UI. (issue 34065) Don't try to set Agent Port when it is enforced, breaking form submission. (issue 41511) Use project-specific validation URL for SCM Trigger, so H is handled correctly in preview. (issue 26977) Fix completely wrong Basque translation. (pull 2731) What's new in 2.44 (2017/02/01) 35 sunny2 cloudy1 stormCommunity reported issues: 1×JENKINS-1051 Important security fixes (security advisory) What's new in 2.43 (2017/01/29) 16 sunny1 cloudy0 storm Print stack traces in logical order, with the most important part on top. (pull 1485) What's new in 2.42 (2017/01/22) 24 sunny0 cloudy0 storm IllegalStateException from Winstone when making certain requests with access logging enabled. (issue 37625) What's new in 2.41 (2017/01/15) 22 sunny0 cloudy0 storm Restore option value for setting build result to unstable when loading shell and batch build steps from disk. (issue 40894) Autocomplete admin-only links in search suggestions only when admin. (issue 7874) Improve agent protocol descriptions. (issue 40700) Improve description for Enable Security option and administrative monitor when security is off. (issue 40813) Enable the JNLP4 agent protocol by default. (issue 40886) What's new in 2.40 (2017/01/08) 43 sunny0 cloudy0 storm Support displaying of warnings from the Update Site in the Plugin Manager and in administrative monitors. (issue 40494, announcement blog post) Do not print warnings about undefined parameters when hudson.model.ParametersAction.keepUndefinedParameters property is set to false. (pull 2687) Increase the JENKINS_HOME disk space threshold from 1Gb to 10Gb left. The warning will be shown only if more than 90% of the disk is utilized. (issue 40749) Plugin Manager: Redirect back to the Advanced Tab when saving the Update Site URL. (pull 2703) Prevent the ClassNotFoundException: javax.servlet.ServletException error when invoking shell tasks on remote agents. (issue 40863) Jobs were hanging during process termination on the Solaris 11 Intel platform. (issue 40470, regression in 2.20) Fix handling of the POST flag in ManagementLinks within the Manage Jenkins page. (issue 38175) Require POST in the Reload from disk management link. (pull 2692) What's new in 2.39 (2017/01/02) 18 sunny0 cloudy0 storm Properties were not passed to Maven command by Maven build step when the Inject Build Variables flag was not set. (issue 39268) Update remoting to 3.4 in order to properly terminate the channel in the case Errors and Exceptions. (issue 39835) Improved Polish and Catalan translations. (pull 2688 and pull 2686) What's new in 2.38 (2016/12/25) 21 sunny0 cloudy0 storm Update to Winstone 3.2 to support ad-hoc certificate generation on Java 8 (using unsupported APIs). This option is deprecated and will be removed in a future release. We strongly recommend you create self-signed certificates yourself and use --httpsKeyStore and related options instead. (issue 25333) The install-plugin CLI command now correctly installs plugins when multiple file arguments are specified. (issue 32358) Correctly state that Jenkins will refuse to load plugins whose dependencies are not satisfied in plugin manager. (issue 40666) What's new in 2.37 (2016/12/18) 27 sunny4 cloudy0 storm Allow defining agent ping interval and ping timeout in seconds. It can be done via the hudson.slaves.ChannelPinger.pingIntervalSeconds and hudson.slaves.ChannelPinger.pingTimeoutSeconds system properties. (issue 28245) Delegate JNLP HMAC computation to SlaveComputer instances when possible. (issue 40286) Diagnosability: Split Exception handling of node provision and adding to Jenkins. (issue 38903) Do not report -noCertificateCheck warning to STDOUT. (pull 2666) Improve overall performance of Jenkins by accessing item group elements without sorting where it is possible. (pull 2665) Convert URI encoding check on the Manage Jenkins page into admin monitor. (issue 39433) Update SSHD Core from 0.8.0 to 0.14.0. (pull 2662) SSHD Module: Handshake was failing (wrong shared secret) 1 out of 256 times due to SSHD-330. (issue 40362) View display name was ignored during rendering of tabs. (issue 39300) Job configuration submission now does not fail when there is no parameters property. (issue 39700, regression in 1.637) Fix names of item loading and cleanup Jenkins initialization stages. (issue 40489) Performance: Use bulk change when submitting Job configurations to minimize the number of sequential config.xml write operations. (issue 40435) Check for Updates button in the Plugin Manager was hidden in the Updates tab when there was no plugins updates available. (issue 39971) Remoting 3.3: Agent JAR cache corruption was causing malfunctioning of agents. (issue 39547) Remoting 3.3: Improve diagnostics of the preliminary FifoBuffer termination in the JNLP2 protocol. (issue 40491) Remoting 3.3: Hardening of FifoBuffer operation logic. The change improves the original fix of JENKINS-25218. (remoting pull #100) Remoting 3.3: ProxyException now retains info about suppressed exceptions when serializing over the channel. (remoting pull #136) API: Introduce the new Jenkins#isSubjectToMandatoryReadPermissionCheck(String restOfPath) method for checking access permissions to particular paths. (issue 32797) API: Introduce new Node#getNodeProperty() methods for retrieving node properties. (issue 40365) API: Introduce new Items#allItems() methods for accessing items in item groups without sorting overhead. (issue 40252) Improved Polish translation. (pull 2643) What's new in 2.36 (2016/12/11) 31 sunny0 cloudy0 storm Several badges were missing in builds flagged as KeepBuildForever. (issue 40281, regression in 2.34) Retain cause of blockage if the Queue task cannot be taken due to the decision of QueueTaskDispatcher extension, NodeProperty and other extensions. (issue 38514) Internal API: Allow overriding UserProperty.setUser(User). (issue 40266) Internal API: Restrict usage of core localization message classes in plugins. These message classes are not guaranteed to be binary compatible. (pull 2656) What's new in 2.35 (2016/12/04) 47 sunny1 cloudy0 stormCommunity reported issues: 1×JENKINS-40281 Add display name and full display name of items to the remote API. (issue 39972) API: Allow specifying log level in SystemProperties when a System property is undefined. (pull 2646) Followup fix for JENKINS-23271 in 2.34 addressing plugin implementations not using ProcStarter. (pull 2653) What's new in 2.34 (2016/11/27) 19 sunny0 cloudy3 stormCommunity reported issues: 2×JENKINS-40092 1×JENKINS-34604 Improve performance of Action retrieval methods. It speeds up core and plugin logic operating with Actionable objects like items, folders, nodes, etc. (issue 38867) Update the SSHD module from 1.7 to 1.8. The change disables obsolete Ciphers: AES128CBC, TripleDESCBC, and BlowfishCBC. (issue 39805) Update the Windows process management library (WinP) from 1.22 to 1.24. Full changelog is available here, only major issues are mentioned below. (pull 2619) WinP 1.24: Native class now tries loading DLLs from the temporary location. (issue 20913) WinP 1.24: WinP sometimes kills wrong processes when using killRecursive(). It was likely impacting process termination on Windows agents and sometimes leading to BSoD. (issue 24453, WinP Issue #22) What's new in 2.33 (2016/11/20) 49 sunny1 cloudy4 stormCommunity reported issues: 1×JENKINS-34604 1×JENKINS-40092 1×JENKINS-39554 Reduce size of Jenkins WAR file by not storing identical copies of remoting.jar/slave.jar there. (pull 2633) Prevent early deallocation of process references by Garbage Collector when starting a remote process. It was sometimes causing build failures with messages like FATAL: Invalid object ID 184 iuota=187 and java.lang.Exception: Object was recently deallocated. (issue 23271) Make handling of internalization resource bundle names compliant with W3C standards. (issue 39034) Redirect to login page in the case of authorisation error when checking connectivity to the Update Center. (issue 39741) Remove the obsolete hudson.showWindowsServiceInstallLink property from the slave-agent.jnlp file. It was causing harmless security warnings in Java web start. (issue 39883) Improved Polish translation. (pull 2640) What's new in 2.32 (2016/11/16) 37 sunny0 cloudy0 storm Important security fixes (security advisory) Allow disabling the Jenkins CLI over HTTP and JNLP agent port by setting the System property jenkins.CLI.disabled to true. What's new in 2.31 (2016/11/13) 19 sunny0 cloudy0 storm Performance: Improve responsiveness of Jenkins web UI on mobile devices. (issue 39172, continuation of the patch in 2.28) It was not possible to connect Jenkins agents via Java Web Start due to the issue in Remoting 3.0. Upgraded to Remoting 3.1 with a fix. (issue 39596, regression in 2.26) Prevent NullPointerException when rendering CauseOfInterruption.UserInterruption in build summary pages for non-existent users. (issue 38721 and issue 37282, regression in 2.14) Reduce logging level when the localization resource is missing ResourceBundleUtil#getBundle(). (issue 39604) ExtensionList.removeAll was not unimplemented in Jenkins extension management API. It was causing issues during dynamic loading of GitHub and BitBucket branch source plugins on the same instance. (issue 39520) Remoting 3.1: hudson.remoting.Engine (mostly Java Web Start) was failing to establish connection if one of the URLs in urls parameter was malformed. (issue 39617) Remoting 3.1: Add method for dumping diagnostics across all the channels (e.g. in the Support Core Plugin). (issue 39150) Remoting 3.1: Improve the caller/callee correlation diagnostics in thread dumps. (issue 39543) Remoting 3.1: Add the org.jenkinsci.remoting.nio.NioChannelHub.disabled flag for disabling NIO, mostly for debugging purposes. (issue 39290) Remoting 3.1: Add extra logging to help diagnosing IOHub concurrent thread number spikes. (issue 38692) Remoting 3.1: When a proxy fails, report what caused the channel to go down. (issue 39289) Improved Polish translation. (pull 2631) What's new in 2.30 (2016/11/07) 39 sunny2 cloudy1 stormCommunity reported issues: 3×JENKINS-39596 Adjust incompatible Actionable initialization changes made for issue 39404). It caused massive regressions in plugins like Jenkins Pipeline. (issue 39555, regression in 2.29) Integration of Stapler 1.246 caused regressions in plugins depending on Ruby Runtime Plugin. Upgraded to Stapler 1.248 with a fix. (issue 39414, regression in 2.28) Custom remoting enable/disable settings were not properly persisted on the disk and then reloaded. If the option has been configured in Jenkins starting from 2.16, a reconfiguration may be required. (issue 39465) What's new in 2.29 (2016/11/06) 6 sunny1 cloudy10 stormCommunity reported issues: 7×JENKINS-39555 3×JENKINS-39414 1×JENKINS-39465 Warning! This release is not recommended for use due to issue 39555 and issue 39414. We are working on the out-of-order release (discussion). Performance: Optimize log retrieval logic for large log files. (issue 39535) Integration of Stapler 1.246 caused regressions in plugins depending on Ruby Runtime Plugin. Upgraded to Stapler 1.247 with a partial fix. (issue 39414, partial fix) Jenkins startup does not fail if one of ComputerListeners throws exception in the onOnline() handler. (issue 38487) Queue: Do not consider pending tasks from the internal scheduling logic when looking for duplicate tasks. It was causing race conditions in Jenkins Pipeline. (issue 39454) Internal: Modify the Actionable API to provide methods to assist with manipulation of persisted actions. (issue 39404) Internal: Jelly attribute documentation now supports the since tag. (Stapler pull #84) What's new in 2.28 (2016/10/30) 24 sunny1 cloudy8 stormCommunity reported issues: 3×JENKINS-39414 2×JENKINS-39232 1×JENKINS-11053 1×JENKINS-39465 Performance: Improve responsiveness of Jenkins web UI on mobile devices. (issue 39172) Print warnings if none of Tool Installers can be used during the tool installation. (issue 26940) Update the minimal required versions of the detached Maven Project plugin from 2.7.1 to 2.14. Changelog is available here. (pull 2606) Update the minimal required versions of the detached JUnit plugin from 1.2-beta-4 to 1.6. Changelog is available here. (pull 2606)) Relax requirements of the JNLP connection receiver, which was rejections connections from agents not using JNLPComputerLauncher (e.g. from Slave Setup, vSphere Cloud and other plugins). No the connection is accepted from launchers implementing other proxying and filtering Launcher implementations. Particular plugins may require setting up the jenkins.slaves.DefaultJnlpSlaveReceiver.disableStrictVerification system property in the master JVM to allow connecting agents. (issue 39232, regression in 2.28) Prevent resource leak in hudson.XmlFile#readRaw() in the case of encoding issues. (issue 39363) Prevented endless loop in LargeText.BufferSession.skip(), which was causing hanging of Pipeline jobs in corner cases. (issue 37664) Internal: Upgrade Stapler library from 1.243 to 1.246 with fixes required for the Blue Ocean project. More details are coming soon. Raw changes are listed here. (pull 2593) Internal: Start defining APIs that are for the master JVM only. (issue 38370) Internal: Update Guice dependency from 4.0-beta to 4.0. This change required upgrade of detached plugins (see above). (pull 2568) What's new in 2.27 (2016/10/23) 22 sunny0 cloudy6 stormCommunity reported issues: 4×JENKINS-39232 Upgrade to the Remoting 3 baseline. Compatibility notes are available here. (issue 37564) Remoting 3.0: New JNLP4-connect protocol, which improves performance and stability compared to the JNLP3-connect protocol. (issue 36871) Remoting 3.0: Agents using slave.jar now explicitly require Java 7. (issue 37565) Prevent deadlocks during modification of node executor numbers (e.g. during deletion of nodes). (issue 31768) Add missing internationalization support to ResourceBundleUtil. It fixes internationalization in Blue Ocean and Jenkins Design Language. (issue 35845) Internal: Make the code more compatible with Java 9 requirements and allow its editing in newest NetBeans versions with NB bug 268452. (pull 2595) Internal: Icon handling API for items. Deprecate TopLevelItemDescriptor#getIconFilePathPattern() and switch to IconSpec. (issue 38960) What's new in 2.26 (2016/10/17) 18 sunny0 cloudy5 storm Allow CommandInterpreter build steps to set a build result as Unstable via the return code. Shell and Batch build steps now support this feature. (issue 23786) Performance: Avoid acquiring locks in MaskingClassloader. (issue 23784) Performance: Update XStream driver to improve performance of XML serialization/deserialization. (pull 2561) Harden checks of prohibited names in user creation logic. Untrimmed spaces and different letter cases are being checked now. (issue 35967) Performance: Fix the performance of file compress/uncompress operations over the remoting channel. (issue 38640, issue 38814) Restore automatic line wrapping in Build Step text boxes with syntax highlighting. (issue 27367) Properly remove disabled Administrative Monitors from the extension list. (issue 38678) Remoting 2.62.2: Improve connection stability by turning on Socket Keep-alive by default. Keep-alive can be disabled via the -noKeepAlive option. (issue 38539) Remoting 2.62.2: Prevent NullPointerException in Engine#connect() when host or port parameters are null or empty. (issue 37539) Node build history page was hammering the performance of the Jenkins instance by spawning parallel heavy requests. Now the information is being loaded sequentially. (issue 23244) Cleanup spelling in CLI help and error messages. (issue 38650) Properly handle quotes and other special symbols in item names during form validation. (issue 31871) Internal: Invoke hpi:record-core-location during the build in order to enabled coordinated run across repositories. (pull 1894) Internal: Bulk cleanup of @SInCE definitions in Javadoc. (pull 2578)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
fix build on SmartOS