mat3ra-esse 2024.4.8.post5__py3-none-any.whl → 2024.4.9.post0__py3-none-any.whl

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.

Potentially problematic release.


This version of mat3ra-esse might be problematic. Click here for more details.

@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mat3ra-esse
3
- Version: 2024.4.8.post5
3
+ Version: 2024.4.9.post0
4
4
  Summary: Excellent Source of Schemas and Examples.
5
5
  Author-email: "Exabyte Inc." <info@mat3ra.com>
6
6
  License: # LICENSE
@@ -49,7 +49,6 @@ The latest variants of schemas and examples are available at [schemas.mat3ra.com
49
49
 
50
50
  ESSE has a dual-nature as both a Python and a Node.js package.
51
51
 
52
-
53
52
  ## 1. Installation
54
53
 
55
54
  ### 1.1. Python
@@ -78,7 +77,6 @@ pip install -e PATH_TO_ESSE_REPOSITORY
78
77
  npm install @mat3ra/esse
79
78
  ```
80
79
 
81
-
82
80
  ## 2. Usage
83
81
 
84
82
  ESSE contains separate but equivalent interfaces for Python and Javascript.
@@ -102,7 +100,6 @@ const helper = new ESSE();
102
100
  const schema = helper.getSchemaById("material");
103
101
  ```
104
102
 
105
-
106
103
  ## 3. Directory Structure
107
104
 
108
105
  ESSE contains 3 main directories, [schema](schema), [example](example) and [src](src) outlined below.
@@ -125,12 +122,11 @@ This directory contains the examples formed according to the schemas and impleme
125
122
 
126
123
  This directory contains Python and Javascript interfaces implementing the functionality to access and validate schemas and examples.
127
124
 
128
-
129
125
  ## 4. Conventions
130
126
 
131
127
  ### 4.1. Generative vs Non-generative keys
132
- Generative keys are the fields which allow for user input prior to calculation of the final property values. A flag is included in the schema comments on the fields in [property schemas](schema/properties_directory): `isGenerative:true` marks which fields to use as subschemas in the generation of a user input schema. On properties allowing user inputs, additional fields may be tagged, as in [the `file_content` property](schema/properties_directory/non-scalar/file_content.json)
133
128
 
129
+ Generative keys are the fields which allow for user input prior to calculation of the final property values. A flag is included in the schema comments on the fields in [property schemas](schema/properties_directory): `isGenerative:true` marks which fields to use as subschemas in the generation of a user input schema. On properties allowing user inputs, additional fields may be tagged, as in [the `file_content` property](schema/properties_directory/non-scalar/file_content.json)
134
130
 
135
131
  ## 5. Development
136
132
 
@@ -155,13 +151,19 @@ NOTE: The PY and JS modules are built from the same JSON sources, but using diff
155
151
  When developing in python the following should be taken into account:
156
152
 
157
153
  1. The modules containing the schemas and examples are generated using the [build-schemas.py](./build_schemas.py) script. There is a setup for it to be run automatically on every commit, but it is recommended to run it manually before committing to make sure that the changes are reflected in the modules. This can be done with `pre-commit run --all-files`. The pre-commit package can be installed with `pip install pre-commit`. To rebuild schemas manually, run (note `-e` in install):
154
+
158
155
  ```bash
159
156
  virtualenv .venv
160
157
  source .venv/bin/activate
161
158
  pip install -e ."[tests]"
159
+ pip install pre-commit
160
+ pre-commit --install
161
+ git config --unset-all core.hooksPath
162
162
  python build_schemas.py
163
163
  ```
164
+
164
165
  2. Tests can be run using the following commands:
166
+
165
167
  ```bash
166
168
  virtualenv .venv
167
169
  source .venv/bin/activate
@@ -172,6 +174,7 @@ When developing in python the following should be taken into account:
172
174
  ### 5.2. Development in Javascript/Typescript
173
175
 
174
176
  See [package.json](package.json) for the list of available npm commands. The JS modules are generated using the [build_schema.js](./build_schema.js) script. There is a setup for it to be run automatically when the package is installed (see "transpile" directive). To rebuild schemas manually, run:
177
+
175
178
  ```bash
176
179
  npm install
177
180
  npm run transpile
@@ -186,7 +189,6 @@ Other suggestions:
186
189
  - Use unique IDs for schemas
187
190
  - Do not use circular references in the schemas, instead leave the type as object and add explanation to description.
188
191
 
189
-
190
192
  ## Links
191
193
 
192
194
  [^1]: [Data-centric online ecosystem for digital materials science](https://arxiv.org/pdf/1902.10838.pdf)
@@ -4,7 +4,7 @@ mat3ra/esse/utils.py,sha256=-FexdtkOYGEWmwJUwWDuJferibc7M1YzUH738Bffuxo,1727
4
4
  mat3ra/esse/data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
5
  mat3ra/esse/data/examples.py,sha256=foCkPV0bI0Mu3aoNB8ot6W6moANpdD8-3l6DxSg1w1s,45982
6
6
  mat3ra/esse/data/properties.py,sha256=geWFIVIJbdn2Q_JG3Mz36oQ_dXeZZwnmlS_NgszvHUY,6099
7
- mat3ra/esse/data/schemas.py,sha256=HDojiE8i1g5iR3LDXuKDGurhZ20chjd-rdtVr_7nR2Q,1711401
7
+ mat3ra/esse/data/schemas.py,sha256=bNnrHiSmecFxtG_zFr3EvRNx_8cgPzknB4oyViT0PSk,1711404
8
8
  mat3ra/esse/models/__init__.py,sha256=A62Az-FUlQtAtprjSTr4WDHA1Xgan5YN8H9u_8yLEq4,78
9
9
  mat3ra/esse/models/element.py,sha256=zS58bFByO5oJ4V0jy-JVxFHkNxt0Mw_BJeqYqFIBWyU,1399
10
10
  mat3ra/esse/models/project.py,sha256=jIXh7TYx80gi2cBoI4gDbkSbxa6lJopE3OFZEQcdjok,1959
@@ -446,8 +446,8 @@ mat3ra/esse/models/workflow/unit/runtime/_runtime_item_name_object.py,sha256=P8r
446
446
  mat3ra/esse/models/workflow/unit/runtime/_runtime_item_string.py,sha256=_sP19oWMA1EGFcQmOlH2bzFNQSPmBXofP-PBmj57AdU,354
447
447
  mat3ra/esse/models/workflow/unit/runtime/runtime_item.py,sha256=cbr4N6MhbmePHgPFcFDW7Y7Tp9cC-szLmRDbo46NlTk,471
448
448
  mat3ra/esse/models/workflow/unit/runtime/runtime_items.py,sha256=oYNxknQqD4tD9I-_L_wg12UOt4FyFm-q15-fObGk18w,943
449
- mat3ra_esse-2024.4.8.post5.dist-info/LICENSE.md,sha256=CBGo1CDw-8EWCk7x9HOiF-OShdnHY6j__TjFyZPpQME,563
450
- mat3ra_esse-2024.4.8.post5.dist-info/METADATA,sha256=VyjJmHTvl1rI-kgWgLgoba-bF1cK4TW0eoZaWU4XSM8,8803
451
- mat3ra_esse-2024.4.8.post5.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
452
- mat3ra_esse-2024.4.8.post5.dist-info/top_level.txt,sha256=GizAtvIqqIcCWShlThl_mgig_bZs_LFyqVah6wrGHIs,7
453
- mat3ra_esse-2024.4.8.post5.dist-info/RECORD,,
449
+ mat3ra_esse-2024.4.9.post0.dist-info/LICENSE.md,sha256=CBGo1CDw-8EWCk7x9HOiF-OShdnHY6j__TjFyZPpQME,563
450
+ mat3ra_esse-2024.4.9.post0.dist-info/METADATA,sha256=nOkjsjFrDOcWdKUtQV0XT45CoqTftH5xUdKZJfACVrc,8896
451
+ mat3ra_esse-2024.4.9.post0.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
452
+ mat3ra_esse-2024.4.9.post0.dist-info/top_level.txt,sha256=GizAtvIqqIcCWShlThl_mgig_bZs_LFyqVah6wrGHIs,7
453
+ mat3ra_esse-2024.4.9.post0.dist-info/RECORD,,