polyxml 0.5.0__tar.gz → 0.5.1__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. {polyxml-0.5.0 → polyxml-0.5.1}/Cargo.lock +4 -4
  2. {polyxml-0.5.0 → polyxml-0.5.1}/Cargo.toml +1 -1
  3. {polyxml-0.5.0 → polyxml-0.5.1}/PKG-INFO +31 -2
  4. polyxml-0.5.1/README.md +34 -0
  5. polyxml-0.5.1/crates/polyxml-python/README.md +34 -0
  6. {polyxml-0.5.0 → polyxml-0.5.1}/pyproject.toml +1 -1
  7. polyxml-0.5.0/README.md +0 -5
  8. polyxml-0.5.0/crates/polyxml-python/README.md +0 -5
  9. {polyxml-0.5.0 → polyxml-0.5.1}/crates/polyxml-core/Cargo.toml +0 -0
  10. {polyxml-0.5.0 → polyxml-0.5.1}/crates/polyxml-core/README.md +0 -0
  11. {polyxml-0.5.0 → polyxml-0.5.1}/crates/polyxml-core/benches/core_benchmarks.rs +0 -0
  12. {polyxml-0.5.0 → polyxml-0.5.1}/crates/polyxml-core/src/converters.rs +0 -0
  13. {polyxml-0.5.0 → polyxml-0.5.1}/crates/polyxml-core/src/error.rs +0 -0
  14. {polyxml-0.5.0 → polyxml-0.5.1}/crates/polyxml-core/src/lib.rs +0 -0
  15. {polyxml-0.5.0 → polyxml-0.5.1}/crates/polyxml-core/src/parser.rs +0 -0
  16. {polyxml-0.5.0 → polyxml-0.5.1}/crates/polyxml-core/src/schema.rs +0 -0
  17. {polyxml-0.5.0 → polyxml-0.5.1}/crates/polyxml-core/src/serializer.rs +0 -0
  18. {polyxml-0.5.0 → polyxml-0.5.1}/crates/polyxml-core/src/value.rs +0 -0
  19. {polyxml-0.5.0 → polyxml-0.5.1}/crates/polyxml-core/tests/test_core.rs +0 -0
  20. {polyxml-0.5.0 → polyxml-0.5.1}/crates/polyxml-core/tests/test_security.rs +0 -0
  21. {polyxml-0.5.0 → polyxml-0.5.1}/crates/polyxml-python/Cargo.toml +0 -0
  22. {polyxml-0.5.0 → polyxml-0.5.1}/crates/polyxml-python/src/lib.rs +0 -0
  23. {polyxml-0.5.0 → polyxml-0.5.1}/crates/polyxml-python/tests/test_polyxml.py +0 -0
  24. {polyxml-0.5.0 → polyxml-0.5.1}/python/polyxml/AGENT_GUIDE.md +0 -0
  25. {polyxml-0.5.0 → polyxml-0.5.1}/python/polyxml/__init__.py +0 -0
  26. {polyxml-0.5.0 → polyxml-0.5.1}/python/polyxml/py.typed +0 -0
