Skip to content

Commit

Permalink
Merge pull request #98 from edly-io/faisal/pkg_resource_update
Browse files Browse the repository at this point in the history
RecommenderXBlock: Drop py3.8 support | Replace pkg_resources lib with importlib.resources
  • Loading branch information
feanil authored Oct 25, 2024
2 parents 707f5c1 + f54512a commit 26cad98
Show file tree
Hide file tree
Showing 10 changed files with 65 additions and 89 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
matrix:
os:
- ubuntu-latest
python-version: ['3.8', '3.11']
python-version: ['3.11', '3.12']
steps:
- uses: actions/checkout@v1
- name: setup python
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pypi-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
- name: setup python
uses: actions/setup-python@v2
with:
python-version: 3.8
python-version: 3.11

- name: Install pip
run: pip install -r requirements/pip.txt
Expand Down
2 changes: 1 addition & 1 deletion recommender/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@
# which is not loaded when running `manage.py` commands (which is used by `make compile_translations`)
# from .recommender import RecommenderXBlock

__version__ = '2.2.1'
__version__ = '3.0.0'
7 changes: 2 additions & 5 deletions recommender/recommender.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
import hashlib
import simplejson as json
import lxml.etree as etree
import pkg_resources
import re

from copy import deepcopy
Expand Down Expand Up @@ -55,8 +54,7 @@ def emit(param1, param2):

def load(path):
"""Handy helper for getting resources from our kit."""
data = pkg_resources.resource_string(__name__, path)
return data.decode("utf8")
return resource_loader.load_unicode(path)


def stem_url(url):
Expand Down Expand Up @@ -123,8 +121,7 @@ def resource_string(self, path):
"""
Handy helper for getting static file resources from our Python package.
"""
data = pkg_resources.resource_string(__name__, path)
return data.decode("utf8")
return resource_loader.load_unicode(path)


@XBlock.needs('fs')
Expand Down
34 changes: 16 additions & 18 deletions requirements/base.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# This file is autogenerated by pip-compile with Python 3.8
# This file is autogenerated by pip-compile with Python 3.11
# by the following command:
#
# make upgrade
Expand All @@ -8,47 +8,45 @@ appdirs==1.4.4
# via fs
asgiref==3.8.1
# via django
backports-zoneinfo==0.2.1 ; python_version < "3.9"
# via
# -c requirements/constraints.txt
# django
bleach==6.1.0
# via -r requirements/base.in
django==4.2.11
django==4.2.16
# via
# -c requirements/common_constraints.txt
# edx-i18n-tools
edx-i18n-tools==1.3.0
edx-i18n-tools==1.6.3
# via -r requirements/base.in
fs==2.4.16
# via -r requirements/base.in
lxml==5.1.0
# via edx-i18n-tools
mako==1.3.2
lxml[html-clean,html_clean]==5.3.0
# via
# edx-i18n-tools
# lxml-html-clean
lxml-html-clean==0.2.2
# via lxml
mako==1.3.5
# via -r requirements/base.in
markupsafe==2.1.5
# via mako
path==16.10.0
path==16.16.0
# via edx-i18n-tools
polib==1.2.0
# via edx-i18n-tools
pyyaml==6.0.1
pyyaml==6.0.2
# via edx-i18n-tools
simplejson==3.19.2
simplejson==3.19.3
# via -r requirements/base.in
six==1.16.0
# via
# bleach
# fs
sqlparse==0.4.4
sqlparse==0.5.1
# via django
typing-extensions==4.10.0
# via asgiref
web-fragments==2.1.0
web-fragments==2.2.0
# via -r requirements/base.in
webencodings==0.5.1
# via bleach
webob==1.8.7
webob==1.8.8
# via -r requirements/base.in

# The following packages are considered to be unsafe in a requirements file:
Expand Down
38 changes: 17 additions & 21 deletions requirements/ci.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# This file is autogenerated by pip-compile with Python 3.8
# This file is autogenerated by pip-compile with Python 3.11
# by the following command:
#
# make upgrade
Expand All @@ -12,68 +12,64 @@ asgiref==3.8.1
# via
# -r requirements/test.txt
# django
backports-zoneinfo==0.2.1 ; python_version < "3.9"
# via
# -c requirements/constraints.txt
# -r requirements/test.txt
# django
bleach==6.1.0
# via -r requirements/test.txt
django==4.2.11
django==4.2.16
# via
# -c requirements/common_constraints.txt
# -r requirements/test.txt
# edx-i18n-tools
edx-i18n-tools==1.3.0
edx-i18n-tools==1.6.3
# via -r requirements/test.txt
fs==2.4.16
# via -r requirements/test.txt
lxml==5.1.0
lxml[html-clean]==5.3.0
# via
# -r requirements/test.txt
# edx-i18n-tools
mako==1.3.2
# lxml-html-clean
lxml-html-clean==0.2.2
# via
# -r requirements/test.txt
# lxml
mako==1.3.5
# via -r requirements/test.txt
markupsafe==2.1.5
# via
# -r requirements/test.txt
# mako
path==16.10.0
path==16.16.0
# via
# -r requirements/test.txt
# edx-i18n-tools
polib==1.2.0
# via
# -r requirements/test.txt
# edx-i18n-tools
pycodestyle==2.11.1
pycodestyle==2.12.1
# via -r requirements/test.txt
pyyaml==6.0.1
pyyaml==6.0.2
# via
# -r requirements/test.txt
# edx-i18n-tools
simplejson==3.19.2
simplejson==3.19.3
# via -r requirements/test.txt
six==1.16.0
# via
# -r requirements/test.txt
# bleach
# fs
sqlparse==0.4.4
sqlparse==0.5.1
# via
# -r requirements/test.txt
# django
typing-extensions==4.10.0
# via
# -r requirements/test.txt
# asgiref
web-fragments==2.1.0
web-fragments==2.2.0
# via -r requirements/test.txt
webencodings==0.5.1
# via
# -r requirements/test.txt
# bleach
webob==1.8.7
webob==1.8.8
# via -r requirements/test.txt

