for 1.9.0
* Pip is now the only supported install method
* Simplified install to a handful of copy-n-paste instructions
  (config files require manual edits but they are simplified to just one or two edits in the most common case)
* Modernize packaging with pyproject.toml, which enables:
  * Version checks, requirements, and dependencies managed automatically by pip
  * Version is now tracked using git tags
* ca_certs updated to include only Let'sEncrypt and InCommon root CA certs
* Add a script to manage (rebuilding or appending certs to) the ca_certs file
* Add github actions to publish to pypi and test.pypi
* Add support to install dev versions from test.pypi
* Old docs moved to "xsede" folder pending further review (see README in that folder)
* In-progress docs moved to "drafts" folder

for 1.8.4
* Fix #20 (broken links in "README" & "install-from-github", update version in setup.py)

for 1.8.3
* CTT-221 create an install-from-repo method
* CTT-303 Add version to IPF Quick Install
* CTT-304 backwards compatible quick install
* CTT-340 Update docs for 3 install methods
* Fix #16 (File is created for whatever command line option flag is given.)

for 1.8.2-1
* Bug fix for extmodules workflow where IPF was interpreting the Application
Name to be "ApplicationName/ApplicationVersion"

for 1.8.1-1
* Bug fix for how IPF handles an edge case that can occur in lmod_cache files (spiderT.lua) where the version of a module might not be a string.
* Formalizes the lupa dependency needed for reading lua files.
* packaging changes

for 1.8-1
* New lmod_cache_file parameter to ExtModules workflow; when specified, only
the modules in the spiderT table from the cache file will be published, and
nothing in the hiddenT table will be published.
* new configuration parameter --lmod_cache_file
* fix for init script: su command needed a -c argument
* IPF documentation revised for clarity and completeness
* ipf_configure default for support contact now JSON blob not URL

for 1.7-1
* fileread.py reads and parses generic json files, sample etc/ipf/workflow/templates/{generic_print,generic_publish}.json
* docs/GENERIC_PUBLISHER.md documents how to configure the new generic publisher
* all aspects of interaction between IPF and Slurm are parameterizable so that changes in the schedulers do not require new IPF code
* Improved configuration, bootstrapping of position files for monitoring slurmctl.log
* Modules improvements: Do not publish modules with a don’t publish flag
* Refactored IPF configuration  (command line parameters to (re)configure single specific workflows)
* IPF documentation revised for clarity and completeness
* Convenience script for keeping ca_certs.pem up to date with XSEDE trusted CAs
* Now can use python-amqp 2.4 and above

from 1.4-2 to 1.4.3
* fixed publishing of IPF information, formatted as a PublisherInfo glue2 entity (not defined by glue2 spec), and added it to the modules, compute, activities and services workflows
* fixed parsing of GPU resources on Bridges from scontrol output
* fixed ipf_configure_xsede Location bug: it now correctly puts the configured location into the workflow json file as params
