polyxml 0.20.0__tar.gz → 0.21.0__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 (62) hide show
  1. {polyxml-0.20.0 → polyxml-0.21.0}/Cargo.lock +66 -5
  2. {polyxml-0.20.0 → polyxml-0.21.0}/Cargo.toml +1 -1
  3. {polyxml-0.20.0 → polyxml-0.21.0}/PKG-INFO +1 -1
  4. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/Cargo.toml +6 -0
  5. polyxml-0.21.0/crates/polyxml-core/benches/support/tag_dispatch_fixtures.rs +6766 -0
  6. polyxml-0.21.0/crates/polyxml-core/benches/tag_dispatch.rs +119 -0
  7. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/codegen/cpp/mod.rs +94 -21
  8. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/codegen/csharp/mod.rs +34 -19
  9. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/codegen/go/mod.rs +68 -15
  10. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/codegen/java/codec.rs +44 -17
  11. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/codegen/java/mod.rs +27 -11
  12. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/codegen/java/models.rs +8 -24
  13. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/codegen/mod.rs +135 -2
  14. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/codegen/python/mod.rs +101 -14
  15. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/codegen/rust/mod.rs +399 -32
  16. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/codegen/typescript/mod.rs +54 -17
  17. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/ir/mod.rs +3 -0
  18. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/json.rs +8 -0
  19. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/parser.rs +167 -8
  20. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/schema.rs +175 -21
  21. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/schema_parser/mod.rs +793 -21
  22. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/serializer.rs +61 -0
  23. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/transcoder.rs +31 -3
  24. polyxml-0.21.0/crates/polyxml-core/tests/test_issue51_audit.rs +581 -0
  25. polyxml-0.21.0/crates/polyxml-core/tests/test_issue53_xsi_type.rs +352 -0
  26. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/tests/test_java_codegen.rs +160 -0
  27. polyxml-0.21.0/crates/polyxml-core/tests/test_pattern_codegen.rs +364 -0
  28. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/tests/test_python_codegen.rs +48 -1
  29. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/tests/test_rust_codegen.rs +553 -0
  30. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/tests/test_transcoder.rs +30 -0
  31. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/tests/test_ts_codegen.rs +2 -2
  32. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-python/src/lib.rs +131 -5
  33. polyxml-0.21.0/crates/polyxml-python/tests/test_xsi_type.py +274 -0
  34. {polyxml-0.20.0 → polyxml-0.21.0}/pyproject.toml +1 -1
  35. {polyxml-0.20.0 → polyxml-0.21.0}/python/polyxml/__init__.py +14 -1
  36. {polyxml-0.20.0 → polyxml-0.21.0}/README.md +0 -0
  37. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/README.md +0 -0
  38. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/benches/core_benchmarks.rs +0 -0
  39. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/converters.rs +0 -0
  40. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/error.rs +0 -0
  41. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/ir/tarjan.rs +0 -0
  42. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/lib.rs +0 -0
  43. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/src/value.rs +0 -0
  44. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/tests/test_conformance.rs +0 -0
  45. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/tests/test_core.rs +0 -0
  46. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/tests/test_cpp_codegen.rs +0 -0
  47. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/tests/test_csharp_codegen.rs +0 -0
  48. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/tests/test_go_codegen.rs +0 -0
  49. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/tests/test_json.rs +0 -0
  50. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/tests/test_rust_codecs.rs +0 -0
  51. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/tests/test_schema_ir.rs +0 -0
  52. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-core/tests/test_security.rs +0 -0
  53. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-python/Cargo.toml +0 -0
  54. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-python/README.md +0 -0
  55. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-python/tests/test_conformance.py +0 -0
  56. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-python/tests/test_generated_models.py +0 -0
  57. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-python/tests/test_json.py +0 -0
  58. {polyxml-0.20.0 → polyxml-0.21.0}/crates/polyxml-python/tests/test_polyxml.py +0 -0
  59. {polyxml-0.20.0 → polyxml-0.21.0}/python/polyxml/AGENT_GUIDE.md +0 -0
  60. {polyxml-0.20.0 → polyxml-0.21.0}/python/polyxml/compat/__init__.py +0 -0
  61. {polyxml-0.20.0 → polyxml-0.21.0}/python/polyxml/compat/xsdata.py +0 -0
  62. {polyxml-0.20.0 → polyxml-0.21.0}/python/polyxml/py.typed +0 -0
@@ -547,15 +547,70 @@ dependencies = [
547
547
  "winapi",
548
548
  ]
549
549
 