@@ -395,7 +395,7 @@ dependencies = [
395
395
 
396
396
  [[package]]
397
397
  name = "polyxml"
398
- version = "0.5.0"
398
+ version = "0.5.1"
399
399
  dependencies = [
400
400
  "criterion",
401
401
  "lexical-core",
@@ -408,14 +408,14 @@ dependencies = [
408
408
 
409
409
  [[package]]
410
410
  name = "polyxml-c"
411
- version = "0.5.0"
411
+ version = "0.5.1"
412
412
  dependencies = [
413
413
  "polyxml",
414
414
  ]
415
415
 
416
416
  [[package]]
417
417
  name = "polyxml-js"
418
- version = "0.5.0"
418
+ version = "0.5.1"
419
419
  dependencies = [
420
420
  "napi",
421
421
  "napi-build",
@@ -425,7 +425,7 @@ dependencies = [
425
425
 
426
426
  [[package]]
427
427
  name = "polyxml-python"
428
- version = "0.5.0"
428
+ version = "0.5.1"
429
429
  dependencies = [
430
430
  "lexical-core",
431
431
  "polyxml",
@@ -3,7 +3,7 @@ resolver = "2"
3
3
  members = ["crates/polyxml-core", "crates/polyxml-python"]
4
4
 
5
5
  [workspace.package]
6
- version = "0.5.0"
6
+ version = "0.5.1"
7
7
  edition = "2021"
8
8
  rust-version = "1.80"
9
9
  license = "MIT"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: polyxml
3
- Version: 0.5.0
3
+ Version: 0.5.1
4
4
  Classifier: Development Status :: 4 - Beta
5
5
  Classifier: Intended Audience :: Developers
6
6
  Classifier: License :: OSI Approved :: MIT License
@@ -34,5 +34,34 @@ Project-URL: Repository, https://github.com/nth-bailey/PolyXML
34
34
 
35
35
  High-performance native XML data-binding engine for Python dataclasses and Pydantic models.
36
36
 
37
- Powered by polyxml-core written in Rust and PyO3 (abi3-py312).
37
+ Powered by `polyxml-core` written in Rust and PyO3 (`abi3-py312`).
38
+
39
+ ## Features
40
+
41
+ - **⚡ Blazing Fast**: 16x faster deserialization and 38x faster serialization than standard Python tools.
42
+ - **🌊 Streaming `iterparse()`**: Parse multi-gigabyte XML files with O(1) constant memory (<5 MB RAM).
43
+ - **📦 Zero-GIL Binary Serialization**: Native `dumps_binary()` and `loads_binary()` using MessagePack (`msgspec`), up to 12.4x faster than pickle.
44
+ - **🎯 Full Type Support**: Dataclasses and Pydantic v2 models with zero boilerplate.
45
+
46
+ ## Quickstart
47
+
48
+ ```python
49
+ from dataclasses import dataclass, field
50
+ import polyxml
51
+
52
+ @dataclass
53
+ class Item:
54
+ id: int = field(metadata={"type": "Attribute"})
55
+ name: str = field(metadata={"type": "Element"})
56
+
57
+ # 1. XML Deserialization
58
+ item = polyxml.deserialize(b'<Item id="1"><name>Gadget</name></Item>', Item)
59
+
60
+ # 2. XML Serialization
61
+ xml = polyxml.serialize(item, indent=2)
62
+
63
+ # 3. High-Speed Binary Serialization (Key-Value databases / IPC)
64
+ blob = polyxml.dumps_binary(item)
65
+ restored = polyxml.loads_binary(blob, Item)
66
+ ```
38
67
 
@@ -0,0 +1,34 @@
1
+ # PolyXML Python Bindings
2
+
3
+ High-performance native XML data-binding engine for Python dataclasses and Pydantic models.
4
+
5
+ Powered by `polyxml-core` written in Rust and PyO3 (`abi3-py312`).
6
+
7
+ ## Features
8
+
9
+ - **⚡ Blazing Fast**: 16x faster deserialization and 38x faster serialization than standard Python tools.
10
+ - **🌊 Streaming `iterparse()`**: Parse multi-gigabyte XML files with O(1) constant memory (<5 MB RAM).
11
+ - **📦 Zero-GIL Binary Serialization**: Native `dumps_binary()` and `loads_binary()` using MessagePack (`msgspec`), up to 12.4x faster than pickle.
12
+ - **🎯 Full Type Support**: Dataclasses and Pydantic v2 models with zero boilerplate.
13
+
14
+ ## Quickstart
15
+
16
+ ```python
17
+ from dataclasses import dataclass, field
18
+ import polyxml
19
+
20
+ @dataclass
21
+ class Item:
22
+ id: int = field(metadata={"type": "Attribute"})
23
+ name: str = field(metadata={"type": "Element"})
24
+
25
+ # 1. XML Deserialization
26
+ item = polyxml.deserialize(b'<Item id="1"><name>Gadget</name></Item>', Item)
27
+
28
+ # 2. XML Serialization
29
+ xml = polyxml.serialize(item, indent=2)
30
+
31
+ # 3. High-Speed Binary Serialization (Key-Value databases / IPC)
32
+ blob = polyxml.dumps_binary(item)
33
+ restored = polyxml.loads_binary(blob, Item)
34
+ ```
@@ -0,0 +1,34 @@
1
+ # PolyXML Python Bindings
2
+
3
+ High-performance native XML data-binding engine for Python dataclasses and Pydantic models.
4
+
5
+ Powered by `polyxml-core` written in Rust and PyO3 (`abi3-py312`).
6
+
7
+ ## Features
8
+
9
+ - **⚡ Blazing Fast**: 16x faster deserialization and 38x faster serialization than standard Python tools.
10
+ - **🌊 Streaming `iterparse()`**: Parse multi-gigabyte XML files with O(1) constant memory (<5 MB RAM).
11
+ - **📦 Zero-GIL Binary Serialization**: Native `dumps_binary()` and `loads_binary()` using MessagePack (`msgspec`), up to 12.4x faster than pickle.
12
+ - **🎯 Full Type Support**: Dataclasses and Pydantic v2 models with zero boilerplate.
13
+
14
+ ## Quickstart
15
+
16
+ ```python
17
+ from dataclasses import dataclass, field
18
+ import polyxml
19
+
20
+ @dataclass
21
+ class Item:
22
+ id: int = field(metadata={"type": "Attribute"})
23
+ name: str = field(metadata={"type": "Element"})
24
+
25
+ # 1. XML Deserialization
26
+ item = polyxml.deserialize(b'<Item id="1"><name>Gadget</name></Item>', Item)
27
+
28
+ # 2. XML Serialization
29
+ xml = polyxml.serialize(item, indent=2)
30
+
31
+ # 3. High-Speed Binary Serialization (Key-Value databases / IPC)
32
+ blob = polyxml.dumps_binary(item)
33
+ restored = polyxml.loads_binary(blob, Item)
34
+ ```
@@ -4,7 +4,7 @@ build-backend = "maturin"
4
4
 
5
5
  [project]
6
6
  name = "polyxml"
7
- version = "0.5.0"
7
+ version = "0.5.1"
8
8
  description = "High-performance, polyglot XML data-binding engine built in Rust"
9
9
  authors = [
10
10
  { name = "Bailey Nguyen", email = "bailey.tan.nguyen@gmail.com" }
polyxml-0.5.0/README.md DELETED
@@ -1,5 +0,0 @@
1
- # PolyXML Python Bindings
2
-
3
- High-performance native XML data-binding engine for Python dataclasses and Pydantic models.
4
-
5
- Powered by polyxml-core written in Rust and PyO3 (abi3-py312).
@@ -1,5 +0,0 @@
1
- # PolyXML Python Bindings
2
-
3
- High-performance native XML data-binding engine for Python dataclasses and Pydantic models.
4
-
5
- Powered by polyxml-core written in Rust and PyO3 (abi3-py312).
File without changes