Skip to main content

ewoxcore

ewoxcore contains the shared runtime primitives used by Ewox framework services and companion packages. It includes HTTP clients, configuration and dependency-injection helpers, local caching, serialization utilities, token helpers, transport models, monitoring abstractions, and general utilities.

Requirements

  • Python 3.13 or 3.14
  • Poetry 2.1.3 for contributor and release workflows

Installation

Install the public package from PyPI:

python -m pip install ewoxcore

For local development:

poetry install --with dev
poetry run python -m unittest discover -s tests -p "test*.py"

Compatibility policy

The 1.6.x line preserves existing public import paths and transport formats. Bug fixes may add optional parameters or deprecate names, but existing callers will continue to work for the remainder of the line.

ConfigurationBuilder.add_json_file(path) continues to tolerate a missing file for compatibility with existing services. Pass optional=False when a missing configuration file must stop startup. Existing files containing invalid JSON always raise an error.

In particular, the following JsonUtil methods retain their existing jsonpickle-based behavior because Ewox APIs, Redis data, streams, WebSockets, and tokens already exchange that format:

  • serializeJson64
  • deserializeJson64
  • deserialize_json64
  • serialize
  • deserialize

Do not deserialize untrusted input with the object-preserving jsonpickle mode. See SECURITY.md for the trust boundary and migration policy.

Authorizer continues to issue and accept HS256 JWTs using the existing environment variables and payload representation. Optional encrypted payloads remain compact JWE values using dir and A256GCM. The JOSE implementation is internal; consuming applications must declare their own JOSE dependency when they import one directly.

HTTPClient(method_whitelist=...) remains accepted as a deprecated alias for allowed_methods. New code should use allowed_methods.

Local release validation

The release gate builds and smoke-tests both the wheel and source distribution:

./build_test_upload.sh

To upload the exact validated artifacts to TestPyPI:

TWINE_PASSWORD="<test-pypi-token>" ./build_test_upload.sh --upload

Production PyPI releases are made only by the protected GitHub Actions release environment using PyPI Trusted Publishing. See RELEASING.md.

Support and versioning

  • Bug fixes and security patches are released from the latest 1.6.x version.
  • Breaking public API or serialization changes require a major release.
  • Python versions are supported only while they are included in CI.
  • Deprecated compatibility aliases remain for at least the current minor line.

The supported public surface is the documented classes and modules imported by Ewox framework packages. Underscore-prefixed members are internal unless a document explicitly states otherwise.

Contributing

Read CONTRIBUTING.md before proposing changes. Security issues must follow SECURITY.md, not the public issue tracker.

License

MIT. See LICENSE.

Metadata

Release files for ewoxcore 1.6.44

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ewoxcore 1.6.44
File Size Uploaded
ewoxcore-1.6.44.tar.gz 48.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ewoxcore 1.6.44
File Interpreter ABI Platform
ewoxcore-1.6.44-py3-none-any.whl Python 3 none any Details

Total release size: 129.4 kB

Release files / ewoxcore-1.6.44.tar.gz

Download URL ewoxcore-1.6.44.tar.gz
Size 48.0 kB
Tags Source
SHA-256 checksum
How to use checksums
f1d70250e87b19dc34e62c1635987c41173671e5e068bea3be5c96f69449051b
BLAKE2b-256 checksum
How to use checksums
241ae8b60c75c1f31dd997f04ff04f5c61af8cf307d903bc82c21e510c5732e4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.3

Release files / ewoxcore-1.6.44-py3-none-any.whl

Download URL ewoxcore-1.6.44-py3-none-any.whl
Size 81.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
430526b86533b15d8e75420ef2ab06197b989be8827de2b58264073f3e5d7ffe
BLAKE2b-256 checksum
How to use checksums
49acf5609663cb07a7d363ed8fd025f3e8ce08c824095e04d3c6eb307bb3f950
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.3

Release history Release notifications | RSS feed

This release

1.6.44 This release

2 release files

1.6.40

2 release files

1.6.39

2 release files

1.6.38

2 release files

1.6.37

2 release files

1.6.36

2 release files

1.6.35

2 release files

1.6.34

2 release files

1.6.32

2 release files

1.6.31

2 release files

1.6.30

2 release files

1.6.27

2 release files

1.6.26

2 release files

1.6.25

2 release files

1.6.24

2 release files

1.6.23

2 release files

1.6.22

2 release files

1.6.21

2 release files

1.6.20

2 release files

1.6.19

2 release files

1.6.16

2 release files

1.6.15

2 release files

1.6.14

2 release files

1.6.12

2 release files

1.6.11

2 release files

1.6.9

2 release files

1.6.8

2 release files

1.6.7

2 release files

1.6.6

2 release files

1.6.5

2 release files

1.6.4

2 release files

1.6.3

2 release files

1.6.2

2 release files

1.6.1

2 release files

1.6.0

2 release files

1.5.0

2 release files

1.4.0

2 release files

1.3.0

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page