Skip to content

Commit

Permalink
Release Registries 1.0.
Browse files Browse the repository at this point in the history
  • Loading branch information
chipx86 committed Jul 30, 2024
1 parent e3953a9 commit afbd384
Show file tree
Hide file tree
Showing 3 changed files with 46 additions and 1 deletion.
43 changes: 43 additions & 0 deletions docs/releasenotes/1.0.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
==============
Registries 1.0
==============

**Release date:** July 30, 2024

Registries is a module for managing collections of objects, allowing for easy
registration, lookups, and access.

This is ideal for applications that need to manage abstract interfaces with
backend implementations, such as plugins, extensions, and other cases where
you'd employ a Registry Pattern.

Registries was built to help develop `Review Board`_, our premier code review
product from Beanbag_, and we're making it available for use in other
projects.


Features in 1.0
===============

* **Dynamic registration** and unregistration of items.
* **Flexible lookups** based on registered lookup attributes.
* **Thread-safety** to avoid conflicts with modifying a registry.
* **Extensibility** through pre/post hooks for registration, unregistration,
initial population, and resetting of registries.
* **Python type hints** to ease development.
* **Built-in registries** for order-dependent items and wrapping around
`Python Entry Points`_.


.. _Python Entry Points:
https://packaging.python.org/en/latest/specifications/entry-points/


Learn More
==========

See the :ref:`documentation <registries-docs>` for information.


.. _Beanbag: https://www.beanbaginc.com
.. _Review Board: https://www.reviewboard.org
2 changes: 2 additions & 0 deletions docs/releasenotes/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,5 @@ Release Notes

.. toctree::
:maxdepth: 1

Registries 1.0 (July 30, 2024) <1.0>
2 changes: 1 addition & 1 deletion registries/_version.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
#
# (Major, Minor, Micro, alpha/beta/rc/final, Release Number, Released)
#
VERSION = (1, 0, 0, 'alpha', 0, False)
VERSION = (1, 0, 0, 'final', 0, True)


def get_version_string() -> str:
Expand Down

0 comments on commit afbd384

Please sign in to comment.