You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@arrow.apache.org by "Raúl Cumplido (Jira)" <ji...@apache.org> on 2022/04/19 12:57:00 UTC
[jira] [Created] (ARROW-16233) [Python] [Packaging] test_zoneinfo_tzinfo_to_string fails with zoneinfo._common.ZoneInfoNotFoundError on packaging wheels on Windows
Raúl Cumplido created ARROW-16233:
-------------------------------------
Summary: [Python] [Packaging] test_zoneinfo_tzinfo_to_string fails with zoneinfo._common.ZoneInfoNotFoundError on packaging wheels on Windows
Key: ARROW-16233
URL: https://issues.apache.org/jira/browse/ARROW-16233
Project: Apache Arrow
Issue Type: Bug
Components: Packaging, Python
Reporter: Raúl Cumplido
Fix For: 8.0.0
Currently our nightly-packaging jobs for windows wheels are failing, see:
- wheel-windows-cp310-amd64:
URL: [https://github.com/ursacomputing/crossbow/tree/nightly-packaging-2022-04-18-0-github-wheel-windows-cp310-amd64]
- wheel-windows-cp39-amd64:
URL: [https://github.com/ursacomputing/crossbow/tree/nightly-packaging-2022-04-18-0-github-wheel-windows-cp39-amd64]
The error is from the test:
pyarrow\tests\test_types.py::test_zoneinfo_tzinfo_to_string, see the error logs below:
{code:java}
================================== FAILURES ===================================
_______________________ test_zoneinfo_tzinfo_to_string ________________________key = 'UTC' def load_tzdata(key):
import importlib.resources
components = key.split("/")
package_name = ".".join(["tzdata.zoneinfo"] + components[:-1])
resource_name = components[-1]
try:
> return importlib.resources.open_binary(package_name, resource_name)Python\lib\zoneinfo\_common.py:12:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _package = 'tzdata.zoneinfo', resource = 'UTC' def open_binary(package: Package, resource: Resource) -> BinaryIO:
"""Return a file-like object opened for binary reading of the resource."""
resource = _common.normalize_path(resource)
> package = _common.get_package(package)Python\lib\importlib\resources.py:43:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _package = 'tzdata.zoneinfo' def get_package(package):
# type: (Package) -> types.ModuleType
"""Take a package name or module object and return the module.
Raise an exception if the resolved module is not a package.
"""
> resolved = resolve(package)Python\lib\importlib\_common.py:66:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _cand = 'tzdata.zoneinfo' def resolve(cand):
# type: (Package) -> types.ModuleType
> return cand if isinstance(cand, types.ModuleType) else importlib.import_module(cand)Python\lib\importlib\_common.py:57:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _name = 'tzdata.zoneinfo', package = None def import_module(name, package=None):
"""Import a module.
The 'package' argument is required when performing a relative import. It
specifies the package to use as the anchor point from which to resolve the
relative import to an absolute import.
"""
level = 0
if name.startswith('.'):
if not package:
msg = ("the 'package' argument is required to perform a relative "
"import for {!r}")
raise TypeError(msg.format(name))
for character in name:
if character != '.':
break
level += 1
> return _bootstrap._gcd_import(name[level:], package, level)Python\lib\importlib\__init__.py:126:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _name = 'tzdata.zoneinfo', package = None, level = 0> ???<frozen importlib._bootstrap>:1050:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _name = 'tzdata.zoneinfo', import_ = <function _gcd_import at 0x00000216E11A3490>> ???<frozen importlib._bootstrap>:1027:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _name = 'tzdata.zoneinfo', import_ = <function _gcd_import at 0x00000216E11A3490>> ???<frozen importlib._bootstrap>:992:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _f = <function _gcd_import at 0x00000216E11A3490>, args = ('tzdata',), kwds = {}> ???<frozen importlib._bootstrap>:241:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _name = 'tzdata', package = None, level = 0> ???<frozen importlib._bootstrap>:1050:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _name = 'tzdata', import_ = <function _gcd_import at 0x00000216E11A3490>> ???<frozen importlib._bootstrap>:1027:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _name = 'tzdata', import_ = <function _gcd_import at 0x00000216E11A3490>> ???
E ModuleNotFoundError: No module named 'tzdata'<frozen importlib._bootstrap>:1004: ModuleNotFoundErrorDuring handling of the above exception, another exception occurred: def test_zoneinfo_tzinfo_to_string():
zoneinfo = pytest.importorskip('zoneinfo')
> tz = zoneinfo.ZoneInfo('UTC')Python\lib\site-packages\pyarrow\tests\test_types.py:329:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _key = 'UTC' def load_tzdata(key):
import importlib.resources
components = key.split("/")
package_name = ".".join(["tzdata.zoneinfo"] + components[:-1])
resource_name = components[-1]
try:
return importlib.resources.open_binary(package_name, resource_name)
except (ImportError, FileNotFoundError, UnicodeEncodeError):
# There are three types of exception that can be raised that all amount
# to "we cannot find this key":
#
# ImportError: If package_name doesn't exist (e.g. if tzdata is not
# installed, or if there's an error in the folder name like
# Amrica/New_York)
# FileNotFoundError: If resource_name doesn't exist in the package
# (e.g. Europe/Krasnoy)
# UnicodeEncodeError: If package_name or resource_name are not UTF-8,
# such as keys containing a surrogate character.
> raise ZoneInfoNotFoundError(f"No time zone found with key {key}")
E zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key UTC'
{code}
--
This message was sent by Atlassian Jira
(v8.20.7#820007)