onceonly-sdk 2.0.1__tar.gz → 2.0.2__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 (26) hide show
  1. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/PKG-INFO +30 -1
  2. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/README.md +29 -0
  3. onceonly_sdk-2.0.2/onceonly/version.py +1 -0
  4. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/onceonly_sdk.egg-info/PKG-INFO +30 -1
  5. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/pyproject.toml +1 -1
  6. onceonly_sdk-2.0.1/onceonly/version.py +0 -1
  7. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/LICENSE +0 -0
  8. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/onceonly/__init__.py +0 -0
  9. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/onceonly/_http.py +0 -0
  10. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/onceonly/_util.py +0 -0
  11. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/onceonly/ai.py +0 -0
  12. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/onceonly/ai_models.py +0 -0
  13. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/onceonly/client.py +0 -0
  14. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/onceonly/decorators.py +0 -0
  15. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/onceonly/exceptions.py +0 -0
  16. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/onceonly/integrations/__init__.py +0 -0
  17. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/onceonly/integrations/langchain.py +0 -0
  18. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/onceonly/models.py +0 -0
  19. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/onceonly_sdk.egg-info/SOURCES.txt +0 -0
  20. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/onceonly_sdk.egg-info/dependency_links.txt +0 -0
  21. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/onceonly_sdk.egg-info/requires.txt +0 -0
  22. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/onceonly_sdk.egg-info/top_level.txt +0 -0
  23. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/setup.cfg +0 -0
  24. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/tests/test_client_behavior.py +0 -0
  25. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/tests/test_integrations.py +0 -0
  26. {onceonly_sdk-2.0.1 → onceonly_sdk-2.0.2}/tests/test_parsing.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: onceonly-sdk
3
- Version: 2.0.1
3
+ Version: 2.0.2
4
4
  Summary: Python SDK for OnceOnly idempotency API
5
5
  Author-email: OnceOnly <support@onceonly.tech>
6
6
  License: MIT
@@ -31,9 +31,27 @@ OnceOnly is a high-performance Python SDK that ensures **exactly-once execution*
31
31
  It prevents duplicate actions (payments, emails, tool calls) in unstable environments like
32
32
  AI agents, webhooks, retries, or background workers.
33
33
 
34
+
34
35
  Website: https://onceonly.tech/ai/
35
36
  Documentation: https://onceonly.tech/docs/
36
37
 
