Replace pkg_resources with importlib.resources for Python 3.14 compatibility

This commit is contained in:
wave1martian
2026-03-08 20:24:24 +01:00
parent c89fc132b8
commit 17c304066a
11 changed files with 32 additions and 44 deletions
+4 -6
View File
@@ -1,7 +1,7 @@
import collections
import functools
import operator
import pkg_resources
from importlib.resources import files
import re
import urllib.parse
@@ -719,9 +719,8 @@ def commit_nav_toc(container, toc, lang=None, landmarks=None,
if previous_nav is not None:
root = previous_nav[1]
else:
with open(pkg_resources.
resource_filename('ebook_converter',
'data/new_nav.html')) as fobj:
with open(str(files('ebook_converter')
.joinpath('data/new_nav.html'))) as fobj:
root = container.parse_xhtml(fobj.read())
container.replace(tocname, root)
else:
@@ -874,8 +873,7 @@ def toc_to_html(toc, container, toc_name, title, lang=None):
E = ElementMaker(namespace=const.XHTML_NS, nsmap={None: const.XHTML_NS})
# TODO(gryf): revisit lack of css.
css_f = pkg_resources.resource_filename('ebook_converter',
'data/inline_toc_styles.css')
css_f = str(files('ebook_converter').joinpath('data/inline_toc_styles.css'))
html = E.html(E.head(E.title(title),
E.style(css_f, type='text/css')),
E.body(E.h2(title), E.ul(),
+2 -3
View File
@@ -2,7 +2,7 @@
CSS property propagation class.
"""
import os, re, logging, copy, unicodedata, numbers
import pkg_resources
from importlib.resources import files
from operator import itemgetter
from weakref import WeakKeyDictionary
from xml.dom import SyntaxErr as CSSSyntaxError
@@ -28,8 +28,7 @@ _html_css_stylesheet = None
def html_css_stylesheet():
global _html_css_stylesheet
if _html_css_stylesheet is None:
with open(pkg_resources.resource_filename('ebook_converter',
'data/html.css'), 'rb') as f:
with open(str(files('ebook_converter').joinpath('data/html.css')), 'rb') as f:
html_css = f.read().decode('utf-8')
_html_css_stylesheet = parseString(html_css, validate=False)
return _html_css_stylesheet