pdfdancer-client-python 0.3.7__tar.gz → 0.3.8__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 (83) hide show
  1. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/PKG-INFO +12 -4
  2. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/README.md +11 -3
  3. pdfdancer_client_python-0.3.8/media/logo-silver-512h.webp +0 -0
  4. pdfdancer_client_python-0.3.8/media/logo-silver-60h.webp +0 -0
  5. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/pyproject.toml +1 -1
  6. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/src/pdfdancer_client_python.egg-info/PKG-INFO +12 -4
  7. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/src/pdfdancer_client_python.egg-info/SOURCES.txt +2 -0
  8. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_line.py +3 -1
  9. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/.claude/commands/discuss.md +0 -0
  10. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/.claude/commands/implement-new-api-features.md +0 -0
  11. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/.flake8 +0 -0
  12. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/.github/workflows/ci.yml +0 -0
  13. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/.github/workflows/daily-tests.yml +0 -0
  14. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/.gitignore +0 -0
  15. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/CLAUDE.md +0 -0
  16. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/LICENSE +0 -0
  17. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/NOTICE +0 -0
  18. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/TODO.md +0 -0
  19. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/check.py +0 -0
  20. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/docs/api-schemas/v0.yml +0 -0
  21. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/docs/api-schemas/v1.yml +0 -0
  22. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/media/logo-orange-512h.webp +0 -0
  23. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/media/logo-orange-60h.webp +0 -0
  24. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/release.py +0 -0
  25. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/setup.cfg +0 -0
  26. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/src/pdfdancer/__init__.py +0 -0
  27. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/src/pdfdancer/exceptions.py +0 -0
  28. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/src/pdfdancer/fingerprint.py +0 -0
  29. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/src/pdfdancer/image_builder.py +0 -0
  30. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/src/pdfdancer/models.py +0 -0
  31. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/src/pdfdancer/page_builder.py +0 -0
  32. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/src/pdfdancer/paragraph_builder.py +0 -0
  33. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/src/pdfdancer/path_builder.py +0 -0
  34. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/src/pdfdancer/pdfdancer_v1.py +0 -0
  35. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/src/pdfdancer/text_line_builder.py +0 -0
  36. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/src/pdfdancer/types.py +0 -0
  37. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/src/pdfdancer_client_python.egg-info/dependency_links.txt +0 -0
  38. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/src/pdfdancer_client_python.egg-info/requires.txt +0 -0
  39. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/src/pdfdancer_client_python.egg-info/top_level.txt +0 -0
  40. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/test.sh +0 -0
  41. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/__init__.py +0 -0
  42. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/conftest.py +0 -0
  43. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/__init__.py +0 -0
  44. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/pdf_assertions.py +0 -0
  45. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_acroform.py +0 -0
  46. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_bezier_builder.py +0 -0
  47. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_context_manager.py +0 -0
  48. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_form_x_objects.py +0 -0
  49. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_image.py +0 -0
  50. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_image_transform.py +0 -0
  51. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_line_builder.py +0 -0
  52. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_new_pdf.py +0 -0
  53. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_page.py +0 -0
  54. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_paragraph.py +0 -0
  55. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_path.py +0 -0
  56. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_path_builder.py +0 -0
  57. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_path_builder_rectangle.py +0 -0
  58. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_path_comprehensive.py +0 -0
  59. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_pdfdancer.py +0 -0
  60. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_positioning.py +0 -0
  61. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_rectangle_builder.py +0 -0
  62. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_redact.py +0 -0
  63. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_singular_selection.py +0 -0
  64. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_snapshot.py +0 -0
  65. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_template_replace.py +0 -0
  66. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/e2e/test_text_line_edit.py +0 -0
  67. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/fixtures/DancingScript-Regular.ttf +0 -0
  68. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/fixtures/Empty.pdf +0 -0
  69. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/fixtures/JetBrainsMono-Regular.ttf +0 -0
  70. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/fixtures/Showcase.pdf +0 -0
  71. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/fixtures/basic-paths.pdf +0 -0
  72. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/fixtures/form-xobject-example.pdf +0 -0
  73. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/fixtures/logo-80.png +0 -0
  74. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/fixtures/mixed-form-types.pdf +0 -0
  75. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/test_anonymous_token.py +0 -0
  76. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/test_fingerprint.py +0 -0
  77. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/test_models.py +0 -0
  78. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/test_openapi_compliance.py +0 -0
  79. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/test_path_models.py +0 -0
  80. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/test_pdf_object_equality.py +0 -0
  81. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/test_rate_limit.py +0 -0
  82. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/tests/test_standard_fonts.py +0 -0
  83. {pdfdancer_client_python-0.3.7 → pdfdancer_client_python-0.3.8}/update-api-spec.sh +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pdfdancer-client-python
