fluidattacks_utils_logger 3.0.2__tar.gz → 3.0.4__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.
Files changed (23) hide show
  1. {fluidattacks_utils_logger-3.0.2 → fluidattacks_utils_logger-3.0.4}/PKG-INFO +2 -2
  2. {fluidattacks_utils_logger-3.0.2 → fluidattacks_utils_logger-3.0.4}/build/default.nix +4 -8
  3. {fluidattacks_utils_logger-3.0.2 → fluidattacks_utils_logger-3.0.4}/flake.lock +22 -60
  4. {fluidattacks_utils_logger-3.0.2 → fluidattacks_utils_logger-3.0.4}/flake.nix +3 -4
  5. {fluidattacks_utils_logger-3.0.2 → fluidattacks_utils_logger-3.0.4}/fluidattacks_utils_logger/__init__.py +1 -1
  6. {fluidattacks_utils_logger-3.0.2 → fluidattacks_utils_logger-3.0.4}/fluidattacks_utils_logger/env.py +2 -2
  7. {fluidattacks_utils_logger-3.0.2 → fluidattacks_utils_logger-3.0.4}/fluidattacks_utils_logger/handlers.py +1 -1
  8. {fluidattacks_utils_logger-3.0.2 → fluidattacks_utils_logger-3.0.4}/fluidattacks_utils_logger/logger.py +6 -6
  9. {fluidattacks_utils_logger-3.0.2 → fluidattacks_utils_logger-3.0.4}/pyproject.toml +3 -2
  10. {fluidattacks_utils_logger-3.0.2 → fluidattacks_utils_logger-3.0.4}/tests/arch/test_arch.py +2 -2
  11. {fluidattacks_utils_logger-3.0.2 → fluidattacks_utils_logger-3.0.4}/tests/test_logger.py +7 -3
  12. fluidattacks_utils_logger-3.0.4/uv.lock +681 -0
  13. fluidattacks_utils_logger-3.0.2/uv.lock +0 -656
  14. {fluidattacks_utils_logger-3.0.2 → fluidattacks_utils_logger-3.0.4}/.envrc +0 -0
  15. {fluidattacks_utils_logger-3.0.2 → fluidattacks_utils_logger-3.0.4}/build/filter.nix +0 -0
  16. {fluidattacks_utils_logger-3.0.2 → fluidattacks_utils_logger-3.0.4}/fluidattacks_utils_logger/levels.py +0 -0
  17. {fluidattacks_utils_logger-3.0.2 → fluidattacks_utils_logger-3.0.4}/fluidattacks_utils_logger/py.typed +0 -0
  18. {fluidattacks_utils_logger-3.0.2 → fluidattacks_utils_logger-3.0.4}/mypy.ini +0 -0
  19. {fluidattacks_utils_logger-3.0.2 → fluidattacks_utils_logger-3.0.4}/ruff.toml +0 -0
  20. {fluidattacks_utils_logger-3.0.2 → fluidattacks_utils_logger-3.0.4}/tests/__init__.py +0 -0
  21. {fluidattacks_utils_logger-3.0.2 → fluidattacks_utils_logger-3.0.4}/tests/arch/__init__.py +0 -0
  22. {fluidattacks_utils_logger-3.0.2 → fluidattacks_utils_logger-3.0.4}/tests/arch/arch.py +0 -0
  23. {fluidattacks_utils_logger-3.0.2 → fluidattacks_utils_logger-3.0.4}/tests/py.typed +0 -0
@@ -1,10 +1,10 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fluidattacks_utils_logger
3
- Version: 3.0.2
3
+ Version: 3.0.4
4
4
  Summary: Common logger handlers
5
5
  Author-email: Product Team <development@fluidattacks.com>
6
6
  Requires-Python: >=3.11
7
7
  Classifier: License :: OSI Approved :: MIT License
8
- Requires-Dist: fluidattacks-core >=8.2.0, <9.0.0
8
+ Requires-Dist: fluidattacks-core >=9.0.0, <10.0.0
9
9
  Requires-Dist: fa-purity >=2.5.2, <3.0.0
