sem2surface 0.2.0__tar.gz → 0.2.1__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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sem2surface
3
- Version: 0.2.0
3
+ Version: 0.2.1
4
4
  Summary: 3D surface reconstruction from multi-detector SEM/BSE images
5
5
  Author: Vladislav A. Yastrebov
6
6
  License-Expression: BSD-3-Clause
@@ -39,6 +39,9 @@ Dynamic: license-file
39
39
 
40
40
  # sem2surface
41
41
 
42
+ [![PyPI version](https://img.shields.io/pypi/v/sem2surface.svg)](https://pypi.org/project/sem2surface/)
43
+ [![License: BSD 3-Clause](https://img.shields.io/pypi/l/sem2surface.svg)](https://github.com/vyastreb/sem2surface/blob/master/LICENSE)
44
+
42
45
  `sem2surface` reconstructs a three-dimensional surface from three to five
43
46
  multi-detector SEM/BSE images. It extracts two normalized principal images,
44
47
  identifies their orientation with a Radon transform, and integrates the resulting
@@ -54,78 +57,49 @@ calibration procedure.
54
57
 
55
58
  ## Installation
56
59
 
57
- Python 3.10 or newer is required. An isolated virtual environment is strongly
58
- recommended so the application does not conflict with system Python packages.
59
-
60
- ### Linux and macOS
61
-
62
- Create an environment and install a released version:
60
+ Python 3.10 or newer is required. Install `sem2surface` from PyPI with:
63
61
 
64
62
  ```bash
65
- python3 -m venv .venv
66
- source .venv/bin/activate
67
- python -m pip install --upgrade pip
68
- python -m pip install sem2surface
69
- sem2surface-gui
63
+ pip install sem2surface
70
64
  ```
71
65
 
72
- Until a release is uploaded to PyPI, run the final installation command from
73
- this source checkout instead:
66
+ If several Python installations are present, use the interpreter explicitly:
74
67
 
75
68
  ```bash
76
- python -m pip install .
69
+ python3 -m pip install sem2surface # Linux or macOS
77
70
  ```
78
71
 
79
- On Linux, Tkinter may be packaged separately. For example, Ubuntu and Debian
80
- users can install it with their system package manager as `python3-tk` before
81
- creating the environment.
82
-
83
72
  ### Windows
84
73
 
85
74
  Install Python 3.10 or newer from
86
75
  [python.org](https://www.python.org/downloads/windows/). Keep the standard
87
- `pip`, Tcl/Tk, and Python Launcher components enabled. Then open PowerShell in
88
- the folder where you want the environment and run:
76
+ `pip`, Tcl/Tk, and Python Launcher components enabled. Then open PowerShell or
77
+ Command Prompt and run:
89
78
 
90
79
  ```powershell
91
- py -3 -m venv .venv
92
- .\.venv\Scripts\Activate.ps1
93
- python -m pip install --upgrade pip
94
- python -m pip install sem2surface
80
+ py -m pip install sem2surface
95
81
  sem2surface-gui
96
82
  ```
97
83
 
98
- If PowerShell blocks the activation script, allow it only for the current
99
- PowerShell process and retry activation:
84
+ If Windows cannot find the installed launcher, start the GUI through Python:
100
85
 
101
86
  ```powershell
102
- Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
103
- .\.venv\Scripts\Activate.ps1
104
- ```
105
-
106
- In Command Prompt, activate the same environment with:
107
-
108
- ```bat
109
- .venv\Scripts\activate.bat
87
+ py -m sem2surface_gui
110
88
  ```
111
89
 
112
- Activation is optional. The GUI can always be launched directly:
113
-
114
- ```powershell
115
- .\.venv\Scripts\sem2surface-gui.exe
116
- ```
90
+ On Linux, Tkinter may be packaged separately. For example, Ubuntu and Debian
91
+ users can install `python3-tk` with their system package manager.
117
92
 
118
- Before the PyPI release, install either from a source checkout with
119
- `python -m pip install .` or from the provided wheel:
93
+ A virtual environment is optional. It is useful when the system Python is
94
+ externally managed, installation permissions are restricted, or other packages
95
+ have conflicting dependencies:
120
96
 
121
- ```powershell
122
- python -m pip install "C:\path\to\sem2surface-0.2.0-py3-none-any.whl"
97
+ ```bash
98
+ python3 -m venv .venv
99
+ source .venv/bin/activate # Windows PowerShell: .\.venv\Scripts\Activate.ps1
100
+ python -m pip install sem2surface
123
101
  ```
124
102
 
125
- Use `deactivate` to leave the environment on any platform. Do not copy a
126
- virtual environment between computers or move it after creation; create a new
127
- one and reinstall the package instead.
128
-
129
103
  VTK export is optional because VTK is a large dependency:
130
104
 
131
105
  ```bash
@@ -266,7 +240,7 @@ For a first trial, create a separate account and API token on
266
240
  version:
267
241
 
268
242
  ```bash
269
- python -m twine upload --repository testpypi dist/sem2surface-0.2.0*
243
+ python -m twine upload --repository testpypi dist/sem2surface-0.2.1*
270
244
  ```
271
245
 
272
246
  When prompted, use `__token__` as the username and the complete TestPyPI token,
@@ -274,7 +248,7 @@ including its `pypi-` prefix, as the password. Test the uploaded wheel in a new
274
248
  environment without resolving dependencies from TestPyPI:
275
249
 
276
250
  ```bash
277
- python -m pip install --index-url https://test.pypi.org/simple/ --no-deps sem2surface==0.2.0
251
+ python -m pip install --index-url https://test.pypi.org/simple/ --no-deps sem2surface==0.2.1
278
252
  sem2surface --version
279
253
  ```
280
254
 
@@ -282,7 +256,7 @@ For the real release, create a PyPI account and API token at
282
256
  [pypi.org](https://pypi.org/), then run:
283
257
 
284
258
  ```bash
285
- python -m twine upload dist/sem2surface-0.2.0*
259
+ python -m twine upload dist/sem2surface-0.2.1*
286
260
  ```
287
261
 
288
262
  PyPI and TestPyPI use separate accounts and tokens. Never commit a token or put
@@ -1,5 +1,8 @@
1
1
  # sem2surface
2
2
 
3
+ [![PyPI version](https://img.shields.io/pypi/v/sem2surface.svg)](https://pypi.org/project/sem2surface/)
4
+ [![License: BSD 3-Clause](https://img.shields.io/pypi/l/sem2surface.svg)](https://github.com/vyastreb/sem2surface/blob/master/LICENSE)
5
+
3
6
  `sem2surface` reconstructs a three-dimensional surface from three to five
4
7
  multi-detector SEM/BSE images. It extracts two normalized principal images,
5
8
  identifies their orientation with a Radon transform, and integrates the resulting
@@ -15,78 +18,49 @@ calibration procedure.
15
18
 
16
19
  ## Installation
17
20
 
18
- Python 3.10 or newer is required. An isolated virtual environment is strongly
19
- recommended so the application does not conflict with system Python packages.
20
-
21
- ### Linux and macOS
22
-
23
- Create an environment and install a released version:
21
+ Python 3.10 or newer is required. Install `sem2surface` from PyPI with:
24
22
 
25
23
  ```bash
26
- python3 -m venv .venv
27
- source .venv/bin/activate
28
- python -m pip install --upgrade pip
29
- python -m pip install sem2surface
30
- sem2surface-gui
24
+ pip install sem2surface
31
25
  ```
32
26
 
33
- Until a release is uploaded to PyPI, run the final installation command from
34
- this source checkout instead:
27
+ If several Python installations are present, use the interpreter explicitly:
35
28
 
36
29
  ```bash
37
- python -m pip install .
30
+ python3 -m pip install sem2surface # Linux or macOS
38
31
  ```
39
32
 
40
- On Linux, Tkinter may be packaged separately. For example, Ubuntu and Debian
41
- users can install it with their system package manager as `python3-tk` before
42
- creating the environment.
43
-
44
33
  ### Windows
45
34
 
46
35
  Install Python 3.10 or newer from
47
36
  [python.org](https://www.python.org/downloads/windows/). Keep the standard
48
- `pip`, Tcl/Tk, and Python Launcher components enabled. Then open PowerShell in
49
- the folder where you want the environment and run:
37
+ `pip`, Tcl/Tk, and Python Launcher components enabled. Then open PowerShell or
38
+ Command Prompt and run:
50
39
 
51
40
  ```powershell
52
- py -3 -m venv .venv
53
- .\.venv\Scripts\Activate.ps1
54
- python -m pip install --upgrade pip
55
- python -m pip install sem2surface
41
+ py -m pip install sem2surface
56
42
  sem2surface-gui
57
43
  ```
58
44
 
59
- If PowerShell blocks the activation script, allow it only for the current
60
- PowerShell process and retry activation:
45
+ If Windows cannot find the installed launcher, start the GUI through Python:
61
46
 
62
47
  ```powershell
63
- Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
64
- .\.venv\Scripts\Activate.ps1
65
- ```
66
-
67
- In Command Prompt, activate the same environment with:
68
-
69
- ```bat
70
- .venv\Scripts\activate.bat
48
+ py -m sem2surface_gui
71
49
  ```
72
50
 
73
- Activation is optional. The GUI can always be launched directly:
74
-
75
- ```powershell
76
- .\.venv\Scripts\sem2surface-gui.exe
77
- ```
51
+ On Linux, Tkinter may be packaged separately. For example, Ubuntu and Debian
52
+ users can install `python3-tk` with their system package manager.
78
53
 
79
- Before the PyPI release, install either from a source checkout with
80
- `python -m pip install .` or from the provided wheel:
54
+ A virtual environment is optional. It is useful when the system Python is
55
+ externally managed, installation permissions are restricted, or other packages
56
+ have conflicting dependencies:
81
57
 
82
- ```powershell
83
- python -m pip install "C:\path\to\sem2surface-0.2.0-py3-none-any.whl"
58
+ ```bash
59
+ python3 -m venv .venv
60
+ source .venv/bin/activate # Windows PowerShell: .\.venv\Scripts\Activate.ps1
61
+ python -m pip install sem2surface
84
62
  ```
85
63
 
86
- Use `deactivate` to leave the environment on any platform. Do not copy a
87
- virtual environment between computers or move it after creation; create a new
88
- one and reinstall the package instead.
89
-
90
64
  VTK export is optional because VTK is a large dependency:
91
65
 
92
66
  ```bash
@@ -227,7 +201,7 @@ For a first trial, create a separate account and API token on
227
201
  version:
228
202
 
229
203
  ```bash
230
- python -m twine upload --repository testpypi dist/sem2surface-0.2.0*
204
+ python -m twine upload --repository testpypi dist/sem2surface-0.2.1*
231
205
  ```
232
206
 
233
207
  When prompted, use `__token__` as the username and the complete TestPyPI token,
@@ -235,7 +209,7 @@ including its `pypi-` prefix, as the password. Test the uploaded wheel in a new
235
209
  environment without resolving dependencies from TestPyPI:
236
210
 
237
211
  ```bash
238
- python -m pip install --index-url https://test.pypi.org/simple/ --no-deps sem2surface==0.2.0
212
+ python -m pip install --index-url https://test.pypi.org/simple/ --no-deps sem2surface==0.2.1
239
213
  sem2surface --version
240
214
  ```
241
215
 
@@ -243,7 +217,7 @@ For the real release, create a PyPI account and API token at
243
217
  [pypi.org](https://pypi.org/), then run:
244
218
 
245
219
  ```bash
246
- python -m twine upload dist/sem2surface-0.2.0*
220
+ python -m twine upload dist/sem2surface-0.2.1*
247
221
  ```
248
222
 
249
223
  PyPI and TestPyPI use separate accounts and tokens. Never commit a token or put
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "sem2surface"
7
- version = "0.2.0"
7
+ version = "0.2.1"
8
8
  description = "3D surface reconstruction from multi-detector SEM/BSE images"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sem2surface
3
- Version: 0.2.0
3
+ Version: 0.2.1
4
4
  Summary: 3D surface reconstruction from multi-detector SEM/BSE images
5
5
  Author: Vladislav A. Yastrebov
6
6
  License-Expression: BSD-3-Clause
@@ -39,6 +39,9 @@ Dynamic: license-file
39
39
 
40
40
  # sem2surface
41
41
 
42
+ [![PyPI version](https://img.shields.io/pypi/v/sem2surface.svg)](https://pypi.org/project/sem2surface/)
43
+ [![License: BSD 3-Clause](https://img.shields.io/pypi/l/sem2surface.svg)](https://github.com/vyastreb/sem2surface/blob/master/LICENSE)
44
+
42
45
  `sem2surface` reconstructs a three-dimensional surface from three to five
43
46
  multi-detector SEM/BSE images. It extracts two normalized principal images,
44
47
  identifies their orientation with a Radon transform, and integrates the resulting
@@ -54,78 +57,49 @@ calibration procedure.
54
57
 
55
58
  ## Installation
56
59
 
57
- Python 3.10 or newer is required. An isolated virtual environment is strongly
58
- recommended so the application does not conflict with system Python packages.
59
-
60
- ### Linux and macOS
61
-
62
- Create an environment and install a released version:
60
+ Python 3.10 or newer is required. Install `sem2surface` from PyPI with:
63
61
 
64
62
  ```bash
65
- python3 -m venv .venv
66
- source .venv/bin/activate
67
- python -m pip install --upgrade pip
68
- python -m pip install sem2surface
69
- sem2surface-gui
63
+ pip install sem2surface
70
64
  ```
71
65
 
72
- Until a release is uploaded to PyPI, run the final installation command from
73
- this source checkout instead:
66
+ If several Python installations are present, use the interpreter explicitly:
74
67
 
75
68
  ```bash
76
- python -m pip install .
69
+ python3 -m pip install sem2surface # Linux or macOS
77
70
  ```
78
71
 
79
- On Linux, Tkinter may be packaged separately. For example, Ubuntu and Debian
80
- users can install it with their system package manager as `python3-tk` before
81
- creating the environment.
82
-
83
72
  ### Windows
84
73
 
85
74
  Install Python 3.10 or newer from
86
75
  [python.org](https://www.python.org/downloads/windows/). Keep the standard
87
- `pip`, Tcl/Tk, and Python Launcher components enabled. Then open PowerShell in
88
- the folder where you want the environment and run:
76
+ `pip`, Tcl/Tk, and Python Launcher components enabled. Then open PowerShell or
77
+ Command Prompt and run:
89
78
 
90
79
  ```powershell
91
- py -3 -m venv .venv
92
- .\.venv\Scripts\Activate.ps1
93
- python -m pip install --upgrade pip
94
- python -m pip install sem2surface
80
+ py -m pip install sem2surface
95
81
  sem2surface-gui
96
82
  ```
97
83
 
98
- If PowerShell blocks the activation script, allow it only for the current
99
- PowerShell process and retry activation:
84
+ If Windows cannot find the installed launcher, start the GUI through Python:
100
85
 
101
86
  ```powershell
102
- Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
103
- .\.venv\Scripts\Activate.ps1
104
- ```
105
-
106
- In Command Prompt, activate the same environment with:
107
-
108
- ```bat
109
- .venv\Scripts\activate.bat
87
+ py -m sem2surface_gui
110
88
  ```
111
89
 
112
- Activation is optional. The GUI can always be launched directly:
113
-
114
- ```powershell
115
- .\.venv\Scripts\sem2surface-gui.exe
116
- ```
90
+ On Linux, Tkinter may be packaged separately. For example, Ubuntu and Debian
91
+ users can install `python3-tk` with their system package manager.
117
92
 
118
- Before the PyPI release, install either from a source checkout with
119
- `python -m pip install .` or from the provided wheel:
93
+ A virtual environment is optional. It is useful when the system Python is
94
+ externally managed, installation permissions are restricted, or other packages
95
+ have conflicting dependencies:
120
96
 
121
- ```powershell
122
- python -m pip install "C:\path\to\sem2surface-0.2.0-py3-none-any.whl"
97
+ ```bash
98
+ python3 -m venv .venv
99
+ source .venv/bin/activate # Windows PowerShell: .\.venv\Scripts\Activate.ps1
100
+ python -m pip install sem2surface
123
101
  ```
124
102
 
125
- Use `deactivate` to leave the environment on any platform. Do not copy a
126
- virtual environment between computers or move it after creation; create a new
127
- one and reinstall the package instead.
128
-
129
103
  VTK export is optional because VTK is a large dependency:
130
104
 
131
105
  ```bash
@@ -266,7 +240,7 @@ For a first trial, create a separate account and API token on
266
240
  version:
267
241
 
268
242
  ```bash
269
- python -m twine upload --repository testpypi dist/sem2surface-0.2.0*
243
+ python -m twine upload --repository testpypi dist/sem2surface-0.2.1*
270
244
  ```
271
245
 
272
246
  When prompted, use `__token__` as the username and the complete TestPyPI token,
@@ -274,7 +248,7 @@ including its `pypi-` prefix, as the password. Test the uploaded wheel in a new
274
248
  environment without resolving dependencies from TestPyPI:
275
249
 
276
250
  ```bash
277
- python -m pip install --index-url https://test.pypi.org/simple/ --no-deps sem2surface==0.2.0
251
+ python -m pip install --index-url https://test.pypi.org/simple/ --no-deps sem2surface==0.2.1
278
252
  sem2surface --version
279
253
  ```
280
254
 
@@ -282,7 +256,7 @@ For the real release, create a PyPI account and API token at
282
256
  [pypi.org](https://pypi.org/), then run:
283
257
 
284
258
  ```bash
285
- python -m twine upload dist/sem2surface-0.2.0*
259
+ python -m twine upload dist/sem2surface-0.2.1*
286
260
  ```
287
261
 
288
262
  PyPI and TestPyPI use separate accounts and tokens. Never commit a token or put
@@ -23,7 +23,7 @@ from scipy.ndimage import gaussian_filter
23
23
  from skimage.transform import radon
24
24
 
25
25
 
26
- __version__ = "0.2.0"
26
+ __version__ = "0.2.1"
27
27
  DEFAULT_PIXEL_SIZE = 1e-6
28
28
  _PIXEL_WIDTH_TAGS = ("PixelWidth=", "Image Pixel Size =")
29
29
 
@@ -11,7 +11,7 @@ from typing import Sequence
11
11
  try:
12
12
  VERSION = version("sem2surface")
13
13
  except PackageNotFoundError: # Running directly from an unpacked source tree.
14
- VERSION = "0.2.0"
14
+ VERSION = "0.2.1"
15
15
 
16
16
 
17
17
  def build_parser() -> argparse.ArgumentParser:
@@ -8,7 +8,7 @@ def test_cli_exposes_version(capsys):
8
8
  with pytest.raises(SystemExit) as raised:
9
9
  parser.parse_args(["--version"])
10
10
  assert raised.value.code == 0
11
- assert "0.2.0" in capsys.readouterr().out
11
+ assert "0.2.1" in capsys.readouterr().out
12
12
 
13
13
 
14
14
  def test_cli_requires_three_images(capsys):
File without changes
File without changes