oceanum.eidos 0.1.1.dev1__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 (58) hide show
  1. oceanum_eidos-0.1.1.dev1/.gitignore +4 -0
  2. oceanum_eidos-0.1.1.dev1/LICENSE +21 -0
  3. oceanum_eidos-0.1.1.dev1/MANIFEST.in +5 -0
  4. oceanum_eidos-0.1.1.dev1/Makefile +87 -0
  5. oceanum_eidos-0.1.1.dev1/PKG-INFO +50 -0
  6. oceanum_eidos-0.1.1.dev1/README.md +5 -0
  7. oceanum_eidos-0.1.1.dev1/docs/Makefile +20 -0
  8. oceanum_eidos-0.1.1.dev1/docs/_templates/autosummary/class.rst +25 -0
  9. oceanum_eidos-0.1.1.dev1/docs/requirements.txt +5 -0
  10. oceanum_eidos-0.1.1.dev1/docs/source/CHANGELOG.rst +8 -0
  11. oceanum_eidos-0.1.1.dev1/docs/source/about.rst +4 -0
  12. oceanum_eidos-0.1.1.dev1/docs/source/api.rst +18 -0
  13. oceanum_eidos-0.1.1.dev1/docs/source/banner_dark.svg +125 -0
  14. oceanum_eidos-0.1.1.dev1/docs/source/classes/eidoslib/eidoslib.eidos.rst +31 -0
  15. oceanum_eidos-0.1.1.dev1/docs/source/conf.py +135 -0
  16. oceanum_eidos-0.1.1.dev1/docs/source/generated/eidoslib.rst +29 -0
  17. oceanum_eidos-0.1.1.dev1/docs/source/index.rst +30 -0
  18. oceanum_eidos-0.1.1.dev1/docs/source/installation.rst +55 -0
  19. oceanum_eidos-0.1.1.dev1/docs/source/oceanum-favicon.ico +0 -0
  20. oceanum_eidos-0.1.1.dev1/docs/source/usage.rst +61 -0
  21. oceanum_eidos-0.1.1.dev1/oceanum/eidos/README.md +3 -0
  22. oceanum_eidos-0.1.1.dev1/oceanum/eidos/__init__.py +8 -0
  23. oceanum_eidos-0.1.1.dev1/oceanum/eidos/_basemodel.py +30 -0
  24. oceanum_eidos-0.1.1.dev1/oceanum/eidos/base.py +95 -0
  25. oceanum_eidos-0.1.1.dev1/oceanum/eidos/core/__init__.py +4 -0
  26. oceanum_eidos-0.1.1.dev1/oceanum/eidos/core/dataspec.py +92 -0
  27. oceanum_eidos-0.1.1.dev1/oceanum/eidos/core/node.py +148 -0
  28. oceanum_eidos-0.1.1.dev1/oceanum/eidos/core/root.py +71 -0
  29. oceanum_eidos-0.1.1.dev1/oceanum/eidos/core/state.py +86 -0
  30. oceanum_eidos-0.1.1.dev1/oceanum/eidos/features.py +127 -0
  31. oceanum_eidos-0.1.1.dev1/oceanum/eidos/oceanql.py +211 -0
  32. oceanum_eidos-0.1.1.dev1/oceanum/eidos/vegaspec.py +24 -0
  33. oceanum_eidos-0.1.1.dev1/oceanum/eidos/version.py +16 -0
  34. oceanum_eidos-0.1.1.dev1/oceanum/eidos/viewnodes/__init__.py +3 -0
  35. oceanum_eidos-0.1.1.dev1/oceanum/eidos/viewnodes/document.py +28 -0
  36. oceanum_eidos-0.1.1.dev1/oceanum/eidos/viewnodes/plot.py +38 -0
  37. oceanum_eidos-0.1.1.dev1/oceanum/eidos/viewnodes/world.py +413 -0
  38. oceanum_eidos-0.1.1.dev1/oceanum/eidos/worldlayers/__init__.py +6 -0
  39. oceanum_eidos-0.1.1.dev1/oceanum/eidos/worldlayers/feature.py +296 -0
  40. oceanum_eidos-0.1.1.dev1/oceanum/eidos/worldlayers/grid.py +53 -0
  41. oceanum_eidos-0.1.1.dev1/oceanum/eidos/worldlayers/label.py +84 -0
  42. oceanum_eidos-0.1.1.dev1/oceanum/eidos/worldlayers/scenegraph.py +58 -0
  43. oceanum_eidos-0.1.1.dev1/oceanum/eidos/worldlayers/sea_surface.py +46 -0
  44. oceanum_eidos-0.1.1.dev1/oceanum/eidos/worldlayers/track.py +44 -0
  45. oceanum_eidos-0.1.1.dev1/oceanum.eidos.egg-info/PKG-INFO +50 -0
  46. oceanum_eidos-0.1.1.dev1/oceanum.eidos.egg-info/SOURCES.txt +56 -0
  47. oceanum_eidos-0.1.1.dev1/oceanum.eidos.egg-info/dependency_links.txt +1 -0
  48. oceanum_eidos-0.1.1.dev1/oceanum.eidos.egg-info/requires.txt +14 -0
  49. oceanum_eidos-0.1.1.dev1/oceanum.eidos.egg-info/top_level.txt +1 -0
  50. oceanum_eidos-0.1.1.dev1/pyproject.toml +53 -0
  51. oceanum_eidos-0.1.1.dev1/setup.cfg +4 -0
  52. oceanum_eidos-0.1.1.dev1/tests/__init__.py +1 -0
  53. oceanum_eidos-0.1.1.dev1/tests/test_init.py +53 -0
  54. oceanum_eidos-0.1.1.dev1/tests/test_patch.py +19 -0
  55. oceanum_eidos-0.1.1.dev1/tox.ini +59 -0
  56. oceanum_eidos-0.1.1.dev1/utils/gen_init.py +30 -0
  57. oceanum_eidos-0.1.1.dev1/utils/gen_models.sh +50 -0
  58. oceanum_eidos-0.1.1.dev1/utils/pre-commit +11 -0
