Repository navigation
Releases: Swir/SwirEngine
Release list
SwirEngine 2.2.1
SwirEngine 2.2.1 Release Notes
SwirEngine 2.2.1 is a metadata-only maintenance release for the completed SwirEngine 2.2
Production Tools & Visual Creation line. Public availability is authoritative only when the exact
v2.2.1 tag, GitHub Release and PyPI project metadata exist. Until that guarded publication
completes, SwirEngine 2.2.0 remains the latest public stable release.
What changes
- The PyPI project page receives a complete product description instead of the short 2.2.0 summary.
- Installation, 2D and 3D quick starts, project/editor commands, runtime capabilities, multiplayer
boundaries, SwirEditor tools, examples, support limits and documentation links are explained in
one package-index document. - The candidate version and long-description inputs are bound to the exact source used to build the
future 2.2.1 distributions.
What does not change
- There are no public API or runtime behavior changes from SwirEngine 2.2.0.
- There are no functional runtime changes from SwirEngine 2.2.0.
- There are no additions, removals or intentional compatibility changes to the public Python API.
- The completed 10/10 SwirEngine 2.2 roadmap scope is unchanged.
- Existing 2.2.0 projects do not require a data migration for this maintenance release.
- Platform, architecture, optional-dependency, host-native packaging and multiplayer-service
boundaries remain as documented for the 2.2 line.
The complete package-index copy is maintained in PYPI_DESCRIPTION_2_2_1.md and is bound as the
project long-description input for the exact release artifacts.
Compatibility
SwirEngine 2.2.1 retains package metadata for CPython >=3.10,<3.15. The maintained release claim
remains limited to the explicitly qualified 64-bit Windows, Linux and macOS hosted-runner matrix;
it does not imply support for 32-bit Python, PyPy, free-threaded CPython, every CPU architecture or
every optional dependency.
Publication boundary
Changing source version metadata does not publish a package. The existing public command remains:
python -m pip install -U "swirengine==2.2.0"Only after the guarded 2.2.1 release process succeeds may public documentation switch its stable
installation command to swirengine==2.2.1 and identify 2.2.1 as published.
SwirEngine 2.2.0
SwirEngine 2.2.0 Release Notes
Prepared from the bound 2.2.0 candidate. Public availability is authoritative only from the
immutable v2.2.0 tag, GitHub Release metadata and PyPI project metadata.
Production tools and visual creation
- Deterministic material and shader assets with creator-facing editing and shipping-renderer
preview paths. - Visual node-graph authoring that keeps untrusted graph data separate from trusted Python
execution. - Terrain, foliage, animation state-machine and blend-tree authoring backed by runtime data.
- Particle/VFX, lighting, environment and post-processing authoring with isolated previews and
project-confined resources. - Responsive UI Designer workflows with reusable styles, interaction states and bounded
animations over the shipping UI toolkit. - Privacy-safe multiplayer diagnostics and a capability-gated Editor Extension SDK.
Compatibility and qualification
- Preserves the published SwirEngine 2.1 project/runtime compatibility baseline.
- Supports the maintained 64-bit CPython 3.10–3.14 matrix on the explicitly tested Windows,
Linux and macOS runners. - Keeps public API compatibility, source/runtime version parity, deterministic package contents,
clean-wheel installation and representative 2D, 3D and multiplayer projects under release
gates. - Excludes repository-only release evidence and publication-control markers from wheel and sdist
payloads.
Release identity
The guarded publication workflow binds the reviewed candidate source, required-workflow manifest,
publication marker chain, v2.2.0 tag, PyPI files, checksums, provenance and GitHub Release assets.
Existing public objects are immutable; retry/resume may add only objects proven to be missing.
SwirEngine 2.1.0
SwirEngine 2.1.0 Release Notes
SwirEngine 2.1.0 is the creator-workflow release built around SwirEditor & Creator Workflow. The finite 2.1 roadmap is complete at 10/10 milestones = 100.0% and the publication gate revalidates the exact release source before any public upload.
Highlights
- Project-backed SwirEditor desktop workflow with Project Hub and unified CLI entry points.
- Multi-scene authoring, hierarchy editing, typed Inspector workflows and prefab create/instantiate/apply/revert.
- Production 2D/3D viewport with picking, navigation, transform gizmos, snapping, overlays and live rendering.
- Asset import/reimport, dependency visibility, previews, background processing and native drag/drop.
- Integrated Play/Pause/Stop/Step, isolated runtime state, Console source navigation, diagnostics and Profiler.
- Runtime-backed creator tooling for input/rebinding, display/accessibility settings, animation, physics/collision, navigation/AI, audio, UI/HUD and save/profile systems.
- Build/Export Wizard with profiles, icon/metadata configuration, artifact inspection, integrity checks and host/platform validation.
- Representative 2D, 3D and multiplayer workflows exercised from authoring through staged export and runtime validation.
Compatibility
- Python requirement:
>=3.10,<3.15. - Maintained verification covers the repository's supported 64-bit CPython 3.10–3.14 Windows, Linux and macOS matrix.
- Published 1.4.0, 1.5.0 and 2.0.0 releases remain immutable.
- 2.1 preserves the documented 2.0 runtime compatibility surface unless a migration note explicitly says otherwise.
Install
python -m pip install -U "swirengine==2.1.0"Optional audio support:
python -m pip install -U "swirengine[audio]==2.1.0"Verification and provenance
The guarded publication workflow rebuilds and validates exact-source wheel/sdist artifacts, the Windows CPython 3.14 vendored-native wheel, representative real-game workflows, supported clean-install combinations, release-safety checks, deterministic SHA-256 checksums and release provenance before creating the immutable v2.1.0 release.
See:
ROADMAP_2_1.mddocs/RELEASE_GATE_2_1.mddocs/MIGRATING_TO_2_1.mdREADME.md
SwirEngine 2.0.0
SwirEngine 2.0.0 Release Notes
SwirEngine 2.0.0 is the next planned public release after 1.5.0. It consolidates the source-only 1.6–1.9 engineering checkpoints into a verified Python-first production path for complete 2D, 3D and multiplayer games.
These notes are committed before publication so the exact release candidate can validate them. Their presence does not mean 2.0.0 has already been published.
Highlights
Public API and migration contract
- Preserves the published 1.5.0 root API as the explicit compatibility floor.
- Ships a machine-verifiable 1.5.0 → 2.0 migration ledger and API-stability policy.
- Requires deliberate breaking changes to carry migration evidence and regression coverage.
Integrated creator workflow
- Adds a coherent project creation, validation, preparation, run-session and shipping workflow.
- Validates scene/prefab, content, input/settings, save/profile and export configuration through creator-facing tooling.
- Provides deterministic JSON evidence and actionable diagnostics for malformed projects and missing content.
Multiplayer and dedicated-server production contract
- Adds deterministic client/server compatibility fingerprints and reconnect/resume hardening.
- Separates authoritative gameplay state from player-local settings/save/profile data.
- Provides a validated fixed-tick headless dedicated-server path and multiplayer integration fixture.
Runtime scalability and resource lifecycle
- Hardens asset streaming residency, cancellation, teardown, cache invalidation and pressure diagnostics.
- Verifies bounded transient render-resource reuse and deterministic cleanup.
- Locks representative 2D and 3D scale workloads to reproducible pruning/reuse invariants instead of unsupported FPS claims.
Verified Python/platform matrix
- Base-engine support is verified on 64-bit CPython 3.10–3.14 across the documented Windows, Linux and macOS matrix.
- Clean-wheel verification runs outside the development checkout.
- Windows x86-64 CPython 3.14 uses the validated native-renderer wheel path.
Real-game shipping gate
- Maintained 2D, 3D and multiplayer projects exercise the same production workflow as user projects.
- Fixtures validate input/UI, settings, save/profile, scenes, assets, diagnostics, export staging and failure paths.
- Source and staged entrypoints are verified rather than treating isolated subsystem demos as sufficient evidence.
Packaging and native desktop shipping
- Builds wheel and sdist from exact candidate source and validates archive safety/inventory.
- Installs artifacts into isolated environments and executes maintained fixtures from the installed package.
- Verifies host-native packaged game execution on the supported desktop hosts covered by CI.
Performance evidence
- Uses deterministic performance/scalability workloads with committed thresholds and exact runner context.
- Keeps shared-runner timings as regression evidence, not universal FPS marketing.
- Limits competitive comparisons to reproducible workflow facts where technically comparable.
Export integrity and release safety
- Verifies staged export inventory and SHA-256 integrity, including missing/tampered/unexpected content rejection.
- Adds deterministic build-integrity seals covering generated native build inputs.
- Audits generated support bundles for bounded contents, safe paths, redaction/privacy declarations and build identity.
Compatibility
- Published 1.4.0 and 1.5.0 releases remain immutable historical releases.
- Python requirement remains
>=3.10,<3.15. - The final supported platform statement is defined by
docs/SUPPORT_MATRIX_2_0.md; combinations outside that verified matrix are not implied to be supported. - Source-only 1.6–1.9 checkpoints are not separate public releases.
Install
After successful publication, install the exact release from public PyPI:
python -m pip install -U swirengine==2.0.0Optional audio support:
python -m pip install -U "swirengine[audio]==2.0.0"Verification
The final release is valid only after the repository's complete 2.0 gate passes on the exact tagged source and public PyPI installation is verified outside the development checkout.
See:
ROADMAP_2_0.mddocs/RELEASE_GATE_2_0.mddocs/MIGRATING_TO_2_0.mddocs/SUPPORT_MATRIX_2_0.mddocs/PACKAGING_SHIPPING_2_0.mddocs/RELEASE_SAFETY_2_0.md
SwirEngine 1.5.0
SwirEngine 1.5.0 Release Notes
SwirEngine 1.5.0 — Production Runtime & Creator Scale — extends the stable 1.x engine with deterministic simulation/replay, resilient save/profile storage, richer audio/animation/navigation/world-streaming/UI/editor systems, and a reproducible runtime diagnostics layer. The 1.5 systems are additive or opt-in so existing stable 1.x projects can continue using their established APIs.
Highlights
Deterministic Simulation & Replay
- Opt-in fixed-step simulation clock and deterministic replay recording/playback.
- Canonical portable replay data, state fingerprints, checkpoints and seeking.
- Focused cross-version validation and a deterministic long-run workload contract.
Save & Profile 2.0
- Versioned integrity-checked save envelopes with atomic primary/backup writes.
- Ordered project migrations, profile isolation and legacy 1.x import without rewriting old saves.
- Bounded autosaves, inspection metadata and corruption-safe recovery.
Audio 2.0
- Bounded priority-aware SFX voice budgets with deterministic stealing and protected voices.
- Mixer snapshots with deterministic interpolation and stable spatial composition.
- Headless diagnostics and portable state fingerprints.
Animation Graphs 2.0
- Reusable clips, typed graph parameters, transition priorities and wildcard sources.
- Deterministic cross-fades, generic portable poses and headless state fingerprints.
- Additive runtime surface that leaves stable 1.x animation APIs unchanged.
Navigation 2.0
- Deterministic waypoint graph queries with filters, area costs and endpoint snapping.
- Creator-facing agents, path following, arrival semantics and bounded local avoidance.
- Spatial-bucket crowd stepping and portable diagnostics.
World Streaming 2.0
- Finite partition registry with deterministic dependency validation and stable fingerprints.
- Budgeted activation/deactivation, retention hysteresis, lifecycle rollback and isolated retry.
- Creator-first
WorldStreamfacade plus Game-aware cleanup for managed resources.
UI Toolkit 2.0
- Retained widget trees with responsive vertical/horizontal layout and resolution-independent scaling.
- Shared keyboard/mouse/gamepad focus model and deterministic spatial navigation.
- Centralized themes, portable UI snapshots and runtime diagnostics.
Editor Productivity 2.0
- Non-destructive prefab authoring, selective apply/revert and materialized variants.
- Bounded shared command history and transactional multi-object batch editing.
- Asset-reference diagnostics and preserved 1.4 Edit/Play isolation.
Runtime Diagnostics & Profiling 2.0
- Bounded frame/update/physics/render timing history plus arbitrary timing domains.
- Generic subsystem counters, explicit resource accounting and opt-in Python allocation snapshots.
- Fault-contained diagnostics providers and deterministic versioned capture/export with SHA-256 fingerprints.
Integrated hardening
The 1.5 release gate validates the complete repository and both source-only game showcases rather than creating separate releases for those examples. The final candidate must pass:
- full pytest, Ruff and compile validation;
- Python 3.10-3.13 cross-platform CI plus the dedicated Windows CPython 3.14 native-wheel path;
- all nine 1.5 deterministic/workload-specific benchmark contracts;
- headless and real Linux OpenGL 3.3 execution of the SwirEngine 2D Game Demo and SwirEngine 3D Game Demo;
- clean wheel installation outside the editable source tree;
- Windows one-file packaging/runtime probes;
- the locked 1.3 and 1.4 compatibility/release contracts;
- strict
tools/verify_1_5_release_candidate.py --require-completevalidation; - tag-only Trusted Publishing to PyPI;
- public-index clean-install verification after publication.
Compatibility
SwirEngine 1.5.0 preserves established stable 1.x root imports and keeps the new 1.5 systems additive or opt-in. Projects using stable 1.4 APIs do not need to migrate simply to install 1.5.0.
Python support remains >=3.10,<3.15. The normal cross-platform matrix covers Python 3.10-3.13; Windows x86-64 additionally uses the dedicated validated CPython 3.14 native-wheel path.
Install / upgrade
python -m pip install -U swirengine==1.5.0Optional audio support:
python -m pip install -U "swirengine[audio]==1.5.0"Documentation
See ROADMAP_1_5.md for the milestone contracts and docs/RELEASE_HARDENING_1_5.md for the final publication gate.
SwirEngine 1.4.0
SwirEngine 1.4.0 Release Notes
SwirEngine 1.4.0 — Production World & Engine Power — is the next stable 1.x release. It expands the engine from the 1.3 gameplay/creator foundation into larger-world authoring, deeper physics and movement, modern rendering/VFX, scalable scene processing, a stronger asset pipeline, editor authoring and opt-in multiplayer production foundations.
The release remains backward-compatible with the established stable 1.x API wherever practical. New 1.4 systems are additive and can be adopted incrementally.
Highlights
Terrain + World LOD
- Generated heightmap terrain and chunk mesh building.
- Distance-based LOD with bounded local selection and cache reuse.
- Terrain material/splat metadata, heightfield ground queries and large-world streaming integration.
Physics 2.0 + Character Controllers
- Additive
PhysicsScene3D/PhysicsBody3DAPIs. - Deterministic contacts, friction, restitution, sleeping, shape sweeps, joints and continuous-collision foundations.
- First-person, third-person and platformer controllers with jumping, coyote time, step/slope handling, ground snapping, camera integration and navigation steering.
Renderer 2.0 + GPU VFX
- Opt-in
Renderer2,Renderer2SettingsandDecal3DAPIs. - Cascaded directional shadows with stabilization and PCF.
- Sampleable depth/view-normal prepass, SSAO, HDR bloom and screen-space decals.
- OpenGL 3.3 transform-feedback GPU particles with sprite, texture, trail and instanced-mesh paths.
Asset Pipeline 2.0
- Dependency-aware bounded background import with caller-thread finalization.
- SHA-256 source/dependency fingerprints and transitive invalidation.
- Persistent content-addressed derived cache.
- Improved glTF/GLB dependency and PBR preservation.
- Conservative mesh cleanup and opt-in texture optimization.
Scene Acceleration + Occlusion
- Deterministic static BVH plus dynamic refits.
- Conservative world bounds and broad frustum pruning.
- Renderer2 candidate-view integration.
- CPU Hi-Z reference queries and a real GPU maximum-depth pyramid without CPU readback.
Editor Authoring Power
- Ordered multi-selection and range/toggle selection.
- Grouped property/gizmo/asset editing with transaction-safe undo/redo.
- Persistent authoring sidecars and safe asset drag/drop paths.
- Material, physics and navigation inspector adapters.
- Explicit Play/Edit authoring isolation.
- Opt-in
swirengine.editor14facade.
Multiplayer 2.0
- Replicated-component schemas.
- Canonical snapshots and sparse deltas.
- Bounded out-of-order interpolation.
- Client prediction with authoritative reconciliation.
- Bounded server rewind foundations and per-channel bandwidth diagnostics.
- Stable
NetworkPacketbridge.
Integrated validation
demo_projects/neon_frontier_1_4 is the 1.4 release-validation project. It combines terrain/LOD, Physics 2.0, Character Controllers, Renderer 2.0, GPU VFX, large-world streaming, Editor Authoring and Multiplayer 2.0 in one asset-free project.
The final release gate covers:
- full pytest, strict Ruff and compile validation;
- Python 3.10-3.13 across the supported desktop matrix;
- Windows x86-64 CPython 3.14 native-wheel build, selection and import validation;
- deterministic milestone and integrated performance contracts;
- real Linux OpenGL 3.3 execution under Xvfb/Mesa;
- clean wheel installation outside the source tree;
- Windows one-file packaged runtime probing;
- strict
tools/verify_1_4_release_candidate.py --require-completevalidation; - Trusted Publishing to PyPI;
- public-PyPI clean-install verification after publication.
Compatibility
SwirEngine 1.4.0 preserves established 1.x root imports and keeps the new major 1.4 systems additive or opt-in. Projects using stable 1.3 APIs do not need to migrate simply to install 1.4.0.
Python support is >=3.10,<3.15. The normal cross-platform matrix covers Python 3.10-3.13; Windows x86-64 additionally has the dedicated CPython 3.14 native-wheel path.
Install / upgrade
python -m pip install -U swirengine==1.4.0Optional audio support:
python -m pip install -U "swirengine[audio]==1.4.0"Documentation
See ROADMAP_1_4.md for the verified 10/10 roadmap and docs/RELEASE_HARDENING_1_4.md for the final release-gate contract.
SwirEngine 1.3.0
What's Changed
- feat(renderer): GPU instancing and frustum culling for SwirEngine 1.3 by @Swir in #64
- feat(animation): glTF skeletal animation and GPU skinning for SwirEngine 1.3 by @Swir in #65
- feat(physics): 3D collision and fixed-step gameplay foundation for SwirEngine 1.3 by @Swir in #66
- feat(navigation): deterministic grid pathfinding and agents for SwirEngine 1.3 by @Swir in #67
- feat(world): large-world chunk streaming for SwirEngine 1.3 by @Swir in #68
- feat(shader): advanced material and shader variant pipeline for 1.3 by @Swir in #69
- perf(2d): viewport-cull tilemaps and reuse sprite staging for 1.3 by @Swir in #70
- feat(gameplay): deterministic timers signals pools and spawners for 1.3 by @Swir in #71
- feat(editor): expose SwirEngine 1.3 systems through existing creator workflow by @Swir in #72
- release(1.3): integrated full game and final hardening gate by @Swir in #73
Full Changelog: v1.2.0...v1.3.0
SwirEngine 1.2.0
What's Changed
- feat(input): semantic actions, rebinding and control profiles by @Swir in #45
- feat(rendering): static 3D cube batching with draw-call metrics by @Swir in #46
- feat(assets): async preload pipeline with deterministic diagnostics by @Swir in #47
- feat(ui): responsive layout and keyboard/gamepad focus by @Swir in #48
- feat(audio): expanded mixer buses fades spatial controls and diagnostics by @Swir in #49
- feat(animation): tween timelines and gameplay state machines by @Swir in #50
- feat(physics): spatial broad-phase and richer collision queries by @Swir in #51
- feat(editor): project workflow and reversible playtest iteration by @Swir in #52
- ci: harden the final SwirEngine 1.1 release candidate gate by @Swir in #53
- feat(vfx): sparse pooled particle runtime and SwirEngine 1.2 roadmap by @Swir in #54
- feat(text): font fallback and cached layout pipeline by @Swir in #55
- feat(camera): shared 2D/3D camera systems for 1.2 by @Swir in #56
- feat(storage): typed settings migrations and profile saves for 1.2 by @Swir in #57
- feat(network): gameplay messaging RPC and session diagnostics for 1.2 by @Swir in #58
- feat(scene): indexed ECS composition and lifecycle ergonomics for 1.2 by @Swir in #59
- feat(assets): budgeted staged asset streaming for SwirEngine 1.2 by @Swir in #60
- perf(renderer): stream 2D batches and harden VFX hot paths for 1.2 by @Swir in #61
- feat(export): verified desktop shipping pipeline for 1.2 by @Swir in #62
- feat(release): creator hardening and final 1.2 release contract by @Swir in #63
Full Changelog: v1.1.0...v1.2.0
SwirEngine 1.1.0
What's Changed
- fix: repair Windows standalone demo startup by @Swir in #40
- demo: add Neon Snake 3D game and release pipeline by @Swir in #41
- fix: harden Python compatibility and release metadata for 1.0.2 by @Swir in #42
- release: Python 3.14 support and smoother frame workloads in 1.0.3 by @Swir in #43
- release: SwirEngine 1.1.0 standardized gamepad input by @Swir in #44
Full Changelog: v1.0.1...v1.1.0
SwirEngine 1.0.1
Stable SwirEngine 1.0.1 release. Includes verified wheel and source distribution.