lockss-turtles 0.6.0.dev22__tar.gz → 0.6.0.dev24__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.
@@ -8,33 +8,84 @@ Release Notes
8
8
 
9
9
  Released: ?
10
10
 
11
+ * **Changes**
12
+
13
+ * The configuration directory for Turtles in ``$XDG_CONFIG_HOME`` (by default ``$HOME/.config`` which is typically ``/home/$USER/.config``), ``/usr/local/share``, and ``/etc`` is now called ``lockss-turtles`` instead of ``lockss.turtles``.
14
+
15
+ * Some long options have been renamed (the corresponding short options remain unchanged):
16
+
17
+ .. list-table::
18
+ :header-rows: 1
19
+
20
+ * * Short option
21
+ * Long option, version 0.5.0
22
+ * Long option, version 0.6.0
23
+ * * ``-i``
24
+ * ``--identifier``
25
+ * ``--plugin-identifier``
26
+ * * ``-I``
27
+ * ``--identifiers``
28
+ * ``--plugin-identifiers``
29
+ * * ``-j``
30
+ * ``--jar``
31
+ * ``--plugin-jar``
32
+ * * ``-J``
33
+ * ``--jars``
34
+ * ``--plugin-jars``
35
+ * * ``-l``
36
+ * ``--layer``
37
+ * ``--plugin-registry-layer``
38
+ * * ``-L``
39
+ * ``--layers``
40
+ * ``--plugin-registry-layers``
41
+ * * n/a
42
+ * ``--password``
43
+ * ``--plugin-signing-password``
44
+
45
+ * Some short options have been renamed (the corresponding long options remain unchanged):
46
+
47
+ .. list-table::
48
+ :header-rows: 1
49
+
50
+ * * Long option
51
+ * Short option, version 0.5.0
52
+ * Short option, version 0.6.0
53
+ * * ``--plugin-registry-catalog``
54
+ * ``-r``
55
+ * ``-R``
56
+ * * ``--plugin-set-catalog``
57
+ * ``-s``
58
+ * ``-S``
59
+
60
+ * Bare arguments are no longer allowed and treated as plugin identifiers or plugin JARs; all plugin identifiers must be specified via ``--plugin-identifier/-i`` or ``--plugin-identifiers/-I`` options and all plugin JARS via ``--plugin-jar/-j`` or ``--plugin-jars/-J`` options.
61
+
62
+ * The ``usage`` command has been removed.
63
+
11
64
  * **Features**
12
65
 
13
- * Now using type hinting throughout.
66
+ * New options have been added:
14
67
 
15
- * Now using *lockss-pybasic* and *pydantic-argparse* internally.
68
+ .. list-table::
69
+ :header-rows: 1
16
70
 
17
- * **Changes**
71
+ * * Long option
72
+ * Short option
73
+ * * ``--plugin-registry``
74
+ * ``-r``
75
+ * * ``--plugin-set``
76
+ * ``-s``
18
77
 
19
- * The configuration directory for Turtles in ``$XDG_CONFIG_HOME`` (by default ``$HOME/.config``), ``/usr/local/share``, and ``/etc`` is now called ``lockss-turtles`` instead of ``lockss.turtles``.
78
+ * Options that read YAML files no longer expect each file to contain a single YAML configuration object, which must be of the kind they target; they now read all YAML configuration objects in each file, loading all the ones with the right kind and ignoring all the others with the other kinds. This applies to existing options ``--plugin-registry-catalog``/``-R`` and ``--plugin-set-catalog``/``-S``, and new options ``--plugin-registry``/``-r`` and ``--plugin-set``/``-s``.
20
79
 
21
- * Some long options have been renamed (the short options remain unchanged):
80
+ * In YAML files, values that are paths can now all be either relative with respect to the enclosing file or absolute.
22
81
 
