Release v0.3.3
PyMOL-RS v0.3.3
A Windows-first release — after setting up dedicated Windows virtual machines (x86_64 and ARM64) for hands-on testing, the entire Windows experience has been reworked: proper app bundling, native icon, no console flash, correct DLL resolution, and ARM64 builds. From this release forward, every release ships bundles for macOS (Apple Silicon), Windows x86_64, and Windows ARM64.
This is also the first release published to PyPI — pip install pymol-rs now works out of the box.
Highlights
Windows Bundles
PyMOL-RS now ships self-contained Windows bundles for both x86_64 and ARM64. Each bundle includes the executable, plugins, an embedded Python environment, and a VBScript launcher that sets up paths and launches the app cleanly — no console window flash, no manual PATH configuration. Just unzip and double-click.
Windows ARM64 Support
ARM64 Windows joins the release matrix as a first-class target. Executables, plugins, and Python wheels are now built natively on windows-11-arm runners — no emulation layer, no x86_64 fallback.
PyPI Publishing
Python wheels are now automatically published to PyPI as part of the release pipeline. Install the Python bindings and Jupyter widget with a single command:
pip install pymol-rsApplication Icon
The PyMOL-RS icon is now embedded directly in the Windows executable via winresource (visible in Explorer, taskbar, and Alt+Tab) and set at runtime via winit on Windows and Linux. The app finally looks like an app, not a generic executable.
Transitive DLL Resolution
A new .deps file convention solves the "DLL not found" problem that plagued plugin loading on Windows. Any plugin can ship a companion .deps file with commands whose stdout resolves directories containing transitive DLL dependencies (e.g. python3XX.dll). The plugin manager prepends these to PATH before loading. The mechanism is generic — future plugins with native dependencies (Lua, R, etc.) just add their own .deps file without core changes.
New Features
- Console-free Windows builds — Release builds use
windows_subsystem = "windows"sopymol-rs.exeno longer spawns a console window - Auto-derived plugin versions —
pymol_plugin!macro now defaultsversion:toenv!("CARGO_PKG_VERSION"), keeping plugin versions in sync withCargo.tomlwithout manual duplication - Build tooling auto-install —
wasm-packis now an npm devDependency (no manual install), andmaturinruns viauvx— contributors can build immediately after clone
Bug Fixes
- Windows site-packages path — Fixed the Python plugin probing the wrong
site-packagesdirectory on Windows (site.getsitepackages()[0]returns the bare prefix on Windows, not the actual packages path) - IPC plugin excluded on Windows — Unix domain sockets are not available on Windows; the IPC plugin is now conditionally excluded from Windows builds
- TLS provider simplified — Switched from
aws-lc-rstoringas the rustls crypto provider, removing the cmake + C compiler build dependency - WASM build fixed —
ring/rustlsgated behindfetchfeatures so they don't leak intowasm32-unknown-unknownbuilds where they cannot compile - Raytracer plugin in releases — The raytracer plugin was missing from release builds; now included in the plugin build matrix
- wgpu/naga log noise — Suppressed shader dump spam that filled INFO-level logs
Under the Hood
- CI caching — APT packages, npm dependencies, wasm-pack, and Cargo all cached across CI workflows for faster builds
web/package-lock.jsontracked — Committed lockfile ensures reproducible web builds across machines and CI- Makefile cross-platform — Build targets for plugins, widget assets, and bundling use PowerShell on Windows and shell on Unix
- GitHub Actions updated —
upload-artifactv7,download-artifactv8,checkoutv6,setup-pythonv6
Downloads
Bundles (recommended)
Self-contained packages with the app, plugins, and an embedded Python environment. Unzip/mount and run — no setup required.
| Platform | Architecture | Download |
|---|---|---|
| macOS | Apple Silicon | PyMOL-RS.dmg |
| Windows | x86_64 | pymol-rs-bundle-windows-x86_64.zip |
| Windows | ARM64 | pymol-rs-bundle-windows-arm64.zip |
Standalone executables
Bare binaries for advanced users. Plugins must be installed separately.
| Platform | Architecture | Executable | Plugins |
|---|---|---|---|
| macOS | Apple Silicon | pymol-rs-macos-arm64.tar.gz | plugins-macos-arm64.tar.gz |
| Windows | x86_64 | pymol-rs-windows-x86_64.zip | plugins-windows-x86_64.zip |
| Windows | ARM64 | pymol-rs-windows-arm64.zip | plugins-windows-arm64.zip |
| Linux | x86_64 | pymol-rs-linux-x86_64.tar.gz | plugins-linux-x86_64.tar.gz |
| Linux | ARM64 | pymol-rs-linux-arm64.tar.gz | plugins-linux-arm64.tar.gz |
Python & Web
| Package | Download |
|---|---|
| Python wheels | pip install pymol-rs or see assets below |
| Web viewer (WASM + JS) | pymol-rs-web.tar.gz |
Full Changelog: v0.3.2...v0.3.3