mat3ra-jode 2026.7.9.post0__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 (35) hide show
  1. mat3ra_jode-2026.7.9.post0/.eslintrc.json +20 -0
  2. mat3ra_jode-2026.7.9.post0/.github/workflows/cicd.yml +90 -0
  3. mat3ra_jode-2026.7.9.post0/.gitignore +7 -0
  4. mat3ra_jode-2026.7.9.post0/.husky/pre-commit +6 -0
  5. mat3ra_jode-2026.7.9.post0/.nycrc +30 -0
  6. mat3ra_jode-2026.7.9.post0/.pre-commit-config.yaml +26 -0
  7. mat3ra_jode-2026.7.9.post0/.prettierrc +6 -0
  8. mat3ra_jode-2026.7.9.post0/LICENSE.md +15 -0
  9. mat3ra_jode-2026.7.9.post0/PKG-INFO +70 -0
  10. mat3ra_jode-2026.7.9.post0/README.md +18 -0
  11. mat3ra_jode-2026.7.9.post0/package-lock.json +11013 -0
  12. mat3ra_jode-2026.7.9.post0/package.json +81 -0
  13. mat3ra_jode-2026.7.9.post0/pyproject.toml +56 -0
  14. mat3ra_jode-2026.7.9.post0/setup.cfg +4 -0
  15. mat3ra_jode-2026.7.9.post0/src/js/Job.ts +331 -0
  16. mat3ra_jode-2026.7.9.post0/src/js/dataset.ts +15 -0
  17. mat3ra_jode-2026.7.9.post0/src/js/enums.ts +97 -0
  18. mat3ra_jode-2026.7.9.post0/src/js/generated/JobSchemaMixin.ts +203 -0
  19. mat3ra_jode-2026.7.9.post0/src/js/index.ts +13 -0
  20. mat3ra_jode-2026.7.9.post0/src/js/utils.ts +91 -0
  21. mat3ra_jode-2026.7.9.post0/src/py/mat3ra/__init__.py +1 -0
  22. mat3ra_jode-2026.7.9.post0/src/py/mat3ra/jode/__init__.py +8 -0
  23. mat3ra_jode-2026.7.9.post0/src/py/mat3ra/jode/job.py +74 -0
  24. mat3ra_jode-2026.7.9.post0/src/py/mat3ra_jode.egg-info/PKG-INFO +70 -0
  25. mat3ra_jode-2026.7.9.post0/src/py/mat3ra_jode.egg-info/SOURCES.txt +33 -0
  26. mat3ra_jode-2026.7.9.post0/src/py/mat3ra_jode.egg-info/dependency_links.txt +1 -0
  27. mat3ra_jode-2026.7.9.post0/src/py/mat3ra_jode.egg-info/requires.txt +21 -0
  28. mat3ra_jode-2026.7.9.post0/src/py/mat3ra_jode.egg-info/scm_file_list.json +30 -0
  29. mat3ra_jode-2026.7.9.post0/src/py/mat3ra_jode.egg-info/scm_version.json +8 -0
  30. mat3ra_jode-2026.7.9.post0/src/py/mat3ra_jode.egg-info/top_level.txt +1 -0
  31. mat3ra_jode-2026.7.9.post0/tests/js/Job.test.ts +205 -0
  32. mat3ra_jode-2026.7.9.post0/tests/js/setup.js +1 -0
  33. mat3ra_jode-2026.7.9.post0/tests/py/test_job.py +90 -0
  34. mat3ra_jode-2026.7.9.post0/tsconfig-transpile.json +9 -0
  35. mat3ra_jode-2026.7.9.post0/tsconfig.json +7 -0
