pystand 1.5__tar.gz → 1.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.
@@ -19,4 +19,4 @@ doc:
19
19
  update-readme-usage
20
20
 
21
21
  clean:
22
- @rm -vrf *.egg-info .venv/ build/ dist/ __pycache__ */__pycache__
22
+ @rm -vrf *.egg-info .venv/ build/ dist/ __pycache__
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pystand
3
- Version: 1.5
3
+ Version: 1.6
4
4
  Summary: Install Python versions from python-build-standalone project
5
5
  Author-email: Mark Blakeney <mark.blakeney@bullet-systems.net>
6
6
  License: GPLv3
@@ -99,12 +99,15 @@ $ pipx install --python $(pystand path -p 3.12) cowsay
99
99
  See detailed usage information in the [Usage](#usage) section that
100
100
  follows.
101
101
 
102
- Note that unlike nearly all similar tools such as [`pyenv`][pyenv],
103
- [`pdm python`][pdmpy], and [`hatch python`][hatchpy], `pystand` directly
104
- checks the [`python-build-standalone`][pbs] github site to fetch for new
105
- [releases][pbs-rel] but those other tools require a software update
106
- before they can see new releases. This means that Python updates are
107
- available more quickly from `pystand` than other tools.
102
+ Note that similar tools such as [`pdm python`][pdmpy], [`hatch
103
+ python`][hatchpy], and [`rye toolchain`][ryepy] also use
104
+ [`python-build-standalone`][pbs] build releases. However, `pystand` is
105
+ unique because it directly checks the [`python-build-standalone`][pbs]
106
+ github site for new [releases][pbs-rel]. Those other tools
107
+ require a software update before they can fetch and use new
108
+ [`python-build-standalone`][pbs] releases. This means that new Python
109
+ versions and updates are always available more quickly from `pystand`
110
+ than those other tools.
108
111
 
109
112
  This utility has been developed and tested on Linux but should also work
110
113
  on macOS and Windows although has not been tried on those platforms. The
@@ -118,8 +121,8 @@ Type `pystand` or `pystand -h` to view the usage summary:
118
121
  ```
119
122
  usage: pystand [-h] [-D DISTRIBUTION] [-B BASE_DIR] [-C CACHE_MINUTES]
120
123
  [--purge-days PURGE_DAYS]
121
- [--github-access-token GITHUB_ACCESS_TOKEN]
122
- [--do-not-strip DO_NOT_STRIP] [-V]
124
+ [--github-access-token GITHUB_ACCESS_TOKEN] [--do-not-strip]
125
+ [-V]
123
126
  {install,update,remove,list,show,path} ...
124
127
 
125
128
  Command line tool to download, install, and update pre-built Python versions
@@ -147,8 +150,7 @@ options:
147
150
  --github-access-token GITHUB_ACCESS_TOKEN
148
151
  optional Github access token. Can specify to reduce
149
152
  rate limiting.
150
- --do-not-strip DO_NOT_STRIP
151
- Do not strip unneeded symbols from binaries
153
+ --do-not-strip Do not strip unneeded symbols from binaries
152
154
  -V show pystand version
153
155
 
154
156
  Commands:
@@ -376,5 +378,6 @@ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License at
376
378
  [pdmpy]: https://pdm-project.org/en/latest/usage/project/#install-python-interpreters-with-pdm
377
379
  [hatch]: https://hatch.pypa.io/
378
380
  [hatchpy]: https://hatch.pypa.io/latest/tutorials/python/manage/
381
+ [ryepy]: https://rye.astral.sh/guide/toolchains/#fetching-toolchains
379
382
 
380
383
  <!-- vim: se ai syn=markdown: -->
@@ -83,12 +83,15 @@ $ pipx install --python $(pystand path -p 3.12) cowsay
83
83
  See detailed usage information in the [Usage](#usage) section that
84
84
  follows.
85
85
 
86
- Note that unlike nearly all similar tools such as [`pyenv`][pyenv],
87
- [`pdm python`][pdmpy], and [`hatch python`][hatchpy], `pystand` directly
88
- checks the [`python-build-standalone`][pbs] github site to fetch for new
89
- [releases][pbs-rel] but those other tools require a software update
90
- before they can see new releases. This means that Python updates are
91
- available more quickly from `pystand` than other tools.
86
+ Note that similar tools such as [`pdm python`][pdmpy], [`hatch
87
+ python`][hatchpy], and [`rye toolchain`][ryepy] also use
88
+ [`python-build-standalone`][pbs] build releases. However, `pystand` is
89
+ unique because it directly checks the [`python-build-standalone`][pbs]
90
+ github site for new [releases][pbs-rel]. Those other tools
91
+ require a software update before they can fetch and use new
92
+ [`python-build-standalone`][pbs] releases. This means that new Python
93
+ versions and updates are always available more quickly from `pystand`
94
+ than those other tools.
92
95
 
93
96
  This utility has been developed and tested on Linux but should also work
94
97
  on macOS and Windows although has not been tried on those platforms. The
@@ -102,8 +105,8 @@ Type `pystand` or `pystand -h` to view the usage summary:
102
105
  ```
103
106
  usage: pystand [-h] [-D DISTRIBUTION] [-B BASE_DIR] [-C CACHE_MINUTES]
104
107
  [--purge-days PURGE_DAYS]
105
- [--github-access-token GITHUB_ACCESS_TOKEN]
106
- [--do-not-strip DO_NOT_STRIP] [-V]
108
+ [--github-access-token GITHUB_ACCESS_TOKEN] [--do-not-strip]
109
+ [-V]
107
110
  {install,update,remove,list,show,path} ...
108
111
 
109
112
  Command line tool to download, install, and update pre-built Python versions
@@ -131,8 +134,7 @@ options:
131
134
  --github-access-token GITHUB_ACCESS_TOKEN
132
135
  optional Github access token. Can specify to reduce
133
136
  rate limiting.
134
- --do-not-strip DO_NOT_STRIP
135
- Do not strip unneeded symbols from binaries
137
+ --do-not-strip Do not strip unneeded symbols from binaries
136
138
  -V show pystand version
137
139
 
138
140
  Commands:
@@ -360,5 +362,6 @@ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License at
360
362
  [pdmpy]: https://pdm-project.org/en/latest/usage/project/#install-python-interpreters-with-pdm
361
363
  [hatch]: https://hatch.pypa.io/
362
364
  [hatchpy]: https://hatch.pypa.io/latest/tutorials/python/manage/
365
+ [ryepy]: https://rye.astral.sh/guide/toolchains/#fetching-toolchains
363
366
 
364
367
  <!-- vim: se ai syn=markdown: -->
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pystand
3
- Version: 1.5
3
+ Version: 1.6
4
4
  Summary: Install Python versions from python-build-standalone project
5
5
  Author-email: Mark Blakeney <mark.blakeney@bullet-systems.net>
6
6
  License: GPLv3
@@ -99,12 +99,15 @@ $ pipx install --python $(pystand path -p 3.12) cowsay
99
99
  See detailed usage information in the [Usage](#usage) section that
100
100
  follows.
101
101
 
102
- Note that unlike nearly all similar tools such as [`pyenv`][pyenv],
103
- [`pdm python`][pdmpy], and [`hatch python`][hatchpy], `pystand` directly
104
- checks the [`python-build-standalone`][pbs] github site to fetch for new
105
- [releases][pbs-rel] but those other tools require a software update
106
- before they can see new releases. This means that Python updates are
107
- available more quickly from `pystand` than other tools.
102
+ Note that similar tools such as [`pdm python`][pdmpy], [`hatch
103
+ python`][hatchpy], and [`rye toolchain`][ryepy] also use
104
+ [`python-build-standalone`][pbs] build releases. However, `pystand` is
105
+ unique because it directly checks the [`python-build-standalone`][pbs]
106
+ github site for new [releases][pbs-rel]. Those other tools
107
+ require a software update before they can fetch and use new
108
+ [`python-build-standalone`][pbs] releases. This means that new Python
109
+ versions and updates are always available more quickly from `pystand`
110
+ than those other tools.
108
111
 
109
112
  This utility has been developed and tested on Linux but should also work
110
113
  on macOS and Windows although has not been tried on those platforms. The
@@ -118,8 +121,8 @@ Type `pystand` or `pystand -h` to view the usage summary:
118
121
  ```
119
122
  usage: pystand [-h] [-D DISTRIBUTION] [-B BASE_DIR] [-C CACHE_MINUTES]
120
123
  [--purge-days PURGE_DAYS]
121
- [--github-access-token GITHUB_ACCESS_TOKEN]
122
- [--do-not-strip DO_NOT_STRIP] [-V]
124
+ [--github-access-token GITHUB_ACCESS_TOKEN] [--do-not-strip]
125
+ [-V]
123
126
  {install,update,remove,list,show,path} ...
124
127
 
125
128
  Command line tool to download, install, and update pre-built Python versions
@@ -147,8 +150,7 @@ options:
147
150
  --github-access-token GITHUB_ACCESS_TOKEN
148
151
  optional Github access token. Can specify to reduce
149
152
  rate limiting.
150
- --do-not-strip DO_NOT_STRIP
151
- Do not strip unneeded symbols from binaries
153
+ --do-not-strip Do not strip unneeded symbols from binaries
152
154
  -V show pystand version
153
155
 
154
156
  Commands:
@@ -376,5 +378,6 @@ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License at
376
378
  [pdmpy]: https://pdm-project.org/en/latest/usage/project/#install-python-interpreters-with-pdm
377
379
  [hatch]: https://hatch.pypa.io/
378
380
  [hatchpy]: https://hatch.pypa.io/latest/tutorials/python/manage/
381
+ [ryepy]: https://rye.astral.sh/guide/toolchains/#fetching-toolchains
379
382
 
380
383
  <!-- vim: se ai syn=markdown: -->
@@ -368,7 +368,7 @@ def remove(args: Namespace, version: str) -> None:
368
368
 
369
369
  shutil.rmtree(vdir)
370
370
 
371
- def strip(vdir: Path, distribution: str) -> None:
371
+ def strip_binaries(vdir: Path, distribution: str) -> None:
372
372
  'Strip binaries from files in a version directory'
373
373
  # Only run the strip command on Linux hosts and for Linux distributions
374
374
  if platform.system() != 'Linux' or '-linux-' not in distribution:
@@ -414,7 +414,7 @@ def install(args: Namespace, vdir: Path, release: str, distribution: str,
414
414
  error = f'Failed to write {version} data file: {error}'
415
415
 
416
416
  if not args.do_not_strip:
417
- strip(tmpdir_py, distribution)
417
+ strip_binaries(tmpdir_py, distribution)
418
418
 
419
419
  if not error:
420
420
  remove(args, version)
@@ -426,7 +426,7 @@ def install(args: Namespace, vdir: Path, release: str, distribution: str,
426
426
  def main() -> Optional[str]:
427
427
  'Main code'
428
428
  distro_default = DISTRIBUTIONS.get((platform.system(), platform.machine()))
429
- distro_help = distro_default if distro_default else '?unknown?'
429
+ distro_help = distro_default or '?unknown?'
430
430
 
431
431
  base_dir = Path('/opt' if is_admin() else
432
432
  platformdirs.user_data_dir()) / PROG
@@ -456,7 +456,7 @@ def main() -> Optional[str]:
456
456
  opt.add_argument('--github-access-token',
457
457
  help='optional Github access token. Can specify to reduce '
458
458
  'rate limiting.')
459
- opt.add_argument('--do-not-strip',
459
+ opt.add_argument('--do-not-strip', action='store_true',
460
460
  help='Do not strip unneeded symbols from binaries')
461
461
  opt.add_argument('-V', action='store_true',
462
462
  help=f'show {PROG} version')
File without changes
File without changes
File without changes
File without changes