Compare commits

15 Commits

Author SHA256 Message Date
0b12940302 Accepting request 1267901 from devel:tools:scm
- Update to 3.3.11:
  * Drop static tuple. This is breaking Python
    3.13 support, Python has made improvements to tuples
    that should reduce the need for this. We're
    also moving performance-critical code to rust
    in the future. (#2102194, Jelmer Vernooij)
  * Fix timezone handling, avoid looking up
    timezone. (#2103478, Jelmer Vernooij)
  * Drop unused ``simple_set`` extension.
    (Jelmer Vernooij)
- Update to 3.3.10:
  * Breezy itself is now hosted on GitHub -
    https://github.com/breezy-team/breezy.
    (Jelmer Vernooij)
  * Bump PyO3 to 0.23. (Jelmer Vernooij)
  * Add support for Python 3.13.
    (Jelmer Vernooij, #2102194)

  - github: Lazily load github pull requests, improving performance.

OBS-URL: https://build.opensuse.org/request/show/1267901
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/breezy?expand=0&rev=16
2025-04-08 15:52:34 +00:00
OBS User unknown
1e34b81b10 [info=b3452ecaaa32f16b5345eaa6e90546981828125c0e3299ceaf3ca80c18cb723e]
OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/breezy?expand=0&rev=44
2025-04-08 12:21:15 +00:00
OBS User unknown
92cc9c94c5 [info=1ae82a9c4a0b142048a41767ce858bd78f937ab4441d211431b6dd493e50caec]
OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/breezy?expand=0&rev=43
2025-04-07 18:13:13 +00:00
OBS User unknown
f702a6936a [info=6dae5044b0eedde48a80f14f6775a3fa662a975c746b28b8266351d08bd6dd31]
OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/breezy?expand=0&rev=42
2025-03-31 07:45:10 +00:00
OBS User unknown
c448f1d63b [info=8cb657453e02f186d39ae96f4c67b1bf7c42186e4e72b3e6cb92e3b391b04763]
OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/breezy?expand=0&rev=41
2025-01-29 11:54:56 +00:00
e8788a0fab Accepting request 1239585 from devel:Factory:git-workflow:staging:mcepl:breezy:1
Fix vendoring in _service && revendor

- Fix packaging bugs (make rpmlint more happy and switch to wheel  workflow)
- Add Debian patches:
  - 03_spurious_test_failure.patch
  - 08_disable_sphinx_epytext.patch
  - 16_generate_ids.patch
- Add bash completion

Signed-off-by: Matěj Cepl <mcepl@cepl.eu>

(🤖: Submission of breezy via #1 by mcepl)

OBS-URL: https://build.opensuse.org/request/show/1239585
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/breezy?expand=0&rev=15
2025-01-23 17:02:09 +00:00
Git SCM Staging
0c580b38d6 [info=397e386ff1c1a9d917933c7f0527dc04d1fe9d9ae55ccd19a363a5ed2e6f5929]
OBS-URL: https://build.opensuse.org/package/show/devel:Factory:git-workflow:staging:mcepl:breezy:1/breezy?expand=0&rev=2
2025-01-22 15:39:05 +00:00
Git SCM Staging
146b7e91da [info=a9ff0135c0f56c5c7a864e100871a195ebe53a89044bd7a28807caef3f7bc0c5]
OBS-URL: https://build.opensuse.org/package/show/devel:Factory:git-workflow:staging:mcepl:breezy:1/breezy?expand=0&rev=1
2025-01-22 13:03:10 +00:00
7190e97339 [info=6dae5044b0eedde48a80f14f6775a3fa662a975c746b28b8266351d08bd6dd31]
OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/breezy?expand=0&rev=40
2025-01-22 12:45:18 +00:00
db44cd56d4 Add URL of the upstream website
OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/breezy?expand=0&rev=39
2025-01-22 12:04:41 +00:00
4954a62cce - Add Debian patches:
- 03_spurious_test_failure.patch
  - 08_disable_sphinx_epytext.patch
  - 16_generate_ids.patch
- Add bash completion

OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/breezy?expand=0&rev=38
2025-01-22 11:14:40 +00:00
a1519751c1 Remove unnecessary commented out text
OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/breezy?expand=0&rev=37
2025-01-22 00:58:23 +00:00
d055935e98 REmove unnecessary backslash
OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/breezy?expand=0&rev=36
2025-01-21 23:40:03 +00:00
2b1ec6aa87 Restore commented out tests
OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/breezy?expand=0&rev=35
2025-01-21 23:39:32 +00:00
069253fcb3 - Fix vendoring in _service && revendor
- Fix packaging bugs (make rpmlint more happy and switch to wheel
  workflow)

OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/breezy?expand=0&rev=34
2025-01-21 23:30:54 +00:00
14 changed files with 172 additions and 39 deletions

View File

@@ -0,0 +1,22 @@
Description: Fix some spurious test failures
Author: Jelmer Vernooij <jelmer@debian.org>
Status: Not forwarded upstream (workaround)
Index: unstable/breezy/tests/test_test_server.py
===================================================================
--- unstable.orig/breezy/tests/test_test_server.py
+++ unstable/breezy/tests/test_test_server.py
@@ -67,7 +67,12 @@ class TCPClient:
return self.sock.sendall(s)
def read(self, bufsize=4096):
- return self.sock.recv(bufsize)
+ try:
+ return self.sock.recv(bufsize)
+ except socket.error as e:
+ if e.errno == errno.ECONNRESET:
+ return b""
+ raise
class TCPConnectionHandler(socketserver.BaseRequestHandler):

View File

@@ -0,0 +1,15 @@
=== modified file 'breezy/doc_generate/conf.py'
---
breezy/doc_generate/conf.py | 1 -
1 file changed, 1 deletion(-)
--- a/breezy/doc_generate/conf.py
+++ b/breezy/doc_generate/conf.py
@@ -24,7 +24,6 @@ extensions = [
"sphinx.ext.ifconfig",
"sphinx.ext.autodoc",
"sphinx.ext.intersphinx",
- "sphinx_epytext",
# 'sphinxcontrib.napoleon', # TODO: for Google docstrings
]

26
16_generate_ids.patch Normal file
View File

@@ -0,0 +1,26 @@
---
breezy/generate_ids.py | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
--- /dev/null
+++ b/breezy/generate_ids.py
@@ -0,0 +1,19 @@
+# Copyright (C) 2007-2011 Canonical Ltd
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+
+from __future__ import absolute_import
+
+from .bzr.generate_ids import *

4
_scmsync.obsinfo Normal file
View File

@@ -0,0 +1,4 @@
mtime: 1744114849
commit: b3452ecaaa32f16b5345eaa6e90546981828125c0e3299ceaf3ca80c18cb723e
url: https://src.opensuse.org/mcepl/breezy
revision: factory

View File

@@ -2,4 +2,9 @@
<service name="cargo_vendor" mode="manual">
<param name="src">breezy-*.tar.gz</param>
</service>
<service name="cargo_vendor" mode="manual">
<param name="src">breezy-*.tar.gz</param>
<param name="cargotoml">lib-rio/Cargo.toml</param>
<param name="tag">lib-rio</param>
</service>
</services>

3
breezy-3.3.11.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:11cb9c5e2fac2038630e863088f047eade4653cbf2b995f732322f6c143bbb3b
size 10301419

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c2588bf217c8a4056987ecf6599f0ad9fb8484285953b2e61905141f43c3d5d8
size 10398251

View File

@@ -1,3 +1,41 @@
-------------------------------------------------------------------
Sun Apr 6 12:56:48 UTC 2025 - Matej Cepl <mcepl@cepl.eu>
- Update to 3.3.11:
* Drop static tuple. This is breaking Python
3.13 support, Python has made improvements to tuples
that should reduce the need for this. We're
also moving performance-critical code to rust
in the future. (#2102194, Jelmer Vernooij)
* Fix timezone handling, avoid looking up
timezone. (#2103478, Jelmer Vernooij)
* Drop unused ``simple_set`` extension.
(Jelmer Vernooij)
- Update to 3.3.10:
* Breezy itself is now hosted on GitHub -
https://github.com/breezy-team/breezy.
(Jelmer Vernooij)
* Bump PyO3 to 0.23. (Jelmer Vernooij)
* Add support for Python 3.13.
(Jelmer Vernooij, #2102194)
-------------------------------------------------------------------
Tue Jan 21 23:29:39 UTC 2025 - Matej Cepl <mcepl@cepl.eu>
- Fix vendoring in _service && revendor
- Fix packaging bugs (make rpmlint more happy and switch to wheel
workflow)
- Add Debian patches:
- 03_spurious_test_failure.patch
- 08_disable_sphinx_epytext.patch
- 16_generate_ids.patch
- Add bash completion
-------------------------------------------------------------------
Thu Nov 7 22:57:37 UTC 2024 - Matej Cepl <mcepl@cepl.eu>
@@ -38,7 +76,7 @@ Mon Jan 23 07:45:54 UTC 2023 - Matej Cepl <mcepl@suse.com>
- Add --recurse-nested argument to 'brz export'.
- Add an ``extra`` for installing PGP dependencies.
- Convert multiple authors to the Co-authored-by field.
- github: Lazily load github pull requests, improving   performance.
- github: Lazily load github pull requests, improving performance.
- github: Return canonical URLs for branches.
- Avoid deprecated distutils.version, ahead of removal.
- Add a docker file.

1
breezy.rpmlintrc Normal file
View File

@@ -0,0 +1 @@
addFilter("python-bytecode-inconsistent-mtime.*\.pyc")

View File

@@ -1,7 +1,7 @@
#
# spec file for package breezy
#
# Copyright (c) 2024 SUSE LLC
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -19,14 +19,25 @@
%define rustflags '-Clink-arg=-Wl,-z,relro,-z,now'
Name: breezy
Version: 3.3.9
Version: 3.3.11
Release: 0
Summary: Distributed version control system with multi-format support
License: GPL-2.0-or-later
# Upstream website https://launchpad.net/brz
URL: https://www.breezy-vcs.org/
Source0: https://files.pythonhosted.org/packages/source/b/breezy/breezy-%{version}.tar.gz
Source98: vendor-lib-rio.tar.xz
Source97: breezy.rpmlintrc
Source98: vendor-lib-rio.tar.zst
Source99: vendor.tar.zst
# PATCH-FIX-UPSTREAM 03_spurious_test_failure.patch mcepl@suse.com
# fix some spurious test failures
Patch1: 03_spurious_test_failure.patch
# PATCH-FIX-UPSTREAM 08_disable_sphinx_epytext.patch mcepl@suse.com
# don't depend on sphinx_epytext
Patch2: 08_disable_sphinx_epytext.patch
# PATCH-FIX-UPSTREAM 16_generate_ids.patch mcepl@suse.com
Patch3: 16_generate_ids.patch
BuildRequires: cargo >= 1.41.0
BuildRequires: fdupes
BuildRequires: python-rpm-macros
@@ -70,6 +81,18 @@ Breezy is a version control system implemented in Python with
multi-format support. Breezy has built-in support for the Git and
Bazaar file formats and network protocols.
%package bash-completion
Summary: Bash completion for breezy
Requires: %{name} = %{version}
Requires: bash-completion
Supplements: (breezy and bash-completion)
BuildArch: noarch
%description bash-completion
Bash shell completions for breezy
%lang_package
%prep
%autosetup -p1 -a 98 -a 99 -n breezy-%{version}
@@ -83,43 +106,37 @@ sed -i '1{\@^#!i[[:blank:]]*%{_bindir}/env python@d}' \
%build
export RUSTFLAGS=%{rustflags}
export CFLAGS="%{optflags} -fno-strict-aliasing"
%python3_build
%python3_pyproject_wheel
# generates brz.1
python3 tools/generate_docs.py man
# generates brz.bash_completion
python3 tools/generate_docs.py bash_completion
%install
export RUSTFLAGS=%{rustflags}
%python3_install
%python3_pyproject_install
# shell completions
install -Dm0644 brz.bash_completion \
%{buildroot}%{_datadir}/bash-completion/completions/brz
%fdupes %{buildroot}%{python3_sitearch}
# install manpage
install -D -m 0644 brz.1 %{buildroot}%{_mandir}/man1/brz.1
install -m 0644 breezy/git/git-remote-bzr.1 %{buildroot}%{_mandir}/man1/git-remote-bzr.1
# backwards compatible symbolic links
ln -s brz %{buildroot}%{_bindir}/bzr
echo ".so man1/brz.1" > %{buildroot}%{_mandir}/man1/bzr.1
%find_lang %{name}
%check
export PYTHONPATH=%{buildroot}%{python3_sitearch}
export LANG=en_US.UTF8
# log_C log_BOGUS - borked with py3.8+ as you can't change encoding
# test_ancient_{ctime,mtime} - broken on aarch64 %%arm ppc ppc64le
# test_distant_{ctime,mtime} - broken on %%arm
# test_plugins lp#1927523
# test_simple_local_git - pulls in forbidden modules with 3.10+
%{buildroot}%{_bindir}/bzr selftest -v --parallel=fork \
-Oselftest.timeout=6000 -x bash_completion \
-x breezy.tests.test_transport.TestSSHConnections.test_bzr_connect_to_bzr_ssh -x test_export_pot \
-x test_log_C -x test_log_BOGUS \
%ifnarch %{ix86} x86_64 ppc64
-x breezy.tests.test__dirstate_helpers.TestPackStat.test_ancient_ctime \
-x breezy.tests.test__dirstate_helpers.TestPackStat.test_ancient_mtime \
%endif
%ifarch %{arm}
-x breezy.tests.test__dirstate_helpers.TestPackStat.test_distant_ctime \
-x breezy.tests.test__dirstate_helpers.TestPackStat.test_distant_mtime \
%endif
-x breezy.tests.test_xml.TestSerializer.test_revision_text_v8 \
-x breezy.tests.test_xml.TestSerializer.test_revision_text_v7 \
-x breezy.tests.test_xml.TestSerializer.test_revision_text_v6 \
-x breezy.tests.test_plugins.TestPlugins \
-x breezy.tests.test_plugins.TestLoadingPlugins.test_plugin_with_error \
-x breezy.tests.test_import_tariff.TestImportTariffs.test_simple_local_git
-Oselftest.timeout=6000
%files
%doc NEWS README.rst
@@ -133,8 +150,10 @@ export LANG=en_US.UTF8
%{_mandir}/man1/brz.1%{?ext_man}
%{_mandir}/man1/bzr.1%{?ext_man}
%{_mandir}/man1/git-remote-bzr.1%{?ext_man}
%dir %{_datadir}/locale/{ckb,fo,ku,my,sco}
%dir %{_datadir}/locale/{ckb,fo,ku,my,sco}/LC_MESSAGES
%{_datadir}/locale/*/*/breezy.mo
%files bash-completion
%{_datadir}/bash-completion/completions/brz
%files lang -f %{name}.lang
%changelog

3
build.specials.obscpio Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:168d105c11c4412f0ba00a4a076b0bd60da114bc316ee329bc749c4a7612dcb3
size 256

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:06fc8a2c0da94c377a45b03de881edc20302235b3061e6c11c644f759e0ea6b5
size 4219756

3
vendor-lib-rio.tar.zst Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f402b3628acfa0c491e7ad279d43c31131bec3b0871000d64fc6bdb35dd2b246
size 2875404

View File

@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c4925395134e538b21094e9414c016cc55273597788f502fcc42bdc5bbf49acd
size 2310060
oid sha256:f402b3628acfa0c491e7ad279d43c31131bec3b0871000d64fc6bdb35dd2b246
size 2875404