Changelog¶
All notable changes to this package are recorded here. The format follows Keep a Changelog, and versions follow Semantic Versioning. Until 1.0, a minor version may change the public API; a patch version never does.
The release workflow writes each version's entry from the conventional commits since the previous one, together with anything written by hand under Unreleased.
Unreleased¶
0.9.0 - 2026-10-12¶
Added¶
- keep model checkpoints on Visin with chunked, resumable upload and download
0.8.0 - 2026-10-04¶
Added¶
- add evaluation leaderboards with unified verification and simplify public config
Fixed¶
- linter and docs format issues
0.7.0 - 2026-10-03¶
Added¶
- publish models and datasets to the Hugging Face Hub
Fixed¶
- add windows compatible paths in training
0.6.0 - 2026-10-02¶
Added¶
- add visin login, run links, in-memory frames and more Api reads
Fixed¶
- the sync lock works on Windows too
0.5.0 - 2026-10-01¶
Added¶
- add unzip and keep archive as download options
0.4.0 - 2026-10-01¶
Added¶
- add dataset download progress bar
Changed¶
- Dataset downloads show a single-line terminal progress bar with percentage, transferred size, speed and estimated time remaining, including the starting offset of resumed downloads.
0.3.0 - 2026-09-30¶
Added¶
- return typed models, separate create from attach, raise on refused startup
0.2.1 - 2026-09-27¶
Fixed¶
- drop legacy project token wording
0.2.0 - 2026-09-26¶
Added¶
visin.Datasetsand thevisin datasets/visin downloadcommands: list the datasets on Visin's dataset service (VISIN_DATASET_URL) and download one. A download resumes where an interrupted one stopped, is checked against the size Visin reports, is unpacked safely intoVISIN_DATA_DIR(default~/.cache/visin/datasets), and is not repeated once complete.- add datasets download to library
0.1.0 - 2026-09-26¶
Added¶
visin.init(), the one call most scripts need: registers a run, or attaches to the oneVISIN_TRAINING_UUIDnames, and reports nothing when no server is configured.Run.log_epoch,log_test_results,log_benchmark,log_config,upload_visualizationandupdate, sent from a background thread in the order they were made.train=andval=onlog_epoch, for the two curves Visin's charts read.- Safe retries: epochs and test results carry their own UUIDs, and a POST without one is repeated only when it provably never reached the server.
- Store and forward: reports wait on disk while Visin is unreachable and are sent when it answers.
VISIN_MODE=offlinekeeps every report on disk for a machine with no route to Visin. visin syncandvisin.sync(), which send kept reports, resume where they stopped, and never send a benchmark or config twice.visin check, which tests the connection and the token, and with--writecreates and deletes a test run.visin runsandvisin.Api, for reading projects, runs, epochs, test results and benchmarks, withApi.epochs_framefor a pandas DataFrame.system_info()for benchmarks andsystem_metrics()for the run's System tab, including GPUs through PyTorch ornvidia-smi.- Keras and PyTorch Lightning callbacks.
- Conversion of NumPy and PyTorch scalars; NaN and infinity are sent as gaps.
- Only rank zero of a distributed job reports.
- A crashed or terminated run still sends its epochs and is marked failed.
Run.attach(..., mark_status=False), for a test or benchmark script that reports into a training's run without changing its status.epoch_uuid=onlog_test_results,log_benchmarkandupload_visualization, to name an epoch directly, such as the one a checkpoint's file name records.Run.resumed, and a resumed run is marked running again while it trains.- A warning when an epoch logged again is kept at its first recorded values.
visin.enable_console_logging().
Fixed¶
- github release flow