Release notes
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Version v0.1.15 - 2025-08-29
Fixed
- Top-level
.juliabundleignorefiles are now correctly handled when usingJuliaHub.appbundle. (#99, #100) - The
JuliaHub.upload_datasetnow correctly throws aJuliaHubErroron certain backend errors. (#103)
Version v0.1.14 - 2025-06-11
Added
- Support for displaying and submitting batch image options with tags when working with JuliaHub instances v6.10 and above. (#94)
Experimental
- There is now experimental support for registering Julia packages in a JuliaHub package registry. (#96)
Version v0.1.13 - 2025-04-28
Fixed
- Setting
JULIAHUB_PROJECT_UUIDto an empty (or whitespace-only) string is now treated the same as unsetting it. (#92)
Version v0.1.12 - 2025-04-25
Added
With JuliaHub instances v6.9 and above, JuliaHub.jl now supports project-dataset operations. (#15, #82)
This includes the following new features:
- Authentication objects can now be associated with projects. If the
JULIAHUB_PROJECT_UUIDenvironment variable is set, JuliaHub.jl will pick it up automatically.. - The
project_datasetandproject_datasetsfunctions allow for listing datasets attached to a project. upload_project_datasetcan be used to upload a new version of a dataset.
- Authentication objects can now be associated with projects. If the
All the public API names are now correctly marked
publicin Julia 1.11 and above. (#83)
Changed
- The string
reprofDatasetVersion(e.g.dataset.versions) is now valid Julia code. (#84) JuliaHub.authenticatewill now fall back to force-authentication if the token in an existingauth.tomlfile is found to be invalid during authentication. (#86)
Fixed
- The
JuliaHub.update_datasetfunction now correctly accepts thelicense=(:fulltext, ...)argument. (#74)
Version v0.1.11 - 2024-06-27
Added
- The
JuliaHub.authenticatefunction now supports a two-argument form, where you can pass the JuliaHub token in directly, bypassing interactive authentication. (#58) - The
JuliaHub.submit_jobfunction now allows submitting jobs that expose ports (via theexposeargument). Related to that, the newJuliaHub.requestfunction offers a simple interface for constructing authenticated HTTP.jl requests against the job, and the domain name of the job can be accessed via the new.hostnameproperty of theJobobject. (#14, #52)
Version v0.1.10 - 2024-05-31
Changed
- When submitting an appbundle with the two-argument
JuliaHub.appbundle(bundle_directory, codefile)method, JuliaHub.jl now ensures that@__DIR__@__FILE, andinclude()in the user code now work correctly. There is a subtle behavior change due to this, where now the user script must be present within the uploaded appbundle tarball (previously it was possible to use a file that would get filtered out by.juliabundleignore). (#37, [#53])
Version v0.1.9 - 2024-03-13
Fixed
JuliaHub.nodespecnow correctly prioritizes the GPU, CPU, and memory counts, rather than the hourly price, when picking a "smallest node for a given spec". (#49)
Version v0.1.8 - 2024-02-21
Added
- The progress output printing in
JuliaHub.upload_datasetcan now be disabled by settingprogress=false. (#48)
Version v0.1.7 - 2024-01-22
Fixed
JuliaHub.datasetsandJuliaHub.datasetnow handle problematic backend responses more gracefully. (#46)
Version v0.1.6 - 2023-11-27
Fixed
JuliaHub.appbundle, when it has to generate aProject.tomlfile, now correctly includes it in the appbundle tarball. (#44)JuliaHub.appbundlenow works with relative paths such as".". (#44)
Version v0.1.5 - 2023-09-27
Added
- The job submission APIs now support jobs with no time limit, and also can be used to submit jobs that trigger system image builds. (#28)
Fixed
- Fixed the submission of application-type jobs. (#31, #32, #33, #35)
JuliaHub.applications()no longer throws a type error when the user has no registered and user applications. (#33)- Fixed the
show(io, x)methods forComputeConfigandNodeSpec. (#34)
Version v0.1.4 - 2023-08-21
Fixed
upload_datasetanddownload_datasetno longer use the deprecated do-syntax to call therclonebinary. (#18)
Version v0.1.3 - 2023-07-17
Changed
- The
namekeyword argument tosubmit_jobhas been deprecated and replaced withalias. (#13)
Fixed
extend_jobnow correctly handles the200butsuccess: falseresponse. (#13)- An assortment of small bugfixes revealed by JET. (#9) (#12)
Tests
- The test suite now runs successfully when the package is
Pkg.added and the package files have only read-only permissions. (#11)
Version v0.1.2 - 2023-06-26
Fixed
- If TimeZones.jl fails to determine the system's timezone, JuliaHub.jl now gracefully falls back to UTC to represent dates and times. (#7)
Version v0.1.1 - 2023-06-24
Changed
- The
JuliaHub.download_job_filefunction now returns the path of the relevant local file. (#3)
Fixed
- Jobs with files that have missing data are now handled gracefully by defaulting the
.sizeproperty to0and.hashproperty tonothing. (#3) - Information about dataset versions can now be accessed via the the
.versionsproperty of aDatasetobject. (#2) - The automatic backend API version detection is now more reliable in some edge cases. (#1)
Version v0.1.0 - 2023-06-20
Initial package release.