Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BUG: Starting filesystem with boto3 session returns AttributeError #75

Open
IvoMerchiers opened this issue Sep 9, 2020 · 0 comments
Open

Comments

@IvoMerchiers
Copy link

IvoMerchiers commented Sep 9, 2020

If I create a filesystem and provide a boto3 session, we get an AttributeError.

versions

boto3=1.12.0
s3fs=0.5.0

Code

Running

session = boto3.Session(profile_name='xpectrum')
fs = s3fs.S3FileSystem(
    session=session,
)

returns

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-8-30d2bfcd4409> in <module>
      1 session = boto3.Session(profile_name='xpectrum')
      2 fs = s3fs.S3FileSystem(
----> 3     session=session,
      4 )

C:\tools\Anaconda3\envs\xpectrum\lib\site-packages\fsspec\spec.py in __call__(cls, *args, **kwargs)
     53             return cls._cache[token]
     54         else:
---> 55             obj = super().__call__(*args, **kwargs)
     56             # Setting _fs_token here causes some static linters to complain.
     57             obj._fs_token_ = token

C:\tools\Anaconda3\envs\xpectrum\lib\site-packages\s3fs\core.py in __init__(self, anon, key, secret, token, use_ssl, client_kwargs, requester_pays, default_block_size, default_fill_cache, default_cache_type, version_aware, config_kwargs, s3_additional_kwargs, session, username, password, asynchronous, loop, **kwargs)
    183         self.use_ssl = use_ssl
    184         if not asynchronous:
--> 185             self.connect()
    186             weakref.finalize(self, sync, self.loop, self._s3.close)
    187         else:

C:\tools\Anaconda3\envs\xpectrum\lib\site-packages\fsspec\asyn.py in wrapper(*args, **kwargs)
     98     def wrapper(*args, **kwargs):
     99         self = obj or args[0]
--> 100         return maybe_sync(func, self, *args, **kwargs)
    101 
    102     return wrapper

C:\tools\Anaconda3\envs\xpectrum\lib\site-packages\fsspec\asyn.py in maybe_sync(func, self, *args, **kwargs)
     78         if inspect.iscoroutinefunction(func):
     79             # run the awaitable on the loop
---> 80             return sync(loop, func, *args, **kwargs)
     81         else:
     82             # just call the blocking function

C:\tools\Anaconda3\envs\xpectrum\lib\site-packages\fsspec\asyn.py in sync(loop, func, callback_timeout, *args, **kwargs)
     49     if error[0]:
     50         typ, exc, tb = error[0]
---> 51         raise exc.with_traceback(tb)
     52     else:
     53         return result[0]

C:\tools\Anaconda3\envs\xpectrum\lib\site-packages\fsspec\asyn.py in f()
     33             if callback_timeout is not None:
     34                 future = asyncio.wait_for(future, callback_timeout)
---> 35             result[0] = await future
     36         except Exception:
     37             error[0] = sys.exc_info()

C:\tools\Anaconda3\envs\xpectrum\lib\site-packages\s3fs\core.py in _connect(self, kwargs)
    303         if self.session is None:
    304             self.session = aiobotocore.get_session(**self.kwargs)
--> 305         s3creator = self.session.create_client('s3', config=conf, **init_kwargs, **client_kwargs)
    306         self._s3 = await s3creator.__aenter__()
    307         self._kwargs_helper = ParamKwargsHelper(self.s3)

AttributeError: 'Session' object has no attribute 'create_client'```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant