pfc-geometry 0.2.5__tar.gz → 0.2.6__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 (37) hide show
  1. pfc_geometry-0.2.6/.github/workflows/publish_pypi.yml +99 -0
  2. pfc_geometry-0.2.6/.gitignore +140 -0
  3. pfc_geometry-0.2.6/.vscode/settings.json +16 -0
  4. {pfc_geometry-0.2.5/pfc_geometry.egg-info → pfc_geometry-0.2.6}/PKG-INFO +9 -5
  5. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/README.md +0 -1
  6. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/geometry/base.py +0 -1
  7. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6/pfc_geometry.egg-info}/PKG-INFO +9 -5
  8. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/pfc_geometry.egg-info/SOURCES.txt +9 -2
  9. pfc_geometry-0.2.6/pfc_geometry.egg-info/requires.txt +7 -0
  10. pfc_geometry-0.2.6/pyproject.toml +23 -0
  11. pfc_geometry-0.2.5/pfc_geometry.egg-info/requires.txt → pfc_geometry-0.2.6/requirements-dev.txt +1 -0
  12. pfc_geometry-0.2.6/requirements.txt +2 -0
  13. pfc_geometry-0.2.6/setup.cfg +4 -0
  14. pfc_geometry-0.2.6/tests/__init__.py +0 -0
  15. pfc_geometry-0.2.6/tests/quat_body_diff_test.csv +827 -0
  16. pfc_geometry-0.2.6/tests/test_remove_outliers.csv +22 -0
  17. pfc_geometry-0.2.5/setup.cfg +0 -19
  18. pfc_geometry-0.2.5/setup.py +0 -16
  19. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/LICENSE +0 -0
  20. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/geometry/__init__.py +0 -0
  21. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/geometry/coordinate_frame.py +0 -0
  22. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/geometry/gps.py +0 -0
  23. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/geometry/mass.py +0 -0
  24. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/geometry/point.py +0 -0
  25. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/geometry/quaternion.py +0 -0
  26. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/geometry/testing.py +0 -0
  27. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/geometry/time.py +0 -0
  28. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/geometry/transformation.py +0 -0
  29. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/pfc_geometry.egg-info/dependency_links.txt +0 -0
  30. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/pfc_geometry.egg-info/top_level.txt +0 -0
  31. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/tests/test_base.py +0 -0
  32. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/tests/test_coord.py +0 -0
  33. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/tests/test_gps.py +0 -0
  34. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/tests/test_mass.py +0 -0
  35. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/tests/test_point.py +0 -0
  36. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/tests/test_quaternion.py +0 -0
  37. {pfc_geometry-0.2.5 → pfc_geometry-0.2.6}/tests/test_transform.py +0 -0
