Tue, 15 Mar 2022 17:49:51 +0100
Updated translations.
--- a/eric7/Preferences/ConfigurationPages/PipPage.ui Tue Mar 15 17:35:35 2022 +0100 +++ b/eric7/Preferences/ConfigurationPages/PipPage.ui Tue Mar 15 17:49:51 2022 +0100 @@ -106,7 +106,7 @@ <item row="2" column="1"> <widget class="QSpinBox" name="validitySpinBox"> <property name="toolTip"> - <string>Enter the Safetty DB cache validity time in hours (2 hours up to 7 days)</string> + <string>Enter the Safety DB cache validity time in hours (2 hours up to 7 days)</string> </property> <property name="alignment"> <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
--- a/eric7/i18n/eric7_cs.ts Tue Mar 15 17:35:35 2022 +0100 +++ b/eric7/i18n/eric7_cs.ts Tue Mar 15 17:49:51 2022 +0100 @@ -54800,113 +54800,113 @@ <context> <name>Pip</name> <message> - <location filename="../PipInterface/Pip.py" line="111" /> + <location filename="../PipInterface/Pip.py" line="123" /> <source>python exited with an error ({0}).</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="118" /> + <location filename="../PipInterface/Pip.py" line="130" /> <source>python did not finish within 30 seconds.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="121" /> + <location filename="../PipInterface/Pip.py" line="133" /> <source>python could not be started.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="181" /> + <location filename="../PipInterface/Pip.py" line="193" /> <source><project></source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="210" /> + <location filename="../PipInterface/Pip.py" line="222" /> <source>Interpreter for Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="211" /> + <location filename="../PipInterface/Pip.py" line="223" /> <source>No interpreter configured for the selected virtual environment.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="246" /> + <location filename="../PipInterface/Pip.py" line="258" /> <source>Install PIP</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="288" /> + <location filename="../PipInterface/Pip.py" line="300" /> <source>Repair PIP</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="371" /> + <location filename="../PipInterface/Pip.py" line="383" /> <source>Upgrade Packages</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="411" /> + <location filename="../PipInterface/Pip.py" line="423" /> <source>Install Packages</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="440" /> + <location filename="../PipInterface/Pip.py" line="452" /> <source>Install Packages from Requirements</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="503" /> - <location filename="../PipInterface/Pip.py" line="472" /> - <location filename="../PipInterface/Pip.py" line="463" /> - <source>Uninstall Packages</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/Pip.py" line="504" /> - <location filename="../PipInterface/Pip.py" line="464" /> - <source>Do you really want to uninstall these packages?</source> - <translation type="unfinished" /> - </message> - <message> <location filename="../PipInterface/Pip.py" line="515" /> + <location filename="../PipInterface/Pip.py" line="484" /> + <location filename="../PipInterface/Pip.py" line="475" /> + <source>Uninstall Packages</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="516" /> + <location filename="../PipInterface/Pip.py" line="476" /> + <source>Do you really want to uninstall these packages?</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="527" /> <source>Uninstall Packages from Requirements</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="832" /> + <location filename="../PipInterface/Pip.py" line="844" /> <source>Cache Info</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="857" /> - <location filename="../PipInterface/Pip.py" line="849" /> + <location filename="../PipInterface/Pip.py" line="869" /> + <location filename="../PipInterface/Pip.py" line="861" /> <source>List Cached Files</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="850" /> + <location filename="../PipInterface/Pip.py" line="862" /> <source>Enter a file pattern (empty for all):</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="881" /> - <location filename="../PipInterface/Pip.py" line="875" /> + <location filename="../PipInterface/Pip.py" line="893" /> + <location filename="../PipInterface/Pip.py" line="887" /> <source>Remove Cached Files</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="876" /> + <location filename="../PipInterface/Pip.py" line="888" /> <source>Enter a file pattern:</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="904" /> - <location filename="../PipInterface/Pip.py" line="899" /> + <location filename="../PipInterface/Pip.py" line="916" /> + <location filename="../PipInterface/Pip.py" line="911" /> <source>Purge Cache</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="900" /> + <location filename="../PipInterface/Pip.py" line="912" /> <source>Do you really want to purge the pip cache? All files need to be downloaded again.</source> <translation type="unfinished" /> </message> @@ -55449,6 +55449,16 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Perform vulnerability checks based on "Safety DB".</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Vulnerability Check</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Package</source> @@ -55466,6 +55476,11 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Affected Version</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Select to show verbose package information</source> <translation type="unfinished" /> </message> @@ -55556,104 +55571,104 @@ <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="169" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="177" /> <source>pip Menu</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="195" /> - <source>Name:</source> - <translation type="unfinished">Jméno:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="196" /> - <source>Version:</source> - <translation type="unfinished">Verze:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="197" /> - <source>Location:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="198" /> - <source>Requires:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="199" /> - <source>Summary:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="200" /> - <source>Homepage:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="201" /> - <source>Author:</source> - <translation type="unfinished">Autor:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="202" /> - <source>Author Email:</source> - <translation type="unfinished" /> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="203" /> - <source>License:</source> - <translation type="unfinished" /> + <source>Name:</source> + <translation type="unfinished">Jméno:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="204" /> - <source>Metadata Version:</source> - <translation type="unfinished" /> + <source>Version:</source> + <translation type="unfinished">Verze:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="205" /> - <source>Installer:</source> + <source>Location:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="206" /> - <source>Classifiers:</source> + <source>Requires:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="207" /> - <source>Entry Points:</source> + <source>Summary:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="208" /> + <source>Homepage:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="209" /> + <source>Author:</source> + <translation type="unfinished">Autor:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="210" /> + <source>Author Email:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="211" /> + <source>License:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="212" /> + <source>Metadata Version:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="213" /> + <source>Installer:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="214" /> + <source>Classifiers:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="215" /> + <source>Entry Points:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="216" /> <source>Files:</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="375" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="384" /> <source>Getting installed packages...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="390" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="400" /> <source>Getting outdated packages...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="975" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="812" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="790" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1019" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="856" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="834" /> <source>Search PyPI</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="791" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="835" /> <source><p>Received an error while searching for <b>{0}</b>.</p><p>Error: {1}</p></source> <translation type="unfinished" /> </message> <message numerus="yes"> - <location filename="../PipInterface/PipPackagesWidget.py" line="805" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="849" /> <source>%n package(s) found.</source> <translation type="unfinished"> <numerusform /> @@ -55662,117 +55677,143 @@ </translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="807" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="851" /> <source>Showing first 20 packages found.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="815" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="813" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="859" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="857" /> <source><p>There were no results for <b>{0}</b>.</p></source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="976" /> - <source><p>No package details info for <b>{0}</b> available.</p></source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="990" /> - <source>Install Pip</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="993" /> - <source>Install Pip to User-Site</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="996" /> - <source>Repair Pip</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1116" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1000" /> - <source>Install Packages</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1003" /> - <source>Install Local Package</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1007" /> - <source>Install Requirements</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1010" /> - <source>Re-Install Selected Packages</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1013" /> - <source>Uninstall Requirements</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1016" /> - <source>Generate Requirements...</source> - <translation type="unfinished" /> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1020" /> - <source>Show Cache Info...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1023" /> - <source>Show Cached Files...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1026" /> - <source>Remove Cached Files...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1029" /> - <source>Purge Cache...</source> + <source><p>No package details info for <b>{0}</b> available.</p></source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1034" /> - <source>Edit User Configuration...</source> + <source>Install Pip</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1037" /> + <source>Install Pip to User-Site</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1040" /> + <source>Repair Pip</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1170" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1044" /> + <source>Install Packages</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1047" /> + <source>Install Local Package</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1051" /> + <source>Install Requirements</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1054" /> + <source>Re-Install Selected Packages</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1057" /> + <source>Uninstall Requirements</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1060" /> + <source>Generate Requirements...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1064" /> + <source>Check Vulnerabilities</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1068" /> + <source>Update Vulnerability Database</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1072" /> + <source>Show Cache Info...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1075" /> + <source>Show Cached Files...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1078" /> + <source>Remove Cached Files...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1081" /> + <source>Purge Cache...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1086" /> + <source>Edit User Configuration...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1089" /> <source>Edit Environment Configuration...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1042" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1094" /> <source>Configure...</source> <translation type="unfinished">Konfigurovat...</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1237" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1224" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1213" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1292" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1279" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1268" /> <source>Edit Configuration</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1238" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1225" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1214" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1293" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1280" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1269" /> <source>No valid configuration path determined. Aborting</source> <translation type="unfinished" /> </message> <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1447" /> + <source>{0} {1}</source> + <comment>package name, package version</comment> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1469" /> + <source>Affected Version:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1472" /> + <source>Advisory:</source> + <translation type="unfinished" /> + </message> + <message> <source>Error: {0}</source> <translation type="vanished">Chyby: {0}</translation> </message> @@ -55785,6 +55826,11 @@ <translation type="unfinished" /> </message> <message> + <location filename="../Preferences/ConfigurationPages/PipPage.py" line="34" /> + <source><b>Note:</b> Leave empty to use the default Safety DB URL ({0}).</source> + <translation type="unfinished" /> + </message> + <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source><b>Configure pip</b></source> <translation type="unfinished" /> @@ -55801,6 +55847,36 @@ </message> <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Vulnerability Checks</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Safety DB URL:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the base URL for the Safety DB mirror to be used</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Cache Validity:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the Safety DB cache validity time in hours (2 hours up to 7 days)</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source> hours</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source>Environment</source> <translation type="unfinished" /> </message> @@ -55827,6 +55903,19 @@ </message> </context> <context> + <name>PipVulnerabilityChecker</name> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="218" /> + <source>Fetching Vulnerability Database</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="219" /> + <source><p>The vulnerability database <b>{0}</b> could not be loaded from <b>{1}</b>.</p><p>The vulnerability check is not available.</p></source> + <translation type="unfinished" /> + </message> + </context> + <context> <name>PixmapDiagram</name> <message> <location filename="../Graphics/PixmapDiagram.py" line="164" /> @@ -57094,18 +57183,18 @@ <context> <name>Preferences</name> <message> - <location filename="../Preferences/__init__.py" line="1651" /> + <location filename="../Preferences/__init__.py" line="1656" /> <source>Export Preferences</source> <translation>Předvolby exportu</translation> </message> <message> - <location filename="../Preferences/__init__.py" line="1679" /> - <location filename="../Preferences/__init__.py" line="1653" /> + <location filename="../Preferences/__init__.py" line="1684" /> + <location filename="../Preferences/__init__.py" line="1658" /> <source>Properties File (*.ini);;All Files (*)</source> <translation type="unfinished" /> </message> <message> - <location filename="../Preferences/__init__.py" line="1677" /> + <location filename="../Preferences/__init__.py" line="1682" /> <source>Import Preferences</source> <translation>Předvolby importu</translation> </message> @@ -92963,27 +93052,27 @@ <context> <name>VirtualenvAddEditDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="64" /> <source>Edit Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66" /> <source>Add Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="73" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="74" /> <source>Virtualenv Target Directory</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="78" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="79" /> <source>Python Interpreter</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="83" /> <source>Enter the executable search path to be prepended to the PATH environment variable. Use '{0}' as the separator.</source> <translation type="unfinished" /> </message> @@ -93557,7 +93646,7 @@ <context> <name>VirtualenvInterpreterSelectionDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="45" /> + <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="46" /> <source>Python Interpreter</source> <translation type="unfinished" /> </message>
--- a/eric7/i18n/eric7_de.ts Tue Mar 15 17:35:35 2022 +0100 +++ b/eric7/i18n/eric7_de.ts Tue Mar 15 17:49:51 2022 +0100 @@ -51269,113 +51269,113 @@ <context> <name>Pip</name> <message> - <location filename="../PipInterface/Pip.py" line="111" /> + <location filename="../PipInterface/Pip.py" line="123" /> <source>python exited with an error ({0}).</source> <translation>python endete mit einem Fehler ({0}).</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="118" /> + <location filename="../PipInterface/Pip.py" line="130" /> <source>python did not finish within 30 seconds.</source> <translation>python endete nicht innerhalb 30 Sekunden.</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="121" /> + <location filename="../PipInterface/Pip.py" line="133" /> <source>python could not be started.</source> <translation>python konnte nicht gestarted werden.</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="181" /> + <location filename="../PipInterface/Pip.py" line="193" /> <source><project></source> <translation><Projekt></translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="210" /> + <location filename="../PipInterface/Pip.py" line="222" /> <source>Interpreter for Virtual Environment</source> <translation>Interpreter für virtuelle Umgebung</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="211" /> + <location filename="../PipInterface/Pip.py" line="223" /> <source>No interpreter configured for the selected virtual environment.</source> <translation>Für die gewählte virtuelle Umgebung ist kein Interpreter konfiguriert.</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="246" /> + <location filename="../PipInterface/Pip.py" line="258" /> <source>Install PIP</source> <translation>PIP installieren</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="288" /> + <location filename="../PipInterface/Pip.py" line="300" /> <source>Repair PIP</source> <translation>PIP reparieren</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="371" /> + <location filename="../PipInterface/Pip.py" line="383" /> <source>Upgrade Packages</source> <translation>Pakete aktualisieren</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="411" /> + <location filename="../PipInterface/Pip.py" line="423" /> <source>Install Packages</source> <translation>Pakete installieren</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="440" /> + <location filename="../PipInterface/Pip.py" line="452" /> <source>Install Packages from Requirements</source> <translation>Pakete gem. Anforderungen installieren</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="503" /> - <location filename="../PipInterface/Pip.py" line="472" /> - <location filename="../PipInterface/Pip.py" line="463" /> - <source>Uninstall Packages</source> - <translation>Pakete deinstallieren</translation> - </message> - <message> - <location filename="../PipInterface/Pip.py" line="504" /> - <location filename="../PipInterface/Pip.py" line="464" /> - <source>Do you really want to uninstall these packages?</source> - <translation>Sollen diese Pakete wirklich deinstalliert werden?</translation> - </message> - <message> <location filename="../PipInterface/Pip.py" line="515" /> + <location filename="../PipInterface/Pip.py" line="484" /> + <location filename="../PipInterface/Pip.py" line="475" /> + <source>Uninstall Packages</source> + <translation>Pakete deinstallieren</translation> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="516" /> + <location filename="../PipInterface/Pip.py" line="476" /> + <source>Do you really want to uninstall these packages?</source> + <translation>Sollen diese Pakete wirklich deinstalliert werden?</translation> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="527" /> <source>Uninstall Packages from Requirements</source> <translation>Pakete gem. Anforderungen deinstallieren</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="832" /> + <location filename="../PipInterface/Pip.py" line="844" /> <source>Cache Info</source> <translation>Zwischenspeicherinformationen</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="857" /> - <location filename="../PipInterface/Pip.py" line="849" /> + <location filename="../PipInterface/Pip.py" line="869" /> + <location filename="../PipInterface/Pip.py" line="861" /> <source>List Cached Files</source> <translation>Liste zwischengespeicherte Dateien</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="850" /> + <location filename="../PipInterface/Pip.py" line="862" /> <source>Enter a file pattern (empty for all):</source> <translation>Gib ein Dateinamenmuster ein (leer für alle):</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="881" /> - <location filename="../PipInterface/Pip.py" line="875" /> + <location filename="../PipInterface/Pip.py" line="893" /> + <location filename="../PipInterface/Pip.py" line="887" /> <source>Remove Cached Files</source> <translation>Zwischengespeicherte Dateien Löschen</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="876" /> + <location filename="../PipInterface/Pip.py" line="888" /> <source>Enter a file pattern:</source> <translation>Gib ein Dateinamenmuster ein:</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="904" /> - <location filename="../PipInterface/Pip.py" line="899" /> + <location filename="../PipInterface/Pip.py" line="916" /> + <location filename="../PipInterface/Pip.py" line="911" /> <source>Purge Cache</source> <translation>Zwischenspeicher Leeren</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="900" /> + <location filename="../PipInterface/Pip.py" line="912" /> <source>Do you really want to purge the pip cache? All files need to be downloaded again.</source> <translation>Soll der pip Zwischenspeicher wirklich geleert werden? Alle Dateien müssen neu heruntergeladen werden.</translation> </message> @@ -51887,6 +51887,16 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Perform vulnerability checks based on "Safety DB".</source> + <translation>Verwundbarkeitsprüfungen basierend auf "Safety DB" durchführen.</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Vulnerability Check</source> + <translation>Verwundbarkeitsprüfung</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Package</source> @@ -51904,6 +51914,11 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Affected Version</source> + <translation>Betroffene Version</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Select to show verbose package information</source> <translation>Auswählen, um ausführlichere Informationen anzuzeigen</translation> </message> @@ -51994,104 +52009,104 @@ <translation>Drücken, um die ausgewählten Pakete in das Python Nutzerverzeichnis zu installieren</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="169" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="177" /> <source>pip Menu</source> <translation>pip Menü</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="195" /> - <source>Name:</source> - <translation>Name:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="196" /> - <source>Version:</source> - <translation>Version:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="197" /> - <source>Location:</source> - <translation>Speicherort:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="198" /> - <source>Requires:</source> - <translation>Erfordert:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="199" /> - <source>Summary:</source> - <translation>Kurzbeschreibung:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="200" /> - <source>Homepage:</source> - <translation>Homepage:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="201" /> - <source>Author:</source> - <translation>Autor:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="202" /> - <source>Author Email:</source> - <translation>Autor Email:</translation> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="203" /> - <source>License:</source> - <translation>Lizenz:</translation> + <source>Name:</source> + <translation>Name:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="204" /> - <source>Metadata Version:</source> - <translation>Metadaten Version:</translation> + <source>Version:</source> + <translation>Version:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="205" /> - <source>Installer:</source> - <translation>Installer:</translation> + <source>Location:</source> + <translation>Speicherort:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="206" /> - <source>Classifiers:</source> - <translation>Klassifizierungen:</translation> + <source>Requires:</source> + <translation>Erfordert:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="207" /> - <source>Entry Points:</source> - <translation>Einsprungpunkte:</translation> + <source>Summary:</source> + <translation>Kurzbeschreibung:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="208" /> + <source>Homepage:</source> + <translation>Homepage:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="209" /> + <source>Author:</source> + <translation>Autor:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="210" /> + <source>Author Email:</source> + <translation>Autor Email:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="211" /> + <source>License:</source> + <translation>Lizenz:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="212" /> + <source>Metadata Version:</source> + <translation>Metadaten Version:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="213" /> + <source>Installer:</source> + <translation>Installer:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="214" /> + <source>Classifiers:</source> + <translation>Klassifizierungen:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="215" /> + <source>Entry Points:</source> + <translation>Einsprungpunkte:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="216" /> <source>Files:</source> <translation>Dateien:</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="375" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="384" /> <source>Getting installed packages...</source> <translation>Ermittle installierte Pakete...</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="390" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="400" /> <source>Getting outdated packages...</source> <translation>Ermittle veraltete Pakete...</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="975" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="812" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="790" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1019" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="856" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="834" /> <source>Search PyPI</source> <translation>PyPI durchsuchen</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="791" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="835" /> <source><p>Received an error while searching for <b>{0}</b>.</p><p>Error: {1}</p></source> <translation><p>Fehler während der Suche nach <b>{0}</b> empfangen.</p><p>Fehler: {1}</p></translation> </message> <message numerus="yes"> - <location filename="../PipInterface/PipPackagesWidget.py" line="805" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="849" /> <source>%n package(s) found.</source> <translation> <numerusform>%n Paket gefunden.</numerusform> @@ -52099,116 +52114,142 @@ </translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="807" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="851" /> <source>Showing first 20 packages found.</source> <translation>Zeige die ersten 20 gefundenen Pakete.</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="815" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="813" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="859" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="857" /> <source><p>There were no results for <b>{0}</b>.</p></source> <translation><p>Es gab keine Ergebnisse für <b>{0}</b>.</p></translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="976" /> - <source><p>No package details info for <b>{0}</b> available.</p></source> - <translation><p>Keine detaillierten Paketinformationen für <b>{0}</b> verfügbar.</p></translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="990" /> - <source>Install Pip</source> - <translation>Pip installieren</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="993" /> - <source>Install Pip to User-Site</source> - <translation>Pip in Nutzerverzeichnis installieren</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="996" /> - <source>Repair Pip</source> - <translation>Pip reparieren</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1116" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1000" /> - <source>Install Packages</source> - <translation>Pakete installieren</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1003" /> - <source>Install Local Package</source> - <translation>Lokales Paket installieren</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1007" /> - <source>Install Requirements</source> - <translation>Paketanforderungen installieren</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1010" /> - <source>Re-Install Selected Packages</source> - <translation>Ausgewählte Pakete neu installieren</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1013" /> - <source>Uninstall Requirements</source> - <translation>Paketanforderungen deinstallieren</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1016" /> - <source>Generate Requirements...</source> - <translation>Anforderungen erzeugen...</translation> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1020" /> - <source>Show Cache Info...</source> - <translation>Zwischenspeicherinfo...</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1023" /> - <source>Show Cached Files...</source> - <translation>Zwischengespeicherte Dateien...</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1026" /> - <source>Remove Cached Files...</source> - <translation>Zwischengespeicherte Dateien löschen...</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1029" /> - <source>Purge Cache...</source> - <translation>Zwischenspeicher leeren...</translation> + <source><p>No package details info for <b>{0}</b> available.</p></source> + <translation><p>Keine detaillierten Paketinformationen für <b>{0}</b> verfügbar.</p></translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1034" /> - <source>Edit User Configuration...</source> - <translation>Nutzerkonfiguration bearbeiten...</translation> + <source>Install Pip</source> + <translation>Pip installieren</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1037" /> + <source>Install Pip to User-Site</source> + <translation>Pip in Nutzerverzeichnis installieren</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1040" /> + <source>Repair Pip</source> + <translation>Pip reparieren</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1170" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1044" /> + <source>Install Packages</source> + <translation>Pakete installieren</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1047" /> + <source>Install Local Package</source> + <translation>Lokales Paket installieren</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1051" /> + <source>Install Requirements</source> + <translation>Paketanforderungen installieren</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1054" /> + <source>Re-Install Selected Packages</source> + <translation>Ausgewählte Pakete neu installieren</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1057" /> + <source>Uninstall Requirements</source> + <translation>Paketanforderungen deinstallieren</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1060" /> + <source>Generate Requirements...</source> + <translation>Anforderungen erzeugen...</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1064" /> + <source>Check Vulnerabilities</source> + <translation>Verwundbarkeiten prüfen</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1068" /> + <source>Update Vulnerability Database</source> + <translation>Verwundbarkeitsdatenbank aktualisieren</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1072" /> + <source>Show Cache Info...</source> + <translation>Zwischenspeicherinfo...</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1075" /> + <source>Show Cached Files...</source> + <translation>Zwischengespeicherte Dateien...</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1078" /> + <source>Remove Cached Files...</source> + <translation>Zwischengespeicherte Dateien löschen...</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1081" /> + <source>Purge Cache...</source> + <translation>Zwischenspeicher leeren...</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1086" /> + <source>Edit User Configuration...</source> + <translation>Nutzerkonfiguration bearbeiten...</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1089" /> <source>Edit Environment Configuration...</source> <translation>Umgebungskonfiguration bearbeiten...</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1042" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1094" /> <source>Configure...</source> <translation>Einstellungen...</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1237" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1224" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1213" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1292" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1279" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1268" /> <source>Edit Configuration</source> <translation>Konfiguration bearbeiten</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1238" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1225" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1214" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1293" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1280" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1269" /> <source>No valid configuration path determined. Aborting</source> <translation>Es konnte kein gültiger Konfigurationspfad ermittelt werden. Abbruch</translation> </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1447" /> + <source>{0} {1}</source> + <comment>package name, package version</comment> + <translation>{0} {1}</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1469" /> + <source>Affected Version:</source> + <translation>Betroffene Version:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1472" /> + <source>Advisory:</source> + <translation>Advisory:</translation> + </message> </context> <context> <name>PipPage</name> @@ -52218,6 +52259,11 @@ <translation><b>Hinweis:</b> Leer lassen, um den Standardwert für die Index-URL (<a href="{0}">{0}</a>) zu verwenden.</translation> </message> <message> + <location filename="../Preferences/ConfigurationPages/PipPage.py" line="34" /> + <source><b>Note:</b> Leave empty to use the default Safety DB URL ({0}).</source> + <translation><b>Hinweis:</b> Leer lassen, um die Standard Safety DB URL ({0}) zu verwenden.</translation> + </message> + <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source><b>Configure pip</b></source> <translation><b>pip Einstellungen</p></translation> @@ -52234,6 +52280,36 @@ </message> <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Vulnerability Checks</source> + <translation>Verwundbarkeitsprüfungen</translation> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Safety DB URL:</source> + <translation>Safety DB URL:</translation> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the base URL for the Safety DB mirror to be used</source> + <translation>Gib den Basis-URL für den zu verwendenden Safety DB Spiegelserver ein</translation> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Cache Validity:</source> + <translation>Cache Gültigkeit:</translation> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the Safety DB cache validity time in hours (2 hours up to 7 days)</source> + <translation>Gib die Safety DB Cache Gültigkeitsdauer in Stunden ein (2 Stunden bis 7 Tage)</translation> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source> hours</source> + <translation> Stunden</translation> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source>Environment</source> <translation>Umgebung</translation> </message> @@ -52249,6 +52325,19 @@ </message> </context> <context> + <name>PipVulnerabilityChecker</name> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="218" /> + <source>Fetching Vulnerability Database</source> + <translation>Verwundbarkeitsdatenbank holen</translation> + </message> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="219" /> + <source><p>The vulnerability database <b>{0}</b> could not be loaded from <b>{1}</b>.</p><p>The vulnerability check is not available.</p></source> + <translation><p>Die Verwundbarkeitsdatenbank <b>{0}</b> konnte nicht von <b>{1}</b> geladen werden.</p><p>Die Verwundbarkeitsprüfung ist nicht verfügbar.</p></translation> + </message> + </context> + <context> <name>PixmapDiagram</name> <message> <location filename="../Graphics/PixmapDiagram.py" line="164" /> @@ -53512,18 +53601,18 @@ <context> <name>Preferences</name> <message> - <location filename="../Preferences/__init__.py" line="1651" /> + <location filename="../Preferences/__init__.py" line="1656" /> <source>Export Preferences</source> <translation>Einstellungen exportieren</translation> </message> <message> - <location filename="../Preferences/__init__.py" line="1679" /> - <location filename="../Preferences/__init__.py" line="1653" /> + <location filename="../Preferences/__init__.py" line="1684" /> + <location filename="../Preferences/__init__.py" line="1658" /> <source>Properties File (*.ini);;All Files (*)</source> <translation>Properties-Dateien (*.ini);;Alle Dateien (*)</translation> </message> <message> - <location filename="../Preferences/__init__.py" line="1677" /> + <location filename="../Preferences/__init__.py" line="1682" /> <source>Import Preferences</source> <translation>Einstellungen importieren</translation> </message> @@ -88156,27 +88245,27 @@ <context> <name>VirtualenvAddEditDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="64" /> <source>Edit Virtual Environment</source> <translation>Virtuelle Umgebung Bearbeiten</translation> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66" /> <source>Add Virtual Environment</source> <translation>Virtuelle Umgebung Hinzufügen</translation> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="73" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="74" /> <source>Virtualenv Target Directory</source> <translation>Zielverzeichnis der virtullen Umgebung</translation> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="78" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="79" /> <source>Python Interpreter</source> <translation>Python Interpreter</translation> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="83" /> <source>Enter the executable search path to be prepended to the PATH environment variable. Use '{0}' as the separator.</source> <translation>Gib den Suchpfad ein, der der PATH Umgebungsvariablen vorangestellt werden soll. Verwende '{0}' als Trenner.</translation> </message> @@ -88773,7 +88862,7 @@ <context> <name>VirtualenvInterpreterSelectionDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="45" /> + <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="46" /> <source>Python Interpreter</source> <translation>Python Interpreter</translation> </message>
--- a/eric7/i18n/eric7_empty.ts Tue Mar 15 17:35:35 2022 +0100 +++ b/eric7/i18n/eric7_empty.ts Tue Mar 15 17:49:51 2022 +0100 @@ -51011,113 +51011,113 @@ <context> <name>Pip</name> <message> - <location filename="../PipInterface/Pip.py" line="111" /> + <location filename="../PipInterface/Pip.py" line="123" /> <source>python exited with an error ({0}).</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="118" /> + <location filename="../PipInterface/Pip.py" line="130" /> <source>python did not finish within 30 seconds.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="121" /> + <location filename="../PipInterface/Pip.py" line="133" /> <source>python could not be started.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="181" /> + <location filename="../PipInterface/Pip.py" line="193" /> <source><project></source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="210" /> + <location filename="../PipInterface/Pip.py" line="222" /> <source>Interpreter for Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="211" /> + <location filename="../PipInterface/Pip.py" line="223" /> <source>No interpreter configured for the selected virtual environment.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="246" /> + <location filename="../PipInterface/Pip.py" line="258" /> <source>Install PIP</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="288" /> + <location filename="../PipInterface/Pip.py" line="300" /> <source>Repair PIP</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="371" /> + <location filename="../PipInterface/Pip.py" line="383" /> <source>Upgrade Packages</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="411" /> + <location filename="../PipInterface/Pip.py" line="423" /> <source>Install Packages</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="440" /> + <location filename="../PipInterface/Pip.py" line="452" /> <source>Install Packages from Requirements</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="503" /> - <location filename="../PipInterface/Pip.py" line="472" /> - <location filename="../PipInterface/Pip.py" line="463" /> - <source>Uninstall Packages</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/Pip.py" line="504" /> - <location filename="../PipInterface/Pip.py" line="464" /> - <source>Do you really want to uninstall these packages?</source> - <translation type="unfinished" /> - </message> - <message> <location filename="../PipInterface/Pip.py" line="515" /> + <location filename="../PipInterface/Pip.py" line="484" /> + <location filename="../PipInterface/Pip.py" line="475" /> + <source>Uninstall Packages</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="516" /> + <location filename="../PipInterface/Pip.py" line="476" /> + <source>Do you really want to uninstall these packages?</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="527" /> <source>Uninstall Packages from Requirements</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="832" /> + <location filename="../PipInterface/Pip.py" line="844" /> <source>Cache Info</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="857" /> - <location filename="../PipInterface/Pip.py" line="849" /> + <location filename="../PipInterface/Pip.py" line="869" /> + <location filename="../PipInterface/Pip.py" line="861" /> <source>List Cached Files</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="850" /> + <location filename="../PipInterface/Pip.py" line="862" /> <source>Enter a file pattern (empty for all):</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="881" /> - <location filename="../PipInterface/Pip.py" line="875" /> + <location filename="../PipInterface/Pip.py" line="893" /> + <location filename="../PipInterface/Pip.py" line="887" /> <source>Remove Cached Files</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="876" /> + <location filename="../PipInterface/Pip.py" line="888" /> <source>Enter a file pattern:</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="904" /> - <location filename="../PipInterface/Pip.py" line="899" /> + <location filename="../PipInterface/Pip.py" line="916" /> + <location filename="../PipInterface/Pip.py" line="911" /> <source>Purge Cache</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="900" /> + <location filename="../PipInterface/Pip.py" line="912" /> <source>Do you really want to purge the pip cache? All files need to be downloaded again.</source> <translation type="unfinished" /> </message> @@ -51629,6 +51629,16 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Perform vulnerability checks based on "Safety DB".</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Vulnerability Check</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Package</source> @@ -51646,6 +51656,11 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Affected Version</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Select to show verbose package information</source> <translation type="unfinished" /> </message> @@ -51736,220 +51751,246 @@ <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="169" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="177" /> <source>pip Menu</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="195" /> - <source>Name:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="196" /> - <source>Version:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="197" /> - <source>Location:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="198" /> - <source>Requires:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="199" /> - <source>Summary:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="200" /> - <source>Homepage:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="201" /> - <source>Author:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="202" /> - <source>Author Email:</source> - <translation type="unfinished" /> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="203" /> - <source>License:</source> + <source>Name:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="204" /> - <source>Metadata Version:</source> + <source>Version:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="205" /> - <source>Installer:</source> + <source>Location:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="206" /> - <source>Classifiers:</source> + <source>Requires:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="207" /> - <source>Entry Points:</source> + <source>Summary:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="208" /> + <source>Homepage:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="209" /> + <source>Author:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="210" /> + <source>Author Email:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="211" /> + <source>License:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="212" /> + <source>Metadata Version:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="213" /> + <source>Installer:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="214" /> + <source>Classifiers:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="215" /> + <source>Entry Points:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="216" /> <source>Files:</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="375" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="384" /> <source>Getting installed packages...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="390" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="400" /> <source>Getting outdated packages...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="975" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="812" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="790" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1019" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="856" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="834" /> <source>Search PyPI</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="791" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="835" /> <source><p>Received an error while searching for <b>{0}</b>.</p><p>Error: {1}</p></source> <translation type="unfinished" /> </message> <message numerus="yes"> - <location filename="../PipInterface/PipPackagesWidget.py" line="805" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="849" /> <source>%n package(s) found.</source> <translation type="unfinished"> <numerusform /> </translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="807" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="851" /> <source>Showing first 20 packages found.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="815" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="813" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="859" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="857" /> <source><p>There were no results for <b>{0}</b>.</p></source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="976" /> - <source><p>No package details info for <b>{0}</b> available.</p></source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="990" /> - <source>Install Pip</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="993" /> - <source>Install Pip to User-Site</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="996" /> - <source>Repair Pip</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1116" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1000" /> - <source>Install Packages</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1003" /> - <source>Install Local Package</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1007" /> - <source>Install Requirements</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1010" /> - <source>Re-Install Selected Packages</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1013" /> - <source>Uninstall Requirements</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1016" /> - <source>Generate Requirements...</source> - <translation type="unfinished" /> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1020" /> - <source>Show Cache Info...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1023" /> - <source>Show Cached Files...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1026" /> - <source>Remove Cached Files...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1029" /> - <source>Purge Cache...</source> + <source><p>No package details info for <b>{0}</b> available.</p></source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1034" /> - <source>Edit User Configuration...</source> + <source>Install Pip</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1037" /> + <source>Install Pip to User-Site</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1040" /> + <source>Repair Pip</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1170" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1044" /> + <source>Install Packages</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1047" /> + <source>Install Local Package</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1051" /> + <source>Install Requirements</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1054" /> + <source>Re-Install Selected Packages</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1057" /> + <source>Uninstall Requirements</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1060" /> + <source>Generate Requirements...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1064" /> + <source>Check Vulnerabilities</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1068" /> + <source>Update Vulnerability Database</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1072" /> + <source>Show Cache Info...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1075" /> + <source>Show Cached Files...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1078" /> + <source>Remove Cached Files...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1081" /> + <source>Purge Cache...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1086" /> + <source>Edit User Configuration...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1089" /> <source>Edit Environment Configuration...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1042" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1094" /> <source>Configure...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1237" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1224" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1213" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1292" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1279" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1268" /> <source>Edit Configuration</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1238" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1225" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1214" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1293" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1280" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1269" /> <source>No valid configuration path determined. Aborting</source> <translation type="unfinished" /> </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1447" /> + <source>{0} {1}</source> + <comment>package name, package version</comment> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1469" /> + <source>Affected Version:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1472" /> + <source>Advisory:</source> + <translation type="unfinished" /> + </message> </context> <context> <name>PipPage</name> @@ -51959,6 +52000,11 @@ <translation type="unfinished" /> </message> <message> + <location filename="../Preferences/ConfigurationPages/PipPage.py" line="34" /> + <source><b>Note:</b> Leave empty to use the default Safety DB URL ({0}).</source> + <translation type="unfinished" /> + </message> + <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source><b>Configure pip</b></source> <translation type="unfinished" /> @@ -51975,6 +52021,36 @@ </message> <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Vulnerability Checks</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Safety DB URL:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the base URL for the Safety DB mirror to be used</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Cache Validity:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the Safety DB cache validity time in hours (2 hours up to 7 days)</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source> hours</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source>Environment</source> <translation type="unfinished" /> </message> @@ -51990,6 +52066,19 @@ </message> </context> <context> + <name>PipVulnerabilityChecker</name> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="218" /> + <source>Fetching Vulnerability Database</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="219" /> + <source><p>The vulnerability database <b>{0}</b> could not be loaded from <b>{1}</b>.</p><p>The vulnerability check is not available.</p></source> + <translation type="unfinished" /> + </message> + </context> + <context> <name>PixmapDiagram</name> <message> <location filename="../Graphics/PixmapDiagram.py" line="164" /> @@ -53248,18 +53337,18 @@ <context> <name>Preferences</name> <message> - <location filename="../Preferences/__init__.py" line="1651" /> + <location filename="../Preferences/__init__.py" line="1656" /> <source>Export Preferences</source> <translation type="unfinished" /> </message> <message> - <location filename="../Preferences/__init__.py" line="1679" /> - <location filename="../Preferences/__init__.py" line="1653" /> + <location filename="../Preferences/__init__.py" line="1684" /> + <location filename="../Preferences/__init__.py" line="1658" /> <source>Properties File (*.ini);;All Files (*)</source> <translation type="unfinished" /> </message> <message> - <location filename="../Preferences/__init__.py" line="1677" /> + <location filename="../Preferences/__init__.py" line="1682" /> <source>Import Preferences</source> <translation type="unfinished" /> </message> @@ -87546,27 +87635,27 @@ <context> <name>VirtualenvAddEditDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="64" /> <source>Edit Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66" /> <source>Add Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="73" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="74" /> <source>Virtualenv Target Directory</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="78" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="79" /> <source>Python Interpreter</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="83" /> <source>Enter the executable search path to be prepended to the PATH environment variable. Use '{0}' as the separator.</source> <translation type="unfinished" /> </message> @@ -88140,7 +88229,7 @@ <context> <name>VirtualenvInterpreterSelectionDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="45" /> + <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="46" /> <source>Python Interpreter</source> <translation type="unfinished" /> </message>
--- a/eric7/i18n/eric7_en.ts Tue Mar 15 17:35:35 2022 +0100 +++ b/eric7/i18n/eric7_en.ts Tue Mar 15 17:49:51 2022 +0100 @@ -51056,113 +51056,113 @@ <context> <name>Pip</name> <message> - <location filename="../PipInterface/Pip.py" line="111" /> + <location filename="../PipInterface/Pip.py" line="123" /> <source>python exited with an error ({0}).</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="118" /> + <location filename="../PipInterface/Pip.py" line="130" /> <source>python did not finish within 30 seconds.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="121" /> + <location filename="../PipInterface/Pip.py" line="133" /> <source>python could not be started.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="181" /> + <location filename="../PipInterface/Pip.py" line="193" /> <source><project></source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="210" /> + <location filename="../PipInterface/Pip.py" line="222" /> <source>Interpreter for Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="211" /> + <location filename="../PipInterface/Pip.py" line="223" /> <source>No interpreter configured for the selected virtual environment.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="246" /> + <location filename="../PipInterface/Pip.py" line="258" /> <source>Install PIP</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="288" /> + <location filename="../PipInterface/Pip.py" line="300" /> <source>Repair PIP</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="371" /> + <location filename="../PipInterface/Pip.py" line="383" /> <source>Upgrade Packages</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="411" /> + <location filename="../PipInterface/Pip.py" line="423" /> <source>Install Packages</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="440" /> + <location filename="../PipInterface/Pip.py" line="452" /> <source>Install Packages from Requirements</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="503" /> - <location filename="../PipInterface/Pip.py" line="472" /> - <location filename="../PipInterface/Pip.py" line="463" /> - <source>Uninstall Packages</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/Pip.py" line="504" /> - <location filename="../PipInterface/Pip.py" line="464" /> - <source>Do you really want to uninstall these packages?</source> - <translation type="unfinished" /> - </message> - <message> <location filename="../PipInterface/Pip.py" line="515" /> + <location filename="../PipInterface/Pip.py" line="484" /> + <location filename="../PipInterface/Pip.py" line="475" /> + <source>Uninstall Packages</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="516" /> + <location filename="../PipInterface/Pip.py" line="476" /> + <source>Do you really want to uninstall these packages?</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="527" /> <source>Uninstall Packages from Requirements</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="832" /> + <location filename="../PipInterface/Pip.py" line="844" /> <source>Cache Info</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="857" /> - <location filename="../PipInterface/Pip.py" line="849" /> + <location filename="../PipInterface/Pip.py" line="869" /> + <location filename="../PipInterface/Pip.py" line="861" /> <source>List Cached Files</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="850" /> + <location filename="../PipInterface/Pip.py" line="862" /> <source>Enter a file pattern (empty for all):</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="881" /> - <location filename="../PipInterface/Pip.py" line="875" /> + <location filename="../PipInterface/Pip.py" line="893" /> + <location filename="../PipInterface/Pip.py" line="887" /> <source>Remove Cached Files</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="876" /> + <location filename="../PipInterface/Pip.py" line="888" /> <source>Enter a file pattern:</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="904" /> - <location filename="../PipInterface/Pip.py" line="899" /> + <location filename="../PipInterface/Pip.py" line="916" /> + <location filename="../PipInterface/Pip.py" line="911" /> <source>Purge Cache</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="900" /> + <location filename="../PipInterface/Pip.py" line="912" /> <source>Do you really want to purge the pip cache? All files need to be downloaded again.</source> <translation type="unfinished" /> </message> @@ -51674,6 +51674,16 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Perform vulnerability checks based on "Safety DB".</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Vulnerability Check</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Package</source> @@ -51691,6 +51701,11 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Affected Version</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Select to show verbose package information</source> <translation type="unfinished" /> </message> @@ -51781,104 +51796,104 @@ <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="169" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="177" /> <source>pip Menu</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="195" /> - <source>Name:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="196" /> - <source>Version:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="197" /> - <source>Location:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="198" /> - <source>Requires:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="199" /> - <source>Summary:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="200" /> - <source>Homepage:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="201" /> - <source>Author:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="202" /> - <source>Author Email:</source> - <translation type="unfinished" /> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="203" /> - <source>License:</source> + <source>Name:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="204" /> - <source>Metadata Version:</source> + <source>Version:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="205" /> - <source>Installer:</source> + <source>Location:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="206" /> - <source>Classifiers:</source> + <source>Requires:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="207" /> - <source>Entry Points:</source> + <source>Summary:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="208" /> + <source>Homepage:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="209" /> + <source>Author:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="210" /> + <source>Author Email:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="211" /> + <source>License:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="212" /> + <source>Metadata Version:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="213" /> + <source>Installer:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="214" /> + <source>Classifiers:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="215" /> + <source>Entry Points:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="216" /> <source>Files:</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="375" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="384" /> <source>Getting installed packages...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="390" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="400" /> <source>Getting outdated packages...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="975" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="812" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="790" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1019" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="856" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="834" /> <source>Search PyPI</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="791" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="835" /> <source><p>Received an error while searching for <b>{0}</b>.</p><p>Error: {1}</p></source> <translation type="unfinished" /> </message> <message numerus="yes"> - <location filename="../PipInterface/PipPackagesWidget.py" line="805" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="849" /> <source>%n package(s) found.</source> <translation> <numerusform>%n package found.</numerusform> @@ -51886,116 +51901,142 @@ </translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="807" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="851" /> <source>Showing first 20 packages found.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="815" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="813" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="859" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="857" /> <source><p>There were no results for <b>{0}</b>.</p></source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="976" /> - <source><p>No package details info for <b>{0}</b> available.</p></source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="990" /> - <source>Install Pip</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="993" /> - <source>Install Pip to User-Site</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="996" /> - <source>Repair Pip</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1116" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1000" /> - <source>Install Packages</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1003" /> - <source>Install Local Package</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1007" /> - <source>Install Requirements</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1010" /> - <source>Re-Install Selected Packages</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1013" /> - <source>Uninstall Requirements</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1016" /> - <source>Generate Requirements...</source> - <translation type="unfinished" /> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1020" /> - <source>Show Cache Info...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1023" /> - <source>Show Cached Files...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1026" /> - <source>Remove Cached Files...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1029" /> - <source>Purge Cache...</source> + <source><p>No package details info for <b>{0}</b> available.</p></source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1034" /> - <source>Edit User Configuration...</source> + <source>Install Pip</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1037" /> + <source>Install Pip to User-Site</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1040" /> + <source>Repair Pip</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1170" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1044" /> + <source>Install Packages</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1047" /> + <source>Install Local Package</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1051" /> + <source>Install Requirements</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1054" /> + <source>Re-Install Selected Packages</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1057" /> + <source>Uninstall Requirements</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1060" /> + <source>Generate Requirements...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1064" /> + <source>Check Vulnerabilities</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1068" /> + <source>Update Vulnerability Database</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1072" /> + <source>Show Cache Info...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1075" /> + <source>Show Cached Files...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1078" /> + <source>Remove Cached Files...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1081" /> + <source>Purge Cache...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1086" /> + <source>Edit User Configuration...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1089" /> <source>Edit Environment Configuration...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1042" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1094" /> <source>Configure...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1237" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1224" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1213" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1292" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1279" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1268" /> <source>Edit Configuration</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1238" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1225" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1214" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1293" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1280" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1269" /> <source>No valid configuration path determined. Aborting</source> <translation type="unfinished" /> </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1447" /> + <source>{0} {1}</source> + <comment>package name, package version</comment> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1469" /> + <source>Affected Version:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1472" /> + <source>Advisory:</source> + <translation type="unfinished" /> + </message> </context> <context> <name>PipPage</name> @@ -52005,6 +52046,11 @@ <translation type="unfinished" /> </message> <message> + <location filename="../Preferences/ConfigurationPages/PipPage.py" line="34" /> + <source><b>Note:</b> Leave empty to use the default Safety DB URL ({0}).</source> + <translation type="unfinished" /> + </message> + <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source><b>Configure pip</b></source> <translation type="unfinished" /> @@ -52021,6 +52067,36 @@ </message> <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Vulnerability Checks</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Safety DB URL:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the base URL for the Safety DB mirror to be used</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Cache Validity:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the Safety DB cache validity time in hours (2 hours up to 7 days)</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source> hours</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source>Environment</source> <translation type="unfinished" /> </message> @@ -52036,6 +52112,19 @@ </message> </context> <context> + <name>PipVulnerabilityChecker</name> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="218" /> + <source>Fetching Vulnerability Database</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="219" /> + <source><p>The vulnerability database <b>{0}</b> could not be loaded from <b>{1}</b>.</p><p>The vulnerability check is not available.</p></source> + <translation type="unfinished" /> + </message> + </context> + <context> <name>PixmapDiagram</name> <message> <location filename="../Graphics/PixmapDiagram.py" line="164" /> @@ -53294,18 +53383,18 @@ <context> <name>Preferences</name> <message> - <location filename="../Preferences/__init__.py" line="1651" /> + <location filename="../Preferences/__init__.py" line="1656" /> <source>Export Preferences</source> <translation type="unfinished" /> </message> <message> - <location filename="../Preferences/__init__.py" line="1679" /> - <location filename="../Preferences/__init__.py" line="1653" /> + <location filename="../Preferences/__init__.py" line="1684" /> + <location filename="../Preferences/__init__.py" line="1658" /> <source>Properties File (*.ini);;All Files (*)</source> <translation type="unfinished" /> </message> <message> - <location filename="../Preferences/__init__.py" line="1677" /> + <location filename="../Preferences/__init__.py" line="1682" /> <source>Import Preferences</source> <translation type="unfinished" /> </message> @@ -87597,27 +87686,27 @@ <context> <name>VirtualenvAddEditDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="64" /> <source>Edit Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66" /> <source>Add Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="73" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="74" /> <source>Virtualenv Target Directory</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="78" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="79" /> <source>Python Interpreter</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="83" /> <source>Enter the executable search path to be prepended to the PATH environment variable. Use '{0}' as the separator.</source> <translation type="unfinished" /> </message> @@ -88191,7 +88280,7 @@ <context> <name>VirtualenvInterpreterSelectionDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="45" /> + <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="46" /> <source>Python Interpreter</source> <translation type="unfinished" /> </message>
--- a/eric7/i18n/eric7_es.ts Tue Mar 15 17:35:35 2022 +0100 +++ b/eric7/i18n/eric7_es.ts Tue Mar 15 17:49:51 2022 +0100 @@ -51271,113 +51271,113 @@ <context> <name>Pip</name> <message> - <location filename="../PipInterface/Pip.py" line="111" /> + <location filename="../PipInterface/Pip.py" line="123" /> <source>python exited with an error ({0}).</source> <translation>python ha salido con un error ({0}).</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="118" /> + <location filename="../PipInterface/Pip.py" line="130" /> <source>python did not finish within 30 seconds.</source> <translation>python no ha terminado en 30 segundos.</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="121" /> + <location filename="../PipInterface/Pip.py" line="133" /> <source>python could not be started.</source> <translation>No se ha podido iniciar python.</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="181" /> + <location filename="../PipInterface/Pip.py" line="193" /> <source><project></source> <translation><project></translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="210" /> + <location filename="../PipInterface/Pip.py" line="222" /> <source>Interpreter for Virtual Environment</source> <translation>Intérprete para el Entorno Virtual</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="211" /> + <location filename="../PipInterface/Pip.py" line="223" /> <source>No interpreter configured for the selected virtual environment.</source> <translation>No se ha configurado ningún intérprete para el entorno virtual seleccionado.</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="246" /> + <location filename="../PipInterface/Pip.py" line="258" /> <source>Install PIP</source> <translation>Instalar PIP</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="288" /> + <location filename="../PipInterface/Pip.py" line="300" /> <source>Repair PIP</source> <translation>Reparar PIP</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="371" /> + <location filename="../PipInterface/Pip.py" line="383" /> <source>Upgrade Packages</source> <translation>Actualizar Packages</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="411" /> + <location filename="../PipInterface/Pip.py" line="423" /> <source>Install Packages</source> <translation>Instalar Packages</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="440" /> + <location filename="../PipInterface/Pip.py" line="452" /> <source>Install Packages from Requirements</source> <translation>Instalar Packages a partir de Requisitos</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="503" /> - <location filename="../PipInterface/Pip.py" line="472" /> - <location filename="../PipInterface/Pip.py" line="463" /> - <source>Uninstall Packages</source> - <translation>Desinstalar Packages</translation> - </message> - <message> - <location filename="../PipInterface/Pip.py" line="504" /> - <location filename="../PipInterface/Pip.py" line="464" /> - <source>Do you really want to uninstall these packages?</source> - <translation>¿Realmente desea desinstalar estos packages?</translation> - </message> - <message> <location filename="../PipInterface/Pip.py" line="515" /> + <location filename="../PipInterface/Pip.py" line="484" /> + <location filename="../PipInterface/Pip.py" line="475" /> + <source>Uninstall Packages</source> + <translation>Desinstalar Packages</translation> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="516" /> + <location filename="../PipInterface/Pip.py" line="476" /> + <source>Do you really want to uninstall these packages?</source> + <translation>¿Realmente desea desinstalar estos packages?</translation> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="527" /> <source>Uninstall Packages from Requirements</source> <translation>Desinstalar Packages a partir de Requisitos</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="832" /> + <location filename="../PipInterface/Pip.py" line="844" /> <source>Cache Info</source> <translation>Info de Cache</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="857" /> - <location filename="../PipInterface/Pip.py" line="849" /> + <location filename="../PipInterface/Pip.py" line="869" /> + <location filename="../PipInterface/Pip.py" line="861" /> <source>List Cached Files</source> <translation>Listar Archivos en Cache</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="850" /> + <location filename="../PipInterface/Pip.py" line="862" /> <source>Enter a file pattern (empty for all):</source> <translation>Introducir un patrón de archivo (dejar en blanco para todos):</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="881" /> - <location filename="../PipInterface/Pip.py" line="875" /> + <location filename="../PipInterface/Pip.py" line="893" /> + <location filename="../PipInterface/Pip.py" line="887" /> <source>Remove Cached Files</source> <translation>Eliminar Archivos en Cache</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="876" /> + <location filename="../PipInterface/Pip.py" line="888" /> <source>Enter a file pattern:</source> <translation>Introducir un patrón de archivo:</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="904" /> - <location filename="../PipInterface/Pip.py" line="899" /> + <location filename="../PipInterface/Pip.py" line="916" /> + <location filename="../PipInterface/Pip.py" line="911" /> <source>Purge Cache</source> <translation>Purgar Cache</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="900" /> + <location filename="../PipInterface/Pip.py" line="912" /> <source>Do you really want to purge the pip cache? All files need to be downloaded again.</source> <translation>Desear realmente purgar la cache de pip? Todos los archivos necesitarán descargarse de nuevo.</translation> </message> @@ -51897,6 +51897,16 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Perform vulnerability checks based on "Safety DB".</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Vulnerability Check</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Package</source> @@ -51914,6 +51924,11 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Affected Version</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Select to show verbose package information</source> <translation>Seleccionar para mostrar información minuciosa de package</translation> </message> @@ -52004,104 +52019,104 @@ <translation>Seleccionar para instalar el package seleccionado en el site de usuario</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="169" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="177" /> <source>pip Menu</source> <translation>Menu pip</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="195" /> - <source>Name:</source> - <translation>Nombre:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="196" /> - <source>Version:</source> - <translation>Versión:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="197" /> - <source>Location:</source> - <translation>Ubicación:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="198" /> - <source>Requires:</source> - <translation>Requiere:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="199" /> - <source>Summary:</source> - <translation>Resumen:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="200" /> - <source>Homepage:</source> - <translation>Página Home:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="201" /> - <source>Author:</source> - <translation>Autor:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="202" /> - <source>Author Email:</source> - <translation>Correo electrónico del Autor:</translation> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="203" /> - <source>License:</source> - <translation>Licencia:</translation> + <source>Name:</source> + <translation>Nombre:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="204" /> - <source>Metadata Version:</source> - <translation>Versión de Metadatos:</translation> + <source>Version:</source> + <translation>Versión:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="205" /> - <source>Installer:</source> - <translation>Instalador:</translation> + <source>Location:</source> + <translation>Ubicación:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="206" /> - <source>Classifiers:</source> - <translation>Clasificadores:</translation> + <source>Requires:</source> + <translation>Requiere:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="207" /> - <source>Entry Points:</source> - <translation>Puntos de Entrada:</translation> + <source>Summary:</source> + <translation>Resumen:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="208" /> + <source>Homepage:</source> + <translation>Página Home:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="209" /> + <source>Author:</source> + <translation>Autor:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="210" /> + <source>Author Email:</source> + <translation>Correo electrónico del Autor:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="211" /> + <source>License:</source> + <translation>Licencia:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="212" /> + <source>Metadata Version:</source> + <translation>Versión de Metadatos:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="213" /> + <source>Installer:</source> + <translation>Instalador:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="214" /> + <source>Classifiers:</source> + <translation>Clasificadores:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="215" /> + <source>Entry Points:</source> + <translation>Puntos de Entrada:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="216" /> <source>Files:</source> <translation>Archivos:</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="375" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="384" /> <source>Getting installed packages...</source> <translation>Obteniendo packages instalados...</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="390" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="400" /> <source>Getting outdated packages...</source> <translation>Obteniendo packages antiguos...</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="975" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="812" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="790" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1019" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="856" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="834" /> <source>Search PyPI</source> <translation>Buscar PyPI</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="791" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="835" /> <source><p>Received an error while searching for <b>{0}</b>.</p><p>Error: {1}</p></source> <translation><p>Recibido error mientras se buscaba <b>{0}</b>.</p><p>Error: {1}</p></translation> </message> <message numerus="yes"> - <location filename="../PipInterface/PipPackagesWidget.py" line="805" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="849" /> <source>%n package(s) found.</source> <translation> <numerusform>%n package encontrado.</numerusform> @@ -52109,116 +52124,142 @@ </translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="807" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="851" /> <source>Showing first 20 packages found.</source> <translation>Mostrando los primeros 20 packages encontrados.</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="815" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="813" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="859" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="857" /> <source><p>There were no results for <b>{0}</b>.</p></source> <translation><p>Sin resultados para <b>{0}</b>.</p></translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="976" /> - <source><p>No package details info for <b>{0}</b> available.</p></source> - <translation><p>No hay info de detalles de package disponible para <b>{0}</b>.</p></translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="990" /> - <source>Install Pip</source> - <translation>Instalar Pip</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="993" /> - <source>Install Pip to User-Site</source> - <translation>Instalar Pip en el Sitio de Usuario</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="996" /> - <source>Repair Pip</source> - <translation>Reparar Pip</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1116" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1000" /> - <source>Install Packages</source> - <translation>Instalar Packages</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1003" /> - <source>Install Local Package</source> - <translation>Instalar Package Local</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1007" /> - <source>Install Requirements</source> - <translation>Instalar Requisitos</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1010" /> - <source>Re-Install Selected Packages</source> - <translation>Reinstalar los Packages Seleccionados</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1013" /> - <source>Uninstall Requirements</source> - <translation>Desinstalar Requisitos</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1016" /> - <source>Generate Requirements...</source> - <translation>Generar Requisitos...</translation> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1020" /> - <source>Show Cache Info...</source> - <translation>Mostrar info de Cache...</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1023" /> - <source>Show Cached Files...</source> - <translation>Mostrar Archivos en Cache...</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1026" /> - <source>Remove Cached Files...</source> - <translation>Eliminar Archivos en Cache...</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1029" /> - <source>Purge Cache...</source> - <translation>Purgar Cache...</translation> + <source><p>No package details info for <b>{0}</b> available.</p></source> + <translation><p>No hay info de detalles de package disponible para <b>{0}</b>.</p></translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1034" /> - <source>Edit User Configuration...</source> - <translation>Editar Configuración de Usuario...</translation> + <source>Install Pip</source> + <translation>Instalar Pip</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1037" /> + <source>Install Pip to User-Site</source> + <translation>Instalar Pip en el Sitio de Usuario</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1040" /> + <source>Repair Pip</source> + <translation>Reparar Pip</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1170" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1044" /> + <source>Install Packages</source> + <translation>Instalar Packages</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1047" /> + <source>Install Local Package</source> + <translation>Instalar Package Local</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1051" /> + <source>Install Requirements</source> + <translation>Instalar Requisitos</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1054" /> + <source>Re-Install Selected Packages</source> + <translation>Reinstalar los Packages Seleccionados</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1057" /> + <source>Uninstall Requirements</source> + <translation>Desinstalar Requisitos</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1060" /> + <source>Generate Requirements...</source> + <translation>Generar Requisitos...</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1064" /> + <source>Check Vulnerabilities</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1068" /> + <source>Update Vulnerability Database</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1072" /> + <source>Show Cache Info...</source> + <translation>Mostrar info de Cache...</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1075" /> + <source>Show Cached Files...</source> + <translation>Mostrar Archivos en Cache...</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1078" /> + <source>Remove Cached Files...</source> + <translation>Eliminar Archivos en Cache...</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1081" /> + <source>Purge Cache...</source> + <translation>Purgar Cache...</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1086" /> + <source>Edit User Configuration...</source> + <translation>Editar Configuración de Usuario...</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1089" /> <source>Edit Environment Configuration...</source> <translation>Editar Configuración de Entorno...</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1042" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1094" /> <source>Configure...</source> <translation>Configurar...</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1237" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1224" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1213" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1292" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1279" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1268" /> <source>Edit Configuration</source> <translation>Editar Configuración</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1238" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1225" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1214" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1293" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1280" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1269" /> <source>No valid configuration path determined. Aborting</source> <translation>No hay una ruta válida de configuración determinada. Abortando</translation> </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1447" /> + <source>{0} {1}</source> + <comment>package name, package version</comment> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1469" /> + <source>Affected Version:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1472" /> + <source>Advisory:</source> + <translation type="unfinished" /> + </message> </context> <context> <name>PipPage</name> @@ -52228,6 +52269,11 @@ <translation><b>Nota:</b> Dejar vacío para utilizar la URL de índice por defecto (<a href="{0}">{0}</a>).</translation> </message> <message> + <location filename="../Preferences/ConfigurationPages/PipPage.py" line="34" /> + <source><b>Note:</b> Leave empty to use the default Safety DB URL ({0}).</source> + <translation type="unfinished" /> + </message> + <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source><b>Configure pip</b></source> <translation><b>Configurar pip</b></translation> @@ -52244,6 +52290,36 @@ </message> <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Vulnerability Checks</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Safety DB URL:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the base URL for the Safety DB mirror to be used</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Cache Validity:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the Safety DB cache validity time in hours (2 hours up to 7 days)</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source> hours</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source>Environment</source> <translation>Entorno</translation> </message> @@ -52259,6 +52335,19 @@ </message> </context> <context> + <name>PipVulnerabilityChecker</name> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="218" /> + <source>Fetching Vulnerability Database</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="219" /> + <source><p>The vulnerability database <b>{0}</b> could not be loaded from <b>{1}</b>.</p><p>The vulnerability check is not available.</p></source> + <translation type="unfinished" /> + </message> + </context> + <context> <name>PixmapDiagram</name> <message> <location filename="../Graphics/PixmapDiagram.py" line="164" /> @@ -53521,18 +53610,18 @@ <context> <name>Preferences</name> <message> - <location filename="../Preferences/__init__.py" line="1651" /> + <location filename="../Preferences/__init__.py" line="1656" /> <source>Export Preferences</source> <translation>Exportar Preferencias</translation> </message> <message> - <location filename="../Preferences/__init__.py" line="1679" /> - <location filename="../Preferences/__init__.py" line="1653" /> + <location filename="../Preferences/__init__.py" line="1684" /> + <location filename="../Preferences/__init__.py" line="1658" /> <source>Properties File (*.ini);;All Files (*)</source> <translation>Archivo de Propiedades (*.ini);;Todos los archivos (*)</translation> </message> <message> - <location filename="../Preferences/__init__.py" line="1677" /> + <location filename="../Preferences/__init__.py" line="1682" /> <source>Import Preferences</source> <translation>Importar Preferencias</translation> </message> @@ -88231,27 +88320,27 @@ <context> <name>VirtualenvAddEditDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="64" /> <source>Edit Virtual Environment</source> <translation>Editar Entorno Virtual</translation> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66" /> <source>Add Virtual Environment</source> <translation>Añadir Entorno Virtual</translation> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="73" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="74" /> <source>Virtualenv Target Directory</source> <translation>Directorio de Destino para el Virtualenv</translation> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="78" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="79" /> <source>Python Interpreter</source> <translation>Intérprete de Python</translation> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="83" /> <source>Enter the executable search path to be prepended to the PATH environment variable. Use '{0}' as the separator.</source> <translation>Introducir la ruta de búsqueda del ejecutable a anteponer a la variable de entorno PATH. Usar '{0}' como separador.</translation> </message> @@ -88848,7 +88937,7 @@ <context> <name>VirtualenvInterpreterSelectionDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="45" /> + <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="46" /> <source>Python Interpreter</source> <translation>Intérprete de Python</translation> </message>
--- a/eric7/i18n/eric7_fr.ts Tue Mar 15 17:35:35 2022 +0100 +++ b/eric7/i18n/eric7_fr.ts Tue Mar 15 17:49:51 2022 +0100 @@ -55075,113 +55075,113 @@ <context> <name>Pip</name> <message> - <location filename="../PipInterface/Pip.py" line="111" /> + <location filename="../PipInterface/Pip.py" line="123" /> <source>python exited with an error ({0}).</source> <translation>python a quitté avec l'erreur ({0}).</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="118" /> + <location filename="../PipInterface/Pip.py" line="130" /> <source>python did not finish within 30 seconds.</source> <translation>python n'a pas terminé dans les 30 secondes.</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="121" /> + <location filename="../PipInterface/Pip.py" line="133" /> <source>python could not be started.</source> <translation>python n'a pas pu être démarré.</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="181" /> + <location filename="../PipInterface/Pip.py" line="193" /> <source><project></source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="210" /> + <location filename="../PipInterface/Pip.py" line="222" /> <source>Interpreter for Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="211" /> + <location filename="../PipInterface/Pip.py" line="223" /> <source>No interpreter configured for the selected virtual environment.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="246" /> + <location filename="../PipInterface/Pip.py" line="258" /> <source>Install PIP</source> <translation>Installer PIP</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="288" /> + <location filename="../PipInterface/Pip.py" line="300" /> <source>Repair PIP</source> <translation>Réparer PIP</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="371" /> + <location filename="../PipInterface/Pip.py" line="383" /> <source>Upgrade Packages</source> <translation>Mise à jour des packages</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="411" /> + <location filename="../PipInterface/Pip.py" line="423" /> <source>Install Packages</source> <translation>Installer des packages</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="440" /> + <location filename="../PipInterface/Pip.py" line="452" /> <source>Install Packages from Requirements</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="503" /> - <location filename="../PipInterface/Pip.py" line="472" /> - <location filename="../PipInterface/Pip.py" line="463" /> - <source>Uninstall Packages</source> - <translation>Désinstaller les packages</translation> - </message> - <message> - <location filename="../PipInterface/Pip.py" line="504" /> - <location filename="../PipInterface/Pip.py" line="464" /> - <source>Do you really want to uninstall these packages?</source> - <translation>Voulez-vous vraiment désinstaller ces packages ?</translation> - </message> - <message> <location filename="../PipInterface/Pip.py" line="515" /> + <location filename="../PipInterface/Pip.py" line="484" /> + <location filename="../PipInterface/Pip.py" line="475" /> + <source>Uninstall Packages</source> + <translation>Désinstaller les packages</translation> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="516" /> + <location filename="../PipInterface/Pip.py" line="476" /> + <source>Do you really want to uninstall these packages?</source> + <translation>Voulez-vous vraiment désinstaller ces packages ?</translation> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="527" /> <source>Uninstall Packages from Requirements</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="832" /> + <location filename="../PipInterface/Pip.py" line="844" /> <source>Cache Info</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="857" /> - <location filename="../PipInterface/Pip.py" line="849" /> + <location filename="../PipInterface/Pip.py" line="869" /> + <location filename="../PipInterface/Pip.py" line="861" /> <source>List Cached Files</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="850" /> + <location filename="../PipInterface/Pip.py" line="862" /> <source>Enter a file pattern (empty for all):</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="881" /> - <location filename="../PipInterface/Pip.py" line="875" /> + <location filename="../PipInterface/Pip.py" line="893" /> + <location filename="../PipInterface/Pip.py" line="887" /> <source>Remove Cached Files</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="876" /> + <location filename="../PipInterface/Pip.py" line="888" /> <source>Enter a file pattern:</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="904" /> - <location filename="../PipInterface/Pip.py" line="899" /> + <location filename="../PipInterface/Pip.py" line="916" /> + <location filename="../PipInterface/Pip.py" line="911" /> <source>Purge Cache</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="900" /> + <location filename="../PipInterface/Pip.py" line="912" /> <source>Do you really want to purge the pip cache? All files need to be downloaded again.</source> <translation type="unfinished" /> </message> @@ -55748,6 +55748,16 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Perform vulnerability checks based on "Safety DB".</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Vulnerability Check</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Package</source> @@ -55765,6 +55775,11 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Affected Version</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Select to show verbose package information</source> <translation type="unfinished" /> </message> @@ -55855,104 +55870,104 @@ <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="169" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="177" /> <source>pip Menu</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="195" /> - <source>Name:</source> - <translation>Nom :</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="196" /> - <source>Version:</source> - <translation>Version :</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="197" /> - <source>Location:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="198" /> - <source>Requires:</source> - <translation>Nécessite :</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="199" /> - <source>Summary:</source> - <translation>Bilan :</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="200" /> - <source>Homepage:</source> - <translation>Page d'accueil :</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="201" /> - <source>Author:</source> - <translation>Auteur :</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="202" /> - <source>Author Email:</source> - <translation>Courreil de l'auteur :</translation> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="203" /> - <source>License:</source> - <translation>Licence :</translation> + <source>Name:</source> + <translation>Nom :</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="204" /> - <source>Metadata Version:</source> - <translation type="unfinished" /> + <source>Version:</source> + <translation>Version :</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="205" /> - <source>Installer:</source> + <source>Location:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="206" /> - <source>Classifiers:</source> - <translation type="unfinished" /> + <source>Requires:</source> + <translation>Nécessite :</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="207" /> - <source>Entry Points:</source> - <translation type="unfinished" /> + <source>Summary:</source> + <translation>Bilan :</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="208" /> + <source>Homepage:</source> + <translation>Page d'accueil :</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="209" /> + <source>Author:</source> + <translation>Auteur :</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="210" /> + <source>Author Email:</source> + <translation>Courreil de l'auteur :</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="211" /> + <source>License:</source> + <translation>Licence :</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="212" /> + <source>Metadata Version:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="213" /> + <source>Installer:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="214" /> + <source>Classifiers:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="215" /> + <source>Entry Points:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="216" /> <source>Files:</source> <translation>Fichiers :</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="375" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="384" /> <source>Getting installed packages...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="390" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="400" /> <source>Getting outdated packages...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="975" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="812" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="790" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1019" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="856" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="834" /> <source>Search PyPI</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="791" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="835" /> <source><p>Received an error while searching for <b>{0}</b>.</p><p>Error: {1}</p></source> <translation type="unfinished" /> </message> <message numerus="yes"> - <location filename="../PipInterface/PipPackagesWidget.py" line="805" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="849" /> <source>%n package(s) found.</source> <translation> <numerusform>%n package trouvé.</numerusform> @@ -55960,117 +55975,143 @@ </translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="807" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="851" /> <source>Showing first 20 packages found.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="815" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="813" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="859" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="857" /> <source><p>There were no results for <b>{0}</b>.</p></source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="976" /> - <source><p>No package details info for <b>{0}</b> available.</p></source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="990" /> - <source>Install Pip</source> - <translation>Installer pip</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="993" /> - <source>Install Pip to User-Site</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="996" /> - <source>Repair Pip</source> - <translation>Réparer Pip</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1116" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1000" /> - <source>Install Packages</source> - <translation>Installer des packages</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1003" /> - <source>Install Local Package</source> - <translation>Installer un package local</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1007" /> - <source>Install Requirements</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1010" /> - <source>Re-Install Selected Packages</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1013" /> - <source>Uninstall Requirements</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1016" /> - <source>Generate Requirements...</source> - <translation type="unfinished" /> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1020" /> - <source>Show Cache Info...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1023" /> - <source>Show Cached Files...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1026" /> - <source>Remove Cached Files...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1029" /> - <source>Purge Cache...</source> + <source><p>No package details info for <b>{0}</b> available.</p></source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1034" /> - <source>Edit User Configuration...</source> - <translation>Éditer la configuration utilisateur...</translation> + <source>Install Pip</source> + <translation>Installer pip</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1037" /> + <source>Install Pip to User-Site</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1040" /> + <source>Repair Pip</source> + <translation>Réparer Pip</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1170" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1044" /> + <source>Install Packages</source> + <translation>Installer des packages</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1047" /> + <source>Install Local Package</source> + <translation>Installer un package local</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1051" /> + <source>Install Requirements</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1054" /> + <source>Re-Install Selected Packages</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1057" /> + <source>Uninstall Requirements</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1060" /> + <source>Generate Requirements...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1064" /> + <source>Check Vulnerabilities</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1068" /> + <source>Update Vulnerability Database</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1072" /> + <source>Show Cache Info...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1075" /> + <source>Show Cached Files...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1078" /> + <source>Remove Cached Files...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1081" /> + <source>Purge Cache...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1086" /> + <source>Edit User Configuration...</source> + <translation>Éditer la configuration utilisateur...</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1089" /> <source>Edit Environment Configuration...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1042" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1094" /> <source>Configure...</source> <translation>Configuration...</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1237" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1224" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1213" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1292" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1279" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1268" /> <source>Edit Configuration</source> <translation>Éditer la configuration</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1238" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1225" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1214" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1293" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1280" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1269" /> <source>No valid configuration path determined. Aborting</source> <translation>Pas de chemin de configuration déterminé. Annulation</translation> </message> <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1447" /> + <source>{0} {1}</source> + <comment>package name, package version</comment> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1469" /> + <source>Affected Version:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1472" /> + <source>Advisory:</source> + <translation type="unfinished" /> + </message> + <message> <source><p>The package search did not return anything.</p></source> <translation type="vanished"><p>La recherche de package n'a rien retourné.</p></translation> </message> @@ -56099,6 +56140,11 @@ <translation type="unfinished" /> </message> <message> + <location filename="../Preferences/ConfigurationPages/PipPage.py" line="34" /> + <source><b>Note:</b> Leave empty to use the default Safety DB URL ({0}).</source> + <translation type="unfinished" /> + </message> + <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source><b>Configure pip</b></source> <translation><b>Configuration pip</b></translation> @@ -56115,6 +56161,36 @@ </message> <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Vulnerability Checks</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Safety DB URL:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the base URL for the Safety DB mirror to be used</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Cache Validity:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the Safety DB cache validity time in hours (2 hours up to 7 days)</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source> hours</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source>Environment</source> <translation type="unfinished">Environment</translation> </message> @@ -56141,6 +56217,19 @@ </message> </context> <context> + <name>PipVulnerabilityChecker</name> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="218" /> + <source>Fetching Vulnerability Database</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="219" /> + <source><p>The vulnerability database <b>{0}</b> could not be loaded from <b>{1}</b>.</p><p>The vulnerability check is not available.</p></source> + <translation type="unfinished" /> + </message> + </context> + <context> <name>PixmapDiagram</name> <message> <location filename="../Graphics/PixmapDiagram.py" line="164" /> @@ -57424,18 +57513,18 @@ <context> <name>Preferences</name> <message> - <location filename="../Preferences/__init__.py" line="1651" /> + <location filename="../Preferences/__init__.py" line="1656" /> <source>Export Preferences</source> <translation>Export des préférences</translation> </message> <message> - <location filename="../Preferences/__init__.py" line="1679" /> - <location filename="../Preferences/__init__.py" line="1653" /> + <location filename="../Preferences/__init__.py" line="1684" /> + <location filename="../Preferences/__init__.py" line="1658" /> <source>Properties File (*.ini);;All Files (*)</source> <translation>Fichier propriétés (*.ini);;Tous les fichiers (*)</translation> </message> <message> - <location filename="../Preferences/__init__.py" line="1677" /> + <location filename="../Preferences/__init__.py" line="1682" /> <source>Import Preferences</source> <translation>Import des préférences</translation> </message> @@ -93583,27 +93672,27 @@ <context> <name>VirtualenvAddEditDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="64" /> <source>Edit Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66" /> <source>Add Virtual Environment</source> <translation type="unfinished">Ajouter environnement virtuel</translation> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="73" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="74" /> <source>Virtualenv Target Directory</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="78" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="79" /> <source>Python Interpreter</source> <translation>Interpréteur Python</translation> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="83" /> <source>Enter the executable search path to be prepended to the PATH environment variable. Use '{0}' as the separator.</source> <translation type="unfinished" /> </message> @@ -94209,7 +94298,7 @@ <context> <name>VirtualenvInterpreterSelectionDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="45" /> + <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="46" /> <source>Python Interpreter</source> <translation>Interpréteur Python</translation> </message>
--- a/eric7/i18n/eric7_it.ts Tue Mar 15 17:35:35 2022 +0100 +++ b/eric7/i18n/eric7_it.ts Tue Mar 15 17:49:51 2022 +0100 @@ -56905,113 +56905,113 @@ <context> <name>Pip</name> <message> - <location filename="../PipInterface/Pip.py" line="111" /> + <location filename="../PipInterface/Pip.py" line="123" /> <source>python exited with an error ({0}).</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="118" /> + <location filename="../PipInterface/Pip.py" line="130" /> <source>python did not finish within 30 seconds.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="121" /> + <location filename="../PipInterface/Pip.py" line="133" /> <source>python could not be started.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="181" /> + <location filename="../PipInterface/Pip.py" line="193" /> <source><project></source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="210" /> + <location filename="../PipInterface/Pip.py" line="222" /> <source>Interpreter for Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="211" /> + <location filename="../PipInterface/Pip.py" line="223" /> <source>No interpreter configured for the selected virtual environment.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="246" /> + <location filename="../PipInterface/Pip.py" line="258" /> <source>Install PIP</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="288" /> + <location filename="../PipInterface/Pip.py" line="300" /> <source>Repair PIP</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="371" /> + <location filename="../PipInterface/Pip.py" line="383" /> <source>Upgrade Packages</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="411" /> + <location filename="../PipInterface/Pip.py" line="423" /> <source>Install Packages</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="440" /> + <location filename="../PipInterface/Pip.py" line="452" /> <source>Install Packages from Requirements</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="503" /> - <location filename="../PipInterface/Pip.py" line="472" /> - <location filename="../PipInterface/Pip.py" line="463" /> - <source>Uninstall Packages</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/Pip.py" line="504" /> - <location filename="../PipInterface/Pip.py" line="464" /> - <source>Do you really want to uninstall these packages?</source> - <translation type="unfinished" /> - </message> - <message> <location filename="../PipInterface/Pip.py" line="515" /> + <location filename="../PipInterface/Pip.py" line="484" /> + <location filename="../PipInterface/Pip.py" line="475" /> + <source>Uninstall Packages</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="516" /> + <location filename="../PipInterface/Pip.py" line="476" /> + <source>Do you really want to uninstall these packages?</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="527" /> <source>Uninstall Packages from Requirements</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="832" /> + <location filename="../PipInterface/Pip.py" line="844" /> <source>Cache Info</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="857" /> - <location filename="../PipInterface/Pip.py" line="849" /> + <location filename="../PipInterface/Pip.py" line="869" /> + <location filename="../PipInterface/Pip.py" line="861" /> <source>List Cached Files</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="850" /> + <location filename="../PipInterface/Pip.py" line="862" /> <source>Enter a file pattern (empty for all):</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="881" /> - <location filename="../PipInterface/Pip.py" line="875" /> + <location filename="../PipInterface/Pip.py" line="893" /> + <location filename="../PipInterface/Pip.py" line="887" /> <source>Remove Cached Files</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="876" /> + <location filename="../PipInterface/Pip.py" line="888" /> <source>Enter a file pattern:</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="904" /> - <location filename="../PipInterface/Pip.py" line="899" /> + <location filename="../PipInterface/Pip.py" line="916" /> + <location filename="../PipInterface/Pip.py" line="911" /> <source>Purge Cache</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="900" /> + <location filename="../PipInterface/Pip.py" line="912" /> <source>Do you really want to purge the pip cache? All files need to be downloaded again.</source> <translation type="unfinished" /> </message> @@ -57558,6 +57558,16 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Perform vulnerability checks based on "Safety DB".</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Vulnerability Check</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Package</source> @@ -57575,6 +57585,11 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Affected Version</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Select to show verbose package information</source> <translation type="unfinished" /> </message> @@ -57665,104 +57680,104 @@ <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="169" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="177" /> <source>pip Menu</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="195" /> - <source>Name:</source> - <translation type="unfinished">Nome:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="196" /> - <source>Version:</source> - <translation type="unfinished">Versione:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="197" /> - <source>Location:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="198" /> - <source>Requires:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="199" /> - <source>Summary:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="200" /> - <source>Homepage:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="201" /> - <source>Author:</source> - <translation type="unfinished">Autore:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="202" /> - <source>Author Email:</source> - <translation type="unfinished" /> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="203" /> - <source>License:</source> - <translation type="unfinished" /> + <source>Name:</source> + <translation type="unfinished">Nome:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="204" /> - <source>Metadata Version:</source> - <translation type="unfinished" /> + <source>Version:</source> + <translation type="unfinished">Versione:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="205" /> - <source>Installer:</source> + <source>Location:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="206" /> - <source>Classifiers:</source> + <source>Requires:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="207" /> - <source>Entry Points:</source> + <source>Summary:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="208" /> + <source>Homepage:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="209" /> + <source>Author:</source> + <translation type="unfinished">Autore:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="210" /> + <source>Author Email:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="211" /> + <source>License:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="212" /> + <source>Metadata Version:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="213" /> + <source>Installer:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="214" /> + <source>Classifiers:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="215" /> + <source>Entry Points:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="216" /> <source>Files:</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="375" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="384" /> <source>Getting installed packages...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="390" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="400" /> <source>Getting outdated packages...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="975" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="812" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="790" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1019" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="856" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="834" /> <source>Search PyPI</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="791" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="835" /> <source><p>Received an error while searching for <b>{0}</b>.</p><p>Error: {1}</p></source> <translation type="unfinished" /> </message> <message numerus="yes"> - <location filename="../PipInterface/PipPackagesWidget.py" line="805" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="849" /> <source>%n package(s) found.</source> <translation type="unfinished"> <numerusform /> @@ -57770,116 +57785,142 @@ </translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="807" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="851" /> <source>Showing first 20 packages found.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="815" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="813" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="859" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="857" /> <source><p>There were no results for <b>{0}</b>.</p></source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="976" /> - <source><p>No package details info for <b>{0}</b> available.</p></source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="990" /> - <source>Install Pip</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="993" /> - <source>Install Pip to User-Site</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="996" /> - <source>Repair Pip</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1116" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1000" /> - <source>Install Packages</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1003" /> - <source>Install Local Package</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1007" /> - <source>Install Requirements</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1010" /> - <source>Re-Install Selected Packages</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1013" /> - <source>Uninstall Requirements</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1016" /> - <source>Generate Requirements...</source> - <translation type="unfinished" /> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1020" /> - <source>Show Cache Info...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1023" /> - <source>Show Cached Files...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1026" /> - <source>Remove Cached Files...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1029" /> - <source>Purge Cache...</source> + <source><p>No package details info for <b>{0}</b> available.</p></source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1034" /> - <source>Edit User Configuration...</source> + <source>Install Pip</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1037" /> + <source>Install Pip to User-Site</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1040" /> + <source>Repair Pip</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1170" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1044" /> + <source>Install Packages</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1047" /> + <source>Install Local Package</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1051" /> + <source>Install Requirements</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1054" /> + <source>Re-Install Selected Packages</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1057" /> + <source>Uninstall Requirements</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1060" /> + <source>Generate Requirements...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1064" /> + <source>Check Vulnerabilities</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1068" /> + <source>Update Vulnerability Database</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1072" /> + <source>Show Cache Info...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1075" /> + <source>Show Cached Files...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1078" /> + <source>Remove Cached Files...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1081" /> + <source>Purge Cache...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1086" /> + <source>Edit User Configuration...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1089" /> <source>Edit Environment Configuration...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1042" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1094" /> <source>Configure...</source> <translation type="unfinished">Configura...</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1237" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1224" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1213" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1292" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1279" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1268" /> <source>Edit Configuration</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1238" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1225" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1214" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1293" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1280" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1269" /> <source>No valid configuration path determined. Aborting</source> <translation type="unfinished" /> </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1447" /> + <source>{0} {1}</source> + <comment>package name, package version</comment> + <translation type="unfinished">{0} {1}</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1469" /> + <source>Affected Version:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1472" /> + <source>Advisory:</source> + <translation type="unfinished" /> + </message> </context> <context> <name>PipPage</name> @@ -57889,6 +57930,11 @@ <translation type="unfinished" /> </message> <message> + <location filename="../Preferences/ConfigurationPages/PipPage.py" line="34" /> + <source><b>Note:</b> Leave empty to use the default Safety DB URL ({0}).</source> + <translation type="unfinished" /> + </message> + <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source><b>Configure pip</b></source> <translation type="unfinished" /> @@ -57905,6 +57951,36 @@ </message> <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Vulnerability Checks</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Safety DB URL:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the base URL for the Safety DB mirror to be used</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Cache Validity:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the Safety DB cache validity time in hours (2 hours up to 7 days)</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source> hours</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source>Environment</source> <translation type="unfinished" /> </message> @@ -57931,6 +58007,19 @@ </message> </context> <context> + <name>PipVulnerabilityChecker</name> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="218" /> + <source>Fetching Vulnerability Database</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="219" /> + <source><p>The vulnerability database <b>{0}</b> could not be loaded from <b>{1}</b>.</p><p>The vulnerability check is not available.</p></source> + <translation type="unfinished" /> + </message> + </context> + <context> <name>PixmapDiagram</name> <message> <location filename="../Graphics/PixmapDiagram.py" line="164" /> @@ -59210,18 +59299,18 @@ <context> <name>Preferences</name> <message> - <location filename="../Preferences/__init__.py" line="1651" /> + <location filename="../Preferences/__init__.py" line="1656" /> <source>Export Preferences</source> <translation>Esporta Preferenze</translation> </message> <message> - <location filename="../Preferences/__init__.py" line="1679" /> - <location filename="../Preferences/__init__.py" line="1653" /> + <location filename="../Preferences/__init__.py" line="1684" /> + <location filename="../Preferences/__init__.py" line="1658" /> <source>Properties File (*.ini);;All Files (*)</source> <translation>File proprietà (*.ini);;Tutti i file(*)</translation> </message> <message> - <location filename="../Preferences/__init__.py" line="1677" /> + <location filename="../Preferences/__init__.py" line="1682" /> <source>Import Preferences</source> <translation>Importa Preferenze</translation> </message> @@ -95590,27 +95679,27 @@ <context> <name>VirtualenvAddEditDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="64" /> <source>Edit Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66" /> <source>Add Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="73" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="74" /> <source>Virtualenv Target Directory</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="78" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="79" /> <source>Python Interpreter</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="83" /> <source>Enter the executable search path to be prepended to the PATH environment variable. Use '{0}' as the separator.</source> <translation type="unfinished" /> </message> @@ -96184,7 +96273,7 @@ <context> <name>VirtualenvInterpreterSelectionDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="45" /> + <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="46" /> <source>Python Interpreter</source> <translation type="unfinished" /> </message>
--- a/eric7/i18n/eric7_pt.ts Tue Mar 15 17:35:35 2022 +0100 +++ b/eric7/i18n/eric7_pt.ts Tue Mar 15 17:49:51 2022 +0100 @@ -56394,113 +56394,113 @@ <context> <name>Pip</name> <message> - <location filename="../PipInterface/Pip.py" line="111" /> + <location filename="../PipInterface/Pip.py" line="123" /> <source>python exited with an error ({0}).</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="118" /> + <location filename="../PipInterface/Pip.py" line="130" /> <source>python did not finish within 30 seconds.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="121" /> + <location filename="../PipInterface/Pip.py" line="133" /> <source>python could not be started.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="181" /> + <location filename="../PipInterface/Pip.py" line="193" /> <source><project></source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="210" /> + <location filename="../PipInterface/Pip.py" line="222" /> <source>Interpreter for Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="211" /> + <location filename="../PipInterface/Pip.py" line="223" /> <source>No interpreter configured for the selected virtual environment.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="246" /> + <location filename="../PipInterface/Pip.py" line="258" /> <source>Install PIP</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="288" /> + <location filename="../PipInterface/Pip.py" line="300" /> <source>Repair PIP</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="371" /> + <location filename="../PipInterface/Pip.py" line="383" /> <source>Upgrade Packages</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="411" /> + <location filename="../PipInterface/Pip.py" line="423" /> <source>Install Packages</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="440" /> + <location filename="../PipInterface/Pip.py" line="452" /> <source>Install Packages from Requirements</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="503" /> - <location filename="../PipInterface/Pip.py" line="472" /> - <location filename="../PipInterface/Pip.py" line="463" /> - <source>Uninstall Packages</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/Pip.py" line="504" /> - <location filename="../PipInterface/Pip.py" line="464" /> - <source>Do you really want to uninstall these packages?</source> - <translation type="unfinished" /> - </message> - <message> <location filename="../PipInterface/Pip.py" line="515" /> + <location filename="../PipInterface/Pip.py" line="484" /> + <location filename="../PipInterface/Pip.py" line="475" /> + <source>Uninstall Packages</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="516" /> + <location filename="../PipInterface/Pip.py" line="476" /> + <source>Do you really want to uninstall these packages?</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="527" /> <source>Uninstall Packages from Requirements</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="832" /> + <location filename="../PipInterface/Pip.py" line="844" /> <source>Cache Info</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="857" /> - <location filename="../PipInterface/Pip.py" line="849" /> + <location filename="../PipInterface/Pip.py" line="869" /> + <location filename="../PipInterface/Pip.py" line="861" /> <source>List Cached Files</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="850" /> + <location filename="../PipInterface/Pip.py" line="862" /> <source>Enter a file pattern (empty for all):</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="881" /> - <location filename="../PipInterface/Pip.py" line="875" /> + <location filename="../PipInterface/Pip.py" line="893" /> + <location filename="../PipInterface/Pip.py" line="887" /> <source>Remove Cached Files</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="876" /> + <location filename="../PipInterface/Pip.py" line="888" /> <source>Enter a file pattern:</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="904" /> - <location filename="../PipInterface/Pip.py" line="899" /> + <location filename="../PipInterface/Pip.py" line="916" /> + <location filename="../PipInterface/Pip.py" line="911" /> <source>Purge Cache</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="900" /> + <location filename="../PipInterface/Pip.py" line="912" /> <source>Do you really want to purge the pip cache? All files need to be downloaded again.</source> <translation type="unfinished" /> </message> @@ -57055,6 +57055,16 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Perform vulnerability checks based on "Safety DB".</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Vulnerability Check</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Package</source> @@ -57072,6 +57082,11 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Affected Version</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Select to show verbose package information</source> <translation type="unfinished" /> </message> @@ -57162,104 +57177,104 @@ <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="169" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="177" /> <source>pip Menu</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="195" /> - <source>Name:</source> - <translation type="unfinished">Nome:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="196" /> - <source>Version:</source> - <translation type="unfinished">Versão:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="197" /> - <source>Location:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="198" /> - <source>Requires:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="199" /> - <source>Summary:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="200" /> - <source>Homepage:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="201" /> - <source>Author:</source> - <translation type="unfinished">Autor:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="202" /> - <source>Author Email:</source> - <translation type="unfinished">Correio Eletrónico do Autor:</translation> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="203" /> - <source>License:</source> - <translation type="unfinished" /> + <source>Name:</source> + <translation type="unfinished">Nome:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="204" /> - <source>Metadata Version:</source> - <translation type="unfinished" /> + <source>Version:</source> + <translation type="unfinished">Versão:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="205" /> - <source>Installer:</source> + <source>Location:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="206" /> - <source>Classifiers:</source> + <source>Requires:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="207" /> - <source>Entry Points:</source> + <source>Summary:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="208" /> + <source>Homepage:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="209" /> + <source>Author:</source> + <translation type="unfinished">Autor:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="210" /> + <source>Author Email:</source> + <translation type="unfinished">Correio Eletrónico do Autor:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="211" /> + <source>License:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="212" /> + <source>Metadata Version:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="213" /> + <source>Installer:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="214" /> + <source>Classifiers:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="215" /> + <source>Entry Points:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="216" /> <source>Files:</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="375" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="384" /> <source>Getting installed packages...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="390" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="400" /> <source>Getting outdated packages...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="975" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="812" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="790" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1019" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="856" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="834" /> <source>Search PyPI</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="791" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="835" /> <source><p>Received an error while searching for <b>{0}</b>.</p><p>Error: {1}</p></source> <translation type="unfinished" /> </message> <message numerus="yes"> - <location filename="../PipInterface/PipPackagesWidget.py" line="805" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="849" /> <source>%n package(s) found.</source> <translation type="unfinished"> <numerusform /> @@ -57267,117 +57282,143 @@ </translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="807" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="851" /> <source>Showing first 20 packages found.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="815" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="813" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="859" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="857" /> <source><p>There were no results for <b>{0}</b>.</p></source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="976" /> - <source><p>No package details info for <b>{0}</b> available.</p></source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="990" /> - <source>Install Pip</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="993" /> - <source>Install Pip to User-Site</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="996" /> - <source>Repair Pip</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1116" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1000" /> - <source>Install Packages</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1003" /> - <source>Install Local Package</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1007" /> - <source>Install Requirements</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1010" /> - <source>Re-Install Selected Packages</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1013" /> - <source>Uninstall Requirements</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1016" /> - <source>Generate Requirements...</source> - <translation type="unfinished" /> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1020" /> - <source>Show Cache Info...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1023" /> - <source>Show Cached Files...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1026" /> - <source>Remove Cached Files...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1029" /> - <source>Purge Cache...</source> + <source><p>No package details info for <b>{0}</b> available.</p></source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1034" /> - <source>Edit User Configuration...</source> + <source>Install Pip</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1037" /> + <source>Install Pip to User-Site</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1040" /> + <source>Repair Pip</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1170" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1044" /> + <source>Install Packages</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1047" /> + <source>Install Local Package</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1051" /> + <source>Install Requirements</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1054" /> + <source>Re-Install Selected Packages</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1057" /> + <source>Uninstall Requirements</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1060" /> + <source>Generate Requirements...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1064" /> + <source>Check Vulnerabilities</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1068" /> + <source>Update Vulnerability Database</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1072" /> + <source>Show Cache Info...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1075" /> + <source>Show Cached Files...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1078" /> + <source>Remove Cached Files...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1081" /> + <source>Purge Cache...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1086" /> + <source>Edit User Configuration...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1089" /> <source>Edit Environment Configuration...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1042" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1094" /> <source>Configure...</source> <translation type="unfinished">Configurar...</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1237" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1224" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1213" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1292" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1279" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1268" /> <source>Edit Configuration</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1238" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1225" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1214" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1293" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1280" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1269" /> <source>No valid configuration path determined. Aborting</source> <translation type="unfinished" /> </message> <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1447" /> + <source>{0} {1}</source> + <comment>package name, package version</comment> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1469" /> + <source>Affected Version:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1472" /> + <source>Advisory:</source> + <translation type="unfinished" /> + </message> + <message> <source>Error: {0}</source> <translation type="vanished">Erro: {0}</translation> </message> @@ -57390,6 +57431,11 @@ <translation type="unfinished" /> </message> <message> + <location filename="../Preferences/ConfigurationPages/PipPage.py" line="34" /> + <source><b>Note:</b> Leave empty to use the default Safety DB URL ({0}).</source> + <translation type="unfinished" /> + </message> + <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source><b>Configure pip</b></source> <translation type="unfinished" /> @@ -57406,6 +57452,36 @@ </message> <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Vulnerability Checks</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Safety DB URL:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the base URL for the Safety DB mirror to be used</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Cache Validity:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the Safety DB cache validity time in hours (2 hours up to 7 days)</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source> hours</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source>Environment</source> <translation type="unfinished" /> </message> @@ -57436,6 +57512,19 @@ </message> </context> <context> + <name>PipVulnerabilityChecker</name> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="218" /> + <source>Fetching Vulnerability Database</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="219" /> + <source><p>The vulnerability database <b>{0}</b> could not be loaded from <b>{1}</b>.</p><p>The vulnerability check is not available.</p></source> + <translation type="unfinished" /> + </message> + </context> + <context> <name>PixmapDiagram</name> <message> <location filename="../Graphics/PixmapDiagram.py" line="164" /> @@ -58714,18 +58803,18 @@ <context> <name>Preferences</name> <message> - <location filename="../Preferences/__init__.py" line="1651" /> + <location filename="../Preferences/__init__.py" line="1656" /> <source>Export Preferences</source> <translation>Exportar Preferências</translation> </message> <message> - <location filename="../Preferences/__init__.py" line="1679" /> - <location filename="../Preferences/__init__.py" line="1653" /> + <location filename="../Preferences/__init__.py" line="1684" /> + <location filename="../Preferences/__init__.py" line="1658" /> <source>Properties File (*.ini);;All Files (*)</source> <translation>Ficheiro de Propriedades (*.ini);;Ficheiros Todos (*)</translation> </message> <message> - <location filename="../Preferences/__init__.py" line="1677" /> + <location filename="../Preferences/__init__.py" line="1682" /> <source>Import Preferences</source> <translation>Importar Preferências</translation> </message> @@ -94082,27 +94171,27 @@ <context> <name>VirtualenvAddEditDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="64" /> <source>Edit Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66" /> <source>Add Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="73" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="74" /> <source>Virtualenv Target Directory</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="78" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="79" /> <source>Python Interpreter</source> <translation type="unfinished">Intérprete de Python</translation> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="83" /> <source>Enter the executable search path to be prepended to the PATH environment variable. Use '{0}' as the separator.</source> <translation type="unfinished" /> </message> @@ -94676,7 +94765,7 @@ <context> <name>VirtualenvInterpreterSelectionDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="45" /> + <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="46" /> <source>Python Interpreter</source> <translation type="unfinished">Intérprete de Python</translation> </message>
--- a/eric7/i18n/eric7_ru.ts Tue Mar 15 17:35:35 2022 +0100 +++ b/eric7/i18n/eric7_ru.ts Tue Mar 15 17:49:51 2022 +0100 @@ -51351,113 +51351,113 @@ <context> <name>Pip</name> <message> - <location filename="../PipInterface/Pip.py" line="111" /> + <location filename="../PipInterface/Pip.py" line="123" /> <source>python exited with an error ({0}).</source> <translation>python завершен с ошибкой ({0}).</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="118" /> + <location filename="../PipInterface/Pip.py" line="130" /> <source>python did not finish within 30 seconds.</source> <translation>python не завершился в течение 30 секунд.</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="121" /> + <location filename="../PipInterface/Pip.py" line="133" /> <source>python could not be started.</source> <translation>невозможно запустить python.</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="181" /> + <location filename="../PipInterface/Pip.py" line="193" /> <source><project></source> <translation><project></translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="210" /> + <location filename="../PipInterface/Pip.py" line="222" /> <source>Interpreter for Virtual Environment</source> <translation>Интерпретатор для виртуального окружения</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="211" /> + <location filename="../PipInterface/Pip.py" line="223" /> <source>No interpreter configured for the selected virtual environment.</source> <translation>Для выбранного виртуального окружения не настроен интерпретатор.</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="246" /> + <location filename="../PipInterface/Pip.py" line="258" /> <source>Install PIP</source> <translation>Установка PIP</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="288" /> + <location filename="../PipInterface/Pip.py" line="300" /> <source>Repair PIP</source> <translation>Восстановление PIP</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="371" /> + <location filename="../PipInterface/Pip.py" line="383" /> <source>Upgrade Packages</source> <translation>Обновление пакетов</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="411" /> + <location filename="../PipInterface/Pip.py" line="423" /> <source>Install Packages</source> <translation>Установка пакетов</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="440" /> + <location filename="../PipInterface/Pip.py" line="452" /> <source>Install Packages from Requirements</source> <translation>Установка пакетов, перечисленных в зависимостях</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="503" /> - <location filename="../PipInterface/Pip.py" line="472" /> - <location filename="../PipInterface/Pip.py" line="463" /> - <source>Uninstall Packages</source> - <translation>Деинсталяция пакетов</translation> - </message> - <message> - <location filename="../PipInterface/Pip.py" line="504" /> - <location filename="../PipInterface/Pip.py" line="464" /> - <source>Do you really want to uninstall these packages?</source> - <translation>Вы действительно хотите деинсталировать эти пакеты?</translation> - </message> - <message> <location filename="../PipInterface/Pip.py" line="515" /> + <location filename="../PipInterface/Pip.py" line="484" /> + <location filename="../PipInterface/Pip.py" line="475" /> + <source>Uninstall Packages</source> + <translation>Деинсталяция пакетов</translation> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="516" /> + <location filename="../PipInterface/Pip.py" line="476" /> + <source>Do you really want to uninstall these packages?</source> + <translation>Вы действительно хотите деинсталировать эти пакеты?</translation> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="527" /> <source>Uninstall Packages from Requirements</source> <translation>Деинсталяция пакетов, перечисленных в зависимостях</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="832" /> + <location filename="../PipInterface/Pip.py" line="844" /> <source>Cache Info</source> <translation>Информация о кэше</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="857" /> - <location filename="../PipInterface/Pip.py" line="849" /> + <location filename="../PipInterface/Pip.py" line="869" /> + <location filename="../PipInterface/Pip.py" line="861" /> <source>List Cached Files</source> <translation>Список кэшированных файлов</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="850" /> + <location filename="../PipInterface/Pip.py" line="862" /> <source>Enter a file pattern (empty for all):</source> <translation>Задайте шаблон файлов (пустая строка - все файлы):</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="881" /> - <location filename="../PipInterface/Pip.py" line="875" /> + <location filename="../PipInterface/Pip.py" line="893" /> + <location filename="../PipInterface/Pip.py" line="887" /> <source>Remove Cached Files</source> <translation>Удалить кэшированные файлы</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="876" /> + <location filename="../PipInterface/Pip.py" line="888" /> <source>Enter a file pattern:</source> <translation>Задайте шаблон файла:</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="904" /> - <location filename="../PipInterface/Pip.py" line="899" /> + <location filename="../PipInterface/Pip.py" line="916" /> + <location filename="../PipInterface/Pip.py" line="911" /> <source>Purge Cache</source> <translation>Очистить кэш</translation> </message> <message> - <location filename="../PipInterface/Pip.py" line="900" /> + <location filename="../PipInterface/Pip.py" line="912" /> <source>Do you really want to purge the pip cache? All files need to be downloaded again.</source> <translation>Вы действительно хотите очистить pip-кэш? Все файлы должны быть загружены снова.</translation> </message> @@ -51977,6 +51977,16 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Perform vulnerability checks based on "Safety DB".</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Vulnerability Check</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Package</source> @@ -51994,6 +52004,11 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Affected Version</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Select to show verbose package information</source> <translation>Разрешить отображение подробной информации о пакете</translation> </message> @@ -52084,104 +52099,104 @@ <translation>Установить выбранный пакет в user site</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="169" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="177" /> <source>pip Menu</source> <translation>Меню pip</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="195" /> - <source>Name:</source> - <translation>Имя:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="196" /> - <source>Version:</source> - <translation>Версия:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="197" /> - <source>Location:</source> - <translation>Расположение:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="198" /> - <source>Requires:</source> - <translation>Зависимости:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="199" /> - <source>Summary:</source> - <translation>Аннотация:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="200" /> - <source>Homepage:</source> - <translation>Домашняя страница:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="201" /> - <source>Author:</source> - <translation>Автор:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="202" /> - <source>Author Email:</source> - <translation>Email автора:</translation> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="203" /> - <source>License:</source> - <translation>Лицензия:</translation> + <source>Name:</source> + <translation>Имя:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="204" /> - <source>Metadata Version:</source> - <translation>Версия Metadata:</translation> + <source>Version:</source> + <translation>Версия:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="205" /> - <source>Installer:</source> - <translation>Установщик:</translation> + <source>Location:</source> + <translation>Расположение:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="206" /> - <source>Classifiers:</source> - <translation>Классификаторы:</translation> + <source>Requires:</source> + <translation>Зависимости:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="207" /> - <source>Entry Points:</source> - <translation>Точки входа:</translation> + <source>Summary:</source> + <translation>Аннотация:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="208" /> + <source>Homepage:</source> + <translation>Домашняя страница:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="209" /> + <source>Author:</source> + <translation>Автор:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="210" /> + <source>Author Email:</source> + <translation>Email автора:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="211" /> + <source>License:</source> + <translation>Лицензия:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="212" /> + <source>Metadata Version:</source> + <translation>Версия Metadata:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="213" /> + <source>Installer:</source> + <translation>Установщик:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="214" /> + <source>Classifiers:</source> + <translation>Классификаторы:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="215" /> + <source>Entry Points:</source> + <translation>Точки входа:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="216" /> <source>Files:</source> <translation>Файлы:</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="375" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="384" /> <source>Getting installed packages...</source> <translation>Получение списка установленных пакетов...</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="390" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="400" /> <source>Getting outdated packages...</source> <translation>Получение списка обновленных пакетов...</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="975" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="812" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="790" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1019" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="856" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="834" /> <source>Search PyPI</source> <translation>Поиск в PyPI</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="791" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="835" /> <source><p>Received an error while searching for <b>{0}</b>.</p><p>Error: {1}</p></source> <translation><p>Получена ошибка при поиске <b>{0}</b>.</p><p>Ошибка: {1}</p></translation> </message> <message numerus="yes"> - <location filename="../PipInterface/PipPackagesWidget.py" line="805" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="849" /> <source>%n package(s) found.</source> <translation> <numerusform>Найден %n пакет.</numerusform> @@ -52190,116 +52205,142 @@ </translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="807" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="851" /> <source>Showing first 20 packages found.</source> <translation>Показаны первые 20 найденных пакетов.</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="815" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="813" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="859" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="857" /> <source><p>There were no results for <b>{0}</b>.</p></source> <translation><p>Нет результатов по запросу <b>{0}</b>.</p></translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="976" /> - <source><p>No package details info for <b>{0}</b> available.</p></source> - <translation><p>Недоступна подробная информация о пакете <b>{0}</b>.</p></translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="990" /> - <source>Install Pip</source> - <translation>Инсталировать Pip</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="993" /> - <source>Install Pip to User-Site</source> - <translation>Инсталировать Pip в User-Site</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="996" /> - <source>Repair Pip</source> - <translation>Восстановить Pip</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1116" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1000" /> - <source>Install Packages</source> - <translation>Установить пакеты</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1003" /> - <source>Install Local Package</source> - <translation>Установить локальный пакет</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1007" /> - <source>Install Requirements</source> - <translation>Установить зависимости</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1010" /> - <source>Re-Install Selected Packages</source> - <translation>Переинсталировать выбранные пакеты</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1013" /> - <source>Uninstall Requirements</source> - <translation>Деинсталировать зависимости</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1016" /> - <source>Generate Requirements...</source> - <translation>Генерация зависимостей...</translation> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1020" /> - <source>Show Cache Info...</source> - <translation>Показать информацию о кэше...</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1023" /> - <source>Show Cached Files...</source> - <translation>Показать кэшированные файлы...</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1026" /> - <source>Remove Cached Files...</source> - <translation>Удалить кэшированные файлы...</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1029" /> - <source>Purge Cache...</source> - <translation>Очистить кэш...</translation> + <source><p>No package details info for <b>{0}</b> available.</p></source> + <translation><p>Недоступна подробная информация о пакете <b>{0}</b>.</p></translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1034" /> - <source>Edit User Configuration...</source> - <translation>Правка конфигурации пользователя...</translation> + <source>Install Pip</source> + <translation>Инсталировать Pip</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1037" /> + <source>Install Pip to User-Site</source> + <translation>Инсталировать Pip в User-Site</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1040" /> + <source>Repair Pip</source> + <translation>Восстановить Pip</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1170" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1044" /> + <source>Install Packages</source> + <translation>Установить пакеты</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1047" /> + <source>Install Local Package</source> + <translation>Установить локальный пакет</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1051" /> + <source>Install Requirements</source> + <translation>Установить зависимости</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1054" /> + <source>Re-Install Selected Packages</source> + <translation>Переинсталировать выбранные пакеты</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1057" /> + <source>Uninstall Requirements</source> + <translation>Деинсталировать зависимости</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1060" /> + <source>Generate Requirements...</source> + <translation>Генерация зависимостей...</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1064" /> + <source>Check Vulnerabilities</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1068" /> + <source>Update Vulnerability Database</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1072" /> + <source>Show Cache Info...</source> + <translation>Показать информацию о кэше...</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1075" /> + <source>Show Cached Files...</source> + <translation>Показать кэшированные файлы...</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1078" /> + <source>Remove Cached Files...</source> + <translation>Удалить кэшированные файлы...</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1081" /> + <source>Purge Cache...</source> + <translation>Очистить кэш...</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1086" /> + <source>Edit User Configuration...</source> + <translation>Правка конфигурации пользователя...</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1089" /> <source>Edit Environment Configuration...</source> <translation>Правка конфигурации среды окружения...</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1042" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1094" /> <source>Configure...</source> <translation>Настроить...</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1237" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1224" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1213" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1292" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1279" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1268" /> <source>Edit Configuration</source> <translation>Правка конфигурации</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1238" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1225" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1214" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1293" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1280" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1269" /> <source>No valid configuration path determined. Aborting</source> <translation>Не определен допустимый путь конфигурации. Прерывание</translation> </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1447" /> + <source>{0} {1}</source> + <comment>package name, package version</comment> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1469" /> + <source>Affected Version:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1472" /> + <source>Advisory:</source> + <translation type="unfinished" /> + </message> </context> <context> <name>PipPage</name> @@ -52309,6 +52350,11 @@ <translation><b>Примечание:</b> Не заполняйте строку если используете PyPI по умолчанию (<a href="{0}">{0}</a>).</translation> </message> <message> + <location filename="../Preferences/ConfigurationPages/PipPage.py" line="34" /> + <source><b>Note:</b> Leave empty to use the default Safety DB URL ({0}).</source> + <translation type="unfinished" /> + </message> + <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source><b>Configure pip</b></source> <translation><b>Настройка менеджера пакетов pip</b></translation> @@ -52325,6 +52371,36 @@ </message> <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Vulnerability Checks</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Safety DB URL:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the base URL for the Safety DB mirror to be used</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Cache Validity:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the Safety DB cache validity time in hours (2 hours up to 7 days)</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source> hours</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source>Environment</source> <translation>Среда окружения</translation> </message> @@ -52340,6 +52416,19 @@ </message> </context> <context> + <name>PipVulnerabilityChecker</name> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="218" /> + <source>Fetching Vulnerability Database</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="219" /> + <source><p>The vulnerability database <b>{0}</b> could not be loaded from <b>{1}</b>.</p><p>The vulnerability check is not available.</p></source> + <translation type="unfinished" /> + </message> + </context> + <context> <name>PixmapDiagram</name> <message> <location filename="../Graphics/PixmapDiagram.py" line="164" /> @@ -53604,18 +53693,18 @@ <context> <name>Preferences</name> <message> - <location filename="../Preferences/__init__.py" line="1651" /> + <location filename="../Preferences/__init__.py" line="1656" /> <source>Export Preferences</source> <translation>Экспорт Preferences</translation> </message> <message> - <location filename="../Preferences/__init__.py" line="1679" /> - <location filename="../Preferences/__init__.py" line="1653" /> + <location filename="../Preferences/__init__.py" line="1684" /> + <location filename="../Preferences/__init__.py" line="1658" /> <source>Properties File (*.ini);;All Files (*)</source> <translation>Файлы Preferences (*.ini);;Все файлы (*)</translation> </message> <message> - <location filename="../Preferences/__init__.py" line="1677" /> + <location filename="../Preferences/__init__.py" line="1682" /> <source>Import Preferences</source> <translation>Импорт Preferences</translation> </message> @@ -88459,27 +88548,27 @@ <context> <name>VirtualenvAddEditDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="64" /> <source>Edit Virtual Environment</source> <translation>Редактировать виртуальное окружение</translation> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66" /> <source>Add Virtual Environment</source> <translation>Добавить виртуальное окружение</translation> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="73" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="74" /> <source>Virtualenv Target Directory</source> <translation>Целевая директория Virtualenv</translation> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="78" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="79" /> <source>Python Interpreter</source> <translation>Интерпретатор Python</translation> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="83" /> <source>Enter the executable search path to be prepended to the PATH environment variable. Use '{0}' as the separator.</source> <translation>Задайте выполнимый путь поиска, который будет добавлен к переменной среды окружения PATH. Используйте '{0}' в качестве разделителя.</translation> </message> @@ -89077,7 +89166,7 @@ <context> <name>VirtualenvInterpreterSelectionDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="45" /> + <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="46" /> <source>Python Interpreter</source> <translation>Интерпретатор Python</translation> </message>
--- a/eric7/i18n/eric7_tr.ts Tue Mar 15 17:35:35 2022 +0100 +++ b/eric7/i18n/eric7_tr.ts Tue Mar 15 17:49:51 2022 +0100 @@ -55110,113 +55110,113 @@ <context> <name>Pip</name> <message> - <location filename="../PipInterface/Pip.py" line="111" /> + <location filename="../PipInterface/Pip.py" line="123" /> <source>python exited with an error ({0}).</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="118" /> + <location filename="../PipInterface/Pip.py" line="130" /> <source>python did not finish within 30 seconds.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="121" /> + <location filename="../PipInterface/Pip.py" line="133" /> <source>python could not be started.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="181" /> + <location filename="../PipInterface/Pip.py" line="193" /> <source><project></source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="210" /> + <location filename="../PipInterface/Pip.py" line="222" /> <source>Interpreter for Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="211" /> + <location filename="../PipInterface/Pip.py" line="223" /> <source>No interpreter configured for the selected virtual environment.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="246" /> + <location filename="../PipInterface/Pip.py" line="258" /> <source>Install PIP</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="288" /> + <location filename="../PipInterface/Pip.py" line="300" /> <source>Repair PIP</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="371" /> + <location filename="../PipInterface/Pip.py" line="383" /> <source>Upgrade Packages</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="411" /> + <location filename="../PipInterface/Pip.py" line="423" /> <source>Install Packages</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="440" /> + <location filename="../PipInterface/Pip.py" line="452" /> <source>Install Packages from Requirements</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="503" /> - <location filename="../PipInterface/Pip.py" line="472" /> - <location filename="../PipInterface/Pip.py" line="463" /> - <source>Uninstall Packages</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/Pip.py" line="504" /> - <location filename="../PipInterface/Pip.py" line="464" /> - <source>Do you really want to uninstall these packages?</source> - <translation type="unfinished" /> - </message> - <message> <location filename="../PipInterface/Pip.py" line="515" /> + <location filename="../PipInterface/Pip.py" line="484" /> + <location filename="../PipInterface/Pip.py" line="475" /> + <source>Uninstall Packages</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="516" /> + <location filename="../PipInterface/Pip.py" line="476" /> + <source>Do you really want to uninstall these packages?</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="527" /> <source>Uninstall Packages from Requirements</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="832" /> + <location filename="../PipInterface/Pip.py" line="844" /> <source>Cache Info</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="857" /> - <location filename="../PipInterface/Pip.py" line="849" /> + <location filename="../PipInterface/Pip.py" line="869" /> + <location filename="../PipInterface/Pip.py" line="861" /> <source>List Cached Files</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="850" /> + <location filename="../PipInterface/Pip.py" line="862" /> <source>Enter a file pattern (empty for all):</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="881" /> - <location filename="../PipInterface/Pip.py" line="875" /> + <location filename="../PipInterface/Pip.py" line="893" /> + <location filename="../PipInterface/Pip.py" line="887" /> <source>Remove Cached Files</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="876" /> + <location filename="../PipInterface/Pip.py" line="888" /> <source>Enter a file pattern:</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="904" /> - <location filename="../PipInterface/Pip.py" line="899" /> + <location filename="../PipInterface/Pip.py" line="916" /> + <location filename="../PipInterface/Pip.py" line="911" /> <source>Purge Cache</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="900" /> + <location filename="../PipInterface/Pip.py" line="912" /> <source>Do you really want to purge the pip cache? All files need to be downloaded again.</source> <translation type="unfinished" /> </message> @@ -55759,6 +55759,16 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Perform vulnerability checks based on "Safety DB".</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Vulnerability Check</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Package</source> @@ -55776,6 +55786,11 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Affected Version</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Select to show verbose package information</source> <translation type="unfinished" /> </message> @@ -55866,104 +55881,104 @@ <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="169" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="177" /> <source>pip Menu</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="195" /> - <source>Name:</source> - <translation type="unfinished">Adı:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="196" /> - <source>Version:</source> - <translation type="unfinished">Sürüm:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="197" /> - <source>Location:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="198" /> - <source>Requires:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="199" /> - <source>Summary:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="200" /> - <source>Homepage:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="201" /> - <source>Author:</source> - <translation type="unfinished">Yazar:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="202" /> - <source>Author Email:</source> - <translation type="unfinished" /> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="203" /> - <source>License:</source> - <translation type="unfinished" /> + <source>Name:</source> + <translation type="unfinished">Adı:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="204" /> - <source>Metadata Version:</source> - <translation type="unfinished" /> + <source>Version:</source> + <translation type="unfinished">Sürüm:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="205" /> - <source>Installer:</source> + <source>Location:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="206" /> - <source>Classifiers:</source> + <source>Requires:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="207" /> - <source>Entry Points:</source> + <source>Summary:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="208" /> + <source>Homepage:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="209" /> + <source>Author:</source> + <translation type="unfinished">Yazar:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="210" /> + <source>Author Email:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="211" /> + <source>License:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="212" /> + <source>Metadata Version:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="213" /> + <source>Installer:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="214" /> + <source>Classifiers:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="215" /> + <source>Entry Points:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="216" /> <source>Files:</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="375" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="384" /> <source>Getting installed packages...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="390" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="400" /> <source>Getting outdated packages...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="975" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="812" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="790" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1019" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="856" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="834" /> <source>Search PyPI</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="791" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="835" /> <source><p>Received an error while searching for <b>{0}</b>.</p><p>Error: {1}</p></source> <translation type="unfinished" /> </message> <message numerus="yes"> - <location filename="../PipInterface/PipPackagesWidget.py" line="805" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="849" /> <source>%n package(s) found.</source> <translation type="unfinished"> <numerusform /> @@ -55971,117 +55986,143 @@ </translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="807" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="851" /> <source>Showing first 20 packages found.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="815" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="813" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="859" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="857" /> <source><p>There were no results for <b>{0}</b>.</p></source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="976" /> - <source><p>No package details info for <b>{0}</b> available.</p></source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="990" /> - <source>Install Pip</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="993" /> - <source>Install Pip to User-Site</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="996" /> - <source>Repair Pip</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1116" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1000" /> - <source>Install Packages</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1003" /> - <source>Install Local Package</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1007" /> - <source>Install Requirements</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1010" /> - <source>Re-Install Selected Packages</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1013" /> - <source>Uninstall Requirements</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1016" /> - <source>Generate Requirements...</source> - <translation type="unfinished" /> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1020" /> - <source>Show Cache Info...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1023" /> - <source>Show Cached Files...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1026" /> - <source>Remove Cached Files...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1029" /> - <source>Purge Cache...</source> + <source><p>No package details info for <b>{0}</b> available.</p></source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1034" /> - <source>Edit User Configuration...</source> + <source>Install Pip</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1037" /> + <source>Install Pip to User-Site</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1040" /> + <source>Repair Pip</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1170" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1044" /> + <source>Install Packages</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1047" /> + <source>Install Local Package</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1051" /> + <source>Install Requirements</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1054" /> + <source>Re-Install Selected Packages</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1057" /> + <source>Uninstall Requirements</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1060" /> + <source>Generate Requirements...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1064" /> + <source>Check Vulnerabilities</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1068" /> + <source>Update Vulnerability Database</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1072" /> + <source>Show Cache Info...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1075" /> + <source>Show Cached Files...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1078" /> + <source>Remove Cached Files...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1081" /> + <source>Purge Cache...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1086" /> + <source>Edit User Configuration...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1089" /> <source>Edit Environment Configuration...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1042" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1094" /> <source>Configure...</source> <translation type="unfinished">Ayarlanıyor...</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1237" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1224" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1213" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1292" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1279" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1268" /> <source>Edit Configuration</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1238" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1225" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1214" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1293" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1280" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1269" /> <source>No valid configuration path determined. Aborting</source> <translation type="unfinished" /> </message> <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1447" /> + <source>{0} {1}</source> + <comment>package name, package version</comment> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1469" /> + <source>Affected Version:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1472" /> + <source>Advisory:</source> + <translation type="unfinished" /> + </message> + <message> <source>Error: {0}</source> <translation type="vanished">Hata: {0}</translation> </message> @@ -56094,6 +56135,11 @@ <translation type="unfinished" /> </message> <message> + <location filename="../Preferences/ConfigurationPages/PipPage.py" line="34" /> + <source><b>Note:</b> Leave empty to use the default Safety DB URL ({0}).</source> + <translation type="unfinished" /> + </message> + <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source><b>Configure pip</b></source> <translation type="unfinished" /> @@ -56110,6 +56156,36 @@ </message> <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Vulnerability Checks</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Safety DB URL:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the base URL for the Safety DB mirror to be used</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Cache Validity:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the Safety DB cache validity time in hours (2 hours up to 7 days)</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source> hours</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source>Environment</source> <translation type="unfinished" /> </message> @@ -56140,6 +56216,19 @@ </message> </context> <context> + <name>PipVulnerabilityChecker</name> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="218" /> + <source>Fetching Vulnerability Database</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="219" /> + <source><p>The vulnerability database <b>{0}</b> could not be loaded from <b>{1}</b>.</p><p>The vulnerability check is not available.</p></source> + <translation type="unfinished" /> + </message> + </context> + <context> <name>PixmapDiagram</name> <message> <location filename="../Graphics/PixmapDiagram.py" line="164" /> @@ -57406,18 +57495,18 @@ <context> <name>Preferences</name> <message> - <location filename="../Preferences/__init__.py" line="1651" /> + <location filename="../Preferences/__init__.py" line="1656" /> <source>Export Preferences</source> <translation>Seçenekleri Dışa Aktar</translation> </message> <message> - <location filename="../Preferences/__init__.py" line="1679" /> - <location filename="../Preferences/__init__.py" line="1653" /> + <location filename="../Preferences/__init__.py" line="1684" /> + <location filename="../Preferences/__init__.py" line="1658" /> <source>Properties File (*.ini);;All Files (*)</source> <translation type="unfinished" /> </message> <message> - <location filename="../Preferences/__init__.py" line="1677" /> + <location filename="../Preferences/__init__.py" line="1682" /> <source>Import Preferences</source> <translation>Seçenekleri İçe Aktar</translation> </message> @@ -92848,27 +92937,27 @@ <context> <name>VirtualenvAddEditDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="64" /> <source>Edit Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66" /> <source>Add Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="73" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="74" /> <source>Virtualenv Target Directory</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="78" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="79" /> <source>Python Interpreter</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="83" /> <source>Enter the executable search path to be prepended to the PATH environment variable. Use '{0}' as the separator.</source> <translation type="unfinished" /> </message> @@ -93442,7 +93531,7 @@ <context> <name>VirtualenvInterpreterSelectionDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="45" /> + <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="46" /> <source>Python Interpreter</source> <translation type="unfinished" /> </message>
--- a/eric7/i18n/eric7_zh_CN.ts Tue Mar 15 17:35:35 2022 +0100 +++ b/eric7/i18n/eric7_zh_CN.ts Tue Mar 15 17:49:51 2022 +0100 @@ -55975,113 +55975,113 @@ <context> <name>Pip</name> <message> - <location filename="../PipInterface/Pip.py" line="111" /> + <location filename="../PipInterface/Pip.py" line="123" /> <source>python exited with an error ({0}).</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="118" /> + <location filename="../PipInterface/Pip.py" line="130" /> <source>python did not finish within 30 seconds.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="121" /> + <location filename="../PipInterface/Pip.py" line="133" /> <source>python could not be started.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="181" /> + <location filename="../PipInterface/Pip.py" line="193" /> <source><project></source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="210" /> + <location filename="../PipInterface/Pip.py" line="222" /> <source>Interpreter for Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="211" /> + <location filename="../PipInterface/Pip.py" line="223" /> <source>No interpreter configured for the selected virtual environment.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="246" /> + <location filename="../PipInterface/Pip.py" line="258" /> <source>Install PIP</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="288" /> + <location filename="../PipInterface/Pip.py" line="300" /> <source>Repair PIP</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="371" /> + <location filename="../PipInterface/Pip.py" line="383" /> <source>Upgrade Packages</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="411" /> + <location filename="../PipInterface/Pip.py" line="423" /> <source>Install Packages</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="440" /> + <location filename="../PipInterface/Pip.py" line="452" /> <source>Install Packages from Requirements</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="503" /> - <location filename="../PipInterface/Pip.py" line="472" /> - <location filename="../PipInterface/Pip.py" line="463" /> - <source>Uninstall Packages</source> - <translation type="unfinished">卸载包</translation> - </message> - <message> - <location filename="../PipInterface/Pip.py" line="504" /> - <location filename="../PipInterface/Pip.py" line="464" /> - <source>Do you really want to uninstall these packages?</source> - <translation type="unfinished" /> - </message> - <message> <location filename="../PipInterface/Pip.py" line="515" /> + <location filename="../PipInterface/Pip.py" line="484" /> + <location filename="../PipInterface/Pip.py" line="475" /> + <source>Uninstall Packages</source> + <translation type="unfinished">卸载包</translation> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="516" /> + <location filename="../PipInterface/Pip.py" line="476" /> + <source>Do you really want to uninstall these packages?</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/Pip.py" line="527" /> <source>Uninstall Packages from Requirements</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="832" /> + <location filename="../PipInterface/Pip.py" line="844" /> <source>Cache Info</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="857" /> - <location filename="../PipInterface/Pip.py" line="849" /> + <location filename="../PipInterface/Pip.py" line="869" /> + <location filename="../PipInterface/Pip.py" line="861" /> <source>List Cached Files</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="850" /> + <location filename="../PipInterface/Pip.py" line="862" /> <source>Enter a file pattern (empty for all):</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="881" /> - <location filename="../PipInterface/Pip.py" line="875" /> + <location filename="../PipInterface/Pip.py" line="893" /> + <location filename="../PipInterface/Pip.py" line="887" /> <source>Remove Cached Files</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="876" /> + <location filename="../PipInterface/Pip.py" line="888" /> <source>Enter a file pattern:</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="904" /> - <location filename="../PipInterface/Pip.py" line="899" /> + <location filename="../PipInterface/Pip.py" line="916" /> + <location filename="../PipInterface/Pip.py" line="911" /> <source>Purge Cache</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/Pip.py" line="900" /> + <location filename="../PipInterface/Pip.py" line="912" /> <source>Do you really want to purge the pip cache? All files need to be downloaded again.</source> <translation type="unfinished" /> </message> @@ -56632,6 +56632,16 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Perform vulnerability checks based on "Safety DB".</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Vulnerability Check</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Package</source> @@ -56649,6 +56659,11 @@ </message> <message> <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> + <source>Affected Version</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.ui" line="0" /> <source>Select to show verbose package information</source> <translation type="unfinished" /> </message> @@ -56739,221 +56754,247 @@ <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="169" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="177" /> <source>pip Menu</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="195" /> - <source>Name:</source> - <translation type="unfinished">名称:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="196" /> - <source>Version:</source> - <translation type="unfinished">版本:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="197" /> - <source>Location:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="198" /> - <source>Requires:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="199" /> - <source>Summary:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="200" /> - <source>Homepage:</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="201" /> - <source>Author:</source> - <translation type="unfinished">作者:</translation> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="202" /> - <source>Author Email:</source> - <translation type="unfinished" /> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="203" /> - <source>License:</source> - <translation type="unfinished" /> + <source>Name:</source> + <translation type="unfinished">名称:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="204" /> - <source>Metadata Version:</source> - <translation type="unfinished" /> + <source>Version:</source> + <translation type="unfinished">版本:</translation> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="205" /> - <source>Installer:</source> + <source>Location:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="206" /> - <source>Classifiers:</source> + <source>Requires:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="207" /> - <source>Entry Points:</source> + <source>Summary:</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="208" /> + <source>Homepage:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="209" /> + <source>Author:</source> + <translation type="unfinished">作者:</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="210" /> + <source>Author Email:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="211" /> + <source>License:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="212" /> + <source>Metadata Version:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="213" /> + <source>Installer:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="214" /> + <source>Classifiers:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="215" /> + <source>Entry Points:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="216" /> <source>Files:</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="375" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="384" /> <source>Getting installed packages...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="390" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="400" /> <source>Getting outdated packages...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="975" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="812" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="790" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1019" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="856" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="834" /> <source>Search PyPI</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="791" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="835" /> <source><p>Received an error while searching for <b>{0}</b>.</p><p>Error: {1}</p></source> <translation type="unfinished" /> </message> <message numerus="yes"> - <location filename="../PipInterface/PipPackagesWidget.py" line="805" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="849" /> <source>%n package(s) found.</source> <translation type="unfinished"> <numerusform /> </translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="807" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="851" /> <source>Showing first 20 packages found.</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="815" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="813" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="859" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="857" /> <source><p>There were no results for <b>{0}</b>.</p></source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="976" /> - <source><p>No package details info for <b>{0}</b> available.</p></source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="990" /> - <source>Install Pip</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="993" /> - <source>Install Pip to User-Site</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="996" /> - <source>Repair Pip</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1116" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1000" /> - <source>Install Packages</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1003" /> - <source>Install Local Package</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1007" /> - <source>Install Requirements</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1010" /> - <source>Re-Install Selected Packages</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1013" /> - <source>Uninstall Requirements</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1016" /> - <source>Generate Requirements...</source> - <translation type="unfinished" /> - </message> - <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1020" /> - <source>Show Cache Info...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1023" /> - <source>Show Cached Files...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1026" /> - <source>Remove Cached Files...</source> - <translation type="unfinished" /> - </message> - <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1029" /> - <source>Purge Cache...</source> + <source><p>No package details info for <b>{0}</b> available.</p></source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1034" /> - <source>Edit User Configuration...</source> + <source>Install Pip</source> <translation type="unfinished" /> </message> <message> <location filename="../PipInterface/PipPackagesWidget.py" line="1037" /> + <source>Install Pip to User-Site</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1040" /> + <source>Repair Pip</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1170" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1044" /> + <source>Install Packages</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1047" /> + <source>Install Local Package</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1051" /> + <source>Install Requirements</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1054" /> + <source>Re-Install Selected Packages</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1057" /> + <source>Uninstall Requirements</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1060" /> + <source>Generate Requirements...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1064" /> + <source>Check Vulnerabilities</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1068" /> + <source>Update Vulnerability Database</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1072" /> + <source>Show Cache Info...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1075" /> + <source>Show Cached Files...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1078" /> + <source>Remove Cached Files...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1081" /> + <source>Purge Cache...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1086" /> + <source>Edit User Configuration...</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1089" /> <source>Edit Environment Configuration...</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1042" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1094" /> <source>Configure...</source> <translation type="unfinished">配置…</translation> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1237" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1224" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1213" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1292" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1279" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1268" /> <source>Edit Configuration</source> <translation type="unfinished" /> </message> <message> - <location filename="../PipInterface/PipPackagesWidget.py" line="1238" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1225" /> - <location filename="../PipInterface/PipPackagesWidget.py" line="1214" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1293" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1280" /> + <location filename="../PipInterface/PipPackagesWidget.py" line="1269" /> <source>No valid configuration path determined. Aborting</source> <translation type="unfinished" /> </message> <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1447" /> + <source>{0} {1}</source> + <comment>package name, package version</comment> + <translation type="unfinished">{0} {1}</translation> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1469" /> + <source>Affected Version:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipPackagesWidget.py" line="1472" /> + <source>Advisory:</source> + <translation type="unfinished" /> + </message> + <message> <source>Error: {0}</source> <translation type="vanished">错误:{0}</translation> </message> @@ -56966,6 +57007,11 @@ <translation type="unfinished" /> </message> <message> + <location filename="../Preferences/ConfigurationPages/PipPage.py" line="34" /> + <source><b>Note:</b> Leave empty to use the default Safety DB URL ({0}).</source> + <translation type="unfinished" /> + </message> + <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source><b>Configure pip</b></source> <translation type="unfinished" /> @@ -56982,6 +57028,36 @@ </message> <message> <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Vulnerability Checks</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Safety DB URL:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the base URL for the Safety DB mirror to be used</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Cache Validity:</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source>Enter the Safety DB cache validity time in hours (2 hours up to 7 days)</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> + <source> hours</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../Preferences/ConfigurationPages/PipPage.ui" line="0" /> <source>Environment</source> <translation type="unfinished" /> </message> @@ -57012,6 +57088,19 @@ </message> </context> <context> + <name>PipVulnerabilityChecker</name> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="218" /> + <source>Fetching Vulnerability Database</source> + <translation type="unfinished" /> + </message> + <message> + <location filename="../PipInterface/PipVulnerabilityChecker.py" line="219" /> + <source><p>The vulnerability database <b>{0}</b> could not be loaded from <b>{1}</b>.</p><p>The vulnerability check is not available.</p></source> + <translation type="unfinished" /> + </message> + </context> + <context> <name>PixmapDiagram</name> <message> <location filename="../Graphics/PixmapDiagram.py" line="164" /> @@ -58307,18 +58396,18 @@ <context> <name>Preferences</name> <message> - <location filename="../Preferences/__init__.py" line="1651" /> + <location filename="../Preferences/__init__.py" line="1656" /> <source>Export Preferences</source> <translation>导出首选项</translation> </message> <message> - <location filename="../Preferences/__init__.py" line="1679" /> - <location filename="../Preferences/__init__.py" line="1653" /> + <location filename="../Preferences/__init__.py" line="1684" /> + <location filename="../Preferences/__init__.py" line="1658" /> <source>Properties File (*.ini);;All Files (*)</source> <translation>属性文件 (*.ini);;所有文件 (*)</translation> </message> <message> - <location filename="../Preferences/__init__.py" line="1677" /> + <location filename="../Preferences/__init__.py" line="1682" /> <source>Import Preferences</source> <translation>导入首选项</translation> </message> @@ -94685,27 +94774,27 @@ <context> <name>VirtualenvAddEditDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="63" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="64" /> <source>Edit Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="65" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="66" /> <source>Add Virtual Environment</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="73" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="74" /> <source>Virtualenv Target Directory</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="78" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="79" /> <source>Python Interpreter</source> <translation type="unfinished" /> </message> <message> - <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="82" /> + <location filename="../VirtualEnv/VirtualenvAddEditDialog.py" line="83" /> <source>Enter the executable search path to be prepended to the PATH environment variable. Use '{0}' as the separator.</source> <translation type="unfinished" /> </message> @@ -95279,7 +95368,7 @@ <context> <name>VirtualenvInterpreterSelectionDialog</name> <message> - <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="45" /> + <location filename="../VirtualEnv/VirtualenvInterpreterSelectionDialog.py" line="46" /> <source>Python Interpreter</source> <translation type="unfinished" /> </message>