Repository navigation
kSTEP 0.1.1
Pre-release
Pre-release
kSTEP 0.1.1 — 2026-10-22 (pre-release)
Second pre-release. The GitHub release carries a platform-independent kstep-cli-0.1.1.zip (JVM only, without native bridges; about 86 MB because
it bundles the Kotlin compiler for *.kstep.kts scripts) and a SHA-256 checksum. Nothing is published to Maven Central or Homebrew. Geometry still needs a system OCCT
build (Linux x86-64 or, new, macOS arm64 via Homebrew).
Added
- macOS arm64 support for the OCCT and PlaneGCS native bridges (ADR-0026): platform-aware Gradle
build (clang++,.dylib, Homebrew defaults,-Pkstep.brew.prefix), platform whitelist in the
loaders (detectPlatform), unit tests for it, and a new CI jobbuild-native-macos. Development
use only: nothing is bundled, the dylib is unsigned, Intel Macs and Windows stay unsupported. - Release pipeline (
.github/workflows/release.yml, ADR-0025): pushing avX.Y.Ztag builds
kstep-cli-X.Y.Z.zip(without native bridges) with a SHA-256 checksum and creates or updates the
GitHub release; pre-release automatically while the major version is 0. No Maven Central,
Homebrew or signing yet. scripts/release/(tag validation, version check, checksum, release notes, distribution
verification) and its self-testtest-release-scripts.sh, which also runs in CI.kstep export --validate: opt-in population-level model validation (USEDIN,INVERSE,
UNIQUE, acyclic usages) before the Part 21 file is written. Findings give exit code 1 and no
file; if no verdict can be reached (limits, unsupported construct) it fails closed with the new
codeKSTEP-S-005. Text and--output jsonoutput, see ADR-0024. Default off, output without the
flag is unchanged.KStepModel.validateModel()inkstep-script(ModelValidationOutcome.Checked/
Unavailable).
Changed
- CI action updates (pinned by commit SHA, tags verified):
actions/setup-java6.0.1,
gradle/actions/setup-gradle6.4.0,actions/upload-artifact7.0.2.
Documented
- Interop finding of 2026-10-22: kSTEP Part 21 files (product structure) are read by FreeCAD 1.x
(OCCT 7.8) without error or warning and yield 0 objects because no geometry is written. An
independent reader built on OpenCascade 7.9.3's typed STEP model
(scripts/interop/read_step_structure.cpp) additionally resolves the product structure:
products, product definitions, formations and both ends of every assembly usage are found, no
entity is undefined and the OCCT model check reports 0 fails and 0 warnings. This proves
product-structure read interop with one external implementation (OCCT). Geometry interop,
other CAD/PLM readers, full AP242 schema conformance and a lossless write-back round trip remain
unverified, so ADR-0001 acceptance criterion #2 is only partly met.
Verify the download with the attached .sha256 file (sha256sum -c).