log-foundry 0.9.1.dev2__tar.gz → 0.9.1.dev4__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 (53) hide show
  1. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/PKG-INFO +1 -1
  2. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/pyproject.toml +25 -1
  3. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/LICENSE +0 -0
  4. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/README.md +0 -0
  5. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/__init__.py +0 -0
  6. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/api.py +0 -0
  7. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/config.py +0 -0
  8. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/console.py +0 -0
  9. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/context.py +0 -0
  10. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/decorator.py +0 -0
  11. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/ids.py +0 -0
  12. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/model.py +0 -0
  13. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/py.typed +0 -0
  14. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sanitize.py +0 -0
  15. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/__init__.py +0 -0
  16. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/_batch.py +0 -0
  17. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/_chunk.py +0 -0
  18. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/_socket.py +0 -0
  19. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/_time.py +0 -0
  20. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/base.py +0 -0
  21. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/callback.py +0 -0
  22. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/clickhouse.py +0 -0
  23. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/datadog.py +0 -0
  24. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/elasticsearch.py +0 -0
  25. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/eventhubs.py +0 -0
  26. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/file.py +0 -0
  27. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/filtering.py +0 -0
  28. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/firehose.py +0 -0
  29. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/honeycomb.py +0 -0
  30. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/http.py +0 -0
  31. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/kafka.py +0 -0
  32. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/kinesis.py +0 -0
  33. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/logging_sink.py +0 -0
  34. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/logstash.py +0 -0
  35. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/loki.py +0 -0
  36. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/mongodb.py +0 -0
  37. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/multi.py +0 -0
  38. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/nats.py +0 -0
  39. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/newrelic.py +0 -0
  40. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/postgres.py +0 -0
  41. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/pubsub.py +0 -0
  42. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/rabbitmq.py +0 -0
  43. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/redis.py +0 -0
  44. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/sentry.py +0 -0
  45. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/sns.py +0 -0
  46. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/splunk.py +0 -0
  47. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/sqlite.py +0 -0
  48. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/sqs.py +0 -0
  49. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/stdout.py +0 -0
  50. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/syslog.py +0 -0
  51. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/transform.py +0 -0
  52. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/sinks/util.py +0 -0
  53. {log_foundry-0.9.1.dev2 → log_foundry-0.9.1.dev4}/src/log_foundry/worker.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: log-foundry
3
- Version: 0.9.1.dev2
3
+ Version: 0.9.1.dev4
4
4
  Summary: Generate logs for your console and JSON events for downstream consumption.
5
5
  License-Expression: MIT
6
6
  License-File: LICENSE
@@ -20,7 +20,7 @@ dependencies = [
20
20
  ]
21
21
 
22
22
  # Optional features. Install with: pip install log-foundry[aws]
23
- version = "0.9.1.dev2"
23
+ version = "0.9.1.dev4"
24
24
 
25
25
  [project.optional-dependencies]
26
26
  aws = ["boto3>=1.43.61"] # SQSSink, SNSSink, KinesisSink, FirehoseSink
@@ -70,6 +70,25 @@ pytest-cov = "^7.1.0"
70
70
  ruff = ">=0.16,<0.17"
71
71
  mypy = "^2.3"
72
72
 
73
+ # Supply-chain tooling (SPEC-023 FR-007). `optional = true` keeps it OUT of the
74
+ # `poetry install --with dev` that every CI matrix leg runs — neither tool is needed to lint,
75
+ # typecheck or test, and both drag in dependency trees of their own. The two security workflows
76
+ # ask for it explicitly with `--with security`.
77
+ #
78
+ # In the lockfile rather than fetched ad hoc so the versions are pinned and Dependabot's existing
79
+ # `pip` ecosystem maintains them under its cooldown, like every other dependency here.
80
+ [tool.poetry.group.security]
81
+ optional = true
82
+
83
+ #
84
+ # Both carry a `python = "<4.0"` marker for the same reason `clickhouse-connect` carries one:
85
+ # `requires-python = ">=3.12"` has no upper bound, so Poetry solves against a range that runs past
86
+ # 4.0, and a dependency capped at `<4.0` makes resolution fail outright. The marker scopes the tool
87
+ # instead of narrowing the library's own declared range.
88
+ [tool.poetry.group.security.dependencies]
89
+ cyclonedx-bom = { version = "^7.3", python = "<4.0" } # the `cyclonedx-py` CLI (SBOM generation)
90
+ pip-audit = { version = "^2.10", python = "<4.0" } # OSV/PyPI advisory audit of the env
91
+
73
92
 
74
93
  [tool.poetry-dynamic-versioning]
75
94
  enable = false
@@ -159,6 +178,11 @@ ignore = [
159
178
  # trip this rule.
160
179
  "src/log_foundry/sinks/postgres.py" = ["S608"]
161
180
  "src/log_foundry/sinks/sqlite.py" = ["S608"]
181
+ # make-sbom.py exists to drive two virtualenvs it creates itself, so subprocess is the whole job.
182
+ # Every argv element is either a literal, a path under a `tempfile.TemporaryDirectory` this script
183
+ # just made, or a value read from the repository's own pyproject.toml / poetry.lock. There is no
184
+ # caller-supplied input and no shell — `subprocess.run` is given a list, never a string.
185
+ "scripts/make-sbom.py" = ["S603"]
162
186
 
163
187
  [tool.mypy]
164
188
  files = ["src"]