Metadata-Version: 2.1
Name: multivolumefile
Version: 0.1.2
Summary: multi volume file wrapper library
Home-page: https://github.com/miurahr/multivolume
Author: Hiroshi Miura
Author-email: miurahr@linux.com
License: LGPL-2.1+
Keywords: multivolume,file
Platform: UNKNOWN
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Environment :: Console
Classifier: License :: OSI Approved :: GNU Lesser General Public License v2 or later (LGPLv2+)
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.6
Description-Content-Type: text/x-rst
Provides-Extra: check
Requires-Dist: mypy (==0.701) ; extra == 'check'
Requires-Dist: mypy-extensions (==0.4.1) ; extra == 'check'
Requires-Dist: check-manifest ; extra == 'check'
Requires-Dist: flake8 ; extra == 'check'
Requires-Dist: readme-renderer ; extra == 'check'
Requires-Dist: pygments ; extra == 'check'
Requires-Dist: isort (>=5.0.3) ; extra == 'check'
Requires-Dist: twine ; extra == 'check'
Provides-Extra: test
Requires-Dist: pytest ; extra == 'test'
Requires-Dist: pytest-cov ; extra == 'test'
Requires-Dist: pyannotate ; extra == 'test'
Requires-Dist: coverage[toml] (>=5.2) ; extra == 'test'
Requires-Dist: coveralls (>=2.1.1) ; extra == 'test'

===============
multivolumefile
===============

.. image:: https://coveralls.io/repos/github/miurahr/multivolume/badge.svg?branch=master
  :target: https://coveralls.io/github/miurahr/multivolume?branch=master

.. image:: https://github.com/miurahr/multivolume/workflows/Run%20Tox%20tests/badge.svg
  :target: https://github.com/miurahr/multivolume/actions

MultiVolumefile is a python library to provide a file-object wrapping multiple files
as virtually like as a single file.

Install
=======

You can install it as usual public libraries, you can use pip command

```
pip install multivolumefile
```

You are also able to add it to your setup.py/cfg as dependency.

Usages
------

- For reading multi-volume files, that has names `archive.7z.0001`, `archive.7z.0002` and so on,
  you can call multivolumefile as follows;

.. code-block::

    with multivolumefile.open('archive.7z', 'rb) as vol:
        data = vol.read(100)
        vol.seek(500)

- For writing multi-volue files, that has names `archive.7z.0001`, `archive.7z.0002` and so on,
  you can call multivolumefile as follows;


.. code-block::

    data = b'abcdefg'
    with multivolumefile.open('archive.7z', 'rb) as vol:
        size = vol.write(data)
        vol.seek(0)

you will see file `archive.7z.001` are written.


Contribution
============

You are welcome to contribute the project, as usual on github projects,
Pull-Request are welcome.

License
=======

Multivolume is licensed under GNU Lesser General Public license version 2.1 or later.

=========
ChangeLog
=========

All notable changes to this project will be documented in this file.

`Unreleased`_
=============

Added
-----

Changed
-------

Fixed
-----

Deprecated
----------

Removed
-------

Security
--------

`v0.1.2`_
=========

Fixed
-----

* Fix append mode (#1)


`v0.1.1`_
=========

Fixed
-----

* Fin NotImplementedError when writing boudning of target files

`v0.1.0`_
=========

* ***API changed***

Added
-----

* Add mode 'x', 'xb' and 'xt'
* Add mode 'a', 'ab' and 'at'
* Support flush()

Changed
-------

* Change API: file argument of 'r' and 'rb' now single basename instead of list of files


`v0.0.5`_
=========

* Support context manager
* Support read functions.

.. History links
.. _Unreleased: https://github.com/miurahr/py7zr/compare/v0.1.2...HEAD
.. _v0.1.2: https://github.com/miurahr/py7zr/compare/v0.1.1...v0.1.2
.. _v0.1.1: https://github.com/miurahr/py7zr/compare/v0.1.0...v0.1.1
.. _v0.1.0: https://github.com/miurahr/py7zr/compare/v0.0.5...v0.1.0
.. _v0.0.5: https://github.com/miurahr/py7zr/compare/v0.0.1...v0.0.5


