Sedrava — preparing stable 0.10.0
Describe the application; get the application. / Описал — получил.
Dedication / Посвящение: Геннадию Ивановичу Смирных — учителю информатики, благодаря которому автор Sedrava понял и полюбил программирование.
The source now targets Sedrava 0.10.0 (Android versionCode 10003). The historical 0.9.0a1 GitHub release remains available. A tag, GitHub Release and PyPI publication are independent owner-approved steps; changing version metadata does not publish a package.
Start with Quick Start, the text reference, text profile example, and measured report. The task manager now uses records and lists directly in .sdr; the navigation example adds guarded screens and Back.
Getting started
Describe the application; get the application. / Опиши приложение — получи приложение.
Sedrava is an experimental declarative programming language for small applications: describe text/int32/boolean state, typed record collections, derived values, atomic actions, invariants and a simple UI; generate a standalone Web app or an Android/Compose project from the same source.
For learning and experimental development, not production. Version 0.10.0 is being prepared. PyPI installation must be verified after publication; earlier Intent 0.7 packages belong to a different project history.
Quick Start / Быстрый старт · Русский · English
Install and try
Python 3.10+ and Git are required. Run from a virtual environment:
git clone https://github.com/VasiliiBabkin/sedrava.git
cd sedrava
python -m pip install .
sedrava --version
sedrava check examples/reference_09.sdr
sedrava test examples/reference_09.sdr
sedrava run examples/reference_09.sdr add add
sedrava build web examples/reference_09.sdr --output build/web/index.html
python -m http.server 8000 --directory build/web
Open http://localhost:8000. Android generation:
sedrava build android examples/reference_09.sdr --output build/reference-09-android
To produce an APK, install a full JDK, SDK 35 and Gradle 8.11.1 and follow the build guide. build android generates sources; it does not invoke Gradle. No accounts, telemetry, advertising or cloud runtime services.
Documentation
- Quick Start: installation and first program
- 0.9 syntax, types, state, actions, rules, input and persistence
- Web and Android builds
- Complete executable examples: constrained counter, manual countdown, habit progress, validated input and Sedrava 0.9 Lab
- FAQ and troubleshooting · Known limitations
- Changelog · Release notes · Engineering audit and evidence
- Roadmap · 0.10 design
Architecture and verification
Source → restricted typed AST (sedrava_core.py) → interpreter / Web (web_codegen.py) / Android (android_codegen_v03.py). Builds run embedded language tests. Actions change a candidate state sequentially; all final rules must hold before atomic commit. Integers and arithmetic intermediates are checked signed 32-bit values. Python runtime has no third-party dependencies and never executes source through eval/exec.
python -m pip install ".[test]"
python -m unittest discover -s tests -v
python -m pip install playwright
python -m playwright install --with-deps chromium
python scripts/test_web_browser.py
python -m pip install build twine
python -m build
python -m twine check dist/*
python scripts/audit_dist.py
Node.js is needed for differential conformance tests; Chromium tests are a separate real-browser suite. Android build/Lint is separate from UI acceptance. Previously supplied manual Android 16 results are preserved in acceptance evidence; they do not verify newly changed APKs. See the audit for current results and infrastructure limitations.
License: Apache 2.0 · Contributing · Code of Conduct. sedrava.com is a proposed domain, not an official website.
Records and collections / Записи и коллекции (0.10)
The development branch integrates typed records and bounded ordered lists into .sdr,
with stable IDs, atomic actions, strict snapshots and generated Web/Compose UI.
Записи и списки доступны в языке на ветке разработки; 0.10 не выпущена.
Multi-screen navigation / Многоэкранная навигация (0.10)
Named screens, guarded atomic transitions and a bounded Back stack are implemented
in the core and both generators. One .sdr file generates the two-screen task manager.
Экраны и переходы реализованы; публикация на PyPI требует отдельного решения.
Release readiness / Подготовка к RC (0.10)
Independent deterministic Android IDs and --application-id are implemented.
Независимые Android-приложения собираются с постоянным ID; название отделено от пакета.
English identity/build guide · Русская инструкция.
Wheel/sdist include examples, documentation and license under sys.prefix/share/sedrava.
Дистрибутив содержит примеры, документацию и лицензию; публикация 0.10.0 выполняется отдельно.
Measured RC readiness / Фактическая готовность RC: report / отчёт.
0.10.0rc1 preparation / Подготовка RC (not published)
Release notes EN · RU · Upgrade/rollback EN · RU · RC report. Use a verified local wheel in a separate environment; no PyPI/TestPyPI RC has been published. Установка — из проверенного локального wheel в отдельное окружение; автоматической миграции данных нет.
Stability / стабильность: audit, compatibility, release gates. Stabilization changes are not a new release; rc1 artifacts remain unchanged.
0.10.0rc2 preparation / Подготовка RC2 (not published)
Release notes EN · RU · Upgrade/rollback EN · RU · RC2 report. Historical rc1/rc2 artifacts remain unchanged.
Stable 0.10.0 / Подготовка стабильного выпуска
Source 0.10.0, Android versionCode 10003. This source state is not proof of publication or passing release gates. See release notes, physical-device checklist, stable gates, and owner's publishing checklist.
Metadata
Release files for sedrava 0.10.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| sedrava-0.10.0.tar.gz | 261.2 kB | With provenance | Details for sedrava-0.10.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| sedrava-0.10.0-py3-none-any.whl | Python 3 | none | any | Details for sedrava-0.10.0-py3-none-any.whl |
Total release size: 513.6 kB
Release files / sedrava-0.10.0.tar.gz
| Download URL | sedrava-0.10.0.tar.gz |
|---|---|
| Size | 261.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
92d9de3705cbba30124370b014d4da12ab8076cf6a31e6bc33cff326678e24c3
|
|
BLAKE2b-256 checksum How to use checksums |
0c3785e7a99a35ae22779e46b4e255032a420c4420c0cebbc62303bb7ba613cc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 31, 2026.
Transparency logRelease files / sedrava-0.10.0-py3-none-any.whl
| Download URL | sedrava-0.10.0-py3-none-any.whl |
|---|---|
| Size | 252.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
97063ea99d823017d57f41cefdcf45ba289370661b68e4f8c15a6531abbab219
|
|
BLAKE2b-256 checksum How to use checksums |
bfa25f8c5a6d40c15580e3b91c55146d47e71985da6481efa98f690e337354cc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 31, 2026.
Transparency logSecurity for sedrava 0.10.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for sedrava-0.10.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 31, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.