23
- ============ ================= =============
24
- Short option Version 0.5.0 Version 0.6.0
25
- ============ ================= =============
26
- ``-i`` ``--identifier`` ``--plugin-identifier``
27
- ``-I`` ``--identifiers`` ``--plugin-identifiers``
28
- ``-j`` ``--jar`` ``--plugin-jar``
29
- ``-J`` ``--jars`` ``--plugin-jars``
30
- ``-l`` ``--layer`` ``--plugin-registry-layer``
31
- ``-L`` ``--layers`` ``--plugin-registry-layers``
32
- n/a ``--password`` ``--plugin-signing-password``
33
- ============ ================= =============
82
+ * Now using Pydantic for configuration objects instead of maintaining JSON Schema instances.
34
83
 
35
- * Bare arguments are no longer allowed and treated as plugin identifiers or plugin JARs; all plugin identifiers must be specified via ``--plugin-identifier/-i`` or ``--plugin-identifiers/-I`` options and all plugin JARS via ``--plugin-jar/-j`` or ``--plugin-jars/-J`` options.
84
+ * Now using type hinting throughout.
36
85
 
37
- * The ``usage`` command has been removed.
86
+ * Now using *lockss-pybasic* and *pydantic-argparse* internally.
87
+
88
+ * `Turtles documentation <https://docs.lockss.org/en/latest/software/turtles>`_ is now on the `LOCKSS Documentation Portal <https://docs.lockss.org/>`_.
38
89
 
39
90
  -----
40
91
  0.5.0
@@ -0,0 +1,64 @@
1
+ Metadata-Version: 2.3
2
+ Name: lockss-turtles
3
+ Version: 0.6.0.dev24
4
+ Summary: Library and command line tool to manage LOCKSS plugin sets and LOCKSS plugin registries
5
+ License: BSD-3-Clause
6
+ Author: Thib Guicherd-Callin
7
+ Author-email: thib@cs.stanford.edu
8
+ Maintainer: Thib Guicherd-Callin
9
+ Maintainer-email: thib@cs.stanford.edu
10
+ Requires-Python: >=3.9,<4.0
11
+ Classifier: Development Status :: 5 - Production/Stable
12
+ Classifier: Environment :: Console
13
+ Classifier: Framework :: Pydantic :: 2
14
+ Classifier: Intended Audience :: Developers
15
+ Classifier: Intended Audience :: System Administrators
16
+ Classifier: License :: OSI Approved :: BSD License
17
+ Classifier: Programming Language :: Python
18
+ Classifier: Topic :: Software Development :: Libraries
19
+ Classifier: Topic :: System :: Archiving
20
+ Classifier: Topic :: Utilities
21
+ Requires-Dist: exceptiongroup (>=1.3.0,<1.4.0)
22
+ Requires-Dist: java-manifest (>=1.1.0,<1.2.0)
23
+ Requires-Dist: lockss-pybasic (>=0.1.1,<0.2.0)
24
+ Requires-Dist: pydantic (>=2.11.0,<2.12.0)
25
+ Requires-Dist: pyyaml (>=6.0.0,<6.1.0)
26
+ Requires-Dist: xdg (>=6.0.0,<6.1.0)
27
+ Project-URL: Documentation, https://docs.lockss.org/en/latest/software/turtles
28
+ Project-URL: Repository, https://github.com/lockss/lockss-turtles
29
+ Project-URL: changelog, https://github.com/lockss/lockss-turtles/blob/main/CHANGELOG.rst
30
+ Project-URL: issues, https://github.com/lockss/lockss-turtles/issues
31
+ Description-Content-Type: text/x-rst
32
+
33
+ =======
34
+ Turtles
35
+ =======
36
+
37
+ .. |RELEASE| replace:: 0.6.0-dev24 NOT YET RELEASED
38
+ .. |RELEASE_DATE| replace:: NOT YET RELEASED
39
+ .. |TURTLES| replace:: **Turtles**
40
+
41
+ .. image:: https://assets.lockss.org/images/logos/turtles/turtles_128x128.png
42
+ :alt: Turtles logo
43
+ :align: right
44
+
45
+ |TURTLES| is a command line tool and Python library to manage LOCKSS plugin sets and LOCKSS plugin registries.
46
+
47
+ :Latest release: |RELEASE| (|RELEASE_DATE|)
48
+ :Documentation: https://docs.lockss.org/en/latest/software/turtles
49
+ :Release notes: `CHANGELOG.rst <https://github.com/lockss/lockss-turtles/blob/main/CHANGELOG.rst>`_
50
+ :License: `LICENSE <https://github.com/lockss/lockss-turtles/blob/main/LICENSE>`_
51
+ :Repository: https://github.com/lockss/lockss-turtles
52
+ :Issues: https://github.com/lockss/lockss-turtles/issues
53
+
54
+ ----
55
+
56
+ Quick Start::
57
+
58
+ # Install with pipx
59
+ pipx install lockss-turtles
60
+
61
+ # Verify installation and discover all the commands
62
+ turtles --help
63
+
64
+
@@ -0,0 +1,31 @@
1
+ =======
2
+ Turtles
3
+ =======
4
+
5
+ .. |RELEASE| replace:: 0.6.0-dev24 NOT YET RELEASED
6
+ .. |RELEASE_DATE| replace:: NOT YET RELEASED
7
+ .. |TURTLES| replace:: **Turtles**
8
+
9
+ .. image:: https://assets.lockss.org/images/logos/turtles/turtles_128x128.png
10
+ :alt: Turtles logo
11
+ :align: right
12
+
13
+ |TURTLES| is a command line tool and Python library to manage LOCKSS plugin sets and LOCKSS plugin registries.
14
+
15
+ :Latest release: |RELEASE| (|RELEASE_DATE|)
16
+ :Documentation: https://docs.lockss.org/en/latest/software/turtles
17
+ :Release notes: `CHANGELOG.rst <https://github.com/lockss/lockss-turtles/blob/main/CHANGELOG.rst>`_
18
+ :License: `LICENSE <https://github.com/lockss/lockss-turtles/blob/main/LICENSE>`_
19
+ :Repository: https://github.com/lockss/lockss-turtles
20
+ :Issues: https://github.com/lockss/lockss-turtles/issues
21
+
22
+ ----
23
+
24
+ Quick Start::
25
+
26
+ # Install with pipx
27
+ pipx install lockss-turtles
28
+
29
+ # Verify installation and discover all the commands
30
+ turtles --help
31
+
@@ -28,7 +28,7 @@
28
28
 
29
29
  [project]
30
30
  name = "lockss-turtles"
31
- version = "0.6.0-dev22" # Always change in __init__.py, and at release time in README.rst and CHANGELOG.rst
31
+ version = "0.6.0-dev24" # Always change in __init__.py, and at release time in README.rst and CHANGELOG.rst
32
32
  description = "Library and command line tool to manage LOCKSS plugin sets and LOCKSS plugin registries"
33
33
  license = { text = "BSD-3-Clause" }
34
34
  readme = "README.rst"
@@ -42,7 +42,7 @@ maintainers = [
42
42
  dependencies = [
43
43
  "exceptiongroup (>=1.3.0,<1.4.0)",
44
44
  "java-manifest (>=1.1.0,<1.2.0)",
45
- "lockss-pybasic (>=0.1.0,<0.2.0)",
45
+ "lockss-pybasic (>=0.1.1,<0.2.0)",
46
46
  "pyyaml (>=6.0.0,<6.1.0)",
47
47
  "xdg (>=6.0.0,<6.1.0)",
48
48
  "pydantic (>=2.11.0,<2.12.0)",
@@ -6,7 +6,7 @@ registries.
6
6
  """
7
7
 
8
8
  #: This package's version.
9
- __version__ = '0.6.0-dev22'
9
+ __version__ = '0.6.0-dev24'
10
10
 
11
11
  #: This package's copyright.
12
12
  __copyright__ = '''
@@ -94,8 +94,8 @@ class BaseModelWithRoot(BaseModel):
94
94
 
95
95
  def file_or(paths: Iterable[Path]) -> str:
96
96
  """
97
- Turns an iterable of file paths and returns them as a ``" or "``-separated
98
- string.
97
+ Turns an iterable of file paths into a ``" or "``-separated string suitable
98
+ for CLI messages.
99
99
 
100
100
  :param paths: A non-null list of file paths.
101
101
  :type paths: Iterable[Path]