Skip to content

AttributeError:'azure.datalake.store.lib' does not have the attribute 'auth' #825

@SpaciousCoder78

Description

@SpaciousCoder78

Hi,

It appears that azure-datalake-store library has made changes to its library in v1.0.1 which replaces the authentication method.

This error is being caused due to the changes made in azure-datalake-store:Azure/azure-data-lake-store-python#333

papermill has been packaged into Debian a while ago but we received a severe RC bug due to papermill failing to build from source. During the reproduction of the RC bug, we encountered some errors which were related to test_adl.py failing its test.

For the debian version, we've temporarily excluded this test but I believe papermill needs an update from the upstream source to fix these tests.

Full error log from our reproduction:

tests/test_utils.py::test_no_tagged_cell PASSED         [ 99%]
tests/test_utils.py::test_tagged_cell PASSED        [ 99%]
tests/test_utils.py::test_merge_kwargs PASSED       [ 99%]
tests/test_utils.py::test_remove_args PASSED        [ 99%]
tests/test_utils.py::test_retry PASSED        [ 99%]
tests/test_utils.py::test_chdir PASSED        [100%]

=================================== FAILURES 
===================================
_________________________ ADLTest.test_create_adapter 
__________________________
/usr/lib/python3.13/unittest/mock.py:1423: in patched
    with self.decoration_helper(patched,
/usr/lib/python3.13/contextlib.py:141: in __enter__
    return next(self.gen)
           ^^^^^^^^^^^^^^
/usr/lib/python3.13/unittest/mock.py:1405: in decoration_helper
    arg = exit_stack.enter_context(patching)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/usr/lib/python3.13/contextlib.py:530: in enter_context
    result = _enter(cm)
             ^^^^^^^^^^
/usr/lib/python3.13/unittest/mock.py:1497: in __enter__
    original, local = self.get_original()
                      ^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ _ _

self = <unittest.mock._patch object at 0x7f4c41b1a710>

    def get_original(self):
        target = self.getter()
        name = self.attribute

        original = DEFAULT
        local = False

        try:
            original = target.__dict__[name]
        except (AttributeError, KeyError):
            original = getattr(target, name, DEFAULT)
        else:
            local = True

        if name in _builtins and isinstance(target, ModuleType):
            self.create = True

        if not self.create and original is DEFAULT:
>           raise AttributeError(
                "%s does not have the attribute %r" % (target, name)
            )
E           AttributeError: <module 'azure.datalake.store.lib' from 
'/usr/lib/python3/dist-packages/azure/datalake/store/lib.py'> does not 
have the attribute 'auth'

/usr/lib/python3.13/unittest/mock.py:1467: AttributeError
=============================== warnings summary 
===============================
../../../../../../usr/lib/python3/dist-packages/jupyter_client/connect.py:22
  /usr/lib/python3/dist-packages/jupyter_client/connect.py:22: 
DeprecationWarning: Jupyter is migrating its paths to use standard 
platformdirs
  given by the platformdirs library.  To remove this warning and
  see the appropriate new directories, set the environment variable
  `JUPYTER_PLATFORM_DIRS=1` and then run `jupyter --paths`.
  The use of platformdirs will be the default in `jupyter_core` v6
    from jupyter_core.paths import jupyter_data_dir, 
jupyter_runtime_dir, secure_write

tests/test_autosave.py: 43 warnings
tests/test_clientwrap.py: 3 warnings
tests/test_engines.py: 123 warnings
tests/test_execute.py: 524 warnings
/build/reproducible-path/python-papermill-2.6.0/.pybuild/cpython3_3.13/build/papermill/engines.py:125: 
DeprecationWarning: datetime.datetime.utcnow() is deprecated and 
scheduled for removal in a future version. Use timezone-aware objects to 
represent datetimes in UTC: datetime.datetime.now(datetime.UTC).
    return datetime.datetime.utcnow()

tests/test_autosave.py: 2 warnings
tests/test_execute.py: 27 warnings
tests/test_inspect.py: 9 warnings
tests/test_parameterize.py: 6 warnings
/build/reproducible-path/python-papermill-2.6.0/.pybuild/cpython3_3.13/build/papermill/parameterize.py:26: 
DeprecationWarning: datetime.datetime.utcnow() is deprecated and 
scheduled for removal in a future version. Use timezone-aware objects to 
represent datetimes in UTC: datetime.datetime.now(datetime.UTC).
    "current_datetime_utc": datetime.utcnow(),

tests/test_iorw.py::TestPapermillIO::test_read
tests/test_iorw.py::TestPapermillIO::test_write
/build/reproducible-path/python-papermill-2.6.0/.pybuild/cpython3_3.13/build/papermill/iorw.py:149: 
UserWarning: the file is not specified with any extension : path
    warnings.warn(f"the file is not specified with any extension : 
{os.path.basename(path)}")

tests/test_iorw.py::TestPapermillIO::test_read_stdin
tests/test_iorw.py::TestPapermillIO::test_write_stdout
/build/reproducible-path/python-papermill-2.6.0/.pybuild/cpython3_3.13/build/papermill/iorw.py:149: 
UserWarning: the file is not specified with any extension : -
    warnings.warn(f"the file is not specified with any extension : 
{os.path.basename(path)}")

tests/test_s3.py: 40 warnings
  /usr/lib/python3/dist-packages/botocore/auth.py:425: 
DeprecationWarning: datetime.datetime.utcnow() is deprecated and 
scheduled for removal in a future version. Use timezone-aware objects to 
represent datetimes in UTC: datetime.datetime.now(datetime.UTC).
    datetime_now = datetime.datetime.utcnow()

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
=========================== short test summary info 
============================
FAILED tests/test_adl.py::ADLTest::test_create_adapter - AttributeError: 
<mod...
==== 1 failed, 533 passed, 3 skipped, 10 deselected, 782 warnings in 
49.95s ====
E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: 
cd 
/build/reproducible-path/python-papermill-2.6.0/.pybuild/cpython3_3.13/build; 
python3.13 -m pytest --verbose -k "not GCSTest"
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 
3.13 returned exit code 13
make: *** [debian/rules:9: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit 
status 2
--------------------------------------------------------------------------------
Build finished at 2025-10-03T08:13:15Z

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions