Releases: PxA-Labs/ReliaDL
Releases · PxA-Labs/ReliaDL
Release list
v0.2.1 - PyPI Package Namespace Mapping Fix
ReliaDL v0.2.1 - Package Namespace Fix Release
Release v0.2.1 resolves the PyPI package namespace mapping in pyproject.toml, ensuring import reliadl works directly upon installation via pip install reliadl.
Key Changes & Fixes
- Package Namespace Mapping:
- Mapped
reliadlnamespace inpyproject.toml(tool.setuptools.package-dir) to mapreliadl->src. - Configured
setuptoolsto package bothreliadlandsrctop-level modules in the wheel artifact. - Ensures
import reliadlworks out of the box after runningpip install reliadl.
- Mapped
Installation
pip install --upgrade reliadlWhat's Changed
- fix(packaging): map reliadl package namespace in pyproject.toml by @purvanshjoshi in #95
Full Changelog: v0.2.0...v0.2.1
v0.2.0 - Telemetry Catalog, HTTP Exporter & Packaging Fixes
ReliaDL v0.2.0 - Telemetry & Packaging Enhancement Release
Release v0.2.0 introduces a full Prometheus metrics telemetry subsystem, fixes package data installation for default_config.yaml, ships PEP 561 typing markers (py.typed), and includes 949 passing unit tests.
Key Changes & Features
- Prometheus Telemetry Catalog (
src/telemetry/):- Implemented 6 core metric types (
Counter,Gauge,Histogram). - Native text exposition format generator with cumulative histogram buckets and label escaping.
- Background HTTP metrics server (
MetricsServer) exposing/metricsfor Prometheus scrapers.
- Implemented 6 core metric types (
- Package Data & PEP 561 Compliance:
- Relocated
default_config.yamltosrc/default_config.yamlto ensure installed wheels include default configurations. - Added
src/py.typedPEP 561 marker so external type checkers (MyPy/Pyright) recognize ReliaDL's type annotations. - Declared
[tool.setuptools.package-data]inpyproject.toml.
- Relocated
- CI Workflow Fixes:
- Fixed YAML parsing condition syntax in
.github/workflows/auto_changelog.yml. - Fixed action name in
.github/workflows/publish.ymltopypa/gh-action-pypi-publish@release/v1.
- Fixed YAML parsing condition syntax in
- PyPI Trusted Publisher (OIDC):
- Automated deployment pipeline publishing
reliadl 0.2.0to PyPI.
- Automated deployment pipeline publishing
Installation
pip install --upgrade reliadlv0.1.0 - Production-Grade Parallel Download Engine & Hashing Core
ReliaDL v0.1.0 - Production Release
Initial official release of ReliaDL: a production-grade, fault-tolerant parallel file download engine featuring SHA-256 cryptographic verification, dynamic chunk planning, corporate proxy tunneling, async bandwidth rate limiting, and Prometheus metrics telemetry.
Core Architecture & Features
- Per-Chunk Cryptographic Hashing: Per-chunk SHA-256 validation ensuring zero data corruption during parallel streaming.
- Proxy Tunneling Adapter: Support for SOCKS5 (RFC 1928 / 1929) and HTTP CONNECT proxy tunneling (
src/adapters/proxy_adapter.py) with strict destination TLS verification. - Async Token Bucket Rate Limiter: Single-threaded reservation pacing (
src/rate_limiter.py) providing throughput clamping accuracy within +/-0.3% error bounds. - Prometheus Telemetry Catalog: Full exposition text parser and HTTP metrics server (
src/telemetry/) for scrapers. - Resilience & Mirror Management: Automatic mirror fallback, retry backoff strategies, and sparse file writing.
- PyPI & OIDC Packaging: PEP 517/518 packaging configuration (
pyproject.toml) and automated OpenID Connect trusted publishing pipeline.
Installation
pip install reliadlWhat's Changed
- chore: switch license to Apache 2.0 by @purvanshjoshi in #1
- docs: polish README to enterprise technical standard by @purvanshjoshi in #2
- chore: set @purvanshjoshi and @archittmittal as codeowners by @purvanshjoshi in #3
- Research Refactor: ReliaDL Documentation & Novel Algorithms by @purvanshjoshi in #48
- docs(specs): verify documentation and add manifest, cloud, and observability specifications by @archittmittal in #4
- docs(readme): add OpenSSF Scorecard badges and security compliance card by @archittmittal in #5
- docs: add Mermaid architectural and algorithmic diagrams for research paper by @archittmittal in #49
- feat(core): implement core domain dataclasses and type definitions by @archittmittal in #50
- feat(core): implement structured custom exception taxonomy and error models by @archittmittal in #51
- feat(core): implement YAML configuration parser with environment overrides by @archittmittal in #52
- feat(core): implement structlog structured JSON logging with credential redaction by @archittmittal in #53
- feat(storage): implement streaming SHA-256 verifier with constant-time comparison by @archittmittal in #54
- feat(storage): implement crash-resilient atomic state manager with fsync protocol by @archittmittal in #55
- feat(storage): implement sequential chunk file assembler and integrity re-verifier by @archittmittal in #56
- feat(storage): implement zero-assembly direct sparse file pre-allocation and positional writer by @archittmittal in #57
- feat(manifest): implement .cgmanifest JSON schema parser, validator, and model bindings by @archittmittal in #58
- feat(manifest): implement Ed25519 and RSA-PSS cryptographic manifest signing and verification by @archittmittal in #59
- feat(manifest): implement binary Merkle tree engine and 64KB sub-block streaming verification by @archittmittal in #60
- feat(algo): implement real-time network metrics collector and EWMA estimators for RTT and throughput by @archittmittal in #61
- feat(algo): implement BL-DCS closed-loop chunk sizing mathematical controller by @archittmittal in #62
- feat(algo): implement dynamic chunk boundary planner with in-flight chunk generation by @archittmittal in #63
- feat(adapters): implement AWS S3 SigV4 authenticated range request adapter by @archittmittal in #70
- feat(adapters): implement Google Cloud Storage and Azure Blob Storage range adapters by @archittmittal in #71
- feat(algo): implement Chase-Lev lock-free double-ended worker task deques by @archittmittal in #64
- feat(algo): implement real-time straggler detection monitor with TTC estimation by @archittmittal in #65
- feat(algo): implement cooperative in-flight byte-range bisection and work-stealing protocol by @archittmittal in #66
- feat(algo): implement EXP3 probability distribution and exponential weight update engine by @archittmittal in #67
- feat(algo): implement multi-mirror health checker and normalized throughput reward calculator by @archittmittal in #68
- feat(algo): implement worker request dispatch pipeline integration for mirror selection by @archittmittal in #69
- ci: configure professional CI/CD pipeline matrix, release automation, and docs validation by @purvanshjoshi in #72
- chore: define CODEOWNERS for @purvanshjoshi and @archittmittal by @purvanshjoshi in #75
- ci: configure CodeQL security analysis and Dependabot automated updates by @purvanshjoshi in #77
- feat(adapters): implement SOCKS5 and HTTP CONNECT corporate proxy tunneling by @archittmittal in #73
- feat(engine): implement async token bucket bandwidth rate limiter by @archittmittal in #74
- chore(deps): update cryptography requirement from >=41.0.0 to >=50.0.1 by @dependabot[bot] in #78
- chore(deps): update pyyaml requirement from >=6.0 to >=6.0.3 by @dependabot[bot] in #79
- chore(deps): update jsonschema requirement from >=4.0.0 to >=4.26.0 by @dependabot[bot] in #80
- chore(deps): update pydantic requirement from >=2.0.0 to >=2.13.5 by @dependabot[bot] in #81
- chore(deps): update structlog requirement from >=23.0.0 to >=26.1.0 by @dependabot[bot] in #82
- feat(infra): configure PyPI packaging metadata and automated OIDC publishing workflow by @purvanshjoshi in #89
New Contributors
- @purvanshjoshi made their first contribution in #1
- @archittmittal made their first contribution in #4
- @dependabot[bot] made their first contribution in #78
Full Changelog: https://github.com/PxA-Labs/ReliaDL/commits/v0.1.0