diff options
Diffstat (limited to 'desktop')
23 files changed, 267 insertions, 404 deletions
diff --git a/desktop/onionshare/main_window.py b/desktop/onionshare/main_window.py index 7cad2df1..127c8605 100644 --- a/desktop/onionshare/main_window.py +++ b/desktop/onionshare/main_window.py @@ -244,17 +244,6 @@ class MainWindow(QtWidgets.QMainWindow): break self.tabs.open_settings_tab(from_autoconnect, active_tab=active_tab) - def settings_have_changed(self): - self.common.log("OnionShareGui", "settings_have_changed") - - if self.common.gui.onion.is_authenticated(): - self.status_bar.clearMessage() - - # Tell each tab that settings have changed - for index in range(self.tabs.count()): - tab = self.tabs.widget(index) - tab.settings_have_changed() - def bring_to_front(self): self.common.log("MainWindow", "bring_to_front") self.raise_() diff --git a/desktop/onionshare/resources/countries/cs.json b/desktop/onionshare/resources/countries/cs.json new file mode 100644 index 00000000..4a4cfda5 --- /dev/null +++ b/desktop/onionshare/resources/countries/cs.json @@ -0,0 +1 @@ +{"AF": "Afgh\u00e1nist\u00e1n", "AX": "\u00c5landy", "AL": "Alb\u00e1nie", "DZ": "Al\u017e\u00edrsko", "AS": "Americk\u00e1 Samoa", "VI": "Americk\u00e9 Panensk\u00e9 ostrovy", "AD": "Andorra", "AO": "Angola", "AI": "Anguilla", "AQ": "Antarktida", "AG": "Antigua a Barbuda", "AR": "Argentina", "AM": "Arm\u00e9nie", "AW": "Aruba", "AU": "Austr\u00e1lie", "AZ": "\u00c1zerb\u00e1jd\u017e\u00e1n", "BS": "Bahamy", "BH": "Bahrajn", "BD": "Banglad\u00e9\u0161", "BB": "Barbados", "BE": "Belgie", "BZ": "Belize", "BY": "B\u011blorusko", "BJ": "Benin", "BM": "Bermudy", "BT": "Bh\u00fat\u00e1n", "BO": "Bol\u00edvie", "BA": "Bosna a Hercegovina", "BW": "Botswana", "BV": "Bouvet\u016fv ostrov", "BR": "Braz\u00edlie", "IO": "Britsk\u00e9 indickooce\u00e1nsk\u00e9 \u00fazem\u00ed", "VG": "Britsk\u00e9 Panensk\u00e9 ostrovy", "BN": "Brunej", "BG": "Bulharsko", "BF": "Burkina Faso", "BI": "Burundi", "CK": "Cookovy ostrovy", "CW": "Cura\u00e7ao", "TD": "\u010cad", "ME": "\u010cern\u00e1 Hora", "CZ": "\u010cesko", "CN": "\u010c\u00edna", "DK": "D\u00e1nsko", "DM": "Dominika", "DO": "Dominik\u00e1nsk\u00e1 republika", "DJ": "D\u017eibutsko", "EG": "Egypt", "EC": "Ekv\u00e1dor", "ER": "Eritrea", "EE": "Estonsko", "ET": "Etiopie", "FO": "Faersk\u00e9 ostrovy", "FK": "Falklandsk\u00e9 ostrovy", "FJ": "Fid\u017ei", "PH": "Filip\u00edny", "FI": "Finsko", "FR": "Francie", "GF": "Francouzsk\u00e1 Guyana", "TF": "Francouzsk\u00e1 ji\u017en\u00ed \u00fazem\u00ed", "PF": "Francouzsk\u00e1 Polyn\u00e9sie", "GA": "Gabon", "GM": "Gambie", "GH": "Ghana", "GI": "Gibraltar", "GD": "Grenada", "GL": "Gr\u00f3nsko", "GE": "Gruzie", "GP": "Guadeloupe", "GU": "Guam", "GT": "Guatemala", "GG": "Guernsey", "GN": "Guinea", "GW": "Guinea-Bissau", "GY": "Guyana", "HT": "Haiti", "HM": "Heard\u016fv ostrov a McDonaldovy ostrovy", "HN": "Honduras", "HK": "Hongkong \u2013 ZAO \u010c\u00edny", "CL": "Chile", "HR": "Chorvatsko", "IN": "Indie", "ID": "Indon\u00e9sie", "IQ": "Ir\u00e1k", "IR": "\u00cdr\u00e1n", "IE": "Irsko", "IS": "Island", "IT": "It\u00e1lie", "IL": "Izrael", "JM": "Jamajka", "JP": "Japonsko", "YE": "Jemen", "ZA": "Jihoafrick\u00e1 republika", "GS": "Ji\u017en\u00ed Georgie a Ji\u017en\u00ed Sandwichovy ostrovy", "KR": "Ji\u017en\u00ed Korea", "SS": "Ji\u017en\u00ed S\u00fad\u00e1n", "JO": "Jord\u00e1nsko", "KY": "Kajmansk\u00e9 ostrovy", "KH": "Kambod\u017ea", "CM": "Kamerun", "CA": "Kanada", "CV": "Kapverdy", "BQ": "Karibsk\u00e9 Nizozemsko", "QA": "Katar", "KZ": "Kazachst\u00e1n", "KE": "Ke\u0148a", "KI": "Kiribati", "CC": "Kokosov\u00e9 ostrovy", "CO": "Kolumbie", "KM": "Komory", "CG": "Kongo \u2013 Brazzaville", "CD": "Kongo \u2013 Kinshasa", "CR": "Kostarika", "CU": "Kuba", "KW": "Kuvajt", "CY": "Kypr", "KG": "Kyrgyzst\u00e1n", "LA": "Laos", "LS": "Lesotho", "LB": "Libanon", "LR": "Lib\u00e9rie", "LY": "Libye", "LI": "Lichten\u0161tejnsko", "LT": "Litva", "LV": "Loty\u0161sko", "LU": "Lucembursko", "MO": "Macao \u2013 ZAO \u010c\u00edny", "MG": "Madagaskar", "HU": "Ma\u010farsko", "MY": "Malajsie", "MW": "Malawi", "MV": "Maledivy", "ML": "Mali", "MT": "Malta", "MA": "Maroko", "MQ": "Martinik", "MU": "Mauricius", "MR": "Maurit\u00e1nie", "YT": "Mayotte", "MX": "Mexiko", "MD": "Moldavsko", "MC": "Monako", "MN": "Mongolsko", "MS": "Montserrat", "MZ": "Mosambik", "MM": "Myanmar (Barma)", "NA": "Namibie", "NR": "Nauru", "DE": "N\u011bmecko", "NP": "Nep\u00e1l", "NE": "Niger", "NG": "Nig\u00e9rie", "NI": "Nikaragua", "NU": "Niue", "NL": "Nizozemsko", "NF": "Norfolk", "NO": "Norsko", "NC": "Nov\u00e1 Kaledonie", "NZ": "Nov\u00fd Z\u00e9land", "OM": "Om\u00e1n", "IM": "Ostrov Man", "PK": "P\u00e1kist\u00e1n", "PW": "Palau", "PA": "Panama", "PG": "Papua-Nov\u00e1 Guinea", "PY": "Paraguay", "PE": "Peru", "PN": "Pitcairnovy ostrovy", "CI": "Pob\u0159e\u017e\u00ed slonoviny", "PL": "Polsko", "PR": "Portoriko", "PT": "Portugalsko", "AT": "Rakousko", "RE": "R\u00e9union", "GQ": "Rovn\u00edkov\u00e1 Guinea", "RO": "Rumunsko", "RU": "Rusko", "RW": "Rwanda", "GR": "\u0158ecko", "PM": "Saint-Pierre a Miquelon", "SV": "Salvador", "WS": "Samoa", "SM": "San Marino", "SA": "Sa\u00fadsk\u00e1 Ar\u00e1bie", "SN": "Senegal", "KP": "Severn\u00ed Korea", "MK": "Severn\u00ed Makedonie", "SC": "Seychely", "SL": "Sierra Leone", "SG": "Singapur", "SK": "Slovensko", "SI": "Slovinsko", "SO": "Som\u00e1lsko", "AE": "Spojen\u00e9 arabsk\u00e9 emir\u00e1ty", "GB": "Spojen\u00e9 kr\u00e1lovstv\u00ed", "US": "Spojen\u00e9 st\u00e1ty", "RS": "Srbsko", "LK": "Sr\u00ed Lanka", "CF": "St\u0159edoafrick\u00e1 republika", "SD": "S\u00fad\u00e1n", "SR": "Surinam", "SH": "Svat\u00e1 Helena", "LC": "Svat\u00e1 Lucie", "BL": "Svat\u00fd Bartolom\u011bj", "KN": "Svat\u00fd Kry\u0161tof a Nevis", "MF": "Svat\u00fd Martin (Francie)", "SX": "Svat\u00fd Martin (Nizozemsko)", "ST": "Svat\u00fd Tom\u00e1\u0161 a Princ\u016fv ostrov", "VC": "Svat\u00fd Vincenc a Grenadiny", "SZ": "Svazijsko", "SY": "S\u00fdrie", "SB": "\u0160alamounovy ostrovy", "ES": "\u0160pan\u011blsko", "SJ": "\u0160picberky a Jan Mayen", "SE": "\u0160v\u00e9dsko", "CH": "\u0160v\u00fdcarsko", "TJ": "T\u00e1d\u017eikist\u00e1n", "TZ": "Tanzanie", "TH": "Thajsko", "TW": "Tchaj-wan", "TG": "Togo", "TK": "Tokelau", "TO": "Tonga", "TT": "Trinidad a Tobago", "TN": "Tunisko", "TR": "Turecko", "TM": "Turkmenist\u00e1n", "TC": "Turks a Caicos", "UG": "Uganda", "UA": "Ukrajina", "UY": "Uruguay", "UZ": "Uzbekist\u00e1n", "CX": "V\u00e1no\u010dn\u00ed ostrov", "VU": "Vanuatu", "VA": "Vatik\u00e1n", "VE": "Venezuela", "VN": "Vietnam", "TL": "V\u00fdchodn\u00ed Timor", "WF": "Wallis a Futuna", "ZM": "Zambie", "EH": "Z\u00e1padn\u00ed Sahara", "ZW": "Zimbabwe"}
\ No newline at end of file diff --git a/desktop/onionshare/resources/countries/hr.json b/desktop/onionshare/resources/countries/hr.json new file mode 100644 index 00000000..63658a5c --- /dev/null +++ b/desktop/onionshare/resources/countries/hr.json @@ -0,0 +1 @@ +{"AF": "Afganistan", "AX": "\u00c5landski otoci", "AL": "Albanija", "DZ": "Al\u017eir", "AS": "Ameri\u010dka Samoa", "VI": "Ameri\u010dki Djevi\u010danski otoci", "AD": "Andora", "AO": "Angola", "AI": "Angvila", "AQ": "Antarktika", "AG": "Antigva i Barbuda", "AR": "Argentina", "AM": "Armenija", "AW": "Aruba", "AU": "Australija", "AT": "Austrija", "AZ": "Azerbajd\u017ean", "BS": "Bahami", "BH": "Bahrein", "BD": "Banglade\u0161", "BB": "Barbados", "BE": "Belgija", "BZ": "Belize", "BJ": "Benin", "BM": "Bermudi", "BY": "Bjelorusija", "BW": "Bocvana", "BO": "Bolivija", "BA": "Bosna i Hercegovina", "CX": "Bo\u017ei\u0107ni otok", "BR": "Brazil", "VG": "Britanski Djevi\u010danski otoci", "IO": "Britanski Indijskooceanski teritorij", "BN": "Brunej", "BG": "Bugarska", "BF": "Burkina Faso", "BI": "Burundi", "BT": "Butan", "CY": "Cipar", "CK": "Cookovi Otoci", "ME": "Crna Gora", "CW": "Cura\u00e7ao", "TD": "\u010cad", "CZ": "\u010ce\u0161ka", "CL": "\u010cile", "DK": "Danska", "DM": "Dominika", "DO": "Dominikanska Republika", "DJ": "D\u017eibuti", "EG": "Egipat", "EC": "Ekvador", "GQ": "Ekvatorska Gvineja", "ER": "Eritreja", "EE": "Estonija", "SZ": "Esvatini", "ET": "Etiopija", "FK": "Falklandski otoci", "FO": "Farski otoci", "FJ": "Fid\u017ei", "PH": "Filipini", "FI": "Finska", "FR": "Francuska", "GF": "Francuska Gijana", "PF": "Francuska Polinezija", "TF": "Francuski ju\u017eni i antarkti\u010dki teritoriji", "GA": "Gabon", "GM": "Gambija", "GH": "Gana", "GI": "Gibraltar", "GR": "Gr\u010dka", "GD": "Grenada", "GL": "Grenland", "GE": "Gruzija", "GP": "Guadalupe", "GU": "Guam", "GG": "Guernsey", "GY": "Gvajana", "GT": "Gvatemala", "GN": "Gvineja", "GW": "Gvineja Bisau", "HT": "Haiti", "HN": "Honduras", "HR": "Hrvatska", "IN": "Indija", "ID": "Indonezija", "IQ": "Irak", "IR": "Iran", "IE": "Irska", "IS": "Island", "IT": "Italija", "IL": "Izrael", "JM": "Jamajka", "JP": "Japan", "YE": "Jemen", "JO": "Jordan", "GS": "Ju\u017ena Georgija i Ju\u017eni Sendvi\u010dki Otoci", "KR": "Ju\u017ena Koreja", "SS": "Ju\u017eni Sudan", "ZA": "Ju\u017enoafri\u010dka Republika", "KY": "Kajmanski otoci", "KH": "Kambod\u017ea", "CM": "Kamerun", "CA": "Kanada", "BQ": "Karipski otoci Nizozemske", "QA": "Katar", "KZ": "Kazahstan", "KE": "Kenija", "CN": "Kina", "KG": "Kirgistan", "KI": "Kiribati", "CC": "Kokosovi (Keelingovi) otoci", "CO": "Kolumbija", "KM": "Komori", "CG": "Kongo - Brazzaville", "CD": "Kongo - Kinshasa", "CR": "Kostarika", "CU": "Kuba", "KW": "Kuvajt", "LA": "Laos", "LV": "Latvija", "LS": "Lesoto", "LB": "Libanon", "LR": "Liberija", "LY": "Libija", "LI": "Lihten\u0161tajn", "LT": "Litva", "LU": "Luksemburg", "MG": "Madagaskar", "HU": "Ma\u0111arska", "MW": "Malavi", "MV": "Maldivi", "MY": "Malezija", "ML": "Mali", "MT": "Malta", "MA": "Maroko", "MQ": "Martinique", "MR": "Mauretanija", "MU": "Mauricijus", "YT": "Mayotte", "MX": "Meksiko", "MM": "Mjanmar (Burma)", "MD": "Moldavija", "MC": "Monako", "MN": "Mongolija", "MS": "Montserrat", "MZ": "Mozambik", "NA": "Namibija", "NR": "Nauru", "NP": "Nepal", "NE": "Niger", "NG": "Nigerija", "NI": "Nikaragva", "NU": "Niue", "NL": "Nizozemska", "NO": "Norve\u0161ka", "NC": "Nova Kaledonija", "NZ": "Novi Zeland", "DE": "Njema\u010dka", "CI": "Obala Bjelokosti", "OM": "Oman", "HM": "Otoci Heard i McDonald", "PN": "Otoci Pitcairn", "TC": "Otoci Turks i Caicos", "BV": "Otok Bouvet", "IM": "Otok Man", "NF": "Otok Norfolk", "PK": "Pakistan", "PW": "Palau", "PA": "Panama", "PG": "Papua Nova Gvineja", "PY": "Paragvaj", "PE": "Peru", "PL": "Poljska", "PR": "Portoriko", "PT": "Portugal", "HK": "PUP Hong Kong Kina", "MO": "PUP Makao Kina", "RE": "R\u00e9union", "RW": "Ruanda", "RO": "Rumunjska", "RU": "Rusija", "BL": "Saint Barth\u00e9lemy", "MF": "Saint Martin", "PM": "Saint-Pierre-et-Miquelon", "SB": "Salomonski Otoci", "SV": "Salvador", "WS": "Samoa", "SM": "San Marino", "SA": "Saudijska Arabija", "SC": "Sej\u0161eli", "SN": "Senegal", "SL": "Sijera Leone", "SG": "Singapur", "SX": "Sint Maarten", "SY": "Sirija", "US": "Sjedinjene Ameri\u010dke Dr\u017eave", "KP": "Sjeverna Koreja", "MK": "Sjeverna Makedonija", "SK": "Slova\u010dka", "SI": "Slovenija", "SO": "Somalija", "RS": "Srbija", "CF": "Srednjoafri\u010dka Republika", "SD": "Sudan", "SR": "Surinam", "SJ": "Svalbard i Jan Mayen", "SH": "Sveta Helena", "LC": "Sveta Lucija", "KN": "Sveti Kristofor i Nevis", "ST": "Sveti Toma i Princip", "VC": "Sveti Vincent i Grenadini", "ES": "\u0160panjolska", "LK": "\u0160ri Lanka", "SE": "\u0160vedska", "CH": "\u0160vicarska", "TJ": "Tad\u017eikistan", "TH": "Tajland", "TW": "Tajvan", "TZ": "Tanzanija", "TL": "Timor-Leste", "TG": "Togo", "TK": "Tokelau", "TO": "Tonga", "TT": "Trinidad i Tobago", "TN": "Tunis", "TM": "Turkmenistan", "TR": "Turska", "UG": "Uganda", "AE": "Ujedinjeni Arapski Emirati", "GB": "Ujedinjeno Kraljevstvo", "UA": "Ukrajina", "UY": "Urugvaj", "UZ": "Uzbekistan", "VU": "Vanuatu", "VA": "Vatikanski Grad", "VE": "Venezuela", "VN": "Vijetnam", "WF": "Wallis i Futuna", "ZM": "Zambija", "EH": "Zapadna Sahara", "CV": "Zelenortska Republika", "ZW": "Zimbabve"}
\ No newline at end of file diff --git a/desktop/onionshare/resources/locale/es.json b/desktop/onionshare/resources/locale/es.json index 96ba0f4a..02c1e1dd 100644 --- a/desktop/onionshare/resources/locale/es.json +++ b/desktop/onionshare/resources/locale/es.json @@ -315,7 +315,7 @@ "gui_qr_label_auth_string_title": "Clave Privada", "gui_copied_client_auth": "Clave Privada copiada en el portapapeles", "gui_copied_client_auth_title": "Clave Privada copiada", - "gui_client_auth_instructions": "Después, envía la clave privada para permitir el acceso a tu servicio de OnionShare:", + "gui_client_auth_instructions": "A continuación, envíe la clave privada para permitir el acceso a su servicio OnionShare:", "gui_chat_url_public_description": "<b>Cualquiera</b> con esta dirección de OnionShare puede <b>unirse a esta sala de chat</b> usando el <b>Navegador Tor</b>: <img src='{}' />", "gui_receive_url_public_description": "<b>Cualquiera</b> con esta dirección OnionShare puede <b>subir</b> archivos a tu ordenador usando el <b>Navegador Tor</b>: <img src='{}' />", "gui_settings_theme_dark": "Oscuro", diff --git a/desktop/onionshare/resources/locale/uk.json b/desktop/onionshare/resources/locale/uk.json index 91f8eb98..ca60c638 100644 --- a/desktop/onionshare/resources/locale/uk.json +++ b/desktop/onionshare/resources/locale/uk.json @@ -294,7 +294,7 @@ "gui_general_settings_window_title": "Загальні", "gui_autoconnect_description": "OnionShare покладається на мережу Tor, роботу якої забезпечують тисячі волонтерів по всьому світу.", "gui_autoconnect_could_not_connect_to_tor_api": "Не вдалося під'єднатися до API Tor. Переконайтеся, що ви під'єднані до Інтернету, перш ніж повторювати спробу.", - "gui_autoconnect_circumventing_censorship_starting_meek": "Запуск meek-мосту для фронтингу домену…", + "gui_autoconnect_circumventing_censorship_starting_meek": "Встановлення «лагідного» мосту для фронтингу домену…", "gui_autoconnect_failed_to_connect_to_tor": "Не вдалося під'єднатися до Tor", "gui_autoconnect_start": "Під'єднатися до Tor", "gui_autoconnect_trying_to_connect_to_tor": "З'єднання з Tor…", diff --git a/desktop/onionshare/resources/locale/zh_Hans.json b/desktop/onionshare/resources/locale/zh_Hans.json index 92d94511..f4d98974 100644 --- a/desktop/onionshare/resources/locale/zh_Hans.json +++ b/desktop/onionshare/resources/locale/zh_Hans.json @@ -347,9 +347,9 @@ "gui_autoconnect_no_bridge": "不使用网桥重试", "gui_autoconnect_try_again_without_a_bridge": "不使用网桥重试", "gui_autoconnect_circumventing_censorship_starting_circumvention": "正规避审查…", - "gui_autoconnect_circumventing_censorship_starting_meek": "正在建立用于域前置的 meek 网桥…", - "gui_autoconnect_circumventing_censorship_requesting_bridges": "正在从 Tor 审查规避 API 请求网桥…", - "gui_autoconnect_circumventing_censorship_got_bridges": "已建立网桥。正在重新连接到 Tor…", + "gui_autoconnect_circumventing_censorship_starting_meek": "正建立 meek 网桥进行域前置…", + "gui_autoconnect_circumventing_censorship_requesting_bridges": "正从 Tor Censorship Circumvention API 请求网桥…", + "gui_autoconnect_circumventing_censorship_got_bridges": "已连接网桥。 正重新连接到 Tor…", "gui_autoconnect_could_not_connect_to_tor_api": "无法连接到 Tor API。 请确保你已连接到互联网,然后再重试。", "gui_general_settings_window_title": "常规", "gui_autoconnect_circumventing_censorship": "尝试解决连接问题…" diff --git a/desktop/onionshare/settings_tab.py b/desktop/onionshare/settings_tab.py index cf2261b6..088efb6b 100644 --- a/desktop/onionshare/settings_tab.py +++ b/desktop/onionshare/settings_tab.py @@ -315,10 +315,6 @@ class SettingsTab(QtWidgets.QWidget): return settings - def settings_have_changed(self): - # Global settings have changed - self.common.log("SettingsTab", "settings_have_changed") - def _update_autoupdate_timestamp(self, autoupdate_timestamp): self.common.log("SettingsTab", "_update_autoupdate_timestamp") diff --git a/desktop/onionshare/tab/mode/__init__.py b/desktop/onionshare/tab/mode/__init__.py index e50b9859..65b05ef2 100644 --- a/desktop/onionshare/tab/mode/__init__.py +++ b/desktop/onionshare/tab/mode/__init__.py @@ -563,6 +563,9 @@ class Mode(QtWidgets.QWidget): """ self.content_widget.show() self.tor_not_connected_widget.hide() + self.primary_action.show() + if not self.tab.timer.isActive(): + self.tab.timer.start(500) def tor_connection_stopped(self): """ diff --git a/desktop/onionshare/tab/mode/chat_mode/__init__.py b/desktop/onionshare/tab/mode/chat_mode/__init__.py index af2cab81..61062f0f 100644 --- a/desktop/onionshare/tab/mode/chat_mode/__init__.py +++ b/desktop/onionshare/tab/mode/chat_mode/__init__.py @@ -149,11 +149,5 @@ class ChatMode(Mode): """ self.primary_action.hide() - def on_reload_settings(self): - """ - We should be ok to re-enable the 'Start Receive Mode' button now. - """ - self.primary_action.show() - def update_primary_action(self): self.common.log("ChatMode", "update_primary_action") diff --git a/desktop/onionshare/tab/mode/receive_mode/__init__.py b/desktop/onionshare/tab/mode/receive_mode/__init__.py index 55640c33..6c8dee10 100644 --- a/desktop/onionshare/tab/mode/receive_mode/__init__.py +++ b/desktop/onionshare/tab/mode/receive_mode/__init__.py @@ -409,12 +409,6 @@ class ReceiveMode(Mode): self.history.in_progress_count -= 1 self.history.update_in_progress() - def on_reload_settings(self): - """ - We should be ok to re-enable the 'Start Receive Mode' button now. - """ - self.primary_action.show() - def reset_info_counters(self): """ Set the info counters back to zero. diff --git a/desktop/onionshare/tab/mode/share_mode/__init__.py b/desktop/onionshare/tab/mode/share_mode/__init__.py index 2617176d..caa29e69 100644 --- a/desktop/onionshare/tab/mode/share_mode/__init__.py +++ b/desktop/onionshare/tab/mode/share_mode/__init__.py @@ -362,16 +362,6 @@ class ShareMode(Mode): strings._("systray_share_canceled_message"), ) - def on_reload_settings(self): - """ - If there were some files listed for sharing, we should be ok to re-enable - the 'Start Sharing' button now. - """ - if self.server_status.file_selection.get_num_files() > 0: - self.primary_action.show() - self.info_label.show() - self.remove_all_button.show() - def update_primary_action(self): self.common.log("ShareMode", "update_primary_action") diff --git a/desktop/onionshare/tab/mode/website_mode/__init__.py b/desktop/onionshare/tab/mode/website_mode/__init__.py index a732c390..df031bad 100644 --- a/desktop/onionshare/tab/mode/website_mode/__init__.py +++ b/desktop/onionshare/tab/mode/website_mode/__init__.py @@ -317,16 +317,6 @@ class WebsiteMode(Mode): """ self.primary_action.hide() - def on_reload_settings(self): - """ - If there were some files listed for sharing, we should be ok to re-enable - the 'Start Sharing' button now. - """ - if self.server_status.file_selection.get_num_files() > 0: - self.primary_action.show() - self.info_label.show() - self.remove_all_button.show() - def update_primary_action(self): self.common.log("WebsiteMode", "update_primary_action") diff --git a/desktop/onionshare/tab/tab.py b/desktop/onionshare/tab/tab.py index 5e2d4af8..680e5edb 100644 --- a/desktop/onionshare/tab/tab.py +++ b/desktop/onionshare/tab/tab.py @@ -630,20 +630,6 @@ class Tab(QtWidgets.QWidget): else: return None - def settings_have_changed(self): - # Global settings have changed - self.common.log("Tab", "settings_have_changed") - - # We might've stopped the main requests timer if a Tor connection failed. If we've reloaded - # settings, we probably succeeded in obtaining a new connection. If so, restart the timer. - if not self.common.gui.local_only: - if self.common.gui.onion.is_authenticated(): - mode = self.get_mode() - if mode: - if not self.timer.isActive(): - self.timer.start(500) - mode.on_reload_settings() - def close_tab(self): self.common.log("Tab", "close_tab") if self.mode is None: diff --git a/desktop/onionshare/tor_settings_tab.py b/desktop/onionshare/tor_settings_tab.py index 0e72c3b8..a685712f 100644 --- a/desktop/onionshare/tor_settings_tab.py +++ b/desktop/onionshare/tor_settings_tab.py @@ -903,7 +903,3 @@ class TorSettingsTab(QtWidgets.QWidget): # Wait 1ms for the event loop to finish, then quit QtCore.QTimer.singleShot(1, self.common.gui.qtapp.quit) - - def settings_have_changed(self): - # Global settings have changed - self.common.log("TorSettingsTab", "settings_have_changed") diff --git a/desktop/org.onionshare.OnionShare.appdata.xml b/desktop/org.onionshare.OnionShare.appdata.xml index 7d7f714a..3134f74f 100644 --- a/desktop/org.onionshare.OnionShare.appdata.xml +++ b/desktop/org.onionshare.OnionShare.appdata.xml @@ -13,7 +13,7 @@ <launchable type="desktop-id">org.onionshare.OnionShare.desktop</launchable> <screenshots> <screenshot type="default"> - <image>https://raw.githubusercontent.com/onionshare/onionshare/develop/docs/source/_static/screenshots/tabs.png</image> + <image>https://raw.githubusercontent.com/onionshare/onionshare/main/docs/source/_static/screenshots/tabs.png</image> <caption>Types of services that OnionShare supports</caption> </screenshot> </screenshots> @@ -24,6 +24,6 @@ <update_contact>micah@micahflee.com</update_contact> <content_rating type="oars-1.1" /> <releases> - <release type="development" date="2022-07-04" version="2.6" /> + <release type="development" date="2022-10-18" version="2.6.1" /> </releases> </component> diff --git a/desktop/poetry.lock b/desktop/poetry.lock index 9c6b4847..29d6e1ea 100644 --- a/desktop/poetry.lock +++ b/desktop/poetry.lock @@ -1,12 +1,4 @@ [[package]] -name = "atomicwrites" -version = "1.4.1" -description = "Atomic file writes." -category = "dev" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" - -[[package]] name = "attrs" version = "22.1.0" description = "Classes Without Boilerplate" @@ -22,23 +14,22 @@ tests_no_zope = ["cloudpickle", "coverage[toml] (>=5.0.2)", "hypothesis", "mypy [[package]] name = "bidict" -version = "0.21.4" +version = "0.22.0" description = "The bidirectional mapping library for Python." category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [[package]] name = "black" -version = "22.8.0" +version = "22.10.0" description = "The uncompromising code formatter." category = "dev" optional = false -python-versions = ">=3.6.2" +python-versions = ">=3.7" [package.dependencies] click = ">=8.0.0" -dataclasses = {version = ">=0.6", markers = "python_version < \"3.7\""} mypy-extensions = ">=0.4.3" pathspec = ">=0.9.0" platformdirs = ">=2" @@ -54,7 +45,7 @@ uvloop = ["uvloop (>=0.15.2)"] [[package]] name = "certifi" -version = "2022.9.24" +version = "2022.12.7" description = "Python package for providing Mozilla's CA Bundle." category = "main" optional = false @@ -73,22 +64,22 @@ pycparser = "*" [[package]] name = "charset-normalizer" -version = "2.0.12" +version = "2.1.1" description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." category = "main" optional = false -python-versions = ">=3.5.0" +python-versions = ">=3.6.0" [package.extras] unicode_backport = ["unicodedata2"] [[package]] name = "click" -version = "8.0.4" +version = "8.1.3" description = "Composable command line interface toolkit" category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [package.dependencies] colorama = {version = "*", markers = "platform_system == \"Windows\""} @@ -106,7 +97,7 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" name = "cx-Freeze" version = "6.11.1" description = "Create standalone executables from Python scripts" -category = "main" +category = "dev" optional = false python-versions = ">=3.6" @@ -127,19 +118,11 @@ test = ["nose (==1.3.7)", "pygments (>=2.11.2)", "pytest (>=7.0.1)", "pytest-cov name = "cx-Logging" version = "3.0" description = "Python and C interfaces for logging" -category = "main" +category = "dev" optional = false python-versions = "*" [[package]] -name = "dataclasses" -version = "0.8" -description = "A backport of the dataclasses module for Python 3.6" -category = "main" -optional = false -python-versions = ">=3.6, <3.7" - -[[package]] name = "dnspython" version = "2.2.1" description = "DNS toolkit" @@ -169,6 +152,17 @@ greenlet = ">=0.3" six = ">=1.10.0" [[package]] +name = "exceptiongroup" +version = "1.0.4" +description = "Backport of PEP 654 (exception groups)" +category = "dev" +optional = false +python-versions = ">=3.7" + +[package.extras] +test = ["pytest (>=6)"] + +[[package]] name = "Flask" version = "2.0.3" description = "A simple framework for building complex web applications." @@ -252,20 +246,20 @@ python-versions = ">=3.5" [[package]] name = "importlib-metadata" -version = "4.8.3" +version = "5.0.0" description = "Read metadata from Python packages" category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [package.dependencies] typing-extensions = {version = ">=3.6.4", markers = "python_version < \"3.8\""} zipp = ">=0.5" [package.extras] -docs = ["jaraco.packaging (>=8.2)", "rst.linker (>=1.9)", "sphinx"] +docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)"] perf = ["ipython"] -testing = ["flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pep517", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.0.1)", "pytest-flake8", "pytest-mypy", "pytest-perf (>=0.9.2)"] +testing = ["flake8 (<5)", "flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)", "pytest-perf (>=0.9.2)"] [[package]] name = "iniconfig" @@ -277,19 +271,19 @@ python-versions = "*" [[package]] name = "itsdangerous" -version = "2.0.1" +version = "2.1.2" description = "Safely pass data to untrusted environments and back." category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [[package]] name = "Jinja2" -version = "3.0.3" +version = "3.1.2" description = "A very fast and expressive template engine." category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [package.dependencies] MarkupSafe = ">=2.0" @@ -299,19 +293,19 @@ i18n = ["Babel (>=2.7)"] [[package]] name = "lief" -version = "0.12.1" +version = "0.12.2" description = "Library to instrument executable formats" -category = "main" +category = "dev" optional = false python-versions = ">=3.6" [[package]] name = "MarkupSafe" -version = "2.0.1" +version = "2.1.1" description = "Safely add untrusted strings to HTML/XML markup." category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [[package]] name = "mypy-extensions" @@ -323,11 +317,11 @@ python-versions = "*" [[package]] name = "onionshare-cli" -version = "2.6" +version = "2.6.1" description = "OnionShare lets you securely and anonymously send and receive files. It works by starting a web server, making it accessible as a Tor onion service, and generating an unguessable web address so others can download files from you, or upload files to you. It does _not_ require setting up a separate server or using a third party file-sharing service." category = "main" optional = false -python-versions = "^3.6" +python-versions = "^3.7" develop = true [package.dependencies] @@ -345,6 +339,7 @@ setuptools = "*" stem = "1.8.1" unidecode = "*" urllib3 = "*" +werkzeug = "~2.0.3" [package.source] type = "directory" @@ -354,7 +349,7 @@ url = "../cli" name = "packaging" version = "21.3" description = "Core utilities for Python packages" -category = "main" +category = "dev" optional = false python-versions = ">=3.6" @@ -365,7 +360,7 @@ pyparsing = ">=2.0.2,<3.0.5 || >3.0.5" name = "patchelf" version = "0.15.0.0" description = "A small utility to modify the dynamic linker and RPATH of ELF executables." -category = "main" +category = "dev" optional = false python-versions = "*" @@ -374,22 +369,22 @@ test = ["importlib-metadata", "pytest"] [[package]] name = "pathspec" -version = "0.9.0" +version = "0.10.1" description = "Utility library for gitignore style pattern matching of file paths." category = "dev" optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" +python-versions = ">=3.7" [[package]] name = "platformdirs" -version = "2.4.0" +version = "2.5.2" description = "A small Python module for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." category = "dev" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [package.extras] -docs = ["Sphinx (>=4)", "furo (>=2021.7.5b38)", "proselint (>=0.10.2)", "sphinx-autodoc-typehints (>=1.12)"] +docs = ["furo (>=2021.7.5b38)", "proselint (>=0.10.2)", "sphinx (>=4)", "sphinx-autodoc-typehints (>=1.12)"] test = ["appdirs (==1.4.4)", "pytest (>=6)", "pytest-cov (>=2.7)", "pytest-mock (>=3.6)"] [[package]] @@ -419,14 +414,6 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" test = ["enum34", "ipaddress", "mock", "pywin32", "wmi"] [[package]] -name = "py" -version = "1.11.0" -description = "library with cross-python path, ini-parsing, io, code, log facilities" -category = "dev" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" - -[[package]] name = "pycparser" version = "2.21" description = "C parser in Python" @@ -451,11 +438,11 @@ tests = ["hypothesis (>=3.27.0)", "pytest (>=3.2.1,!=3.3.0)"] [[package]] name = "pyparsing" -version = "3.0.7" -description = "Python parsing module" -category = "main" +version = "3.0.9" +description = "pyparsing module - Classes and methods to define and execute parsing grammars" +category = "dev" optional = false -python-versions = ">=3.6" +python-versions = ">=3.6.8" [package.extras] diagrams = ["jinja2", "railroad-diagrams"] @@ -481,22 +468,21 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" [[package]] name = "pytest" -version = "7.0.1" +version = "7.2.0" description = "pytest: simple powerful testing with Python" category = "dev" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [package.dependencies] -atomicwrites = {version = ">=1.0", markers = "sys_platform == \"win32\""} attrs = ">=19.2.0" colorama = {version = "*", markers = "sys_platform == \"win32\""} +exceptiongroup = {version = ">=1.0.0rc8", markers = "python_version < \"3.11\""} importlib-metadata = {version = ">=0.12", markers = "python_version < \"3.8\""} iniconfig = "*" packaging = "*" pluggy = ">=0.12,<2.0" -py = ">=1.8.2" -tomli = ">=1.0.0" +tomli = {version = ">=1.0.0", markers = "python_version < \"3.11\""} [package.extras] testing = ["argcomplete", "hypothesis (>=3.56)", "mock", "nose", "pygments (>=2.7.2)", "requests", "xmlschema"] @@ -514,11 +500,11 @@ pytest = ">=5.0" [[package]] name = "pytest-qt" -version = "4.0.2" +version = "4.2.0" description = "pytest support for PyQt and PySide applications" category = "dev" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [package.dependencies] pytest = ">=3.0.0" @@ -575,34 +561,35 @@ test = ["pytest", "pytest-cov"] [[package]] name = "requests" -version = "2.27.1" +version = "2.28.1" description = "Python HTTP for Humans." category = "main" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" +python-versions = ">=3.7, <4" [package.dependencies] certifi = ">=2017.4.17" -charset-normalizer = {version = ">=2.0.0,<2.1.0", markers = "python_version >= \"3\""} -idna = {version = ">=2.5,<4", markers = "python_version >= \"3\""} +charset-normalizer = ">=2,<3" +idna = ">=2.5,<4" PySocks = {version = ">=1.5.6,<1.5.7 || >1.5.7", optional = true, markers = "extra == \"socks\""} urllib3 = ">=1.21.1,<1.27" [package.extras] -socks = ["PySocks (>=1.5.6,!=1.5.7)", "win-inet-pton"] -use_chardet_on_py3 = ["chardet (>=3.0.2,<5)"] +socks = ["PySocks (>=1.5.6,!=1.5.7)"] +use_chardet_on_py3 = ["chardet (>=3.0.2,<6)"] [[package]] name = "setuptools" -version = "59.6.0" +version = "60.10.0" description = "Easily download, build, install, upgrade, and uninstall Python packages" category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [package.extras] -docs = ["furo", "jaraco.packaging (>=8.2)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx", "sphinx-inline-tabs", "sphinxcontrib-towncrier"] -testing = ["flake8-2020", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "mock", "paver", "pip (>=19.1)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.0.1)", "pytest-flake8", "pytest-mypy", "pytest-virtualenv (>=1.2.7)", "pytest-xdist", "sphinx", "virtualenv (>=13.0.0)", "wheel"] +docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx", "sphinx-favicon", "sphinx-inline-tabs", "sphinxcontrib-towncrier"] +testing = ["build[virtualenv]", "filelock (>=3.4.0)", "flake8-2020", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "mock", "pip (>=19.1)", "pip-run (>=8.8)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.0.1)", "pytest-flake8", "pytest-mypy (>=0.9.1)", "pytest-perf", "pytest-xdist", "virtualenv (>=13.0.0)", "wheel"] +testing-integration = ["build[virtualenv]", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"] [[package]] name = "shiboken2" @@ -630,11 +617,11 @@ python-versions = "*" [[package]] name = "tomli" -version = "1.2.3" +version = "2.0.1" description = "A lil' TOML parser" category = "dev" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [[package]] name = "typed-ast" @@ -646,11 +633,11 @@ python-versions = ">=3.6" [[package]] name = "typing-extensions" -version = "4.1.1" -description = "Backported and Experimental Type Hints for Python 3.6+" +version = "4.4.0" +description = "Backported and Experimental Type Hints for Python 3.7+" category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [[package]] name = "Unidecode" @@ -681,23 +668,20 @@ category = "main" optional = false python-versions = ">=3.6" -[package.dependencies] -dataclasses = {version = "*", markers = "python_version < \"3.7\""} - [package.extras] watchdog = ["watchdog"] [[package]] name = "zipp" -version = "3.6.0" +version = "3.8.1" description = "Backport of pathlib-compatible object wrapper for zip files" category = "main" optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" [package.extras] -docs = ["jaraco.packaging (>=8.2)", "rst.linker (>=1.9)", "sphinx"] -testing = ["func-timeout", "jaraco.itertools", "pytest (>=4.6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.0.1)", "pytest-flake8", "pytest-mypy"] +docs = ["jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx"] +testing = ["func-timeout", "jaraco.itertools", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)"] [[package]] name = "zope.event" @@ -732,49 +716,35 @@ testing = ["coverage (>=5.0.3)", "zope.event", "zope.testing"] [metadata] lock-version = "1.1" -python-versions = ">=3.6.2,<3.11" -content-hash = "80aa2819ec2d5e4dd5acb42f178c196776e05fb7efa5d1b99e5c2626c2208cd9" +python-versions = ">=3.7,<3.11" +content-hash = "074ec9d83cff69188cad191ec42d1ac60a4f3a12beda367e4bb0e95f4d06fcb1" [metadata.files] -atomicwrites = [ - {file = "atomicwrites-1.4.1.tar.gz", hash = "sha256:81b2c9071a49367a7f770170e5eec8cb66567cfbbc8c73d20ce5ca4a8d71cf11"}, -] attrs = [ {file = "attrs-22.1.0-py2.py3-none-any.whl", hash = "sha256:86efa402f67bf2df34f51a335487cf46b1ec130d02b8d39fd248abfd30da551c"}, {file = "attrs-22.1.0.tar.gz", hash = "sha256:29adc2665447e5191d0e7c568fde78b21f9672d344281d0c6e1ab085429b22b6"}, ] bidict = [ - {file = "bidict-0.21.4-py3-none-any.whl", hash = "sha256:3ac67daa353ecf853a1df9d3e924f005e729227a60a8dbada31a4c31aba7f654"}, - {file = "bidict-0.21.4.tar.gz", hash = "sha256:42c84ffbe6f8de898af6073b4be9ea7ccedcd78d3474aa844c54e49d5a079f6f"}, + {file = "bidict-0.22.0-py3-none-any.whl", hash = "sha256:415126d23a0c81e1a8c584a8fb1f6905ea090c772571803aeee0a2242e8e7ba0"}, + {file = "bidict-0.22.0.tar.gz", hash = "sha256:5c826b3e15e97cc6e615de295756847c282a79b79c5430d3bfc909b1ac9f5bd8"}, ] black = [ - {file = "black-22.8.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:ce957f1d6b78a8a231b18e0dd2d94a33d2ba738cd88a7fe64f53f659eea49fdd"}, - {file = "black-22.8.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5107ea36b2b61917956d018bd25129baf9ad1125e39324a9b18248d362156a27"}, - {file = "black-22.8.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e8166b7bfe5dcb56d325385bd1d1e0f635f24aae14b3ae437102dedc0c186747"}, - {file = "black-22.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd82842bb272297503cbec1a2600b6bfb338dae017186f8f215c8958f8acf869"}, - {file = "black-22.8.0-cp310-cp310-win_amd64.whl", hash = "sha256:d839150f61d09e7217f52917259831fe2b689f5c8e5e32611736351b89bb2a90"}, - {file = "black-22.8.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:a05da0430bd5ced89176db098567973be52ce175a55677436a271102d7eaa3fe"}, - {file = "black-22.8.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4a098a69a02596e1f2a58a2a1c8d5a05d5a74461af552b371e82f9fa4ada8342"}, - {file = "black-22.8.0-cp36-cp36m-win_amd64.whl", hash = "sha256:5594efbdc35426e35a7defa1ea1a1cb97c7dbd34c0e49af7fb593a36bd45edab"}, - {file = "black-22.8.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:a983526af1bea1e4cf6768e649990f28ee4f4137266921c2c3cee8116ae42ec3"}, - {file = "black-22.8.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3b2c25f8dea5e8444bdc6788a2f543e1fb01494e144480bc17f806178378005e"}, - {file = "black-22.8.0-cp37-cp37m-win_amd64.whl", hash = "sha256:78dd85caaab7c3153054756b9fe8c611efa63d9e7aecfa33e533060cb14b6d16"}, - {file = "black-22.8.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:cea1b2542d4e2c02c332e83150e41e3ca80dc0fb8de20df3c5e98e242156222c"}, - {file = "black-22.8.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:5b879eb439094751185d1cfdca43023bc6786bd3c60372462b6f051efa6281a5"}, - {file = "black-22.8.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:0a12e4e1353819af41df998b02c6742643cfef58282915f781d0e4dd7a200411"}, - {file = "black-22.8.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c3a73f66b6d5ba7288cd5d6dad9b4c9b43f4e8a4b789a94bf5abfb878c663eb3"}, - {file = "black-22.8.0-cp38-cp38-win_amd64.whl", hash = "sha256:e981e20ec152dfb3e77418fb616077937378b322d7b26aa1ff87717fb18b4875"}, - {file = "black-22.8.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:8ce13ffed7e66dda0da3e0b2eb1bdfc83f5812f66e09aca2b0978593ed636b6c"}, - {file = "black-22.8.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:32a4b17f644fc288c6ee2bafdf5e3b045f4eff84693ac069d87b1a347d861497"}, - {file = "black-22.8.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:0ad827325a3a634bae88ae7747db1a395d5ee02cf05d9aa7a9bd77dfb10e940c"}, - {file = "black-22.8.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:53198e28a1fb865e9fe97f88220da2e44df6da82b18833b588b1883b16bb5d41"}, - {file = "black-22.8.0-cp39-cp39-win_amd64.whl", hash = "sha256:bc4d4123830a2d190e9cc42a2e43570f82ace35c3aeb26a512a2102bce5af7ec"}, - {file = "black-22.8.0-py3-none-any.whl", hash = "sha256:d2c21d439b2baf7aa80d6dd4e3659259be64c6f49dfd0f32091063db0e006db4"}, - {file = "black-22.8.0.tar.gz", hash = "sha256:792f7eb540ba9a17e8656538701d3eb1afcb134e3b45b71f20b25c77a8db7e6e"}, + {file = "black-22.10.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:14ff67aec0a47c424bc99b71005202045dc09270da44a27848d534600ac64fc7"}, + {file = "black-22.10.0-cp310-cp310-win_amd64.whl", hash = "sha256:819dc789f4498ecc91438a7de64427c73b45035e2e3680c92e18795a839ebb66"}, + {file = "black-22.10.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b8b49776299fece66bffaafe357d929ca9451450f5466e997a7285ab0fe28e3b"}, + {file = "black-22.10.0-cp311-cp311-win_amd64.whl", hash = "sha256:21199526696b8f09c3997e2b4db8d0b108d801a348414264d2eb8eb2532e540d"}, + {file = "black-22.10.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1e464456d24e23d11fced2bc8c47ef66d471f845c7b7a42f3bd77bf3d1789650"}, + {file = "black-22.10.0-cp37-cp37m-win_amd64.whl", hash = "sha256:9311e99228ae10023300ecac05be5a296f60d2fd10fff31cf5c1fa4ca4b1988d"}, + {file = "black-22.10.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:915ace4ff03fdfff953962fa672d44be269deb2eaf88499a0f8805221bc68c87"}, + {file = "black-22.10.0-cp38-cp38-win_amd64.whl", hash = "sha256:444ebfb4e441254e87bad00c661fe32df9969b2bf224373a448d8aca2132b395"}, + {file = "black-22.10.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:72ef3925f30e12a184889aac03d77d031056860ccae8a1e519f6cbb742736383"}, + {file = "black-22.10.0-cp39-cp39-win_amd64.whl", hash = "sha256:432247333090c8c5366e69627ccb363bc58514ae3e63f7fc75c54b1ea80fa7de"}, + {file = "black-22.10.0-py3-none-any.whl", hash = "sha256:c957b2b4ea88587b46cf49d1dc17681c1e672864fd7af32fc1e9664d572b3458"}, + {file = "black-22.10.0.tar.gz", hash = "sha256:f513588da599943e0cde4e32cc9879e825d58720d6557062d1098c5ad80080e1"}, ] certifi = [ - {file = "certifi-2022.9.24-py3-none-any.whl", hash = "sha256:90c1a32f1d68f940488354e36370f6cca89f0f106db09518524c88d6ed83f382"}, - {file = "certifi-2022.9.24.tar.gz", hash = "sha256:0d9c601124e5a6ba9712dbc60d9c53c21e34f5f641fe83002317394311bdce14"}, + {file = "certifi-2022.12.7-py3-none-any.whl", hash = "sha256:4ad3232f5e926d6718ec31cfc1fcadfde020920e278684144551c91769c7bc18"}, + {file = "certifi-2022.12.7.tar.gz", hash = "sha256:35824b4c3a97115964b408844d64aa14db1cc518f6562e8d7261699d1350a9e3"}, ] cffi = [ {file = "cffi-1.15.1-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:a66d3508133af6e8548451b25058d5812812ec3798c886bf38ed24a98216fab2"}, @@ -843,12 +813,12 @@ cffi = [ {file = "cffi-1.15.1.tar.gz", hash = "sha256:d400bfb9a37b1351253cb402671cea7e89bdecc294e8016a707f6d1d8ac934f9"}, ] charset-normalizer = [ - {file = "charset-normalizer-2.0.12.tar.gz", hash = "sha256:2857e29ff0d34db842cd7ca3230549d1a697f96ee6d3fb071cfa6c7393832597"}, - {file = "charset_normalizer-2.0.12-py3-none-any.whl", hash = "sha256:6881edbebdb17b39b4eaaa821b438bf6eddffb4468cf344f09f89def34a8b1df"}, + {file = "charset-normalizer-2.1.1.tar.gz", hash = "sha256:5a3d016c7c547f69d6f81fb0db9449ce888b418b5b9952cc5e6e66843e9dd845"}, + {file = "charset_normalizer-2.1.1-py3-none-any.whl", hash = "sha256:83e9a75d1911279afd89352c68b45348559d1fc0506b054b346651b5e7fee29f"}, ] click = [ - {file = "click-8.0.4-py3-none-any.whl", hash = "sha256:6a7a62563bbfabfda3a38f3023a1db4a35978c0abd76f6c9605ecd6554d6d9b1"}, - {file = "click-8.0.4.tar.gz", hash = "sha256:8458d7b1287c5fb128c90e23381cf99dcde74beaf6c7ff6384ce84d6fe090adb"}, + {file = "click-8.1.3-py3-none-any.whl", hash = "sha256:bb4d8133cb15a609f44e8213d9b391b0809795062913b383c62be0ee95b1db48"}, + {file = "click-8.1.3.tar.gz", hash = "sha256:7682dc8afb30297001674575ea00d1814d808d6a36af415a82bd481d37ba7b8e"}, ] colorama = [ {file = "colorama-0.4.5-py2.py3-none-any.whl", hash = "sha256:854bf444933e37f5824ae7bfc1e98d5bce2ebe4160d46b5edf346a89358e99da"}, @@ -896,10 +866,6 @@ cx-Logging = [ {file = "cx_Logging-3.0-cp39-cp39-win_amd64.whl", hash = "sha256:302e9c4f65a936c288a4fa59a90e7e142d9ef994aa29676731acafdcccdbb3f5"}, {file = "cx_Logging-3.0.tar.gz", hash = "sha256:ba8a7465facf7b98d8f494030fb481a2e8aeee29dc191e10383bb54ed42bdb34"}, ] -dataclasses = [ - {file = "dataclasses-0.8-py3-none-any.whl", hash = "sha256:0201d89fa866f68c8ebd9d08ee6ff50c0b255f8ec63a71c16fda7af82bb887bf"}, - {file = "dataclasses-0.8.tar.gz", hash = "sha256:8479067f342acf957dc82ec415d355ab5edb7e7646b90dc6e2fd1d96ad084c97"}, -] dnspython = [ {file = "dnspython-2.2.1-py3-none-any.whl", hash = "sha256:a851e51367fb93e9e1361732c1d60dab63eff98712e503ea7d92e6eccb109b4f"}, {file = "dnspython-2.2.1.tar.gz", hash = "sha256:0f7569a4a6ff151958b64304071d370daa3243d15941a7beedf0c9fe5105603e"}, @@ -908,6 +874,10 @@ eventlet = [ {file = "eventlet-0.33.1-py2.py3-none-any.whl", hash = "sha256:a085922698e5029f820cf311a648ac324d73cec0e4792877609d978a4b5bbf31"}, {file = "eventlet-0.33.1.tar.gz", hash = "sha256:afbe17f06a58491e9aebd7a4a03e70b0b63fd4cf76d8307bae07f280479b1515"}, ] +exceptiongroup = [ + {file = "exceptiongroup-1.0.4-py3-none-any.whl", hash = "sha256:542adf9dea4055530d6e1279602fa5cb11dab2395fa650b8674eaec35fc4a828"}, + {file = "exceptiongroup-1.0.4.tar.gz", hash = "sha256:bd14967b79cd9bdb54d97323216f8fdf533e278df937aa2a90089e7d6e06e5ec"}, +] Flask = [ {file = "Flask-2.0.3-py3-none-any.whl", hash = "sha256:59da8a3170004800a2837844bfa84d49b022550616070f7cb1a659682b2e7c9f"}, {file = "Flask-2.0.3.tar.gz", hash = "sha256:e1120c228ca2f553b470df4a5fa927ab66258467526069981b3eb0a91902687d"}, @@ -1016,117 +986,88 @@ idna = [ {file = "idna-3.4.tar.gz", hash = "sha256:814f528e8dead7d329833b91c5faa87d60bf71824cd12a7530b5526063d02cb4"}, ] importlib-metadata = [ - {file = "importlib_metadata-4.8.3-py3-none-any.whl", hash = "sha256:65a9576a5b2d58ca44d133c42a241905cc45e34d2c06fd5ba2bafa221e5d7b5e"}, - {file = "importlib_metadata-4.8.3.tar.gz", hash = "sha256:766abffff765960fcc18003801f7044eb6755ffae4521c8e8ce8e83b9c9b0668"}, + {file = "importlib_metadata-5.0.0-py3-none-any.whl", hash = "sha256:ddb0e35065e8938f867ed4928d0ae5bf2a53b7773871bfe6bcc7e4fcdc7dea43"}, + {file = "importlib_metadata-5.0.0.tar.gz", hash = "sha256:da31db32b304314d044d3c12c79bd59e307889b287ad12ff387b3500835fc2ab"}, ] iniconfig = [ {file = "iniconfig-1.1.1-py2.py3-none-any.whl", hash = "sha256:011e24c64b7f47f6ebd835bb12a743f2fbe9a26d4cecaa7f53bc4f35ee9da8b3"}, {file = "iniconfig-1.1.1.tar.gz", hash = "sha256:bc3af051d7d14b2ee5ef9969666def0cd1a000e121eaea580d4a313df4b37f32"}, ] itsdangerous = [ - {file = "itsdangerous-2.0.1-py3-none-any.whl", hash = "sha256:5174094b9637652bdb841a3029700391451bd092ba3db90600dea710ba28e97c"}, - {file = "itsdangerous-2.0.1.tar.gz", hash = "sha256:9e724d68fc22902a1435351f84c3fb8623f303fffcc566a4cb952df8c572cff0"}, + {file = "itsdangerous-2.1.2-py3-none-any.whl", hash = "sha256:2c2349112351b88699d8d4b6b075022c0808887cb7ad10069318a8b0bc88db44"}, + {file = "itsdangerous-2.1.2.tar.gz", hash = "sha256:5dbbc68b317e5e42f327f9021763545dc3fc3bfe22e6deb96aaf1fc38874156a"}, ] Jinja2 = [ - {file = "Jinja2-3.0.3-py3-none-any.whl", hash = "sha256:077ce6014f7b40d03b47d1f1ca4b0fc8328a692bd284016f806ed0eaca390ad8"}, - {file = "Jinja2-3.0.3.tar.gz", hash = "sha256:611bb273cd68f3b993fabdc4064fc858c5b47a973cb5aa7999ec1ba405c87cd7"}, + {file = "Jinja2-3.1.2-py3-none-any.whl", hash = "sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61"}, + {file = "Jinja2-3.1.2.tar.gz", hash = "sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852"}, ] lief = [ - {file = "lief-0.12.1-cp310-cp310-macosx_10_14_x86_64.whl", hash = "sha256:4fbbc9d520de87ac22210c62d22a9b088e5460f9a028741311e6f68ef8877ddd"}, - {file = "lief-0.12.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:443e4494df448ea1a021976258c7a6aca27d81b0612783fa3a84fab196fb9fcb"}, - {file = "lief-0.12.1-cp310-cp310-win32.whl", hash = "sha256:1c4019dddf03a5185462fb5ea04327cee08d40f46777b02f0773c7dc294552ea"}, - {file = "lief-0.12.1-cp310-cp310-win_amd64.whl", hash = "sha256:d7e09968f99ddf1e3983d3bcc16c62d1b6635a345fee8d8139f82b31bad457d6"}, - {file = "lief-0.12.1-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:9fa6269ec4fa3f874b807fbba3c48a46af30df2497723f6966080e3eb630cb26"}, - {file = "lief-0.12.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a78b05cac5fa491e01e1819573bbbbcaea0a4229f4aa3a2edb231b5695ddaf2d"}, - {file = "lief-0.12.1-cp36-cp36m-win32.whl", hash = "sha256:f1292bff96579c18e01e20b7a14043052379fe6e9a476c1d6d88aca43e5f9ac7"}, - {file = "lief-0.12.1-cp36-cp36m-win_amd64.whl", hash = "sha256:dab63876113bd573d64ce043f50153f6e2810e5e78256397aa0fe1fedf82ab84"}, - {file = "lief-0.12.1-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:5771f5226b62c885a7aa30c1b98040d39229a1dab889d03155e5538e57d0054b"}, - {file = "lief-0.12.1-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:8ec307a762505076a6d31566225a231c44ec7063c0e7d751ac4654c674454c47"}, - {file = "lief-0.12.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a755f6088d3b2041e4402adf917ac87e5ad9d1c5278973f48a29a5631fe393eb"}, - {file = "lief-0.12.1-cp37-cp37m-win32.whl", hash = "sha256:5d746f7eb6d3bf35a0230c7184aaaf434cb1ea89d7e7c8e8fe14a49cf2bb17a0"}, - {file = "lief-0.12.1-cp37-cp37m-win_amd64.whl", hash = "sha256:2d3ab7212da696bcbe5ca9dd78ceaa32dfb8a0e85e18001793b4441ef4624561"}, - {file = "lief-0.12.1-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:4360b0acd525ba77777cc38f0e5128c90c93cc4e91ab566ef3aa45b7f8a8c57e"}, - {file = "lief-0.12.1-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:5e82e466d36cbabb28cc1a787b554d2feae5ab55c39cab58ef64fb6513bad92a"}, - {file = "lief-0.12.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:efa0022a3bf70ef46335639e61b946cc2d9cf012d60e263c215e3e64b1ce38b4"}, - {file = "lief-0.12.1-cp38-cp38-win32.whl", hash = "sha256:d29f91d9f64f67d3ada5b7e0e48ab084d825fb4601d32d9fecdd2bdf23cdad23"}, - {file = "lief-0.12.1-cp38-cp38-win_amd64.whl", hash = "sha256:7dea6b3f17d362f93165379c46dadb012c73b1f751c8ceac256e5f43842cd86d"}, - {file = "lief-0.12.1-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:44012da4c32c670a97bb8a055a4ff16168cfaa757d03986f319aa3329a43e343"}, - {file = "lief-0.12.1-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:e1d23997b0a71d34e766ff183be07854c6f698fd3d6aa44bf30b6b7f4f77ef55"}, - {file = "lief-0.12.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b845eca79c772041efb38b50cfaf951e24bc047ec462450b7e54e75b7e2bee0d"}, - {file = "lief-0.12.1-cp39-cp39-win32.whl", hash = "sha256:0df84ac2df20b14db12e69442d39b0e8cd89428ba3b131995e0570bcd3725460"}, - {file = "lief-0.12.1-cp39-cp39-win_amd64.whl", hash = "sha256:960a2da9f28c8d5dba753bb9ab77e26b3c6ff9b9658918be95650ceb8ee91e68"}, - {file = "lief-0.12.1.zip", hash = "sha256:4ff4ccfae2e1ee4ccba2b5556027dbb56282b8a973c5835c5b597e8b7b664416"}, + {file = "lief-0.12.2-cp310-cp310-macosx_10_14_x86_64.whl", hash = "sha256:cdadaab4b9ec756e1d1f0324acd6e280ae849d251e66f836da455df592deaf9e"}, + {file = "lief-0.12.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8e97f109cf4a24ad37d8227b52cf878a58723abe7d88f0f3d5867c02d8ead49b"}, + {file = "lief-0.12.2-cp310-cp310-win32.whl", hash = "sha256:a69a330afbb683518ab85197683c2f7e2a1dda33973043d81b0871a024d2e9da"}, + {file = "lief-0.12.2-cp310-cp310-win_amd64.whl", hash = "sha256:a6673f0d604abcbadc7fd914246c7cbb02b207ee1660786421679cceb0f270fe"}, + {file = "lief-0.12.2-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:41e6b569d38bc49bbfd418085f686cf4c0f374ba30e4533e715528bef38e9f18"}, + {file = "lief-0.12.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2d99311de2b3be3bba4d4c3b2fdc982cfcc3719b22fcfb79c1ee3cfa712b15dc"}, + {file = "lief-0.12.2-cp36-cp36m-win32.whl", hash = "sha256:cdd7d72159a97327a3e96f3f6b8a8a824af36ff810e006ea389bc3f4d10269e7"}, + {file = "lief-0.12.2-cp36-cp36m-win_amd64.whl", hash = "sha256:2b25c27b3b2d150634e218e23b9dcc02a570eadf4d839e434e7008f16c85cee7"}, + {file = "lief-0.12.2-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:073e70e04225a6efa6dd2725b8a39cd3bf1e55b52f7a681ba5849ef16ea33a2f"}, + {file = "lief-0.12.2-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:aa9a04bcb9e7fe2753ccd9e0832d3ef0583f5aa4b4bae9fcb62f695ce1853528"}, + {file = "lief-0.12.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3686afff06c9ac52965acbf61d79fb9e69b4bfd5c6d617486eceb3cd2ae6ddd0"}, + {file = "lief-0.12.2-cp37-cp37m-win32.whl", hash = "sha256:6518843c7072f8daa02f6ea6e0f3641f041854ce14d370c6eb65c1abc90d9ef7"}, + {file = "lief-0.12.2-cp37-cp37m-win_amd64.whl", hash = "sha256:6d7d36827cef0c26c215ebf1c82e26283acbd56996dc75ff6ceae8dafb373e2c"}, + {file = "lief-0.12.2-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:661fbb31946ce7f445c6e956fe81da423586901186c73326bc612e989ca608b7"}, + {file = "lief-0.12.2-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:b074785a6c570f8d250bba656e473decde6cce3fb0e3d5d22974feed320764d5"}, + {file = "lief-0.12.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:208913a5e67933617c4be7a92b65930ed87e1ed4338a76e8763dc79661e1032f"}, + {file = "lief-0.12.2-cp38-cp38-win32.whl", hash = "sha256:aa8b6a41eb630a23dd03822a884f80236ced27232f93d13c7051ef4d211eff64"}, + {file = "lief-0.12.2-cp38-cp38-win_amd64.whl", hash = "sha256:59c3fadabb1a500725e7c2864a558e78bdeedab816d55287463a043decaf9842"}, + {file = "lief-0.12.2-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:751de35c21ec0d9af7d35dd4372cb4946deeb28d8f168ebc89600494eee7d70a"}, + {file = "lief-0.12.2-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:73f8e94b9250174e3ccfe6f88c40543e5656f708ff3d631244910dfc4e318935"}, + {file = "lief-0.12.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c6e8332cc1ac7b59d58de069e0f7754bf98781ed7d894d72044d2a165738bd2d"}, + {file = "lief-0.12.2-cp39-cp39-win32.whl", hash = "sha256:fa1d0f7e901e7ac0272021b6c5875a13156003964a7ca1d1f43fda81e738c897"}, + {file = "lief-0.12.2-cp39-cp39-win_amd64.whl", hash = "sha256:15979ead13ecd53b3755f0a17281238c49bec945f5d3a15e603a3f472d490fe2"}, + {file = "lief-0.12.2.zip", hash = "sha256:d6fbab6a7cd4c30db83646c893aa4f43b15628e635711c2cf20e9a27be963469"}, ] MarkupSafe = [ - {file = "MarkupSafe-2.0.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:d8446c54dc28c01e5a2dbac5a25f071f6653e6e40f3a8818e8b45d790fe6ef53"}, - {file = "MarkupSafe-2.0.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:36bc903cbb393720fad60fc28c10de6acf10dc6cc883f3e24ee4012371399a38"}, - {file = "MarkupSafe-2.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2d7d807855b419fc2ed3e631034685db6079889a1f01d5d9dac950f764da3dad"}, - {file = "MarkupSafe-2.0.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:add36cb2dbb8b736611303cd3bfcee00afd96471b09cda130da3581cbdc56a6d"}, - {file = "MarkupSafe-2.0.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:168cd0a3642de83558a5153c8bd34f175a9a6e7f6dc6384b9655d2697312a646"}, - {file = "MarkupSafe-2.0.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:4dc8f9fb58f7364b63fd9f85013b780ef83c11857ae79f2feda41e270468dd9b"}, - {file = "MarkupSafe-2.0.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:20dca64a3ef2d6e4d5d615a3fd418ad3bde77a47ec8a23d984a12b5b4c74491a"}, - {file = "MarkupSafe-2.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:cdfba22ea2f0029c9261a4bd07e830a8da012291fbe44dc794e488b6c9bb353a"}, - {file = "MarkupSafe-2.0.1-cp310-cp310-win32.whl", hash = "sha256:99df47edb6bda1249d3e80fdabb1dab8c08ef3975f69aed437cb69d0a5de1e28"}, - {file = "MarkupSafe-2.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:e0f138900af21926a02425cf736db95be9f4af72ba1bb21453432a07f6082134"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:f9081981fe268bd86831e5c75f7de206ef275defcb82bc70740ae6dc507aee51"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:0955295dd5eec6cb6cc2fe1698f4c6d84af2e92de33fbcac4111913cd100a6ff"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:0446679737af14f45767963a1a9ef7620189912317d095f2d9ffa183a4d25d2b"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux2010_i686.whl", hash = "sha256:f826e31d18b516f653fe296d967d700fddad5901ae07c622bb3705955e1faa94"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:fa130dd50c57d53368c9d59395cb5526eda596d3ffe36666cd81a44d56e48872"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:905fec760bd2fa1388bb5b489ee8ee5f7291d692638ea5f67982d968366bef9f"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bf5d821ffabf0ef3533c39c518f3357b171a1651c1ff6827325e4489b0e46c3c"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:0d4b31cc67ab36e3392bbf3862cfbadac3db12bdd8b02a2731f509ed5b829724"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:baa1a4e8f868845af802979fcdbf0bb11f94f1cb7ced4c4b8a351bb60d108145"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:deb993cacb280823246a026e3b2d81c493c53de6acfd5e6bfe31ab3402bb37dd"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:63f3268ba69ace99cab4e3e3b5840b03340efed0948ab8f78d2fd87ee5442a4f"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:8d206346619592c6200148b01a2142798c989edcb9c896f9ac9722a99d4e77e6"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-win32.whl", hash = "sha256:6c4ca60fa24e85fe25b912b01e62cb969d69a23a5d5867682dd3e80b5b02581d"}, - {file = "MarkupSafe-2.0.1-cp36-cp36m-win_amd64.whl", hash = "sha256:b2f4bf27480f5e5e8ce285a8c8fd176c0b03e93dcc6646477d4630e83440c6a9"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:0717a7390a68be14b8c793ba258e075c6f4ca819f15edfc2a3a027c823718567"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:6557b31b5e2c9ddf0de32a691f2312a32f77cd7681d8af66c2692efdbef84c18"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:49e3ceeabbfb9d66c3aef5af3a60cc43b85c33df25ce03d0031a608b0a8b2e3f"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux2010_i686.whl", hash = "sha256:d7f9850398e85aba693bb640262d3611788b1f29a79f0c93c565694658f4071f"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:6a7fae0dd14cf60ad5ff42baa2e95727c3d81ded453457771d02b7d2b3f9c0c2"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:b7f2d075102dc8c794cbde1947378051c4e5180d52d276987b8d28a3bd58c17d"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e9936f0b261d4df76ad22f8fee3ae83b60d7c3e871292cd42f40b81b70afae85"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:2a7d351cbd8cfeb19ca00de495e224dea7e7d919659c2841bbb7f420ad03e2d6"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:60bf42e36abfaf9aff1f50f52644b336d4f0a3fd6d8a60ca0d054ac9f713a864"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:d6c7ebd4e944c85e2c3421e612a7057a2f48d478d79e61800d81468a8d842207"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:f0567c4dc99f264f49fe27da5f735f414c4e7e7dd850cfd8e69f0862d7c74ea9"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:89c687013cb1cd489a0f0ac24febe8c7a666e6e221b783e53ac50ebf68e45d86"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-win32.whl", hash = "sha256:a30e67a65b53ea0a5e62fe23682cfe22712e01f453b95233b25502f7c61cb415"}, - {file = "MarkupSafe-2.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:611d1ad9a4288cf3e3c16014564df047fe08410e628f89805e475368bd304914"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:5bb28c636d87e840583ee3adeb78172efc47c8b26127267f54a9c0ec251d41a9"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:be98f628055368795d818ebf93da628541e10b75b41c559fdf36d104c5787066"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux1_i686.whl", hash = "sha256:1d609f577dc6e1aa17d746f8bd3c31aa4d258f4070d61b2aa5c4166c1539de35"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:7d91275b0245b1da4d4cfa07e0faedd5b0812efc15b702576d103293e252af1b"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux2010_i686.whl", hash = "sha256:01a9b8ea66f1658938f65b93a85ebe8bc016e6769611be228d797c9d998dd298"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:47ab1e7b91c098ab893b828deafa1203de86d0bc6ab587b160f78fe6c4011f75"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:97383d78eb34da7e1fa37dd273c20ad4320929af65d156e35a5e2d89566d9dfb"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6fcf051089389abe060c9cd7caa212c707e58153afa2c649f00346ce6d260f1b"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:5855f8438a7d1d458206a2466bf82b0f104a3724bf96a1c781ab731e4201731a"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:3dd007d54ee88b46be476e293f48c85048603f5f516008bee124ddd891398ed6"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:aca6377c0cb8a8253e493c6b451565ac77e98c2951c45f913e0b52facdcff83f"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:04635854b943835a6ea959e948d19dcd311762c5c0c6e1f0e16ee57022669194"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:6300b8454aa6930a24b9618fbb54b5a68135092bc666f7b06901f897fa5c2fee"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-win32.whl", hash = "sha256:023cb26ec21ece8dc3907c0e8320058b2e0cb3c55cf9564da612bc325bed5e64"}, - {file = "MarkupSafe-2.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:984d76483eb32f1bcb536dc27e4ad56bba4baa70be32fa87152832cdd9db0833"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:2ef54abee730b502252bcdf31b10dacb0a416229b72c18b19e24a4509f273d26"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:3c112550557578c26af18a1ccc9e090bfe03832ae994343cfdacd287db6a6ae7"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux1_i686.whl", hash = "sha256:53edb4da6925ad13c07b6d26c2a852bd81e364f95301c66e930ab2aef5b5ddd8"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:f5653a225f31e113b152e56f154ccbe59eeb1c7487b39b9d9f9cdb58e6c79dc5"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux2010_i686.whl", hash = "sha256:4efca8f86c54b22348a5467704e3fec767b2db12fc39c6d963168ab1d3fc9135"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:ab3ef638ace319fa26553db0624c4699e31a28bb2a835c5faca8f8acf6a5a902"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:f8ba0e8349a38d3001fae7eadded3f6606f0da5d748ee53cc1dab1d6527b9509"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c47adbc92fc1bb2b3274c4b3a43ae0e4573d9fbff4f54cd484555edbf030baf1"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:37205cac2a79194e3750b0af2a5720d95f786a55ce7df90c3af697bfa100eaac"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:1f2ade76b9903f39aa442b4aadd2177decb66525062db244b35d71d0ee8599b6"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:4296f2b1ce8c86a6aea78613c34bb1a672ea0e3de9c6ba08a960efe0b0a09047"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:9f02365d4e99430a12647f09b6cc8bab61a6564363f313126f775eb4f6ef798e"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5b6d930f030f8ed98e3e6c98ffa0652bdb82601e7a016ec2ab5d7ff23baa78d1"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-win32.whl", hash = "sha256:10f82115e21dc0dfec9ab5c0223652f7197feb168c940f3ef61563fc2d6beb74"}, - {file = "MarkupSafe-2.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:693ce3f9e70a6cf7d2fb9e6c9d8b204b6b39897a2c4a1aa65728d5ac97dcc1d8"}, - {file = "MarkupSafe-2.0.1.tar.gz", hash = "sha256:594c67807fb16238b30c44bdf74f36c02cdf22d1c8cda91ef8a0ed8dabf5620a"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:86b1f75c4e7c2ac2ccdaec2b9022845dbb81880ca318bb7a0a01fbf7813e3812"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f121a1420d4e173a5d96e47e9a0c0dcff965afdf1626d28de1460815f7c4ee7a"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a49907dd8420c5685cfa064a1335b6754b74541bbb3706c259c02ed65b644b3e"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:10c1bfff05d95783da83491be968e8fe789263689c02724e0c691933c52994f5"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b7bd98b796e2b6553da7225aeb61f447f80a1ca64f41d83612e6139ca5213aa4"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:b09bf97215625a311f669476f44b8b318b075847b49316d3e28c08e41a7a573f"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:694deca8d702d5db21ec83983ce0bb4b26a578e71fbdbd4fdcd387daa90e4d5e"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:efc1913fd2ca4f334418481c7e595c00aad186563bbc1ec76067848c7ca0a933"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-win32.whl", hash = "sha256:4a33dea2b688b3190ee12bd7cfa29d39c9ed176bda40bfa11099a3ce5d3a7ac6"}, + {file = "MarkupSafe-2.1.1-cp310-cp310-win_amd64.whl", hash = "sha256:dda30ba7e87fbbb7eab1ec9f58678558fd9a6b8b853530e176eabd064da81417"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:671cd1187ed5e62818414afe79ed29da836dde67166a9fac6d435873c44fdd02"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3799351e2336dc91ea70b034983ee71cf2f9533cdff7c14c90ea126bfd95d65a"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e72591e9ecd94d7feb70c1cbd7be7b3ebea3f548870aa91e2732960fa4d57a37"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6fbf47b5d3728c6aea2abb0589b5d30459e369baa772e0f37a0320185e87c980"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:d5ee4f386140395a2c818d149221149c54849dfcfcb9f1debfe07a8b8bd63f9a"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:bcb3ed405ed3222f9904899563d6fc492ff75cce56cba05e32eff40e6acbeaa3"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:e1c0b87e09fa55a220f058d1d49d3fb8df88fbfab58558f1198e08c1e1de842a"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-win32.whl", hash = "sha256:8dc1c72a69aa7e082593c4a203dcf94ddb74bb5c8a731e4e1eb68d031e8498ff"}, + {file = "MarkupSafe-2.1.1-cp37-cp37m-win_amd64.whl", hash = "sha256:97a68e6ada378df82bc9f16b800ab77cbf4b2fada0081794318520138c088e4a"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:e8c843bbcda3a2f1e3c2ab25913c80a3c5376cd00c6e8c4a86a89a28c8dc5452"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0212a68688482dc52b2d45013df70d169f542b7394fc744c02a57374a4207003"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e576a51ad59e4bfaac456023a78f6b5e6e7651dcd383bcc3e18d06f9b55d6d1"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4b9fe39a2ccc108a4accc2676e77da025ce383c108593d65cc909add5c3bd601"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:96e37a3dc86e80bf81758c152fe66dbf60ed5eca3d26305edf01892257049925"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:6d0072fea50feec76a4c418096652f2c3238eaa014b2f94aeb1d56a66b41403f"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:089cf3dbf0cd6c100f02945abeb18484bd1ee57a079aefd52cffd17fba910b88"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:6a074d34ee7a5ce3effbc526b7083ec9731bb3cbf921bbe1d3005d4d2bdb3a63"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-win32.whl", hash = "sha256:421be9fbf0ffe9ffd7a378aafebbf6f4602d564d34be190fc19a193232fd12b1"}, + {file = "MarkupSafe-2.1.1-cp38-cp38-win_amd64.whl", hash = "sha256:fc7b548b17d238737688817ab67deebb30e8073c95749d55538ed473130ec0c7"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:e04e26803c9c3851c931eac40c695602c6295b8d432cbe78609649ad9bd2da8a"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b87db4360013327109564f0e591bd2a3b318547bcef31b468a92ee504d07ae4f"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:99a2a507ed3ac881b975a2976d59f38c19386d128e7a9a18b7df6fff1fd4c1d6"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:56442863ed2b06d19c37f94d999035e15ee982988920e12a5b4ba29b62ad1f77"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3ce11ee3f23f79dbd06fb3d63e2f6af7b12db1d46932fe7bd8afa259a5996603"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:33b74d289bd2f5e527beadcaa3f401e0df0a89927c1559c8566c066fa4248ab7"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:43093fb83d8343aac0b1baa75516da6092f58f41200907ef92448ecab8825135"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8e3dcf21f367459434c18e71b2a9532d96547aef8a871872a5bd69a715c15f96"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-win32.whl", hash = "sha256:d4306c36ca495956b6d568d276ac11fdd9c30a36f1b6eb928070dc5360b22e1c"}, + {file = "MarkupSafe-2.1.1-cp39-cp39-win_amd64.whl", hash = "sha256:46d00d6cfecdde84d40e572d63735ef81423ad31184100411e6e3388d405e247"}, + {file = "MarkupSafe-2.1.1.tar.gz", hash = "sha256:7f91197cc9e48f989d12e4e6fbc46495c446636dfc81b9ccf50bb0ec74b91d4b"}, ] mypy-extensions = [ {file = "mypy_extensions-0.4.3-py2.py3-none-any.whl", hash = "sha256:090fedd75945a69ae91ce1303b5824f428daf5a028d2f6ab8a299250a846f15d"}, @@ -1146,12 +1087,12 @@ patchelf = [ {file = "patchelf-0.15.0.0.tar.gz", hash = "sha256:0f8dcf0df0ba919ce37e8aef67a08bde5326897098451df94ab3a5eedc9e08d9"}, ] pathspec = [ - {file = "pathspec-0.9.0-py2.py3-none-any.whl", hash = "sha256:7d15c4ddb0b5c802d161efc417ec1a2558ea2653c2e8ad9c19098201dc1c993a"}, - {file = "pathspec-0.9.0.tar.gz", hash = "sha256:e564499435a2673d586f6b2130bb5b95f04a3ba06f81b8f895b651a3c76aabb1"}, + {file = "pathspec-0.10.1-py3-none-any.whl", hash = "sha256:46846318467efc4556ccfd27816e004270a9eeeeb4d062ce5e6fc7a87c573f93"}, + {file = "pathspec-0.10.1.tar.gz", hash = "sha256:7ace6161b621d31e7902eb6b5ae148d12cfd23f4a249b9ffb6b9fee12084323d"}, ] platformdirs = [ - {file = "platformdirs-2.4.0-py3-none-any.whl", hash = "sha256:8868bbe3c3c80d42f20156f22e7131d2fb321f5bc86a2a345375c6481a67021d"}, - {file = "platformdirs-2.4.0.tar.gz", hash = "sha256:367a5e80b3d04d2428ffa76d33f124cf11e8fff2acdaa9b43d545f5c7d661ef2"}, + {file = "platformdirs-2.5.2-py3-none-any.whl", hash = "sha256:027d8e83a2d7de06bbac4e5ef7e023c02b863d7ea5d079477e722bb41ab25788"}, + {file = "platformdirs-2.5.2.tar.gz", hash = "sha256:58c8abb07dcb441e6ee4b11d8df0ac856038f944ab98b7be6b27b2a3c7feef19"}, ] pluggy = [ {file = "pluggy-1.0.0-py2.py3-none-any.whl", hash = "sha256:74134bbf457f031a36d68416e1509f34bd5ccc019f0bcc952c7b909d06b37bd3"}, @@ -1191,10 +1132,6 @@ psutil = [ {file = "psutil-5.9.2-cp39-cp39-win_amd64.whl", hash = "sha256:68b35cbff92d1f7103d8f1db77c977e72f49fcefae3d3d2b91c76b0e7aef48b8"}, {file = "psutil-5.9.2.tar.gz", hash = "sha256:feb861a10b6c3bb00701063b37e4afc754f8217f0f09c42280586bd6ac712b5c"}, ] -py = [ - {file = "py-1.11.0-py2.py3-none-any.whl", hash = "sha256:607c53218732647dff4acdfcd50cb62615cedf612e72d1724fb1a0cc6405b378"}, - {file = "py-1.11.0.tar.gz", hash = "sha256:51c75c4126074b472f746a24399ad32f6053d1b34b68d2fa41e558e6f4a98719"}, -] pycparser = [ {file = "pycparser-2.21-py2.py3-none-any.whl", hash = "sha256:8ee45429555515e1f6b185e78100aea234072576aa43ab53aefcae078162fca9"}, {file = "pycparser-2.21.tar.gz", hash = "sha256:e644fdec12f7872f86c58ff790da456218b10f863970249516d60a5eaca77206"}, @@ -1212,8 +1149,8 @@ PyNaCl = [ {file = "PyNaCl-1.5.0.tar.gz", hash = "sha256:8ac7448f09ab85811607bdd21ec2464495ac8b7c66d146bf545b0f08fb9220ba"}, ] pyparsing = [ - {file = "pyparsing-3.0.7-py3-none-any.whl", hash = "sha256:a6c06a88f252e6c322f65faf8f418b16213b51bdfaece0524c1c1bc30c63c484"}, - {file = "pyparsing-3.0.7.tar.gz", hash = "sha256:18ee9022775d270c55187733956460083db60b37d0d0fb357445f3094eed3eea"}, + {file = "pyparsing-3.0.9-py3-none-any.whl", hash = "sha256:5026bae9a10eeaefb61dab2f09052b9f4307d44aee4eda64b309723d8d206bbc"}, + {file = "pyparsing-3.0.9.tar.gz", hash = "sha256:2b020ecf7d21b687f219b71ecad3631f644a47f01403fa1d1036b0c6416d70fb"}, ] PySide2 = [ {file = "PySide2-5.15.2.1-5.15.2-cp27-cp27m-macosx_10_13_intel.whl", hash = "sha256:b5e1d92f26b0bbaefff67727ccbb2e1b577f2c0164b349b3d6e80febb4c5bde2"}, @@ -1229,16 +1166,16 @@ PySocks = [ {file = "PySocks-1.7.1.tar.gz", hash = "sha256:3f8804571ebe159c380ac6de37643bb4685970655d3bba243530d6558b799aa0"}, ] pytest = [ - {file = "pytest-7.0.1-py3-none-any.whl", hash = "sha256:9ce3ff477af913ecf6321fe337b93a2c0dcf2a0a1439c43f5452112c1e4280db"}, - {file = "pytest-7.0.1.tar.gz", hash = "sha256:e30905a0c131d3d94b89624a1cc5afec3e0ba2fbdb151867d8e0ebd49850f171"}, + {file = "pytest-7.2.0-py3-none-any.whl", hash = "sha256:892f933d339f068883b6fd5a459f03d85bfcb355e4981e146d2c7616c21fef71"}, + {file = "pytest-7.2.0.tar.gz", hash = "sha256:c4014eb40e10f11f355ad4e3c2fb2c6c6d1919c73f3b5a433de4708202cade59"}, ] pytest-faulthandler = [ {file = "pytest-faulthandler-2.0.1.tar.gz", hash = "sha256:ed72bbce87ac344da81eb7d882196a457d4a1026a3da4a57154dacd85cd71ae5"}, {file = "pytest_faulthandler-2.0.1-py2.py3-none-any.whl", hash = "sha256:236430ba962fd1c910d670922be55fe5b25ea9bc3fc6561a0cafbb8759e7504d"}, ] pytest-qt = [ - {file = "pytest-qt-4.0.2.tar.gz", hash = "sha256:dfc5240dec7eb43b76bcb5f9a87eecae6ef83592af49f3af5f1d5d093acaa93e"}, - {file = "pytest_qt-4.0.2-py2.py3-none-any.whl", hash = "sha256:e03847ac02a890ccaac0fde1748855b9dce425aceba62005c6cfced6cf7d5456"}, + {file = "pytest-qt-4.2.0.tar.gz", hash = "sha256:00a17b586dd530b6d7a9399923a40489ca4a9a309719011175f55dc6b5dc8f41"}, + {file = "pytest_qt-4.2.0-py2.py3-none-any.whl", hash = "sha256:a7659960a1ab2af8fc944655a157ff45d714b80ed7a6af96a4b5bb99ecf40a22"}, ] python-engineio = [ {file = "python-engineio-4.3.4.tar.gz", hash = "sha256:d8d8b072799c36cadcdcc2b40d2a560ce09797ab3d2d596b2ad519a5e4df19ae"}, @@ -1252,12 +1189,12 @@ qrcode = [ {file = "qrcode-7.3.1.tar.gz", hash = "sha256:375a6ff240ca9bd41adc070428b5dfc1dcfbb0f2507f1ac848f6cded38956578"}, ] requests = [ - {file = "requests-2.27.1-py2.py3-none-any.whl", hash = "sha256:f22fa1e554c9ddfd16e6e41ac79759e17be9e492b3587efa038054674760e72d"}, - {file = "requests-2.27.1.tar.gz", hash = "sha256:68d7c56fd5a8999887728ef304a6d12edc7be74f1cfa47714fc8b414525c9a61"}, + {file = "requests-2.28.1-py3-none-any.whl", hash = "sha256:8fefa2a1a1365bf5520aac41836fbee479da67864514bdb821f31ce07ce65349"}, + {file = "requests-2.28.1.tar.gz", hash = "sha256:7c5599b102feddaa661c826c56ab4fee28bfd17f5abca1ebbe3e7f19d7c97983"}, ] setuptools = [ - {file = "setuptools-59.6.0-py3-none-any.whl", hash = "sha256:4ce92f1e1f8f01233ee9952c04f6b81d1e02939d6e1b488428154974a4d0783e"}, - {file = "setuptools-59.6.0.tar.gz", hash = "sha256:22c7348c6d2976a52632c67f7ab0cdf40147db7789f9aed18734643fe9cf3373"}, + {file = "setuptools-60.10.0-py3-none-any.whl", hash = "sha256:782ef48d58982ddb49920c11a0c5c9c0b02e7d7d1c2ad0aa44e1a1e133051c96"}, + {file = "setuptools-60.10.0.tar.gz", hash = "sha256:6599055eeb23bfef457d5605d33a4d68804266e6cb430b0fb12417c5efeae36c"}, ] shiboken2 = [ {file = "shiboken2-5.15.2.1-5.15.2-cp27-cp27m-macosx_10_13_intel.whl", hash = "sha256:f890f5611ab8f48b88cfecb716da2ac55aef99e2923198cefcf781842888ea65"}, @@ -1275,8 +1212,8 @@ stem = [ {file = "stem-1.8.1.tar.gz", hash = "sha256:81d43a7c668ba9d7bc1103b2e7a911e9d148294b373d27a59ae8da79ef7a3e2f"}, ] tomli = [ - {file = "tomli-1.2.3-py3-none-any.whl", hash = "sha256:e3069e4be3ead9668e21cb9b074cd948f7b3113fd9c8bba083f48247aab8b11c"}, - {file = "tomli-1.2.3.tar.gz", hash = "sha256:05b6166bff487dc068d322585c7ea4ef78deed501cc124060e0f238e89a9231f"}, + {file = "tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc"}, + {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"}, ] typed-ast = [ {file = "typed_ast-1.5.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:669dd0c4167f6f2cd9f57041e03c3c2ebf9063d0757dc89f79ba1daa2bfca9d4"}, @@ -1305,8 +1242,8 @@ typed-ast = [ {file = "typed_ast-1.5.4.tar.gz", hash = "sha256:39e21ceb7388e4bb37f4c679d72707ed46c2fbf2a5609b8b8ebc4b067d977df2"}, ] typing-extensions = [ - {file = "typing_extensions-4.1.1-py3-none-any.whl", hash = "sha256:21c85e0fe4b9a155d0799430b0ad741cdce7e359660ccbd8b530613e8df88ce2"}, - {file = "typing_extensions-4.1.1.tar.gz", hash = "sha256:1a9462dcc3347a79b1f1c0271fbe79e844580bb598bafa1ed208b94da3cdcd42"}, + {file = "typing_extensions-4.4.0-py3-none-any.whl", hash = "sha256:16fa4864408f655d35ec496218b85f79b3437c829e93320c7c9215ccfd92489e"}, + {file = "typing_extensions-4.4.0.tar.gz", hash = "sha256:1511434bb92bf8dd198c12b1cc812e800d4181cfcb867674e0f8279cc93087aa"}, ] Unidecode = [ {file = "Unidecode-1.3.6-py3-none-any.whl", hash = "sha256:547d7c479e4f377b430dd91ac1275d593308dce0fc464fb2ab7d41f82ec653be"}, @@ -1321,8 +1258,8 @@ Werkzeug = [ {file = "Werkzeug-2.0.3.tar.gz", hash = "sha256:b863f8ff057c522164b6067c9e28b041161b4be5ba4d0daceeaa50a163822d3c"}, ] zipp = [ - {file = "zipp-3.6.0-py3-none-any.whl", hash = "sha256:9fe5ea21568a0a70e50f273397638d39b03353731e6cbbb3fd8502a33fec40bc"}, - {file = "zipp-3.6.0.tar.gz", hash = "sha256:71c644c5369f4a6e07636f0aa966270449561fcea2e3d6747b8d23efaa9d7832"}, + {file = "zipp-3.8.1-py3-none-any.whl", hash = "sha256:47c40d7fe183a6f21403a199b3e4192cca5774656965b0a4988ad2f8feb5f009"}, + {file = "zipp-3.8.1.tar.gz", hash = "sha256:05b45f1ee8f807d0cc928485ca40a07cb491cf092ff587c0df9cb1fd154848d2"}, ] "zope.event" = [ {file = "zope.event-4.5.0-py2.py3-none-any.whl", hash = "sha256:2666401939cdaa5f4e0c08cf7f20c9b21423b95e88f4675b1443973bdb080c42"}, diff --git a/desktop/pyproject.toml b/desktop/pyproject.toml index 2e6882a5..b6fe806e 100644 --- a/desktop/pyproject.toml +++ b/desktop/pyproject.toml @@ -1,23 +1,24 @@ [tool.poetry] name = "onionshare" -version = "2.6" +version = "2.6.1" description = "OnionShare lets you securely and anonymously send and receive files. It works by starting a web server, making it accessible as a Tor onion service, and generating an unguessable web address so others can download files from you, or upload files to you. It does _not_ require setting up a separate server or using a third party file-sharing service." authors = ["Micah Lee <micah@micahflee.com>"] license = "GPLv3+" [tool.poetry.dependencies] -python = ">=3.6.2,<3.11" +python = ">=3.7,<3.11" onionshare_cli = {path = "../cli", develop = true} PySide2 = "5.15.2.1" qrcode = "*" -cx_freeze = "*" +werkzeug = "~2.0.3" [tool.poetry.dev-dependencies] click = "*" black = "*" -pytest = "*" +pytest = ">=7.2.0" pytest-faulthandler = "*" -pytest-qt = "*" +pytest-qt = ">=4.2.0" +cx_freeze = "*" [build-system] requires = ["poetry-core>=1.0.0"] diff --git a/desktop/scripts/build-pt-obfs4proxy.ps1 b/desktop/scripts/build-pt-obfs4proxy.ps1 index fa760b85..5b709812 100644 --- a/desktop/scripts/build-pt-obfs4proxy.ps1 +++ b/desktop/scripts/build-pt-obfs4proxy.ps1 @@ -1,4 +1,4 @@ -$env:OBFS4PROXY_TAG = 'obfs4proxy-0.0.13' +$env:OBFS4PROXY_TAG = 'obfs4proxy-0.0.14' New-Item -ItemType Directory -Force -Path .\build\obfs4proxy cd .\build\obfs4proxy diff --git a/desktop/scripts/build-pt-obfs4proxy.sh b/desktop/scripts/build-pt-obfs4proxy.sh index 15b317a3..7fdebd01 100755 --- a/desktop/scripts/build-pt-obfs4proxy.sh +++ b/desktop/scripts/build-pt-obfs4proxy.sh @@ -1,9 +1,9 @@ #!/bin/bash -OBFS4PROXY_TAG=obfs4proxy-0.0.13 +OBFS4PROXY_TAG=obfs4proxy-0.0.14 mkdir -p ./build/obfs4proxy cd ./build/obfs4proxy git clone https://gitlab.com/yawning/obfs4 || echo "already cloned" cd obfs4 git checkout $OBFS4PROXY_TAG -go build -o ../../../onionshare/resources/tor/obfs4proxy ./obfs4proxy
\ No newline at end of file +go build -o ../../../onionshare/resources/tor/obfs4proxy ./obfs4proxy diff --git a/desktop/scripts/build-pt-snowflake.ps1 b/desktop/scripts/build-pt-snowflake.ps1 index 51a127c9..0c30133c 100644 --- a/desktop/scripts/build-pt-snowflake.ps1 +++ b/desktop/scripts/build-pt-snowflake.ps1 @@ -1,4 +1,4 @@ -$env:SNOWFLAKE_TAG = 'v2.2.0' +$env:SNOWFLAKE_TAG = 'v2.3.1' New-Item -ItemType Directory -Force -Path .\build\snowflake cd .\build\snowflake diff --git a/desktop/scripts/build-pt-snowflake.sh b/desktop/scripts/build-pt-snowflake.sh index 24a7ce74..94300491 100755 --- a/desktop/scripts/build-pt-snowflake.sh +++ b/desktop/scripts/build-pt-snowflake.sh @@ -1,5 +1,5 @@ #!/bin/bash -SNOWFLAKE_TAG=v2.2.0 +SNOWFLAKE_TAG=v2.3.1 mkdir -p ./build/snowflake cd ./build/snowflake diff --git a/desktop/scripts/get-tor.py b/desktop/scripts/get-tor.py index 3e6dc053..b7f031ac 100644 --- a/desktop/scripts/get-tor.py +++ b/desktop/scripts/get-tor.py @@ -9,28 +9,28 @@ import subprocess import requests import click -torbrowser_version = "11.5.2" +torbrowser_version = "12.0" expected_win32_sha256 = ( - "07e721ae76bc7eefe25f20792091009238e9568d500331fc64bdd8796fec8c0f" + "a9cc0f0af2ce8ca0d7a27d65c7efa37f6419cfc793fa80371e7db73d44b4cc02" ) expected_win64_sha256 = ( - "8237bca22b5fa545de21f84ba8c9270c84442d0fc50a2e626f757d069e4bc7a8" + "f496cc0219c8b73f1f100124d6514bad55f503ff76202747f23620a6677e83c2" ) expected_macos_sha256 = ( - "b80d3dba83b343fab7a6c8fc08440b2751da1ac12f86fe593da8e74069e4d7f6" + "11c8360187356e6c0837612a320f1a117303fc449602c9fd73f4faf9f9bbcfc9" ) expected_linux64_sha256 = ( - "90cdce3854e9114ee7232aaa74672a2d9f3a40b6fa8ac33971f586ee3a3cf75a" + "850ce601d815bac63e4f5937646d2b497173be28b27b30a7526ebb946a459874" ) -win32_url = f"https://dist.torproject.org/torbrowser/{torbrowser_version}/torbrowser-install-{torbrowser_version}_en-US.exe" -win32_filename = f"torbrowser-install-{torbrowser_version}_en-US.exe" -win64_url = f"https://dist.torproject.org/torbrowser/{torbrowser_version}/torbrowser-install-win64-{torbrowser_version}_en-US.exe" -win64_filename = f"torbrowser-install-win64-{torbrowser_version}_en-US.exe" -macos_url = f"https://dist.torproject.org/torbrowser/{torbrowser_version}/TorBrowser-{torbrowser_version}-osx64_en-US.dmg" -macos_filename = f"TorBrowser-{torbrowser_version}-osx64_en-US.dmg" -linux64_url = f"https://dist.torproject.org/torbrowser/{torbrowser_version}/tor-browser-linux64-{torbrowser_version}_en-US.tar.xz" -linux64_filename = f"tor-browser-linux64-{torbrowser_version}_en-US.tar.xz" +win32_filename = f"torbrowser-install-{torbrowser_version}_ALL.exe" +win32_url = f"https://dist.torproject.org/torbrowser/{torbrowser_version}/{win32_filename}" +win64_filename = f"torbrowser-install-win64-{torbrowser_version}_ALL.exe" +win64_url = f"https://dist.torproject.org/torbrowser/{torbrowser_version}/{win64_filename}" +macos_filename = f"TorBrowser-{torbrowser_version}-macos_ALL.dmg" +macos_url = f"https://dist.torproject.org/torbrowser/{torbrowser_version}/{macos_filename}" +linux64_filename = f"tor-browser-linux64-{torbrowser_version}_ALL.tar.xz" +linux64_url = f"https://dist.torproject.org/torbrowser/{torbrowser_version}/{linux64_filename}" # Common paths @@ -46,32 +46,14 @@ def get_tor_windows(platform): win_filename = win32_filename expected_win_sha256 = expected_win32_sha256 bin_filenames = [ - "libcrypto-1_1.dll", - "libevent-2-1-7.dll", - "libevent_core-2-1-7.dll", - "libevent_extra-2-1-7.dll", - "libgcc_s_dw2-1.dll", - "libssl-1_1.dll", - "libssp-0.dll", - "libwinpthread-1.dll", - "tor.exe", - "zlib1.dll", + "tor.exe" ] elif platform == "win64": win_url = win64_url win_filename = win64_filename expected_win_sha256 = expected_win64_sha256 bin_filenames = [ - "libcrypto-1_1-x64.dll", - "libevent-2-1-7.dll", - "libevent_core-2-1-7.dll", - "libevent_extra-2-1-7.dll", - "libgcc_s_seh-1.dll", - "libssl-1_1-x64.dll", - "libssp-0.dll", - "libwinpthread-1.dll", - "tor.exe", - "zlib1.dll", + "tor.exe" ] else: click.echo("invalid platform") @@ -286,46 +268,46 @@ def update_tor_bridges(): torrc_template_dir = os.path.join( root_path, os.pardir, "cli/onionshare_cli/resources" ) - - r = requests.get("https://gitweb.torproject.org/builders/tor-browser-build.git/plain/projects/tor-browser/Bundle-Data/PTConfigs/bridge_prefs.js") + endpoint = "https://bridges.torproject.org/moat/circumvention/builtin" + r = requests.post( + endpoint, + headers={"Content-Type": "application/vnd.api+json"}, + ) if r.status_code != 200: print( f"There was a problem fetching the latest built-in bridges: status_code={r.status_code}" ) - return False - - # Parse the bridges from this javascript file - bridges = {} - for line in r.content.decode().split("\n"): - if line.startswith('pref("extensions.torlauncher.default_bridge.'): - i = line.index('", "') + 4 - bridge = line[i:].rstrip('");') - - bridge_type = bridge.split()[0] - if bridge_type not in bridges: - bridges[bridge_type] = [] - - bridges[bridge_type].append(bridge) - - for bridge_type in bridges: - if bridge_type == "meek_lite": - torrc_template_extension = "meek_lite_azure" - else: - torrc_template_extension = bridge_type - - torrc_template = os.path.join( - root_path, - torrc_template_dir, - f"torrc_template-{torrc_template_extension}", - ) + sys.exit(1) - with open(torrc_template, "w") as f: - f.write(f"# Enable built-in {bridge_type} bridge\n") - # Sorts the bridges numerically by IP, since they come back in - # random order from the API each time, and create noisy git diff. - bridges[bridge_type].sort(key=lambda s: s.split()[1]) - for item in bridges[bridge_type]: - f.write(f"Bridge {item}\n") + result = r.json() + print(f"Built-in bridges: {result}") + + if "errors" in result: + print( + f"There was a problem fetching the latest built-in bridges: errors={result['errors']}" + ) + sys.exit(1) + + for bridge_type in ["meek-azure", "obfs4", "snowflake"]: + if bridge_type in result and result[bridge_type]: + if bridge_type == "meek-azure": + torrc_template_extension = "meek_lite_azure" + else: + torrc_template_extension = bridge_type + torrc_template = os.path.join( + root_path, + torrc_template_dir, + f"torrc_template-{torrc_template_extension}", + ) + + with open(torrc_template, "w") as f: + f.write(f"# Enable built-in {bridge_type} bridge\n") + bridges = result[bridge_type] + # Sorts the bridges numerically by IP, since they come back in + # random order from the API each time, and create noisy git diff. + bridges.sort(key=lambda s: s.split()[1]) + for item in bridges: + f.write(f"Bridge {item}\n") @click.command() diff --git a/desktop/setup.py b/desktop/setup.py index 44cfb030..7e947f51 100644 --- a/desktop/setup.py +++ b/desktop/setup.py @@ -3,7 +3,7 @@ import setuptools # The version must be hard-coded because Snapcraft won't have access to ../cli -version = "2.6" +version = "2.6.1" setuptools.setup( name="onionshare", @@ -39,12 +39,15 @@ setuptools.setup( "onionshare": [ "resources/*", "resources/images/*", + "resources/images/countries/*", "resources/locale/*", + "resources/countries/*", ] }, entry_points={ "console_scripts": [ "onionshare = onionshare:main", + "onionshare-cli = onionshare_cli:main", ], }, ) |