Change Log

4.0.0 (unreleased)

Planned:

3.4.2 (2023-11-29)

  • Fully support adding units and comments to FITS table columns (PR #201).

  • Created desiutil.names and added a function to it that takes an RA and DEC and produces a DESINAME that can be used to refer to a DESI object at that sky location (PR #203).

3.4.1 (2023-09-25)

3.4.0 (2023-09-14)

  • Add tools for adding units to Table columns (PR #199).

3.3.1 (2023-06-13)

  • Ensure old IERS cache files do not actually trigger an exception (PR #195).

  • Allow desiInstall to install files world-readable (PR #195).

3.3.0 (2023-05-04)

  • Migrate python setup.py commands to stand-alone scripts, maintaining some compatibility until version 4.0 (PR #190).

3.2.6 (2022-08-26)

  • desiInstall uses desihub location of simqso fork (commit e963344).

  • Allow desiInstall to remove permission-locked directories; suppress certain pip warnings (PR #185).

  • Allow desiInstall to compile code in certain branch installs (PR #188).

  • Add gpu_specter to known packages (PR #189).

3.2.5 (2022-01-20)

3.2.4 (2022-01-10)

3.2.3 (2021-10-27)

  • Optionally compute the MW dust transmission in the WISE bands (PR #175).

  • Do not treat messages printed on STDERR as errors during desiInstall (PR #176).

  • Add desiutil.brick.Bricks.brick_tan_wcs_size() to compute required size of TAN-projection WCS tiles (PR #177).

  • Improve some test coverage; RTD fixes (PR #178).

3.2.2 (2021-06-03)

  • Add support to config_module() for packages like QuasarNP where the GitHub name is capitalized but the internal Python package isn’t (PR #173).

3.2.1 (2021-05-13)

  • Changes in desiutil.dust: use Fitzpatrick reddening, add dust_transmission() function, include GAIA bands (PR #171).

  • desiutil.depend.possible_dependencies(): add fiberassign, desimeter, and gpu_specter (direct commit).

3.2.0 (2021-03-29)

  • Use pip install . instead of python setup.py install (PR #168).

3.1.2 (2021-02-15)

  • Fixes for Numpy 1.20 (PR #162).

  • desiInstall auto derive build type “py” or “make” or “src” but don’t combine them (PR #163).

  • desiInstall only fallback to NERSC default installdir if --root isn’t specified (PR #163).

  • Add desiutil.depend.mergedep() to merge DEPNAMnn/DEPVERnn dependencies between different headers (PR #164)

3.1.1 (2020-12-23)

  • astropy.erfa no longer exists in more recent versions of Astropy (PR #159).

  • Add function dust.extinction_total_to_selective_ratio() (PR #157).

3.1.0 (2020-12-11)

  • Migrate unit tests to GitHub Actions; allow desiInstall to handle a diversity of possible branch names (PR #156).

  • Add redirect for utilites related to redirecting STDOUT (PR #153).

  • Add Timer class to standardize timing reports (PRs #151, #152).

3.0.3 (2020-08-04)

  • Improve installation robustness when parsing DESICONDA environment variable; fix py3.8 SyntaxWarnings about “is not” usage (PR #150).

3.0.2 (2020-07-31)

  • Travis testing with old healpy and old astropy (PR #149).

  • Use https to avoid redirect for data downloads (PR #148).

3.0.1 (2020-06-12)

  • Start migrating to use pytest to run tests instead of python setup.py test (PR #145).

  • Update package list in desiutil.install; enable parallel make (PR #143).

  • Protect against running fix_permissions.sh in HOME (PR #142).

3.0.0 (2020-04-15)

Note: minor desiutil.plots API and usage changes due to PR #141 so moving to major version 3.0.0, even though the majority of desiutil remains compatible with 2.x.x

2.0.3 (2020-04-10)

2.0.2 (2020-01-25)

  • Update NERSC paths for CFS (PR #137).

2.0.1 (2019-09-24)

2.0.0 (2019-09-15)

  • This version does not support Python 2.

  • No significant API changes, however.

1.9.16 (2019-08-09)

  • Add support for auto-generating API documentation via python setup.py api (PR #131).

  • Fix basemap plot tests by using unique axes (PR #135).

1.9.15 (2018-12-14)

1.9.14 (2018-10-05)

  • Restrict write access on software installed with desiInstall (PR #122).

1.9.13 (2018-09-06)

  • Add /maps to the default dust directory (PR #119).

1.9.12 (2018-09-05)

  • Port the dust map code from desitarget to desiutil (PR #116).

1.9.11 (2018-05-10)

  • Installing extra data happens after the main install, to prevent collisions in creating the install directory (Issue #102, PR #109).

  • fix_permissions.sh ignores the group-write bit (Issue #108, PR #109).

  • Remove support for a desiInstall configuration file. All options are specified on the command-line (Issue #103, PR #109).

  • Update sklearn module to support updates to sklearn.mixture.GaussianMixture (PR #111).

  • Added scatter option to desiutil.plots.plot_slices(); avoid slow PNG generation for large data samples (PR #112).

1.9.10 (2018-03-29)

  • Remove support for desiInstall in environments other than NERSC (PR #101).

  • Try as best as possible that Python executable scripts are installed with an explicit desiconda version (PR #105).

1.9.9 (2017-12-20)

1.9.8 (2017-11-09)

  • Adds redrock, surveysim, desisurvey, and healpy to dependency version checks.

  • Adds redrock and surveysim to known products for installation.

  • Fix team name in license file.

  • Support new /global/common/software filesystem at NERSC.

  • Support coriknl versions of desiconda.

1.9.7 (2017-09-29)

  • Fixed some test failures that occurred in the NERSC environment and/or in an installed package, as opposed to a git checkout (PR #80).

  • Fixed bug in desiutil.brick.Bricks.brick_radec() handling scalar inputs (PR #81).

  • Fixed bugs that could cause bricks to be slightly too big, and that incorrectly special-cased the north pole with brick sizes that don’t evenly divide 180 degrees (PR #84).

  • Adds return_grid_data option to desiutil.plots.plot_sky_binned() (PR #85).

  • Added tests of desiutil.sklearn (PR #86).

1.9.6 (2017-07-12)

  • Changed the location where code is installed so that code is correctly matched to the corresponding DESI+Anaconda (desiconda) version (PR #77).

1.9.5 (2017-06-15)

1.9.4 (2017-06-01)

  • Moved desispec.brick to desiutil.brick (PR #70).

  • Get .travis.yml file and other components ready for Python 3.6.

  • Increase test coverage in a few areas.

  • Make basemap an optional dependency (PR #61).

  • Fix desiInstall on cori.

  • Add desiutil.census to calculate DESI disk space use.

1.9.3 (2017-03-01)

  • Added new desiutil.sklearn module and distutils.sklearn.GaussianMixtureModel class to save and sample from a Gaussian mixture model.

  • Added new functions for creating all-sky maps (PR #52) with an accompanying tutorial notebook in doc/nb/.

  • Add option to fix_permissions.sh to remove group-writeability for “official” data. Also, make sure that files and directories are group-readable.

  • Moved logging infrastructure from desispec (PR #56).

1.9.2 (2016-11-18)

  • Enables desiInstall of desihub packages even if they aren’t in the desiutil.install.known_products list yet.

  • Include desiutil.plots in documentation.

1.9.1 (2016-10-17)

  • Allow top-level /python directories to be detected (not just /py) to support redmonster.

1.9.0 (2016-10-12)

  • Shorten Python version printed in dependency headers.

  • desiutil.test.test_plots was not cleaning up after itself.

  • Support new DESI+Anaconda software stack infrastructure (PR #43).

  • Fixes names() when mask is a numpy.uint64 (desihub/desitarget#79).

  • names() is much faster.

  • Fixed problem opening tar files in Python 3.

1.8.0 (2016-09-10)

  • Added encode_table() and decode_table() for converting string columns in tables between unicode and bytes (PR #41).

  • Set apache permissions by number instead of by name.

1.7.0 (2016-08-18)

1.6.0 (2016-07-01)

  • Fixed some import statements so documentation will build on readthedocs.

  • add_dependencies() to add DEPNAM/DEPVER for common DESI dependencies

1.5.0 (2016-06-09)

  • Fixed bug affecting people with the C version of Modules installed on laptops.

  • Added desiutil.depend tools for manipulating DEPNAMnn and DEPVERnn keywords in FITS headers.

1.4.1 (2016-06-07)

  • Don’t consider warning messages about astropy_helpers to be errors.

  • Update desiInstall documentation, adding information about environment variables.

  • Use distutils.command.sdist.sdist to ensure that MANIFEST.in is respected.

  • Add some test coverage in desiutil.setup.

  • Cleaned up documentation of desiutil.io and several other modules.

  • Modified conversion of keys to string in desituil.io.yamlify

  • Log IP address in Travis Tests.

1.4.0 (2016-04-28)

  • Fix module processing problem for non-DESI Python packages.

  • Allow NERSC Modules root directory to be overridden in a configuration file.

  • desiutil.stats module was previously snuck in, but never documented.

  • Minor fixes for desiInstall bootstrap mode.

  • PR #30: Enable use of weights in iter_fit().

  • Add a method for connverting Python objects to yaml-ready format. Includes unicode to str conversion.

1.3.6 (2016-03-25)

1.3.5 (2016-03-15)

  • Ignore some additional MANIFEST.in warnings.

  • Allow known_products and cross-install configuration to be overridden using an optional configuration file.

  • Allow products to specify a method to download additional data not bundled with the code.

1.3.4 (2016-02-22)

  • Support GitHub tags that start with ‘v’.

  • Add support for speclite.

1.3.3 (2016-02-03)

  • Added stats module to compute percentiles on distributions.

1.3.2 (2016-01-25)

  • Recent versions of setuptools do not include setuptools.compat. A simple workaround was added to fix that.

1.3.1 (2016-01-12)

  • Update MANIFEST.in file.

  • Ignore additional warnings produced by MANIFEST.in.

  • Always run fix_permissions.sh after install.

  • Remove references to defunct hopper system.

1.3.0 (2015-12-09)

  • Updated docstrings for bitmasks.

  • Added funcfits module.

1.2.0 (2015-11-24)

  • Added bitmask processing code, desiutil.bitmask.

  • Fixed a minor variable name bug.

  • Ignore warnings produced by processing MANIFEST.in.

  • Fixed return value in cross_install.

  • Fixed a missing run stage.

1.1.1 (2015-11-18)

  • Update the list of NERSC hosts, including cori.

  • Code is now PEP 8 compliant.

1.1.0 (2015-11-06)

  • Don’t print scary warning about DESI_PRODUCT_ROOT not being set if running at NERSC.

  • Support running python setup.py version in svn products.

  • Move Modules support code into separate sub-package.

  • Simplify Travis build system.

  • Remove some obsolete files.

  • Simplify package structure.

1.0.1 (2015-11-03)

  • Fix issue where the Python tarfile package was failing to autodetect gzipped files.

1.0.0 (2015-10-29)

  • pip install support.

  • Travis build support.

  • Read the Docs support.

  • Remove unnecessary Sphinx extensions.

  • Create setup subpackage for functions that go in setup.py files.

  • fix_permissions.sh won’t clobber executable bits.

0.6.0 (2015-10-13)

Note: This tag should not be used or installed. It is an intermediate tag intended to fix a subtle issue with how svn tags are translated into git tags.

  • Fixed a problem with log handling.

  • Use module switch instead of module load when a module is already loaded.

  • Add changes.rst file.

  • Add LICENSE.rst file.

  • Migration to GitHub - Change case of desiutil. - Add git support functions.

0.5.5 (2015-01-16)

  • Fix a corner case when desiInstall tries to install desiUtil.

  • Fix an svn version string parsing error.

0.5.4 (2015-01-16)

  • Fix a minor syntax error.

0.5.3 (2015-01-16)

  • Fix a minor syntax error.

0.5.2 (2015-01-16)

  • Update desiInstall documentation.

  • Changes to doc compilation.

0.5.1 (2015-01-14)

  • Update desiInstall documentation.

  • Handle -hpcp module names.

  • Move build type detection to separate function.

  • Move documentation generation to separate function.

  • Add cross-install support.

0.5.0 (2015-01-14)

  • Adding support for GitHub installs.

0.4.2 (2015-01-12)

  • Fix a minor syntax error.

0.4.1 (2015-01-12)

  • Fix a minor syntax error.

0.4.0 (2015-01-12)

  • Major refactor of install, support ‘plain’ products.

  • Use svn --non-interactive where possible.

0.3.9 (2014-09-12)

  • Change the way tags are sorted.

  • Tweak documentation compilation.

0.3.8 (2014-06-24)

  • Change severity of certain log messages.

0.3.7 (2014-06-24)

  • Minor fix to logging.

0.3.6 (2014-06-24)

  • Don’t auto-generate the desiInstall script.

0.3.5 (2014-06-24)

  • Use ez_setup.py.

0.3.4 (2014-06-23)

  • Reconfigure how the desiInstall script is created.

0.3.3 (2014-06-23)

  • Tweak module file detection.

0.3.2 (2014-06-23)

  • Fix chmod error.

0.3.1 (2014-06-23)

  • Change version() to __version__.

0.3.0 (2014-06-10)

  • Change how version strings are set.

  • Auto-detect a variety of build types.

0.2.5 (2014-05-26)

  • Fix how the Modules Python init file is detected.

0.2.4 (2014-05-06)

  • Fix directory creation for trunk/branch installs.

0.2.3 (2014-05-02)

  • Change how dependencies are handled in the module file.

  • Move some dependency processing to separate function.

  • General restructuring.

0.2.2 (2014-05-01)

  • Copy extra files in the etc directory.

  • Remove some data files from setup.py.

0.2.1 (2014-05-01)

  • Tweak how versions are reported.

0.2.0 (2014-05-01)

  • Tweak documentation.

  • Add ACL detection to fix_permission script.

0.1 (2014-01-09)

  • First tag.