38
+ [![PyPI version](https://img.shields.io/pypi/v/onceonly-sdk.svg)](https://pypi.org/project/onceonly-sdk/)
39
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
40
+ ---
41
+
42
+ ## Why duplicates happen
43
+
44
+ Duplicate actions are common in modern systems because:
45
+ - AI agents retry or re-plan tool calls
46
+ - Webhooks are delivered more than once
47
+ - Workers crash after side-effects
48
+ - Distributed systems replay events
49
+
50
+ Without an idempotency layer, the same action may run multiple times.
51
+
52
+ OnceOnly is designed to guard side-effects in non-deterministic AI agent loops,
53
+ where the same tool call may be executed multiple times.
54
+
37
55
  ---
38
56
 
39
57
  ## Features
@@ -45,6 +63,17 @@ Documentation: https://onceonly.tech/docs/
45
63
  - Native AI API (long-running jobs, local side-effects)
46
64
  - Optional AI / LangChain integrations
47
65
 
66
+ ---
67
+
68
+ ## FAQ
69
+
70
+ **Does this prevent duplicate payments or emails?**
71
+ Yes. OnceOnly guarantees exactly-once execution for side-effects.
72
+
73
+ **Is this a retry library?**
74
+ No. Retries still happen — OnceOnly ensures the action itself runs only once.
75
+
76
+
48
77
  ---
49
78
 
50
79
  ## Installation
@@ -6,9 +6,27 @@ OnceOnly is a high-performance Python SDK that ensures **exactly-once execution*
6
6
  It prevents duplicate actions (payments, emails, tool calls) in unstable environments like
7
7
  AI agents, webhooks, retries, or background workers.
8
8
 
9
+
9
10
  Website: https://onceonly.tech/ai/
10
11
  Documentation: https://onceonly.tech/docs/
11
12
 
13
+ [![PyPI version](https://img.shields.io/pypi/v/onceonly-sdk.svg)](https://pypi.org/project/onceonly-sdk/)
14
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
15
+ ---
16
+
17
+ ## Why duplicates happen
18
+
19
+ Duplicate actions are common in modern systems because:
20
+ - AI agents retry or re-plan tool calls
21
+ - Webhooks are delivered more than once
22
+ - Workers crash after side-effects
23
+ - Distributed systems replay events
24
+
25
+ Without an idempotency layer, the same action may run multiple times.
26
+
27
+ OnceOnly is designed to guard side-effects in non-deterministic AI agent loops,
28
+ where the same tool call may be executed multiple times.
29
+
12
30
  ---
13
31
 
14
32
  ## Features
@@ -20,6 +38,17 @@ Documentation: https://onceonly.tech/docs/
20
38
  - Native AI API (long-running jobs, local side-effects)
21
39
  - Optional AI / LangChain integrations
22
40
 
41
+ ---
42
+
43
+ ## FAQ
44
+
45
+ **Does this prevent duplicate payments or emails?**
46
+ Yes. OnceOnly guarantees exactly-once execution for side-effects.
47
+
48
+ **Is this a retry library?**
49
+ No. Retries still happen — OnceOnly ensures the action itself runs only once.
50
+
51
+
23
52
  ---
24
53
 
25
54
  ## Installation
@@ -0,0 +1 @@
1
+ __version__ = "2.0.2"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: onceonly-sdk
3
- Version: 2.0.1
3
+ Version: 2.0.2
4
4
  Summary: Python SDK for OnceOnly idempotency API
5
5
  Author-email: OnceOnly <support@onceonly.tech>
6
6
  License: MIT
@@ -31,9 +31,27 @@ OnceOnly is a high-performance Python SDK that ensures **exactly-once execution*
31
31
  It prevents duplicate actions (payments, emails, tool calls) in unstable environments like
32
32
  AI agents, webhooks, retries, or background workers.
33
33
 
34
+
34
35
  Website: https://onceonly.tech/ai/
35
36
  Documentation: https://onceonly.tech/docs/
36
37
 
38
+ [![PyPI version](https://img.shields.io/pypi/v/onceonly-sdk.svg)](https://pypi.org/project/onceonly-sdk/)
39
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
40
+ ---
41
+
42
+ ## Why duplicates happen
43
+
44
+ Duplicate actions are common in modern systems because:
45
+ - AI agents retry or re-plan tool calls
46
+ - Webhooks are delivered more than once
47
+ - Workers crash after side-effects
48
+ - Distributed systems replay events
49
+
50
+ Without an idempotency layer, the same action may run multiple times.
51
+
52
+ OnceOnly is designed to guard side-effects in non-deterministic AI agent loops,
53
+ where the same tool call may be executed multiple times.
54
+
37
55
  ---
38
56
 
39
57
  ## Features
@@ -45,6 +63,17 @@ Documentation: https://onceonly.tech/docs/
45
63
  - Native AI API (long-running jobs, local side-effects)
46
64
  - Optional AI / LangChain integrations
47
65
 
66
+ ---
67
+
68
+ ## FAQ
69
+
70
+ **Does this prevent duplicate payments or emails?**
71
+ Yes. OnceOnly guarantees exactly-once execution for side-effects.
72
+
73
+ **Is this a retry library?**
74
+ No. Retries still happen — OnceOnly ensures the action itself runs only once.
75
+
76
+
48
77
  ---
49
78
 
50
79
  ## Installation
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "onceonly-sdk"
7
- version = "2.0.1"
7
+ version = "2.0.2"
8
8
  description = "Python SDK for OnceOnly idempotency API"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.9"
@@ -1 +0,0 @@
1
- __version__ = "2.0.1"
File without changes
File without changes