Skip to content

Releases: wcodesoft/please-rules

[Kotlin] v0.3.3

Choose a tag to compare

@github-actions github-actions released this 22 Sep 19:19

Kotlin Rules v0.3.3

Added

  • Native wasm-wasi WebAssembly target support for kt_wasm_binary and
    kotlin_wasm_binary, enabling standalone execution under standard WASI
    runtimes (such as Wasmtime) without Node.js or JavaScript shims.
  • Hermetic bundling of kotlin-stdlib-wasm-wasi.klib (v2.1.10) in
    kotlin_toolchain with automatic fallback resolution in the
    please_kotlin_wasm orchestrator.
  • End-to-end integration test //test/kotlin/wasm:disjoint_set_wasi validating
    WASI module compilation and execution.

[Kotlin] v0.3.2

Choose a tag to compare

@github-actions github-actions released this 22 Sep 18:32

Kotlin Rules v0.3.2

Changed

  • Separate package generation: WIT interface is emitted into its declared WIT package (iface.Package), and bridge is emitted into targetPkg importing iface.Package.*.
  • Auto-detect class implementation: automatically discovers class in sources matching WIT interface name when impl option is not explicitly specified.
  • Enforce strict hermeticity: removed non-hermetic Homebrew fallback candidate path from Wasm stdlib resolution.

[WIT] v0.3.1

Choose a tag to compare

@github-actions github-actions released this 20 Sep 21:45

WIT Rules v0.3.1

Added

  • Support for WIT resource declarations in AST parser (tools/please_wit/ast).
  • Support for constructor, instance methods, and static functions inside resource blocks.
  • Resource interface generation across Kotlin, Swift, TypeScript, Python, Rust, Go, and C++ code generators.

[WIT] v0.3.0

Choose a tag to compare

@github-actions github-actions released this 20 Sep 11:20

WIT Rules v0.3.0

Removed

  • Removed external toolchain dependencies and precompiled binaries across all
    targets and rules.
  • Removed wit_toolchain rule; code generation is now 100% self-contained in
    pure Go.

Added

  • Pure Go AST lexer and recursive-descent parser (tools/please_wit/ast).
  • Pure Go code generators for Kotlin, Swift, TypeScript, Python, Rust, Go, and
    C++ (tools/please_wit/generate).
  • Support for AST-driven interface definitions across all 7 supported target
    languages.

[TypeScript] v0.2.1

Choose a tag to compare

@github-actions github-actions released this 20 Sep 12:34

TypeScript Rules v0.2.1

Changed

  • Defaulted ts_bundle to use esbuild via hermetic Deno for bundling,
    minification, and module resolution.
  • Synthesize import maps directly into esbuild --alias flags to accurately
    resolve bare specifiers and subpath package mappings.

Removed

  • Removed naive regex-based minifyJS and sequential file concatenation in
    please_ts bundle that corrupted code containing URLs and regular
    expressions.

[Swift] v0.1.3

Choose a tag to compare

@github-actions github-actions released this 20 Sep 21:29

Swift Rules v0.1.3

Added

  • Support for internal Swift Testing JSON Event Streaming (eventStreamOutputPath) parsed directly in Go (parseEventStream).
  • Detailed failure descriptions and issue records extracted directly from structured event stream payloads into JUnit XML test reports.

Changed

  • Transitioned primary test result extraction from text/xUnit output to internal NDJSON event stream processing while keeping intermediate JSON files private to temporary run directories.

[Swift] v0.1.2

Choose a tag to compare

@github-actions github-actions released this 20 Sep 21:14

Swift Rules v0.1.2

Added

  • Native JUnit/xUnit XML test report generation for swift-testing via Testing.__CommandLineArguments_v0.xunitOutput.
  • Support for skipped test reporting and detection of test suite names.

Fixed

  • Correct quantity of tests reported for Swift tests with spaces, backticks, or custom display names in swift-testing.
  • Robust fallback test output parsing for quoted test names, skipped tests, and execution status.

[Kotlin] v0.3.1

Choose a tag to compare

@walterjgsp walterjgsp released this 20 Sep 22:19

Kotlin Rules v0.3.1

Precompiled hermetic binaries and build definitions for Kotlin.

[Kotlin] v0.3.0

Choose a tag to compare

@github-actions github-actions released this 20 Sep 12:34

Kotlin Rules v0.3.0

Added

  • Support WebAssembly compilation via kt_wasm_binary (and
    kotlin_wasm_binary) build rules targeting wasm-wasi and wasm-js.
  • Dedicated please_kotlin_wasm compiler orchestrator handling multi-phase
    compilation, Wasm klib linking, and artifact generation.
  • Automated WIT bridge generation in please_kotlin_wasm producing
    @WasmExport trampolines and typed interfaces from WIT definitions.
  • Integration tests and comprehensive guides for Kotlin WebAssembly architecture
    and multi-language interop.

[WIT] v0.2.0

Choose a tag to compare

@github-actions github-actions released this 19 Sep 11:06

WIT Rules v0.2.0

Added

  • Auto-discovery of companion filenames (<PascalName>.swift, <PascalName>.kt, <name>.d.ts) based on the WIT target label or world/package name.
  • Automatic Clang module.modulemap generation for Swift to enable zero-config import <Module>.
  • Full package propagation from wit_library to language generators (package <ns>.<name> in Kotlin, --pkg-name for Go library packages, --internal-prefix for C++).
  • Added filename, module_name, and package parameter overrides across language rules (swift_wit_bindgen, kt_wit_bindgen, go_wit_bindgen, etc.).
  • Added --package, --companion-filename, and --module-name flags to the please_wit generate CLI.