From b51abc82790e51f6ba95359d806a3d52d3c43326 Mon Sep 17 00:00:00 2001 From: IRBorisov <8611739+IRBorisov@users.noreply.github.com> Date: Tue, 26 Mar 2024 09:32:53 +0300 Subject: [PATCH] Update pymorphy to use newer version also update dependencies. Prepare to move to python 3.12 --- README.md | 3 ++- rsconcept/backend/apps/rsform/urls.py | 4 ++-- rsconcept/backend/cctext/rumodel.py | 4 ++-- rsconcept/backend/cctext/ruparser.py | 4 ++-- rsconcept/backend/mypy.ini | 2 +- rsconcept/backend/requirements.txt | 10 ++++------ rsconcept/backend/requirements_dev.txt | 4 +--- 7 files changed, 14 insertions(+), 17 deletions(-) diff --git a/README.md b/README.md index bab7bd83..98e11f0d 100644 --- a/README.md +++ b/README.md @@ -85,7 +85,8 @@ This readme file is used mostly to document project dependencies - gunicorn - coreapi - psycopg2-binary - - pymorphy2 + - pymorphy3 + - pymorphy3-dicts-ru - razdel diff --git a/rsconcept/backend/apps/rsform/urls.py b/rsconcept/backend/apps/rsform/urls.py index 71b8067f..c674e2e2 100644 --- a/rsconcept/backend/apps/rsform/urls.py +++ b/rsconcept/backend/apps/rsform/urls.py @@ -4,8 +4,8 @@ from rest_framework import routers from . import views library_router = routers.SimpleRouter(trailing_slash=False) -library_router.register('library', views.LibraryViewSet) -library_router.register('rsforms', views.RSFormViewSet) +library_router.register('library', views.LibraryViewSet, 'Library') +library_router.register('rsforms', views.RSFormViewSet, 'RSForm') urlpatterns = [ path('library/active', views.LibraryActiveView.as_view(), name='library'), diff --git a/rsconcept/backend/cctext/rumodel.py b/rsconcept/backend/cctext/rumodel.py index 3b88304b..8f5b4ccb 100644 --- a/rsconcept/backend/cctext/rumodel.py +++ b/rsconcept/backend/cctext/rumodel.py @@ -3,8 +3,8 @@ from __future__ import annotations from enum import Enum, unique from typing import Iterable, Optional -from pymorphy2 import MorphAnalyzer -from pymorphy2.tagset import OpencorporaTag as WordTag +from pymorphy3 import MorphAnalyzer +from pymorphy3.tagset import OpencorporaTag as WordTag # ''' Morphology parser. ''' morpho = MorphAnalyzer() diff --git a/rsconcept/backend/cctext/ruparser.py b/rsconcept/backend/cctext/ruparser.py index f0d8d64c..b752537e 100644 --- a/rsconcept/backend/cctext/ruparser.py +++ b/rsconcept/backend/cctext/ruparser.py @@ -1,9 +1,9 @@ -''' Parsing russian language using pymorphy2 and natasha libraries. ''' +''' Parsing russian language using pymorphy3 and natasha libraries. ''' from __future__ import annotations from typing import Optional from razdel.substring import Substring as Segment -from pymorphy2.analyzer import Parse as WordParse +from pymorphy3.analyzer import Parse as WordParse from .syntax import RuSyntax, Capitalization from .rumodel import SemanticRole, Morphology, WordTag, morpho, Grammemes diff --git a/rsconcept/backend/mypy.ini b/rsconcept/backend/mypy.ini index f3e51989..b07d4e7b 100644 --- a/rsconcept/backend/mypy.ini +++ b/rsconcept/backend/mypy.ini @@ -19,5 +19,5 @@ ignore_missing_imports = True [mypy-razdel.*] ignore_missing_imports = True -[mypy-pymorphy2.*] +[mypy-pymorphy3.*] ignore_missing_imports = True \ No newline at end of file diff --git a/rsconcept/backend/requirements.txt b/rsconcept/backend/requirements.txt index 73999e10..1def7e31 100644 --- a/rsconcept/backend/requirements.txt +++ b/rsconcept/backend/requirements.txt @@ -1,13 +1,11 @@ tzdata==2024.1 -Django==4.2.10 -djangorestframework==3.14.0 +Django==4.2.11 +djangorestframework==3.15.1 django-cors-headers==4.3.1 -django-filter==23.5 +django-filter==24.1 drf-spectacular==0.27.1 coreapi==2.3.3 -pymorphy2==0.9.1 -pymorphy2-dicts-ru==2.4.417127.4579844 -pymorphy2-dicts-uk==2.4.1.1.1460299261 +pymorphy3==2.0.1 razdel==0.5.0 django-rest-passwordreset==1.4.0 diff --git a/rsconcept/backend/requirements_dev.txt b/rsconcept/backend/requirements_dev.txt index d61f23d6..0ec3948d 100644 --- a/rsconcept/backend/requirements_dev.txt +++ b/rsconcept/backend/requirements_dev.txt @@ -5,9 +5,7 @@ django-cors-headers django-filter drf-spectacular coreapi -pymorphy2 -pymorphy2-dicts-ru -pymorphy2-dicts-uk +pymorphy3 razdel mypy