From 675ccd544f045e08885b101efe0a281bcffb813fa5a894a44be00228b51d2785 Mon Sep 17 00:00:00 2001 From: Todd R Date: Thu, 24 May 2018 20:56:19 +0000 Subject: [PATCH] Accepting request 612033 from devel:languages:python:misc Python bindings for the Brotli compression library OBS-URL: https://build.opensuse.org/request/show/612033 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Brotli?expand=0&rev=1 --- .gitattributes | 23 ++++++++++++++ .gitignore | 1 + Brotli-1.0.4.zip | 3 ++ python-Brotli.changes | 71 +++++++++++++++++++++++++++++++++++++++++++ python-Brotli.spec | 62 +++++++++++++++++++++++++++++++++++++ 5 files changed, 160 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 Brotli-1.0.4.zip create mode 100644 python-Brotli.changes create mode 100644 python-Brotli.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/Brotli-1.0.4.zip b/Brotli-1.0.4.zip new file mode 100644 index 0000000..13e3664 --- /dev/null +++ b/Brotli-1.0.4.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec5680c8b5c45de0346a2111b73f7d3edc9e3c9c43e5ee8b2787836ccc3d5d32 +size 488848 diff --git a/python-Brotli.changes b/python-Brotli.changes new file mode 100644 index 0000000..20863c0 --- /dev/null +++ b/python-Brotli.changes @@ -0,0 +1,71 @@ +------------------------------------------------------------------- +Thu May 24 17:28:42 UTC 2018 - toddrme2178@gmail.com + +- Update to version 1.0.4 + * fix unaligned access for aarch64-cross-armhf build + * fix aarch64 target detection + * allow CLI to compress with enabled "large window" feature + * add NPOSTFIX / NDIRECT encoder parameters + * automatic NDIRECT/NPOSTFIX tuning (better compression) + * fix "memory leak" in python tests + * fix bug in durchschlag + * fix source file lists (add params.h) + * fix Bazel/MSVC compilator options + * fix "fall though" warnings +- Update to version 1.0.3 + + Key changes: + * new feature: "Large Window Brotli" + * new dictionary generator + + Other changes: + * improved compression ratio: sub-blocks stitching + * improved compression ratio: eliminated floating numbers rounding + * improved compression ratio: make the zopflification aware of NDIRECT, NPOSTFIX + * improve automake build + * improve BrotliEncoderMaxCompressedSize precision + * fix API documentation / typos + * fix code style + * make hashers host-endianness-independent + * Java: added "eager" decoding both to JNI wrapper and pure decoder + * CLI: window size is auto-adjusted + * added dictionaryless compressed dictionary +- Update to version 1.0.2 + + Major changes: + * added Autotools build files + * switched shared library version to libtool scheme + + Minor changes: + * BrotliDictionary members are not const now + * ZopfliNode distance could be up to 128MiB + * fixed API documentation typos + * total_out is always set by decoder + * fixed BROTLI_ENSURE_CAPACITY macro; no-op in preprocessed output + + Other changes: + * fixed scripts for oss-fuzz, test them with Travis + * made Bazel JNI tests less messy + * fixed linter warnings in JS decoder + * fixed permissions of various files + * added Bazel build to Appveyor matrix + * added Sieve dictionary generator +- Update to version 1.0.1 + * updated README.md + * fixed parallel exeuction of CMake "compatibility" tests +- Update to version 1.0.0 + + API changes + * new CLI; bro -> brotli; + man page + * remove "custom dictionary" support + * add ability to side-load brotli RFC dictionary + * add decoder API to avoid ringbuffer reallocation + * PY streaming decompression support + * PY wrapper accepts memview + + New features + * C# decoder (transpiled from Java) + * JS decoder (transpiled from Java) + * JNI wrappers + + Improvements + * speedup Java decoder + * speedup compression of RLE-ish data +- Spec file cleanups + +------------------------------------------------------------------- +Thu May 25 13:31:07 UTC 2017 - toddrme2178@gmail.com + +- Initial version diff --git a/python-Brotli.spec b/python-Brotli.spec new file mode 100644 index 0000000..c2839bd --- /dev/null +++ b/python-Brotli.spec @@ -0,0 +1,62 @@ +# +# spec file for package python-Brotli +# +# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# + + +%{?!python_module:%define python_module() python-%{**} python3-%{**}} +Name: python-Brotli +Version: 1.0.4 +Release: 0 +Summary: Python bindings for the Brotli compression library +License: Apache-2.0 +Group: Development/Languages/Python +Url: https://github.com/google/brotli +Source: https://files.pythonhosted.org/packages/source/B/Brotli/Brotli-%{version}.zip +BuildRequires: %{python_module devel} +BuildRequires: %{python_module setuptools} +BuildRequires: c++_compiler +BuildRequires: fdupes +BuildRequires: python-rpm-macros +BuildRequires: unzip + +%python_subpackages + +%description +Brotli is a generic-purpose lossless compression algorithm that compresses data +using a combination of a modern variant of the LZ77 algorithm, Huffman coding +and 2nd order context modeling, with a compression ratio comparable to the best +currently available general-purpose compression methods. It is similar in speed +with deflate but offers more dense compression. + +The specification of the Brotli Compressed Data Format is defined in RFC 7932. + +%prep +%setup -q -n Brotli-%{version} + +%build +export CFLAGS="%{optflags}" +%python_build + +%install +%python_install +%python_expand %fdupes %{buildroot}%{$python_sitearch} + +%files %{python_files} +%doc README.md +%license LICENSE +%{python_sitearch}/* + +%changelog