- Force
requests
to be>=2.26.0,<3.0
because ofchardet
LGPL licensing (See psf/requests#5797) - Make
chardet
optional because of LGPL licensing. Defaults tocharset_normalizer
ifchardet
is not installed. - Added
readable
method to AbcStream
- Fix bug in resolving bucket for
minio://
schema
- Added
MinioStream
(minio://
) - Added
seekable
method for AbcStream
- Fix system markers for windows so that python-magic is installed correctly on windows machine.
- Loosen the dependencies requirements so that it is more forgiving with older packages (e.g. using an older version of requests).
cytoolz
is now an optional package.
- Change how the buffer is flushed and closed when the stream is GC or when the application exits.
- Fix error when running inside a thread (will not register signal handler if inside a thread). Dev need to ensure stream is flushed and closed properly.
- Added
stats
andunlink
abstract methods toAbcStream
- Added
rmdir
,is_file
,is_dir
methods toAbcStream
- Fix
glob
to correctly match both dir and filename S3Stream.iter_dir()
will now yield streams withStreamInfo
AbcStream.iter_dir_()
now returnIterable[StreamInfo]
instead ofIterable[str]
- Refractored the internals of AbcStream to be cleaner
- Added
exists
to check if a stream points to an existing resource glob
now takes in 1 argument only, which is the patternTempStream.open
,iotoolz.streams.open_stream
, andiotoolz.streams.Stream
now will always return an existingTempStream
(i.e. same uri)
- Fix rollover to disk error
- Fix doc
-
Added path-like methods to AbcStream (i.e. similar to
pathlib.Path
)mkdir
: creates a directory if appropriate for the streamiter_dir
: list streams in the directoryglob
: list streams in the directory with uri that matches the pattern
- Fix typo for HttpStream: schemes -> schemas
- key for S3Stream should not have leading slash
- Fix bug where dynamic mock stream class is improperly created when the required dependencies are not available.
- Add extension
iotoolz.extensions.s3.S3Stream
which is implemented withboto3
.
- Converted sphinx docs to mkdocs for better look and feel.
- Removed the need for a context manager for the iterable.
- Renamed the 2 abstract methods.
-
Initial Release
- Features:
iotoolz.AbcStream
is an abstract class to represent any IO. It follows theopen
very closely.
- Features: