udata 9.0.1.dev29541__py2.py3-none-any.whl → 9.0.1.dev29597__py2.py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of udata might be problematic. Click here for more details.
- udata/forms/fields.py +2 -2
- udata/static/admin.js +17 -17
- udata/static/admin.js.map +1 -1
- udata/static/common.js +1 -1
- udata/static/common.js.map +1 -1
- udata/tests/api/test_datasets_api.py +1 -1
- udata/tests/test_model.py +2 -1
- udata/translations/ar/LC_MESSAGES/udata.mo +0 -0
- udata/translations/ar/LC_MESSAGES/udata.po +100 -56
- udata/translations/de/LC_MESSAGES/udata.mo +0 -0
- udata/translations/de/LC_MESSAGES/udata.po +100 -56
- udata/translations/es/LC_MESSAGES/udata.mo +0 -0
- udata/translations/es/LC_MESSAGES/udata.po +100 -56
- udata/translations/fr/LC_MESSAGES/udata.mo +0 -0
- udata/translations/fr/LC_MESSAGES/udata.po +100 -56
- udata/translations/it/LC_MESSAGES/udata.mo +0 -0
- udata/translations/it/LC_MESSAGES/udata.po +100 -56
- udata/translations/pt/LC_MESSAGES/udata.mo +0 -0
- udata/translations/pt/LC_MESSAGES/udata.po +100 -56
- udata/translations/sr/LC_MESSAGES/udata.mo +0 -0
- udata/translations/sr/LC_MESSAGES/udata.po +100 -56
- udata/translations/udata.pot +101 -57
- udata/uris.py +14 -13
- {udata-9.0.1.dev29541.dist-info → udata-9.0.1.dev29597.dist-info}/METADATA +2 -1
- {udata-9.0.1.dev29541.dist-info → udata-9.0.1.dev29597.dist-info}/RECORD +29 -29
- {udata-9.0.1.dev29541.dist-info → udata-9.0.1.dev29597.dist-info}/LICENSE +0 -0
- {udata-9.0.1.dev29541.dist-info → udata-9.0.1.dev29597.dist-info}/WHEEL +0 -0
- {udata-9.0.1.dev29541.dist-info → udata-9.0.1.dev29597.dist-info}/entry_points.txt +0 -0
- {udata-9.0.1.dev29541.dist-info → udata-9.0.1.dev29597.dist-info}/top_level.txt +0 -0
udata/uris.py
CHANGED
|
@@ -3,6 +3,7 @@ import re
|
|
|
3
3
|
from werkzeug.routing import BuildError
|
|
4
4
|
from flask import current_app, url_for
|
|
5
5
|
from netaddr import IPAddress, AddrFormatError
|
|
6
|
+
from udata.i18n import _
|
|
6
7
|
|
|
7
8
|
from udata.settings import Defaults
|
|
8
9
|
|
|
@@ -47,12 +48,12 @@ class ValidationError(ValueError):
|
|
|
47
48
|
|
|
48
49
|
def error(url, reason=None):
|
|
49
50
|
__tracebackhide__ = True
|
|
50
|
-
if not
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
raise ValidationError(msg
|
|
51
|
+
if reason is not None:
|
|
52
|
+
msg = _('Invalid URL "{url}": {reason}').format(url=url, reason=reason)
|
|
53
|
+
else:
|
|
54
|
+
msg = _('Invalid URL "{url}"').format(url=url)
|
|
55
|
+
|
|
56
|
+
raise ValidationError(msg)
|
|
56
57
|
|
|
57
58
|
|
|
58
59
|
def config_for(value, key):
|
|
@@ -101,14 +102,14 @@ def validate(url, schemes=None, tlds=None, private=None, local=None,
|
|
|
101
102
|
|
|
102
103
|
scheme = (match.group('scheme') or '').lower()
|
|
103
104
|
if scheme and scheme not in schemes:
|
|
104
|
-
error(url, 'Invalid scheme {0}'.format(scheme))
|
|
105
|
+
error(url, _('Invalid scheme {0}, allowed schemes: {1}').format(scheme, ", ".join(schemes)))
|
|
105
106
|
|
|
106
107
|
if not credentials and match.group('credentials'):
|
|
107
|
-
error(url, 'Credentials in URL are not allowed')
|
|
108
|
+
error(url, _('Credentials in URL are not allowed'))
|
|
108
109
|
|
|
109
110
|
tld = match.group('tld')
|
|
110
111
|
if tld and tld not in tlds and idna(tld) not in tlds:
|
|
111
|
-
error(url, 'Invalid TLD {0}'.format(tld))
|
|
112
|
+
error(url, _('Invalid TLD {0}').format(tld))
|
|
112
113
|
|
|
113
114
|
ip = match.group('ipv6') or match.group('ipv4')
|
|
114
115
|
if ip:
|
|
@@ -117,15 +118,15 @@ def validate(url, schemes=None, tlds=None, private=None, local=None,
|
|
|
117
118
|
except AddrFormatError:
|
|
118
119
|
error(url)
|
|
119
120
|
if ip.is_multicast():
|
|
120
|
-
error(url, '{0} is a multicast IP'.format(ip))
|
|
121
|
+
error(url, _('{0} is a multicast IP').format(ip))
|
|
121
122
|
elif not ip.is_loopback() and ip.is_hostmask() or ip.is_netmask():
|
|
122
|
-
error(url, '{0} is a mask IP'.format(ip))
|
|
123
|
+
error(url, _('{0} is a mask IP').format(ip))
|
|
123
124
|
|
|
124
125
|
if not local:
|
|
125
126
|
if ip and ip.is_loopback() or match.group('localhost'):
|
|
126
|
-
error(url, 'is a local URL')
|
|
127
|
+
error(url, _('is a local URL'))
|
|
127
128
|
|
|
128
129
|
if not private and ip and ip.is_private():
|
|
129
|
-
error(url, 'is a private URL')
|
|
130
|
+
error(url, _('is a private URL'))
|
|
130
131
|
|
|
131
132
|
return url
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: udata
|
|
3
|
-
Version: 9.0.1.
|
|
3
|
+
Version: 9.0.1.dev29597
|
|
4
4
|
Summary: Open data portal
|
|
5
5
|
Home-page: https://github.com/opendatateam/udata
|
|
6
6
|
Author: Opendata Team
|
|
@@ -144,6 +144,7 @@ It is collectively taken care of by members of the
|
|
|
144
144
|
- Fix reuses' datasets references [#3057](https://github.com/opendatateam/udata/pull/3057)
|
|
145
145
|
- Save and show harvest logs [#3053](https://github.com/opendatateam/udata/pull/3053)
|
|
146
146
|
- Fix missing `ObjectId` validation on `/sources` endpoint [#3060](https://github.com/opendatateam/udata/pull/3060)
|
|
147
|
+
- Improve URL validation errors [#3063](https://github.com/opendatateam/udata/pull/3063) [#2768](https://github.com/opendatateam/udata/pull/2768)
|
|
147
148
|
|
|
148
149
|
## 9.0.0 (2024-06-07)
|
|
149
150
|
|
|
@@ -18,7 +18,7 @@ udata/tags.py,sha256=8MvgyjfUz8O71tCV0V1fQV4_0C2P-SLFrm2IA2QfNDs,595
|
|
|
18
18
|
udata/tasks.py,sha256=7tdKnwyz2TF3wYbmFEhTjyuthf1vcuyd6WYWvfRLnoM,4964
|
|
19
19
|
udata/terms.md,sha256=nFx978tUQ3vTEv6POykXaZvcQ5e_gcvmO4ZgcfbSWXo,187
|
|
20
20
|
udata/tracking.py,sha256=iaGqN9NCqcEAayemJe9a-3N8fO--ixBXCUvQ7jRxbhA,359
|
|
21
|
-
udata/uris.py,sha256=
|
|
21
|
+
udata/uris.py,sha256=sbxCx7v_pn1nOykn_cCdPBCNcVLH3vwZOoA11r_mIFk,3573
|
|
22
22
|
udata/utils.py,sha256=eJ9-RXX9oxDgnZ8DbzYAAjbT7WkKjuSETEfhkaQ7QZo,8373
|
|
23
23
|
udata/worker.py,sha256=K-Wafye5-uXP4kQlffRKws2J9YbJ6m6n2QjcVsY8Nsg,118
|
|
24
24
|
udata/wsgi.py,sha256=P7AJvZ5JqY4uRSBOzaFiBniChWIU9RVQ-Y0PN4vCCMY,77
|
|
@@ -262,7 +262,7 @@ udata/features/transfer/models.py,sha256=oItut3YeNJB2Nx_XJ_UBilB0LQF5pZil2Tp6TsG
|
|
|
262
262
|
udata/features/transfer/notifications.py,sha256=oh_uP0XlEEeT7747A292WkjAjAyO4d0YK28oBICN24Y,1003
|
|
263
263
|
udata/features/transfer/permissions.py,sha256=-iEgQkIfLYDGarhDVp3TMas4ABl_Pc4KJTSP8pcewws,953
|
|
264
264
|
udata/forms/__init__.py,sha256=ZxakXdJMwsM_YFT96Z2X24J5YpbpnP_VZ_VEh15gK3w,820
|
|
265
|
-
udata/forms/fields.py,sha256=
|
|
265
|
+
udata/forms/fields.py,sha256=MQREJ-oOomJZyBvTD9aY2gCoL-v5vPjPcQuBX-cpABI,29124
|
|
266
266
|
udata/forms/validators.py,sha256=EqCJloDOR3BonrR34N_ZaMGBXr0iuliDc82khc98e20,2816
|
|
267
267
|
udata/forms/widgets.py,sha256=P-D3uYfNH5OhAa-SqNoXROg_DuDlnpv_DaO_e4LcJ5I,1380
|
|
268
268
|
udata/frontend/__init__.py,sha256=Xc71TI6a8b_QR_wqEOc1tty2y1CwHVbV4tS04nElme0,3494
|
|
@@ -414,10 +414,10 @@ udata/static/SourceSansPro-SemiboldIt.ttf,sha256=EK3ye-6bT-g3T7TSBW-kaoHWkUtlL3o
|
|
|
414
414
|
udata/static/SourceSansPro-SemiboldIt.ttf.woff2,sha256=JBtSfqRaYeoVAVQ3ynlAwX-to2RlkE3yAaVkv6-s-NA,44608
|
|
415
415
|
udata/static/admin.css,sha256=RC7GvbVK8c5wDuELPeVdQpy3ab7HbHl1T4hUo5n-NVk,185167
|
|
416
416
|
udata/static/admin.css.map,sha256=tUhFfsJUK3RrWCih9gUkf-Ywccuztxf4tqvXcN6zP3Y,626542
|
|
417
|
-
udata/static/admin.js,sha256=
|
|
418
|
-
udata/static/admin.js.map,sha256=
|
|
419
|
-
udata/static/common.js,sha256=
|
|
420
|
-
udata/static/common.js.map,sha256=
|
|
417
|
+
udata/static/admin.js,sha256=5aUMi0yODaA3S72Lx2EfU02rGI1Oq_Y3pkVX4eeTHwc,1323682
|
|
418
|
+
udata/static/admin.js.map,sha256=kZIUAQXjIu-wXYkBsstAAANom2YTUF9foCLSmHbSKjw,8502212
|
|
419
|
+
udata/static/common.js,sha256=hEYMeHMi8xkTJQVmcrzFIl1TWikBiZpF15yPxHvj6NE,2252
|
|
420
|
+
udata/static/common.js.map,sha256=d1tp8ldEiFYyIO93ZJYE4nJ3sdZRQR2UmSkwiKNgMs8,14137
|
|
421
421
|
udata/static/fontawesome-webfont.eot,sha256=e_yrbbmdXPvxcFygU23ceFhUMsxfpBu9etDwCQM7KXk,165742
|
|
422
422
|
udata/static/fontawesome-webfont.svg,sha256=rWFXkmwWIrpOHQPUePFUE2hSS_xG9R5C_g2UX37zI-Q,444379
|
|
423
423
|
udata/static/fontawesome-webfont.ttf,sha256=qljzPyOaD7AvXHpsRcBD16msmgkzNYBmlOzW1O3A1qg,165548
|
|
@@ -578,7 +578,7 @@ udata/tests/test_i18n.py,sha256=BU9E7OoIkJw5tv5JYGLjDGBDsti2HuQ_3OWDKnBxnaM,3191
|
|
|
578
578
|
udata/tests/test_linkchecker.py,sha256=KxV1-PuuuqogkHf3jP6JhRsc2QG2dFmFB-vSHOiHkuU,10374
|
|
579
579
|
udata/tests/test_mail.py,sha256=LK_fOBbFoqbwdaIEXO9XyGPzxY9nrT9FjyD_dlglUdQ,1643
|
|
580
580
|
udata/tests/test_migrations.py,sha256=IG2o13B3sgkfg3PAqrbOTkS2iqGubNxa_JD-LHL9zxc,15317
|
|
581
|
-
udata/tests/test_model.py,sha256=
|
|
581
|
+
udata/tests/test_model.py,sha256=IhhzR7ErjnVHR0qlkk-Iw-NR_ZJe86dfEaxT7Uk4QPE,20357
|
|
582
582
|
udata/tests/test_notifications.py,sha256=El5i56LCn0PwJc1PYx7g8onUk2i47dfjlcdMohCXGAQ,2333
|
|
583
583
|
udata/tests/test_owned.py,sha256=DNgr0iljvzaIPxRvYLG2nx6V3ADp0U8SEW0xj4nYieM,5662
|
|
584
584
|
udata/tests/test_rdf.py,sha256=osRAX9U9v5Hm3Tar-FqKUe7wCuTx4jHI7sYJxJVIhaQ,2813
|
|
@@ -594,7 +594,7 @@ udata/tests/api/test_auth_api.py,sha256=3Zhn2A29poZIcCJ_R9_-LkR3xOFUTw1aTquiZVXQ
|
|
|
594
594
|
udata/tests/api/test_base_api.py,sha256=DRX5nuFIj51GFmMIAxUzoW1yiq1apNgr1vS4U4agzeg,2319
|
|
595
595
|
udata/tests/api/test_contact_points.py,sha256=MJm8B06iaUqIZCqxll3NViFwUCxwqZZ4u9e9s1h8MgU,1056
|
|
596
596
|
udata/tests/api/test_dataservices_api.py,sha256=51NU5d4iqfJT8iiyi0aLdWXDqZLvmyD-qh-Sflk9Lsg,11122
|
|
597
|
-
udata/tests/api/test_datasets_api.py,sha256=
|
|
597
|
+
udata/tests/api/test_datasets_api.py,sha256=aC5bFhaoILoFEZFc8JXESdoOz-mf0e797zPmwzJ9FP0,81711
|
|
598
598
|
udata/tests/api/test_fields.py,sha256=OW85Z5MES5HeWOpapeem8OvR1cIcrqW-xMWpdZO4LZ8,1033
|
|
599
599
|
udata/tests/api/test_follow_api.py,sha256=0h54P_Dfbo07u6tg0Rbai1WWgWb19ZLN2HGv4oLCWfg,3383
|
|
600
600
|
udata/tests/api/test_me_api.py,sha256=8OthqVYQKZrFoGuJ7zAvoLJx1IclPNzPdD5Tnzmh3rM,14163
|
|
@@ -673,24 +673,24 @@ udata/tests/workers/test_jobs_commands.py,sha256=0Ru2N-uxgWAgYoADxFjLgyburD5OdBL
|
|
|
673
673
|
udata/tests/workers/test_tasks_routing.py,sha256=4cBChvphj23rbLIu4dCTYYiM5OfTEUZKlXuNnyBCnWA,2260
|
|
674
674
|
udata/tests/workers/test_workers_api.py,sha256=8MtfAjrPL1TUfEBfVjrYfm_4rft4DfBlcamiVvMCJAo,8863
|
|
675
675
|
udata/tests/workers/test_workers_helpers.py,sha256=EVTHL-KhwbwD8snfN8HdK5o-wMXYkl2oXgtl990fQxE,647
|
|
676
|
-
udata/translations/udata.pot,sha256=
|
|
677
|
-
udata/translations/ar/LC_MESSAGES/udata.mo,sha256=
|
|
678
|
-
udata/translations/ar/LC_MESSAGES/udata.po,sha256=
|
|
679
|
-
udata/translations/de/LC_MESSAGES/udata.mo,sha256=
|
|
680
|
-
udata/translations/de/LC_MESSAGES/udata.po,sha256=
|
|
681
|
-
udata/translations/es/LC_MESSAGES/udata.mo,sha256=
|
|
682
|
-
udata/translations/es/LC_MESSAGES/udata.po,sha256=
|
|
683
|
-
udata/translations/fr/LC_MESSAGES/udata.mo,sha256=
|
|
684
|
-
udata/translations/fr/LC_MESSAGES/udata.po,sha256=
|
|
685
|
-
udata/translations/it/LC_MESSAGES/udata.mo,sha256=
|
|
686
|
-
udata/translations/it/LC_MESSAGES/udata.po,sha256=
|
|
687
|
-
udata/translations/pt/LC_MESSAGES/udata.mo,sha256=
|
|
688
|
-
udata/translations/pt/LC_MESSAGES/udata.po,sha256=
|
|
689
|
-
udata/translations/sr/LC_MESSAGES/udata.mo,sha256=
|
|
690
|
-
udata/translations/sr/LC_MESSAGES/udata.po,sha256=
|
|
691
|
-
udata-9.0.1.
|
|
692
|
-
udata-9.0.1.
|
|
693
|
-
udata-9.0.1.
|
|
694
|
-
udata-9.0.1.
|
|
695
|
-
udata-9.0.1.
|
|
696
|
-
udata-9.0.1.
|
|
676
|
+
udata/translations/udata.pot,sha256=COdV87EQCmi-xh4woWqErwbnzlW9a5a2xo-6UVkPDZs,36594
|
|
677
|
+
udata/translations/ar/LC_MESSAGES/udata.mo,sha256=5WY0IWxqGknbC1o3BBRwTRg81ATBT9wLJHb3dK3piek,12665
|
|
678
|
+
udata/translations/ar/LC_MESSAGES/udata.po,sha256=VjT4qh3z_xO1Sh0EjVW6Ffms17flM52btum1CXGXVIU,42012
|
|
679
|
+
udata/translations/de/LC_MESSAGES/udata.mo,sha256=XPDFo3LbWnAUxIhtN0Y__aUMfKX6rKM4IQSlasUUhTE,16061
|
|
680
|
+
udata/translations/de/LC_MESSAGES/udata.po,sha256=k4RKdWzsCnuwfDYcf2lGnxOScJpRoVZ-7qkzH2qOb5s,42474
|
|
681
|
+
udata/translations/es/LC_MESSAGES/udata.mo,sha256=RE2DCXV5g7-WlkoUdC6AUYxQL7uYlbTx3pSPMgGXc28,12914
|
|
682
|
+
udata/translations/es/LC_MESSAGES/udata.po,sha256=A2xcTGEMB3F28thDWAXs4xZUqY1-OBCtFrpWoc0Gumg,41429
|
|
683
|
+
udata/translations/fr/LC_MESSAGES/udata.mo,sha256=0B5SQVTft8mw0EmiqQJbXKC2iIQZRwXwAOWxgt32ggc,27690
|
|
684
|
+
udata/translations/fr/LC_MESSAGES/udata.po,sha256=Pdi_o32nVjEfXtLML197ckqgpgK9m24iB_6bilf-qWY,48167
|
|
685
|
+
udata/translations/it/LC_MESSAGES/udata.mo,sha256=Y5ef6_0rkS8X8YgevSwGUhw1i46YROnkTUrfGAS1rRI,15882
|
|
686
|
+
udata/translations/it/LC_MESSAGES/udata.po,sha256=BFXbw5YApm-3PnZZy4PEPwogVp4hQ5c-oqxhNfaUVoQ,42270
|
|
687
|
+
udata/translations/pt/LC_MESSAGES/udata.mo,sha256=iAUNwbI8ESi8MHkE3ZCYCSIXfFC27zeteFw4CH0tgjw,21091
|
|
688
|
+
udata/translations/pt/LC_MESSAGES/udata.po,sha256=uTmbHfzyFWrVXUkKSuNFzbGpX7EkUuBdD8fE04d3v5g,44572
|
|
689
|
+
udata/translations/sr/LC_MESSAGES/udata.mo,sha256=1MbQHvKKNUwzMBWLNsH1qqBehO3aILhQiMhi5u1bY8E,28553
|
|
690
|
+
udata/translations/sr/LC_MESSAGES/udata.po,sha256=AAryt27Gbkhk7FntCCU8_e7HSXATfsAQhwFOFC8CAj0,51152
|
|
691
|
+
udata-9.0.1.dev29597.dist-info/LICENSE,sha256=V8j_M8nAz8PvAOZQocyRDX7keai8UJ9skgmnwqETmdY,34520
|
|
692
|
+
udata-9.0.1.dev29597.dist-info/METADATA,sha256=s5QXv0hRAr_AqGTjLWohlMcIZ1tCF3XB0T_ml10ek1o,124849
|
|
693
|
+
udata-9.0.1.dev29597.dist-info/WHEEL,sha256=DZajD4pwLWue70CAfc7YaxT1wLUciNBvN_TTcvXpltE,110
|
|
694
|
+
udata-9.0.1.dev29597.dist-info/entry_points.txt,sha256=3SKiqVy4HUqxf6iWspgMqH8d88Htk6KoLbG1BU-UddQ,451
|
|
695
|
+
udata-9.0.1.dev29597.dist-info/top_level.txt,sha256=39OCg-VWFWOq4gCKnjKNu-s3OwFlZIu_dVH8Gl6ndHw,12
|
|
696
|
+
udata-9.0.1.dev29597.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|