pystand 1.11__py3-none-any.whl → 1.12__py3-none-any.whl

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.1
2
2
  Name: pystand
3
- Version: 1.11
3
+ Version: 1.12
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
@@ -0,0 +1,6 @@
1
+ pystand.py,sha256=lWNyCZTLNNmh6OoKrAG7pKCqOaoZollVpCWbAHrCxeM,32450
2
+ pystand-1.12.dist-info/METADATA,sha256=VV3aLNNThQ0p06Hk_MWTN79jZ4MaKCgF273oMuRrZBE,15923
3
+ pystand-1.12.dist-info/WHEEL,sha256=GV9aMThwP_4oNCtvEC2ec3qUYutgWeAzklro_0m4WJQ,91
4
+ pystand-1.12.dist-info/entry_points.txt,sha256=DG4ps3I3nni1bubV1tXs6u8FARgkdbAYaEAzZD4RAo8,41
5
+ pystand-1.12.dist-info/top_level.txt,sha256=NoWUh19UQymAJLHTCdxMnVwV6Teftef5fzyF3OWLyNY,8
6
+ pystand-1.12.dist-info/RECORD,,
pystand.py CHANGED
@@ -167,11 +167,11 @@ class VersionMatcher:
167
167
  version += '.'
168
168
 
169
169
  # Only allow upgrade of formal release to another formal
170
- # release, or alpha/beta release to another alpha/beta release.
170
+ # release.
171
171
  for full_version in self.seq:
172
172
  if full_version.startswith(version):
173
- if not upgrade \
174
- or is_release_version(full_version) == is_release:
173
+ if not upgrade or not is_release \
174
+ or is_release_version(full_version):
175
175
  return full_version
176
176
 
177
177
  return None
@@ -670,11 +670,11 @@ class _update(COMMAND):
670
670
  if not (data := get_json(args._versions / version / args._data)):
671
671
  continue
672
672
 
673
- release = data.get('release')
674
- if release == release_target:
673
+ if (release := data.get('release')) == release_target:
675
674
  continue
676
675
 
677
- nextver = matcher.match(version, upgrade=True)
676
+ if not (nextver := matcher.match(version, upgrade=True)):
677
+ continue
678
678
 
679
679
  distribution = data.get('distribution')
680
680
  if not distribution or distribution not in files.get(nextver, {}):
@@ -768,23 +768,31 @@ class _list(COMMAND):
768
768
  app = ''
769
769
  if release_target and release != release_target:
770
770
  nextver = matcher.match(version, upgrade=True)
771
- new_vdir = args._versions / nextver
772
- if nextver != version and new_vdir.exists():
771
+ if not nextver:
773
772
  if args.verbose:
774
- nrelease = get_json(
775
- new_vdir / args._data).get('release', '?')
776
- app = f' not eligible for '\
777
- f'update because {fmt(nextver, nrelease)} '\
778
- 'is already installed.'
773
+ app = ' not eligible for update because '\
774
+ f'release {release_target} does not provide '\
775
+ 'this version.'
779
776
  else:
780
- # May not be updatable if newer release does not support
781
- # this same distribution anymore
782
- if nextver and distribution in files.get(nextver, {}):
783
- upd = f' updatable to {fmt(nextver, release_target)}'
784
- elif args.verbose:
785
- app = f' not eligible for update because '\
786
- f'{fmt(nextver, release_target)} does '\
787
- f'not provide distribution="{distribution}".'
777
+ new_vdir = args._versions / nextver
778
+ if nextver != version and new_vdir.exists():
779
+ if args.verbose:
780
+ nrelease = get_json(
781
+ new_vdir / args._data).get('release', '?')
782
+ app = f' not eligible for '\
783
+ f'update because {fmt(nextver, nrelease)} '\
784
+ 'is already installed.'
785
+ else:
786
+ # May not be updatable if newer release does not support
787
+ # this same distribution anymore
788
+ if nextver and distribution in files.get(nextver, {}):
789
+ upd = ' updatable to '\
790
+ f'{fmt(nextver, release_target)}'
791
+ elif args.verbose:
792
+ app = ' not eligible for update because '\
793
+ f'{fmt(nextver, release_target)} does '\
794
+ 'not provide '\
795
+ f'distribution="{distribution}".'
788
796
 
789
797
  print(f'{fmt(version, release)}{upd} '
790
798
  f'distribution="{distribution}"{app}')
@@ -848,7 +856,8 @@ class _path(COMMAND):
848
856
  matcher = VersionMatcher([f.name for f in iter_versions(args)])
849
857
  version = matcher.match(args.version) or args.version
850
858
  if not version:
851
- return f'No Python version installed.'
859
+ return 'No Python version installed.'
860
+
852
861
  path = args._versions / version
853
862
  if not path.is_dir():
854
863
  return f'Version "{version}" is not installed.'
@@ -1,6 +0,0 @@
1
- pystand.py,sha256=HuCNuIYwXUcVCpAzqtEEj9hdMn-S4j4F7t8yYfNuYeU,32048
2
- pystand-1.11.dist-info/METADATA,sha256=6NYVL_gVjjOT0kvk66KNUFfXlRU-KuGo5HBzuO16w0g,15923
3
- pystand-1.11.dist-info/WHEEL,sha256=GV9aMThwP_4oNCtvEC2ec3qUYutgWeAzklro_0m4WJQ,91
4
- pystand-1.11.dist-info/entry_points.txt,sha256=DG4ps3I3nni1bubV1tXs6u8FARgkdbAYaEAzZD4RAo8,41
5
- pystand-1.11.dist-info/top_level.txt,sha256=NoWUh19UQymAJLHTCdxMnVwV6Teftef5fzyF3OWLyNY,8
6
- pystand-1.11.dist-info/RECORD,,
File without changes