From 5df6628fa6f6b19cbfdf291bb83deadb927faaac Mon Sep 17 00:00:00 2001 From: CoprDistGit Date: Thu, 18 May 2023 07:27:13 +0000 Subject: automatic import of python-splitfile --- .gitignore | 1 + python-splitfile.spec | 228 ++++++++++++++++++++++++++++++++++++++++++++++++++ sources | 1 + 3 files changed, 230 insertions(+) create mode 100644 python-splitfile.spec create mode 100644 sources diff --git a/.gitignore b/.gitignore index e69de29..758d431 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/splitfile-2.0.2.tar.gz diff --git a/python-splitfile.spec b/python-splitfile.spec new file mode 100644 index 0000000..5851e60 --- /dev/null +++ b/python-splitfile.spec @@ -0,0 +1,228 @@ +%global _empty_manifest_terminate_build 0 +Name: python-splitfile +Version: 2.0.2 +Release: 1 +Summary: File like object that splits data across volumes +License: GNU General Public License v3 (GPLv3) +URL: https://github.com/alemigo/splitfile +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/b3/df/c6826152fc532901708a8ec4719c66d36066ee36423799f616bfd96663fe/splitfile-2.0.2.tar.gz +BuildArch: noarch + + +%description +# splitfile + +Python file-like object that facilitates reading and writing of binary data split across multiple volumes (files) of a specified size. Supports random access IO. + +Can be used with modules such as tarfile, zipfile, lzma, etc. enabling read/write of split archives. + +Note: Version 2.0 removes previously integrated encryption and compression options. The +breadth of choice across both suggests they are better handled as a separate layer, +leaving splitfile to simply manage the final IO across volumes. + +### Examples +``` +import splitfile + +with splitfile.open('data.bin', 'wb') as f: + f.write(b'Hello, World!') +``` +``` +import splitfile +import tarfile + +with splitfile.open('data.bin', 'wb', volume_size=1000000) as f: + with tarfile.open(mode='w', fileobj=f) as t: + for file in files: + t.add(file) + +Result: +data.bin +data.bin.2 +data.bin.3 +... +``` +### Documentation + +splitfile.**open**(*filename, mode, volume_size=0, append_to_partial=True*) + +Returns a SplitFile object. + + - *filename* contains a valid file path. Volumes add a suffix (.2, .3, etc.). + - Supported *mode* values are `wb, wb+, ab, ab+, rb, rb+`. + - *volume_size* specifies the max size of a volume in bytes. + - *append_to_partial* set to True appends data written to the end of a previously created file by adding to the last volume if its size is less than *volume_size*. If False, a new volume is always created for writing beyond the end of an existing file. + +### Dependencies + +None + +### Installation + +pip install splitfile + + + + +%package -n python3-splitfile +Summary: File like object that splits data across volumes +Provides: python-splitfile +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-splitfile +# splitfile + +Python file-like object that facilitates reading and writing of binary data split across multiple volumes (files) of a specified size. Supports random access IO. + +Can be used with modules such as tarfile, zipfile, lzma, etc. enabling read/write of split archives. + +Note: Version 2.0 removes previously integrated encryption and compression options. The +breadth of choice across both suggests they are better handled as a separate layer, +leaving splitfile to simply manage the final IO across volumes. + +### Examples +``` +import splitfile + +with splitfile.open('data.bin', 'wb') as f: + f.write(b'Hello, World!') +``` +``` +import splitfile +import tarfile + +with splitfile.open('data.bin', 'wb', volume_size=1000000) as f: + with tarfile.open(mode='w', fileobj=f) as t: + for file in files: + t.add(file) + +Result: +data.bin +data.bin.2 +data.bin.3 +... +``` +### Documentation + +splitfile.**open**(*filename, mode, volume_size=0, append_to_partial=True*) + +Returns a SplitFile object. + + - *filename* contains a valid file path. Volumes add a suffix (.2, .3, etc.). + - Supported *mode* values are `wb, wb+, ab, ab+, rb, rb+`. + - *volume_size* specifies the max size of a volume in bytes. + - *append_to_partial* set to True appends data written to the end of a previously created file by adding to the last volume if its size is less than *volume_size*. If False, a new volume is always created for writing beyond the end of an existing file. + +### Dependencies + +None + +### Installation + +pip install splitfile + + + + +%package help +Summary: Development documents and examples for splitfile +Provides: python3-splitfile-doc +%description help +# splitfile + +Python file-like object that facilitates reading and writing of binary data split across multiple volumes (files) of a specified size. Supports random access IO. + +Can be used with modules such as tarfile, zipfile, lzma, etc. enabling read/write of split archives. + +Note: Version 2.0 removes previously integrated encryption and compression options. The +breadth of choice across both suggests they are better handled as a separate layer, +leaving splitfile to simply manage the final IO across volumes. + +### Examples +``` +import splitfile + +with splitfile.open('data.bin', 'wb') as f: + f.write(b'Hello, World!') +``` +``` +import splitfile +import tarfile + +with splitfile.open('data.bin', 'wb', volume_size=1000000) as f: + with tarfile.open(mode='w', fileobj=f) as t: + for file in files: + t.add(file) + +Result: +data.bin +data.bin.2 +data.bin.3 +... +``` +### Documentation + +splitfile.**open**(*filename, mode, volume_size=0, append_to_partial=True*) + +Returns a SplitFile object. + + - *filename* contains a valid file path. Volumes add a suffix (.2, .3, etc.). + - Supported *mode* values are `wb, wb+, ab, ab+, rb, rb+`. + - *volume_size* specifies the max size of a volume in bytes. + - *append_to_partial* set to True appends data written to the end of a previously created file by adding to the last volume if its size is less than *volume_size*. If False, a new volume is always created for writing beyond the end of an existing file. + +### Dependencies + +None + +### Installation + +pip install splitfile + + + + +%prep +%autosetup -n splitfile-2.0.2 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-splitfile -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Thu May 18 2023 Python_Bot - 2.0.2-1 +- Package Spec generated diff --git a/sources b/sources new file mode 100644 index 0000000..6ccf6ed --- /dev/null +++ b/sources @@ -0,0 +1 @@ +97ae31b15476b92b73aefd36464bbfc2 splitfile-2.0.2.tar.gz -- cgit v1.2.3