Repository navigation
Conversation
User directive, via the lead (#62). The root now holds only the modules, docs/, gradle/, .github/ and the files tools need there: - toolchain/ -> toolchain-gradle-plugin/ (:toolchain-gradle-plugin; plugin id unchanged) - tcl/ -> toolchain-cli/ (:toolchain-cli) - usage-example/ -> sample/, its Python package under sample/src/commonMain/python/; still its own build (python-multiplatform's Kotlin), now run with the root wrapper (./gradlew -p sample), so its copied wrapper is gone and the root wrapper moves to Gradle 8.11.1 (AGP 8.10 needs it) - tools/release/ -> .github/scripts/release/ - tools/xcode/stage-python-payload.sh deleted: an iOS app without python-multiplatform has no runtime to feed; the guide keeps the safe hand-wiring snippet - kotlin-js-store/ deleted (the root build has no JS/wasm target since #52); the sample's wasm yarn lock is sample/gradle/wasm-yarn.lock via WasmYarnRootExtension's lockFile*Property - .fleet/ and the never-built pyproject.toml deleted Workflows, Xcode phases, README (en/ko, with the new artifactIds), guide, SPEC, PROJECT.md and AGENTS.md follow; AGENTS.md also gains "Do not add top-level folders" (python-multiplatform #116). The old layout is the tag archive/pre-restructure. Closes #62
Correction from the lead: tcl is toolchain-lite, and the root pyproject.toml is its PyPI build (toolchain-lite 0.0.1 on PyPI carries its description and URLs). The restructure wrongly deleted pyproject.toml and renamed tcl/ to toolchain-cli/. - pyproject.toml is restored unchanged; AGENTS.md section 12 and SPEC's outside-intent item 5 now say what it is. Its name (toolchain, not toolchain-lite) and missing flit module belong to the toolchain-lite publishing work. - toolchain-cli/ is tcl/ again (:tcl, artifactId ...:tcl unchanged); every path, command, CI matrix entry and the README coordinates table follow. SPEC keeps its original tcl/ path abbreviation.
Refactor: Restructure the repository root
User directives (2026-10-03, via the lead): - Apache-2.0 everywhere: LICENSE (the Apache 2.0 text, as in pypackpack), the README badges and footers (en/ko), the guide footers, pyproject (license = "Apache-2.0" with license-files; the MIT classifier removed; flit_core >= 3.12 for that form). - Every em-dash in the docs, the guide and the code is replaced by a colon, a semicolon, parentheses or a full stop; **Status: X** lines read "**Status: X.** ..."; empty table cells are -. Dash pairs that wrapped across lines were rewritten by hand. - AGENTS.md section 18: no em-dash; examples use uv, ppp or tcl, never pip install; the licence statement. Closes #65
…ain.sh - CI file names (lead, 2026-10-03): tests live in test.yml; a separate file is test-<target>.yml, and iOS needs one (macOS runner, path filters, informational). The job id stays ios-e2e, so the check keeps its name. - main is protected by the maintainer's settings only, locked (user, 2026-10-03), as in pypackpack #55 and python-multiplatform #122/#127: main-source-guard.yml and protect-main.sh deleted, release-sync's guard-status step and statuses: write gone, the release README and AGENTS.md say only that the maintainer protects main and merges the release PR. Closes #67
Chore: Relicense to Apache-2.0; no em-dashes; writing rules in AGENTS.md
github-actions
Bot
force-pushed
the
release
branch
from
October 3, 2026 15:01
8f9bfba to
bd1b0a5
Compare
CI: ios-e2e.yml → test-ios.yml; drop main-source-guard and protect-main.sh
github-actions
Bot
force-pushed
the
release
branch
from
October 3, 2026 15:01
bd1b0a5 to
c5c81a9
Compare
User decision (via the lead): publish toolchain-lite 0.1.0, Apache-2.0, in pypackpack 0.2.0's shape (pypackpack #53). - tcl --help / -h and tcl --version; tcl gets its own version, 0.1.0, read from a resource the build generates (CliArgsTest; the version test compares against the build's version). - A GraalVM native image of tcl (graalvm buildtools 0.10.6, pypackpack's settings: slf4j initialized at build time, macOS minimum 11.0). - pyproject.toml is toolchain-lite 0.1.0, Apache-2.0, setuptools, with the launcher package toolchain_lite (tcl/src/main/python) and its own PyPI page (docs/pypi/README.md, absolute links). The old flit stub named a module that never existed. - publish-pypi.yml and .github/scripts/pypi/, adapted from pypackpack: published-Release trigger, trusted publishing from environment pypi (v* tags only), gates tag == pyproject == tcl version, version new on PyPI, fresh-venv smoke (tcl --help, --version, python -m toolchain_lite, tcl install six). Each wheel job publishes packpack from pypackpack develop first. - SPEC 2.2 and 2.3, AGENTS 12, the guide's tcl and Status pages. Closes #69
CI: Release toolchain-lite 0.1.0 on PyPI as native tcl wheels
github-actions
Bot
force-pushed
the
release
branch
from
October 3, 2026 15:26
c5c81a9 to
cb53b60
Compare
Lead decision (option A): this repository also releases the Gradle plugin, so toolchain-lite's Release tags are toolchain-lite-v<version> and bare v* stays the plugin's. publish-pypi.yml requires that tag and skips itself for any other Release; the pypi environment accepts only toolchain-lite-v* tags. Closes #71
…se test scratch Lead directive (item B, 2026-10-04) and the writing standard (pythonx-compose docs/style/writing.md): - README.md and README_ko.md link the guide site, the Korean/English README and LICENSE by absolute URL; AGENTS section 17 says README links are absolute. - Status words: 구현 / 부분 / 계획 (37 occurrences of 구현됨). - AGENTS section 2's table: CI-only scripts in .github/scripts/, no benchmarks/ or tools/. - test-sync-release.sh resolves the repository root three levels up since #62 moved it, so its scratch is the root .tmp/ again, not .github/.tmp/. Closes #74
CI: Tag toolchain-lite releases toolchain-lite-v<version>
github-actions
Bot
force-pushed
the
release
branch
from
October 3, 2026 15:45
cb53b60 to
8625828
Compare
Docs: Absolute README links, status words, AGENTS layout table, release test scratch
github-actions
Bot
force-pushed
the
release
branch
from
October 3, 2026 15:49
8625828 to
e579d1e
Compare
User correction (via the lead): the #62 restructure relayed the lead's proposal table as a user directive, and the user never approved the name toolchain-gradle-plugin, nor tcl as a root folder. - toolchain-gradle-plugin/ -> toolchain/ (:toolchain; plugin id unchanged; the implementation artifact is ...:toolchain again). Settings, CI, sample comments and docs follow. - tcl/ leaves the root: its sources are toolchain's src/cliMain/kotlin, the PyPI launcher src/cliMain/python, tests src/cliTest/kotlin (as pypackpack's CLI, pypackpack #74). The cli source sets depend on packpack and coroutines only and never extend main's configurations, which carry the Gradle API through java-gradle-plugin; the plugin publication carries no tcl, and test.yml checks the jar and the POM. - toolchain/build.gradle.kts gets the cliTest task, runTcl (./gradlew :toolchain:runTcl --args=...), tclVersion 0.1.0 and the GraalVM native image (:toolchain:nativeCompile, same arguments as before). The plugin keeps rootProject.version. - test.yml runs :toolchain:test (job toolchain) and :toolchain:cliTest (job tcl); publish-pypi.yml reads tclVersion and builds :toolchain:nativeCompile; build_wheel.py and pyproject's package-dir point at toolchain/src/cliMain/python. PyPI name toolchain-lite and the command tcl are unchanged. Closes #78
The native plugin defaults the main binary to a shared library when java-library is applied, and java-gradle-plugin applies it to this module: the dry run produced tcl.dll and no tcl.exe.
Refactor: Restore toolchain/ and move tcl into it as cli source sets
github-actions
Bot
force-pushed
the
release
branch
from
October 3, 2026 16:52
e579d1e to
5b0db2a
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Automated sync of
develop(57b287b) intorelease. Markdown outside README.md and docs/ subfolders is removed by .github/scripts/release/sync-release.sh.