Releases: SwanHubX/SwanLab
Releases · SwanHubX/SwanLab
v0.8.3
v0.8.2
What's Changed
- fix: sb3 integration by @Nexisato in #1677
- fix: add error resilience to log internal implementation by @SAKURA-CAT in #1681
- fix: video column type compatible by @Nexisato in #1683
- feat: add last query by @Nexisato in #1682
Full Changelog: v0.8.1...v0.8.2
v0.7.20
v0.8.1
What's Changed
- fix: serialize webhook run dir by @SAKURA-CAT in #1676
- docs: remove disk and network from hardware monitoring table by @SAKURA-CAT in #1673
Full Changelog: v0.8.0...v0.8.1
v0.8.0
What's Changed
🚀 It’s been a while — SwanLab v0.8.0 is here.
- docs(readme): add 2 papers - TrafficBM, Decision-Making by @Zeyi-Lin in #1463
- feat: add delete methods to public API for runs and projects by @Zeyi-Lin in #1464
- refactor: next setup by @SAKURA-CAT in #1467
- docs(readme): tree grpo by @Zeyi-Lin in #1465
- refactor SDK API, add cmd entrypoints and context by @SAKURA-CAT in #1470
- CI: add Python PR workflow and Makefile targets by @SAKURA-CAT in #1471
- feat: add API key helpers, settings, console and tests by @SAKURA-CAT in #1472
- Feat/client by @SAKURA-CAT in #1474
- Feat/login by @SAKURA-CAT in #1477
- feat: add internal diagnostic log & console/file logging by @SAKURA-CAT in #1479
- feat: move sdk.pkg to sdk.utils and add experiment utils by @SAKURA-CAT in #1480
- feat: add vendor lazy-loader, storage settings by @SAKURA-CAT in #1482
- Feat/init by @SAKURA-CAT in #1483
- Feat/callbacker by @SAKURA-CAT in #1484
- Feat/webhook by @SAKURA-CAT in #1485
- Feat/data by @SAKURA-CAT in #1486
- fix: add generated proto pyi stubs and fix imports by @SAKURA-CAT in #1487
- Feat/data context by @SAKURA-CAT in #1488
- feat: move vendor package to swanlab/vendor by @SAKURA-CAT in #1489
- Feat/data by @SAKURA-CAT in #1490
- Feat/log by @SAKURA-CAT in #1492
- Feat/callbacker by @SAKURA-CAT in #1494
- Feat/finish by @SAKURA-CAT in #1495
- Test/unit by @SAKURA-CAT in #1496
- feat: add console.trace and switch session logging by @SAKURA-CAT in #1497
- Feat/config by @SAKURA-CAT in #1498
- Feat/docs by @SAKURA-CAT in #1499
- Refactor/media by @SAKURA-CAT in #1500
- Feat/media by @SAKURA-CAT in #1501
- Feat/media by @SAKURA-CAT in #1502
- fix: add SIGINT signal handler for reliable Ctrl+C experiment abort by @hhe48203-ctrl in #1504
- Fix/finish by @SAKURA-CAT in #1505
- Feat/run by @SAKURA-CAT in #1506
- docs(readme): v0.7.12 by @Zeyi-Lin in #1513
- docs(readme): pin baseline by @Zeyi-Lin in #1519
- chore: rename SwanLabCallback to Callback by @SAKURA-CAT in #1525
- Chore/settings by @SAKURA-CAT in #1526
- feat/uploader thread split by @Nexisato in #1523
- Feat/system by @SAKURA-CAT in #1527
- feat: collect system metadata and requirements on start by @SAKURA-CAT in #1528
- Feat/monitor by @SAKURA-CAT in #1537
- feat: detect and handle forked child processes in Run by @SAKURA-CAT in #1538
- feat: add AsyncTaskManager and async_log type/stub by @SAKURA-CAT in #1539
- Feat/fmt error by @SAKURA-CAT in #1540
- Chore/some misc by @SAKURA-CAT in #1541
- feat: add cli skeleton by @Nexisato in #1530
- fix: relogin judgement by @Nexisato in #1542
- Feat/disabled by @SAKURA-CAT in #1545
- feat: project-level login isolation (--local flag) by @SAKURA-CAT in #1546
- refactor/core by @SAKURA-CAT in #1549
- feat: refactor transporter by @Nexisato in #1548
- refactor: Core 协议重构与 init 流程统一 by @SAKURA-CAT in #1552
- feat: add retry limit for creating unique run dir by @SAKURA-CAT in #1553
- refactor: CoreProtocol mode dispatch and CorePython lifecycle by @SAKURA-CAT in #1555
- chore: console log lifecycle refactor and test improvements by @SAKURA-CAT in #1556
- refactor: add pkg.fork module and refactor fork handling by @SAKURA-CAT in #1557
- Feat/terminal proxy by @SAKURA-CAT in #1560
- feat/core python api by @Nexisato in #1561
- Feat/probe by @SAKURA-CAT in #1563
- fix: remove incorrect Python 3.8 classifier inconsistent with requires-python>=3.9 by @kuishou68 in #1566
- Fix/transport by @SAKURA-CAT in #1567
- Feat/upload by @SAKURA-CAT in #1568
- Feat/upload console by @SAKURA-CAT in #1570
- feat: add SwanLab environment probe and integration by @SAKURA-CAT in #1572
- Refactor/metrics proto by @SAKURA-CAT in #1573
- feat: send stderr console on failed runs; add stream map by @SAKURA-CAT in #1574
- refactor: rename ColumnType FLOAT→SCALAR, add ChartType & upload DTOs by @SAKURA-CAT in #1575
- feat: refactor uploads, add column encoding & retry logging with test mocks by @SAKURA-CAT in #1577
- feat: openapi refactor by @Nexisato in #1562
- feat: add run greeting/farewell, run path & URL by @SAKURA-CAT in #1579
- Rename 'cloud' mode to 'online' across codebase by @SAKURA-CAT in #1580
- feat: return experiment name in StartResponse by @SAKURA-CAT in #1581
- fix: replace ValueError with AuthenticationError in login by @SAKURA-CAT in #1583
- Feat/cli-helper by @neyuki778 in #1578
- feat: enforce media size/length limits in RecordBuilder by @SAKURA-CAT in #1585
- feat: add swanlab skill by @Nexisato in #1584
- feat: add ECharts transform and sklearn ML metric charts by @SAKURA-CAT in #1586
- fix: python -m swanlab CLI entrypoint by @neyuki778 in #1587
- feat: add Object3D and Molecule media transforms by @SAKURA-CAT in #1588
- Add plot transform and deprecated wrappers by @SAKURA-CAT in #1589
- feat: add swanlab.merge_callbacks API and callbacker tests by @SAKURA-CAT in #1591
- Refactor CLI auth: move logic to cmd utils & pkg by @SAKURA-CAT in #1593
- feat: add step deduplication for metrics and rename check_if_logged by @SAKURA-CAT in #1595
- feat/integrations by @Nexisato in #1601
- feat: resume by @SAKURA-CAT in #1597
- feat/plugin by @Nexisato in #1598
- feat: add build_resume_column and use in resume by @SAKURA-CAT in #1602
- Fix/section name by @neyuki778 in #1599
- feat: add Heartbeat support to CorePython by @SAKURA-CAT in #1604
- chore: move record builder into core_python.pkg by @SAKURA-CAT in #1605
- feat: add system monitor builder and init global step by @SAKURA-CAT in #1606
- fix: update fancy-pypi-readme substitutions by @SAKURA-CAT in #1607
- feat/save by @Nexisato in #1590
- feat: update integrations by @Nexisato in #1608
- refactor: consolidate environment and monitor settings into probe by @SAKURA-CAT in #1611
- refactor: rename
logdirtolog_dirwith backward compatibility by @SAKURA-CAT in #1612 - fix: normalize CLI options to use hyphens by @SAKURA-CAT in #1614
- refactor: rename proto packages and terminal/console concepts by @SAKURA-CAT in #1615
- re...
v0.8.0rc4
🎉 SwanLab's refactoring is entering the final stage.
What's Changed
- feat: add parallel execution support with shared run directory naming by @SAKURA-CAT in #1655
Full Changelog: v0.8.0rc3...v0.8.0rc4
v0.8.0rc3
What's Changed
- chore/const by @SAKURA-CAT in #1628
- revert: add --tb-log-dir and deprecate --tb-logdir by @SAKURA-CAT in #1629
- feat/openapi enhancer by @Nexisato in #1627
- feat: support custom and truncated run directory names by @SAKURA-CAT in #1632
- feat: support finish call multiple times by @Nexisato in #1635
- refactor: move online run params into CoreContext and defer Transport sender creation by @SAKURA-CAT in #1637
- docs: readme v2.7.5 by @Zeyi-Lin in #1638
- feat: add sync flow with initial test coverage by @SAKURA-CAT in #1640
- chore: switch from pyright to basedpyright and add type-check CI by @SAKURA-CAT in #1641
- chore: add sync edge case tests and fix column upload overlap by @SAKURA-CAT in #1642
- refactor: bump DataStore header version to 2 and improve sync error message by @SAKURA-CAT in #1644
- fix(utils): ensure generate_id always contains at least one lowercase letter by @milestone-17 in #1633
- feat: add accelerator vendor support and process memory metrics by @SAKURA-CAT in #1645
- Fix/remove deps by @Nexisato in #1646
- feat: enhance probe diagnostics and metadata handling by @SAKURA-CAT in #1647
- fix: refactor NVML import to lazy vendor pattern; cache hwmon paths; clean up by @SAKURA-CAT in #1649
- feat: add multi-vendor accelerator support and hardware diagnostics CLI by @SAKURA-CAT in #1648
- refactor: restructure callbacker protocol and relocate deprecated modules by @SAKURA-CAT in #1650
- chore(ci): add ruff lint check to PR workflow by @SAKURA-CAT in #1651
- feat: progress by @Nexisato in #1639
- fix: initialize _global_step to -1 for correct first step value by @SAKURA-CAT in #1653
- test: add offline mode auto-step starts-from-zero assertion by @SAKURA-CAT in #1654
- Fix/validate run save params by @neyuki778 in #1630
New Contributors
- @milestone-17 made their first contribution in #1633
Full Changelog: v0.8.0rc2...v0.8.0rc3
v0.7.19
v0.8.0rc2
What's Changed
- docs(readme): add 2 papers - TrafficBM, Decision-Making by @Zeyi-Lin in #1463
- feat: add delete methods to public API for runs and projects by @Zeyi-Lin in #1464
- refactor: next setup by @SAKURA-CAT in #1467
- docs(readme): tree grpo by @Zeyi-Lin in #1465
- refactor SDK API, add cmd entrypoints and context by @SAKURA-CAT in #1470
- CI: add Python PR workflow and Makefile targets by @SAKURA-CAT in #1471
- feat: add API key helpers, settings, console and tests by @SAKURA-CAT in #1472
- Feat/client by @SAKURA-CAT in #1474
- Feat/login by @SAKURA-CAT in #1477
- feat: add internal diagnostic log & console/file logging by @SAKURA-CAT in #1479
- feat: move sdk.pkg to sdk.utils and add experiment utils by @SAKURA-CAT in #1480
- feat: add vendor lazy-loader, storage settings by @SAKURA-CAT in #1482
- Feat/init by @SAKURA-CAT in #1483
- Feat/callbacker by @SAKURA-CAT in #1484
- Feat/webhook by @SAKURA-CAT in #1485
- Feat/data by @SAKURA-CAT in #1486
- fix: add generated proto pyi stubs and fix imports by @SAKURA-CAT in #1487
- Feat/data context by @SAKURA-CAT in #1488
- feat: move vendor package to swanlab/vendor by @SAKURA-CAT in #1489
- Feat/data by @SAKURA-CAT in #1490
- Feat/log by @SAKURA-CAT in #1492
- Feat/callbacker by @SAKURA-CAT in #1494
- Feat/finish by @SAKURA-CAT in #1495
- Test/unit by @SAKURA-CAT in #1496
- feat: add console.trace and switch session logging by @SAKURA-CAT in #1497
- Feat/config by @SAKURA-CAT in #1498
- Feat/docs by @SAKURA-CAT in #1499
- Refactor/media by @SAKURA-CAT in #1500
- Feat/media by @SAKURA-CAT in #1501
- Feat/media by @SAKURA-CAT in #1502
- fix: add SIGINT signal handler for reliable Ctrl+C experiment abort by @hhe48203-ctrl in #1504
- Fix/finish by @SAKURA-CAT in #1505
- Feat/run by @SAKURA-CAT in #1506
- docs(readme): v0.7.12 by @Zeyi-Lin in #1513
- docs(readme): pin baseline by @Zeyi-Lin in #1519
- chore: rename SwanLabCallback to Callback by @SAKURA-CAT in #1525
- Chore/settings by @SAKURA-CAT in #1526
- feat/uploader thread split by @Nexisato in #1523
- Feat/system by @SAKURA-CAT in #1527
- feat: collect system metadata and requirements on start by @SAKURA-CAT in #1528
- Feat/monitor by @SAKURA-CAT in #1537
- feat: detect and handle forked child processes in Run by @SAKURA-CAT in #1538
- feat: add AsyncTaskManager and async_log type/stub by @SAKURA-CAT in #1539
- Feat/fmt error by @SAKURA-CAT in #1540
- Chore/some misc by @SAKURA-CAT in #1541
- feat: add cli skeleton by @Nexisato in #1530
- fix: relogin judgement by @Nexisato in #1542
- Feat/disabled by @SAKURA-CAT in #1545
- feat: project-level login isolation (--local flag) by @SAKURA-CAT in #1546
- refactor/core by @SAKURA-CAT in #1549
- feat: refactor transporter by @Nexisato in #1548
- refactor: Core 协议重构与 init 流程统一 by @SAKURA-CAT in #1552
- feat: add retry limit for creating unique run dir by @SAKURA-CAT in #1553
- refactor: CoreProtocol mode dispatch and CorePython lifecycle by @SAKURA-CAT in #1555
- chore: console log lifecycle refactor and test improvements by @SAKURA-CAT in #1556
- refactor: add pkg.fork module and refactor fork handling by @SAKURA-CAT in #1557
- Feat/terminal proxy by @SAKURA-CAT in #1560
- feat/core python api by @Nexisato in #1561
- Feat/probe by @SAKURA-CAT in #1563
- fix: remove incorrect Python 3.8 classifier inconsistent with requires-python>=3.9 by @kuishou68 in #1566
- Fix/transport by @SAKURA-CAT in #1567
- Feat/upload by @SAKURA-CAT in #1568
- Feat/upload console by @SAKURA-CAT in #1570
- feat: add SwanLab environment probe and integration by @SAKURA-CAT in #1572
- Refactor/metrics proto by @SAKURA-CAT in #1573
- feat: send stderr console on failed runs; add stream map by @SAKURA-CAT in #1574
- refactor: rename ColumnType FLOAT→SCALAR, add ChartType & upload DTOs by @SAKURA-CAT in #1575
- feat: refactor uploads, add column encoding & retry logging with test mocks by @SAKURA-CAT in #1577
- feat: openapi refactor by @Nexisato in #1562
- feat: add run greeting/farewell, run path & URL by @SAKURA-CAT in #1579
- Rename 'cloud' mode to 'online' across codebase by @SAKURA-CAT in #1580
- feat: return experiment name in StartResponse by @SAKURA-CAT in #1581
- fix: replace ValueError with AuthenticationError in login by @SAKURA-CAT in #1583
- Feat/cli-helper by @neyuki778 in #1578
- feat: enforce media size/length limits in RecordBuilder by @SAKURA-CAT in #1585
- feat: add swanlab skill by @Nexisato in #1584
- feat: add ECharts transform and sklearn ML metric charts by @SAKURA-CAT in #1586
- fix: python -m swanlab CLI entrypoint by @neyuki778 in #1587
- feat: add Object3D and Molecule media transforms by @SAKURA-CAT in #1588
- Add plot transform and deprecated wrappers by @SAKURA-CAT in #1589
- feat: add swanlab.merge_callbacks API and callbacker tests by @SAKURA-CAT in #1591
- Refactor CLI auth: move logic to cmd utils & pkg by @SAKURA-CAT in #1593
- feat: add step deduplication for metrics and rename check_if_logged by @SAKURA-CAT in #1595
- feat/integrations by @Nexisato in #1601
- feat: resume by @SAKURA-CAT in #1597
- feat/plugin by @Nexisato in #1598
- feat: add build_resume_column and use in resume by @SAKURA-CAT in #1602
- Fix/section name by @neyuki778 in #1599
- feat: add Heartbeat support to CorePython by @SAKURA-CAT in #1604
- chore: move record builder into core_python.pkg by @SAKURA-CAT in #1605
- feat: add system monitor builder and init global step by @SAKURA-CAT in #1606
- fix: update fancy-pypi-readme substitutions by @SAKURA-CAT in #1607
- feat/save by @Nexisato in #1590
- feat: update integrations by @Nexisato in #1608
- refactor: consolidate environment and monitor settings into probe by @SAKURA-CAT in #1611
- refactor: rename
logdirtolog_dirwith backward compatibility by @SAKURA-CAT in #1612 - fix: normalize CLI options to use hyphens by @SAKURA-CAT in #1614
- refactor: rename proto packages and terminal/console concepts by @SAKURA-CAT in #1615
- refactor: define number in core_settings by @Nexisato i...
v0.8.0rc1
What's Changed
- docs(readme): add 2 papers - TrafficBM, Decision-Making by @Zeyi-Lin in #1463
- feat: add delete methods to public API for runs and projects by @Zeyi-Lin in #1464
- refactor: next setup by @SAKURA-CAT in #1467
- docs(readme): tree grpo by @Zeyi-Lin in #1465
- refactor SDK API, add cmd entrypoints and context by @SAKURA-CAT in #1470
- CI: add Python PR workflow and Makefile targets by @SAKURA-CAT in #1471
- feat: add API key helpers, settings, console and tests by @SAKURA-CAT in #1472
- Feat/client by @SAKURA-CAT in #1474
- Feat/login by @SAKURA-CAT in #1477
- feat: add internal diagnostic log & console/file logging by @SAKURA-CAT in #1479
- feat: move sdk.pkg to sdk.utils and add experiment utils by @SAKURA-CAT in #1480
- feat: add vendor lazy-loader, storage settings by @SAKURA-CAT in #1482
- Feat/init by @SAKURA-CAT in #1483
- Feat/callbacker by @SAKURA-CAT in #1484
- Feat/webhook by @SAKURA-CAT in #1485
- Feat/data by @SAKURA-CAT in #1486
- fix: add generated proto pyi stubs and fix imports by @SAKURA-CAT in #1487
- Feat/data context by @SAKURA-CAT in #1488
- feat: move vendor package to swanlab/vendor by @SAKURA-CAT in #1489
- Feat/data by @SAKURA-CAT in #1490
- Feat/log by @SAKURA-CAT in #1492
- Feat/callbacker by @SAKURA-CAT in #1494
- Feat/finish by @SAKURA-CAT in #1495
- Test/unit by @SAKURA-CAT in #1496
- feat: add console.trace and switch session logging by @SAKURA-CAT in #1497
- Feat/config by @SAKURA-CAT in #1498
- Feat/docs by @SAKURA-CAT in #1499
- Refactor/media by @SAKURA-CAT in #1500
- Feat/media by @SAKURA-CAT in #1501
- Feat/media by @SAKURA-CAT in #1502
- fix: add SIGINT signal handler for reliable Ctrl+C experiment abort by @hhe48203-ctrl in #1504
- Fix/finish by @SAKURA-CAT in #1505
- Feat/run by @SAKURA-CAT in #1506
- docs(readme): v0.7.12 by @Zeyi-Lin in #1513
- docs(readme): pin baseline by @Zeyi-Lin in #1519
- chore: rename SwanLabCallback to Callback by @SAKURA-CAT in #1525
- Chore/settings by @SAKURA-CAT in #1526
- feat/uploader thread split by @Nexisato in #1523
- Feat/system by @SAKURA-CAT in #1527
- feat: collect system metadata and requirements on start by @SAKURA-CAT in #1528
- Feat/monitor by @SAKURA-CAT in #1537
- feat: detect and handle forked child processes in Run by @SAKURA-CAT in #1538
- feat: add AsyncTaskManager and async_log type/stub by @SAKURA-CAT in #1539
- Feat/fmt error by @SAKURA-CAT in #1540
- Chore/some misc by @SAKURA-CAT in #1541
- feat: add cli skeleton by @Nexisato in #1530
- fix: relogin judgement by @Nexisato in #1542
- Feat/disabled by @SAKURA-CAT in #1545
- feat: project-level login isolation (--local flag) by @SAKURA-CAT in #1546
- refactor/core by @SAKURA-CAT in #1549
- feat: refactor transporter by @Nexisato in #1548
- refactor: Core 协议重构与 init 流程统一 by @SAKURA-CAT in #1552
- feat: add retry limit for creating unique run dir by @SAKURA-CAT in #1553
- refactor: CoreProtocol mode dispatch and CorePython lifecycle by @SAKURA-CAT in #1555
- chore: console log lifecycle refactor and test improvements by @SAKURA-CAT in #1556
- refactor: add pkg.fork module and refactor fork handling by @SAKURA-CAT in #1557
- Feat/terminal proxy by @SAKURA-CAT in #1560
- feat/core python api by @Nexisato in #1561
- Feat/probe by @SAKURA-CAT in #1563
- fix: remove incorrect Python 3.8 classifier inconsistent with requires-python>=3.9 by @kuishou68 in #1566
- Fix/transport by @SAKURA-CAT in #1567
- Feat/upload by @SAKURA-CAT in #1568
- Feat/upload console by @SAKURA-CAT in #1570
- feat: add SwanLab environment probe and integration by @SAKURA-CAT in #1572
- Refactor/metrics proto by @SAKURA-CAT in #1573
- feat: send stderr console on failed runs; add stream map by @SAKURA-CAT in #1574
- refactor: rename ColumnType FLOAT→SCALAR, add ChartType & upload DTOs by @SAKURA-CAT in #1575
- feat: refactor uploads, add column encoding & retry logging with test mocks by @SAKURA-CAT in #1577
- feat: openapi refactor by @Nexisato in #1562
- feat: add run greeting/farewell, run path & URL by @SAKURA-CAT in #1579
- Rename 'cloud' mode to 'online' across codebase by @SAKURA-CAT in #1580
- feat: return experiment name in StartResponse by @SAKURA-CAT in #1581
- fix: replace ValueError with AuthenticationError in login by @SAKURA-CAT in #1583
- Feat/cli-helper by @neyuki778 in #1578
- feat: enforce media size/length limits in RecordBuilder by @SAKURA-CAT in #1585
- feat: add swanlab skill by @Nexisato in #1584
- feat: add ECharts transform and sklearn ML metric charts by @SAKURA-CAT in #1586
- fix: python -m swanlab CLI entrypoint by @neyuki778 in #1587
- feat: add Object3D and Molecule media transforms by @SAKURA-CAT in #1588
- Add plot transform and deprecated wrappers by @SAKURA-CAT in #1589
- feat: add swanlab.merge_callbacks API and callbacker tests by @SAKURA-CAT in #1591
- Refactor CLI auth: move logic to cmd utils & pkg by @SAKURA-CAT in #1593
- feat: add step deduplication for metrics and rename check_if_logged by @SAKURA-CAT in #1595
- feat/integrations by @Nexisato in #1601
- feat: resume by @SAKURA-CAT in #1597
- feat/plugin by @Nexisato in #1598
- feat: add build_resume_column and use in resume by @SAKURA-CAT in #1602
- Fix/section name by @neyuki778 in #1599
- feat: add Heartbeat support to CorePython by @SAKURA-CAT in #1604
- chore: move record builder into core_python.pkg by @SAKURA-CAT in #1605
- feat: add system monitor builder and init global step by @SAKURA-CAT in #1606
- fix: update fancy-pypi-readme substitutions by @SAKURA-CAT in #1607
- feat/save by @Nexisato in #1590
- feat: update integrations by @Nexisato in #1608
- refactor: consolidate environment and monitor settings into probe by @SAKURA-CAT in #1611
- refactor: rename
logdirtolog_dirwith backward compatibility by @SAKURA-CAT in #1612 - fix: normalize CLI options to use hyphens by @SAKURA-CAT in #1614
- refactor: rename proto packages and terminal/console concepts by @SAKURA-CAT in #1615
- refactor: define number in core_settings by @Nexisato i...