udata 10.0.6.dev33079__py2.py3-none-any.whl → 10.0.6.dev33111__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/core/dataservices/tasks.py +2 -4
- udata/core/dataset/tasks.py +5 -0
- udata/harvest/tasks.py +3 -2
- udata/tests/dataservice/test_dataservice_tasks.py +5 -0
- udata/tests/dataset/test_dataset_tasks.py +19 -3
- {udata-10.0.6.dev33079.dist-info → udata-10.0.6.dev33111.dist-info}/METADATA +4 -1
- {udata-10.0.6.dev33079.dist-info → udata-10.0.6.dev33111.dist-info}/RECORD +11 -11
- {udata-10.0.6.dev33079.dist-info → udata-10.0.6.dev33111.dist-info}/LICENSE +0 -0
- {udata-10.0.6.dev33079.dist-info → udata-10.0.6.dev33111.dist-info}/WHEEL +0 -0
- {udata-10.0.6.dev33079.dist-info → udata-10.0.6.dev33111.dist-info}/entry_points.txt +0 -0
- {udata-10.0.6.dev33079.dist-info → udata-10.0.6.dev33111.dist-info}/top_level.txt +0 -0
udata/core/dataservices/tasks.py
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
from celery.utils.log import get_task_logger
|
|
2
2
|
|
|
3
3
|
from udata.core.dataservices.models import Dataservice
|
|
4
|
-
|
|
5
|
-
# from udata.harvest.models import HarvestJob
|
|
4
|
+
from udata.harvest.models import HarvestJob
|
|
6
5
|
from udata.models import Discussion, Follow, Transfer
|
|
7
6
|
from udata.tasks import job
|
|
8
7
|
|
|
@@ -18,8 +17,7 @@ def purge_dataservices(self):
|
|
|
18
17
|
# Remove discussions
|
|
19
18
|
Discussion.objects(subject=dataservice).delete()
|
|
20
19
|
# Remove HarvestItem references
|
|
21
|
-
|
|
22
|
-
# HarvestJob.objects(items__dataservice=dataservice).update(set__items__S__dataservice=None)
|
|
20
|
+
HarvestJob.objects(items__dataservice=dataservice).update(set__items__S__dataservice=None)
|
|
23
21
|
# Remove associated Transfers
|
|
24
22
|
Transfer.objects(subject=dataservice).delete()
|
|
25
23
|
# Remove dataservice
|
udata/core/dataset/tasks.py
CHANGED
|
@@ -48,6 +48,11 @@ def purge_datasets(self):
|
|
|
48
48
|
datasets = topic.datasets
|
|
49
49
|
datasets.remove(dataset)
|
|
50
50
|
topic.update(datasets=datasets)
|
|
51
|
+
# Remove dataservices related dataset
|
|
52
|
+
for dataservice in Dataservice.objects(datasets=dataset):
|
|
53
|
+
datasets = dataservice.datasets
|
|
54
|
+
datasets.remove(dataset)
|
|
55
|
+
dataservice.update(datasets=datasets)
|
|
51
56
|
# Remove HarvestItem references
|
|
52
57
|
HarvestJob.objects(items__dataset=dataset).update(set__items__S__dataset=None)
|
|
53
58
|
# Remove associated Transfers
|
udata/harvest/tasks.py
CHANGED
|
@@ -13,8 +13,9 @@ def harvest(self, ident):
|
|
|
13
13
|
log.info('Launching harvest job for source "%s"', ident)
|
|
14
14
|
|
|
15
15
|
source = HarvestSource.get(ident)
|
|
16
|
-
if source.deleted:
|
|
17
|
-
|
|
16
|
+
if source.deleted or not source.active:
|
|
17
|
+
log.info('Ignoring inactive or deleted source "%s"', ident)
|
|
18
|
+
return # Ignore deleted and inactive sources
|
|
18
19
|
Backend = backends.get(current_app, source.backend)
|
|
19
20
|
backend = Backend(source)
|
|
20
21
|
|
|
@@ -3,6 +3,8 @@ import pytest
|
|
|
3
3
|
from udata.core.dataservices import tasks
|
|
4
4
|
from udata.core.dataservices.models import Dataservice
|
|
5
5
|
from udata.core.user.factories import UserFactory
|
|
6
|
+
from udata.harvest.models import HarvestItem, HarvestJob
|
|
7
|
+
from udata.harvest.tests.factories import HarvestJobFactory
|
|
6
8
|
from udata.models import Discussion, Follow, Message, Transfer
|
|
7
9
|
from udata.utils import faker
|
|
8
10
|
|
|
@@ -34,9 +36,12 @@ def test_purge_dataservices():
|
|
|
34
36
|
|
|
35
37
|
follower = Follow.objects.create(follower=user, following=dataservices[0])
|
|
36
38
|
|
|
39
|
+
HarvestJobFactory(items=[HarvestItem(dataservice=dataservices[0])])
|
|
40
|
+
|
|
37
41
|
tasks.purge_dataservices()
|
|
38
42
|
|
|
39
43
|
assert Dataservice.objects.count() == 1
|
|
40
44
|
assert Transfer.objects.filter(id=transfer.id).count() == 0
|
|
41
45
|
assert Discussion.objects.filter(id=discussion.id).count() == 0
|
|
42
46
|
assert Follow.objects.filter(id=follower.id).count() == 0
|
|
47
|
+
assert HarvestJob.objects.filter(items__dataservice=dataservices[0].id).count() == 0
|
|
@@ -1,17 +1,20 @@
|
|
|
1
1
|
import pytest
|
|
2
2
|
|
|
3
|
-
from udata.core.dataset import tasks
|
|
4
|
-
|
|
5
3
|
# Those imports seem mandatory for the csv adapters to be registered.
|
|
6
4
|
# This might be because of the decorator mechanism.
|
|
5
|
+
from udata.core.dataservices.models import Dataservice
|
|
6
|
+
from udata.core.dataset import tasks
|
|
7
7
|
from udata.core.dataset.csv import DatasetCsvAdapter, ResourcesCsvAdapter # noqa
|
|
8
8
|
from udata.core.dataset.factories import CommunityResourceFactory, DatasetFactory
|
|
9
|
+
from udata.core.discussions.factories import DiscussionFactory
|
|
9
10
|
from udata.core.organization.csv import OrganizationCsvAdapter # noqa
|
|
10
11
|
from udata.core.reuse.csv import ReuseCsvAdapter # noqa
|
|
11
12
|
from udata.core.tags.csv import TagCsvAdapter # noqa
|
|
12
13
|
from udata.core.user.factories import UserFactory
|
|
13
14
|
from udata.harvest.csv import HarvestSourceCsvAdapter # noqa
|
|
14
|
-
from udata.models import
|
|
15
|
+
from udata.harvest.models import HarvestItem, HarvestJob
|
|
16
|
+
from udata.harvest.tests.factories import HarvestJobFactory
|
|
17
|
+
from udata.models import CommunityResource, Dataset, Discussion, Follow, Topic, Transfer
|
|
15
18
|
|
|
16
19
|
pytestmark = pytest.mark.usefixtures("clean_db")
|
|
17
20
|
|
|
@@ -32,6 +35,14 @@ def test_purge_datasets():
|
|
|
32
35
|
comment="comment",
|
|
33
36
|
)
|
|
34
37
|
|
|
38
|
+
discussion = DiscussionFactory(subject=datasets[0])
|
|
39
|
+
|
|
40
|
+
follower = Follow.objects.create(follower=user, following=datasets[0])
|
|
41
|
+
|
|
42
|
+
HarvestJobFactory(items=[HarvestItem(dataset=datasets[0])])
|
|
43
|
+
|
|
44
|
+
Dataservice.objects.create(title="test", datasets=datasets)
|
|
45
|
+
|
|
35
46
|
tasks.purge_datasets()
|
|
36
47
|
|
|
37
48
|
assert Transfer.objects.filter(id=transfer.id).count() == 0
|
|
@@ -39,6 +50,11 @@ def test_purge_datasets():
|
|
|
39
50
|
topic = Topic.objects(name="test topic").first()
|
|
40
51
|
assert topic.datasets[0] == datasets[1]
|
|
41
52
|
|
|
53
|
+
assert Discussion.objects.filter(id=discussion.id).count() == 0
|
|
54
|
+
assert Follow.objects.filter(id=follower.id).count() == 0
|
|
55
|
+
assert HarvestJob.objects.filter(items__dataset=datasets[0].id).count() == 0
|
|
56
|
+
assert Dataservice.objects.filter(datasets=datasets[0].id).count() == 0
|
|
57
|
+
|
|
42
58
|
|
|
43
59
|
def test_purge_datasets_community():
|
|
44
60
|
dataset = Dataset.objects.create(title="delete me", deleted="2016-01-01")
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: udata
|
|
3
|
-
Version: 10.0.6.
|
|
3
|
+
Version: 10.0.6.dev33111
|
|
4
4
|
Summary: Open data portal
|
|
5
5
|
Home-page: https://github.com/opendatateam/udata
|
|
6
6
|
Author: Opendata Team
|
|
@@ -140,10 +140,13 @@ It is collectively taken care of by members of the
|
|
|
140
140
|
|
|
141
141
|
## Current (in progress)
|
|
142
142
|
|
|
143
|
+
- Ignore inactive sources at harvest time [#3226](https://github.com/opendatateam/udata/pull/3226)
|
|
144
|
+
- If some harvest sources were marked inactive by mistake, they won't get executed anymore
|
|
143
145
|
- Organization url is now a URLField and should be a valid URL [#3227](https://github.com/opendatateam/udata/pull/3227)
|
|
144
146
|
- Fix the `parse-url` command [#3225](https://github.com/opendatateam/udata/pull/3225)
|
|
145
147
|
- Add `with_drafts` argument to posts API [#3229](https://github.com/opendatateam/udata/pull/3229)
|
|
146
148
|
- Fix failing dataset save in update reuses metrics [#3230](https://github.com/opendatateam/udata/pull/3230)
|
|
149
|
+
- Update purge tasks [#3167](https://github.com/opendatateam/udata/pull/3167)
|
|
147
150
|
|
|
148
151
|
## 10.0.5 (2024-12-09)
|
|
149
152
|
|
|
@@ -88,7 +88,7 @@ udata/core/dataservices/models.py,sha256=lTcC0BqnF7bbFi1S2CZ8Qnk1Fk3TjWoHrvheFB5
|
|
|
88
88
|
udata/core/dataservices/permissions.py,sha256=98zM_R4v2ZtRubflB7ajaVQz-DVc-pZBMgtKUYy34oI,169
|
|
89
89
|
udata/core/dataservices/rdf.py,sha256=9dWSqONCD5m9HmAU_ndmEmG3F1IuRUOW6MWTmk2GEEI,6792
|
|
90
90
|
udata/core/dataservices/search.py,sha256=htjh3sq3tDuD2qwgRgZsW6ClrHLF6hMwYO4nfBO0Hr4,4171
|
|
91
|
-
udata/core/dataservices/tasks.py,sha256=
|
|
91
|
+
udata/core/dataservices/tasks.py,sha256=d2tG1l6u8-eUKUYBOgnCsQLbLmLgJXU-DOzZWhhL6Qg,897
|
|
92
92
|
udata/core/dataset/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
93
93
|
udata/core/dataset/actions.py,sha256=mX6xox0PiMrbcAPZ3VZsI26rfM-ciYfEXxN6sqqImKA,1222
|
|
94
94
|
udata/core/dataset/activities.py,sha256=v8k1jwhdx62Z2ARZq8Q-x86OWSsBK99hRloPl74OCgA,1502
|
|
@@ -108,7 +108,7 @@ udata/core/dataset/preview.py,sha256=IwCqiNTjjXbtA_SSKF52pwnzKKEz0GyYM95QNn2Dkog
|
|
|
108
108
|
udata/core/dataset/rdf.py,sha256=TGpwjsFF9hpiC3fxcF7Rej97bJjlzRy2vXbisn-a90A,28271
|
|
109
109
|
udata/core/dataset/search.py,sha256=E7LqHBnq3sMefvmLwTpiw-Ovem2a3NJswHesRjctboE,5627
|
|
110
110
|
udata/core/dataset/signals.py,sha256=WN4sV-lJlNsRkhcnhoy0SYJvCoYmK_5QFYZd1u-h4gs,161
|
|
111
|
-
udata/core/dataset/tasks.py,sha256
|
|
111
|
+
udata/core/dataset/tasks.py,sha256=jG6U7cwGywhLK-MqUrvbZ1WLl_NLApiThtxmsckGzP8,10009
|
|
112
112
|
udata/core/discussions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
113
113
|
udata/core/discussions/actions.py,sha256=kjdBLDIeu0yWTSxQGgOpN1WoxUqbMygn4SiBk_S9T5I,1051
|
|
114
114
|
udata/core/discussions/api.py,sha256=5yMdKeWp0c9H2ipy5bXoMf82r3ULMIARhvuIdM-XJp0,9446
|
|
@@ -289,7 +289,7 @@ udata/harvest/forms.py,sha256=eDDyrK0VuYgCsYo0HY0P6--RDVpWBCuTwktjFiwPQhw,4252
|
|
|
289
289
|
udata/harvest/models.py,sha256=QBDcdu3N5QILolmiisx9RN5xzfD9tPC06cXO8z5XF4A,6113
|
|
290
290
|
udata/harvest/notifications.py,sha256=8WkHtD68v6rfZC6jCmAuuuRp4NN6q71ZkksZU5m9oJc,867
|
|
291
291
|
udata/harvest/signals.py,sha256=3AhFHMPIFH5vz01NX5ycR_RWH14MXFWnCT6__LSa-QI,1338
|
|
292
|
-
udata/harvest/tasks.py,sha256=
|
|
292
|
+
udata/harvest/tasks.py,sha256=ddJtvE0s-kAYt27-rKH6n8U8vKD8qKczlJtdBJzMUns,1718
|
|
293
293
|
udata/harvest/backends/__init__.py,sha256=QjoFfBJfpw_xgk5YYWI1SgKJOMEmTMlxSfW79GNkSTI,459
|
|
294
294
|
udata/harvest/backends/base.py,sha256=gq39-0SN3DSXfXIv4qjhIkEmPkV-2g6z53V0FikooSs,16413
|
|
295
295
|
udata/harvest/backends/dcat.py,sha256=wbznPWCS9UJzpCWPAnmeUhUCREJg-yoQAHtEfr88RqU,15963
|
|
@@ -637,7 +637,7 @@ udata/tests/data/image.jpg,sha256=hdmpaCjOhmAAfNGuTqWKEjv7IC4GXJx-nP_rT274hc8,33
|
|
|
637
637
|
udata/tests/data/image.png,sha256=GAqXz7w_u7CapODIUF45UpVddmqelnGQkcrwKZq3448,266488
|
|
638
638
|
udata/tests/dataservice/test_csv_adapter.py,sha256=HSnw7HTtzSj0UItKzSvKp3PbwGEni4LGpQ5T63w50MQ,1867
|
|
639
639
|
udata/tests/dataservice/test_dataservice_rdf.py,sha256=VLFgdclFoIhmctfMEgTxvuNlRxcI1yDkZWE-lbEYGdQ,2984
|
|
640
|
-
udata/tests/dataservice/test_dataservice_tasks.py,sha256=
|
|
640
|
+
udata/tests/dataservice/test_dataservice_tasks.py,sha256=9XUoYLb_p3dzmgLfswaXjMG2civP0i1kzzP4VdJWE0k,1614
|
|
641
641
|
udata/tests/dataset/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
642
642
|
udata/tests/dataset/test_csv_adapter.py,sha256=CSAHEur5-183fRsD_cBgsHnLuohn0DOb9zkVT1q0PNo,3866
|
|
643
643
|
udata/tests/dataset/test_dataset_actions.py,sha256=bgDjVYjOvu3sX_FCTCzf2snZYSprsqor2nAhIVuokSs,722
|
|
@@ -645,7 +645,7 @@ udata/tests/dataset/test_dataset_commands.py,sha256=zMPJG2wYwKBee2zI65kmboxf59Zq
|
|
|
645
645
|
udata/tests/dataset/test_dataset_events.py,sha256=hlrpoOiBbnX_COUI9Pzdqlp45GZZDqu5piwupbnPiTI,3601
|
|
646
646
|
udata/tests/dataset/test_dataset_model.py,sha256=VPF17L5sMpKcFo7JNKmgXnKGAgzy1Ejo470avn3bdcQ,30874
|
|
647
647
|
udata/tests/dataset/test_dataset_rdf.py,sha256=TuKomK0SWqO8R1hQkV8iA3w4YvReO0vVHPfBqKP_oaU,36750
|
|
648
|
-
udata/tests/dataset/test_dataset_tasks.py,sha256=
|
|
648
|
+
udata/tests/dataset/test_dataset_tasks.py,sha256=n1W2Pg0ez02d66zQG3N93kh7dpR2yLMRDqUI6PnPaI0,3088
|
|
649
649
|
udata/tests/dataset/test_resource_preview.py,sha256=fp9mSL7unhyM66GR0gwhgX3OGQ4TJt7G9xU-CjsL3HI,3908
|
|
650
650
|
udata/tests/features/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
651
651
|
udata/tests/features/territories/__init__.py,sha256=gMD73RL-ymcWvGPDPM0aPxz7WAfd1VEDL8YHRI7HT0Q,956
|
|
@@ -710,9 +710,9 @@ udata/translations/pt/LC_MESSAGES/udata.mo,sha256=18Y5YtzVKInDejw-R-45HNzsB3OVwJ
|
|
|
710
710
|
udata/translations/pt/LC_MESSAGES/udata.po,sha256=6IQvFk0NTDV5Jq-kLkkzpioWfrMaLDa1oQSevKFbxKQ,44943
|
|
711
711
|
udata/translations/sr/LC_MESSAGES/udata.mo,sha256=LWzCNS68hS2lbeo1bncZw4ZKqV2Dk_JUC-4SiF3o994,28163
|
|
712
712
|
udata/translations/sr/LC_MESSAGES/udata.po,sha256=X1ieIsJDmk_A_YiblpmUBzWWrVHta9F8yzCZLrjeW-Y,51435
|
|
713
|
-
udata-10.0.6.
|
|
714
|
-
udata-10.0.6.
|
|
715
|
-
udata-10.0.6.
|
|
716
|
-
udata-10.0.6.
|
|
717
|
-
udata-10.0.6.
|
|
718
|
-
udata-10.0.6.
|
|
713
|
+
udata-10.0.6.dev33111.dist-info/LICENSE,sha256=V8j_M8nAz8PvAOZQocyRDX7keai8UJ9skgmnwqETmdY,34520
|
|
714
|
+
udata-10.0.6.dev33111.dist-info/METADATA,sha256=jNpE_i0DJk2-zjpIJXA0Tv8uu3cv8aYqygdH5Jh68ZY,137917
|
|
715
|
+
udata-10.0.6.dev33111.dist-info/WHEEL,sha256=DZajD4pwLWue70CAfc7YaxT1wLUciNBvN_TTcvXpltE,110
|
|
716
|
+
udata-10.0.6.dev33111.dist-info/entry_points.txt,sha256=3SKiqVy4HUqxf6iWspgMqH8d88Htk6KoLbG1BU-UddQ,451
|
|
717
|
+
udata-10.0.6.dev33111.dist-info/top_level.txt,sha256=39OCg-VWFWOq4gCKnjKNu-s3OwFlZIu_dVH8Gl6ndHw,12
|
|
718
|
+
udata-10.0.6.dev33111.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|