CHANGELOG
* Fri Aug 30 2024 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 3.4.1-1
- Improved error logging to store full traceback on unexpected exceptions.
- Changed more code to use pyOpenSSL to improve compatibility with newer OpenSSL versions.
- Added a check to prevent a host certificate being to used for target server encryption.
- Changed which version of exit function is used to avoid edge case.
- Various changes and improvements to build scripts and processes.
* Wed Feb 21 2024 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 3.4.0-1
- Fixed compatability with newer versions of OpenSSL that only provide comma separated DNs.
- Fixed Python 3 compatability (indirectly fixing EL8+ compatability) by performing explicit
decoding. Note that this limits messages to ASCII as this is the current behaviour.
- Added new build script that handles both RPM and DEB pacakging and later OSes.
- Changed default config file values to bring in line with AMS usage.
* Mon Oct 09 2023 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 3.3.0-1
- Added warning that BDII broker fetching will be deprecated in a future version.
- Added non-zero exit status if sender or receiver crash.
- Fixed SSM hanging if TCP connection drops by adding timeout.
- Fixed directory queue system picking up sub-directories.
- Fixed AMS messaging library dependency issue.
- Fixed documentation for running a containerised receiver.
- Fixed a few minor code issues.
* Thu Jun 29 2023 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 3.3.0-1
- Added destination queue to the log during startup to aid troubleshooting.
- Added check that the config file exists to allow for better error messages.
- Changed dependencies to limit python-ldap below 3.4.0 and python-daemon below 2.3.0.
- Changed rpmbuild config to use less OS-specific dependencies.
- Fixed read timeouts leading to a crash.
- Fixed command line arguments to allow a relative file path for the DNs file.
- Removed the separate logging config file.
- Removed python-daemon as a hard requirement as only needed for receivers.
- Refactored a large amount of code for maintainability and security.
* Wed Apr 28 2021 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 3.2.1-1
- Changed certificate and key comparison to allow both RSA and EC keys.
- Corrected dependencies to include OpenSSL.
* Thu Mar 18 2021 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 3.2.0-1
- Added logging of what certificate DNs/subjects are being used to facilitate
troubleshooting.
- Added stomp.py as .deb package dependency to avoid broken installations.
- Refactored code to enable simpler external calls and better testing.
* Wed Dec 16 2020 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 3.1.1-1
- Changed logging to reduce how verbose the logging of a 3rd-party module is.
* Tue Dec 01 2020 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 3.1.0-1
- Enabled retries for all AMS communication methods to avoid timeouts from
crashing SSM.
* Wed Sep 23 2020 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 3.0.0-1
- As part of the migration to Python 3, this release removes support for
Python 2.6.
- The argo-ams-library is now an optional module, depending on whether AMS is
used or not.
- Fixed how the use_ssl config option is retrieved to avoid "referenced before
assignment" errors leading to SSM failing to run.
- Changes made to messaging loops to avoid high CPU usage.
* Tue Sep 03 2019 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 2.4.1-1
- Fixed handling of OpenSSL errors so that messages that have been tampered
with are now rejected.
- Changed logging to remove excessive messages from a 3rd-party module used
when sending via AMS.
* Thu Aug 01 2019 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 2.4.0-1
- Added support for sending and receiving messages using the ARGO Messaging
Service (AMS).
- Added option to send messages from a directory without needing to conform to
the file naming convention that the dirq module requires.
- Fixed SSM hanging if certificate is not authorised with the broker. Now it
will try other brokers if available and then correctly shut down.
- Fixed an OpenSSL 1.1 syntax error by including missing argument to checkend.
* Wed Nov 28 2018 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 2.3.0-2
- Updated build and test files only.
* Thu Aug 16 2018 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 2.3.0-1
- Added support for stomp.py versions from 3.1.6 onwards which allows for
builds on Ubuntu Trusty and should enable IPv6 support.
- Added script for creating Ubuntu (.deb) builds.
- Added script for creating Docker container builds.
* Mon May 14 2018 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 2.2.1-1
- Added a check that the server certificate used for encryption hasn't expired
so that a sending SSM won't start with an out of date server certificate.
- Improved error handling for received messages so that more useful debugging
information in obtained.
* Thu Nov 16 2017 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 2.2.0-1
- Added a check that certificates have not expired before starting SSM.
- SSL errors now propagated out properly and saved for received messages.
- Trimmed down the number of log messages generated for receivers.
- Added python-devel build requirement for non fedora-packager OSs (CentOS).
* Tue Jan 12 2016 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 2.1.7-1
- Added a delay when receiver is reconnecting to improve reliability.
* Mon Mar 02 2014 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 2.1.6-1
- Improved the log output for SSM receivers so that there are fewer trivial
entries and so it's more useful in tracking messages on the filesystem.
* Fri Nov 28 2014 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 2.1.5-1
- (No changes from pre-release version.)
* Fri Nov 28 2014 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 2.1.5-0.4.rc4
- Corrected namespace of overridden variable (to enable SSL/TLS changes).
* Fri Nov 28 2014 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 2.1.5-0.3.rc3
- Removed python-ssl as a dependency as it can be option in some contexts.
- Made it possible for old versions of stomp.py (3.0.3 and lower) to use
SSL/TLS versions that aren't SSL 3.0.
* Thu Nov 27 2014 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 2.1.5-0.2.rc2
- Added a warning for old versions of stomp.py (3.0.3 and lower) that are
limited to using SSL 3.0 for secure connections.
* Tue Nov 25 2014 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 2.1.5-0.1.rc1
- The highest version of SSL/TLS available is now used (previously only SSLv3).
- Added python-ssl as a dependency (SL5/EL5 only).
- Minor tweaks made to logging calls and the logging level of certain messages.
* Fri Aug 08 2014 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 2.1.4-1
- Corrected version number used in Python code.
* Mon Jul 21 2014 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 2.1.3-1
- (No changes from pre-release version.)
* Thu Jul 17 2014 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 2.1.3-0.2.alpha1
- RPM now enforces the use of stomppy < 4.0.0 as versions greater than this are
currently incompatible with SSM.
- Changes made to disconnection method which should prevent threading
exceptions (mostly during shutdown).
* Mon Jun 02 2014 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 2.1.2-0
- The output of brokers.py has been improved so that it can be used to query
the BDII for valid brokers.
- The outgoing message directory will now be regularly cleared of empty
directories and locked messages will be unlocked after five minutes.
* Wed Oct 30 2013 Adrian Coveney <adrian.coveney@stfc.ac.uk> - 2.1.1-0
- Reduced impact on message brokers of sending pings to refresh the connection.
- Improved lost connection behaviour.
* Tue Apr 16 2013 Will Rogers <will.rogers@stfc.ac.uk> - 2.1.0-0
- Verify any certificate supplied for encrypting messages
against the CA path
- Receiver can check CRLs on certificates
* Wed Feb 27 2013 Will Rogers <will.rogers@stfc.ac.uk> - 2.0.3-0
- Add support for messages signed with quopri or base64
content-transfer-encoding (for UNICORE).
* Tue Feb 26 2013 Will Rogers <will.rogers@stfc.ac.uk> - 2.0.2-0
- Fix SSL connection for receiver
* Fri Feb 8 2013 Will Rogers <will.rogers@stfc.ac.uk> - 2.0.1-0
- Fix crash when receiver sends ping message
* Sat Jan 26 2013 Will Rogers <will.rogers@stfc.ac.uk> - 2.0.0-0
- Fix SSL connection option
- First release of SSM2
* Fri Jan 25 2013 Will Rogers <will.rogers@stfc.ac.uk> - 0.0.4-0
- Sensible defaults for release
* Fri Jan 11 2013 Will Rogers <will.rogers@stfc.ac.uk> - 0.0.3-0
- Changed rpm name to apel-ssm
* Thu Jan 03 2013 Will Rogers <will.rogers@stfc.ac.uk> - 0.0.2-0
- Fixed connection freeze