@@ -0,0 +1,20 @@
1
+ {
2
+ "extends": [
3
+ "@exabyte-io/eslint-config"
4
+ ],
5
+ "ignorePatterns": [
6
+ "dist/"
7
+ ],
8
+ "settings": {
9
+ "import/resolver": {
10
+ "node": {
11
+ "extensions": [
12
+ ".js",
13
+ ".jsx",
14
+ ".ts",
15
+ ".tsx"
16
+ ]
17
+ }
18
+ }
19
+ }
20
+ }
@@ -0,0 +1,90 @@
1
+ name: Continuous Testing and Publication
2
+
3
+ on: [push]
4
+
5
+ concurrency:
6
+ group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
7
+ cancel-in-progress: true
8
+
9
+ jobs:
10
+ run-py-linter:
11
+ runs-on: ubuntu-24.04
12
+ strategy:
13
+ matrix:
14
+ python-version: [3.10.13]
15
+ steps:
16
+ - uses: actions/checkout@v7
17
+ with: { lfs: true }
18
+ - uses: actions/checkout@v7
19
+ with: { repository: Exabyte-io/actions, token: "${{ secrets.BOT_GITHUB_TOKEN }}", path: actions }
20
+ - name: Run ruff linter
21
+ uses: ./actions/py/lint
22
+ with: { python-version: "${{ matrix.python-version }}" }
23
+
24
+ run-py-tests:
25
+ needs: run-py-linter
26
+ runs-on: ubuntu-24.04
27
+ strategy:
28
+ matrix:
29
+ python-version: [3.10.x, 3.11.x, 3.12.x, 3.13.x]
30
+ steps:
31
+ - uses: actions/checkout@v7
32
+ with: { lfs: true }
33
+ - uses: actions/checkout@v7
34
+ with: { repository: Exabyte-io/actions, token: "${{ secrets.BOT_GITHUB_TOKEN }}", path: actions }
35
+ - name: Run python unit tests
36
+ uses: ./actions/py/pytest
37
+ with:
38
+ python-version: ${{ matrix.python-version }}
39
+ unit-test-directory: tests/py
40
+ bot-ssh-key: ${{ secrets.BOT_GITHUB_KEY }}
41
+
42
+ run-js-tests:
43
+ runs-on: ubuntu-latest
44
+ strategy:
45
+ matrix:
46
+ node-version: [20.x, 22.x]
47
+ steps:
48
+ - uses: actions/checkout@v7
49
+ with: { lfs: true }
50
+ - uses: actions/checkout@v7
51
+ with: { repository: Exabyte-io/actions, token: "${{ secrets.BOT_GITHUB_TOKEN }}", path: actions }
52
+ - name: Run JS validate
53
+ uses: ./actions/js/validate
54
+ with: { node-version: '20.x', skip-eslint: 'true' }
55
+ - name: Run JS tests
56
+ uses: ./actions/js/test
57
+ with: { node-version: "${{ matrix.node-version }}" }
58
+
59
+ publish-js-package:
60
+ needs: [run-js-tests, run-py-tests, run-py-linter]
61
+ runs-on: ubuntu-latest
62
+ if: github.ref_name == 'main'
63
+ steps:
64
+ - uses: actions/checkout@v7
65
+ - uses: actions/checkout@v7
66
+ with: { repository: Exabyte-io/actions, token: "${{ secrets.BOT_GITHUB_TOKEN }}", path: actions }
67
+ - name: Publish JS release
68
+ uses: ./actions/js/publish
69
+ with:
70
+ node-version: 20.x
71
+ npm-token: ${{ secrets.NPM_TOKEN }}
72
+ github-token: ${{ secrets.BOT_GITHUB_TOKEN }}
73
+ verify-tests: 'false'
74
+
75
+ publish-py-package:
76
+ needs: [run-js-tests, run-py-tests, run-py-linter, publish-js-package]
77
+ runs-on: ubuntu-latest
78
+ if: github.ref_name == 'main'
79
+ steps:
80
+ - uses: actions/checkout@v7
81
+ with: { lfs: true }
82
+ - uses: actions/checkout@v7
83
+ with: { repository: Exabyte-io/actions, token: "${{ secrets.BOT_GITHUB_TOKEN }}", path: actions }
84
+ - name: Publish python release
85
+ uses: ./actions/py/publish
86
+ with:
87
+ python-version: 3.10.13
88
+ github-token: ${{ secrets.BOT_GITHUB_TOKEN }}
89
+ pypi-api-token: ${{ secrets.PYPI_API_TOKEN }}
90
+ publish-tag: 'false'
@@ -0,0 +1,7 @@
1
+ node_modules/
2
+ *.tgz
3
+ .nyc_output/
4
+ coverage/
5
+ __pycache__/
6
+ *.egg-info/
7
+ .pytest_cache/
@@ -0,0 +1,6 @@
1
+ #!/bin/sh
2
+ . "$(dirname "$0")/_/husky.sh"
3
+
4
+ npx lint-staged
5
+ npm run transpile
6
+ git add dist/
@@ -0,0 +1,30 @@
1
+ {
2
+ "all": true,
3
+ "include": [
4
+ "src/**/*.js",
5
+ "src/**/*.jsx",
6
+ "src/**/*.ts"
7
+ ],
8
+ "exclude": [
9
+ "src/js/generated/**/*",
10
+ "tests/**/*",
11
+ "**/*.test.ts",
12
+ "**/*.spec.ts",
13
+ "**/*.d.ts"
14
+ ],
15
+ "reporter": [
16
+ "text",
17
+ "html",
18
+ "lcov"
19
+ ],
20
+ "check-coverage": true,
21
+ "branches": 80,
22
+ "lines": 85,
23
+ "functions": 80,
24
+ "statements": 85,
25
+ "sourceMap": true,
26
+ "instrument": true,
27
+ "require": [
28
+ "ts-node/register"
29
+ ]
30
+ }
@@ -0,0 +1,26 @@
1
+ repos:
2
+ - repo: https://github.com/Exabyte-io/pre-commit-hooks
3
+ rev: 2023.6.28
4
+ hooks:
5
+ - id: ruff
6
+ exclude: ^tests/fixtures*
7
+ - id: black
8
+ exclude: ^tests/fixtures*
9
+ - id: isort
10
+ exclude: ^tests/fixtures*
11
+ - id: mypy
12
+ exclude: ^tests/fixtures*
13
+ - id: check-yaml
14
+ exclude: ^tests/fixtures*
15
+ - id: end-of-file-fixer
16
+ exclude: ^tests/fixtures*|^dist*
17
+ - id: trailing-whitespace
18
+ exclude: ^tests/fixtures*|^dist*
19
+ - repo: local
20
+ hooks:
21
+ - id: lint-staged
22
+ name: lint-staged
23
+ language: node
24
+ entry: npx lint-staged
25
+ verbose: true
26
+ pass_filenames: false
@@ -0,0 +1,6 @@
1
+ {
2
+ "printWidth": 100,
3
+ "tabWidth": 4,
4
+ "trailingComma": "all",
5
+ "singleQuote": false
6
+ }
@@ -0,0 +1,15 @@
1
+ # LICENSE
2
+
3
+ Copyright 2026 Exabyte Inc. (Mat3ra.com)
4
+
5
+ Licensed under the Apache License, Version 2.0 (the "License");
6
+ you may not use this file except in compliance with the License.
7
+ You may obtain a copy of the License at
8
+
9
+ http://www.apache.org/licenses/LICENSE-2.0
10
+
11
+ Unless required by applicable law or agreed to in writing, software
12
+ distributed under the License is distributed on an "AS IS" BASIS,
13
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ See the License for the specific language governing permissions and
15
+ limitations under the License.
@@ -0,0 +1,70 @@
1
+ Metadata-Version: 2.4
2
+ Name: mat3ra-jode
3
+ Version: 2026.7.9.post0
4
+ Summary: JOb DEsign elements — non-visual Job class, enums, and utilities.
5
+ Author-email: "Exabyte Inc." <info@mat3ra.com>
6
+ License: # LICENSE
7
+
8
+ Copyright 2026 Exabyte Inc. (Mat3ra.com)
9
+
10
+ Licensed under the Apache License, Version 2.0 (the "License");
11
+ you may not use this file except in compliance with the License.
12
+ You may obtain a copy of the License at
13
+
14
+ http://www.apache.org/licenses/LICENSE-2.0
15
+
16
+ Unless required by applicable law or agreed to in writing, software
17
+ distributed under the License is distributed on an "AS IS" BASIS,
18
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19
+ See the License for the specific language governing permissions and
20
+ limitations under the License.
21
+
22
+ Classifier: Programming Language :: Python
23
+ Classifier: Programming Language :: Python :: 3
24
+ Classifier: Programming Language :: Python :: 3.10
25
+ Classifier: Programming Language :: Python :: 3.11
26
+ Classifier: Programming Language :: Python :: 3.12
27
+ Classifier: Programming Language :: Python :: 3.13
28
+ Classifier: Development Status :: 3 - Alpha
29
+ Classifier: Topic :: Software Development
30
+ Requires-Python: >=3.10
31
+ Description-Content-Type: text/markdown
32
+ License-File: LICENSE.md
33
+ Requires-Dist: mat3ra-code
34
+ Requires-Dist: mat3ra-esse
35
+ Requires-Dist: mat3ra-made
36
+ Requires-Dist: mat3ra-wode
37
+ Provides-Extra: dev
38
+ Requires-Dist: pre-commit; extra == "dev"
39
+ Requires-Dist: black; extra == "dev"
40
+ Requires-Dist: ruff; extra == "dev"
41
+ Requires-Dist: isort; extra == "dev"
42
+ Requires-Dist: mypy; extra == "dev"
43
+ Requires-Dist: pip-tools; extra == "dev"
44
+ Provides-Extra: tests
45
+ Requires-Dist: coverage[toml]>=5.3; extra == "tests"
46
+ Requires-Dist: pytest; extra == "tests"
47
+ Requires-Dist: pytest-cov; extra == "tests"
48
+ Provides-Extra: all
49
+ Requires-Dist: mat3ra-jode[tests]; extra == "all"
50
+ Requires-Dist: mat3ra-jode[dev]; extra == "all"
51
+ Dynamic: license-file
52
+
53
+ [![npm version](https://badge.fury.io/js/%40mat3ra%2Fjode.svg)](https://badge.fury.io/js/%40mat3ra%2Fjode)
54
+ [![License: Apache](https://img.shields.io/badge/License-Apache-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0)
55
+
56
+ # Jode
57
+
58
+ JOb DEsign elements — non-visual Job class, enums, and utilities.
59
+
60
+ ## Installation
61
+
62
+ ```bash
63
+ npm install @mat3ra/jode
64
+ ```
65
+
66
+ ## Python
67
+
68
+ ```bash
69
+ pip install mat3ra-jode
70
+ ```
@@ -0,0 +1,18 @@
1
+ [![npm version](https://badge.fury.io/js/%40mat3ra%2Fjode.svg)](https://badge.fury.io/js/%40mat3ra%2Fjode)
2
+ [![License: Apache](https://img.shields.io/badge/License-Apache-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0)
3
+
4
+ # Jode
5
+
6
+ JOb DEsign elements — non-visual Job class, enums, and utilities.
7
+
8
+ ## Installation
9
+
10
+ ```bash
11
+ npm install @mat3ra/jode
12
+ ```
13
+
14
+ ## Python
15
+
16
+ ```bash
17
+ pip install mat3ra-jode
18
+ ```