@@ -0,0 +1,99 @@
1
+ #https://packaging.python.org/en/latest/guides/publishing-package-distribution-releases-using-github-actions-ci-cd-workflows/
2
+ name: Publish to PyPI and TestPyPI
3
+
4
+ on:
5
+ push:
6
+ branches:
7
+ - main
8
+ tags:
9
+ - '**'
10
+ jobs:
11
+ build:
12
+ name: Build distribution
13
+ runs-on: ubuntu-latest
14
+
15
+ steps:
16
+ - uses: actions/checkout@v4
17
+
18
+ - name: Set up Python
19
+ uses: actions/setup-python@v4
20
+ with:
21
+ python-version: 3.x
22
+
23
+ - name: Install dependencies
24
+ run: pip install -r requirements.txt
25
+
26
+ - name: Install pypa / build
27
+ run: python3 -m pip install build --user
28
+
29
+ - name: Build a binary wheel and a source tarball
30
+ run: python3 -m build
31
+
32
+ - name: Store the distribution packages
33
+ uses: actions/upload-artifact@v3
34
+ with:
35
+ name: python-package-distributions
36
+ path: dist/
37
+
38
+ publish-to-pypi:
39
+ name: Publish Python distribution to PyPI
40
+ needs: build
41
+ runs-on: ubuntu-latest
42
+ environment:
43
+ name: pypi
44
+ url: https://pypi.org/p/<package-name>
45
+ permissions:
46
+ id-token: write # IMPORTANT: mandatory for trusted publishing
47
+
48
+ steps:
49
+ - name: Download all the dists
50
+ uses: actions/download-artifact@v3
51
+ with:
52
+ name: python-package-distributions
53
+ path: dist/
54
+ - name: Publish distribution to PyPI
55
+ uses: pypa/gh-action-pypi-publish@release/v1
56
+
57
+ github-release:
58
+ name: >-
59
+ Sign the Python distribution with Sigstore
60
+ and upload them to GitHub Release
61
+ needs:
62
+ - publish-to-pypi
63
+ runs-on: ubuntu-latest
64
+
65
+ permissions:
66
+ contents: write # IMPORTANT: mandatory for making GitHub Releases
67
+ id-token: write # IMPORTANT: mandatory for sigstore
68
+
69
+ steps:
70
+ - name: Download all the dists
71
+ uses: actions/download-artifact@v3
72
+ with:
73
+ name: python-package-distributions
74
+ path: dist/
75
+ - name: Sign the dists with Sigstore
76
+ uses: sigstore/gh-action-sigstore-python@v1.2.3
77
+ with:
78
+ inputs: >-
79
+ ./dist/*.tar.gz
80
+ ./dist/*.whl
81
+ - name: Create GitHub Release
82
+ env:
83
+ GITHUB_TOKEN: ${{ github.token }}
84
+ run: >-
85
+ gh release create
86
+ '${{ github.ref_name }}'
87
+ --repo '${{ github.repository }}'
88
+ --notes ""
89
+ - name: Upload artifact signatures to GitHub Release
90
+ env:
91
+ GITHUB_TOKEN: ${{ github.token }}
92
+ # Upload to GitHub Release using the `gh` CLI.
93
+ # `dist/` contains the built packages, and the
94
+ # sigstore-produced signatures and certificates.
95
+ run: >-
96
+ gh release upload
97
+ '${{ github.ref_name }}' dist/**
98
+ --repo '${{ github.repository }}'
99
+
@@ -0,0 +1,140 @@
1
+ .vscode/
2
+
3
+ # Byte-compiled / optimized / DLL files
4
+ __pycache__/
5
+ *.py[cod]
6
+ *$py.class
7
+
8
+ # C extensions
9
+ *.so
10
+
11
+ # Distribution / packaging
12
+ .Python
13
+ build/
14
+ develop-eggs/
15
+ dist/
16
+ downloads/
17
+ eggs/
18
+ .eggs/
19
+ lib/
20
+ lib64/
21
+ parts/
22
+ sdist/
23
+ var/
24
+ wheels/
25
+ share/python-wheels/
26
+ *.egg-info/
27
+ .installed.cfg
28
+ *.egg
29
+ MANIFEST
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
+ .nox/
45
+ .coverage
46
+ .coverage.*
47
+ .cache
48
+ nosetests.xml
49
+ coverage.xml
50
+ *.cover
51
+ *.py,cover
52
+ .hypothesis/
53
+ .pytest_cache/
54
+ cover/
55
+
56
+ # Translations
57
+ *.mo
58
+ *.pot
59
+
60
+ # Django stuff:
61
+ *.log
62
+ local_settings.py
63
+ db.sqlite3
64
+ db.sqlite3-journal
65
+
66
+ # Flask stuff:
67
+ instance/
68
+ .webassets-cache
69
+
70
+ # Scrapy stuff:
71
+ .scrapy
72
+
73
+ # Sphinx documentation
74
+ docs/_build/
75
+
76
+ # PyBuilder
77
+ .pybuilder/
78
+ target/
79
+
80
+ # Jupyter Notebook
81
+ .ipynb_checkpoints
82
+
83
+ # IPython
84
+ profile_default/
85
+ ipython_config.py
86
+
87
+ # pyenv
88
+ # For a library or package, you might want to ignore these files since the code is
89
+ # intended to run in multiple environments; otherwise, check them in:
90
+ # .python-version
91
+
92
+ # pipenv
93
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
94
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
95
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
96
+ # install all needed dependencies.
97
+ #Pipfile.lock
98
+
99
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow
100
+ __pypackages__/
101
+
102
+ # Celery stuff
103
+ celerybeat-schedule
104
+ celerybeat.pid
105
+
106
+ # SageMath parsed files
107
+ *.sage.py
108
+
109
+ # Environments
110
+ .env
111
+ .venv
112
+ env/
113
+ venv/
114
+ ENV/
115
+ env.bak/
116
+ venv.bak/
117
+
118
+ # Spyder project settings
119
+ .spyderproject
120
+ .spyproject
121
+
122
+ # Rope project settings
123
+ .ropeproject
124
+
125
+ # mkdocs documentation
126
+ /site
127
+
128
+ # mypy
129
+ .mypy_cache/
130
+ .dmypy.json
131
+ dmypy.json
132
+
133
+ # Pyre type checker
134
+ .pyre/
135
+
136
+ # pytype static type analyzer
137
+ .pytype/
138
+
139
+ # Cython debug symbols
140
+ cython_debug/
@@ -0,0 +1,16 @@
1
+ {
2
+ "python.testing.unittestArgs": [
3
+ "-v",
4
+ "-s",
5
+ "./tests",
6
+ "-p",
7
+ "test_*.py"
8
+ ],
9
+ "python.testing.pytestEnabled": true,
10
+ "python.testing.nosetestsEnabled": false,
11
+ "python.testing.unittestEnabled": false,
12
+ "python.pythonPath": "/home/tom/miniconda3/envs/geom/bin/python",
13
+ "python.testing.pytestArgs": [
14
+ "tests"
15
+ ]
16
+ }
@@ -1,14 +1,19 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pfc_geometry
3
- Version: 0.2.5
3
+ Version: 0.2.6
4
4
  Summary: A package for handling 3D geometry with a nice interface
5
- Home-page: https://github.com/PyFlightCoach/geometry
6
- Author: Thomas David
7
- Author-email: thomasdavid0@gmail.com
5
+ Author-email: Thomas David <thomasdavid0@gmail.com>
6
+ License: GNU GPL v3
7
+ Classifier: Programming Language :: Python :: 3
8
+ Requires-Python: >=3.12
8
9
  Description-Content-Type: text/markdown
9
10
  License-File: LICENSE
10
11
  Requires-Dist: numpy
11
12
  Requires-Dist: pandas
13
+ Provides-Extra: dev
14
+ Requires-Dist: numpy; extra == "dev"
15
+ Requires-Dist: pandas; extra == "dev"
16
+ Requires-Dist: pytest; extra == "dev"
12
17
 
13
18
  # geometry #
14
19
 
@@ -20,7 +25,6 @@ Magic methods are used extensively and the function of operators are logical for
20
25
 
21
26
  Many convenience methods and constructors are available. Documentation is limited but if you need something it has probably already been written so check the code first.
22
27
 
23
-
24
28
  Some examples are available here: https://pfcdocumentation.readthedocs.io/pyflightcoach/geometry.html
25
29
 
26
30
  now available on pypi:
@@ -8,7 +8,6 @@ Magic methods are used extensively and the function of operators are logical for
8
8
 
9
9
  Many convenience methods and constructors are available. Documentation is limited but if you need something it has probably already been written so check the code first.
10
10
 
11
-
12
11
  Some examples are available here: https://pfcdocumentation.readthedocs.io/pyflightcoach/geometry.html
13
12
 
14
13
  now available on pypi:
@@ -33,7 +33,6 @@ def dprep(func):
33
33
 
34
34
  return wrapper
35
35
 
36
-
37
36
  class Base:
38
37
  __array_priority__ = 15.0 # this is a quirk of numpy so the __r*__ methods here take priority
39
38
  cols=[]
@@ -1,14 +1,19 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pfc_geometry
3
- Version: 0.2.5
3
+ Version: 0.2.6
4
4
  Summary: A package for handling 3D geometry with a nice interface
5
- Home-page: https://github.com/PyFlightCoach/geometry
6
- Author: Thomas David
7
- Author-email: thomasdavid0@gmail.com
5
+ Author-email: Thomas David <thomasdavid0@gmail.com>
6
+ License: GNU GPL v3
7
+ Classifier: Programming Language :: Python :: 3
8
+ Requires-Python: >=3.12
8
9
  Description-Content-Type: text/markdown
9
10
  License-File: LICENSE
10
11
  Requires-Dist: numpy
11
12
  Requires-Dist: pandas
13
+ Provides-Extra: dev
14
+ Requires-Dist: numpy; extra == "dev"
15
+ Requires-Dist: pandas; extra == "dev"
16
+ Requires-Dist: pytest; extra == "dev"
12
17
 
13
18
  # geometry #
14
19
 
@@ -20,7 +25,6 @@ Magic methods are used extensively and the function of operators are logical for
20
25
 
21
26
  Many convenience methods and constructors are available. Documentation is limited but if you need something it has probably already been written so check the code first.
22
27
 
23
-
24
28
  Some examples are available here: https://pfcdocumentation.readthedocs.io/pyflightcoach/geometry.html
25
29
 
26
30
  now available on pypi:
@@ -1,7 +1,11 @@
1
+ .gitignore
1
2
  LICENSE
2
3
  README.md
3
- setup.cfg
4
- setup.py
4
+ pyproject.toml
5
+ requirements-dev.txt
6
+ requirements.txt
7
+ .github/workflows/publish_pypi.yml
8
+ .vscode/settings.json
5
9
  geometry/__init__.py
6
10
  geometry/base.py
7
11
  geometry/coordinate_frame.py
@@ -17,10 +21,13 @@ pfc_geometry.egg-info/SOURCES.txt
17
21
  pfc_geometry.egg-info/dependency_links.txt
18
22
  pfc_geometry.egg-info/requires.txt
19
23
  pfc_geometry.egg-info/top_level.txt
24
+ tests/__init__.py
25
+ tests/quat_body_diff_test.csv
20
26
  tests/test_base.py
21
27
  tests/test_coord.py
22
28
  tests/test_gps.py
23
29
  tests/test_mass.py
24
30
  tests/test_point.py
25
31
  tests/test_quaternion.py
32
+ tests/test_remove_outliers.csv
26
33
  tests/test_transform.py
@@ -0,0 +1,7 @@
1
+ numpy
2
+ pandas
3
+
4
+ [dev]
5
+ numpy
6
+ pandas
7
+ pytest
@@ -0,0 +1,23 @@
1
+ [build-system]
2
+ requires = [
3
+ "setuptools>=60",
4
+ "setuptools-scm>=8.0"
5
+ ]
6
+ build-backend = "setuptools.build_meta"
7
+
8
+ [project]
9
+ name = "pfc_geometry"
10
+ authors = [{name = "Thomas David", email = "thomasdavid0@gmail.com"}]
11
+ description = "A package for handling 3D geometry with a nice interface"
12
+ readme = "README.md"
13
+ requires-python = ">=3.12"
14
+ license = {text = "GNU GPL v3"}
15
+ classifiers = ["Programming Language :: Python :: 3",]
16
+ dynamic = ["version", "dependencies", "optional-dependencies"]
17
+
18
+
19
+ [tool.setuptools.dynamic]
20
+ dependencies = {file = ["requirements.txt"]}
21
+ optional-dependencies = {dev = { file = ["requirements-dev.txt"] }}
22
+
23
+ [tool.setuptools_scm]
@@ -0,0 +1,2 @@
1
+ numpy
2
+ pandas
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
File without changes