Reintroduce explicit type annotations for vault CLI arguments
Marco Ricci

Marco Ricci commited on 2025-04-09 21:53:48
Zeige 1 geänderte Dateien mit 23 Einfügungen und 23 Löschungen.


The command-line function for the "vault" subcommand is now implemented
by accepting wildcard keyword arguments, so `mkdocstrings-python` no
longer has explicit type information for the known list of keyword
arguments to fall back on. So, explicitly (re-)annotate that list with
type information.
... ...
@@ -1784,90 +1784,90 @@ def derivepassphrase_vault(
1784 1784
             The `click` context.
1785 1785
 
1786 1786
     Other Parameters:
1787
-        service:
1787
+        service (str | None):
1788 1788
             A service name.  Required, unless operating on global
1789 1789
             settings or importing/exporting settings.
1790
-        use_phrase:
1790
+        use_phrase (bool):
1791 1791
             Command-line argument `-p`/`--phrase`.  If given, query the
1792 1792
             user for a passphrase instead of an SSH key.
1793
-        use_key:
1793
+        use_key (bool):
1794 1794
             Command-line argument `-k`/`--key`.  If given, query the
1795 1795
             user for an SSH key instead of a passphrase.
1796
-        length:
1796
+        length (int | None):
1797 1797
             Command-line argument `-l`/`--length`.  Override the default
1798 1798
             length of the generated passphrase.
1799
-        repeat:
1799
+        repeat (int | None):
1800 1800
             Command-line argument `-r`/`--repeat`.  Override the default
1801 1801
             repetition limit if positive, or disable the repetition
1802 1802
             limit if 0.
1803
-        lower:
1803
+        lower (int | None):
1804 1804
             Command-line argument `--lower`.  Require a given amount of
1805 1805
             ASCII lowercase characters if positive, else forbid ASCII
1806 1806
             lowercase characters if 0.
1807
-        upper:
1807
+        upper (int | None):
1808 1808
             Command-line argument `--upper`.  Same as `lower`, but for
1809 1809
             ASCII uppercase characters.
1810
-        number:
1810
+        number (int | None):
1811 1811
             Command-line argument `--number`.  Same as `lower`, but for
1812 1812
             ASCII digits.
1813
-        space:
1813
+        space (int | None):
1814 1814
             Command-line argument `--space`.  Same as `lower`, but for
1815 1815
             the space character.
1816
-        dash:
1816
+        dash (int | None):
1817 1817
             Command-line argument `--dash`.  Same as `lower`, but for
1818 1818
             the hyphen-minus and underscore characters.
1819
-        symbol:
1819
+        symbol (int | None):
1820 1820
             Command-line argument `--symbol`.  Same as `lower`, but for
1821 1821
             all other ASCII printable characters except lowercase
1822 1822
             characters, uppercase characters, digits, space and
1823 1823
             backquote.
1824
-        edit_notes:
1824
+        edit_notes (bool):
1825 1825
             Command-line argument `-n`/`--notes`.  If given, spawn an
1826 1826
             editor to edit notes for `service`.
1827
-        store_config_only:
1827
+        store_config_only (bool):
1828 1828
             Command-line argument `-c`/`--config`.  If given, saves the
1829 1829
             other given settings (`--key`, ..., `--symbol`) to the
1830 1830
             configuration file, either specifically for `service` or as
1831 1831
             global settings.
1832
-        delete_service_settings:
1832
+        delete_service_settings (bool):
1833 1833
             Command-line argument `-x`/`--delete`.  If given, removes
1834 1834
             the settings for `service` from the configuration file.
1835
-        delete_globals:
1835
+        delete_globals (bool):
1836 1836
             Command-line argument `--delete-globals`.  If given, removes
1837 1837
             the global settings from the configuration file.
1838
-        clear_all_settings:
1838
+        clear_all_settings (bool):
1839 1839
             Command-line argument `-X`/`--clear`.  If given, removes all
1840 1840
             settings from the configuration file.
1841
-        export_settings:
1841
+        export_settings (TextIO | os.PathLike[str] | None):
1842 1842
             Command-line argument `-e`/`--export`.  If a file object,
1843 1843
             then it must be open for writing and accept `str` inputs.
1844 1844
             Otherwise, a filename to open for writing.  Using `-` for
1845 1845
             standard output is supported.
1846
-        import_settings:
1846
+        import_settings (TextIO | os.PathLike[str] | None):
1847 1847
             Command-line argument `-i`/`--import`.  If a file object, it
1848 1848
             must be open for reading and yield `str` values.  Otherwise,
1849 1849
             a filename to open for reading.  Using `-` for standard
1850 1850
             input is supported.
1851
-        overwrite_config:
1851
+        overwrite_config (bool):
1852 1852
             Command-line arguments `--overwrite-existing` (True) and
1853 1853
             `--merge-existing` (False).  Controls whether config saving
1854 1854
             and config importing overwrite existing configurations, or
1855 1855
             merge them section-wise instead.
1856
-        unset_settings:
1856
+        unset_settings (Sequence[str]):
1857 1857
             Command-line argument `--unset`.  If given together with
1858 1858
             `--config`, unsets the specified settings (in addition to
1859 1859
             any other changes requested).
1860
-        export_as:
1860
+        export_as (Literal['json', 'sh']):
1861 1861
             Command-line argument `--export-as`.  If given together with
1862 1862
             `--export`, selects the format to export the current
1863 1863
             configuration as: JSON ("json", default) or POSIX sh ("sh").
1864
-        modern_editor_interface:
1864
+        modern_editor_interface (bool):
1865 1865
             Command-line arguments `--modern-editor-interface` (True)
1866 1866
             and `--vault-legacy-editor-interface` (False).  Controls
1867 1867
             whether editing notes uses a modern editor interface
1868 1868
             (supporting comments and aborting) or a vault(1)-compatible
1869 1869
             legacy editor interface (WYSIWYG notes contents).
1870
-        print_notes_before:
1870
+        print_notes_before (bool):
1871 1871
             Command-line arguments `--print-notes-before` (True) and
1872 1872
             `--print-notes-after` (False).  Controls whether the service
1873 1873
             notes (if any) are printed before the passphrase, or after.
1874 1874