Releases: metaist/cosmofy
Releases · metaist/cosmofy
0.2.1
0.2.1 - 2025-12-24T18:35:27Z
Fixed
- #42 minor typos; added links in README
- #58 only do the Windows dance if literally trying to replace
sys.executable - #96 files not saving to cache
- #97, #98 executable permissions for Cosmopolitan Python
- #99 nothing being logged in binary build
- #95 don't search for
pyproject.tomlwhen you only have--scriptto bundle - #104 error when using
cosmofy fs lswith--sort none - #105 restore working directory after error when using
cosmofy fs addwith--chdir - #103 use context manager for
urlopeneven forHEAD
Changed
- #106
cosmofy fs catoutputs raw bytes tosys.stdoutinstead of decoding to UTF-8
Added
- #94 pure Python limitation to README
- #107 clearer docstring for
expand_glob; literal paths are returned exactly - #100 document that
pythonoid.run_pythonintentionally destroyssys.argv
Security
0.2.0
0.2.0 - 2025-12-24T03:14:02Z
This release represents a very large shift from bundling individual python files to using uv to bundle entire venv directories. The behavior of the CLI is now much more similar to uv in form and function.
Fixed
- #14 typo in
--help - #43 exclude
uvartifacts from the bundle - #46
expand_globsto follow all (most?) of the shell rules - #48 getting only the project's
console_scripts - #50
cosmofy bundle --scriptassumes venv in output - #52 avoiding clobbering logging on import
- #56 used context handlers to close temporary directories
- #58 self update on Windows
- #59 assumption that
Last-Modifiedwill be present in headers - #61 replaced
PathDistribution._pathwith appropriate fallbacks - #62 replaced
assertfor validation with actualraiseon error - #66 needless
passin parsing args - #67 command names in logging
- #70 incorrect shebang in
bundle.py - #71 used context handlers to close
ZipFileobjects - #72 download progress indicator shouldn't divide by zero
- #73 missing newline in
bundle.pyerror message - #75 explicit return of default when we can't get the version from a file
- #77
cosmofy fs catusage string - #79
ZipFile2.nowshould not be at module-level - #92 use public API for
SourceFileLoader
Changed
- #16 update examples, readme, usage (HT @Pugio)
- #28 replaced
--debugwith--quiet+--verbose - #29
DEFAULT_PYTHON_URLis now Cosmopolitan Python - #31 replaced
--cachewith--no-cache+--cache-dir - #33 refactored
bundler.pyinto subcommands - #55 switched to JSON parsing
uv versionoutput - #57 switched to using
os.replacefor atomic file moves - #64 replaced
removeprefixwith better cross-platform approach - #79 moved progress indicator to
stderr - #87 marked
cosmofy updatercommands as experimental
Added
- #18 progress when downloading (HT @Pugio)
- #32
cosmofy bundle --script - #33
cosmofy bundle - #33
cosmofy fs add - #33
cosmofy fs args - #33
cosmofy updater remove - #33 dry run banner
- #35
cosmofy fs ls - #36
cosmofy fs cat - #37
cosmofy fs rm - #38
cosmofy fs add -fto overwrite files that exist - #39
--colorglobal option - #40
cosmofy self update - #40
cosmofy self version - #49
--exacttouv syncfor better exact specs - #60 timeouts to network calls
- #81 note that concurrent removals are not supported
- #83 missing docstrings
- #86 log message that only GitHub URLs are inferred
- #89 warning when adding absolute paths
- #91 note about handling weird file names
Removed
- #15
cosmo.yamlworkflow; addedghcommand - #17 default
.comextension - #24 support for python <= 3.9
- #27
--cloneis no longer supported - #30
--downloadis no longer supported
Security