Accepting request 1171838 from home:AndreasStieger:branches:devel:languages:python
fix tests with git 2.45.0 (boo#1223839) OBS-URL: https://build.opensuse.org/request/show/1171838 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-setuptools_scm?expand=0&rev=81
This commit is contained in:
parent
36be66b30a
commit
060e2b676b
@ -1,3 +1,9 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri May 3 17:19:17 UTC 2024 - Andreas Stieger <andreas.stieger@gmx.de>
|
||||
|
||||
- fix tests with git 2.45.0 (boo#1223839)
|
||||
adding setuptools-scm-issue1038-git-2-45-0.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jan 5 15:56:43 UTC 2024 - Ben Greiner <code@bnavigator.de>
|
||||
|
||||
|
@ -1,7 +1,8 @@
|
||||
#
|
||||
# spec file
|
||||
# spec file for package python-setuptools_scm
|
||||
#
|
||||
# Copyright (c) 2024 SUSE LLC
|
||||
# Copyright (c) 2024 Andreas Stieger <Andreas.Stieger@gmx.de>
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@ -24,17 +25,18 @@
|
||||
%define psuffix %{nil}
|
||||
%bcond_with test
|
||||
%endif
|
||||
|
||||
%{?sle15_python_module_pythons}
|
||||
Name: python-setuptools_scm%{psuffix}
|
||||
Version: 8.0.4
|
||||
Release: 0
|
||||
Summary: Python setuptools handler for SCM tags
|
||||
License: MIT
|
||||
URL: https://github.com/pypa/setuptools_scm
|
||||
URL: https://github.com/pypa/setuptools_scm/
|
||||
Source: https://files.pythonhosted.org/packages/source/s/setuptools-scm/setuptools-scm-%{version}.tar.gz
|
||||
# PATCH-FEATURE-OPENSUSE setuptools-scm-issue953-nowarn.patch gh#pypa/setuptools_scm#953 -- don't warn if setuptools_scm is present but not directly used
|
||||
Patch0: setuptools-scm-issue953-nowarn.patch
|
||||
# PATCH-FIX-UPSTREAM setuptools-scm-issue1038-git-2-45-0.patch gp#pypa/setuptools_scm#1038 -- fix build with git 2.45.0
|
||||
Patch1: setuptools-scm-issue1038-git-2-45-0.patch
|
||||
BuildRequires: %{python_module base >= 3.8}
|
||||
BuildRequires: %{python_module pip}
|
||||
BuildRequires: %{python_module setuptools >= 61}
|
||||
@ -45,10 +47,10 @@ BuildRequires: python-rpm-macros
|
||||
Requires: python-packaging >= 20.0
|
||||
Requires: python-setuptools
|
||||
Requires: python-typing-extensions
|
||||
BuildArch: noarch
|
||||
%if 0%{?python_version_nodots} < 311
|
||||
Requires: python-tomli >= 1
|
||||
%endif
|
||||
BuildArch: noarch
|
||||
%if %{with test}
|
||||
# Testing requirements
|
||||
BuildRequires: %{python_module build}
|
||||
|
48
setuptools-scm-issue1038-git-2-45-0.patch
Normal file
48
setuptools-scm-issue1038-git-2-45-0.patch
Normal file
@ -0,0 +1,48 @@
|
||||
Index: setuptools-scm-8.0.4/testing/test_git.py
|
||||
===================================================================
|
||||
--- setuptools-scm-8.0.4.orig/testing/test_git.py
|
||||
+++ setuptools-scm-8.0.4/testing/test_git.py
|
||||
@@ -494,6 +494,22 @@ def test_git_getdate_badgit(
|
||||
assert git_wd.get_head_date() is None
|
||||
|
||||
|
||||
+def test_git_getdate_git_2_45_0_plus(
|
||||
+ wd: WorkDir, caplog: pytest.LogCaptureFixture, monkeypatch: pytest.MonkeyPatch
|
||||
+) -> None:
|
||||
+ wd.commit_testfile()
|
||||
+ git_wd = git.GitWorkdir(wd.cwd)
|
||||
+ fake_date_result = CompletedProcess(
|
||||
+ args=[], stdout="2024-04-30T22:33:10Z", stderr="", returncode=0
|
||||
+ )
|
||||
+ with patch.object(
|
||||
+ git,
|
||||
+ "run_git",
|
||||
+ Mock(return_value=fake_date_result),
|
||||
+ ):
|
||||
+ assert git_wd.get_head_date() == date(2024, 4, 30)
|
||||
+
|
||||
+
|
||||
@pytest.fixture()
|
||||
def signed_commit_wd(monkeypatch: pytest.MonkeyPatch, wd: WorkDir) -> WorkDir:
|
||||
if not has_command("gpg", args=["--version"], warn=False):
|
||||
Index: setuptools-scm-8.0.4/src/setuptools_scm/git.py
|
||||
===================================================================
|
||||
--- setuptools-scm-8.0.4.orig/src/setuptools_scm/git.py
|
||||
+++ setuptools-scm-8.0.4/src/setuptools_scm/git.py
|
||||
@@ -5,6 +5,7 @@ import logging
|
||||
import os
|
||||
import re
|
||||
import shlex
|
||||
+import sys
|
||||
import warnings
|
||||
from datetime import date
|
||||
from datetime import datetime
|
||||
@@ -118,6 +119,8 @@ class GitWorkdir(Workdir):
|
||||
if "%c" in timestamp_text:
|
||||
log.warning("git too old -> timestamp is %r", timestamp_text)
|
||||
return None
|
||||
+ if sys.version_info < (3, 11) and timestamp_text.endswith("Z"):
|
||||
+ timestamp_text = timestamp_text[:-1] + "+00:00"
|
||||
return datetime.fromisoformat(timestamp_text).date()
|
||||
|
||||
res = run_git(
|
Loading…
Reference in New Issue
Block a user