Chapps

Latest version: v0.5.18

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

Scan your dependencies

Page 5 of 9

0.4.12

- Adding missing documentation to new bulk user-domain and
user-email auth policy routes.

- Completed overhaul of database adapter layer. There is now an
adapter layer based entirely on SQLAlchemy rather than the
low-level driver. This is not currently used but it passes
tests. Some comparative performance analysis seems indicated
before adoption. Also its tests break the API tests for some reason.

- Relocating join-assoc instance definitions to models.py: the API
extras are no longer required in order for the CLI to run.

- Refactored instance-caching code (based on Postfix instance ID)
into the policy parent class in order to reduce code duplication.

0.4.11

- Adding bulk policy access for user-domains and user-emails along
the same lines as the bulk quota policy query. Lists of
**Domain** or **Email** ids are returned, tagged with the name
of the user. Keys: `user_name`, `domain_ids` or `email_ids`

- Edge condition testing is performed only once because all three
of these routines are based on the same factory which is already
being tested.

- CLI file location changed w/i the repo, called `chapps-cli`,
made executable, added `version` command to detect current
CHAPPS version.

- HTTPExceptions were accidentally being trapped by the DB
interaction wrappers; this has been resolved so that 409s are
returned properly in such cases.

0.4.10

- Correcting some internal server errors raised under certain
circumstances by the new API routines for bulk Quota queries.
This fix may also address some other situations which were less
pressing.

- Added a synchronous (regular callable) DB interaction decorator
in order to standardize the handling of DB exceptions and of
HTTPException raising when the result set is empty. This was part
of fixing the problems with the bulk routines.

- Added a factory for creating object listers which accept ID
lists and ensure that arbitrary associations are loaded on the
returned models.

0.4.9

- The beginnings of a CLI, in order to allow direct, command-line
level control of permissions, creating **Email** and **Domain**
records, quota assignment, file-based permissions and quota
import, real-time quota checking, reset and refresh, and
descriptive help messages.

- Adding new dependency on `typer` for the CLI, with extended
dependencies for `typer`: `colorama` and `shellingham`

- Adding bulk query operations for **Quota** records and status.
As separate routes, **User** ids may be supplied to:
- receive a list mapping **User** name to **Quota** id
(policy setting -- from the User section)
- available quota (real-time availability based
on cached policy, from the Live section)
The live route also generates some human-oriented remarks about unusual
situations encountered while running.

0.4.8

- Urgent fixes release: some PPR field values may contain `=`
which will cause parsing to fail spectacularly. A fix is
included in this version.

- A missing software dependency which impeded operation of the
previous version has also been added (`email-validator`).

0.4.7

- Fixed uncaught error on nonexistent user-identifier when the
user-key is required. The application now sends the expected
auth-failure rejection action to Postfix.

- Fixed a handful of xfailing tests; the remaining one covers the
experimental, non-working rate-limitation subfeature of outbound
quota.

- Trapping AttributeError in CHAPPSMetaModel and raising our own,
more sensical one.

- Simplified the coroutine factory in
chapps.rest.routers.common.list_associated() -- the prototype
coroutine's signature is actually invariate so there was no
reason to build it dynamically.

- There is now content validation for Domain and Email records.

- The data models and database-session related modules created for
the API have been relocated into the core of the project.

- The adapter has been modified to use mysqlclient instead of
mariadb (Python packages).

- A new, SQLAlchemy-powered adapter layer has been included but as
yet tests are not complete, and so there is no way to actually
use it currently.

Page 5 of 9

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.