Repository navigation
Conversation
github-actions
Bot
force-pushed
the
release
branch
from
October 17, 2026 06:56
b949fbc to
83f22b6
Compare
…eter (#72) Generated py.extension_module() targets set limited_api: '3.15'. On a free-threaded 3.15 interpreter that selects PEP 803's abi3t; Meson's -Dpython.allow_limited_api=false opts out. setup() passes the nearest .venv interpreter through a native file, so Meson stops building against the Python it runs on itself.
…ython-multiplatform #163 (#72) Removes 3.14.7, 3.13.0 and the 3.15.0 desktop GIL builds. 3.15 and 3.15t both name 3.15.0t. Android and iOS keep python.org's 3.15.0 GIL archives as the one exception; android315/ios315 take #163's URL and digest with freeThreaded = true when it lands. Every row is pinned, so the digest is no longer nullable.
#72) Every target: a GIL-tagged extension (cpython-3XY-, cp3XY-, abi3), which CPython 3.15t will not load. Host only: each free-threaded extension is imported in its own isolated process of the project's 3.15t .venv interpreter with a 30 s timeout, and sys._is_gil_enabled() says whether it turned the GIL on. Findings are BundleResult.warnings; BundleRequest.gilImportProbe = false skips the probe.
CPython 3.15t only: install, Meson abi3t, GIL warning (#72)
github-actions
Bot
force-pushed
the
release
branch
from
October 17, 2026 07:29
83f22b6 to
12e7ffb
Compare
…n) (#65) Records the 2026-10-17 decisions as planned: maturin and PyO3 with abi3t, target order host, Android arm64, iOS; pypackpack acquires the toolchains; separate from the compile slot; a Cargo.toml directory inside a Python package is the module, and [tool.ppp.rust] names a crate outside one (torchnative's torch._C). maturin's iOS and Android support is cited as shipped, with a cargo-direct fallback.
Docs: Plan the Cargo backend (#65)
github-actions
Bot
force-pushed
the
release
branch
from
October 17, 2026 07:33
12e7ffb to
a35d030
Compare
github-actions
Bot
force-pushed
the
release
branch
from
October 17, 2026 07:36
a35d030 to
88b1378
Compare
The root add/remove/sync helpers become private functions of DefaultMiddleware and the python list/find/install/uninstall/use overrides hold DevEnv's bodies unchanged. DevEnv.showDependencyTree had no caller (DefaultMiddleware shows the root tree itself) and goes with the file.
Refactor: Fold DevEnv into DefaultMiddleware (#86)
github-actions
Bot
force-pushed
the
release
branch
from
October 17, 2026 07:39
88b1378 to
39e1ae2
Compare
Docs: pypackpack 0.2.0 is on PyPI (#66)
github-actions
Bot
force-pushed
the
release
branch
from
October 17, 2026 07:44
39e1ae2 to
94b3299
Compare
…e) (#81) The maintainer's spec sheet form: build <package> source [<bundle type, default binary>] compiles for the canonical target and then bundles; build <package> resource bundles the source without compiling. With a bundle kind the target is normalized and defaults to the host, and the bundle's warnings are printed. build <package> alone still only compiles. The workspace package lookup moves to utils/Workspace.kt so the CLI can find the package directory too, and the binary refusal now names every implemented bundle type.
build: Take the bundle as an argument (build <package> source|resource) (#81)
github-actions
Bot
force-pushed
the
release
branch
from
October 17, 2026 08:45
94b3299 to
b1bc6a9
Compare
CodeAPI routes by bundle type: a library's single or fat wheel goes to PyPIPublishAPI, an app's binary or patch to FastTrackAPI, which refuses because no FastTrack server exists. PyPIPublishAPI uploads the one wheel build <package> source single|fat left, through pypackpack's uv; no token is stored, --publish-url and --dry-run pass through, and a missing wheel names the build command. The deploy CLI now finds the package as build does, through the workspace.
deploy: Publish code single|fat wheels to PyPI with uv publish (#90)
github-actions
Bot
force-pushed
the
release
branch
from
October 17, 2026 08:52
b1bc6a9 to
98c7424
Compare
Crates are found by convention (a Cargo.toml directory inside a Python package) or through [tool.ppp.rust]. Each is built by a pinned maturin through uv tool run, with PyO3's abi3t, against the project's .venv, with Cargo's build directory under build/. The wheel's one extension is placed at the module's path in the site-packages Meson installed the package into, so single and fat carry it like a C extension. Missing cargo, uv or .venv, or a non-host target, is refused before maturin runs. Meson's scan and the resource payload skip crate directories.
Cargo backend, stage 1: build a package's Rust crates for the host (#92)
github-actions
Bot
force-pushed
the
release
branch
from
October 17, 2026 09:04
98c7424 to
ca6b8fe
Compare
Android cross-builds with maturin, the NDK's clang for API 24 and the target Python through PYO3_CROSS_LIB_DIR, linking the target's libpython3.15t.so as CPython's own Android extensions do. iOS builds with cargo rustc directly, since maturin needs a cross virtual environment the XCframework lacks: pypackpack writes the PyO3 config and links the slice's Python.framework. A missing Rust target, NDK, Xcode or target Python is refused before anything builds.
Cargo backend, stage 2: build Rust crates for Android and iOS (#94)
github-actions
Bot
force-pushed
the
release
branch
from
October 17, 2026 09:23
ca6b8fe to
bd2ead4
Compare
…96) Kotlin's deleteRecursively walks into a link to a directory and empties its target. Bundle output on --overwrite, compile's build directory, python use replacing .venv, python uninstall, installPython staging, package removal and the Cargo output all used it on directories that can hold a user's links. They now call deleteWithoutFollowingLinks (utils/FileTree.kt), which removes a link and never what it points at.
Fix: Delete directories without following symbolic links out of them (#96)
github-actions
Bot
force-pushed
the
release
branch
from
October 17, 2026 09:29
bd2ead4 to
e09b78b
Compare
CI: Let a develop run in progress finish
github-actions
Bot
force-pushed
the
release
branch
from
October 17, 2026 10:45
e09b78b to
69ef4e7
Compare
… signing, staging) (#99) The POM gains url, Apache-2.0, developer and SCM; the publication gains sources and javadoc jars and is signed when a key is given. A staging file repository and a centralBundle zip rehearse the Central Portal upload without making it. check_central_bundle.py checks a staging directory against Central's requirements; it failed on the old publication and passes on a signed rehearsal.
Publishing: Prepare packpack for Maven Central (#99)
github-actions
Bot
force-pushed
the
release
branch
from
October 17, 2026 11:19
69ef4e7 to
bb51639
Compare
…quals the group (follow-up to #99) args.remove(plugin_id) removed the first equal argument, the group, when the plugin id and the group are the same string, as toolchain's are. The flag and its value are now removed by position (toolchain#98 has the same fix).
Fix: check_central_bundle.py with --plugin-id equal to the group (follow-up to #99)
github-actions
Bot
force-pushed
the
release
branch
from
October 17, 2026 11:25
bb51639 to
19d8383
Compare
…es in gradle.properties (#102) publish-maven.yml runs on a published packpack-v* Release in the maven-central environment: tag and version agree and are new on Central, missing secrets are named, the bundle is signed, checked and uploaded to the Central Portal as USER_MANAGED, so a person still presses Publish. A manual run stops before the upload. mavenGroup and packpackVersion live in gradle.properties only. publish-pypi.yml now runs only for v* releases.
Publishing: Release workflow for packpack to Maven Central (#102)
github-actions
Bot
force-pushed
the
release
branch
from
October 17, 2026 11:41
19d8383 to
568e247
Compare
The owner abolished the .tmp/ rule on 2026-10-26.
Docs: temp files in scratchpad or .cache/, not .tmp/
github-actions
Bot
force-pushed
the
release
branch
from
October 25, 2026 15:43
568e247 to
b577fd8
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(40f69a3) intorelease. Markdown outside README.md and docs/ subfolders is removed by .github/scripts/release/sync-release.sh.