Comet

Latest version: v3.1.0

Safety actively analyzes 620901 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 3

3.0.0

- This is the last major relase of Comet to support Python 2.7. Future major
(4.0.0) and minor (3.1.0) releases will only run on Python 3. Critical
bugfixes to this version of Comet will be provided as patch releases (3.0.x)
until the next major release.

- This release adds support for Python 3.4 and later. Earlier versions of
Python 3 are not tested. Note that event databases generated by Comet
running on Python 2 *might* not be compatible with Comet running on Python
3: this depends on the underlying Python installation. For safety, remove
old event databases before upgrading; Comet will automatically create new
ones as it needs them.

- Rename ``--whitelist`` command line option to ``--author-whitelist``. This
limits the IP addresses which are authorized to submit new events to the
broker.

- Introduce the ``--subscriber-whitelist`` command line option. This limits
the IP addresses which are authorized to subscribe to event feeds from the
broker. Thanks to Tim-Oliver Husser. (`GitHub 10`_, `GitHub 39`_, `GitHub
41`_)

- Log the return code of failed external commands at level ``WARN``. Log
standard output and error at level ``DEBUG``.

- Automatically create the event DB directory if it doesn't exist. Thanks to
Tim Staley for the suggestion. (`GitHub 54`_, `GitHub 55`_)

- Per the VTP standard, it's not necessary for subscribers to specify IVOIDs
(or, in older terminology, IVORNs). Although there's no downside
protocol-wise to doing so, dropping this requirement makes for a simpler
user interface. (`GitHub 50`_)

- Per the VTP standard, timestamps in transport messages *must* be UTC. We now
check that all timestamps in transport messages generated by Comet have a
``Z`` suffix. (But, of course, we are permissive in what we accept, and
don't reject transport messages from the remote end of a connection which
don't do this.) (`GitHub 52`_)

- Events submitted by authors to the broker running in ``--receive`` mode are
now required to have IVORNs which validate according to the `IVOA
Identifiers Version 2.0`_ specification for IVOIDs. This is somewhat better
defined than the earlier (version 1.12) specification for IVORNs. (`GitHub 51`_)

- Comet now uses the term “IVOID” in preference to “IVORN” throughout its code
and documentation. This follows current IVOA usage. Note, though, that the
VOEvent standard (version 2.0) refers to the term IVORN, and any user
supplied code, such as filters, which interact directly with the contents of
VOEvent packets will need to stick to that terminology. (`GitHub 51`_)

.. _does not fully support Python 3: https://twistedmatrix.com/trac/milestone/Python-3.x
.. _Twisted 16.0: http://labs.twistedmatrix.com/2016/03/twisted-160-released.html
.. _IVOA Identifiers Version 2.0: http://www.ivoa.net/documents/IVOAIdentifiers/20160523/index.html
.. _GitHub 10: https://github.com/jdswinbank/Comet/issues/10
.. _GitHub 39: https://github.com/jdswinbank/Comet/issues/39
.. _GitHub 41: https://github.com/jdswinbank/Comet/issues/41
.. _GitHub 50: https://github.com/jdswinbank/Comet/issues/50
.. _GitHub 51: https://github.com/jdswinbank/Comet/issues/51
.. _GitHub 52: https://github.com/jdswinbank/Comet/issues/52
.. _GitHub 54: https://github.com/jdswinbank/Comet/issues/54
.. _GitHub 55: https://github.com/jdswinbank/Comet/issues/55

Version 2.0.x
-------------

2.0.1

- Remove incorrect calls to old (pre-2.0.0) logging API. Thanks to
Tim-Oliver Husser & Tim Staley. (`GitHub 39`_, `GitHub 40`_)

- Reformat documentation to add :doc:`credits`.

.. _GitHub 39: https://github.com/jdswinbank/Comet/issues/39
.. _GitHub 40: https://github.com/jdswinbank/Comet/issues/40

2.0.0

- Switch dependency from `ipaddr-py`_ to `py2-ipaddress`_. The latter is a
backport of the Python 3 functionality, so this helps clear the way for
an eventual Python 3 version of Comet.

- Use the ``$TMPDIR`` environment variable, if set, to store the event
database. Otherwise, fall back to ``tmp``.

- Drop support for Python 2.6, following the same change made in Twisted.

- Improve checking for valid IVORNs.

- Some extremely old versions of Comet (dating from before the 1.0.0
release) used a different format for the database of seen events. All
released versions through 1.2.2 automatically update old-style databases
to the new format when run. As of this release, this support for legacy
databases has been dropped. It is necessary to use a previous Comet
release to update the database format before upgrading to this version.

- Refactor the codebase caused a minor API change: logging facilities are
now available from the ``comet.log`` module. End user code — notably
event handling plugins — should replace statements to the effect of
``from comet.utility import log`` with ``import comet.log as log``. The
convenience aliases ``log.msg`` and ``log.warning`` have been removed:
use ``log.info`` and ``log.warn`` instead.

.. _ipaddr-py: https://code.google.com/p/ipaddr-py/
.. _py2-ipaddress: https://bitbucket.org/kwi/py2-ipaddress/

Version 1.2.x
-------------

1.2.2

- Disable XML entity expansion for documents received from the network.
This eliminates a class of potential resource exhaustion attacks.

- Update documentation to request citation of the `paper`_ in published
work which makes use of Comet.

1.2.1

- Correctly check that the (required) ``--local-ivo`` command line option
was provided (`GitHub 35`_).

1.2.0

- When subscribing to a remote broker, we wait for a short period after
the initial connection is made before marking it as successful. This
means that if the broker rapidly drops the connection (e.g. due to an
authentication failure), we retry the connection with an exponential
back-off rather than an immediate reconnection (`GitHub 29`_).

- Timestamps in ``iamalive`` messages are marked as being in UTC.

- ``authenticate`` messages which specify XPath filters are schema
compliant (`GitHub 31`_).

- Subscriber refuses to start if an XPath ``--filter`` is specified with
invalid syntax (`GitHub 33`_).

- Require that a valid IVOA identifier (IVORN) be supplied by the end user
when starting Comet rather than relying on a default.

- Require that events submitted to the broker by authors have valid IVORNs.

.. _paper: http://adsabs.harvard.edu/abs/2014A%26C.....7...12S
.. _GitHub 29: https://github.com/jdswinbank/Comet/issues/29
.. _GitHub 31: https://github.com/jdswinbank/Comet/issues/31
.. _GitHub 33: https://github.com/jdswinbank/Comet/issues/33
.. _GitHub 35: https://github.com/jdswinbank/Comet/issues/33

Version 1.1.x
-------------

Page 1 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.