* fixed a bug where using both `--queue` and `-A` would yield a "removed" list without the queued experiments
* added a test to validate the fix
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* clearer name for test
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* Add keep_selected parameter, and corresponding code to keep only the selected exps (and remove all the other ones)
* test keep_selected_by_name
* test keep_selected_by_rev
* test keep_selected multiple, by name
* test keep all by name
* test keep by rev, with num=2
* added option to cli
* refactoring to meet pr needs
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* fixed test_experiments to add keep_selected=False to remove tests
* rename parameter to match cli option
* follow the normal path, then invert the selection before removing
* fixed tests for list ordering + fixed test with non existent name, it didn't make sense to delete everything if an exp name did not exist
* changed cli option comment
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* fixed typing issue
* updated parameter name
* removed handling queued experiments (since --queue would remove them all)
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* code simplification, added __eq__ and __hash__ to be able to compare ExpRefs, updated and parametrized tests.
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* fixed linting issues
* - --keep and --queue together raise an InvalidArgumentError
- added a test to check if the error is raised
- fixed CLI message
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* re-run gh tests. Some tests which did not involve my changes started failing while they were passing fine before.
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* add auto_push for experiment on run and on save.
add config.exp.auto_push and config.exp.git_remote
* add func tests
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* separate auto_push behaviour out of commit
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Saugat Pachhai (सौगात) <[email protected]>
The code are wrapped due to us using line-length=79 before, but now some
of the code can easily fit in 88 chars.
The formatter did not change this automatically when we changed line-length,
because of magic trailing commas that gets added when they turn into multiple lines.
Black/ruff wrapping them in parens and splitting them into multiple lines
was making it difficult to read.
* exp show: show metrics that include separator
* sort using partition instead of lpartition
* handle ':' in file and metric names
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* fix sorting with leading :
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* use _describe in exp list
* fix pre-commit checks
* simplistic fix
* single _describe, too complex
* slightly simpler
* even simpler
* simple, but with regex
* less substitutions
* describe public
* name handling in UI (tests need updating)
* fixed old tests
* lazy imports
---------
Co-authored-by: Tibor Mach <[email protected]>
* exp: live metrics config token and offline
* refactor live metrics config
* use get_studio_config
* revert to using env vars for studio config
* update dvc-studio-client to support live metrics config changes
* upgrade dvc-studio-client
* don't change environ when posting live metrics events
dvc.run does not expand variables. It is only done when it's actually read from dvc.yaml file.
So during dvc run, the shell will try to expand the variable, which does not exist.
I don't think that the intention was to use shell variables. But I don't think we should ever
use them, as they will fail on some shells (eg: fish) and keep the scripts as simple as possible.
* exp push: improve ui
* fix misc suggestions
- show url even when the refs are up-to-date.
- show url at the end
- add Git remote information in up-to-date UI message.
* fix diverged exps message