3
- Version: 0.3.7
3
+ Version: 0.3.8
4
4
  Summary: Python client for PDFDancer API
5
5
  Author-email: "The Famous Cat Ltd." <hi@thefamouscat.com>
6
6
  License:
@@ -239,9 +239,9 @@ Dynamic: license-file
239
239
 
240
240
  # PDFDancer Python Client
241
241
 
242
- ![PDFDancer logo](media/logo-orange-60h.webp)
242
+ ![PDFDancer logo](media/logo-silver-60h.webp)
243
243
 
244
- **Stop fighting PDFs. Start editing them.**
244
+ ## PDF used to be read-only. We fixed that.
245
245
 
246
246
  Edit text in real-world PDFs—even ones you didn't create. Move images, reposition headers, and change fonts with
247
247
  pixel-perfect control from Python. The same API is also available for TypeScript and Java.
@@ -665,9 +665,17 @@ Contributions are welcome via pull request. Please:
665
665
  4. Follow existing code style and patterns
666
666
  5. Update documentation as needed
667
667
 
668
+ ## Helpful links
669
+
670
+ - [API documentation](https://docs.pdfdancer.com?utm_source=github&utm_medium=readme&utm_campaign=pdfdancer-python)
671
+ - [Product overview](https://www.pdfdancer.com?utm_source=github&utm_medium=readme&utm_campaign=pdfdancer-python)
672
+ - [PyPI](https://pypi.org/project/pdfdancer-client-python/)
673
+ - [Changelog](https://www.pdfdancer.com/changelog/?utm_source=github&utm_medium=readme&utm_campaign=pdfdancer-python)
674
+ - [Status](https://status.pdfdancer.com?utm_source=github&utm_medium=readme&utm_campaign=pdfdancer-python)
675
+
668
676
  ## Related SDKs
669
677
 
670
- - TypeScript client: https://github.com/MenschMachine/pdfdancer-client-js
678
+ - TypeScript client: https://github.com/MenschMachine/pdfdancer-client-typescript
671
679
  - Java client: https://github.com/MenschMachine/pdfdancer-client-java
672
680
 
673
681
  ## License
@@ -1,8 +1,8 @@
1
1
  # PDFDancer Python Client
2
2
 
3
- ![PDFDancer logo](media/logo-orange-60h.webp)
3
+ ![PDFDancer logo](media/logo-silver-60h.webp)
4
4
 
5
- **Stop fighting PDFs. Start editing them.**
5
+ ## PDF used to be read-only. We fixed that.
6
6
 
7
7
  Edit text in real-world PDFs—even ones you didn't create. Move images, reposition headers, and change fonts with
8
8
  pixel-perfect control from Python. The same API is also available for TypeScript and Java.
@@ -426,9 +426,17 @@ Contributions are welcome via pull request. Please:
426
426
  4. Follow existing code style and patterns
427
427
  5. Update documentation as needed
428
428
 
429
+ ## Helpful links
430
+
431
+ - [API documentation](https://docs.pdfdancer.com?utm_source=github&utm_medium=readme&utm_campaign=pdfdancer-python)
432
+ - [Product overview](https://www.pdfdancer.com?utm_source=github&utm_medium=readme&utm_campaign=pdfdancer-python)
433
+ - [PyPI](https://pypi.org/project/pdfdancer-client-python/)
434
+ - [Changelog](https://www.pdfdancer.com/changelog/?utm_source=github&utm_medium=readme&utm_campaign=pdfdancer-python)
435
+ - [Status](https://status.pdfdancer.com?utm_source=github&utm_medium=readme&utm_campaign=pdfdancer-python)
436
+
429
437
  ## Related SDKs
430
438
 
431
- - TypeScript client: https://github.com/MenschMachine/pdfdancer-client-js
439
+ - TypeScript client: https://github.com/MenschMachine/pdfdancer-client-typescript
432
440
  - Java client: https://github.com/MenschMachine/pdfdancer-client-java
433
441
 
434
442
  ## License
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "pdfdancer-client-python"
7
- version = "0.3.7"
7
+ version = "0.3.8"
8
8
  description = "Python client for PDFDancer API"
9
9
  readme = "README.md"
10
10
  authors = [
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pdfdancer-client-python
3
- Version: 0.3.7
3
+ Version: 0.3.8
4
4
  Summary: Python client for PDFDancer API
5
5
  Author-email: "The Famous Cat Ltd." <hi@thefamouscat.com>
6
6
  License:
@@ -239,9 +239,9 @@ Dynamic: license-file
239
239
 
240
240
  # PDFDancer Python Client
241
241
 
242
- ![PDFDancer logo](media/logo-orange-60h.webp)
242
+ ![PDFDancer logo](media/logo-silver-60h.webp)
243
243
 
244
- **Stop fighting PDFs. Start editing them.**
244
+ ## PDF used to be read-only. We fixed that.
245
245
 
246
246
  Edit text in real-world PDFs—even ones you didn't create. Move images, reposition headers, and change fonts with
247
247
  pixel-perfect control from Python. The same API is also available for TypeScript and Java.
@@ -665,9 +665,17 @@ Contributions are welcome via pull request. Please:
665
665
  4. Follow existing code style and patterns
666
666
  5. Update documentation as needed
667
667
 
668
+ ## Helpful links
669
+
670
+ - [API documentation](https://docs.pdfdancer.com?utm_source=github&utm_medium=readme&utm_campaign=pdfdancer-python)
671
+ - [Product overview](https://www.pdfdancer.com?utm_source=github&utm_medium=readme&utm_campaign=pdfdancer-python)
672
+ - [PyPI](https://pypi.org/project/pdfdancer-client-python/)
673
+ - [Changelog](https://www.pdfdancer.com/changelog/?utm_source=github&utm_medium=readme&utm_campaign=pdfdancer-python)
674
+ - [Status](https://status.pdfdancer.com?utm_source=github&utm_medium=readme&utm_campaign=pdfdancer-python)
675
+
668
676
  ## Related SDKs
669
677
 
670
- - TypeScript client: https://github.com/MenschMachine/pdfdancer-client-js
678
+ - TypeScript client: https://github.com/MenschMachine/pdfdancer-client-typescript
671
679
  - Java client: https://github.com/MenschMachine/pdfdancer-client-java
672
680
 
673
681
  ## License
@@ -18,6 +18,8 @@ docs/api-schemas/v0.yml
18
18
  docs/api-schemas/v1.yml
19
19
  media/logo-orange-512h.webp
20
20
  media/logo-orange-60h.webp
21
+ media/logo-silver-512h.webp
22
+ media/logo-silver-60h.webp
21
23
  src/pdfdancer/__init__.py
22
24
  src/pdfdancer/exceptions.py
23
25
  src/pdfdancer/fingerprint.py
@@ -111,7 +111,9 @@ def test_modify_line():
111
111
  line = pdf.page(1).select_text_lines_starting_with(
112
112
  "This is regular Sans text showing alignment and styles."
113
113
  )[0]
114
- result = line.edit().replace(" replaced ").apply()
114
+
115
+ line.edit().replace(" replaced ").apply()
116
+ # TODO assert line.text == " replaced "
115
117
 
116
118
  # Validate replacements
117
119
  assert (