Repository navigation
Releases: DocumentDrivenDX/weft
Release list
v0.4.56
v0.4.55
Weft 0.4.55
Release scope
This release changes the Python distribution name from weft-sql to
umf-weft. The Python import remains weft; compiler protocols, backend
registrations and SQL behavior retain the qualified 0.4.54 compiler base,
including G02 and the integrated Unity/raw-read fixes. Version and distribution
metadata change, so every released wheel requires fresh qualification.
The immutable GitHub release
and public PyPI publication passed their bounded release gates on 2026-10-27.
Source and tag target ea0fef0209aaf8e08ef165b6afe00b408873354f bind all three
fresh wheels. Actual OIDC upload, public archive-byte comparison and a fresh
Ubuntu public-index installation/import passed in
run 40424569422.
Raw receipts and verification retain exact
wheel, native-module and artifact hashes. This later evidence update does not
modify the frozen tag or its assets.
Audience and channels
Python consumers and dependency maintainers receive the change through the
GitHub release and PyPI project. Hosts retain responsibility for execution,
transactions, authorization and their own installed-package admission gates.
Changes and fixes
The release uses Actions for all three wheel targets: Linux x86_64, Linux ARM64
and macOS ARM64. The macOS producer checks the installed wheel and compares nine
frozen refusal responses across Rust, installed Python and real Chromium WASM.
Linux producers check exact installed packaging only. No sdist is produced.
The existing gated PyPI workflow publishes the qualified bytes using OIDC.
The selected wheel composition retains WFT-BACKEND-VERSION for the three
older Databricks requests and WFT-BACKEND-MISSING for the other six vectors.
The generic corpus's default-registry expectations remain unchanged; the
producer checks this selected composition and requires complete Rust/Python/WASM
response-byte parity.
Breaking changes and required actions
New dependency declarations use umf-weft==0.4.55. Keep
import weft and existing protocol identifiers unchanged. Replace the old
distribution in a fresh environment; do not install both distributions together,
because they provide the same import package. Existing immutable weft-sql
releases and consumers pinned to them retain their original names and evidence.
Migration or rollback guidance
The public archive hashes match the qualified GitHub assets. Consumers remain
pinned until their owning integration gates pass. To hold an upgrade,
retain the previously qualified environment and dependency pin. Recreate that
environment to roll back; do not overwrite a released wheel or relabel an old
receipt as evidence for this distribution.
Known issues and support
The nine macOS vectors establish refusal-response parity only. They do not
qualify positive query compilation or native PostgreSQL execution. Linux checks
establish packaging identity only. Separate compiler/native evidence retains its
original versions, source and scope; this release adds no production executor,
managed database, generated-client or security authority claim. Consumer
admission remains a separate gate; the fresh public Ubuntu install passed.
The broader compiler conformance jobs were still running when this release
record was captured; their results are not counted as complete by the bounded
distribution proof.
References
Weft 0.4.54
Weft 0.4.54 integrates selected Unity current aggregate compiler work and retains the G02 typed-expression compiler. UMF owns source meaning and inert plans, Weft prepares qualified SQL, and the host owns execution and authority.
This release contains three exact wheels: Linux x86_64, Linux aarch64 and macOS ARM64. All were produced from compiler source 32b5ad3. The release tag identifies the reviewed metadata merge; release-pins-0.4.54.json records both commits, and SHA256SUMS records the published bytes.
The separate PostgreSQL 18.6 source qualification retained in PR #30 covers 50 native SQL cases and 56 selected Python/Chromium compiler comparisons. Linux wheel producers establish packaging identity. The hosted macOS installed Python/Rust/Chromium checks cover nine byte-identical legacy-backend refusal responses; they do not establish positive macOS query compilation or native database execution.
No production executor, durable storage, authorization, generated clients, Psycopg2, SQLAlchemy, managed deployment or PyPI publication is claimed. See the attached release notes, exact asset policy and producer receipts for the qualified subsets and versions.
Weft 0.4.53
Weft 0.4.53
Weft 0.4.53 adds a closed compiler profile for typed, same-row backfill expressions carried by UMF table operation 0.2. The compiler source is 7413c19d16ca5d8d8ce60b62d49ca0a3250544df. It consumes UMF’s reviewed operation schema at commit 8a79d269e648f17ae1e24841ebc02b5f17020973, path spec/extensions/tables/operation-0.2.schema.json, SHA-256 5634f932533cebb972ba27b96d60802e2bc4f154cc1ef65b2d4c25cecfe3351e. The UMF schema pin remains at that reviewed commit.
G02 compiler profile
The compiler accepts one bounded UPDATE assignment whose target is selected only while NULL. Expressions can use unchanged same-row fields, typed literals, coalesce, strict NULL-propagating text concat, conditional branches in the existing closed predicate grammar, and exact add, subtract, and multiply. The declaration permits one assignment and no batch, with integral maxRows from 1 through 10,000. The full expression and conditional predicate tree has maximum depth 16 (root depth 0) and 256 nodes, counting predicate leaves; fan-out is at most 32, and each decoded UTF-8 literal payload is at most 1 MiB. Ambient values, self-reference, related-row access, arbitrary SQL, callbacks, and additional effects are outside this profile and are refused.
Numeric literals retain their authored tokens while admission derives bounded exact decimal meaning. Exponent and insignificant-zero forms are handled without passing unbounded or non-finite values to PostgreSQL. Finite numeric(p,s) leaves require 0 <= s <= p; each inferred node is limited to at most 1,000 total integral and fractional digits. Integer destinations require a statically integral result. PostgreSQL target precision, scale, range, and exact representability are checked so assignment cannot silently round or overflow. Text/native-width restrictions and other admitted Field rules are checked against the original UMF Field semantics.
Conditional predicate literals are checked against their referenced input Field's logical domain, including nullability and declared value, length, and range constraints; they are not validated against a native assignment width. Equality and inequality retain the existing NULL-safe meaning; IN literals receive the same logical Field-domain checks. A predicate value outside the source Field's logical domain is refused during preparation.
A private PostgreSQL exact-value guard rejects a NULL expression result and non-finite numeric inputs, including referenced numeric inputs from unchosen conditional branches, with SQLSTATE 22012 and transaction rollback. The PostgreSQL backend performs the native assignment cast and constraints, then compares each returned stored value with the exact expression result. A lossy conversion aborts the statement instead of being silently accepted. Ordinary native overflow and constraint SQLSTATEs are preserved. If any affected row fails, the transaction receives an error and callers do not receive a partial affected-row result. The public 8 MiB frame guard covers returned markers and outputs; it does not claim an 8 MiB bound on private PostgreSQL expression memory. Source, literal, AST, numeric, row, statement-timeout, lock-timeout and PostgreSQL datum limits constrain this profile. This is a compiler/backend contract for the admitted statement shape, not a host authorization or recovery policy.
UMF owns the closed declaration schema and Field meaning. The UMF migration planner proves that every expression input's meaning is unchanged across both retained sources. Weft's shared Rust core admits the current bound model and operation declaration; it cannot authenticate predecessor-source invariance on its own. The PostgreSQL backend lowers the admitted operation to SQL and implements the native guard. The host owns authority, approval, transaction boundaries, migration fencing, durable progress, replay identity, recovery, and database execution. A compiled operation does not authorize a host to run it.
Operation 0.1 remains unchanged. The 0.2 profile is separately versioned and migration-only; it does not widen ordinary generated-client action catalogs or change historical 0.1 predicate behavior.
Selected assets and qualification
This release selects three platform wheels. The macOS ARM64 wheel has functional compiler qualification. Linux x86_64 and Linux aarch64 qualification is packaging-only; no Linux G02 functional execution is claimed.
| Asset | SHA-256 | Qualification scope |
|---|---|---|
weft_sql-0.4.53-cp39-abi3-macosx_11_0_arm64.whl |
4c8281945b852af02cae8602747fb7b1b652ab3a1369d7650efce62ae6d35c6c |
macOS ARM64 functional compiler cohort |
weft_sql-0.4.53-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
db01c4cf6357d674f1591609a2b9c83a9322ad8f8937c345e5950cc1582b83d2 |
Linux x86_64 packaging only |
weft_sql-0.4.53-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
2bb5ebc1ae1ad64847bbc15cd01e6a33f87f43ea417df38b36fa6e46268ca5a9 |
Linux aarch64 packaging only |
The completed local candidate evidence includes 20 primary native migration cases, three fault/recovery scenarios, and a separate no-default native case. Independent evidence also covers 37 host scenarios, 87 fault checks, 19 no-default checks, 37 literal-domain cases, and 47 browser checks. The selected 0.1 SQL regression suite has 50 checks, and the table-operation unit suite has 25 tests. These suites overlap in scope and their counts are not additive. Formal packaging checks passed for the selected assets.
The host/native evidence is limited to the stated fixtures, statement profile, PostgreSQL 18.6, and installed candidate cohort. No production migration or general operation-executor acceptance is claimed. Other migration profiles, database engines, and production acceptance remain outside this release’s selected G02 scope.
This source descends from the unpublished 0.4.52 candidate at 32ec02f0c3fd24a97b7726500dc5992c6475908d, verified as an ancestor of the 0.4.53 compiler source. The 0.4.52 candidate receipts are not promoted as 0.4.53 evidence. Metadata head 5d196ea3184b1a711bb4bcf91215a496c18ce9b2 preserves the compiler source inputs stated above. The release commit and asset provenance are recorded in release-pins.json.
Weft v0.4.51
Weft 0.4.51
Release scope
Weft 0.4.51 was published on 2026-10-22 at the GitHub release page. The tag source is d4b0b98507ae15bd98180a2ea2030ea92ce11d96; compiler/build source freeze F is 557153731e9f5d0583193a1189a07c6ed485d3d3. The full selected workspace passed 1,046 candidate-profile and 1,047 qualified-profile tests across 62 summaries per run. Protected compiler/build inputs match F.
The public release contains three wheels (macOS ARM64, Linux x86_64 and Linux aarch64), three packaging reports, the macOS qualification report, SHA256SUMS and release pins. All nine assets passed independent verification. The public SHA256SUMS manifest has SHA-256 62c9d8082eb2f446446d7b94ff7ef7f48769e3cd836e5641c2951069302a6c75. A clean install of the published macOS wheel passed packaging verification, all 33 entity cases and all 5 facts cases. The selected native module also passed 51 exact-feature runtime library tests.
Source-F Linux packaging and independent archive checks passed for both Linux targets. The public Truss 0.0.48 Linux x86_64 tag qualification also passed against this exact Weft source-F runtime pair: 80 migration-lineage tests, 62 independent conformance cases and the 1,000-object/1,000-edge workload. See the public Linux host receipt inventory. Linux aarch64 remains packaging-only. Historical Linux parity evidence is identified by its own source and profile in the evidence packet. The source-F Truss host gates also passed locally on macOS ARM64 with PostgreSQL 18.6: 80 migration cases, 62 independent archive cases, six cohort tests, 14 policy executions across 10 distinct controls, and a 1,000-object/1,000-edge workload. Four policy executions repeat imported query tests.
Audience and channels
Truss and Arras maintainers can obtain the compiler wheels, SHA256SUMS and exact
release pins from the public GitHub release. Applications consume a matching host; the compiler itself does not connect to a database.
Highlights
- Explicit entity descriptors preserve ordered Fields, related projections and
selected native facts; eight facts are available through the declared interface. - Truss query ABI1.2 supports bounded indexed sources and eligible key pages,
with complete bounded fallback for other admitted queries. - Original arras.view0.1.0 Record/Field metadata is admitted only under its exact
owning-document vocabulary declaration. Unsupported selected versions refuse.
Changes and fixes
Compile/IR0.2.8 and backend43/44 are explicit registrations; published0.2.7 behavior
remains unchanged. Typed resolution diagnostics preserve failure classification.
The historical 31 entity compilation cases remain, with two additional Arras
positive/refusal cases. Separate facts compilation retains five parity cases.
Opaque Arras metadata does not grant it security or storage semantics.
Publisher receipts bind actual build checkouts, wheel/module hashes and frozen
compiler/build/contract inputs. A mixed-source platform cohort refuses publication.
Breaking changes and required actions
Install the checksum-verified platform wheel and use a host build whose native
module and release pins match it. Same-version candidate wheels can contain
different compiler bytes, so verify the exact artifact pair before selecting the
new ABI. Applications using the unchanged published ABI need no query-language
rewrite.
Migration or rollback guidance
Weft changes no database schema. Truss owns explicit offline database migration
and its latest-only runtime policy. Quiesce writers, retain backups and use the
Truss migration guide before resuming application work. Hold on compiler/host
mismatch or failed admission; restoring an old application package is not a
rollback for an upgraded database.
Known issues and support
The source-F evidence packet
records the selected workspace results, new Mac wheel/module checks, Linux
packaging, hosted final conformance and exact installed-Truss host receipts. The
active local-macos-0.4.51.json records source-F results; the exact prior source-86
JSON is retained separately as superseded history. Local Truss qualification passed 80 lineage cases, 62 independent cases, six
cohort/asset-cache tests, 14 policy executions across 10 distinct controls, and
the 1,000-object/1,000-edge workload. Four policy executions repeat imported
query tests; they are not additional distinct controls. The successful hosted fresh-host receipt is limited to 2,181 retired UMF 0.7
refusals and stated parity controls; it does not qualify current Truss compilation
or database execution. The local Truss host receipts are macOS/PostgreSQL evidence only. The exact
public release verification passed all nine assets, and a separate clean public
Mac install passed packaging plus 33 entity and 5 facts cases. Local Truss host
receipts qualify macOS ARM64/PostgreSQL 18.6; the public Truss 0.0.48 Linux
x86_64 tag run separately passed its stated latest-only host scope. Linux
aarch64 has packaging evidence only.
Table-operation evidence records candidate SQL behavior and binding cases; it
does not qualify generated/runtime operation admission. Managed UC/Spark4.2,
protected migration and broad p95 targets are not qualified.
The selected release excludes main's separate managed candidates. Arras owns its
full adapter acceptance against the public dependency pair.
References
Weft v0.4.49
ddx:
id: weft.release-0.4.49
type: release-notes
activity: deploy
status: draft
authoring:
home: repo
links:
- id: weft.implementation
kind: informed_by
Weft 0.4.49
Release scope and audience
2026-10-21; Python wheel release for Truss embedders, distributed through GitHub
release assets. The release owner is the repository maintainer. This release
optimizes backend0.4.41 complete-entity metadata lowering.
Highlights and changes
Attribution, timestamps and load metadata each materialize once per source
occurrence and selected row. All eight metadata outputs, model/binding pins,
decoders and native authorization obligations remain checked. Native Truss
tests observe three attribution calls (one direct and two nested proofs), one
timestamp call and one load call per row, rather than eight, two and one.
An explicit optional WASM compile_truss_runtime_json export uses the same Rust
lowering as Python. Five compilation/refusal cases pass byte-exact Chromium
parity. This grants no browser database execution capability.
Breaking changes and required actions
No language or ABI migration is required. Install the matching platform wheel
from the release assets and verify SHA256SUMS. Truss0.0.45 selects this compiler.
The new WASM export requires the truss-postgresql-pg18 build feature.
Migration or rollback guidance
Keep compiler and host pins aligned. Hold adoption if native result or authority
checks fail; restore the previous matched compiler/host release pair. This
release makes no database schema changes.
Known issues and support
Legacy query ABI1.1 retains its full-source population bound before filtering,
aggregation or LIMIT. Wildcard relationship outputs require distinct aliases;
EXCLUDE/REPLACE syntax is not delivered. The sampled Hohfeld host timings do
not establish all proposed latency targets; source, scope and noisy machine
load are recorded in Truss's evidence.
Functional evidence is local macOS ARM64/PostgreSQL18.6: 372 affected Rust tests,
five actual Chromium cases and the final Truss compiled-query/native budget
campaign. Other release platforms receive build and installed-package checks;
native functional equivalence is not claimed for them. This is not whole-workspace
or live Databricks qualification.
References
See qualification,
reproduction and evidence,
and the issue tracker.
Weft 0.4.48 — prepared schemas and native table queries
Weft 0.4.48
The Python compiler now prepares one shared UMF 0.10 schema and indexed metadata for declared native tables, writes, seeds and typed queries. Eligible independent insert batches lower to one mutation statement. Batch eligibility computes dependency components once; allowed-value checks and query/seed lookups reuse prepared indexes. Calls do not copy, hash or re-admit the whole schema.
Typed-query fixes cover nullable unrefined NUMERIC results, native primary-key GROUP BY behavior under identity column mappings, PostgreSQL LEFT, and binary64 result transport. Renamed column projections still require complete GROUP BY expressions. Producer build labels are descriptive provenance; the versioned interface, schema and source semantics remain checked.
Use current UMF 0.10.0 source with UMF SDK 0.5.2 and host 0.1.0.dev4. Source formats below 0.10 and old installation upgrade paths are unsupported; independently versioned backend/codec IDs remain distinct.
Functional qualification is local macOS ARM64 with PostgreSQL 18.6. All 80 actual embedder queries passed 483 native comparisons; their prepared programs remain byte-identical on the final indexed compiler. Seven sample methods/eight operations passed 15 checks. The final installed wheel passed four batch cases/58 assertions, including 1,000 inserts in one mutation statement. Every lease was returned. All recorded maintained failures were repaired through focused checks: 24 core, 41 runtime, 22 PostgreSQL selectors and the paths-keys CLI; the Databricks compiler follow-up passed 123 tests. The historical B-001 spike is outside maintained release qualification; the whole workspace campaign was not repeated or claimed green.
Other platform jobs build/import packages and check archive metadata, RECORD, notices and native identity only. No cross-platform functional qualification, live Spark/Databricks execution, time-only query codec, or complete application/external-reference integration is claimed. The exact local artifact and detailed scope are in local-macos-0.4.48.json.
Source freeze: db1e0dc5b1ec6aec0f12646421cefc314989d974.
macOS ARM wheel SHA-256: def824d16bc00f9deb50c7c63bc08a728cff631eef25cf2616032b761e1c679c.
Native module SHA-256: 36224fd006f525e26e79ad2504bee7ffd75439ce1c8367564cfeb7c826e736a4.
Install the wheel for your platform from the release assets; verify it against SHA256SUMS. Report unsupported declarations with exact source and version through the issue tracker.
Weft v0.4.47
Weft 0.4.47
This distribution retains the 0.4.46 compiler implementation and repairs its
release capacity fixture. The 1,000-record, twelve-field request now uses UMF
0.10.0 with coherent source and binding hashes; all five rejection controls and
resource bounds remain unchanged. The original capture remains historical
evidence. This derived compiler fixture does not claim fresh database execution.
The 0.4.46 tag produced no published wheels.
Truss raw reads and related-key reads now consume current UMF 0.10.0 source,
including original Record/Field IDs when authored names are absent. Authored
names retain precedence. Compile-request and logical-plan 0.2.7 schemas now
admit the current core version. Date, binary and export fixtures use current
source documents.
The raw-read profile retains object-valued umf.ddd Record metadata and
hohfeld.view Record/Field metadata without interpreting those payloads.
Unknown selected extensions, malformed payloads and unresolved semantic-type
references still refuse. Original source bytes and model pins are preserved.
This change adds no host authorization or native execution authority.
Current source-exact PostgreSQL/Lakebase reads require core 0.10.0 throughout
the model, ColumnSet and original binding. Mixed or older pins refuse. Selected
Record members, including binary fields and vector leaves outside the scalar
binding, use the existing indexed model admission pass. Held action, search and
Spark profiles retain their separately scoped contracts. Term-filter source
metadata preserves the already-admitted core version, including 0.10.0.
PostgreSQL raw reads and related reads now include compiler-owned dbapiSql
and dbapiParameterOrder; search and raw-bulk programs carry these fields in
their embedded read templates. Their final executable transports retain their
existing contracts. Token spans preserve original
SQL bytes, quoted content, Unicode and literal percent/dollar characters;
bindings follow placeholder occurrence order, including repeats. Related-read
transport is generated after composing source and target parameter inventories.
Both representations are included in the program's structural digest. Hosts
must retain these compiler fields when checking that digest rather than replace
them with a host SQL rewrite. Truss's registered-engine compiler APIs retain their
existing transport.
The preceding DBAPI cohort recorded 183 PostgreSQL library passes and 187
generated-client/native PostgreSQL 18.6 assertions with Psycopg 2/3 and SQLAlchemy sync/async
transports. See the exact source and wheel evidence.
Those native assertions use a bounded fixture executor, not UMF's legacy
reviewed.py production executor. The compatible UMF consumer successor additionally passes 23 actual core 0.10
compilation, production-executor and transport tests against PostgreSQL 18; two
generated-reporting tests were skipped because their fixture was absent. This
consumer check uses the rebuilt compiler CLI, not a published wheel. This profile does not qualify
table admission, mutations, DDL, policy/grant generation or complete Praxis
lifecycle integration.
The candidate Rust workspace passed locally with the candidate Truss and Ashlar
registrations. Focused qualified raw-read and related-key checks also passed.
Publication requires the frozen source's conformance workflow and every exact
platform wheel's existing packaging, compiler, capacity and ABI smoke checks.
Actual installed Truss native qualification and its full stress matrix remain
Truss release gates; this compiler release does not claim those gates passed.
Weft v0.4.45
Weft 0.4.45
Current-query and presence preparations now admit coherent UMF 0.10.0 source
using its actual schema, exact source bytes and model pins. Their typed packets
and conditional lowerers preserve that version; mixed source formats and
unresolved external semantic references refuse. Host authorization and native
execution obligations are unchanged.
Validation: 387 compiler core tests pass locally. Each published wheel must pass
the existing native smoke suite plus an actual UMF 0.10 current-query preparation
and PostgreSQL ABI2 lowering. This release also includes the repository's
MIT OR Apache-2.0 license update.
Weft v0.4.44
Weft 0.4.44 presence/Graph and UMF 0.10 raw-carrier release
This release packages the existing issued CurrentPresencePreparation, model and
Graph requirements, and original PostgreSQL presence lower/check APIs alongside
all six standard 0.4.41 features. It includes the
current-presence-graph-requirements-candidate feature and its declared
prerequisites; Python/Cargo versions are canonical 0.4.44.
Source starts from public main 0a9b3560 and includes UMF 0.10.0 schema
admission and raw PostgreSQL UUID/128-bit carrier changes. The raw-read profile
accepts original UMF 0.8.0 and 0.10.0 source documents; UUID and bits128 columns
are admitted only for postgresql18 and lakebase18. UUID maps to PostgreSQL
uuid and bits128 maps to bytea. Selected UMF 0.10 elements outside the
established raw scalar subset, including semantic type references, non-empty
extension content, and unsupported Record reference roles, remain refused. The
source document and its pin are retained. No additional adapters, managed
database execution, or native authority are implied.
No unmerged aggregate, term-filter, UC search or managed-mutation semantics are
included. Their separate preserved development candidates remain a later
tranche. The approved bounded plan is retained by Truss at commit
933e47a9381fe9b8294200b989360b35c017bc56, under its current-graph-authority
evidence.
The catalog-capacity wheel gate preserves the 0.4.42 canonical result receipt
after removing only the declared engine-navigation language profile addition.
It also asserts that weft-sql/0.2.0 /
weft-ir/engine-navigation/0.1 is present exactly once for each of the 15
operations. All previous packaging, query ABI, Date, Decimal12, native70,
current Databricks, refinement and SDK gates remain required on all five
platforms.
Release pins retain exact source, declared workspace feature closure,
wheel/native module/shim hashes and report identities. Publication follows
completed source review and local checks, then the existing exact-tag
five-platform wheel and automatic publication gates. Inspect the actual public
assets and digests before Truss enrollment. The failed v0.4.43 candidate is
preserved as an immutable tag and has no published release assets.
Candidate compiler APIs grant no native admission or protected activation.
Truss owns fresh scalar/Graph cohort registration and real local/hosted
qualification before changing its default compiler pin. Unsupported target
native Graph support is not inferred from wheel availability. SDK temporal
qualification remains HELD.