10
10
  Requires-Dist: python-json-logger >=3.3.0, <5.0.0
@@ -1,13 +1,9 @@
1
- {
2
- nixpkgs,
3
- builders,
4
- scripts,
5
- src,
6
- }:
1
+ { src }:
7
2
  {
8
3
  inherit src;
9
4
  root_path = "observes/common/utils-logger";
10
5
  module_name = "fluidattacks_utils_logger";
11
- pypi_token_var = "UTILS_LOGGER_TOKEN";
12
- override = b: b;
6
+ pypi_token = {
7
+ method = "oidc";
8
+ };
13
9
  }
@@ -98,11 +98,11 @@
98
98
  },
99
99
  "nixpkgs_flake": {
100
100
  "locked": {
101
- "lastModified": 1762812764,
102
- "narHash": "sha256-MNqrovkO8AEQeYQK7e3X2GDx2H8vfDIxV4K/VEaIjjo=",
101
+ "lastModified": 1778253243,
102
+ "narHash": "sha256-KkH2QvU6iRLDTGGEwH5jnMqHWj4zMTuHxi1S1zdr01w=",
103
103
  "owner": "nixos",
104
104
  "repo": "nixpkgs",
105
- "rev": "400156fe527ab6b54cf6f70cca2c8385548a29c4",
105
+ "rev": "4fcda7103530b23c5ca44286344912082aad4220",
106
106
  "type": "github"
107
107
  },
108
108
  "original": {
@@ -111,49 +111,6 @@
111
111
  "type": "github"
112
112
  }
113
113
  },
