From 3da8fab14595c77bb90faadb6e874f1fccd1c274 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9rome=20Eertmans?= Date: Thu, 9 Mar 2023 13:41:25 +0100 Subject: [PATCH] chore(deps): remove pkg_resources in favor to importlib (#153) * feat(convert): PowerPoint conversion You can now convert your presentations to PowerPoint * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * chore(convert): autoplay media * chore(deps): remove pkg_resources in favor to importlib This is what pkg_resources' team recommends * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * fix(deps): if case for Python 3.8 (<3.9) * fix(convert): use correct pkg path * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * fix(deps): remove duplicate deps * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * fix(lib): add __init__.py --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- manim_slides/convert.py | 12 ++++++++---- manim_slides/data/__init__.py | 0 2 files changed, 8 insertions(+), 4 deletions(-) create mode 100644 manim_slides/data/__init__.py diff --git a/manim_slides/convert.py b/manim_slides/convert.py index b046a6d..6fd785e 100644 --- a/manim_slides/convert.py +++ b/manim_slides/convert.py @@ -1,21 +1,23 @@ import os import platform import subprocess +import sys import tempfile import webbrowser from enum import Enum +from importlib import resources from pathlib import Path from typing import Any, Callable, Dict, Generator, List, Optional, Type, Union import click import cv2 -import pkg_resources import pptx from click import Context, Parameter from lxml import etree from pydantic import BaseModel, FilePath, PositiveInt, ValidationError from tqdm import tqdm +from . import data from .commons import folder_path_option, verbosity_option from .config import PresentationConfig from .logger import logger @@ -328,9 +330,11 @@ class RevealJS(Converter): if isinstance(self.template, str): with open(self.template, "r") as f: return f.read() - return pkg_resources.resource_string( - __name__, "data/revealjs_template.html" - ).decode() + + if sys.version_info < (3, 9): + return resources.read_text(data, "revealjs_template.html") + + return resources.files(data).joinpath("revealjs_template.html").read_text() def open(self, file: Path) -> bool: return webbrowser.open(file.absolute().as_uri()) diff --git a/manim_slides/data/__init__.py b/manim_slides/data/__init__.py new file mode 100644 index 0000000..e69de29