Repository navigation
Ack 1.7.0-beta.7
Pre-release
Pre-release
All five packages are aligned at 1.7.0-beta.7: ack, ack_generator, ack_json_schema_builder, ack_mcp_dart, and ack_firebase_ai.
What's Changed
Added
multipleOfin imported JSON Schemas (#214):Ack.fromJsonSchema()now validatesmultipleOffornumberandintegerschemas using exact decimal division (shared with native.multipleOf()) and reportskeywordLocationon failures.- Built-in
formatassertions andx-*extensions in imported JSON Schemas (#216):Ack.fromJsonSchema()now validates built-in string formats (date,email,uuid,uri,ipv4, andipv6, in addition todate-time), standard numeric formats (int32,int64,uint32,uint64,float, anddouble), and acceptsx-*vendor extension annotations (such asx-transformed). - Draft-07
$schemaURI support (#217):Ack.fromJsonSchema()now acceptshttp(s)://json-schema.org/draft-07/schema(with or without a trailing#), allowing schemas exported by.toJsonSchema()to be re-imported directly.
Performance
- Faster imported validation, schema export, and collection parse/encode (#213):
Ack.fromJsonSchema()reads typed node fields directly instead of per-node keyword maps,toJsonSchema()skips redundant subtree walks when constraints do not project nested keywords, andAck.object(),Ack.list(), andAck.map()return detached unmodifiable views without a second collection copy.
Upgrading
No new breaking changes or generator migrations are introduced in 1.7.0-beta.7. When upgrading from 1.6.2 or earlier 1.7.0 betas:
- From
1.7.0-beta.4or earlier: Importedpatternexpressions compile in ECMA-262 Unicode mode (uflag); see the1.7.0-beta.5release notes. - From
1.7.0-beta.2or earlier: Annotations ship inpackage:ackwith@Schemable()as the unified entry point; see the1.7.0-beta.3changelog.