feat: add Python and Java regex engines

This commit is contained in:
2026-07-27 02:02:21 +02:00
parent 4951c966d4
commit 7079cde15f
95 changed files with 8866 additions and 251 deletions

View File

@@ -1,10 +1,10 @@
# Source identity
- Project: Regex Tools
- Release version: `0.2.0`
- Release tag: `v0.2.0`
- Release version: `0.3.0`
- Release tag: `v0.3.0`
- Repository: <https://git.add-ideas.de/zemion/regex-tools>
- Previous release tag: `v0.1.0`
- Previous release tag: `v0.2.0`
- Licence: GPL-3.0-or-later
- Copyright: © 2026 Albrecht Degering
@@ -20,14 +20,26 @@ runtime or build-time CDN fetch. Complete preferred-form source is the tagged
repository. The release archive contains compiled static assets plus legal,
source-identity and attribution documents.
The explicit offline PCRE2 build is documented in `docs/ENGINE_BUILDS.md`.
PCRE2 source is not vendored: the gate accepts only the pinned, clean official
10.47 checkout and Emscripten 6.0.4 compiler. Generated staging is ignored; the
verified runtime files, deterministic metadata, checksums and exact licence are
installed under `public/engines/pcre2/` and included in the application source
and build.
The engine-pack inputs and rebuild gates are documented in
`docs/ENGINE_BUILDS.md`.
The v0.2.0 release includes PCRE2. Python, Go, Rust, .NET, Java and legacy PCRE
remain unimplemented. The v0.1.0 release remains available under its historical
tag and artifact coordinates. A future public artifact must bump package,
manifest, tag and source identity together; it must not reuse `v0.2.0`.
- PCRE2 source is not vendored: the gate accepts only the pinned, clean
official 10.47 checkout and Emscripten 6.0.4 compiler.
- The Python pack is copied from the exact pinned Pyodide 314.0.3 npm package
and contains its CPython 3.14.2 runtime, Python standard library, loader,
WebAssembly module, metadata, checksums and licence material.
- The Java bridge source is under `engines/java/`. Its bundled module is
compiled against TeaVM 0.15.0's `java.util.regex` class library and is
identified as TeaVM rather than OpenJDK.
Generated staging is ignored. Only verified runtime packs with deterministic
metadata, closed file sets, checksums and exact licence/notice material are
installed under `public/engines/` and included in the application source and
build.
The v0.3.0 release includes native browser ECMAScript, PCRE2 10.47, CPython
3.14.2 `re` through Pyodide 314.0.3 and TeaVM 0.15.0 `java.util.regex`. Go,
Rust, .NET and legacy PCRE remain unimplemented. Earlier releases remain
available under their historical tags and artifact coordinates. A future
public artifact must bump package, manifest, tag and source identity together;
it must not reuse `v0.3.0`.