volume-explorer 0.1.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.
- volume_explorer-0.1.0/.github/workflows/publish.yml +108 -0
- volume_explorer-0.1.0/.gitignore +25 -0
- volume_explorer-0.1.0/PKG-INFO +24 -0
- volume_explorer-0.1.0/pyproject.toml +45 -0
- volume_explorer-0.1.0/setup.cfg +4 -0
- volume_explorer-0.1.0/volume_explorer/__init__.py +746 -0
- volume_explorer-0.1.0/volume_explorer/aliases.py +239 -0
- volume_explorer-0.1.0/volume_explorer/app/__init__.py +11 -0
- volume_explorer-0.1.0/volume_explorer/app/main.py +230 -0
- volume_explorer-0.1.0/volume_explorer/constants.py +117 -0
- volume_explorer-0.1.0/volume_explorer/layouts.py +91 -0
- volume_explorer-0.1.0/volume_explorer/name_maps.py +232 -0
- volume_explorer-0.1.0/volume_explorer/parser.py +50 -0
- volume_explorer-0.1.0/volume_explorer/parser_common.py +174 -0
- volume_explorer-0.1.0/volume_explorer/parser_pivot.py +201 -0
- volume_explorer-0.1.0/volume_explorer/parser_single_line.py +224 -0
- volume_explorer-0.1.0/volume_explorer/query.py +337 -0
- volume_explorer-0.1.0/volume_explorer/storage.py +172 -0
- volume_explorer-0.1.0/volume_explorer/styling.py +296 -0
- volume_explorer-0.1.0/volume_explorer/units.py +167 -0
- volume_explorer-0.1.0/volume_explorer.egg-info/PKG-INFO +24 -0
- volume_explorer-0.1.0/volume_explorer.egg-info/SOURCES.txt +24 -0
- volume_explorer-0.1.0/volume_explorer.egg-info/dependency_links.txt +1 -0
- volume_explorer-0.1.0/volume_explorer.egg-info/entry_points.txt +2 -0
- volume_explorer-0.1.0/volume_explorer.egg-info/requires.txt +7 -0
- volume_explorer-0.1.0/volume_explorer.egg-info/top_level.txt +1 -0
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
name: Publish to PyPI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [main]
|
|
6
|
+
paths:
|
|
7
|
+
- "pyproject.toml"
|
|
8
|
+
- "volume_explorer/**"
|
|
9
|
+
- ".github/workflows/publish.yml"
|
|
10
|
+
workflow_dispatch:
|
|
11
|
+
|
|
12
|
+
permissions:
|
|
13
|
+
contents: write
|
|
14
|
+
|
|
15
|
+
jobs:
|
|
16
|
+
check-version:
|
|
17
|
+
runs-on: ubuntu-latest
|
|
18
|
+
outputs:
|
|
19
|
+
version: ${{ steps.get_version.outputs.version }}
|
|
20
|
+
tag_exists: ${{ steps.check_tag.outputs.exists }}
|
|
21
|
+
steps:
|
|
22
|
+
- uses: actions/checkout@v4
|
|
23
|
+
with:
|
|
24
|
+
fetch-depth: 0
|
|
25
|
+
|
|
26
|
+
- name: Get version from pyproject.toml
|
|
27
|
+
id: get_version
|
|
28
|
+
run: |
|
|
29
|
+
VERSION=$(python -c "
|
|
30
|
+
import tomllib
|
|
31
|
+
with open('pyproject.toml', 'rb') as f:
|
|
32
|
+
data = tomllib.load(f)
|
|
33
|
+
print(data['project']['version'])
|
|
34
|
+
")
|
|
35
|
+
echo "version=$VERSION" >> "$GITHUB_OUTPUT"
|
|
36
|
+
echo "Version: $VERSION"
|
|
37
|
+
|
|
38
|
+
- name: Check if tag exists
|
|
39
|
+
id: check_tag
|
|
40
|
+
run: |
|
|
41
|
+
if git rev-parse "v${{ steps.get_version.outputs.version }}" >/dev/null 2>&1; then
|
|
42
|
+
echo "exists=true" >> "$GITHUB_OUTPUT"
|
|
43
|
+
echo "Tag v${{ steps.get_version.outputs.version }} already exists — skipping"
|
|
44
|
+
else
|
|
45
|
+
echo "exists=false" >> "$GITHUB_OUTPUT"
|
|
46
|
+
echo "Tag v${{ steps.get_version.outputs.version }} is new — will publish"
|
|
47
|
+
fi
|
|
48
|
+
|
|
49
|
+
test:
|
|
50
|
+
needs: check-version
|
|
51
|
+
if: needs.check-version.outputs.tag_exists == 'false'
|
|
52
|
+
strategy:
|
|
53
|
+
matrix:
|
|
54
|
+
os: [ubuntu-latest, windows-latest, macos-latest]
|
|
55
|
+
python-version: ["3.10", "3.11", "3.12", "3.13"]
|
|
56
|
+
runs-on: ${{ matrix.os }}
|
|
57
|
+
steps:
|
|
58
|
+
- uses: actions/checkout@v4
|
|
59
|
+
|
|
60
|
+
- uses: actions/setup-python@v5
|
|
61
|
+
with:
|
|
62
|
+
python-version: ${{ matrix.python-version }}
|
|
63
|
+
|
|
64
|
+
- name: Install package
|
|
65
|
+
run: pip install -e ".[dev]"
|
|
66
|
+
|
|
67
|
+
- name: Run tests
|
|
68
|
+
shell: bash
|
|
69
|
+
run: python -m pytest -v --tb=short || true
|
|
70
|
+
|
|
71
|
+
- name: Verify import
|
|
72
|
+
run: |
|
|
73
|
+
python -c "from volume_explorer import PetrelVolumetrics, __version__; print('OK: v' + __version__)"
|
|
74
|
+
|
|
75
|
+
publish:
|
|
76
|
+
needs: [check-version, test]
|
|
77
|
+
if: needs.check-version.outputs.tag_exists == 'false'
|
|
78
|
+
runs-on: ubuntu-latest
|
|
79
|
+
environment: pypi
|
|
80
|
+
permissions:
|
|
81
|
+
id-token: write
|
|
82
|
+
contents: write
|
|
83
|
+
steps:
|
|
84
|
+
- uses: actions/checkout@v4
|
|
85
|
+
|
|
86
|
+
- uses: actions/setup-python@v5
|
|
87
|
+
with:
|
|
88
|
+
python-version: "3.12"
|
|
89
|
+
|
|
90
|
+
- name: Install build tools
|
|
91
|
+
run: pip install build
|
|
92
|
+
|
|
93
|
+
- name: Build package
|
|
94
|
+
run: python -m build
|
|
95
|
+
|
|
96
|
+
- name: Publish to PyPI
|
|
97
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
98
|
+
with:
|
|
99
|
+
password: ${{ secrets.PYPI_ACCESS_TOKEN }}
|
|
100
|
+
|
|
101
|
+
- name: Create GitHub release
|
|
102
|
+
env:
|
|
103
|
+
GH_TOKEN: ${{ github.token }}
|
|
104
|
+
run: |
|
|
105
|
+
VERSION="v${{ needs.check-version.outputs.version }}"
|
|
106
|
+
gh release create "$VERSION" dist/* \
|
|
107
|
+
--title "$VERSION" \
|
|
108
|
+
--generate-notes
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Python
|
|
2
|
+
__pycache__/
|
|
3
|
+
*.py[cod]
|
|
4
|
+
*.egg-info/
|
|
5
|
+
dist/
|
|
6
|
+
build/
|
|
7
|
+
*.egg
|
|
8
|
+
|
|
9
|
+
# Virtual environments
|
|
10
|
+
.venv/
|
|
11
|
+
venv/
|
|
12
|
+
env/
|
|
13
|
+
|
|
14
|
+
# IDE
|
|
15
|
+
.vscode/
|
|
16
|
+
.idea/
|
|
17
|
+
*.swp
|
|
18
|
+
*.swo
|
|
19
|
+
|
|
20
|
+
# Data (user-specific volumetrics results)
|
|
21
|
+
VolumetricResults/
|
|
22
|
+
|
|
23
|
+
# OS
|
|
24
|
+
.DS_Store
|
|
25
|
+
Thumbs.db
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: volume-explorer
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: Parse, query and explore Petrel volumetrics exports
|
|
5
|
+
Author-email: Kristian Kollsga <kkollsga@users.noreply.github.com>
|
|
6
|
+
License-Expression: MIT
|
|
7
|
+
Project-URL: Repository, https://github.com/kkollsga/volume-explorer
|
|
8
|
+
Keywords: petrel,volumetrics,petroleum,subsurface
|
|
9
|
+
Classifier: Development Status :: 4 - Beta
|
|
10
|
+
Classifier: Intended Audience :: Science/Research
|
|
11
|
+
Classifier: Topic :: Scientific/Engineering
|
|
12
|
+
Classifier: Programming Language :: Python :: 3
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
17
|
+
Requires-Python: >=3.10
|
|
18
|
+
Description-Content-Type: text/markdown
|
|
19
|
+
Requires-Dist: pandas>=1.5
|
|
20
|
+
Requires-Dist: streamlit>=1.20
|
|
21
|
+
Provides-Extra: dev
|
|
22
|
+
Requires-Dist: pytest>=7.0; extra == "dev"
|
|
23
|
+
Requires-Dist: build; extra == "dev"
|
|
24
|
+
Requires-Dist: twine; extra == "dev"
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["setuptools>=68.0", "setuptools-scm>=8.0"]
|
|
3
|
+
build-backend = "setuptools.build_meta"
|
|
4
|
+
|
|
5
|
+
[project]
|
|
6
|
+
name = "volume-explorer"
|
|
7
|
+
version = "0.1.0"
|
|
8
|
+
description = "Parse, query and explore Petrel volumetrics exports"
|
|
9
|
+
readme = "README.md"
|
|
10
|
+
license = "MIT"
|
|
11
|
+
requires-python = ">=3.10"
|
|
12
|
+
authors = [
|
|
13
|
+
{ name = "Kristian Kollsga", email = "kkollsga@users.noreply.github.com" },
|
|
14
|
+
]
|
|
15
|
+
keywords = ["petrel", "volumetrics", "petroleum", "subsurface"]
|
|
16
|
+
classifiers = [
|
|
17
|
+
"Development Status :: 4 - Beta",
|
|
18
|
+
"Intended Audience :: Science/Research",
|
|
19
|
+
"Topic :: Scientific/Engineering",
|
|
20
|
+
"Programming Language :: Python :: 3",
|
|
21
|
+
"Programming Language :: Python :: 3.10",
|
|
22
|
+
"Programming Language :: Python :: 3.11",
|
|
23
|
+
"Programming Language :: Python :: 3.12",
|
|
24
|
+
"Programming Language :: Python :: 3.13",
|
|
25
|
+
]
|
|
26
|
+
dependencies = [
|
|
27
|
+
"pandas>=1.5",
|
|
28
|
+
"streamlit>=1.20",
|
|
29
|
+
]
|
|
30
|
+
|
|
31
|
+
[project.optional-dependencies]
|
|
32
|
+
dev = [
|
|
33
|
+
"pytest>=7.0",
|
|
34
|
+
"build",
|
|
35
|
+
"twine",
|
|
36
|
+
]
|
|
37
|
+
|
|
38
|
+
[project.urls]
|
|
39
|
+
Repository = "https://github.com/kkollsga/volume-explorer"
|
|
40
|
+
|
|
41
|
+
[project.scripts]
|
|
42
|
+
volume-explorer = "volume_explorer.app:cli"
|
|
43
|
+
|
|
44
|
+
[tool.setuptools.packages.find]
|
|
45
|
+
include = ["volume_explorer*"]
|