fitsolver-client 0.1.0__tar.gz → 0.2.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.
- {fitsolver_client-0.1.0 → fitsolver_client-0.2.0}/PKG-INFO +52 -2
- {fitsolver_client-0.1.0 → fitsolver_client-0.2.0}/README.md +51 -1
- {fitsolver_client-0.1.0 → fitsolver_client-0.2.0}/fitsolver_client.egg-info/PKG-INFO +52 -2
- {fitsolver_client-0.1.0 → fitsolver_client-0.2.0}/pyproject.toml +1 -1
- {fitsolver_client-0.1.0 → fitsolver_client-0.2.0}/fitsolver_client/__init__.py +0 -0
- {fitsolver_client-0.1.0 → fitsolver_client-0.2.0}/fitsolver_client.egg-info/SOURCES.txt +0 -0
- {fitsolver_client-0.1.0 → fitsolver_client-0.2.0}/fitsolver_client.egg-info/dependency_links.txt +0 -0
- {fitsolver_client-0.1.0 → fitsolver_client-0.2.0}/fitsolver_client.egg-info/top_level.txt +0 -0
- {fitsolver_client-0.1.0 → fitsolver_client-0.2.0}/setup.cfg +0 -0
- {fitsolver_client-0.1.0 → fitsolver_client-0.2.0}/setup.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: fitsolver-client
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.2.0
|
|
4
4
|
Summary: Minimal ctypes client for the FitSolver C ABI (fitsolver_lib)
|
|
5
5
|
Author: Fantastic Division
|
|
6
6
|
Project-URL: Homepage, https://github.com/FantasticDivision/Solver
|
|
@@ -32,7 +32,7 @@ pip install fitsolver-client
|
|
|
32
32
|
|
|
33
33
|
```
|
|
34
34
|
# requirements.txt / pyproject.toml
|
|
35
|
-
fitsolver-client
|
|
35
|
+
fitsolver-client>=0.2.0
|
|
36
36
|
```
|
|
37
37
|
|
|
38
38
|
One wheel is published per OS (Linux `manylinux_2_28`, macOS x86_64 +
|
|
@@ -82,6 +82,56 @@ python -m wheel tags --python-tag py3 --abi-tag none \
|
|
|
82
82
|
--platform-tag win_amd64 --remove python/fitsolver_client/dist/*.whl
|
|
83
83
|
```
|
|
84
84
|
|
|
85
|
+
## Releasing a new version to PyPI
|
|
86
|
+
|
|
87
|
+
PyPI versions are immutable, so a release is always a deliberate version
|
|
88
|
+
bump + tag. Publishing is automated (`.github/workflows/wheels.yml`) and
|
|
89
|
+
uses **Trusted Publishing** (OIDC) -- no API token. Do it whenever the
|
|
90
|
+
native `fitsolver_lib` behaviour changes (the wheels vendor the compiled
|
|
91
|
+
library) or the client code itself changes.
|
|
92
|
+
|
|
93
|
+
1. **Bump the version.** Edit `version` in
|
|
94
|
+
`python/fitsolver_client/pyproject.toml` (semver: patch for a
|
|
95
|
+
bug-fix-only lib rebuild, minor for new/changed packing behaviour,
|
|
96
|
+
major for a breaking request/response change). Note the same version
|
|
97
|
+
in this README's install snippet.
|
|
98
|
+
|
|
99
|
+
2. **Commit it on `main`.**
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
git add python/fitsolver_client/pyproject.toml python/fitsolver_client/README.md
|
|
103
|
+
git commit -m "fitsolver-client: release vX.Y.Z"
|
|
104
|
+
git push origin main
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
The push runs the wheels workflow in build-and-smoke-test-only mode
|
|
108
|
+
(no upload) -- check it is green before tagging.
|
|
109
|
+
|
|
110
|
+
3. **Tag and push the tag -- this is what publishes to PyPI.**
|
|
111
|
+
|
|
112
|
+
```bash
|
|
113
|
+
git tag vX.Y.Z # tag name must match the pyproject version, with a leading v
|
|
114
|
+
git push origin vX.Y.Z
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
The tag push triggers the full matrix: per-OS wheels (Linux
|
|
118
|
+
`manylinux_2_28`, macOS `universal2`, Windows x64) + an sdist, each
|
|
119
|
+
smoke-tested in a clean venv, then `publish-pypi` uploads them.
|
|
120
|
+
|
|
121
|
+
4. **Verify.** `pip install fitsolver-client==X.Y.Z` in a fresh venv;
|
|
122
|
+
check https://pypi.org/project/fitsolver-client/ shows the new files.
|
|
123
|
+
|
|
124
|
+
5. **Bump consumers.** Update `fitsolver-client>=X.Y.Z` in
|
|
125
|
+
`fantastic-portal/backend/pyproject.toml` (and anywhere else it is
|
|
126
|
+
pinned).
|
|
127
|
+
|
|
128
|
+
### First-time setup (already done for this project)
|
|
129
|
+
|
|
130
|
+
On PyPI: *Account -> Publishing -> add a pending publisher* -- project
|
|
131
|
+
`fitsolver-client`, owner `FantasticDivision`, repo `Solver`, workflow
|
|
132
|
+
`wheels.yml`, environment `pypi`. Create a matching `pypi` environment
|
|
133
|
+
under the GitHub repo's *Settings -> Environments*. No secrets are stored.
|
|
134
|
+
|
|
85
135
|
## Usage
|
|
86
136
|
|
|
87
137
|
```python
|
|
@@ -17,7 +17,7 @@ pip install fitsolver-client
|
|
|
17
17
|
|
|
18
18
|
```
|
|
19
19
|
# requirements.txt / pyproject.toml
|
|
20
|
-
fitsolver-client
|
|
20
|
+
fitsolver-client>=0.2.0
|
|
21
21
|
```
|
|
22
22
|
|
|
23
23
|
One wheel is published per OS (Linux `manylinux_2_28`, macOS x86_64 +
|
|
@@ -67,6 +67,56 @@ python -m wheel tags --python-tag py3 --abi-tag none \
|
|
|
67
67
|
--platform-tag win_amd64 --remove python/fitsolver_client/dist/*.whl
|
|
68
68
|
```
|
|
69
69
|
|
|
70
|
+
## Releasing a new version to PyPI
|
|
71
|
+
|
|
72
|
+
PyPI versions are immutable, so a release is always a deliberate version
|
|
73
|
+
bump + tag. Publishing is automated (`.github/workflows/wheels.yml`) and
|
|
74
|
+
uses **Trusted Publishing** (OIDC) -- no API token. Do it whenever the
|
|
75
|
+
native `fitsolver_lib` behaviour changes (the wheels vendor the compiled
|
|
76
|
+
library) or the client code itself changes.
|
|
77
|
+
|
|
78
|
+
1. **Bump the version.** Edit `version` in
|
|
79
|
+
`python/fitsolver_client/pyproject.toml` (semver: patch for a
|
|
80
|
+
bug-fix-only lib rebuild, minor for new/changed packing behaviour,
|
|
81
|
+
major for a breaking request/response change). Note the same version
|
|
82
|
+
in this README's install snippet.
|
|
83
|
+
|
|
84
|
+
2. **Commit it on `main`.**
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
git add python/fitsolver_client/pyproject.toml python/fitsolver_client/README.md
|
|
88
|
+
git commit -m "fitsolver-client: release vX.Y.Z"
|
|
89
|
+
git push origin main
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
The push runs the wheels workflow in build-and-smoke-test-only mode
|
|
93
|
+
(no upload) -- check it is green before tagging.
|
|
94
|
+
|
|
95
|
+
3. **Tag and push the tag -- this is what publishes to PyPI.**
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
git tag vX.Y.Z # tag name must match the pyproject version, with a leading v
|
|
99
|
+
git push origin vX.Y.Z
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
The tag push triggers the full matrix: per-OS wheels (Linux
|
|
103
|
+
`manylinux_2_28`, macOS `universal2`, Windows x64) + an sdist, each
|
|
104
|
+
smoke-tested in a clean venv, then `publish-pypi` uploads them.
|
|
105
|
+
|
|
106
|
+
4. **Verify.** `pip install fitsolver-client==X.Y.Z` in a fresh venv;
|
|
107
|
+
check https://pypi.org/project/fitsolver-client/ shows the new files.
|
|
108
|
+
|
|
109
|
+
5. **Bump consumers.** Update `fitsolver-client>=X.Y.Z` in
|
|
110
|
+
`fantastic-portal/backend/pyproject.toml` (and anywhere else it is
|
|
111
|
+
pinned).
|
|
112
|
+
|
|
113
|
+
### First-time setup (already done for this project)
|
|
114
|
+
|
|
115
|
+
On PyPI: *Account -> Publishing -> add a pending publisher* -- project
|
|
116
|
+
`fitsolver-client`, owner `FantasticDivision`, repo `Solver`, workflow
|
|
117
|
+
`wheels.yml`, environment `pypi`. Create a matching `pypi` environment
|
|
118
|
+
under the GitHub repo's *Settings -> Environments*. No secrets are stored.
|
|
119
|
+
|
|
70
120
|
## Usage
|
|
71
121
|
|
|
72
122
|
```python
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: fitsolver-client
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.2.0
|
|
4
4
|
Summary: Minimal ctypes client for the FitSolver C ABI (fitsolver_lib)
|
|
5
5
|
Author: Fantastic Division
|
|
6
6
|
Project-URL: Homepage, https://github.com/FantasticDivision/Solver
|
|
@@ -32,7 +32,7 @@ pip install fitsolver-client
|
|
|
32
32
|
|
|
33
33
|
```
|
|
34
34
|
# requirements.txt / pyproject.toml
|
|
35
|
-
fitsolver-client
|
|
35
|
+
fitsolver-client>=0.2.0
|
|
36
36
|
```
|
|
37
37
|
|
|
38
38
|
One wheel is published per OS (Linux `manylinux_2_28`, macOS x86_64 +
|
|
@@ -82,6 +82,56 @@ python -m wheel tags --python-tag py3 --abi-tag none \
|
|
|
82
82
|
--platform-tag win_amd64 --remove python/fitsolver_client/dist/*.whl
|
|
83
83
|
```
|
|
84
84
|
|
|
85
|
+
## Releasing a new version to PyPI
|
|
86
|
+
|
|
87
|
+
PyPI versions are immutable, so a release is always a deliberate version
|
|
88
|
+
bump + tag. Publishing is automated (`.github/workflows/wheels.yml`) and
|
|
89
|
+
uses **Trusted Publishing** (OIDC) -- no API token. Do it whenever the
|
|
90
|
+
native `fitsolver_lib` behaviour changes (the wheels vendor the compiled
|
|
91
|
+
library) or the client code itself changes.
|
|
92
|
+
|
|
93
|
+
1. **Bump the version.** Edit `version` in
|
|
94
|
+
`python/fitsolver_client/pyproject.toml` (semver: patch for a
|
|
95
|
+
bug-fix-only lib rebuild, minor for new/changed packing behaviour,
|
|
96
|
+
major for a breaking request/response change). Note the same version
|
|
97
|
+
in this README's install snippet.
|
|
98
|
+
|
|
99
|
+
2. **Commit it on `main`.**
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
git add python/fitsolver_client/pyproject.toml python/fitsolver_client/README.md
|
|
103
|
+
git commit -m "fitsolver-client: release vX.Y.Z"
|
|
104
|
+
git push origin main
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
The push runs the wheels workflow in build-and-smoke-test-only mode
|
|
108
|
+
(no upload) -- check it is green before tagging.
|
|
109
|
+
|
|
110
|
+
3. **Tag and push the tag -- this is what publishes to PyPI.**
|
|
111
|
+
|
|
112
|
+
```bash
|
|
113
|
+
git tag vX.Y.Z # tag name must match the pyproject version, with a leading v
|
|
114
|
+
git push origin vX.Y.Z
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
The tag push triggers the full matrix: per-OS wheels (Linux
|
|
118
|
+
`manylinux_2_28`, macOS `universal2`, Windows x64) + an sdist, each
|
|
119
|
+
smoke-tested in a clean venv, then `publish-pypi` uploads them.
|
|
120
|
+
|
|
121
|
+
4. **Verify.** `pip install fitsolver-client==X.Y.Z` in a fresh venv;
|
|
122
|
+
check https://pypi.org/project/fitsolver-client/ shows the new files.
|
|
123
|
+
|
|
124
|
+
5. **Bump consumers.** Update `fitsolver-client>=X.Y.Z` in
|
|
125
|
+
`fantastic-portal/backend/pyproject.toml` (and anywhere else it is
|
|
126
|
+
pinned).
|
|
127
|
+
|
|
128
|
+
### First-time setup (already done for this project)
|
|
129
|
+
|
|
130
|
+
On PyPI: *Account -> Publishing -> add a pending publisher* -- project
|
|
131
|
+
`fitsolver-client`, owner `FantasticDivision`, repo `Solver`, workflow
|
|
132
|
+
`wheels.yml`, environment `pypi`. Create a matching `pypi` environment
|
|
133
|
+
under the GitHub repo's *Settings -> Environments*. No secrets are stored.
|
|
134
|
+
|
|
85
135
|
## Usage
|
|
86
136
|
|
|
87
137
|
```python
|
|
File without changes
|
|
File without changes
|
{fitsolver_client-0.1.0 → fitsolver_client-0.2.0}/fitsolver_client.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|