devlite 0.1.2__tar.gz → 0.1.3__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 (29) hide show
  1. {devlite-0.1.2 → devlite-0.1.3}/PKG-INFO +1 -1
  2. {devlite-0.1.2 → devlite-0.1.3}/devlite/__init__.py +12 -4
  3. {devlite-0.1.2 → devlite-0.1.3}/devlite/_transport.py +1 -1
  4. {devlite-0.1.2 → devlite-0.1.3}/devlite.egg-info/PKG-INFO +1 -1
  5. {devlite-0.1.2 → devlite-0.1.3}/pyproject.toml +1 -1
  6. {devlite-0.1.2 → devlite-0.1.3}/LICENSE +0 -0
  7. {devlite-0.1.2 → devlite-0.1.3}/README.md +0 -0
  8. {devlite-0.1.2 → devlite-0.1.3}/devlite/_client.py +0 -0
  9. {devlite-0.1.2 → devlite-0.1.3}/devlite/_config.py +0 -0
  10. {devlite-0.1.2 → devlite-0.1.3}/devlite/_context.py +0 -0
  11. {devlite-0.1.2 → devlite-0.1.3}/devlite/_django.py +0 -0
  12. {devlite-0.1.2 → devlite-0.1.3}/devlite/_errors.py +0 -0
  13. {devlite-0.1.2 → devlite-0.1.3}/devlite/_fastapi.py +0 -0
  14. {devlite-0.1.2 → devlite-0.1.3}/devlite/_flask.py +0 -0
  15. {devlite-0.1.2 → devlite-0.1.3}/devlite/_metrics.py +0 -0
  16. {devlite-0.1.2 → devlite-0.1.3}/devlite/_queue.py +0 -0
  17. {devlite-0.1.2 → devlite-0.1.3}/devlite/_scrub.py +0 -0
  18. {devlite-0.1.2 → devlite-0.1.3}/devlite.egg-info/SOURCES.txt +0 -0
  19. {devlite-0.1.2 → devlite-0.1.3}/devlite.egg-info/dependency_links.txt +0 -0
  20. {devlite-0.1.2 → devlite-0.1.3}/devlite.egg-info/requires.txt +0 -0
  21. {devlite-0.1.2 → devlite-0.1.3}/devlite.egg-info/top_level.txt +0 -0
  22. {devlite-0.1.2 → devlite-0.1.3}/setup.cfg +0 -0
  23. {devlite-0.1.2 → devlite-0.1.3}/tests/test_context.py +0 -0
  24. {devlite-0.1.2 → devlite-0.1.3}/tests/test_django.py +0 -0
  25. {devlite-0.1.2 → devlite-0.1.3}/tests/test_errors.py +0 -0
  26. {devlite-0.1.2 → devlite-0.1.3}/tests/test_fastapi.py +0 -0
  27. {devlite-0.1.2 → devlite-0.1.3}/tests/test_queue.py +0 -0
  28. {devlite-0.1.2 → devlite-0.1.3}/tests/test_scrub.py +0 -0
  29. {devlite-0.1.2 → devlite-0.1.3}/tests/test_transport.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: devlite
3
- Version: 0.1.2
3
+ Version: 0.1.3
4
4
  Summary: DevLite Python SDK — AI-powered observability with a 2-line integration. Automatic error grouping, source context, user impact tracking, and sensitive-data scrubbing built in.
5
5
  License: MIT
6
6
  Project-URL: Homepage, https://devlite.io
@@ -2,7 +2,7 @@
2
2
 
3
3
  import devlite
4
4
 
5
- devlite.init({api_key: "dl_live_xxxxx"})
5
+ devlite.init(api_key="dl_live_xxxxx")
6
6
 
7
7
  Automatic request tracking, error grouping, source context, user impact
8
8
  tracking, and sensitive-data scrubbing — mirroring the @devlite/nodejs npm
@@ -18,17 +18,22 @@ Public API (all Pythonic snake_case):
18
18
  from ._client import Client, HostMetricsHandle, Span
19
19
  from ._context import run_with_context
20
20
 
21
- __version__ = "0.1.1"
21
+ __version__ = "0.1.3"
22
22
 
23
23
  _client = None
24
24
 
25
25
 
26
- def init(options=None):
26
+ def init(options=None, **kwargs):
27
27
  """Initialize DevLite. The only required call.
28
28
 
29
+ Accepts either a dict (`init({"api_key": "..."})`) or keyword
30
+ arguments (`init(api_key="...")`); kwargs take precedence when both
31
+ are passed.
32
+
29
33
  Args:
30
34
  options: dict with keys like api_key, environment, service_name,
31
35
  release, sample_rate, gzip, debug, endpoint, on_error, ...
36
+ **kwargs: the same options passed as keyword arguments.
32
37
  `api_key` is required (or set DEVLITE_API_KEY env var).
33
38
  """
34
39
  global _client
@@ -37,7 +42,10 @@ def init(options=None):
37
42
 
38
43
  warnings.warn("[DevLite] init() called more than once — ignoring subsequent call.")
39
44
  return
40
- _client = Client(options or {})
45
+ opts = dict(options or {})
46
+ if kwargs:
47
+ opts.update(kwargs)
48
+ _client = Client(opts or {})
41
49
 
42
50
 
43
51
  def _require_client():
@@ -106,7 +106,7 @@ class Transport:
106
106
  body = json.dumps(self._payload(batch), default=_json_default).encode("utf-8")
107
107
  headers = {
108
108
  "Content-Type": "application/json",
109
- "User-Agent": self.config.get("user_agent", "devlite-python/0.1.1"),
109
+ "User-Agent": self.config.get("user_agent", "devlite-python/0.1.3"),
110
110
  }
111
111
 
112
112
  # Marks this request as the SDK's own delivery so an instrumented
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: devlite
3
- Version: 0.1.2
3
+ Version: 0.1.3
4
4
  Summary: DevLite Python SDK — AI-powered observability with a 2-line integration. Automatic error grouping, source context, user impact tracking, and sensitive-data scrubbing built in.
5
5
  License: MIT
6
6
  Project-URL: Homepage, https://devlite.io
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "devlite"
7
- version = "0.1.2"
7
+ version = "0.1.3"
8
8
  description = "DevLite Python SDK — AI-powered observability with a 2-line integration. Automatic error grouping, source context, user impact tracking, and sensitive-data scrubbing built in."
9
9
  readme = "README.md"
10
10
  license = { text = "MIT" }
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
File without changes
File without changes