Releases: quietcode-org/LeoRM
LeoRM v0.1.2
LeoRM v0.1.2-quality-gates is the first Cupertino-2009 quality-gate release candidate for the LeoRM storage brick.
It builds on the earlier milestones:
v0.1.0-storage-brick— functional storage-brick foundationv0.1.1-api-culture— documented public API and reproducible HeaderDoc buildv0.1.2-quality-gates— quality gates, release archive path, and public-release discipline
Positioning
LeoRM is a small Mac OS X 10.5.8 Leopard / PowerPC verified SQLite Repository/DAO layer for Objective-C projects.
LeoRM does not replace SQLite.
LeoRM does not hide SQL.
LeoRM provides a Leopard-native discipline layer around explicit SQLite usage:
- database lifecycle,
- NSError mapping,
- prepared statements,
- Foundation value binding,
- result sets,
- row access,
- transactions,
- metadata,
- schema migrations,
- repository helpers.
The database remains SQLite.
The schema remains owned by the application or domain store.
SQL remains visible.
Target platform
Verified target:
- Mac OS X 10.5.8 Leopard
- PowerPC
- MacOSX10.5.sdk
- Xcode 3.1.4-compatible toolchain
- Foundation.framework
- libsqlite3
- manual retain/release
Required verification path
The release candidate is verified with:
make clean
make
make smoke
make apidocs
make leaks-check
make release-archive VERSION=v0.1.2-quality-gatesQuality gates
This release candidate satisfies the following gates:
-
target-platform build
-
warning-free build
-
full smoke-test suite
-
public HeaderDoc API documentation
-
reproducible HeaderDoc generation
-
ownership documentation in public headers
-
failure-path tests
-
SQLite constraint-error tests
-
migration-failure rollback test
-
nil / NSNull / NSData / NSNumber / NSString edge-case tests
-
file-backed database persistence test
-
Leopard
leaks(1)memory review path -
reproducible release archive
-
release manifest inside the archive
Smoke-test coverage
The smoke suite includes:
-
lrm-smoke -
lrm-error-smoke -
lrm-statement-smoke -
lrm-query-smoke -
lrm-transaction-smoke -
lrm-metadata-smoke -
lrm-migration-smoke -
lrm-repository-smoke -
lrm-notes-example -
lrm-failure-paths-smoke -
lrm-constraint-errors-smoke -
lrm-migration-rollback-smoke -
lrm-edge-cases-smoke -
lrm-file-database-smoke
HeaderDoc
Public headers contain HeaderDoc-style API documentation.
Generated HTML documentation is produced with:
make apidocsThe generated documentation is written to:
Build/HeaderDoc/raw
Generated HeaderDoc HTML is not committed to main.
It is included in the release archive under:
Documentation/HeaderDoc/
Leak check
The leak check is run with:
make leaks-checkThe leak target exercises:
-
file-backed SQLite database use,
-
schema migration,
-
metadata/schema version checks,
-
repository insert,
-
BLOB binding,
-
row reading,
-
explicit transaction rollback,
-
explicit database close,
-
temporary database cleanup.
The first documented target-platform run reported:
0 leaks for 0 total leaked bytes.
LeoRM leaks check OK
Release archive
The reproducible archive command is:
make release-archive VERSION=v0.1.2-quality-gatesThe Git tag remains v0.1.2-quality-gates, while the public QuietCode package name follows the existing release naming scheme: product name, public version, and target platform: LeoRM-0.1.2-Leopard-PPC.tar.gz.
The archive is generated at:
Build/Release/LeoRM-0.1.2-Leopard-PPC.tar.gz
The archive includes:
-
README.md -
Makefile -
Sources/ -
Tests/ -
Examples/ -
Tools/ -
docs/ -
Documentation/HeaderDoc/ -
RELEASE-MANIFEST.txt
The archive excludes:
-
.git/ -
object files,
-
local test databases,
-
transient build products,
-
user-local editor or Xcode state.
Known limitations
LeoRM v0.1.2-quality-gates is still intentionally small.
It does not provide:
-
Core Data replacement behavior,
-
object graph management,
-
ActiveRecord-style model inheritance,
-
hidden SQL generation,
-
schema diffing,
-
AppKit integration,
-
ARC assumptions,
-
Swift APIs,
-
blocks-based APIs,
-
modern package manager integration.
These omissions are intentional for the V1 storage-brick scope.
Release meaning
This release candidate is suitable as a tested foundation for early Leopard-Crew storage work.
It is not advertised as a universal database framework.
It is a small, explicit, Leopard-native SQLite discipline layer.