liblaf-cherries 0.0.8__tar.gz → 0.0.9__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/.gitignore +7 -0
- liblaf_cherries-0.0.9/PKG-INFO +44 -0
- liblaf_cherries-0.0.9/docs/README.md +1 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/pyproject.toml +18 -10
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/__init__.pyi +2 -0
- liblaf_cherries-0.0.9/src/liblaf/cherries/_run.py +26 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/_version.py +2 -2
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/plugin/_git.py +1 -1
- liblaf_cherries-0.0.9/src/liblaf/cherries/plugin/_logging.py +39 -0
- liblaf_cherries-0.0.9/src/liblaf/cherries/utils/__init__.pyi +0 -0
- liblaf_cherries-0.0.8/PKG-INFO +0 -153
- liblaf_cherries-0.0.8/docs/README.md +0 -110
- liblaf_cherries-0.0.8/src/liblaf/cherries/plugin/_logging.py +0 -36
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/LICENSE +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/__init__.py +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/_config.py +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/_env.py +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/_experiment.py +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/_main.py +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/_start.py +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/_version.pyi +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/git/__init__.py +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/git/__init__.pyi +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/git/_commit.py +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/git/_entrypoint.py +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/git/_grapes.py +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/git/github/__init__.py +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/git/github/__init__.pyi +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/git/github/_link.py +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/git/github/_repo.py +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/integration/__init__.py +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/integration/__init__.pyi +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/integration/_backend.py +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/integration/_factory.py +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/integration/_neptune.py +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/plugin/__init__.py +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/plugin/__init__.pyi +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/plugin/_abc.py +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/plugin/_default.py +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/plugin/_restic.py +0 -0
- /liblaf_cherries-0.0.8/src/liblaf/cherries/utils/__init__.pyi → /liblaf_cherries-0.0.9/src/liblaf/cherries/py.typed +0 -0
- {liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/utils/__init__.py +0 -0
@@ -0,0 +1,44 @@
|
|
1
|
+
Metadata-Version: 2.4
|
2
|
+
Name: liblaf-cherries
|
3
|
+
Version: 0.0.9
|
4
|
+
Summary: Add your description here
|
5
|
+
Project-URL: Changelog, https://github.com/liblaf/cherries/blob/main/CHANGELOG.md
|
6
|
+
Project-URL: Documentation, https://liblaf.github.io/cherries/
|
7
|
+
Project-URL: Homepage, https://github.com/liblaf/cherries
|
8
|
+
Project-URL: Issue Tracker, https://github.com/liblaf/cherries/issues
|
9
|
+
Project-URL: Release Notes, https://github.com/liblaf/cherries/releases
|
10
|
+
Project-URL: Source Code, https://github.com/liblaf/cherries
|
11
|
+
Author-email: liblaf <30631553+liblaf@users.noreply.github.com>
|
12
|
+
License-Expression: MIT
|
13
|
+
License-File: LICENSE
|
14
|
+
Classifier: Development Status :: 4 - Beta
|
15
|
+
Classifier: Intended Audience :: Developers
|
16
|
+
Classifier: Intended Audience :: Science/Research
|
17
|
+
Classifier: License :: OSI Approved
|
18
|
+
Classifier: License :: OSI Approved :: MIT License
|
19
|
+
Classifier: Operating System :: OS Independent
|
20
|
+
Classifier: Programming Language :: Python
|
21
|
+
Classifier: Programming Language :: Python :: 3
|
22
|
+
Classifier: Programming Language :: Python :: 3.12
|
23
|
+
Classifier: Programming Language :: Python :: 3.13
|
24
|
+
Classifier: Topic :: Software Development
|
25
|
+
Classifier: Topic :: Software Development :: Bug Tracking
|
26
|
+
Classifier: Topic :: Software Development :: Debuggers
|
27
|
+
Classifier: Topic :: Software Development :: Libraries
|
28
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
29
|
+
Classifier: Topic :: System
|
30
|
+
Classifier: Topic :: System :: Logging
|
31
|
+
Classifier: Topic :: Utilities
|
32
|
+
Classifier: Typing :: Typed
|
33
|
+
Requires-Python: >=3.12
|
34
|
+
Requires-Dist: environs<15,>=14.1.1
|
35
|
+
Requires-Dist: lazy-loader<0.5,>=0.4
|
36
|
+
Requires-Dist: liblaf-grapes<0.2,>=0.1.14
|
37
|
+
Requires-Dist: loguru<0.8,>=0.7.3
|
38
|
+
Requires-Dist: neptune<2,>=1.13.0
|
39
|
+
Requires-Dist: pydantic-settings<3,>=2.8.1
|
40
|
+
Requires-Dist: pydantic<3,>=2.11.1
|
41
|
+
Requires-Dist: rich<15,>=14.0.0
|
42
|
+
Description-Content-Type: text/markdown
|
43
|
+
|
44
|
+
{% include "../README.md" %}
|
@@ -0,0 +1 @@
|
|
1
|
+
{% include "../README.md" %}
|
@@ -1,5 +1,5 @@
|
|
1
1
|
#:schema https://json.schemastore.org/pyproject.json
|
2
|
-
# https://packaging.python.org/en/latest/specifications/pyproject-toml
|
2
|
+
# ref: <https://packaging.python.org/en/latest/specifications/pyproject-toml/>
|
3
3
|
|
4
4
|
[build-system]
|
5
5
|
build-backend = "hatchling.build"
|
@@ -11,11 +11,13 @@ dev = ["icecream"]
|
|
11
11
|
docs = [
|
12
12
|
"gitpython",
|
13
13
|
"mdx-truly-sane-lists",
|
14
|
+
"mike",
|
14
15
|
"mkdocs",
|
15
16
|
"mkdocs-autorefs",
|
16
17
|
"mkdocs-gen-files",
|
17
18
|
"mkdocs-git-committers-plugin-2",
|
18
19
|
"mkdocs-git-revision-date-localized-plugin",
|
20
|
+
"mkdocs-include-markdown-plugin",
|
19
21
|
"mkdocs-literate-nav",
|
20
22
|
"mkdocs-material[imaging]",
|
21
23
|
"mkdocs-section-index",
|
@@ -24,7 +26,13 @@ docs = [
|
|
24
26
|
"pymdown-extensions",
|
25
27
|
"ruff",
|
26
28
|
]
|
27
|
-
test = [
|
29
|
+
test = [
|
30
|
+
"pytest",
|
31
|
+
"pytest-benchmark",
|
32
|
+
"pytest-codspeed",
|
33
|
+
"pytest-cov",
|
34
|
+
"pytest-xdist",
|
35
|
+
]
|
28
36
|
|
29
37
|
[project]
|
30
38
|
authors = [
|
@@ -52,15 +60,14 @@ classifiers = [
|
|
52
60
|
"Typing :: Typed",
|
53
61
|
]
|
54
62
|
dependencies = [
|
55
|
-
"
|
56
|
-
"gitpython>=3.1.44,<4",
|
57
|
-
"giturlparse>=0.12.0,<0.13",
|
63
|
+
"environs>=14.1.1,<15",
|
58
64
|
"lazy-loader>=0.4,<0.5",
|
59
|
-
"liblaf-grapes>=0.1.
|
65
|
+
"liblaf-grapes>=0.1.14,<0.2",
|
60
66
|
"loguru>=0.7.3,<0.8",
|
61
67
|
"neptune>=1.13.0,<2",
|
62
68
|
"pydantic-settings>=2.8.1,<3",
|
63
|
-
"pydantic>=2.
|
69
|
+
"pydantic>=2.11.1,<3",
|
70
|
+
"rich>=14.0.0,<15",
|
64
71
|
]
|
65
72
|
description = "Add your description here"
|
66
73
|
dynamic = ["version"]
|
@@ -72,6 +79,7 @@ requires-python = ">=3.12"
|
|
72
79
|
|
73
80
|
[project.urls]
|
74
81
|
"Changelog" = "https://github.com/liblaf/cherries/blob/main/CHANGELOG.md"
|
82
|
+
"Documentation" = "https://liblaf.github.io/cherries/"
|
75
83
|
"Homepage" = "https://github.com/liblaf/cherries"
|
76
84
|
"Issue Tracker" = "https://github.com/liblaf/cherries/issues"
|
77
85
|
"Release Notes" = "https://github.com/liblaf/cherries/releases"
|
@@ -105,7 +113,7 @@ channels = ["conda-forge"]
|
|
105
113
|
platforms = ["linux-64"]
|
106
114
|
|
107
115
|
[tool.pixi.pypi-dependencies]
|
108
|
-
liblaf-cherries = { editable = true, path = "." }
|
116
|
+
"liblaf-cherries" = { editable = true, path = "." }
|
109
117
|
|
110
118
|
[tool.pixi.system-requirements]
|
111
119
|
cuda = "12"
|
@@ -113,6 +121,6 @@ libc = { family = "glibc", version = "2.41" }
|
|
113
121
|
linux = "6.13"
|
114
122
|
|
115
123
|
[tool.pytest.ini_options]
|
116
|
-
addopts = ["--
|
124
|
+
addopts = ["--showlocals", "--strict-config", "--strict-markers"]
|
117
125
|
junit_family = "legacy"
|
118
|
-
testpaths = ["tests/"]
|
126
|
+
testpaths = ["benches/", "tests/"]
|
@@ -3,6 +3,7 @@ from ._config import BaseConfig
|
|
3
3
|
from ._env import ENV_PREFIX, env
|
4
4
|
from ._experiment import Experiment, current_experiment, set_current_experiment
|
5
5
|
from ._main import main
|
6
|
+
from ._run import run
|
6
7
|
from ._start import end, start
|
7
8
|
from .git import entrypoint
|
8
9
|
from .integration import Backend, BackendNeptune, backend_factory
|
@@ -28,6 +29,7 @@ __all__ = [
|
|
28
29
|
"integration",
|
29
30
|
"main",
|
30
31
|
"plugin",
|
32
|
+
"run",
|
31
33
|
"set_current_experiment",
|
32
34
|
"start",
|
33
35
|
"utils",
|
@@ -0,0 +1,26 @@
|
|
1
|
+
from collections.abc import Sequence
|
2
|
+
from typing import Protocol, get_type_hints
|
3
|
+
|
4
|
+
from liblaf import cherries
|
5
|
+
|
6
|
+
|
7
|
+
class MainFunction[T: cherries.BaseConfig](Protocol):
|
8
|
+
def __call__(self, cfg: T) -> None: ...
|
9
|
+
|
10
|
+
|
11
|
+
def run[T: cherries.BaseConfig](
|
12
|
+
main: MainFunction[T],
|
13
|
+
*,
|
14
|
+
backend: cherries.Backend | None = None,
|
15
|
+
enabled: bool | None = None,
|
16
|
+
plugins: Sequence[cherries.Plugin] | None = None,
|
17
|
+
) -> None:
|
18
|
+
exp: cherries.Experiment = cherries.start(
|
19
|
+
backend=backend, enabled=enabled, plugins=plugins
|
20
|
+
)
|
21
|
+
type_hints: dict[str, type[T]] = get_type_hints(main)
|
22
|
+
cls: type[T] = next(iter(type_hints.values()))
|
23
|
+
cfg: T = cls()
|
24
|
+
exp.log_other("cherries/config", cfg)
|
25
|
+
main(cfg)
|
26
|
+
exp.end()
|
@@ -6,7 +6,7 @@ from liblaf import cherries
|
|
6
6
|
|
7
7
|
class PluginGit(cherries.Plugin):
|
8
8
|
model_config = ps.SettingsConfigDict(env_prefix=cherries.ENV_PREFIX + "GIT_")
|
9
|
-
auto_commit: bool =
|
9
|
+
auto_commit: bool = False
|
10
10
|
auto_commit_message: str = cherries.git.DEFAULT_COMMIT_MESSAGE
|
11
11
|
|
12
12
|
def _pre_start(self) -> None:
|
@@ -0,0 +1,39 @@
|
|
1
|
+
from pathlib import Path
|
2
|
+
|
3
|
+
import loguru
|
4
|
+
import pydantic_settings as ps
|
5
|
+
from loguru import logger
|
6
|
+
|
7
|
+
import liblaf.cherries as cherries # noqa: PLR0402
|
8
|
+
from liblaf import grapes
|
9
|
+
|
10
|
+
DEFAULT_FILTER: "loguru.FilterDict" = {
|
11
|
+
"": "INFO",
|
12
|
+
"__main__": "TRACE",
|
13
|
+
"liblaf": "DEBUG",
|
14
|
+
}
|
15
|
+
DEFAULT_FILE_FILTER: "loguru.FilterDict" = {
|
16
|
+
**DEFAULT_FILTER,
|
17
|
+
"liblaf.cherries": "SUCCESS",
|
18
|
+
}
|
19
|
+
|
20
|
+
|
21
|
+
class PluginLogging(cherries.Plugin):
|
22
|
+
model_config = ps.SettingsConfigDict(env_prefix=cherries.ENV_PREFIX + "LOGGING_")
|
23
|
+
file: Path | None = Path("run.log")
|
24
|
+
jsonl: Path | None = Path("run.log.jsonl")
|
25
|
+
|
26
|
+
def _pre_start(self) -> None:
|
27
|
+
handlers: list[loguru.HandlerConfig] = [grapes.logging.rich_handler()]
|
28
|
+
if self.file is not None:
|
29
|
+
handlers.append(grapes.logging.file_handler(self.file))
|
30
|
+
if self.jsonl is not None:
|
31
|
+
handlers.append(grapes.logging.jsonl_handler(self.jsonl))
|
32
|
+
grapes.init_logging(handlers=handlers)
|
33
|
+
|
34
|
+
def _pre_end(self, run: cherries.Experiment) -> None:
|
35
|
+
logger.complete()
|
36
|
+
if self.file is not None:
|
37
|
+
run.upload_file("cherries/logging/run.log", self.file)
|
38
|
+
if self.jsonl is not None:
|
39
|
+
run.upload_file("cherries/logging/run.log.jsonl", self.jsonl)
|
File without changes
|
liblaf_cherries-0.0.8/PKG-INFO
DELETED
@@ -1,153 +0,0 @@
|
|
1
|
-
Metadata-Version: 2.4
|
2
|
-
Name: liblaf-cherries
|
3
|
-
Version: 0.0.8
|
4
|
-
Summary: Add your description here
|
5
|
-
Project-URL: Changelog, https://github.com/liblaf/cherries/blob/main/CHANGELOG.md
|
6
|
-
Project-URL: Homepage, https://github.com/liblaf/cherries
|
7
|
-
Project-URL: Issue Tracker, https://github.com/liblaf/cherries/issues
|
8
|
-
Project-URL: Release Notes, https://github.com/liblaf/cherries/releases
|
9
|
-
Project-URL: Source Code, https://github.com/liblaf/cherries
|
10
|
-
Author-email: liblaf <30631553+liblaf@users.noreply.github.com>
|
11
|
-
License-Expression: MIT
|
12
|
-
License-File: LICENSE
|
13
|
-
Classifier: Development Status :: 4 - Beta
|
14
|
-
Classifier: Intended Audience :: Developers
|
15
|
-
Classifier: Intended Audience :: Science/Research
|
16
|
-
Classifier: License :: OSI Approved
|
17
|
-
Classifier: License :: OSI Approved :: MIT License
|
18
|
-
Classifier: Operating System :: OS Independent
|
19
|
-
Classifier: Programming Language :: Python
|
20
|
-
Classifier: Programming Language :: Python :: 3
|
21
|
-
Classifier: Programming Language :: Python :: 3.12
|
22
|
-
Classifier: Programming Language :: Python :: 3.13
|
23
|
-
Classifier: Topic :: Software Development
|
24
|
-
Classifier: Topic :: Software Development :: Bug Tracking
|
25
|
-
Classifier: Topic :: Software Development :: Debuggers
|
26
|
-
Classifier: Topic :: Software Development :: Libraries
|
27
|
-
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
28
|
-
Classifier: Topic :: System
|
29
|
-
Classifier: Topic :: System :: Logging
|
30
|
-
Classifier: Topic :: Utilities
|
31
|
-
Classifier: Typing :: Typed
|
32
|
-
Requires-Python: >=3.12
|
33
|
-
Requires-Dist: comet-ml<4,>=3.49.5
|
34
|
-
Requires-Dist: gitpython<4,>=3.1.44
|
35
|
-
Requires-Dist: giturlparse<0.13,>=0.12.0
|
36
|
-
Requires-Dist: lazy-loader<0.5,>=0.4
|
37
|
-
Requires-Dist: liblaf-grapes<0.2,>=0.1.10
|
38
|
-
Requires-Dist: loguru<0.8,>=0.7.3
|
39
|
-
Requires-Dist: neptune<2,>=1.13.0
|
40
|
-
Requires-Dist: pydantic-settings<3,>=2.8.1
|
41
|
-
Requires-Dist: pydantic<3,>=2.10.6
|
42
|
-
Description-Content-Type: text/markdown
|
43
|
-
|
44
|
-
<!-- -*- mode: markdown -*- -->
|
45
|
-
|
46
|
-
<div align="center"><a name="readme-top"></a>
|
47
|
-
|
48
|
-
<img height="160" src="https://api.iconify.design/logos/python.svg" />
|
49
|
-
|
50
|
-
# Cherries
|
51
|
-
|
52
|
-
TODO: DESCRIPTION
|
53
|
-
|
54
|
-
[**Explore the docs »**](https://liblaf.github.io/cherries/)
|
55
|
-
|
56
|
-
[](https://pypi.org/project/liblaf-cherries)
|
57
|
-
[](https://pypi.org/project/liblaf-cherries)
|
58
|
-
[](https://pypi.org/project/liblaf-cherries)
|
59
|
-
[](https://codecov.io/gh/liblaf/cherries)
|
60
|
-
[](https://github.com/liblaf/cherries/actions/workflows/test.yaml)
|
61
|
-
<br />
|
62
|
-
[](https://github.com/liblaf/cherries/graphs/contributors)
|
63
|
-
[](https://github.com/liblaf/cherries/forks)
|
64
|
-
[](https://github.com/liblaf/cherries/stargazers)
|
65
|
-
[](https://github.com/liblaf/cherries/issues)
|
66
|
-
[](https://github.com/liblaf/cherries/blob/main/LICENSE)
|
67
|
-
|
68
|
-
[Changelog](https://github.com/liblaf/cherries/blob/main/CHANGELOG.md) · [Report Bug](https://github.com/liblaf/cherries/issues) · [Request Feature](https://github.com/liblaf/cherries/issues)
|
69
|
-
|
70
|
-

|
71
|
-
|
72
|
-
</div>
|
73
|
-
|
74
|
-
## ✨ Features
|
75
|
-
|
76
|
-
- [x] ✨ **TODO:** FEATURES;
|
77
|
-
|
78
|
-
<div align="right">
|
79
|
-
|
80
|
-
[](#readme-top)
|
81
|
-
|
82
|
-
</div>
|
83
|
-
|
84
|
-
## 📦 Installation
|
85
|
-
|
86
|
-
To install `liblaf-cherries`, run the following command:
|
87
|
-
|
88
|
-
```bash
|
89
|
-
$ uv add liblaf-cherries
|
90
|
-
```
|
91
|
-
|
92
|
-
<div align="right">
|
93
|
-
|
94
|
-
[](#readme-top)
|
95
|
-
|
96
|
-
</div>
|
97
|
-
|
98
|
-
## ⌨️ Local Development
|
99
|
-
|
100
|
-
You can use Github Codespaces for online development:
|
101
|
-
|
102
|
-
[](https://codespaces.new/liblaf/cherries)
|
103
|
-
|
104
|
-
Or clone it for local development:
|
105
|
-
|
106
|
-
```bash
|
107
|
-
$ gh repo clone liblaf/cherries
|
108
|
-
$ cd cherries
|
109
|
-
$ just test
|
110
|
-
```
|
111
|
-
|
112
|
-
<div align="right">
|
113
|
-
|
114
|
-
[](#readme-top)
|
115
|
-
|
116
|
-
</div>
|
117
|
-
|
118
|
-
## 🤝 Contributing
|
119
|
-
|
120
|
-
Contributions of all types are more than welcome, if you are interested in contributing code, feel free to check out our GitHub [Issues](https://github.com/liblaf/cherries/issues) to get stuck in to show us what you're made of.
|
121
|
-
|
122
|
-
[](https://github.com/liblaf/cherries/pulls)
|
123
|
-
|
124
|
-
[](https://github.com/liblaf/cherries/graphs/contributors)
|
125
|
-
|
126
|
-
<div align="right">
|
127
|
-
|
128
|
-
[](#readme-top)
|
129
|
-
|
130
|
-
</div>
|
131
|
-
|
132
|
-
## 🔗 Links
|
133
|
-
|
134
|
-
### More Projects
|
135
|
-
|
136
|
-
- **[🍇 cherries](https://github.com/liblaf/cherries)** - Powerful Python utilities for logging, timing, and more, making development smoother!
|
137
|
-
|
138
|
-
### Credits
|
139
|
-
|
140
|
-
- **Python** - <https://www.python.org/>
|
141
|
-
|
142
|
-
<div align="right">
|
143
|
-
|
144
|
-
[](#readme-top)
|
145
|
-
|
146
|
-
</div>
|
147
|
-
|
148
|
-
---
|
149
|
-
|
150
|
-
#### 📝 License
|
151
|
-
|
152
|
-
Copyright © 2025 [liblaf](https://github.com/liblaf). <br />
|
153
|
-
This project is [MIT](https://github.com/liblaf/cherries/blob/main/LICENSE) licensed.
|
@@ -1,110 +0,0 @@
|
|
1
|
-
<!-- -*- mode: markdown -*- -->
|
2
|
-
|
3
|
-
<div align="center"><a name="readme-top"></a>
|
4
|
-
|
5
|
-
<img height="160" src="https://api.iconify.design/logos/python.svg" />
|
6
|
-
|
7
|
-
# Cherries
|
8
|
-
|
9
|
-
TODO: DESCRIPTION
|
10
|
-
|
11
|
-
[**Explore the docs »**](https://liblaf.github.io/cherries/)
|
12
|
-
|
13
|
-
[](https://pypi.org/project/liblaf-cherries)
|
14
|
-
[](https://pypi.org/project/liblaf-cherries)
|
15
|
-
[](https://pypi.org/project/liblaf-cherries)
|
16
|
-
[](https://codecov.io/gh/liblaf/cherries)
|
17
|
-
[](https://github.com/liblaf/cherries/actions/workflows/test.yaml)
|
18
|
-
<br />
|
19
|
-
[](https://github.com/liblaf/cherries/graphs/contributors)
|
20
|
-
[](https://github.com/liblaf/cherries/forks)
|
21
|
-
[](https://github.com/liblaf/cherries/stargazers)
|
22
|
-
[](https://github.com/liblaf/cherries/issues)
|
23
|
-
[](https://github.com/liblaf/cherries/blob/main/LICENSE)
|
24
|
-
|
25
|
-
[Changelog](https://github.com/liblaf/cherries/blob/main/CHANGELOG.md) · [Report Bug](https://github.com/liblaf/cherries/issues) · [Request Feature](https://github.com/liblaf/cherries/issues)
|
26
|
-
|
27
|
-

|
28
|
-
|
29
|
-
</div>
|
30
|
-
|
31
|
-
## ✨ Features
|
32
|
-
|
33
|
-
- [x] ✨ **TODO:** FEATURES;
|
34
|
-
|
35
|
-
<div align="right">
|
36
|
-
|
37
|
-
[](#readme-top)
|
38
|
-
|
39
|
-
</div>
|
40
|
-
|
41
|
-
## 📦 Installation
|
42
|
-
|
43
|
-
To install `liblaf-cherries`, run the following command:
|
44
|
-
|
45
|
-
```bash
|
46
|
-
$ uv add liblaf-cherries
|
47
|
-
```
|
48
|
-
|
49
|
-
<div align="right">
|
50
|
-
|
51
|
-
[](#readme-top)
|
52
|
-
|
53
|
-
</div>
|
54
|
-
|
55
|
-
## ⌨️ Local Development
|
56
|
-
|
57
|
-
You can use Github Codespaces for online development:
|
58
|
-
|
59
|
-
[](https://codespaces.new/liblaf/cherries)
|
60
|
-
|
61
|
-
Or clone it for local development:
|
62
|
-
|
63
|
-
```bash
|
64
|
-
$ gh repo clone liblaf/cherries
|
65
|
-
$ cd cherries
|
66
|
-
$ just test
|
67
|
-
```
|
68
|
-
|
69
|
-
<div align="right">
|
70
|
-
|
71
|
-
[](#readme-top)
|
72
|
-
|
73
|
-
</div>
|
74
|
-
|
75
|
-
## 🤝 Contributing
|
76
|
-
|
77
|
-
Contributions of all types are more than welcome, if you are interested in contributing code, feel free to check out our GitHub [Issues](https://github.com/liblaf/cherries/issues) to get stuck in to show us what you're made of.
|
78
|
-
|
79
|
-
[](https://github.com/liblaf/cherries/pulls)
|
80
|
-
|
81
|
-
[](https://github.com/liblaf/cherries/graphs/contributors)
|
82
|
-
|
83
|
-
<div align="right">
|
84
|
-
|
85
|
-
[](#readme-top)
|
86
|
-
|
87
|
-
</div>
|
88
|
-
|
89
|
-
## 🔗 Links
|
90
|
-
|
91
|
-
### More Projects
|
92
|
-
|
93
|
-
- **[🍇 cherries](https://github.com/liblaf/cherries)** - Powerful Python utilities for logging, timing, and more, making development smoother!
|
94
|
-
|
95
|
-
### Credits
|
96
|
-
|
97
|
-
- **Python** - <https://www.python.org/>
|
98
|
-
|
99
|
-
<div align="right">
|
100
|
-
|
101
|
-
[](#readme-top)
|
102
|
-
|
103
|
-
</div>
|
104
|
-
|
105
|
-
---
|
106
|
-
|
107
|
-
#### 📝 License
|
108
|
-
|
109
|
-
Copyright © 2025 [liblaf](https://github.com/liblaf). <br />
|
110
|
-
This project is [MIT](https://github.com/liblaf/cherries/blob/main/LICENSE) licensed.
|
@@ -1,36 +0,0 @@
|
|
1
|
-
import loguru
|
2
|
-
import pydantic_settings as ps
|
3
|
-
from loguru import logger
|
4
|
-
|
5
|
-
# TODO: fix PLR0402
|
6
|
-
# make pyright happy
|
7
|
-
import liblaf.grapes as grapes # noqa: PLR0402
|
8
|
-
from liblaf import cherries
|
9
|
-
|
10
|
-
DEFAULT_FILTER: "loguru.FilterDict" = {
|
11
|
-
"": "INFO",
|
12
|
-
"__main__": "TRACE",
|
13
|
-
"liblaf": "DEBUG",
|
14
|
-
}
|
15
|
-
DEFAULT_FILE_FILTER: "loguru.FilterDict" = {
|
16
|
-
**DEFAULT_FILTER,
|
17
|
-
"liblaf.cherries": "SUCCESS",
|
18
|
-
}
|
19
|
-
|
20
|
-
|
21
|
-
class PluginLogging(cherries.Plugin):
|
22
|
-
model_config = ps.SettingsConfigDict(env_prefix=cherries.ENV_PREFIX + "LOGGING_")
|
23
|
-
|
24
|
-
def _pre_start(self) -> None:
|
25
|
-
grapes.init_logging(
|
26
|
-
handlers=[
|
27
|
-
grapes.logging.console_handler(),
|
28
|
-
grapes.logging.file_handler(),
|
29
|
-
grapes.logging.jsonl_handler(),
|
30
|
-
]
|
31
|
-
)
|
32
|
-
|
33
|
-
def _pre_end(self, run: cherries.Experiment) -> None:
|
34
|
-
logger.complete()
|
35
|
-
run.upload_file("cherries/logging/run.log", "run.log")
|
36
|
-
run.upload_file("cherries/logging/run.log.jsonl", "run.log.jsonl")
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{liblaf_cherries-0.0.8 → liblaf_cherries-0.0.9}/src/liblaf/cherries/integration/__init__.pyi
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|