rossum-api 3.2.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 (91) hide show
  1. rossum_api-3.2.0/.flake8 +24 -0
  2. rossum_api-3.2.0/.github/workflows/test-and-deploy.yaml +41 -0
  3. rossum_api-3.2.0/.gitignore +109 -0
  4. rossum_api-3.2.0/.pre-commit-config.yaml +37 -0
  5. rossum_api-3.2.0/CHANGELOG.md +638 -0
  6. rossum_api-3.2.0/CONTRIBUTING.md +96 -0
  7. rossum_api-3.2.0/LICENCE +21 -0
  8. rossum_api-3.2.0/Makefile +38 -0
  9. rossum_api-3.2.0/PKG-INFO +157 -0
  10. rossum_api-3.2.0/README.md +133 -0
  11. rossum_api-3.2.0/conditional-commitizen.sh +3 -0
  12. rossum_api-3.2.0/pyproject.toml +61 -0
  13. rossum_api-3.2.0/rossum_api/__init__.py +13 -0
  14. rossum_api-3.2.0/rossum_api/clients/__init__.py +0 -0
  15. rossum_api-3.2.0/rossum_api/clients/external_async_client.py +861 -0
  16. rossum_api-3.2.0/rossum_api/clients/external_sync_client.py +800 -0
  17. rossum_api-3.2.0/rossum_api/clients/internal_async_client.py +389 -0
  18. rossum_api-3.2.0/rossum_api/clients/internal_sync_client.py +310 -0
  19. rossum_api-3.2.0/rossum_api/domain_logic/__init__.py +0 -0
  20. rossum_api-3.2.0/rossum_api/domain_logic/annotations.py +55 -0
  21. rossum_api-3.2.0/rossum_api/domain_logic/documents.py +22 -0
  22. rossum_api-3.2.0/rossum_api/domain_logic/emails.py +17 -0
  23. rossum_api-3.2.0/rossum_api/domain_logic/pagination.py +16 -0
  24. rossum_api-3.2.0/rossum_api/domain_logic/resources.py +30 -0
  25. rossum_api-3.2.0/rossum_api/domain_logic/retry.py +17 -0
  26. rossum_api-3.2.0/rossum_api/domain_logic/search.py +23 -0
  27. rossum_api-3.2.0/rossum_api/domain_logic/sideloads.py +70 -0
  28. rossum_api-3.2.0/rossum_api/domain_logic/tasks.py +8 -0
  29. rossum_api-3.2.0/rossum_api/domain_logic/upload.py +26 -0
  30. rossum_api-3.2.0/rossum_api/domain_logic/urls.py +66 -0
  31. rossum_api-3.2.0/rossum_api/dtos.py +14 -0
  32. rossum_api-3.2.0/rossum_api/exceptions.py +12 -0
  33. rossum_api-3.2.0/rossum_api/models/__init__.py +78 -0
  34. rossum_api-3.2.0/rossum_api/models/annotation.py +65 -0
  35. rossum_api-3.2.0/rossum_api/models/automation_blocker.py +22 -0
  36. rossum_api-3.2.0/rossum_api/models/connector.py +20 -0
  37. rossum_api-3.2.0/rossum_api/models/document.py +22 -0
  38. rossum_api-3.2.0/rossum_api/models/document_relation.py +20 -0
  39. rossum_api-3.2.0/rossum_api/models/email.py +42 -0
  40. rossum_api-3.2.0/rossum_api/models/email_template.py +22 -0
  41. rossum_api-3.2.0/rossum_api/models/engine.py +32 -0
  42. rossum_api-3.2.0/rossum_api/models/group.py +10 -0
  43. rossum_api-3.2.0/rossum_api/models/hook.py +30 -0
  44. rossum_api-3.2.0/rossum_api/models/inbox.py +22 -0
  45. rossum_api-3.2.0/rossum_api/models/organization.py +21 -0
  46. rossum_api-3.2.0/rossum_api/models/py.typed +0 -0
  47. rossum_api-3.2.0/rossum_api/models/queue.py +36 -0
  48. rossum_api-3.2.0/rossum_api/models/schema.py +14 -0
  49. rossum_api-3.2.0/rossum_api/models/task.py +32 -0
  50. rossum_api-3.2.0/rossum_api/models/upload.py +20 -0
  51. rossum_api-3.2.0/rossum_api/models/user.py +27 -0
  52. rossum_api-3.2.0/rossum_api/models/workspace.py +15 -0
  53. rossum_api-3.2.0/rossum_api/py.typed +0 -0
  54. rossum_api-3.2.0/rossum_api/utils.py +23 -0
  55. rossum_api-3.2.0/rossum_api.egg-info/PKG-INFO +157 -0
  56. rossum_api-3.2.0/rossum_api.egg-info/SOURCES.txt +89 -0
  57. rossum_api-3.2.0/rossum_api.egg-info/dependency_links.txt +1 -0
  58. rossum_api-3.2.0/rossum_api.egg-info/requires.txt +16 -0
  59. rossum_api-3.2.0/rossum_api.egg-info/top_level.txt +1 -0
  60. rossum_api-3.2.0/ruff.toml +62 -0
  61. rossum_api-3.2.0/setup.cfg +4 -0
  62. rossum_api-3.2.0/test.py +173 -0
  63. rossum_api-3.2.0/tests/__init__.py +0 -0
  64. rossum_api-3.2.0/tests/conftest.py +219 -0
  65. rossum_api-3.2.0/tests/data/annotation_export.xml +28 -0
  66. rossum_api-3.2.0/tests/data/sample_invoice.pdf +0 -0
  67. rossum_api-3.2.0/tests/domain_logic/test_sideloads.py +37 -0
  68. rossum_api-3.2.0/tests/domain_logic/test_urls.py +52 -0
  69. rossum_api-3.2.0/tests/e2e.py +141 -0
  70. rossum_api-3.2.0/tests/elis_api_client/test_annotations.py +652 -0
  71. rossum_api-3.2.0/tests/elis_api_client/test_connectors.py +104 -0
  72. rossum_api-3.2.0/tests/elis_api_client/test_document_relations.py +239 -0
  73. rossum_api-3.2.0/tests/elis_api_client/test_documents.py +126 -0
  74. rossum_api-3.2.0/tests/elis_api_client/test_email_templates.py +110 -0
  75. rossum_api-3.2.0/tests/elis_api_client/test_emails.py +119 -0
  76. rossum_api-3.2.0/tests/elis_api_client/test_engines.py +87 -0
  77. rossum_api-3.2.0/tests/elis_api_client/test_groups.py +38 -0
  78. rossum_api-3.2.0/tests/elis_api_client/test_hooks.py +166 -0
  79. rossum_api-3.2.0/tests/elis_api_client/test_inboxes.py +76 -0
  80. rossum_api-3.2.0/tests/elis_api_client/test_organizations.py +99 -0
  81. rossum_api-3.2.0/tests/elis_api_client/test_queues.py +351 -0
  82. rossum_api-3.2.0/tests/elis_api_client/test_schemas.py +124 -0
  83. rossum_api-3.2.0/tests/elis_api_client/test_tasks.py +107 -0
  84. rossum_api-3.2.0/tests/elis_api_client/test_uploads.py +49 -0
  85. rossum_api-3.2.0/tests/elis_api_client/test_users.py +89 -0
  86. rossum_api-3.2.0/tests/elis_api_client/test_workspaces.py +118 -0
  87. rossum_api-3.2.0/tests/internal_clients/__init__.py +0 -0
  88. rossum_api-3.2.0/tests/internal_clients/conftest.py +87 -0
  89. rossum_api-3.2.0/tests/internal_clients/test_internal_async_client.py +739 -0
  90. rossum_api-3.2.0/tests/internal_clients/test_internal_sync_client.py +630 -0
  91. rossum_api-3.2.0/tox.ini +16 -0