114
- "nixpkgs_flake_2": {
115
- "locked": {
116
- "lastModified": 1761668286,
117
- "narHash": "sha256-YN/cm/hbm7pi7lMZCsNhu6jlBUi4wUirrIlyOMpbjKU=",
118
- "owner": "nixos",
119
- "repo": "nixpkgs",
120
- "rev": "1fdb9eb10eff581a40ce2e9511c4ed517eac0c3f",
121
- "type": "github"
122
- },
123
- "original": {
124
- "owner": "nixos",
125
- "repo": "nixpkgs",
126
- "type": "github"
127
- }
128
- },
129
- "observes_flake_builder": {
130
- "inputs": {
131
- "nix_filter": "nix_filter",
132
- "nixpkgs_flake": "nixpkgs_flake",
133
- "pyproject-build-systems": "pyproject-build-systems",
134
- "pyproject-nix": "pyproject-nix_2",
135
- "pythonix_flake": "pythonix_flake",
136
- "shell-helpers": "shell-helpers",
137
- "uv2nix": "uv2nix_2"
138
- },
139
- "locked": {
140
- "dir": "observes/common/std_flake_2",
141
- "lastModified": 1770672786,
142
- "narHash": "sha256-W4qMpuS/Zg9P/PooFDsqW7EzjF3A+ITsxKbp1SWdARI=",
143
- "ref": "refs/heads/trunk",
144
- "rev": "ad927cc6545df64a7d622696a43bcee225b9867b",
145
- "shallow": true,
146
- "type": "git",
147
- "url": "ssh://git@gitlab.com/fluidattacks/universe"
148
- },
149
- "original": {
150
- "dir": "observes/common/std_flake_2",
151
- "rev": "ad927cc6545df64a7d622696a43bcee225b9867b",
152
- "shallow": true,
153
- "type": "git",
154
- "url": "ssh://git@gitlab.com/fluidattacks/universe"
155
- }
156
- },
157
114
  "pyproject-build-systems": {
158
115
  "inputs": {
159
116
  "nixpkgs": "nixpkgs",
@@ -177,7 +134,7 @@
177
134
  "pyproject-nix": {
178
135
  "inputs": {
179
136
  "nixpkgs": [
180
- "observes_flake_builder",
137
+ "python_builder",
181
138
  "pyproject-build-systems",
182
139
  "nixpkgs"
183
140
  ]
@@ -217,7 +174,7 @@
217
174
  "pyproject-nix_3": {
218
175
  "inputs": {
219
176
  "nixpkgs": [
220
- "observes_flake_builder",
177
+ "python_builder",
221
178
  "uv2nix",
222
179
  "nixpkgs"
223
180
  ]
@@ -236,23 +193,28 @@
236
193
  "type": "github"
237
194
  }
238
195
  },
239
- "pythonix_flake": {
196
+ "python_builder": {
240
197
  "inputs": {
241
- "nixpkgs_flake": "nixpkgs_flake_2"
198
+ "nix_filter": "nix_filter",
199
+ "nixpkgs_flake": "nixpkgs_flake",
200
+ "pyproject-build-systems": "pyproject-build-systems",
201
+ "pyproject-nix": "pyproject-nix_2",
202
+ "shell-helpers": "shell-helpers",
203
+ "uv2nix": "uv2nix_2"
242
204
  },
243
205
  "locked": {
244
- "dir": "observes/common/pythonix_mirror",
245
- "lastModified": 1767370831,
246
- "narHash": "sha256-VR86TSrJsNHQq31Ksga+1dvsrkv9u1pKa0MKuKYeIAc=",
206
+ "dir": "common/utils/python-builder",
207
+ "lastModified": 1785790367,
208
+ "narHash": "sha256-Br5oTB6LNGANZMUecvZhlXpA0k0wb0EKmOqyQeYCe7A=",
247
209
  "ref": "refs/heads/trunk",
248
- "rev": "0678f8ff3bfe02cfe23bc819bfa739c53bd6e4b6",
210
+ "rev": "f66f38301987775ceb39ee72388ef0885ef30d13",
249
211
  "shallow": true,
250
212
  "type": "git",
251
213
  "url": "ssh://git@gitlab.com/fluidattacks/universe"
252
214
  },
253
215
  "original": {
254
- "dir": "observes/common/pythonix_mirror",
255
- "rev": "0678f8ff3bfe02cfe23bc819bfa739c53bd6e4b6",
216
+ "dir": "common/utils/python-builder",
217
+ "rev": "f66f38301987775ceb39ee72388ef0885ef30d13",
256
218
  "shallow": true,
257
219
  "type": "git",
258
220
  "url": "ssh://git@gitlab.com/fluidattacks/universe"
@@ -260,14 +222,14 @@
260
222
  },
261
223
  "root": {
262
224
  "inputs": {
263
- "observes_flake_builder": "observes_flake_builder"
225
+ "python_builder": "python_builder"
264
226
  }
265
227
  },
266
228
  "shell-helpers": {
267
229
  "inputs": {
268
230
  "flake-parts": "flake-parts",
269
231
  "nixpkgs": [
270
- "observes_flake_builder",
232
+ "python_builder",
271
233
  "nixpkgs_flake"
272
234
  ]
273
235
  },
@@ -292,12 +254,12 @@
292
254
  "uv2nix": {
293
255
  "inputs": {
294
256
  "nixpkgs": [
295
- "observes_flake_builder",
257
+ "python_builder",
296
258
  "pyproject-build-systems",
297
259
  "nixpkgs"
298
260
  ],
299
261
  "pyproject-nix": [
300
- "observes_flake_builder",
262
+ "python_builder",
301
263
  "pyproject-build-systems",
302
264
  "pyproject-nix"
303
265
  ]
@@ -2,8 +2,8 @@
2
2
  description = "Log utils for observes packages";
3
3
 
4
4
  inputs = {
5
- observes_flake_builder = {
6
- url = "git+ssh://git@gitlab.com/fluidattacks/universe?shallow=1&rev=ad927cc6545df64a7d622696a43bcee225b9867b&dir=observes/common/std_flake_2";
5
+ python_builder = {
6
+ url = "git+ssh://git@gitlab.com/fluidattacks/universe?shallow=1&rev=f66f38301987775ceb39ee72388ef0885ef30d13&dir=common/utils/python-builder";
7
7
  };
8
8
  };
9
9
 
@@ -19,11 +19,10 @@
19
19
  scripts,
20
20
  }:
21
21
  import ./build {
22
- inherit nixpkgs builders scripts;
23
22
  src = import ./build/filter.nix nixpkgs.nix-filter self;
24
23
  };
25
24
  in
26
25
  {
27
- packages = inputs.observes_flake_builder.outputs.build build_args;
26
+ packages = inputs.python_builder.outputs.build build_args;
28
27
  };
29
28
  }
@@ -15,7 +15,7 @@ from .levels import (
15
15
  LoggingLvl,
16
16
  )
17
17
 
18
- __version__ = "3.0.2"
18
+ __version__ = "3.0.4"
19
19
 
20
20
 
21
21
  def set_main_log(
@@ -19,7 +19,7 @@ def current_app_env() -> Cmd[Envs]:
19
19
  def _action() -> Envs:
20
20
  return Envs(environ.get("OBSERVES_ENV", "production"))
21
21
 
22
- return Cmd.wrap_impure(_action)
22
+ return Cmd[Envs].wrap_impure(_action)
23
23
 
24
24
 
25
25
  def observes_debug() -> Cmd[bool]:
@@ -27,4 +27,4 @@ def observes_debug() -> Cmd[bool]:
27
27
  _debug = environ.get("OBSERVES_DEBUG", "")
28
28
  return _debug.lower() == "true"
29
29
 
30
- return Cmd.wrap_impure(_action)
30
+ return Cmd[bool].wrap_impure(_action)
@@ -50,7 +50,7 @@ def logger_handler_with_env(
50
50
  handler.setFormatter(formatter)
51
51
  return handler
52
52
 
53
- return Cmd.wrap_impure(_action)
53
+ return Cmd[Handler].wrap_impure(_action)
54
54
 
55
55
 
56
56
  def logger_handler(conf: LoggingConf, target: IO[str]) -> Cmd[Handler]:
@@ -24,16 +24,16 @@ class Logger:
24
24
  _inner: _Logger
25
25
 
26
26
  def critical(self, formatted_msg: str, values: FrozenList[str]) -> Cmd[None]:
27
- return Cmd.wrap_impure(lambda: self._inner.logger.critical(formatted_msg, *values))
27
+ return Cmd[None].wrap_impure(lambda: self._inner.logger.critical(formatted_msg, *values))
28
28
 
29
29
  def debug(self, formatted_msg: str, values: FrozenList[str]) -> Cmd[None]:
30
- return Cmd.wrap_impure(lambda: self._inner.logger.debug(formatted_msg, *values))
30
+ return Cmd[None].wrap_impure(lambda: self._inner.logger.debug(formatted_msg, *values))
31
31
 
32
32
  def info(self, formatted_msg: str, values: FrozenList[str]) -> Cmd[None]:
33
- return Cmd.wrap_impure(lambda: self._inner.logger.info(formatted_msg, *values))
33
+ return Cmd[None].wrap_impure(lambda: self._inner.logger.info(formatted_msg, *values))
34
34
 
35
35
  def warning(self, formatted_msg: str, values: FrozenList[str]) -> Cmd[None]:
36
- return Cmd.wrap_impure(lambda: self._inner.logger.warning(formatted_msg, *values))
36
+ return Cmd[None].wrap_impure(lambda: self._inner.logger.warning(formatted_msg, *values))
37
37
 
38
38
 
39
39
  def get_logger(name: str) -> Cmd[Logger]:
@@ -41,7 +41,7 @@ def get_logger(name: str) -> Cmd[Logger]:
41
41
  log = _Logger(logging.getLogger(name))
42
42
  return Logger(log)
43
43
 
44
- return Cmd.wrap_impure(_action)
44
+ return Cmd[Logger].wrap_impure(_action)
45
45
 
46
46
 
47
47
  def set_logger(name: str, lvl: LoggingLvl, handlers: FrozenList[Cmd[logging.Handler]]) -> Cmd[None]:
@@ -51,4 +51,4 @@ def set_logger(name: str, lvl: LoggingLvl, handlers: FrozenList[Cmd[logging.Hand
51
51
  for item in handlers:
52
52
  log.addHandler(unwrapper.act(item))
53
53
 
54
- return Cmd.new_cmd(_action)
54
+ return Cmd[None].new_cmd(_action)
@@ -4,7 +4,7 @@ authors = [{ name = "Product Team", email = "development@fluidattacks.com" }]
4
4
  classifiers = ["License :: OSI Approved :: MIT License"]
5
5
  requires-python = ">=3.11"
6
6
  dependencies = [
7
- "fluidattacks-core >=8.2.0, <9.0.0",
7
+ "fluidattacks-core >=9.0.0, <10.0.0",
8
8
  "fa-purity >=2.5.2, <3.0.0",
9
9
  "python-json-logger >=3.3.0, <5.0.0",
10
10
  ]
@@ -18,6 +18,7 @@ build-backend = "flit_core.buildapi"
18
18
  [dependency-groups]
19
19
  dev = [
20
20
  "arch-lint >=5.0.0, <6.0.0",
21
+ "basedpyright>=1.39.8",
21
22
  "mypy >=1.18.2, <2.0.0",
22
23
  "pytest >=9.0.3, <10.0.0",
23
24
  "pytest-cov >=7.0.0, <8.0.0",
@@ -26,4 +27,4 @@ dev = [
26
27
 
27
28
  [tool.uv]
28
29
  exclude-newer = "7 days"
29
- exclude-newer-package = { fluidattacks-core = "2099-01-01", fluid-blends = "2099-01-01" }
30
+ exclude-newer-package = { fluidattacks-core = "2099-01-02T00:00:00Z", fluid-blends = "2099-01-02T00:00:00Z" }
@@ -20,7 +20,7 @@ root = "fluidattacks_utils_logger"
20
20
 
21
21
 
22
22
  def test_dag_creation() -> None:
23
- project_dag()
23
+ _ = project_dag()
24
24
 
25
25
 
26
26
  def test_dag_completeness() -> None:
@@ -29,7 +29,7 @@ def test_dag_completeness() -> None:
29
29
 
30
30
 
31
31
  def test_forbidden_creation() -> None:
32
- forbidden_allowlist()
32
+ _ = forbidden_allowlist()
33
33
 
34
34
 
35
35
  def test_forbidden() -> None:
@@ -36,7 +36,11 @@ def test_json_formatter_in_production() -> None:
36
36
 
37
37
  output_content = output_stream.getvalue()
38
38
  try:
39
- formatted_output: dict[str, str] = json.loads(output_content.strip())
39
+ # json.loads returns Any; the shape is asserted below, not
40
+ # statically checkable.
41
+ formatted_output: dict[str, str] = json.loads( # pyright: ignore[reportAny]
42
+ output_content.strip(),
43
+ )
40
44
  assert "ddsource" in formatted_output
41
45
  assert "dd.service" in formatted_output
42
46
  assert "dd.version" in formatted_output
@@ -46,7 +50,7 @@ def test_json_formatter_in_production() -> None:
46
50
  except json.JSONDecodeError as exc:
47
51
  raise RuntimeError from exc
48
52
 
49
- return Cmd.wrap_value(None)
53
+ return Cmd[None].wrap_value(None)
50
54
 
51
55
  test_cmd = set_logger(
52
56
  name=logger_name,
@@ -84,7 +88,7 @@ def test_colorful_formatter_in_development() -> None:
84
88
  assert f"[{logger_name}]" in output_content
85
89
  assert test_message in output_content
86
90
 
87
- return Cmd.wrap_value(None)
91
+ return Cmd[None].wrap_value(None)
88
92
 
89
93
  test_cmd = set_logger(
90
94
  name=logger_name,