wbnews 1.58.0__py2.py3-none-any.whl → 1.60.1__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.
@@ -3,7 +3,7 @@ from contextlib import suppress
3
3
  from datetime import datetime
4
4
 
5
5
  from django.conf.global_settings import LANGUAGES
6
- from wbcore.utils.importlib import import_from_dotted_path
6
+ from django.utils.module_loading import import_string
7
7
 
8
8
  from .utils import EmlContentParser
9
9
 
@@ -26,7 +26,7 @@ def parse(import_source):
26
26
  # If source define a custom html parser, we import it and convert the returned html
27
27
  if html_parser_path := import_source.source.import_parameters.get("html_parser", None):
28
28
  with suppress(ModuleNotFoundError):
29
- html_parser = import_from_dotted_path(html_parser_path)
29
+ html_parser = import_string(html_parser_path)
30
30
  html = html_parser(html)
31
31
 
32
32
  data = {
@@ -6,12 +6,11 @@
6
6
  # Translators:
7
7
  # Kevin Decoster, 2025
8
8
  #
9
- #, fuzzy
10
9
  msgid ""
11
10
  msgstr ""
12
11
  "Project-Id-Version: PACKAGE VERSION\n"
13
12
  "Report-Msgid-Bugs-To: \n"
14
- "POT-Creation-Date: 2025-05-30 11:37+0200\n"
13
+ "POT-Creation-Date: 2026-01-16 14:04+0100\n"
15
14
  "PO-Revision-Date: 2025-05-30 09:40+0000\n"
16
15
  "Last-Translator: Kevin Decoster, 2025\n"
17
16
  "Language-Team: German (https://app.transifex.com/stainly/teams/171242/de/)\n"
@@ -21,41 +20,41 @@ msgstr ""
21
20
  "Language: de\n"
22
21
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
23
22
 
24
- #: models/news.py:51 viewsets/display.py:54 viewsets/display.py:100
23
+ #: models/news.py:52 viewsets/display.py:54 viewsets/display.py:100
25
24
  #: viewsets/display.py:141
26
25
  msgid "Datetime"
27
26
  msgstr "Zeitpunkt"
28
27
 
29
- #: models/news.py:52 serializers.py:21 serializers.py:76
28
+ #: models/news.py:53 serializers.py:21 serializers.py:76
30
29
  #: viewsets/display.py:20 viewsets/display.py:55 viewsets/display.py:102
31
30
  #: viewsets/display.py:142
32
31
  msgid "Title"
33
32
  msgstr "Titel"
34
33
 
35
- #: models/news.py:54 serializers.py:24 serializers.py:77
34
+ #: models/news.py:55 serializers.py:24 serializers.py:77
36
35
  #: viewsets/display.py:23 viewsets/display.py:57 viewsets/display.py:104
37
36
  #: viewsets/display.py:143
38
37
  msgid "Description"
39
38
  msgstr "Beschreibung"
40
39
 
41
- #: models/news.py:55 serializers.py:78 viewsets/display.py:56
40
+ #: models/news.py:56 serializers.py:78 viewsets/display.py:56
42
41
  #: viewsets/display.py:103
43
42
  msgid "Summary"
44
43
  msgstr "Zusammenfassung"
45
44
 
46
- #: models/news.py:56 viewsets/display.py:60 viewsets/display.py:144
45
+ #: models/news.py:57 viewsets/display.py:60 viewsets/display.py:144
47
46
  msgid "Language"
48
47
  msgstr "Sprache"
49
48
 
50
- #: models/news.py:57
49
+ #: models/news.py:58
51
50
  msgid "Link"
52
51
  msgstr "Link"
53
52
 
54
- #: models/news.py:61 viewsets/display.py:59 viewsets/display.py:106
53
+ #: models/news.py:62 viewsets/display.py:59 viewsets/display.py:106
55
54
  msgid "Source"
56
55
  msgstr "Quelle"
57
56
 
58
- #: models/news.py:64
57
+ #: models/news.py:65
59
58
  msgid "Mark as duplicate"
60
59
  msgstr ""
61
60
 
@@ -7,7 +7,7 @@ msgid ""
7
7
  msgstr ""
8
8
  "Project-Id-Version: PACKAGE VERSION\n"
9
9
  "Report-Msgid-Bugs-To: \n"
10
- "POT-Creation-Date: 2025-05-30 11:37+0200\n"
10
+ "POT-Creation-Date: 2026-01-16 14:04+0100\n"
11
11
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
12
12
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
13
  "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,39 +16,39 @@ msgstr ""
16
16
  "Content-Type: text/plain; charset=UTF-8\n"
17
17
  "Content-Transfer-Encoding: 8bit\n"
18
18
 
19
- #: models/news.py:51 viewsets/display.py:54 viewsets/display.py:100
19
+ #: models/news.py:52 viewsets/display.py:54 viewsets/display.py:100
20
20
  #: viewsets/display.py:141
21
21
  msgid "Datetime"
22
22
  msgstr ""
23
23
 
24
- #: models/news.py:52 serializers.py:21 serializers.py:76 viewsets/display.py:20
24
+ #: models/news.py:53 serializers.py:21 serializers.py:76 viewsets/display.py:20
25
25
  #: viewsets/display.py:55 viewsets/display.py:102 viewsets/display.py:142
26
26
  msgid "Title"
27
27
  msgstr ""
28
28
 
29
- #: models/news.py:54 serializers.py:24 serializers.py:77 viewsets/display.py:23
29
+ #: models/news.py:55 serializers.py:24 serializers.py:77 viewsets/display.py:23
30
30
  #: viewsets/display.py:57 viewsets/display.py:104 viewsets/display.py:143
31
31
  msgid "Description"
32
32
  msgstr ""
33
33
 
34
- #: models/news.py:55 serializers.py:78 viewsets/display.py:56
34
+ #: models/news.py:56 serializers.py:78 viewsets/display.py:56
35
35
  #: viewsets/display.py:103
36
36
  msgid "Summary"
37
37
  msgstr ""
38
38
 
39
- #: models/news.py:56 viewsets/display.py:60 viewsets/display.py:144
39
+ #: models/news.py:57 viewsets/display.py:60 viewsets/display.py:144
40
40
  msgid "Language"
41
41
  msgstr ""
42
42
 
43
- #: models/news.py:57
43
+ #: models/news.py:58
44
44
  msgid "Link"
45
45
  msgstr ""
46
46
 
47
- #: models/news.py:61 viewsets/display.py:59 viewsets/display.py:106
47
+ #: models/news.py:62 viewsets/display.py:59 viewsets/display.py:106
48
48
  msgid "Source"
49
49
  msgstr ""
50
50
 
51
- #: models/news.py:64
51
+ #: models/news.py:65
52
52
  msgid "Mark as duplicate"
53
53
  msgstr ""
54
54
 
@@ -3,12 +3,11 @@
3
3
  # This file is distributed under the same license as the PACKAGE package.
4
4
  # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5
5
  #
6
- #, fuzzy
7
6
  msgid ""
8
7
  msgstr ""
9
8
  "Project-Id-Version: PACKAGE VERSION\n"
10
9
  "Report-Msgid-Bugs-To: \n"
11
- "POT-Creation-Date: 2025-05-30 11:37+0200\n"
10
+ "POT-Creation-Date: 2026-01-16 14:04+0100\n"
12
11
  "PO-Revision-Date: 2025-05-30 09:40+0000\n"
13
12
  "Language-Team: French (https://app.transifex.com/stainly/teams/171242/fr/)\n"
14
13
  "MIME-Version: 1.0\n"
@@ -17,41 +16,41 @@ msgstr ""
17
16
  "Language: fr\n"
18
17
  "Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
19
18
 
20
- #: models/news.py:51 viewsets/display.py:54 viewsets/display.py:100
19
+ #: models/news.py:52 viewsets/display.py:54 viewsets/display.py:100
21
20
  #: viewsets/display.py:141
22
21
  msgid "Datetime"
23
22
  msgstr ""
24
23
 
25
- #: models/news.py:52 serializers.py:21 serializers.py:76
24
+ #: models/news.py:53 serializers.py:21 serializers.py:76
26
25
  #: viewsets/display.py:20 viewsets/display.py:55 viewsets/display.py:102
27
26
  #: viewsets/display.py:142
28
27
  msgid "Title"
29
28
  msgstr ""
30
29
 
31
- #: models/news.py:54 serializers.py:24 serializers.py:77
30
+ #: models/news.py:55 serializers.py:24 serializers.py:77
32
31
  #: viewsets/display.py:23 viewsets/display.py:57 viewsets/display.py:104
33
32
  #: viewsets/display.py:143
34
33
  msgid "Description"
35
34
  msgstr ""
36
35
 
37
- #: models/news.py:55 serializers.py:78 viewsets/display.py:56
36
+ #: models/news.py:56 serializers.py:78 viewsets/display.py:56
38
37
  #: viewsets/display.py:103
39
38
  msgid "Summary"
40
39
  msgstr ""
41
40
 
42
- #: models/news.py:56 viewsets/display.py:60 viewsets/display.py:144
41
+ #: models/news.py:57 viewsets/display.py:60 viewsets/display.py:144
43
42
  msgid "Language"
44
43
  msgstr ""
45
44
 
46
- #: models/news.py:57
45
+ #: models/news.py:58
47
46
  msgid "Link"
48
47
  msgstr ""
49
48
 
50
- #: models/news.py:61 viewsets/display.py:59 viewsets/display.py:106
49
+ #: models/news.py:62 viewsets/display.py:59 viewsets/display.py:106
51
50
  msgid "Source"
52
51
  msgstr ""
53
52
 
54
- #: models/news.py:64
53
+ #: models/news.py:65
55
54
  msgid "Mark as duplicate"
56
55
  msgstr ""
57
56
 
wbnews/models/news.py CHANGED
@@ -14,6 +14,7 @@ from slugify import slugify
14
14
  from wbcore.contrib.ai.llm.decorators import llm
15
15
  from wbcore.contrib.io.mixins import ImportMixin
16
16
  from wbcore.models import WBModel
17
+ from wbcore.workers import Queue
17
18
 
18
19
  from wbnews.import_export.handlers.news import NewsImportHandler
19
20
  from wbnews.models.llm.cleaned_news import clean_news_config, summarized_news_config
@@ -23,7 +24,7 @@ from wbnews.signals import create_news_relationships
23
24
  from ..utils import detect_near_duplicates
24
25
 
25
26
 
26
- @shared_task
27
+ @shared_task(queue=Queue.DEFAULT.value)
27
28
  def create_relationship(chain_results: list[list[dict[str, Any]]], news_id: int):
28
29
  objs = []
29
30
  for relationships in chain_results:
wbnews/serializers.py CHANGED
@@ -1,7 +1,7 @@
1
1
  from django.utils.translation import gettext_lazy as _
2
2
  from rest_framework.reverse import reverse
3
3
  from wbcore import serializers as wb_serializers
4
- from wbcore.content_type.serializers import (
4
+ from wbcore.contrib.content_type.serializers import (
5
5
  ContentTypeRepresentationSerializer,
6
6
  DynamicObjectIDRepresentationSerializer,
7
7
  )
wbnews/tasks.py CHANGED
@@ -1,11 +1,12 @@
1
1
  from datetime import date, timedelta
2
2
 
3
3
  from celery import shared_task
4
+ from wbcore.workers import Queue
4
5
 
5
6
  from wbnews.models import News
6
7
 
7
8
 
8
- @shared_task()
9
+ @shared_task(queue=Queue.BACKGROUND.value)
9
10
  def handle_daily_news_duplicates(
10
11
  task_date: date | None = None,
11
12
  day_interval: int = 7,
wbnews/viewsets/views.py CHANGED
@@ -9,7 +9,7 @@ from rest_framework.decorators import action
9
9
  from rest_framework.permissions import IsAdminUser
10
10
  from rest_framework.response import Response
11
11
  from wbcore import viewsets
12
- from wbcore.content_type.utils import get_ancestors_content_type
12
+ from wbcore.contrib.content_type.utils import get_ancestors_content_type
13
13
 
14
14
  from wbnews.models import News, NewsRelationship, NewsSource
15
15
  from wbnews.serializers import (
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: wbnews
3
- Version: 1.58.0
3
+ Version: 1.60.1
4
4
  Summary: A workbench module for managing news.
5
5
  Author-email: Christopher Wittlinger <c.wittlinger@stainly.com>
6
6
  Requires-Dist: feedparser==6.*
@@ -3,9 +3,9 @@ wbnews/__init__.py,sha256=J-j-u0itpEFT6irdmWmixQqYMadNl1X91TxUmoiLHMI,22
3
3
  wbnews/admin.py,sha256=cn-PF0LclyQ0FFNfw0mdVoW7v3g0b9uotTiAFKmLVPQ,832
4
4
  wbnews/apps.py,sha256=l4kfE3Pux84Fb34xNgKDxcxRHuPCp6odCGFE9Sa3Wzw,212
5
5
  wbnews/factories.py,sha256=_EBIeMafeiyAjnSAG-xXxdqw7vVwAu8u-DfdLn8mtHk,1172
6
- wbnews/serializers.py,sha256=KihExQ_GS1fNZnojryEcfU32xlTiPn-K2WGO0Zc84Cw,4732
6
+ wbnews/serializers.py,sha256=cKfU14poNe8AECwT7KBJeX2k7H4rz-fi4EQXXKDvV4U,4740
7
7
  wbnews/signals.py,sha256=eqipwffwJnDQWUZ9VTKr5Jp-OMXLmVSNwoIsawnCKvM,192
8
- wbnews/tasks.py,sha256=ce9JbXKnJnf7La74h0LPwm3yrygHNe1BKZju_4m1itw,384
8
+ wbnews/tasks.py,sha256=ARkMZbhS3soilHFl9HJh4mXgm6kl5ZlJomVDF_IZ9lY,445
9
9
  wbnews/urls.py,sha256=2Gs9RGU8x6tNOLJiuG17n_ik82QVb8jlw7bU07Lk_S4,1008
10
10
  wbnews/utils.py,sha256=h4TdMbUL0qQ2h3o3jEpGuGwT90TWiryVRtBXc7avLW0,1955
11
11
  wbnews/filters/__init__.py,sha256=FXJcPsLQePCU-fzjpIu44Dsdu9vCckLHr0Kr-8Z_-C4,59
@@ -18,17 +18,17 @@ wbnews/import_export/handlers/__init__.py,sha256=zOeENt9cpEcSLG9ZaVb4otmbTnLAa0X
18
18
  wbnews/import_export/handlers/news.py,sha256=cdrtWIP3XOU8NMYZKF8VLYH5qHmPLboUm_GwNAvO2ew,2181
19
19
  wbnews/import_export/parsers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
20
20
  wbnews/import_export/parsers/emails/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
21
- wbnews/import_export/parsers/emails/news.py,sha256=8fSgjSPuSmdfGKV1IxLMWriqGhDAG-tiZUyAgWpjZ_M,1236
21
+ wbnews/import_export/parsers/emails/news.py,sha256=vXK1Mui3v7Qk3Sjj4HgZA0JSTxymD38iqlU-f82GFXU,1221
22
22
  wbnews/import_export/parsers/emails/utils.py,sha256=k7R1HZx18FKXRq10COARFgHjjBadsWe1DY3AHCrwHRs,2207
23
23
  wbnews/import_export/parsers/rss/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
24
24
  wbnews/import_export/parsers/rss/news.py,sha256=H89avqOU_AUAyHiIXd_tfoMbcqy67GgDQ2-ucihDpks,2076
25
25
  wbnews/locale/de/LC_MESSAGES/django.mo,sha256=M70N6el-I7EymxHLw9n773Bimbztf8s8equWa9SydBs,1283
26
- wbnews/locale/de/LC_MESSAGES/django.po,sha256=furtxh-NgkodwE4dv0uXaRtWF2z3NxWtEw64tH9OMN4,3494
26
+ wbnews/locale/de/LC_MESSAGES/django.po,sha256=Jv1u9mJ8lmWtwrz_Yfz_Q5Hpnu1uYyy90JqUUX8PGuY,3485
27
27
  wbnews/locale/de/LC_MESSAGES/django.po.translated,sha256=ILRIDL_vON91Do5QhZr5N85Y4vsOAIHsaU8QX0FiEA4,3962
28
28
  wbnews/locale/en/LC_MESSAGES/django.mo,sha256=UXCQbz2AxBvh-IQ7bGgjoBnijo8h9DfE9107A-2Mgkk,337
29
- wbnews/locale/en/LC_MESSAGES/django.po,sha256=K7SPoXdLZHyOOAoIOEydgJwl1qdQMrK3uapd4EMrVIg,3125
29
+ wbnews/locale/en/LC_MESSAGES/django.po,sha256=E1oHhFhczwVO598h2ql7UPWmppzwTh80vxba8jtv-U8,3125
30
30
  wbnews/locale/fr/LC_MESSAGES/django.mo,sha256=t4lh3zX7kshbDAFzXa5HU_YGPXkPzKqODNXL2MeZ5KQ,429
31
- wbnews/locale/fr/LC_MESSAGES/django.po,sha256=kRBjvETEy0GMPqX0H6EArGqrtzhYXwswjUW-JDajlbM,3232
31
+ wbnews/locale/fr/LC_MESSAGES/django.po,sha256=dRxnXJW76KlcwwcAqK-quI5ZQR6HiRNIcMWPDc2rhuE,3223
32
32
  wbnews/migrations/0001_initial_squashed_0005_alter_news_import_source.py,sha256=4qxqfpAYVeU16GsWaj7kUbtOk0ZLzuECTfzhUfmni2A,14596
33
33
  wbnews/migrations/0006_alter_news_language.py,sha256=necqSWKi20sHLok-RO9He3vnmMlmmdx07AiN3lnZPBM,4638
34
34
  wbnews/migrations/0007_auto_20240103_0955.py,sha256=YzkH_LSWH_8qdw_BrKaTN5vqLNCPnjMlJZxs03Xbbvw,1478
@@ -41,7 +41,7 @@ wbnews/migrations/0013_alter_news_datetime.py,sha256=q4Gbxo25jClsv9b1kfTqBLmpPNH
41
41
  wbnews/migrations/0014_newsrelationship_unique_news_relationship.py,sha256=aZUHLMKRMaXHJrrbnV9O2ZJRDVjbpkb9NjVPB7VKVW0,1073
42
42
  wbnews/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
43
43
  wbnews/models/__init__.py,sha256=KKIcQbpCPCVNJUPJs2MtpN9Q2Wb34Qdk-C7w6AAOy7w,99
44
- wbnews/models/news.py,sha256=yRbOpVG69yssvJPzv9bZJGMoFcb9n2uLaG2mz2j8oxM,5203
44
+ wbnews/models/news.py,sha256=wkBXx9rMVBWelkWeCiaGk5frKjwp2mb1RFqsoGit1Sk,5263
45
45
  wbnews/models/relationships.py,sha256=bcQbRa-ObS9h67pIuIrodD63RnkzbaOaRT4L6ctBoI0,1841
46
46
  wbnews/models/sources.py,sha256=N3-rBg4myeGG_stHvKiNnSoH0yS-LS_Zr_UeKPMBr5s,2629
47
47
  wbnews/models/utils.py,sha256=1JQxV4WxmmFGl7MdVtJoEeao3vnqqVwCi7mhSToaUvM,600
@@ -59,7 +59,7 @@ wbnews/viewsets/display.py,sha256=fwMZLlwxHcNHM4AppwYpYTOicLD_pXaQ4QeFeIl4whk,53
59
59
  wbnews/viewsets/endpoints.py,sha256=2slGDJin_SA2heWsIaMdNTUN46FqZJvusbY1jhAaeZM,1165
60
60
  wbnews/viewsets/menu.py,sha256=XTShfTIykN9t7oclosPfFVb1r6o46QyglEEe1C7QCMk,979
61
61
  wbnews/viewsets/titles.py,sha256=iMyiGBMBpzng8s2ySVLqEOwueHRnAoEuc75dt9nCPjc,1367
62
- wbnews/viewsets/views.py,sha256=SMCDT6bJMQblyqX5cQ7X3qDe0zxTVWh1q7Aqj0fBo2Q,6795
63
- wbnews-1.58.0.dist-info/METADATA,sha256=T94TfFPwmVSRl7Rm8dKxaSAVgnZOCPF-UFwXHe6MSWg,215
64
- wbnews-1.58.0.dist-info/WHEEL,sha256=tkmg4JIqwd9H8mL30xA7crRmoStyCtGp0VWshokd1Jc,105
65
- wbnews-1.58.0.dist-info/RECORD,,
62
+ wbnews/viewsets/views.py,sha256=mdb-Bz3SRFlXI7MDyA2VYLH_oosq1ZRP87YKfrEwITs,6803
63
+ wbnews-1.60.1.dist-info/METADATA,sha256=DlrFUb_zUu81rYqbydoX4ZtGsbPHjW7PAhp6TJ-sJp4,215
64
+ wbnews-1.60.1.dist-info/WHEEL,sha256=aha0VrrYvgDJ3Xxl3db_g_MDIW-ZexDdrc_m-Hk8YY4,105
65
+ wbnews-1.60.1.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: hatchling 1.27.0
2
+ Generator: hatchling 1.28.0
3
3
  Root-Is-Purelib: true
4
4
  Tag: py2-none-any
5
5
  Tag: py3-none-any