@@ -0,0 +1,24 @@
1
+ [flake8]
2
+ ignore =
3
+ # A002 argument "id" is shadowing a python builtin - id is too important
4
+ A002,
5
+ # A003 class attribute "id" is shadowing a python builtin - id is too important
6
+ A003,
7
+ # E203 whitespace before ':' - not PEP8 compliant!
8
+ E203,
9
+ # E402 module level import not at top of file
10
+ E402,
11
+ # E741 ambiguous variable name 'l'
12
+ E741,
13
+ # W503 line break before binary operator
14
+ W503,
15
+ # W504 line break after binary operator
16
+ W504,
17
+ # Logging statement uses exception in arguments
18
+ G200,
19
+ # Long literals which Black can't split
20
+ E501,
21
+ # Logging statements should not use f"..." for their first argument
22
+ G004
23
+ max-line-length = 140
24
+ enable-extensions = G
@@ -0,0 +1,41 @@
1
+ name: Run Tests & Deploy
2
+ on: [push, pull_request]
3
+
4
+ jobs:
5
+ build-and-test:
6
+ runs-on: ubuntu-latest
7
+ strategy:
8
+ matrix:
9
+ python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"]
10
+ steps:
11
+ - uses: actions/checkout@v3
12
+ - name: Set up Python ${{ matrix.python-version }}
13
+ uses: actions/setup-python@v4
14
+ with:
15
+ python-version: ${{ matrix.python-version }}
16
+ - name: Install dependencies
17
+ run: |
18
+ python -m pip install --upgrade pip setuptools wheel
19
+ pip install -e '.[tests]'
20
+ - name: Install packages needed for CI
21
+ run: pip install tox pre-commit
22
+ - name: Lint all files
23
+ run: pre-commit run --all-files --show-diff-on-failure
24
+ - name: Run tests
25
+ # Run tox using the version of Python in `PATH`
26
+ run: tox -e py -c tox.ini
27
+ deploy:
28
+ runs-on: ubuntu-latest
29
+ needs: build-and-test
30
+ if: github.ref == 'refs/heads/main'
31
+ steps:
32
+ - uses: actions/checkout@v3
33
+ with:
34
+ fetch-depth: 0
35
+ token: ${{ secrets.PUBLISH_TOKEN }}
36
+ - name: Semantic release
37
+ uses: relekang/python-semantic-release@master
38
+ with:
39
+ # Personal Access Token that belongs to an admin of the repo must
40
+ # be set in PUBLISH_TOKEN secret to bypass `main` branch protection
41
+ github_token: ${{ secrets.PUBLISH_TOKEN }}
@@ -0,0 +1,109 @@
1
+ # --- Default Python .gitignore ---
2
+ # https://github.com/github/gitignore/blob/master/Python.gitignore
3
+
4
+ # Byte-compiled / optimized / DLL files
5
+ __pycache__/
6
+ *.py[cod]
7
+ *$py.class
8
+
9
+ # C extensions
10
+ *.so
11
+
12
+ # Distribution / packaging
13
+ .Python
14
+ env/
15
+ build/
16
+ develop-eggs/
17
+ dist/
18
+ downloads/
19
+ eggs/
20
+ .eggs/
21
+ lib/
22
+ lib64/
23
+ parts/
24
+ sdist/
25
+ var/
26
+ wheels/
27
+ *.egg-info/
28
+ .installed.cfg
29
+ *.egg
30
+
31
+ # PyInstaller
32
+ # Usually these files are written by a python script from a template
33
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
34
+ *.manifest
35
+ *.spec
36
+
37
+ # Installer logs
38
+ pip-log.txt
39
+ pip-delete-this-directory.txt
40
+
41
+ # Unit test / coverage reports
42
+ htmlcov/
43
+ .tox/
44
+ .coverage
45
+ .coverage.*
46
+ .cache
47
+ nosetests.xml
48
+ coverage.xml
49
+ *,cover
50
+ .hypothesis/
51
+ commons/report*.xml
52
+
53
+ # Translations
54
+ *.mo
55
+ *.pot
56
+
57
+ # Django stuff:
58
+ *.log
59
+ local_settings.py
60
+
61
+ # Flask stuff:
62
+ instance/
63
+ .webassets-cache
64
+
65
+ # Scrapy stuff:
66
+ .scrapy
67
+
68
+ # Sphinx documentation
69
+ docs/_build/
70
+
71
+ # PyBuilder
72
+ target/
73
+
74
+ # Jupyter Notebook
75
+ .ipynb_checkpoints
76
+
77
+ # pyenv
78
+ .python-version
79
+
80
+ # celery beat schedule file
81
+ celerybeat-schedule
82
+
83
+ # SageMath parsed files
84
+ *.sage.py
85
+
86
+ # virtualenv
87
+ .venv
88
+ venv/
89
+ ENV/
90
+
91
+ # Spyder project settings
92
+ .spyderproject
93
+
94
+ # Rope project settings
95
+ .ropeproject
96
+
97
+ # IntelliJ IDEA
98
+ .idea/
99
+ *.iml
100
+ .pytest_cache/
101
+ _leptonica_cffi*
102
+ .run/
103
+
104
+ # VS Code
105
+ .vscode/
106
+ .devcontainer
107
+
108
+ # ctags/exuberant-ctags
109
+ tags
@@ -0,0 +1,37 @@
1
+ repos:
2
+ - repo: https://github.com/astral-sh/ruff-pre-commit
3
+ rev: v0.8.2
4
+ hooks:
5
+ - id: ruff
6
+ name: sort imports with ruff
7
+ args: [--select, I, --fix]
8
+ - id: ruff-format
9
+ name: format with ruff
10
+ - repo: https://github.com/pre-commit/mirrors-mypy
11
+ rev: v0.981
12
+ hooks:
13
+ - id: mypy
14
+ additional_dependencies: [
15
+ types-aiofiles,
16
+ types-mock,
17
+ ]
18
+ - repo: local
19
+ hooks:
20
+ - id: commitizen-branch
21
+ name: commitizen conditionally check branch
22
+ description: >
23
+ Commitizen fails when there are no new commits. To overcome this, we created
24
+ tiny wrapper that verifies there are commits to check.
25
+
26
+ Original description from Commitizen:
27
+ Check all commit messages that are already on the current branch but not the
28
+ default branch on the origin repository. Useful for checking messages after
29
+ the fact (e.g., pre-push or in CI) without an expensive check of the entire
30
+ repository history.
31
+ entry: ./conditional-commitizen.sh
32
+ always_run: true
33
+ language: python
34
+ minimum_pre_commit_version: "1.4.3"
35
+ additional_dependencies: [
36
+ 'commitizen',
37
+ ]