From a34261387d1e6cbedbfd3a78d6827d8948d35eca992f66fdae37ba7ecbf4961c Mon Sep 17 00:00:00 2001 From: Matej Cepl Date: Mon, 26 Sep 2022 09:37:34 +0000 Subject: [PATCH] Accepting request 1005875 from home:VortexAcherontic:bottles:Next Hello everyone, the bottles guy again with the final and last (new) dependency for the latest release of bottles: FVS. This package is used by bottles to create snapshots of a Wine bottle for easier rollback in case the something went wrong. Since python-orjson is now in Factory it is time for this to go there too :) I tried to recreate the test cases as done in python-icoextract and python-orjson but I suppose the build fails because FVS does not provide any test files at all. :( All the best, V. OBS-URL: https://build.opensuse.org/request/show/1005875 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-fvs?expand=0&rev=1 --- .gitattributes | 23 +++++++++++++ .gitignore | 1 + FVS-0.3.4.tar.gz | 3 ++ python-fvs.changes | 20 +++++++++++ python-fvs.spec | 84 ++++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 131 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 FVS-0.3.4.tar.gz create mode 100644 python-fvs.changes create mode 100644 python-fvs.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/FVS-0.3.4.tar.gz b/FVS-0.3.4.tar.gz new file mode 100644 index 0000000..b04f438 --- /dev/null +++ b/FVS-0.3.4.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c57bcda81cd7500bc54b8f93c81405cccbc4c54b794209f8316ae27f43372696 +size 102566 diff --git a/python-fvs.changes b/python-fvs.changes new file mode 100644 index 0000000..7a20fee --- /dev/null +++ b/python-fvs.changes @@ -0,0 +1,20 @@ +------------------------------------------------------------------- +Sun Sep 25 11:33:18 UTC 2022 - Imo Hester + +- Ported spec file to use python wheel +- Omit building for Python 3.7 and 3.8 as FVS requires at least Python 3.9 + +------------------------------------------------------------------- +Sat Sep 17 10:13:27 UTC 2022 - Imo Hester + +- Cleanup spec file + +------------------------------------------------------------------- +Tue Aug 9 17:14:02 UTC 2022 - Imo Hester + +- Added orjson to runtime requirements + +------------------------------------------------------------------- +Tue Aug 9 17:09:28 UTC 2022 - Imo Hester + +- Initial release diff --git a/python-fvs.spec b/python-fvs.spec new file mode 100644 index 0000000..1bc7cb2 --- /dev/null +++ b/python-fvs.spec @@ -0,0 +1,84 @@ +# +# spec file for package python-fvs +# +# Copyright (c) 2022 SUSE LLC +# +# 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 https://bugs.opensuse.org/ +# + +%define skip_python2 1 +# FVS requires Python 3.9 or higher +%define skip_python37 1 +%define skip_python38 1 +%{?!python_module:%define python_module() python-%{**} python3-%{**}} +Name: python-fvs +Version: 0.3.4 +Release: 0 +Summary: File Versioning System with hash comparison +License: MIT +URL: https://github.com/mirkobrombin/FVS +Source0: https://github.com/mirkobrombin/FVS/archive/%{version}/FVS-%{version}.tar.gz +BuildRequires: %{python_module orjson} +BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module pip} +BuildRequires: %{python_module wheel} +BuildRequires: python-rpm-macros +BuildRequires: fdupes +Requires: python-orjson +Requires(post): update-alternatives +Requires(postun):update-alternatives +BuildArch: noarch +%python_subpackages + +%description +File Versioning System with hash comparison and data storage to create unlinked states that can be deleted + +Why FVS? + +The main reason for this project is for the purpose of personal knowledge and understanding of the versioning system. The second reason is to make a simple and easy-to-implement versioning system for Bottles. + +There are plenty of other versioning systems out there, but all of these provide features that I wouldn't need in my projects. +The purpose of FVS is to always remain as clear and simple as possible, providing only the functionality of organizing file versions into states, +ie recovery points that take advantage of deduplication to minimize space consumption + +%prep +%setup -q -n FVS-%{version} + +%build +# Remove export CFLAGS=... for noarch packages (unneeded) +# export CFLAGS="%{optflags}" +# %python_build +%pyproject_wheel + +%install +# %python_install +%pyproject_install +%python_clone -a %{buildroot}%{_bindir}/fvs +%python_expand %fdupes %{buildroot}%{$python_sitelib} + +%check +%python_expand $python setup.py test + +%post +%python_install_alternative fvs + +%postun +%python_uninstall_alternative fvs + +%files %{python_files} +%license LICENSE +%doc README.md +# For noarch packages: sitelib +%{python_sitelib}/* +%python_alternative %{_bindir}/fvs + +%changelog