diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 382f741..9b72edf 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -18,9 +18,11 @@ jobs: python-version: 3.9 - name: Build and Upload + env: + PYPI_TOKEN: ${{ secrets.PYPI_TOKEN }} run: | python -m venv venv source venv/bin/activate pip install --upgrade pip twine wheel python setup.py sdist bdist_wheel - twine upload dist/* --verbose --username __token__ --password ${{ secrets.PYPI_TOKEN }} + twine upload dist/* --username __token__ --password "$PYPI_TOKEN" diff --git a/CHANGELOG.md b/CHANGELOG.md index b97a330..a757cdb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## [0.15.1] - 2025-10-28 + +- [Fixed] Replaced deprecated `pkg_resources` with `importlib.metadata` to prevent warnings in Python 3.12+ (https://github.com/omise/omise-python/pull/77) + ## [0.15.0] - 2025-02-06 * [Added] Add date filtering for charge list (https://github.com/omise/omise-python/pull/75) diff --git a/omise/test/test_version.py b/omise/test/test_version.py new file mode 100644 index 0000000..eedc72a --- /dev/null +++ b/omise/test/test_version.py @@ -0,0 +1,13 @@ +import unittest +from unittest import mock + +class VersionTest(unittest.TestCase): + @mock.patch("importlib.metadata.version", side_effect=__import__("importlib").metadata.PackageNotFoundError) + def test_version_package_not_found(self, mock_version): + """Ensure that PackageNotFoundError sets version to 'unknown'.""" + from importlib import reload + import omise.version as omise_version + + # Reload module so the import runs again and triggers our mock + reload(omise_version) + self.assertEqual(omise_version.__VERSION__, "unknown") diff --git a/omise/version.py b/omise/version.py index 3c3e483..d194722 100644 --- a/omise/version.py +++ b/omise/version.py @@ -1,2 +1,5 @@ -import pkg_resources -__VERSION__ = pkg_resources.require('omise')[0].version +from importlib.metadata import version, PackageNotFoundError +try: + __VERSION__ = version("omise") +except PackageNotFoundError: + __VERSION__ = "unknown" \ No newline at end of file diff --git a/setup.py b/setup.py index c018daf..1323fd7 100644 --- a/setup.py +++ b/setup.py @@ -18,7 +18,7 @@ setup(name='omise', long_description=long_description, long_description_content_type='text/markdown', - version='0.15.0', + version='0.15.1', description='Omise Python client', author='Omise', author_email='support@omise.co',