From a1d0c84f60415ec8084bc129c1d15672bb285212 Mon Sep 17 00:00:00 2001 From: Emmanuel Raviart Date: Mon, 19 Dec 2022 15:36:20 +0100 Subject: [PATCH 1/6] Remove usage of importlib_metadata --- .../taxbenefitsystems/tax_benefit_system.py | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/openfisca_core/taxbenefitsystems/tax_benefit_system.py b/openfisca_core/taxbenefitsystems/tax_benefit_system.py index 9a8831269d..f05224f7aa 100644 --- a/openfisca_core/taxbenefitsystems/tax_benefit_system.py +++ b/openfisca_core/taxbenefitsystems/tax_benefit_system.py @@ -6,10 +6,10 @@ import functools import glob import importlib -import importlib_metadata import inspect import logging import os +import pkg_resources import sys import traceback import typing @@ -457,9 +457,8 @@ def get_package_metadata(self) -> Dict[str, str]: package_name = module.__package__.split('.')[0] try: - distribution = importlib_metadata.distribution(package_name) - - except importlib_metadata.PackageNotFoundError: + distribution = pkg_resources.get_distribution(package_name) + except pkg_resources.DistributionNotFound: return fallback_metadata source_file = inspect.getsourcefile(module) @@ -472,10 +471,17 @@ def get_package_metadata(self) -> Dict[str, str]: metadata = distribution.metadata + home_page_metadatas = [ + metadata.split(':', 1)[1].strip(' ') + for metadata in distribution._get_metadata(distribution.PKG_INFO) + if 'Home-page' in metadata + ] + repository_url = home_page_metadatas[0] if home_page_metadatas else '' + return { - 'name': metadata["Name"].lower(), + 'name': metadata['Name'].lower(), 'version': distribution.version, - 'repository_url': metadata["Home-page"], + 'repository_url': repository_url, 'location': location, } From 9d53d33646581f9a0960e73c667c2c039891e29f Mon Sep 17 00:00:00 2001 From: Emmanuel Raviart Date: Mon, 19 Dec 2022 15:42:16 +0100 Subject: [PATCH 2/6] Re-use distribution.key instead of metadata['Name'] --- openfisca_core/taxbenefitsystems/tax_benefit_system.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/openfisca_core/taxbenefitsystems/tax_benefit_system.py b/openfisca_core/taxbenefitsystems/tax_benefit_system.py index f05224f7aa..8877559914 100644 --- a/openfisca_core/taxbenefitsystems/tax_benefit_system.py +++ b/openfisca_core/taxbenefitsystems/tax_benefit_system.py @@ -469,8 +469,6 @@ def get_package_metadata(self) -> Dict[str, str]: else: location = "" - metadata = distribution.metadata - home_page_metadatas = [ metadata.split(':', 1)[1].strip(' ') for metadata in distribution._get_metadata(distribution.PKG_INFO) @@ -479,7 +477,7 @@ def get_package_metadata(self) -> Dict[str, str]: repository_url = home_page_metadatas[0] if home_page_metadatas else '' return { - 'name': metadata['Name'].lower(), + 'name': distribution.key, 'version': distribution.version, 'repository_url': repository_url, 'location': location, From 40bbf4634043cc29a713efe48912e26f69ed72c0 Mon Sep 17 00:00:00 2001 From: Emmanuel Raviart Date: Mon, 19 Dec 2022 14:52:09 +0000 Subject: [PATCH 3/6] Ignore linting error --- openfisca_core/taxbenefitsystems/tax_benefit_system.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openfisca_core/taxbenefitsystems/tax_benefit_system.py b/openfisca_core/taxbenefitsystems/tax_benefit_system.py index 8877559914..10b22f68c4 100644 --- a/openfisca_core/taxbenefitsystems/tax_benefit_system.py +++ b/openfisca_core/taxbenefitsystems/tax_benefit_system.py @@ -471,7 +471,7 @@ def get_package_metadata(self) -> Dict[str, str]: home_page_metadatas = [ metadata.split(':', 1)[1].strip(' ') - for metadata in distribution._get_metadata(distribution.PKG_INFO) + for metadata in distribution._get_metadata(distribution.PKG_INFO) # type: ignore if 'Home-page' in metadata ] repository_url = home_page_metadatas[0] if home_page_metadatas else '' From 9c2e120d963932033d76e5c4c642509a08775da3 Mon Sep 17 00:00:00 2001 From: eraviart Date: Mon, 19 Dec 2022 16:06:11 +0100 Subject: [PATCH 4/6] Bump version --- CHANGELOG.md | 6 ++++++ setup.py | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 601cdab211..928c779e37 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog +### 38.0.1 [#1178](https://github.com/openfisca/openfisca-core/pull/1178) + +#### Technical changes + +- Remove use of `importlib_metadata`. + # 38.0.0 [#989](https://github.com/openfisca/openfisca-core/pull/989) #### New Features diff --git a/setup.py b/setup.py index 2543121ac8..cb156b113d 100644 --- a/setup.py +++ b/setup.py @@ -63,7 +63,7 @@ setup( name = 'OpenFisca-Core', - version = '38.0.0', + version = '38.0.1', author = 'OpenFisca Team', author_email = 'contact@openfisca.org', classifiers = [ From 1613dbda2a457f8306b69f0bef5988baadb2c3dc Mon Sep 17 00:00:00 2001 From: eraviart Date: Mon, 19 Dec 2022 16:14:27 +0100 Subject: [PATCH 5/6] Skip version 38.0.1 that is no more available!?! --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index cb156b113d..a05a4ebed9 100644 --- a/setup.py +++ b/setup.py @@ -63,7 +63,7 @@ setup( name = 'OpenFisca-Core', - version = '38.0.1', + version = '38.0.2', author = 'OpenFisca Team', author_email = 'contact@openfisca.org', classifiers = [ From 2eac703a56492f04a1c2a759ee3648db24f5bb97 Mon Sep 17 00:00:00 2001 From: eraviart Date: Mon, 19 Dec 2022 16:15:12 +0100 Subject: [PATCH 6/6] Skip version 38.0.1 that is no more available!?! --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 928c779e37..be50852276 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ # Changelog -### 38.0.1 [#1178](https://github.com/openfisca/openfisca-core/pull/1178) +### 38.0.2 [#1178](https://github.com/openfisca/openfisca-core/pull/1178) #### Technical changes