550
+ [[package]]
551
+ name = "phf"
552
+ version = "0.14.0"
553
+ source = "registry+https://github.com/rust-lang/crates.io-index"
554
+ checksum = "010378780309880b08997fae13be7834dba947d36393bd372f2b1556deb2a2f6"
555
+ dependencies = [
556
+ "phf_macros",
557
+ "phf_shared",
558
+ "serde",
559
+ ]
560
+
561
+ [[package]]
562
+ name = "phf_codegen"
563
+ version = "0.14.0"
564
+ source = "registry+https://github.com/rust-lang/crates.io-index"
565
+ checksum = "41b585a510fb76fdebead6897982ef2a03a21d8e6cbcca904999742a4afc6ffe"
566
+ dependencies = [
567
+ "phf_generator",
568
+ "phf_shared",
569
+ ]
570
+
571
+ [[package]]
572
+ name = "phf_generator"
573
+ version = "0.14.0"
574
+ source = "registry+https://github.com/rust-lang/crates.io-index"
575
+ checksum = "aeb62e0959d5a1bebc965f4d15d9e2b7cea002b6b0f5ba8cde6cc26738467100"
576
+ dependencies = [
577
+ "fastrand",
578
+ "phf_shared",
579
+ ]
580
+
581
+ [[package]]
582
+ name = "phf_macros"
583
+ version = "0.14.0"
584
+ source = "registry+https://github.com/rust-lang/crates.io-index"
585
+ checksum = "5fa8d0ca26d424d27630da600c6624696e7dec8bf7b3b492b383c5dc49e5e085"
586
+ dependencies = [
587
+ "phf_generator",
588
+ "phf_shared",
589
+ "proc-macro2",
590
+ "quote",
591
+ "syn 2.0.119",
592
+ ]
593
+
594
+ [[package]]
595
+ name = "phf_shared"
596
+ version = "0.14.0"
597
+ source = "registry+https://github.com/rust-lang/crates.io-index"
598
+ checksum = "c6fd9027e2d9319be6349febd1db4e8d02aa544921200c9b777720ac34a3aa89"
599
+ dependencies = [
600
+ "siphasher",
601
+ ]
602
+
550
603
  [[package]]
551
604
  name = "polyxml"
552
- version = "0.20.0"
605
+ version = "0.21.0"
553
606
  dependencies = [
554
607
  "criterion",
555
608
  "heck",
556
609
  "lexical-core",
557
610
  "memchr",
558
611
  "minijinja",
612
+ "phf",
613
+ "phf_codegen",
559
614
  "pretty_assertions",
560
615
  "quick-xml",
561
616
  "serde",
@@ -567,14 +622,14 @@ dependencies = [
567
622
 
568
623
  [[package]]
569
624
  name = "polyxml-c"
570
- version = "0.20.0"
625
+ version = "0.21.0"
571
626
  dependencies = [
572
627
  "polyxml",
573
628
  ]
574
629
 
575
630
  [[package]]
576
631
  name = "polyxml-cli"
577
- version = "0.20.0"
632
+ version = "0.21.0"
578
633
  dependencies = [
579
634
  "clap",
580
635
  "glob",
@@ -588,7 +643,7 @@ dependencies = [
588
643
 
589
644
  [[package]]
590
645
  name = "polyxml-js"
591
- version = "0.20.0"
646
+ version = "0.21.0"
592
647
  dependencies = [
593
648
  "napi",
594
649
  "napi-build",
@@ -598,7 +653,7 @@ dependencies = [
598
653
 
599
654
  [[package]]
600
655
  name = "polyxml-python"
601
- version = "0.20.0"
656
+ version = "0.21.0"
602
657
  dependencies = [
603
658
  "lexical-core",
604
659
  "polyxml",
@@ -828,6 +883,12 @@ version = "2.0.1"
828
883
  source = "registry+https://github.com/rust-lang/crates.io-index"
829
884
  checksum = "f8fadd59c855ef2080decdef8ff161eb6661b86933c9d82e5ba29dc602a55aba"
830
885
 
886
+ [[package]]
887
+ name = "siphasher"
888
+ version = "1.0.3"
889
+ source = "registry+https://github.com/rust-lang/crates.io-index"
890
+ checksum = "8ee5873ec9cce0195efcb7a4e9507a04cd49aec9c83d0389df45b1ef7ba2e649"
891
+
831
892
  [[package]]
832
893
  name = "smallvec"
833
894
  version = "1.16.1"
@@ -3,7 +3,7 @@ resolver = "2"
3
3
  members = ["crates/polyxml-core", "crates/polyxml-python"]
4
4
 
5
5
  [workspace.package]
6
- version = "0.20.0"
6
+ version = "0.21.0"
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.20.0
3
+ Version: 0.21.0
4
4
  Classifier: Development Status :: 4 - Beta
5
5
  Classifier: Intended Audience :: Developers
6
6
  Classifier: License :: OSI Approved :: MIT License
@@ -20,12 +20,18 @@ serde = { version = "1.0", features = ["derive"] }
20
20
  serde_json = "1.0"
21
21
  minijinja = { version = "2.8", features = ["builtins"] }
22
22
  heck = "0.5"
23
+ phf_codegen = "0.14.0"
23
24
 
24
25
  [dev-dependencies]
25
26
  criterion = { version = "0.8", default-features = false, features = ["cargo_bench_support"] }
27
+ phf = { version = "0.14.0", features = ["macros"] }
26
28
  pretty_assertions = "1.4"
27
29
  tempfile = "3"
28
30
 
29
31
  [[bench]]
30
32
  name = "core_benchmarks"
31
33
  harness = false
34
+
35
+ [[bench]]
36
+ name = "tag_dispatch"
37
+ harness = false