fedora-messaging

A library for sending AMQP messages with JSON schema in Fedora infrastructure

GPL-2.0 License

Downloads
10.9K
Stars
49
Committers
29

Bot releases are visible (Hide)

fedora-messaging - fedora-messaging v1.3.0

Published by jeremycline over 5 years ago

v1.3.0 (2019-01-24)

API Changes

  • The Message._body attribute is renamed to body, and is now
    part of the public API (PR#119).

Contributors

Many thanks to the contributors of bug reports, pull requests, and pull
request reviews for this release:

  • Aurélien Bompard
  • Jeremy Cline
fedora-messaging - v1.2.0

Published by jeremycline over 5 years ago

v1.2.0 (2019-01-21)

Features

  • The fedora_messaging.api.consume API now accepts a "queues"
    keyword which specifies the queues to declare and consume from, and
    the "fedora-messaging" CLI makes use of this
    (PR#107)
  • Utilities were added in the :pyschema_utils module to help write
    the Python API of your message schemas
    (PR#108)
  • No long require "--exchange", "--queue-name", and "--routing-key" to
    all be specified when using "fedora-messaging consume". If one is
    not supplied, a default is chosen. These defaults are documented in
    the command's manual page
    (PR#117)

Bug Fixes

  • Fix the "consumer" setting in config.toml.example to point to a real
    Python path
    (PR#104)
  • fedora-messaging consume now actually uses the --queue-name and
    --routing-key parameter provided to it, and --routing-key can now be
    specified multiple times as was documented
    (PR#105)
  • Fix the equality check on fedora_messaging.message.Message objects
    to exclude the 'sent-at' header
    (PR#109)
  • Documentation for consumers indicated any callable object was
    acceptable to use as a callback as long as it accepted a single
    positional argument (the message). However, the implementation
    required that the callable be a function or a class, which it then
    instantiated. This has been fixed and you may now use any callable
    object, such as a method or an instance of a class that implements
    __call__
    (PR#110)
  • Fix an issue where the fedora-messaging CLI would only log if a
    configuration file was explicitly supplied
    (PR#113)

Contributors

Many thanks to the contributors of bug reports, pull requests, and pull
request reviews for this release:

  • Aurélien Bompard
  • Jeremy Cline
  • Sebastian Wojciechowski
  • Tomas Tomecek
fedora-messaging - fedora-messaging v1.1.0

Published by jeremycline almost 6 years ago

v1.1.0 (2018-11-13)

Features

  • Initial work on a serialization format for fedora_messaging.message.Message and APIs for loading and storing messages. This is intended to make it easy to record and replay messages for testing purposes (#84).
  • Add a module, fedora_messaging.testing, to add useful test helpers. Check out the module documentation for details\ (#100)

Contributors

Many thanks to the contributors of bug reports, pull requests, and pull
request reviews for this release:

  • Jeremy Cline
  • Sebastian Wojciechowski
fedora-messaging - v1.0.1

Published by jeremycline about 6 years ago

v1.0.1 (2018-10-10)

Bug Fixes

  • Fix a compatibility issue in Twisted between pika 0.12 and 1.0 (#97)
fedora-messaging - v1.0.0

Published by jeremycline about 6 years ago

v1.0.0 (2018-10-10)

API Changes

  • The unused exchange parameter from the PublisherSession was
    removed
    (PR#56)
  • The setupRead API in the Twisted protocol has been removed and
    replaced with consume and cancel APIs which allow for multiple
    consumers with multiple callbacks
    (PR#72)
  • The name of the entry point is now used to identify the message type
    (PR#89)

Features

  • Ensure proper TLS client cert checking with service_identity
    (PR#51)
  • Support Python 3.7
    (PR#53)
  • Compatibility with Click 7.x
    (PR#86)
  • The complete set of valid severity levels is now available at
    fedora_messaging.api.SEVERITIES
    (PR#60)
  • A queue attribute is present on received messages with the name of
    the queue it arrived on
    (PR#65)
  • The wire format of fedora-messaging is now documented
    (PR#88)

Development Changes

  • Use towncrier to generate
    the release notes
    (PR#67)
  • Check that our dependencies have Free licenses
    (PR#68)
  • Test coverage is now at 97%.

Other Changes

  • The library is available in Fedora as fedora-messaging.
fedora-messaging -

Published by jeremycline about 6 years ago

v1.0.0b1

API Changes

  • fedora_messaging.message.Message.summary is now a property rather than a method (#25).
  • The non-functional --amqp-url parameter has been removed from the CLI (#49).

Features

  • Configuration parsing failures now produce point to the line and column of the parsing error (#21).
  • fedora_messaging.message.Message now come with a set of standard accessors (#32).
  • Consumers can now specify whether a message should be re-queued when halting (#44).
  • An example consumer that prints to standard output now ships with fedora-messaging. It can be used by running fedora-messaging consume --callback="fedora_messaging.example:printer" (#40).
  • fedora_messaging.message.Message now have a severity associated with them (#48).

Bug Fixes

  • Fix an issue where invalid or missing configuration files resulted in a traceback rather than a formatted error message from the CLI (#21).
  • Client authentication with x509 now works with both the synchronous API and the Twisted API (#29, #35).
  • fedora_messaging.api.publish no longer raises a pika.exceptions.ChannelClosed exception. Instead, it raises a fedora_messaging.exceptions.ConnectionException (#31).
  • fedora_messaging.api.consume is now documented to raise a ValueError when the callback isn't callable (#47).

Development Features

  • The fedora-messaging code base is now compliant with the Black Python formatter and this is enforced with continuous integration.
  • Test coverage is moving up and to the right.

Many thanks to the contributors of bug reports, pull requests, and pull
request reviews for this release:

  • Aurélien Bompard
  • Clement Verna
  • Ken Dreyer
  • Jeremy Cline
  • Miroslav Suchý
  • Patrick Uiterwijk
  • Sebastian Wojciechowski
Package Rankings
Top 4.25% on Pypi.org
Related Projects