# The following packages are considered to be unsafe in a requirements file:
Expand Down
8 changes: 4 additions & 4 deletions requirements/pip.txt
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
#
# This file is autogenerated by pip-compile with Python 3.8
# This file is autogenerated by pip-compile with Python 3.11
# by the following command:
#
# make upgrade
#
wheel==0.43.0
wheel==0.44.0
# via -r requirements/pip.in

# The following packages are considered to be unsafe in a requirements file:
pip==24.0
pip==24.2
# via -r requirements/pip.in
setuptools==69.2.0
setuptools==74.1.2
# via -r requirements/pip.in
21 changes: 5 additions & 16 deletions requirements/pip_tools.txt
Original file line number Diff line number Diff line change
@@ -1,34 +1,23 @@
#
# This file is autogenerated by pip-compile with Python 3.8
# This file is autogenerated by pip-compile with Python 3.11
# by the following command:
#
# make upgrade
#
build==1.1.1
build==1.2.2
# via pip-tools
click==8.1.7
# via pip-tools
importlib-metadata==6.11.0
# via
# -c requirements/common_constraints.txt
# build
packaging==24.0
packaging==24.1
# via build
pip-tools==7.4.1
# via -r requirements/pip_tools.in
pyproject-hooks==1.0.0
# via
# build
# pip-tools
tomli==2.0.1
pyproject-hooks==1.1.0
# via
# build
# pip-tools
# pyproject-hooks
wheel==0.43.0
wheel==0.44.0
# via pip-tools
zipp==3.18.1
# via importlib-metadata

# The following packages are considered to be unsafe in a requirements file:
# pip
Expand Down
38 changes: 17 additions & 21 deletions requirements/test.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# This file is autogenerated by pip-compile with Python 3.8
# This file is autogenerated by pip-compile with Python 3.11
# by the following command:
#
# make upgrade
Expand All @@ -12,68 +12,64 @@ asgiref==3.8.1
# via
# -r requirements/base.txt
# django
backports-zoneinfo==0.2.1 ; python_version < "3.9"
# via
# -c requirements/constraints.txt
# -r requirements/base.txt
# django
bleach==6.1.0
# via -r requirements/base.txt
django==4.2.11
django==4.2.16
# via
# -c requirements/common_constraints.txt
# -r requirements/base.txt
# edx-i18n-tools
edx-i18n-tools==1.3.0
edx-i18n-tools==1.6.3
# via -r requirements/base.txt
fs==2.4.16
# via -r requirements/base.txt
lxml==5.1.0
lxml[html-clean]==5.3.0
# via
# -r requirements/base.txt
# edx-i18n-tools
mako==1.3.2
# lxml-html-clean
lxml-html-clean==0.2.2
# via
# -r requirements/base.txt
# lxml
mako==1.3.5
# via -r requirements/base.txt
markupsafe==2.1.5
# via
# -r requirements/base.txt
# mako
path==16.10.0
path==16.16.0
# via
# -r requirements/base.txt
# edx-i18n-tools
polib==1.2.0
# via
# -r requirements/base.txt
# edx-i18n-tools
pycodestyle==2.11.1
pycodestyle==2.12.1
# via -r requirements/test.in
pyyaml==6.0.1
pyyaml==6.0.2
# via
# -r requirements/base.txt
# edx-i18n-tools
simplejson==3.19.2
simplejson==3.19.3
# via -r requirements/base.txt
six==1.16.0
# via
# -r requirements/base.txt
# bleach
# fs
sqlparse==0.4.4
sqlparse==0.5.1
# via
# -r requirements/base.txt
# django
typing-extensions==4.10.0
# via
# -r requirements/base.txt
# asgiref
web-fragments==2.1.0
web-fragments==2.2.0
# via -r requirements/base.txt
webencodings==0.5.1
# via
# -r requirements/base.txt
# bleach
webob==1.8.7
webob==1.8.8
# via -r requirements/base.txt

# The following packages are considered to be unsafe in a requirements file:
Expand Down
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ def get_version(file_path):
"License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)",
"Natural Language :: English",
"Programming Language :: Python :: 3",
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.11',
'Programming Language :: Python :: 3.12',
],
)

0 comments on commit 26cad98

Please sign in to comment.