@@ -0,0 +1,4 @@
1
+ __pycache__
2
+ *.egg-info
3
+ build
4
+ pypi.conf
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2024 oceanum-io
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,5 @@
1
+ include MANIFEST.in
2
+ include README.rst
3
+ include LICENSE
4
+ recursive-include docs *.rst conf.py Makefile
5
+ recursive-include src *.py
@@ -0,0 +1,87 @@
1
+ .PHONY: clean clean-test clean-pyc clean-build docs help
2
+ .DEFAULT_GOAL := help
3
+
4
+ define BROWSER_PYSCRIPT
5
+ import os, webbrowser, sys
6
+
7
+ try:
8
+ from urllib import pathname2url
9
+ except:
10
+ from urllib.request import pathname2url
11
+
12
+ webbrowser.open("file://" + pathname2url(os.path.abspath(sys.argv[1])))
13
+ endef
14
+ export BROWSER_PYSCRIPT
15
+
16
+ define PRINT_HELP_PYSCRIPT
17
+ import re, sys
18
+
19
+ for line in sys.stdin:
20
+ match = re.match(r'^([a-zA-Z_-]+):.*?## (.*)$$', line)
21
+ if match:
22
+ target, help = match.groups()
23
+ print("%-20s %s" % (target, help))
24
+ endef
25
+ export PRINT_HELP_PYSCRIPT
26
+
27
+ BROWSER := python -c "$$BROWSER_PYSCRIPT"
28
+
29
+ help:
30
+ @python -c "$$PRINT_HELP_PYSCRIPT" < $(MAKEFILE_LIST)
31
+
32
+ clean: clean-build clean-pyc clean-test ## remove all build, test, coverage and Python artifacts
33
+
34
+ clean-build: ## remove build artifacts
35
+ rm -fr build/
36
+ rm -fr dist/
37
+ rm -fr .eggs/
38
+ find . -name '*.egg-info' -exec rm -fr {} +
39
+ find . -name '*.egg' -exec rm -f {} +
40
+
41
+ clean-pyc: ## remove Python file artifacts
42
+ find . -name '*.pyc' -exec rm -f {} +
43
+ find . -name '*.pyo' -exec rm -f {} +
44
+ find . -name '*~' -exec rm -f {} +
45
+ find . -name '__pycache__' -exec rm -fr {} +
46
+
47
+ clean-test: ## remove test and coverage artifacts
48
+ rm -fr .tox/
49
+ rm -f .coverage
50
+ rm -fr htmlcov/
51
+ rm -fr .pytest_cache
52
+
53
+ lint: ## check style with flake8
54
+ flake8 oceanum tests
55
+
56
+ test: ## run tests quickly with the default Python
57
+ py.test
58
+
59
+ test-all: ## run tests on every Python version with tox
60
+ tox
61
+
62
+ coverage: ## check code coverage quickly with the default Python
63
+ coverage run --source oceanum -m pytest
64
+ coverage report -m
65
+ coverage html
66
+ $(BROWSER) htmlcov/index.html
67
+
68
+ docs: ## generate Sphinx HTML documentation, including API docs
69
+ rm -f docs/oceanum.rst
70
+ rm -f docs/modules.rst
71
+ sphinx-apidoc -o docs/ oceanum
72
+ $(MAKE) -C docs clean
73
+ $(MAKE) -C docs html
74
+ $(BROWSER) docs/_build/html/index.html
75
+
76
+ servedocs: docs ## compile the docs watching for changes
77
+ watchmedo shell-command -p '*.rst' -c '$(MAKE) -C docs html' -R -D .
78
+
79
+ release: dist ## package and upload a release
80
+ twine upload --config-file pypi.conf dist/*
81
+
82
+ dist: clean ## builds source and wheel package
83
+ python -m build
84
+ ls -l dist
85
+
86
+ install: clean ## install the package to the active Python's site-packages
87
+ pip install .
@@ -0,0 +1,50 @@
1
+ Metadata-Version: 2.1
2
+ Name: oceanum.eidos
3
+ Version: 0.1.1.dev1
4
+ Summary: Python bindings for the EIDOS framework. Create and edit EIDOS specs from python.
5
+ Author-email: "Oceanum.io" <support@oceanum.io>
6
+ License: MIT License
7
+
8
+ Copyright (c) 2024 oceanum-io
9
+
10
+ Permission is hereby granted, free of charge, to any person obtaining a copy
11
+ of this software and associated documentation files (the "Software"), to deal
12
+ in the Software without restriction, including without limitation the rights
13
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
+ copies of the Software, and to permit persons to whom the Software is
15
+ furnished to do so, subject to the following conditions:
16
+
17
+ The above copyright notice and this permission notice shall be included in all
18
+ copies or substantial portions of the Software.
19
+
20
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
26
+ SOFTWARE.
27
+
28
+ Project-URL: Homepage, https://oceanum.io
29
+ Classifier: Development Status :: 3 - Alpha
30
+ Classifier: Intended Audience :: Developers
31
+ Classifier: Programming Language :: Python
32
+ Classifier: Programming Language :: Python :: 3
33
+ Classifier: Programming Language :: Python :: 3.9
34
+ Classifier: Programming Language :: Python :: 3.10
35
+ Classifier: Programming Language :: Python :: 3.11
36
+ Classifier: Programming Language :: Python :: Implementation :: CPython
37
+ Requires-Python: >=3.9
38
+ Description-Content-Type: text/x-rst
39
+ License-File: LICENSE
40
+ Requires-Dist: oceanum
41
+ Requires-Dist: pydantic
42
+ Requires-Dist: altair
43
+ Provides-Extra: test
44
+ Requires-Dist: pytest; extra == "test"
45
+ Requires-Dist: pytest-cov; extra == "test"
46
+ Requires-Dist: tox; extra == "test"
47
+ Provides-Extra: development
48
+ Requires-Dist: datamodel-code-generator; extra == "development"
49
+ Provides-Extra: doc
50
+ Requires-Dist: sphinx; extra == "doc"
@@ -0,0 +1,5 @@
1
+ # eidos-python
2
+
3
+ Python bindings for EIDOS
4
+
5
+ This repo is a submodule of the oceanum library
@@ -0,0 +1,20 @@
1
+ # Minimal makefile for Sphinx documentation
2
+ #
3
+
4
+ # You can set these variables from the command line, and also
5
+ # from the environment for the first two.
6
+ SPHINXOPTS ?=
7
+ SPHINXBUILD ?= sphinx-build
8
+ SOURCEDIR = source
9
+ BUILDDIR = build
10
+
11
+ # Put it first so that "make" without argument is like "make help".
12
+ help:
13
+ @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
14
+
15
+ .PHONY: help Makefile
16
+
17
+ # Catch-all target: route all unknown targets to Sphinx using the new
18
+ # "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
19
+ %: Makefile
20
+ @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
@@ -0,0 +1,25 @@
1
+ {{ fullname | escape | underline}}
2
+
3
+ .. currentmodule:: {{ module }}
4
+
5
+ .. autoclass:: {{ objname }}
6
+
7
+ {% block attributes %}
8
+ {% if attributes %}
9
+ .. rubric:: Attributes
10
+
11
+ .. autosummary::
12
+ {% for item in attributes %}
13
+ ~{{ name }}.{{ item }}
14
+ {%- endfor %}
15
+ {% endif %}
16
+ {% endblock %}
17
+
18
+ {% block methods %}
19
+ {% if methods %}
20
+ .. rubric:: Methods
21
+ {% for item in methods %}
22
+ .. automethod:: {{ item }}
23
+ {%- endfor %}
24
+ {% endif %}
25
+ {% endblock %}
@@ -0,0 +1,5 @@
1
+ oceanum
2
+ autodoc-pydantic
3
+ pydata-sphinx-theme
4
+ sphinxcontrib-programoutput
5
+ decorator
@@ -0,0 +1,8 @@
1
+ ChangeLog
2
+ =========
3
+
4
+ 0.1.0 (2024-02-13)
5
+ ------------------
6
+
7
+ * Initial release.
8
+
@@ -0,0 +1,4 @@
1
+ =====
2
+ About
3
+ =====
4
+ .. include:: ./CHANGELOG.rst
@@ -0,0 +1,18 @@
1
+ =================
2
+ API documentation
3
+ =================
4
+ Version |version|
5
+
6
+ Root specification
7
+ ------------------
8
+ .. autoclass:: eidoslib.Eidos
9
+ :members:
10
+ :exclude-members: BaseModel, ConfigDict, RootModel, Field, constr, model_computed_fields, EidosError
11
+
12
+ Specifcation components
13
+ -----------------------
14
+ .. automodule:: eidoslib
15
+ :members:
16
+ :imported-members:
17
+ :exclude-members: BaseModel, ConfigDict, RootModel, Field, constr, Eidos, model_computed_fields, EidosError, model_post_init
18
+
@@ -0,0 +1,125 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <svg
3
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
4
+ xmlns:cc="http://creativecommons.org/ns#"
5
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
6
+ xmlns:svg="http://www.w3.org/2000/svg"
7
+ xmlns="http://www.w3.org/2000/svg"
8
+ id="svg869"
9
+ version="1.1"
10
+ viewBox="0 0 402.25922 77.736176"
11
+ height="77.736176mm"
12
+ width="402.25922mm">
13
+ <defs
14
+ id="defs863" />
15
+ <metadata
16
+ id="metadata866">
17
+ <rdf:RDF>
18
+ <cc:Work
19
+ rdf:about="">
20
+ <dc:format>image/svg+xml</dc:format>
21
+ <dc:type
22
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
23
+ <dc:title></dc:title>
24
+ </cc:Work>
25
+ </rdf:RDF>
26
+ </metadata>
27
+ <g
28
+ transform="translate(457.32185,-80.092382)"
29
+ id="layer1">
30
+ <g
31
+ transform="translate(-315.06634,-43.372767)"
32
+ aria-label="OCEANUM.IO"
33
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.58333302px;line-height:1.25;font-family:Nunito;-inkscape-font-specification:'Nunito, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#3b547c;fill-opacity:1;stroke:none;stroke-width:0.26458332"
34
+ id="text2135">
35
+ <path
36
+ d="m -34.229371,182.328 q -4.8768,0 -8.483599,-2.1844 -3.6068,-2.2352 -5.5372,-6.35 -1.9304,-4.1656 -1.9304,-9.7536 0,-5.6388 1.9304,-9.7536 1.9304,-4.1656 5.4864,-6.35 3.606799,-2.2352 8.534399,-2.2352 4.9276,0 8.5344,2.2352 3.6068,2.1844 5.5372,6.2992 1.9304,4.1148 1.9304,9.7536 0,5.6388 -1.9304,9.8044 -1.9304,4.1148 -5.5372,6.35 -3.6068,2.1844 -8.5344,2.1844 z m 0,-2.794 q 6.0452,0 9.398,-4.064 3.3528,-4.064 3.3528,-11.4808 0,-7.4168 -3.3528,-11.43 -3.302,-4.064 -9.398,-4.064 -6.0452,0 -9.397999,4.064 -3.302,4.064 -3.302,11.43 0,7.366 3.302,11.4808 3.352799,4.064 9.397999,4.064 z"
37
+ style="font-style:normal;font-variant:normal;font-weight:300;font-stretch:normal;font-size:50.79999924px;font-family:'Nunito Sans';-inkscape-font-specification:'Nunito Sans, Light';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#3b547c;fill-opacity:1;stroke-width:0.26458332"
38
+ id="path4531" />
39
+ <path
40
+ d="m 4.5310263,182.328 q -4.97839992,0 -8.6359999,-2.1844 -3.6575999,-2.2352 -5.6387999,-6.35 -1.9811995,-4.1656 -1.9811995,-9.8044 0,-5.6388 1.9811995,-9.7536 1.9812,-4.1656 5.6387999,-6.35 3.65759998,-2.1844 8.6359999,-2.1844 3.7084,0 6.8071997,1.1684 3.0988,1.1684 5.3848,3.5052 l -1.3208,2.4892 q -2.54,-2.3368 -5.1308,-3.3528 -2.5399997,-1.016 -5.6895997,-1.016 -6.1975999,0 -9.6519998,4.064 -3.4036,4.064 -3.4036,11.43 0,7.4168 3.4036,11.4808 3.4035999,4.064 9.6519998,4.064 3.1496,0 5.6895997,-1.016 2.5908,-1.016 5.1308,-3.3528 l 1.3208,2.4892 q -2.286,2.3368 -5.3848,3.5052 -3.0987997,1.1684 -6.8071997,1.1684 z"
41
+ style="font-style:normal;font-variant:normal;font-weight:300;font-stretch:normal;font-size:50.79999924px;font-family:'Nunito Sans';-inkscape-font-specification:'Nunito Sans, Light';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#3b547c;fill-opacity:1;stroke-width:0.26458332"
42
+ id="path4533" />
43
+ <path
44
+ d="m 24.038137,181.9216 v -35.814 H 46.136136 V 148.8 h -18.9992 v 13.5636 h 17.9832 v 2.7432 h -17.9832 v 14.1224 h 18.9992 v 2.6924 z"
45
+ style="font-style:normal;font-variant:normal;font-weight:300;font-stretch:normal;font-size:50.79999924px;font-family:'Nunito Sans';-inkscape-font-specification:'Nunito Sans, Light';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#3b547c;fill-opacity:1;stroke-width:0.26458332"
46
+ id="path4535" />
47
+ <path
48
+ d="m 80.121191,181.9216 -4.1148,-9.5504 h -19.304 l -4.1148,9.5504 h -3.2004 l 15.5448,-35.814 h 2.8448 l 15.544799,35.814 z m -22.2504,-12.2936 h 16.9672 l -8.4836,-19.812 z"
49
+ style="font-style:normal;font-variant:normal;font-weight:300;font-stretch:normal;font-size:50.79999924px;font-family:'Nunito Sans';-inkscape-font-specification:'Nunito Sans, Light';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#3b547c;fill-opacity:1;stroke-width:0.26458332"
50
+ id="path4537" />
51
+ <path
52
+ d="m 114.41116,146.1076 h 2.9464 v 35.814 h -2.4384 L 92.211557,151.3908 v 30.5308 h -2.9464 v -35.814 h 2.4892 l 22.656803,30.48 z"
53
+ style="font-style:normal;font-variant:normal;font-weight:300;font-stretch:normal;font-size:50.79999924px;font-family:'Nunito Sans';-inkscape-font-specification:'Nunito Sans, Light';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#3b547c;fill-opacity:1;stroke-width:0.26458332"
54
+ id="path4539" />
55
+ <path
56
+ d="m 140.26829,182.328 q -6.858,0 -10.414,-3.6068 -3.5052,-3.6068 -3.5052,-10.6172 v -21.9964 h 3.1496 v 22.352 q 0,11.0744 10.7696,11.0744 5.334,0 8.0264,-2.794 2.7432,-2.794 2.7432,-8.2804 v -22.352 h 3.0988 v 21.9964 q 0,7.0104 -3.556,10.6172 -3.5052,3.6068 -10.3124,3.6068 z"
57
+ style="font-style:normal;font-variant:normal;font-weight:300;font-stretch:normal;font-size:50.79999924px;font-family:'Nunito Sans';-inkscape-font-specification:'Nunito Sans, Light';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#3b547c;fill-opacity:1;stroke-width:0.26458332"
58
+ id="path4541" />
59
+ <path
60
+ d="m 193.96385,146.1076 h 2.6416 v 35.814 h -2.9464 V 152.356 l -12.5476,23.9268 h -2.3368 l -12.6492,-23.7236 0.0508,29.3624 h -2.9972 v -35.814 h 2.6416 l 14.1732,27.1272 z"
61
+ style="font-style:normal;font-variant:normal;font-weight:300;font-stretch:normal;font-size:50.79999924px;font-family:'Nunito Sans';-inkscape-font-specification:'Nunito Sans, Light';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#3b547c;fill-opacity:1;stroke-width:0.26458332"
62
+ id="path4543" />
63
+ <path
64
+ d="m 204.68257,177.5528 h 4.318 v 4.3688 h -4.318 z"
65
+ style="font-style:normal;font-variant:normal;font-weight:300;font-stretch:normal;font-size:50.79999924px;font-family:'Nunito Sans';-inkscape-font-specification:'Nunito Sans, Light';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#3b547c;fill-opacity:1;stroke-width:0.26458332"
66
+ id="path4545" />
67
+ <path
68
+ d="m 217.02694,181.9216 v -35.814 h 3.1496 v 35.814 z"
69
+ style="font-style:normal;font-variant:normal;font-weight:300;font-stretch:normal;font-size:50.79999924px;font-family:'Nunito Sans';-inkscape-font-specification:'Nunito Sans, Light';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#3b547c;fill-opacity:1;stroke-width:0.26458332"
70
+ id="path4547" />
71
+ <path
72
+ d="m 244.00171,182.328 q -4.8768,0 -8.4836,-2.1844 -3.6068,-2.2352 -5.5372,-6.35 -1.9304,-4.1656 -1.9304,-9.7536 0,-5.6388 1.9304,-9.7536 1.9304,-4.1656 5.4864,-6.35 3.6068,-2.2352 8.5344,-2.2352 4.9276,0 8.5344,2.2352 3.6068,2.1844 5.5372,6.2992 1.9304,4.1148 1.9304,9.7536 0,5.6388 -1.9304,9.8044 -1.9304,4.1148 -5.5372,6.35 -3.6068,2.1844 -8.5344,2.1844 z m 0,-2.794 q 6.0452,0 9.398,-4.064 3.3528,-4.064 3.3528,-11.4808 0,-7.4168 -3.3528,-11.43 -3.302,-4.064 -9.398,-4.064 -6.0452,0 -9.398,4.064 -3.302,4.064 -3.302,11.43 0,7.366 3.302,11.4808 3.3528,4.064 9.398,4.064 z"
73
+ style="font-style:normal;font-variant:normal;font-weight:300;font-stretch:normal;font-size:50.79999924px;font-family:'Nunito Sans';-inkscape-font-specification:'Nunito Sans, Light';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-feature-settings:normal;text-align:start;writing-mode:lr-tb;text-anchor:start;fill:#3b547c;fill-opacity:1;stroke-width:0.26458332"
74
+ id="path4549" />
75
+ </g>
76
+ <g
77
+ style="stroke:#3b547c;stroke-opacity:1"
78
+ transform="matrix(0.47646299,0,0,0.46660369,-480.38266,54.149217)"
79
+ id="g3308-6">
80
+ <g
81
+ style="stroke:#3b547c;stroke-opacity:1"
82
+ id="g3296-9">
83
+ <path
84
+ id="path3290-3"
85
+ d="m 212.3,149.9 c -35.8,19.1 -58.2,-11 -80.6,-11 -22.4,0 -44.7,30.1 -80.6,11 1.2,8.7 3.8,17.2 7.7,25.1 38.7,13.5 55.8,-8.4 72.9,-8.4 17.1,0 34.1,22 72.9,8.4 3.9,-7.9 6.5,-16.3 7.7,-25.1 z"
86
+ class="st8"
87
+ style="fill:#dce1f9;stroke:#3b547c;stroke-opacity:1" />
88
+ <path
89
+ id="path3292-3"
90
+ d="m 204.6,175 c -38.7,13.5 -55.8,-8.4 -72.9,-8.4 -17.1,0 -34.1,22 -72.9,8.4 4.4,8.9 10.4,16.9 17.7,23.6 31.1,6.8 43.1,-6.5 55.2,-6.5 12.1,0 24.1,13.3 55.2,6.5 7.3,-6.7 13.3,-14.7 17.7,-23.6 z"
91
+ class="st8"
92
+ style="fill:#dce1f9;stroke:#3b547c;stroke-opacity:1" />
93
+ <path
94
+ id="path3294-8"
95
+ d="m 76.5,198.7 c 31.1,6.8 43.1,-6.5 55.2,-6.5 12.1,0 24.1,13.3 55.2,6.5 -15,13.9 -34.7,21.6 -55.2,21.6 -20.4,-0.1 -40.2,-7.8 -55.2,-21.6 z"
96
+ class="st8"
97
+ style="fill:#dce1f9;stroke:#3b547c;stroke-opacity:1" />
98
+ </g>
99
+ <g
100
+ style="stroke:#3b547c;stroke-opacity:1"
101
+ id="g3306-0">
102
+ <path
103
+ id="path3298-5"
104
+ d="m 58.8,175 c 38.7,13.5 55.8,-8.4 72.9,-8.4 17.1,0 34.1,22 72.9,8.4"
105
+ class="st9"
106
+ style="fill:none;stroke:#3b547c;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1" />
107
+ <path
108
+ id="path3300-6"
109
+ d="m 51.1,149.9 c 35.8,19.1 58.2,-11 80.6,-11 22.4,0 44.7,30.1 80.6,11"
110
+ class="st9"
111
+ style="fill:none;stroke:#3b547c;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1" />
112
+ <path
113
+ id="path3302-6"
114
+ d="m 76.5,198.7 c 31.1,6.8 43.1,-6.5 55.2,-6.5 12.1,0 24.1,13.3 55.2,6.5"
115
+ class="st9"
116
+ style="fill:none;stroke:#3b547c;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1" />
117
+ <path
118
+ id="path3304-4"
119
+ d="m 131.7,220.2 c 10.3,0 20.4,-1.9 29.9,-5.7 10.3,-4.1 19.7,-10.2 27.6,-18.1 7.9,-7.9 14,-17.2 18.1,-27.6 3.8,-9.5 5.7,-19.7 5.7,-29.9 0,-10.3 -1.9,-20.4 -5.7,-29.9 -4.1,-10.3 -10.2,-19.7 -18.1,-27.6 -7.9,-7.9 -17.2,-14 -27.6,-18.1 -9.5,-3.8 -19.7,-5.7 -29.9,-5.7 -10.3,0 -20.4,1.9 -29.9,5.7 -10.3,4.1 -19.7,10.2 -27.6,18.1 -7.9,7.9 -14,17.2 -18.1,27.6 -3.8,9.5 -5.7,19.7 -5.7,29.9 0,10.3 1.9,20.4 5.7,29.9 4.1,10.3 10.2,19.7 18.1,27.6 7.9,7.9 17.2,14 27.6,18.1 9.5,3.8 19.6,5.7 29.9,5.7 z"
120
+ class="st9"
121
+ style="fill:none;stroke:#3b547c;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1" />
122
+ </g>
123
+ </g>
124
+ </g>
125
+ </svg>
@@ -0,0 +1,31 @@
1
+ eidoslib.eidos
2
+ ==============
3
+
4
+ .. automodule:: eidoslib.eidos
5
+
6
+
7
+
8
+
9
+
10
+
11
+
12
+
13
+
14
+
15
+
16
+ .. rubric:: Classes
17
+
18
+ .. autosummary::
19
+
20
+ ColorScheme
21
+ DataType
22
+ NodeType
23
+
24
+
25
+
26
+
27
+
28
+
29
+
30
+
31
+
@@ -0,0 +1,135 @@
1
+ #!/usr/bin/env python
2
+ # -*- coding: utf-8 -*-
3
+ #
4
+ # oceanum documentation build configuration file, created by
5
+ # sphinx-quickstart on Fri Jun 9 13:47:02 2017.
6
+ #
7
+ # This file is execfile()d with the current directory set to its
8
+ # containing dir.
9
+ #
10
+ # Note that not all possible configuration values are present in this
11
+ # autogenerated file.
12
+ #
13
+ # All configuration values have a default; values that are commented out
14
+ # serve to show the default.
15
+
16
+ # If extensions (or modules to document with autodoc) are in another
17
+ # directory, add these directories to sys.path here. If the directory is
18
+ # relative to the documentation root, use os.path.abspath to make it
19
+ # absolute, like shown here.
20
+ #
21
+ import os
22
+ import sys
23
+
24
+ sys.path.insert(0, os.path.abspath("../.."))
25
+
26
+ import eidoslib
27
+
28
+ # -- General configuration ---------------------------------------------
29
+
30
+ # If your documentation needs a minimal Sphinx version, state it here.
31
+ #
32
+ # needs_sphinx = '1.0'
33
+
34
+ # Add any Sphinx extension module names here, as strings. They can be
35
+ # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
36
+ extensions = [
37
+ "sphinx.ext.autodoc",
38
+ "sphinx.ext.autosummary",
39
+ "sphinx.ext.viewcode",
40
+ "sphinx.ext.napoleon",
41
+ "sphinxcontrib.autodoc_pydantic",
42
+ "sphinxcontrib.programoutput",
43
+ "enum_tools.autoenum",
44
+ ]
45
+
46
+ # Add any paths that contain templates here, relative to this directory.
47
+ templates_path = ["_templates"]
48
+
49
+ # The suffix(es) of source filenames.
50
+ # You can specify multiple suffix as a list of string:
51
+ #
52
+ # source_suffix = ['.rst', '.md']
53
+ source_suffix = ".rst"
54
+
55
+ # The master toctree document.
56
+ master_doc = "index"
57
+
58
+ # General information about the project.
59
+ project = "oceanum"
60
+ copyright = "2024, Oceanum Developers"
61
+ author = "Oceanum Developers"
62
+
63
+ # The version info for the project you're documenting, acts as replacement
64
+ # for |version| and |release|, also used in various other places throughout
65
+ # the built documents.
66
+ #
67
+ # The short X.Y version.
68
+ version = eidoslib.version
69
+ # The full version, including alpha/beta/rc tags.
70
+ release = eidoslib.version
71
+
72
+ # The language for content autogenerated by Sphinx. Refer to documentation
73
+ # for a list of supported languages.
74
+ #
75
+ # This is also used if you do content translation via gettext catalogs.
76
+ # Usually you set "language" from the command line for these cases.
77
+ language = None
78
+
79
+ # List of patterns, relative to source directory, that match files and
80
+ # directories to ignore when looking for source files.
81
+ # This patterns also effect to html_static_path and html_extra_path
82
+ exclude_patterns = ["_build", "Thumbs.db", ".DS_Store"]
83
+
84
+ # The name of the Pygments (syntax highlighting) style to use.
85
+ pygments_style = "sphinx"
86
+
87
+ # If true, `todo` and `todoList` produce output, else they produce nothing.
88
+ todo_include_todos = False
89
+
90
+
91
+ # -- Options for HTML output -------------------------------------------
92
+
93
+ # The theme to use for HTML and HTML Help pages. See the documentation for
94
+ # a list of builtin themes.
95
+ #
96
+ html_theme = "pydata_sphinx_theme"
97
+ html_logo = "banner_dark.svg"
98
+ html_favicon = "oceanum-favicon.ico"
99
+
100
+ # Theme options are theme-specific and customize the look and feel of a
101
+ # theme further. For a list of options available for each theme, see the
102
+ # documentation.
103
+ #
104
+ html_theme_options = {
105
+ "collapse_navigation": True,
106
+ "show_nav_level": 2,
107
+ "secondary_sidebar_items": ["page-toc", "edit-this-page", "sourcelink"],
108
+ "icon_links": [
109
+ {
110
+ "name": "GitHub",
111
+ "url": "https://github.com/oceanum-io/eidos-python",
112
+ "icon": "fab fa-github",
113
+ "type": "fontawesome",
114
+ }
115
+ ],
116
+ }
117
+
118
+ html_sidebars = {
119
+ "**": ["globaltoc.html"],
120
+ }
121
+
122
+ # Add any paths that contain custom static files (such as style sheets) here,
123
+ # relative to this directory. They are copied after the builtin static files,
124
+ # so a file named "default.css" will overwrite the builtin "default.css".
125
+ html_static_path = ["_static"]
126
+
127
+
128
+ autoclass_content = "class"
129
+
130
+ autodoc_pydantic_model_show_json = False
131
+ autodoc_pydantic_model_show_config_summary = False
132
+ autodoc_pydantic_model_show_validator_summary = False
133
+ autodoc_pydantic_model_show_validator_members = False
134
+
135
+ autodoc_default_options = {"autosummary": True, "autosummary-members": False}
@@ -0,0 +1,29 @@
1
+ eidoslib
2
+ ========
3
+
4
+ .. automodule:: eidoslib
5
+
6
+
7
+
8
+
9
+
10
+
11
+
12
+
13
+
14
+
15
+
16
+
17
+
18
+
19
+
20
+ .. rubric:: Exceptions
21
+
22
+ .. autosummary::
23
+
24
+ EidosError
25
+
26
+
27
+
28
+
29
+
@@ -0,0 +1,30 @@
1
+ Oceanum python
2
+ ==============
3
+
4
+ Python library for the `Oceanum.io`_ platform
5
+ ---------------------------------------------
6
+
7
+ The oceanum python library provides a simple interface to `Oceanum.io`_, an advanced
8
+ cloud service for interacting with environmental data.
9
+
10
+ Documentation
11
+ -------------
12
+
13
+ **Contents:**
14
+
15
+ * :doc:`installation`
16
+ * :doc:`usage`
17
+ * :doc:`api`
18
+ * :doc:`about`
19
+
20
+
21
+ .. toctree::
22
+ :maxdepth: 3
23
+
24
+ installation
25
+ usage
26
+ api
27
+ about
28
+
29
+
30
+ .. _`Oceanum.io`: https://oceanum.io/