openSUSE Commits
Threads by month
- ----- 2024 -----
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
November 2023
- 1 participants
- 1690 discussions
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-azure-mgmt-chaos for openSUSE:Factory checked in at 2023-11-26 19:38:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-azure-mgmt-chaos (Old)
and /work/SRC/openSUSE:Factory/.python-azure-mgmt-chaos.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-azure-mgmt-chaos"
Sun Nov 26 19:38:15 2023 rev:8 rq:1128900 version:1.0.0.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-azure-mgmt-chaos/python-azure-mgmt-chaos.changes 2023-08-23 14:58:52.362125138 +0200
+++ /work/SRC/openSUSE:Factory/.python-azure-mgmt-chaos.new.25432/python-azure-mgmt-chaos.changes 2023-11-26 19:38:51.501583682 +0100
@@ -1,0 +2,10 @@
+Fri Nov 24 10:00:01 UTC 2023 - John Paul Adrian Glaubitz <adrian.glaubitz(a)suse.com>
+
+- New upstream release
+ + Version 1.0.0
+ + For detailed information about changes see the
+ CHANGELOG.md file provided with this package
+- Override upstream version with 1.0.0.0 to ensure
+ proper upgrade from previous version 1.0.0b7
+
+-------------------------------------------------------------------
Old:
----
azure-mgmt-chaos-1.0.0b7.tar.gz
New:
----
azure-mgmt-chaos-1.0.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-azure-mgmt-chaos.spec ++++++
--- /var/tmp/diff_new_pack.xINLYQ/_old 2023-11-26 19:38:52.017602599 +0100
+++ /var/tmp/diff_new_pack.xINLYQ/_new 2023-11-26 19:38:52.017602599 +0100
@@ -16,18 +16,20 @@
#
+%define realversion 1.0.0
+
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%if 0%{?suse_version} >= 1500
%define skip_python2 1
%endif
Name: python-azure-mgmt-chaos
-Version: 1.0.0b7
+Version: 1.0.0.0
Release: 0
Summary: Microsoft Azure Chaos Management Client Library for Python
License: MIT
Group: Development/Languages/Python
URL: https://github.com/Azure/azure-sdk-for-python
-Source: https://files.pythonhosted.org/packages/source/a/azure-mgmt-chaos/azure-mgm…
+Source: https://files.pythonhosted.org/packages/source/a/azure-mgmt-chaos/azure-mgm…
Source1: LICENSE.txt
BuildRequires: %{python_module azure-mgmt-nspkg >= 3.0.0}
BuildRequires: %{python_module azure-nspkg >= 3.0.0}
@@ -55,10 +57,10 @@
This package has been tested with Python 2.7, 3.6+.
%prep
-%setup -q -n azure-mgmt-chaos-%{version}
+%setup -q -n azure-mgmt-chaos-%{realversion}
%build
-install -m 644 %{SOURCE1} %{_builddir}/azure-mgmt-chaos-%{version}
+install -m 644 %{SOURCE1} %{_builddir}/azure-mgmt-chaos-%{realversion}
%python_build
%install
++++++ azure-mgmt-chaos-1.0.0b7.tar.gz -> azure-mgmt-chaos-1.0.0.tar.gz ++++++
++++ 5114 lines of diff (skipped)
1
0
![](https://seccdn.libravatar.org/avatar/128a7b98d536a9cf9b4d4d5a90d63475.jpg?s=120&d=mm&r=g)
26 Nov '23
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-azure-communication-callautomation for openSUSE:Factory checked in at 2023-11-26 19:38:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-azure-communication-callautomation (Old)
and /work/SRC/openSUSE:Factory/.python-azure-communication-callautomation.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-azure-communication-callautomation"
Sun Nov 26 19:38:15 2023 rev:2 rq:1128901 version:1.1.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-azure-communication-callautomation/python-azure-communication-callautomation.changes 2023-06-16 16:56:50.642415301 +0200
+++ /work/SRC/openSUSE:Factory/.python-azure-communication-callautomation.new.25432/python-azure-communication-callautomation.changes 2023-11-26 19:38:52.257611398 +0100
@@ -1,0 +2,11 @@
+Fri Nov 24 09:56:01 UTC 2023 - John Paul Adrian Glaubitz <adrian.glaubitz(a)suse.com>
+
+- New upstream release
+ + Version 1.1.0
+ + For detailed information about changes see the
+ CHANGELOG.md file provided with this package
+- Remove unzip package from BuildRequires
+- Switch source archive format to TAR.GZ
+- Update Requires from setup.py
+
+-------------------------------------------------------------------
Old:
----
azure-communication-callautomation-1.0.0.zip
New:
----
azure-communication-callautomation-1.1.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-azure-communication-callautomation.spec ++++++
--- /var/tmp/diff_new_pack.DUR811/_old 2023-11-26 19:38:52.729628703 +0100
+++ /var/tmp/diff_new_pack.DUR811/_new 2023-11-26 19:38:52.729628703 +0100
@@ -21,26 +21,26 @@
%define skip_python2 1
%endif
Name: python-azure-communication-callautomation
-Version: 1.0.0
+Version: 1.1.0
Release: 0
Summary: Microsoft Azure Communication Call Automation Client Library for Python
License: MIT
Group: Development/Languages/Python
URL: https://github.com/Azure/azure-sdk-for-python
-Source: https://files.pythonhosted.org/packages/source/a/azure-communication-callau…
+Source: https://files.pythonhosted.org/packages/source/a/azure-communication-callau…
Source1: LICENSE.txt
BuildRequires: %{python_module azure-communication-nspkg >= 0.0.0b1}
BuildRequires: %{python_module azure-nspkg >= 3.0.0}
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
-BuildRequires: unzip
Requires: python-azure-communication-nspkg >= 0.0.0b1
Requires: python-azure-core < 2.0.0
-Requires: python-azure-core >= 1.24.0
+Requires: python-azure-core >= 1.29.2
Requires: python-azure-nspkg >= 3.0.0
-Requires: python-msrest >= 0.7.1
-Requires: python-six >= 1.11.0
+Requires: python-isodate < 1.0.0
+Requires: python-isodate >= 0.6.1
+Requires: (python-typing_extensions >= 4.3.0 if python-base < 3.8)
BuildArch: noarch
%python_subpackages
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ghc-generically for openSUSE:Factory checked in at 2023-11-23 21:39:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-generically (Old)
and /work/SRC/openSUSE:Factory/.ghc-generically.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-generically"
Thu Nov 23 21:39:56 2023 rev:4 rq:1127053 version:0.1.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc-generically/ghc-generically.changes 2023-10-13 23:15:57.881830527 +0200
+++ /work/SRC/openSUSE:Factory/.ghc-generically.new.25432/ghc-generically.changes 2023-11-23 21:41:16.764886395 +0100
@@ -1,0 +2,5 @@
+Thu Nov 16 13:18:26 UTC 2023 - Peter Simons <psimons(a)suse.com>
+
+- Drop obsolete dependency on ghc-base-orphans.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-generically.spec ++++++
--- /var/tmp/diff_new_pack.vu26WW/_old 2023-11-23 21:41:17.220903191 +0100
+++ /var/tmp/diff_new_pack.vu26WW/_new 2023-11-23 21:41:17.220903191 +0100
@@ -28,8 +28,6 @@
Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/2.cabal…
BuildRequires: ghc-Cabal-devel
BuildRequires: ghc-base-devel
-BuildRequires: ghc-base-orphans-devel
-BuildRequires: ghc-base-orphans-prof
BuildRequires: ghc-base-prof
BuildRequires: ghc-rpm-macros
ExcludeArch: %{ix86}
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-azure-mgmt-nginx for openSUSE:Factory checked in at 2023-11-23 21:41:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-azure-mgmt-nginx (Old)
and /work/SRC/openSUSE:Factory/.python-azure-mgmt-nginx.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-azure-mgmt-nginx"
Thu Nov 23 21:41:05 2023 rev:5 rq:1128174 version:3.0.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-azure-mgmt-nginx/python-azure-mgmt-nginx.changes 2023-03-15 18:56:30.381021280 +0100
+++ /work/SRC/openSUSE:Factory/.python-azure-mgmt-nginx.new.25432/python-azure-mgmt-nginx.changes 2023-11-23 21:42:29.687572302 +0100
@@ -1,0 +2,11 @@
+Wed Nov 22 16:11:55 UTC 2023 - John Paul Adrian Glaubitz <adrian.glaubitz(a)suse.com>
+
+- New upstream release
+ + Version 3.0.0
+ + For detailed information about changes see the
+ CHANGELOG.md file provided with this package
+- Remove unzip package from BuildRequires
+- Switch source archive format to TAR.GZ
+- Update Requires from setup.py
+
+-------------------------------------------------------------------
Old:
----
azure-mgmt-nginx-2.1.0.zip
New:
----
azure-mgmt-nginx-3.0.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-azure-mgmt-nginx.spec ++++++
--- /var/tmp/diff_new_pack.5E3dzF/_old 2023-11-23 21:42:30.179590424 +0100
+++ /var/tmp/diff_new_pack.5E3dzF/_new 2023-11-23 21:42:30.179590424 +0100
@@ -21,27 +21,27 @@
%define skip_python2 1
%endif
Name: python-azure-mgmt-nginx
-Version: 2.1.0
+Version: 3.0.0
Release: 0
Summary: Microsoft Azure Nginx Management Client Library for Python
License: MIT
Group: Development/Languages/Python
URL: https://github.com/Azure/azure-sdk-for-python
-Source: https://files.pythonhosted.org/packages/source/a/azure-mgmt-nginx/azure-mgm…
+Source: https://files.pythonhosted.org/packages/source/a/azure-mgmt-nginx/azure-mgm…
Source1: LICENSE.txt
BuildRequires: %{python_module azure-mgmt-nspkg >= 3.0.0}
BuildRequires: %{python_module azure-nspkg >= 3.0.0}
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
-BuildRequires: unzip
Requires: python-azure-common < 2.0.0
Requires: python-azure-common >= 1.1
Requires: python-azure-mgmt-core < 2.0.0
Requires: python-azure-mgmt-core >= 1.3.2
Requires: python-azure-mgmt-nspkg >= 3.0.0
Requires: python-azure-nspkg >= 3.0.0
-Requires: python-msrest >= 0.7.1
+Requires: python-isodate < 1.0.0
+Requires: python-isodate >= 0.6.1
Requires: (python-typing_extensions >= 4.0.1 if python-base < 3.8)
Conflicts: python-azure-sdk <= 2.0.0
BuildArch: noarch
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ghc-language-c for openSUSE:Factory checked in at 2023-11-23 21:40:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-language-c (Old)
and /work/SRC/openSUSE:Factory/.ghc-language-c.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-language-c"
Thu Nov 23 21:40:05 2023 rev:9 rq:1127068 version:0.9.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc-language-c/ghc-language-c.changes 2023-04-07 18:16:45.356693919 +0200
+++ /work/SRC/openSUSE:Factory/.ghc-language-c.new.25432/ghc-language-c.changes 2023-11-23 21:41:24.873185042 +0100
@@ -1,0 +2,6 @@
+Tue Nov 7 17:32:33 UTC 2023 - Peter Simons <psimons(a)suse.com>
+
+- Update language-c to version 0.9.2 revision 1.
+ Upstream has revised the Cabal build instructions on Hackage.
+
+-------------------------------------------------------------------
New:
----
language-c.cabal
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-language-c.spec ++++++
--- /var/tmp/diff_new_pack.NFT9d1/_old 2023-11-23 21:41:25.361203017 +0100
+++ /var/tmp/diff_new_pack.NFT9d1/_new 2023-11-23 21:41:25.365203164 +0100
@@ -26,6 +26,7 @@
License: BSD-3-Clause
URL: https://hackage.haskell.org/package/%{pkg_name}
Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{ve…
+Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/1.cabal…
BuildRequires: alex
BuildRequires: ghc-Cabal-devel
BuildRequires: ghc-array-devel
@@ -85,7 +86,7 @@
%prep
%autosetup -n %{pkg_name}-%{version}
-find . -type f -exec chmod -x {} +
+cp -p %{SOURCE1} %{pkg_name}.cabal
%build
%ghc_lib_build
++++++ language-c.cabal ++++++
Name: language-c
Version: 0.9.2
x-revision: 1
Cabal-Version: >= 1.10
Build-Type: Simple
License: BSD3
License-File: LICENSE
Copyright: LICENSE
Author: AUTHORS
Maintainer: language.c(a)monoid.al
Stability: experimental
Homepage: http://visq.github.io/language-c/
Bug-reports: https://github.com/visq/language-c/issues/
Synopsis: Analysis and generation of C code
Description: Language C is a haskell library for the analysis and generation of C code.
It features a complete, well tested parser and pretty printer for all of C99 and a large
set of C11 and clang/GNU extensions.
Category: Language
Tested-With: GHC == 8.4.*, GHC == 8.6.*, GHC == 8.8.*, GHC == 8.10.*, GHC == 9.0.*, GHC == 9.2.*
Extra-Source-Files: AUTHORS AUTHORS.c2hs ChangeLog README
src/Language/C/Parser/Lexer.x
src/Language/C/Parser/Parser.y
Source-Repository head
type: git
location: https://github.com/visq/language-c.git
Flag useByteStrings
Description: Use ByteString as InputStream datatype
Default: True
Flag allWarnings
Description: Turn on all warnings for building (development)
Default: False
Flag iecFpExtension
Description: Support IEC 60559 floating point extension (defines _Float128)
Default: True
Library
default-extensions: CPP, DeriveDataTypeable, DeriveGeneric, PatternGuards, BangPatterns, ExistentialQuantification, GeneralizedNewtypeDeriving, ScopedTypeVariables
Build-Depends: base >= 4.8 && < 5,
array,
containers >= 0.3,
deepseq >= 1.4.0.0 && < 1.6,
directory,
filepath,
mtl,
pretty < 1.2.0,
process
if flag(allWarnings)
if impl(ghc >= 8.0)
ghc-options: -Wall -Wno-redundant-constraints
else
ghc-options: -Wall
if flag(useByteStrings)
Build-Depends: bytestring >= 0.9.0
else
cpp-options: -DNO_BYTESTRING
if flag(iecFpExtension)
cpp-options: -DIEC_60559_TYPES_EXT
Build-Tools: happy, alex
Hs-Source-Dirs: src
Exposed-Modules:
-- top-level
Language.C
-- data
Language.C.Data
Language.C.Data.Position
Language.C.Data.Ident
Language.C.Data.Error
Language.C.Data.Name
Language.C.Data.Node
Language.C.Data.InputStream
-- syntax
Language.C.Syntax
Language.C.Syntax.AST
Language.C.Syntax.Constants
Language.C.Syntax.Ops
Language.C.Syntax.Utils
-- parser
Language.C.Parser
-- pretty printer
Language.C.Pretty
-- system
Language.C.System.Preprocess
Language.C.System.GCC
-- analysis [experimental]
Language.C.Analysis
Language.C.Analysis.ConstEval
Language.C.Analysis.Builtins
Language.C.Analysis.SemError
Language.C.Analysis.SemRep
Language.C.Analysis.DefTable
Language.C.Analysis.TravMonad
Language.C.Analysis.AstAnalysis
Language.C.Analysis.DeclAnalysis
Language.C.Analysis.Debug
Language.C.Analysis.TypeCheck
Language.C.Analysis.TypeConversions
Language.C.Analysis.TypeUtils
Language.C.Analysis.NameSpaceMap
Language.C.Analysis.MachineDescs
-- semrep -> code [alpha]
Language.C.Analysis.Export
Other-Modules:
Language.C.Data.RList
-- parser implementation
Language.C.Parser.Builtin
Language.C.Parser.Lexer
Language.C.Parser.ParserMonad
Language.C.Parser.Tokens
Language.C.Parser.Parser
default-language: Haskell2010
-- test description
Test-Suite language-c-harness
type: exitcode-stdio-1.0
main-is: test/harness/run-harness.hs
build-depends: base, directory, process, filepath
default-language: Haskell2010
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package libfmos for openSUSE:Factory checked in at 2023-11-23 21:40:57
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libfmos (Old)
and /work/SRC/openSUSE:Factory/.libfmos.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libfmos"
Thu Nov 23 21:40:57 2023 rev:6 rq:1128158 version:20231122
Changes:
--------
--- /work/SRC/openSUSE:Factory/libfmos/libfmos.changes 2023-11-21 21:34:18.776425563 +0100
+++ /work/SRC/openSUSE:Factory/.libfmos.new.25432/libfmos.changes 2023-11-23 21:42:24.675387692 +0100
@@ -1,0 +2,6 @@
+Wed Nov 22 13:30:23 UTC 2023 - Jan Engelhardt <jengelh(a)inai.de>
+
+- Update to release 20231122
+ * Build system updates only
+
+-------------------------------------------------------------------
Old:
----
libfmos-experimental-20231121.tar.gz
libfmos-experimental-20231121.tar.gz.asc
New:
----
libfmos-experimental-20231122.tar.gz
libfmos-experimental-20231122.tar.gz.asc
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libfmos.spec ++++++
--- /var/tmp/diff_new_pack.QOyML1/_old 2023-11-23 21:42:25.159405520 +0100
+++ /var/tmp/diff_new_pack.QOyML1/_new 2023-11-23 21:42:25.159405520 +0100
@@ -18,7 +18,7 @@
Name: libfmos
%define lname libfmos1
-Version: 20231121
+Version: 20231122
Release: 0
Summary: Library for MacOS data types
License: LGPL-3.0-or-later
++++++ libfmos-experimental-20231121.tar.gz -> libfmos-experimental-20231122.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libfmos-20231121/Makefile.am new/libfmos-20231122/Makefile.am
--- old/libfmos-20231121/Makefile.am 2023-11-21 05:43:02.000000000 +0100
+++ new/libfmos-20231122/Makefile.am 2023-11-22 05:49:56.000000000 +0100
@@ -23,6 +23,7 @@
dpkg/rules \
dpkg/libfmos.install \
dpkg/libfmos-dev.install \
+ dpkg/libfmos-python3.install \
dpkg/source/format
GETTEXT_FILES = \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libfmos-20231121/Makefile.in new/libfmos-20231122/Makefile.in
--- old/libfmos-20231121/Makefile.in 2023-11-21 05:49:25.000000000 +0100
+++ new/libfmos-20231122/Makefile.in 2023-11-22 05:53:17.000000000 +0100
@@ -483,6 +483,7 @@
dpkg/rules \
dpkg/libfmos.install \
dpkg/libfmos-dev.install \
+ dpkg/libfmos-python3.install \
dpkg/source/format
GETTEXT_FILES = \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libfmos-20231121/common/config.h new/libfmos-20231122/common/config.h
--- old/libfmos-20231121/common/config.h 2023-11-21 05:49:36.000000000 +0100
+++ new/libfmos-20231122/common/config.h 2023-11-22 05:53:27.000000000 +0100
@@ -323,7 +323,7 @@
#define PACKAGE_NAME "libfmos"
/* Define to the full name and version of this package. */
-#define PACKAGE_STRING "libfmos 20231121"
+#define PACKAGE_STRING "libfmos 20231122"
/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "libfmos"
@@ -332,7 +332,7 @@
#define PACKAGE_URL ""
/* Define to the version of this package. */
-#define PACKAGE_VERSION "20231121"
+#define PACKAGE_VERSION "20231122"
/* The size of `int', as computed by sizeof. */
#define SIZEOF_INT 4
@@ -358,7 +358,7 @@
/* #undef STRERROR_R_CHAR_P */
/* Version number of package */
-#define VERSION "20231121"
+#define VERSION "20231122"
/* Number of bits in a file offset, on hosts where this is settable. */
/* #undef _FILE_OFFSET_BITS */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libfmos-20231121/configure new/libfmos-20231122/configure
--- old/libfmos-20231121/configure 2023-11-21 05:49:24.000000000 +0100
+++ new/libfmos-20231122/configure 2023-11-22 05:53:16.000000000 +0100
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.71 for libfmos 20231121.
+# Generated by GNU Autoconf 2.71 for libfmos 20231122.
#
# Report bugs to <joachim.metz(a)gmail.com>.
#
@@ -621,8 +621,8 @@
# Identity of this package.
PACKAGE_NAME='libfmos'
PACKAGE_TARNAME='libfmos'
-PACKAGE_VERSION='20231121'
-PACKAGE_STRING='libfmos 20231121'
+PACKAGE_VERSION='20231122'
+PACKAGE_STRING='libfmos 20231122'
PACKAGE_BUGREPORT='joachim.metz(a)gmail.com'
PACKAGE_URL=''
@@ -1486,7 +1486,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures libfmos 20231121 to adapt to many kinds of systems.
+\`configure' configures libfmos 20231122 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1557,7 +1557,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of libfmos 20231121:";;
+ short | recursive ) echo "Configuration of libfmos 20231122:";;
esac
cat <<\_ACEOF
@@ -1721,7 +1721,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-libfmos configure 20231121
+libfmos configure 20231122
generated by GNU Autoconf 2.71
Copyright (C) 2021 Free Software Foundation, Inc.
@@ -2442,7 +2442,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by libfmos $as_me 20231121, which was
+It was created by libfmos $as_me 20231122, which was
generated by GNU Autoconf 2.71. Invocation command line was
$ $0$ac_configure_args_raw
@@ -3931,7 +3931,7 @@
# Define the identity of the package.
PACKAGE='libfmos'
- VERSION='20231121'
+ VERSION='20231122'
printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
@@ -28600,7 +28600,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by libfmos $as_me 20231121, which was
+This file was extended by libfmos $as_me 20231122, which was
generated by GNU Autoconf 2.71. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -28668,7 +28668,7 @@
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config='$ac_cs_config_escaped'
ac_cs_version="\\
-libfmos config.status 20231121
+libfmos config.status 20231122
configured by $0, generated by GNU Autoconf 2.71,
with options \\"\$ac_cs_config\\"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libfmos-20231121/configure.ac new/libfmos-20231122/configure.ac
--- old/libfmos-20231121/configure.ac 2023-11-21 05:41:53.000000000 +0100
+++ new/libfmos-20231122/configure.ac 2023-11-22 05:35:57.000000000 +0100
@@ -2,7 +2,7 @@
AC_INIT(
[libfmos],
- [20231121],
+ [20231122],
[joachim.metz(a)gmail.com])
AC_CONFIG_SRCDIR(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libfmos-20231121/dpkg/changelog new/libfmos-20231122/dpkg/changelog
--- old/libfmos-20231121/dpkg/changelog 2023-11-21 05:49:36.000000000 +0100
+++ new/libfmos-20231122/dpkg/changelog 2023-11-22 05:53:27.000000000 +0100
@@ -1,5 +1,5 @@
-libfmos (20231121-1) unstable; urgency=low
+libfmos (20231122-1) unstable; urgency=low
* Auto-generated
- -- Joachim Metz <joachim.metz(a)gmail.com> Tue, 21 Nov 2023 05:49:35 +0100
+ -- Joachim Metz <joachim.metz(a)gmail.com> Wed, 22 Nov 2023 05:53:26 +0100
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libfmos-20231121/dpkg/libfmos-python3.install new/libfmos-20231122/dpkg/libfmos-python3.install
--- old/libfmos-20231121/dpkg/libfmos-python3.install 1970-01-01 01:00:00.000000000 +0100
+++ new/libfmos-20231122/dpkg/libfmos-python3.install 2023-11-22 05:35:57.000000000 +0100
@@ -0,0 +1 @@
+/usr/lib/python3*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libfmos-20231121/include/libfmos/definitions.h new/libfmos-20231122/include/libfmos/definitions.h
--- old/libfmos-20231121/include/libfmos/definitions.h 2023-11-21 05:49:36.000000000 +0100
+++ new/libfmos-20231122/include/libfmos/definitions.h 2023-11-22 05:53:27.000000000 +0100
@@ -24,11 +24,11 @@
#include <libfmos/types.h>
-#define LIBFMOS_VERSION 20231121
+#define LIBFMOS_VERSION 20231122
/* The version string
*/
-#define LIBFMOS_VERSION_STRING "20231121"
+#define LIBFMOS_VERSION_STRING "20231122"
#endif /* !defined( _LIBFMOS_DEFINITIONS_H ) */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libfmos-20231121/libfmos/libfmos.rc new/libfmos-20231122/libfmos/libfmos.rc
--- old/libfmos-20231121/libfmos/libfmos.rc 2023-11-21 05:49:36.000000000 +0100
+++ new/libfmos-20231122/libfmos/libfmos.rc 2023-11-22 05:53:27.000000000 +0100
@@ -22,12 +22,12 @@
BLOCK "040904E4"
BEGIN
VALUE "FileDescription", "Library to support common Mac OS specific formats\0"
- VALUE "FileVersion", "20231121" "\0"
+ VALUE "FileVersion", "20231122" "\0"
VALUE "InternalName", "libfmos.dll\0"
VALUE "LegalCopyright", "(C) 2019-2023, Joachim Metz <joachim.metz(a)gmail.com>\0"
VALUE "OriginalFilename", "libfmos.dll\0"
VALUE "ProductName", "libfmos\0"
- VALUE "ProductVersion", "20231121" "\0"
+ VALUE "ProductVersion", "20231122" "\0"
VALUE "Comments", "For more information visit https://github.com/libyal/libfmos/\0"
END
END
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libfmos-20231121/libfmos/libfmos_definitions.h new/libfmos-20231122/libfmos/libfmos_definitions.h
--- old/libfmos-20231121/libfmos/libfmos_definitions.h 2023-11-21 05:49:36.000000000 +0100
+++ new/libfmos-20231122/libfmos/libfmos_definitions.h 2023-11-22 05:53:27.000000000 +0100
@@ -36,11 +36,11 @@
#else
#include <byte_stream.h>
-#define LIBFMOS_VERSION 20231121
+#define LIBFMOS_VERSION 20231122
/* The version string
*/
-#define LIBFMOS_VERSION_STRING "20231121"
+#define LIBFMOS_VERSION_STRING "20231122"
#endif /* !defined( HAVE_LOCAL_LIBFMOS ) */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libfmos-20231121/libfmos.spec new/libfmos-20231122/libfmos.spec
--- old/libfmos-20231121/libfmos.spec 2023-11-21 05:49:36.000000000 +0100
+++ new/libfmos-20231122/libfmos.spec 2023-11-22 05:53:27.000000000 +0100
@@ -1,5 +1,5 @@
Name: libfmos
-Version: 20231121
+Version: 20231122
Release: 1
Summary: Library to support common Mac OS specific formats
Group: System Environment/Libraries
@@ -80,6 +80,6 @@
%{_libdir}/python3*/site-packages/*.so
%changelog
-* Tue Nov 21 2023 Joachim Metz <joachim.metz(a)gmail.com> 20231121-1
+* Wed Nov 22 2023 Joachim Metz <joachim.metz(a)gmail.com> 20231122-1
- Auto-generated
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libfmos-20231121/setup.cfg new/libfmos-20231122/setup.cfg
--- old/libfmos-20231121/setup.cfg 2023-11-21 05:49:36.000000000 +0100
+++ new/libfmos-20231122/setup.cfg 2023-11-22 05:53:27.000000000 +0100
@@ -1,6 +1,6 @@
[metadata]
name = libfmos-python
-version = 20231121
+version = 20231122
description = Python bindings module for libfmos
long_description = Python bindings module for libfmos
long_description_content_type = text/plain
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-oci-sdk for openSUSE:Factory checked in at 2023-11-23 21:42:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-oci-sdk (Old)
and /work/SRC/openSUSE:Factory/.python-oci-sdk.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-oci-sdk"
Thu Nov 23 21:42:08 2023 rev:66 rq:1128305 version:2.116.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-oci-sdk/python-oci-sdk.changes 2023-10-19 22:52:10.721006471 +0200
+++ /work/SRC/openSUSE:Factory/.python-oci-sdk.new.25432/python-oci-sdk.changes 2023-11-23 21:43:34.677966045 +0100
@@ -1,0 +2,58 @@
+Thu Nov 23 09:24:09 UTC 2023 - John Paul Adrian Glaubitz <adrian.glaubitz(a)suse.com>
+
+- Update to version 2.116.0
+ * Support for the PostgreSQL service
+ * Support for new operations in the Identity Domains service
+ * Support for enabling, disabling, and renewing SSL/TLS in the Big Data service
+ * Support for diarization in the AI Speech service
+ * Support for Capacity Topology API in the Compute service
+ * Model `MyRequest` in the Identity Domains service now allows only certain restricted
+ values. For more information please see https://docs.public.oneportal.content.oci.\
+ oraclecloud.com/en-us/iaas/tools/python/latest/api/identity_domains/models/…
+ _domains.models.MyRequest.html#oci.identity_domains.models.MyRequest
+- from version 2.115.1
+ * Support for Java Management Service Downloads
+ * Support for creating autonomous dataguard associations in the Database service
+ * Support for SaaS administrative user configurations for autonomous database in the Database service
+ * Support for macOS in the the Java Management service
+ * Support for distribution and management of deployment rule sets in the Java Management service
+ * Support for new download location of Oracle Java runtime binaries in the Java Management service
+ * Support for exporting data across regions in the Java Management service
+ * Fixed an issue in Resource Principals v2.1 introduced in the `v2.111.0` release
+- from version 2.115.0
+ * Support for calling Oracle Cloud Infrastructure services in the us-saltlake-2 region
+ * Support for disaster recovery of load balancers, network load balancers and file
+ systems in the Disaster Recovery service
+ * Support for performing disaster recovery drills in the Disaster Recovery service
+ * Support for enterprise SKUs and extensibility in the Stack Monitoring service
+ * Support for metric extensions in the Stack Monitoring service
+ * Support for baseline and anomaly detection in the Stack Monitoring service
+ * Support for integration with Database Management service in the MySQL HeatWave service
+ * Support for MySQL database management in the Database Management service
+ * Support for database firewalls in the Data Safe service
+ * The properties `compartment_id` and `user_assessment_id` were removed from the
+ `ProfileAggregation` model in the Data Safe service
+- from version 2.114.0
+ * Support for optional parameters for autonomous container database create and update
+ operations in the Database service
+ * Support for maintenance runs for autonomous container database resources in the Database service
+ * Support for runtime unsupported connections for Oracle Database
+ and MySQL database types in the Database Tools service
+ * Support for PostgreSQL, Generic JDBC connections with runtime unsupported in the Database Tools service
+ * Support for resource locking in the Database Tools service
+ * Support for proxy sessions for Oracle database connections in the Database Tools service
+ * Support for global active tables in the NoSQL Database service
+ * Support for application dependency management (ADM) remediation
+ features in the Application Dependency Management service
+ * Support for additional connections types for Amazon Kinesis, Amazon Redshift, Elasticsearch,
+ Generic, Google BigQuery, Google Cloud Storage and Redis Database resources in the Golden Gate service
+ * Support for optional parameters for the list alarms status operation in the Monitoring Service
+ * Support for retries by default on operations of the Database Tools service
+ * Support for retries by default on operations of the Monitoring service
+ * The paremeter `opc_retry_token` was removed from operations `change_database_tools_connection_compartment`
+ and `change_database_tools_private_endpoint_compartment` in the Database Tools service
+ * Properties `user_password`, `connection_string` and `user_name` were removed from models
+ `CreateDatabaseToolsConnectionOracleDatabaseDetails` and `CreateDatabaseToolsConnectionMySqlDetails`
+ in the Database Tools service
+
+-------------------------------------------------------------------
Old:
----
oci-python-sdk-2.113.0.tar.gz
New:
----
oci-python-sdk-2.116.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-oci-sdk.spec ++++++
--- /var/tmp/diff_new_pack.rqiP87/_old 2023-11-23 21:43:35.281988293 +0100
+++ /var/tmp/diff_new_pack.rqiP87/_new 2023-11-23 21:43:35.281988293 +0100
@@ -18,7 +18,7 @@
%bcond_without python2
Name: python-oci-sdk
-Version: 2.113.0
+Version: 2.116.0
Release: 0
Summary: Oracle Cloud Infrastructure Python SDK
License: Apache-2.0 OR UPL-1.0
++++++ oci-python-sdk-2.113.0.tar.gz -> oci-python-sdk-2.116.0.tar.gz ++++++
/work/SRC/openSUSE:Factory/python-oci-sdk/oci-python-sdk-2.113.0.tar.gz /work/SRC/openSUSE:Factory/.python-oci-sdk.new.25432/oci-python-sdk-2.116.0.tar.gz differ: char 15, line 1
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package hlint for openSUSE:Factory checked in at 2023-11-23 21:40:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/hlint (Old)
and /work/SRC/openSUSE:Factory/.hlint.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "hlint"
Thu Nov 23 21:40:18 2023 rev:13 rq:1127143 version:3.6.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/hlint/hlint.changes 2023-04-04 21:25:33.390942425 +0200
+++ /work/SRC/openSUSE:Factory/.hlint.new.25432/hlint.changes 2023-11-23 21:41:37.753659459 +0100
@@ -1,0 +2,38 @@
+Fri Jul 7 10:00:52 UTC 2023 - Peter Simons <psimons(a)suse.com>
+
+- Update hlint to version 3.6.1.
+ 3.6.1, released 2023-07-03
+ Attempt to make a binary release
+ 3.6, released 2023-06-26
+ #1522, define __GLASGOW_HASKELL__ for cmdCpp
+ #1519, don't suggest removing brackets that result in a parse error
+ #1512, add hints to convert for [1..n] to replicateM n
+ #1430, add ignore-suggestions flag
+ #1517, support NO_COLOR
+ #1505, don't suggest redundant brackets around constraints
+ #1478, Fix no warn on (x.y) by treating x.y as atom
+ #1481, more hints about concat/concatMap
+ #1485, add more hints about using a Functor on a literal tuple
+ #1479, add specialised not hints for notElem/notNull
+ #1437, don't add/remove Monad constraints in replacements
+ #1475, rules for (elem False) and (notElem True)
+ #1476, generalise map-consuming rules from lists to Foldables/Traversables
+ #1480, add hints about notElem and notNull
+ #1482, support SARIF output
+ #1470, drop support for GHC 9.0
+ * #1470, move to GHC 9.6 parser
+ #1449, add some more generalize hints that suggest fmap instead of map
+ Never suggest concatForM_, because it doesn't exist
+ #1467, and groups for warning on partial functions
+ #1465, improve the timing information with -v flag
+ #1454, filter Just . map f ==> map Just . mapMaybe f
+ #1452, add more evaluate rules, e.g. fromJust (Just x) ==> x
+ #1488, add <$>/<&> hints for Either
+ #1447, make <$> hints also work on <&> (dualized)
+ #1450, suggest nub/sort ==> nubSort with the extra hints
+ #1451, isJust y && (x == fromJust y) ==> Just x == y
+ #578, don't suggest numeric underscores for < 5 digits
+ #1428, rename "Use map" hints that introduce tuple sections
+ #1424, don't suggest sortOn; suggest avoiding `reverse . sort`
+
+-------------------------------------------------------------------
Old:
----
hlint-3.5.tar.gz
New:
----
hlint-3.6.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ hlint.spec ++++++
--- /var/tmp/diff_new_pack.KWYyol/_old 2023-11-23 21:41:38.301679644 +0100
+++ /var/tmp/diff_new_pack.KWYyol/_new 2023-11-23 21:41:38.301679644 +0100
@@ -19,7 +19,7 @@
%global pkg_name hlint
%global pkgver %{pkg_name}-%{version}
Name: %{pkg_name}
-Version: 3.5
+Version: 3.6.1
Release: 0
Summary: Source code suggestions
License: BSD-3-Clause
++++++ hlint-3.5.tar.gz -> hlint-3.6.1.tar.gz ++++++
++++ 3371 lines of diff (skipped)
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-onionshare for openSUSE:Factory checked in at 2023-11-23 21:42:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-onionshare (Old)
and /work/SRC/openSUSE:Factory/.python-onionshare.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-onionshare"
Thu Nov 23 21:42:34 2023 rev:16 rq:1128355 version:2.6
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-onionshare/python-onionshare.changes 2023-05-31 21:55:32.917378173 +0200
+++ /work/SRC/openSUSE:Factory/.python-onionshare.new.25432/python-onionshare.changes 2023-11-23 21:44:00.698924456 +0100
@@ -1,0 +2,7 @@
+Thu Nov 23 14:22:20 UTC 2023 - Ben Greiner <code(a)bnavigator.de>
+
+- Fix dependencies
+ * Add onionshare-pr1677-fix-werkzeug3.patch
+- PEP517: Use pyproject instead of deprecated setup.py
+
+-------------------------------------------------------------------
New:
----
onionshare-pr1677-fix-werkzeug3.patch
BETA DEBUG BEGIN:
New:- Fix dependencies
* Add onionshare-pr1677-fix-werkzeug3.patch
- PEP517: Use pyproject instead of deprecated setup.py
BETA DEBUG END:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-onionshare.spec ++++++
--- /var/tmp/diff_new_pack.xgeJMP/_old 2023-11-23 21:44:01.190942578 +0100
+++ /var/tmp/diff_new_pack.xgeJMP/_new 2023-11-23 21:44:01.190942578 +0100
@@ -34,49 +34,70 @@
Patch2: relax-async-mode.patch
# PATCH-FIX-UPSTREAM onionshare-poetry-core.patch -- poetry-core is enough to build and has a much smaller footprint
Patch3: https://github.com/onionshare/onionshare/commit/a05d7af729585bdaa4f71437167…
+# PATCH-FIX-UPSTREAM onionshare-pr1677-fix-werkzeug3.patch gh#onionshare/onionshare#1677
+Patch4: onionshare-pr1677-fix-werkzeug3.patch
BuildRequires: fdupes
BuildRequires: hicolor-icon-theme
BuildRequires: python-rpm-macros
-BuildRequires: python3-Flask >= 1.4.1
-BuildRequires: python3-Flask-SocketIO >= 5.0.1
+BuildRequires: python3-pip
+BuildRequires: python3-poetry-core
+BuildRequires: update-desktop-files
+# SECTION test
+BuildRequires: python3-pytest
+BuildRequires: python3-pytest-qt
+BuildRequires: python3-pytest-xvfb
+# /SECTION
+# SECTION runtime test
+BuildRequires: python3-Flask >= 2.3.2
+BuildRequires: python3-Flask-Compress >= 1.13
+BuildRequires: python3-Flask-SocketIO >= 5.3.1
BuildRequires: python3-PyNaCl
BuildRequires: python3-PySocks
BuildRequires: python3-Unidecode
-BuildRequires: python3-cepa >= 1.8.3
+BuildRequires: python3-Werkzeug >= 2.3.4
+BuildRequires: python3-click
BuildRequires: python3-colorama
BuildRequires: python3-eventlet
-BuildRequires: python3-poetry-core
+BuildRequires: python3-gevent-websocket
BuildRequires: python3-psutil
-BuildRequires: python3-pyside2 >= 5.15.2
-BuildRequires: python3-pytest
-BuildRequires: python3-pytest-qt
-BuildRequires: python3-pytest-xvfb
+BuildRequires: python3-pyside2 >= 5.15.2.1
+BuildRequires: python3-python-gnupg
BuildRequires: python3-qrcode
BuildRequires: python3-requests
BuildRequires: python3-setuptools
+BuildRequires: python3-stem >= 1.8.1
BuildRequires: python3-urllib3
+BuildRequires: python3-waitress >= 2.1.2
BuildRequires: tor
-BuildRequires: update-desktop-files
-Requires: python3-Flask >= 1.4.1
-Requires: python3-Flask-SocketIO >= 5.0.1
+# /SECTION
+Requires: python3-Flask >= 2.3.2
+Requires: python3-Flask-Compress >= 1.13
+Requires: python3-Flask-SocketIO >= 5.3.1
Requires: python3-PyNaCl
Requires: python3-PySocks
Requires: python3-Unidecode
-Requires: python3-cepa >= 1.8.3
+Requires: python3-Werkzeug >= 2.3.4
+Requires: python3-click
Requires: python3-colorama
Requires: python3-eventlet
+Requires: python3-gevent-websocket
Requires: python3-psutil
-Requires: python3-pyside2 >= 5.15.2
+Requires: python3-pyside2 >= 5.15.2.1
+Requires: python3-python-gnupg
Requires: python3-qrcode
Requires: python3-requests
+Requires: python3-setuptools
+Requires: python3-stem >= 1.8.1
Requires: python3-urllib3
+Requires: python3-waitress >= 2.1.2
Requires: tor
-Provides: %{name}-%{version}
-Obsoletes: %{name}-data < %{version}
-Obsoletes: python310-onionshare < %{version}
-Obsoletes: python36-onionshare < %{version}
-Obsoletes: python38-onionshare < %{version}
-Obsoletes: python39-onionshare < %{version}
+Provides: python3-onionshare = %{version}-%{release}
+Provides: python3-onionshare_cli = %{version}-%{release}
+Obsoletes: python-onionshare-data < 2.3.1
+Obsoletes: python310-onionshare < 2.3.1
+Obsoletes: python36-onionshare < 2.3.1
+Obsoletes: python38-onionshare < 2.3.1
+Obsoletes: python39-onionshare < 2.3.1
BuildArch: noarch
%description
@@ -93,17 +114,17 @@
%build
pushd cli
-%python3_build
+%python3_pyproject_wheel
popd
pushd desktop
-%python3_build
+%python3_pyproject_wheel
%install
pushd cli
-%python3_install
+%python3_pyproject_install
popd
pushd desktop
-%python3_install
+%python3_pyproject_install
install -Dm 0644 org.onionshare.OnionShare.appdata.xml \
%{buildroot}%{_datadir}/metainfo/org.onionshare.OnionShare.metainfo.xml
++++++ onionshare-pr1677-fix-werkzeug3.patch ++++++
++++ 1169 lines (skipped)
++++++ relax-async-mode.patch ++++++
--- /var/tmp/diff_new_pack.xgeJMP/_old 2023-11-23 21:44:01.226943904 +0100
+++ /var/tmp/diff_new_pack.xgeJMP/_new 2023-11-23 21:44:01.230944052 +0100
@@ -1,7 +1,8 @@
-diff -Nur onionshare-2.5/cli/onionshare_cli/web/web.py new/cli/onionshare_cli/web/web.py
---- onionshare-2.5/cli/onionshare_cli/web/web.py 2022-01-17 21:56:39.000000000 +0100
-+++ new/cli/onionshare_cli/web/web.py 2022-02-25 01:35:45.401731026 +0100
-@@ -164,10 +164,10 @@
+Index: onionshare-2.6/cli/onionshare_cli/web/web.py
+===================================================================
+--- onionshare-2.6.orig/cli/onionshare_cli/web/web.py
++++ onionshare-2.6/cli/onionshare_cli/web/web.py
+@@ -164,10 +164,10 @@ class Web:
elif self.mode == "chat":
if self.common.verbose:
self.socketio = SocketIO(
@@ -14,4 +15,17 @@
self.socketio.init_app(self.app)
self.chat_mode = ChatModeWeb(self.common, self)
+Index: onionshare-2.6/desktop/pyproject.toml
+===================================================================
+--- onionshare-2.6.orig/desktop/pyproject.toml
++++ onionshare-2.6/desktop/pyproject.toml
+@@ -6,7 +6,7 @@ authors = ["Micah Lee <micah(a)micahflee.c
+ license = "GPLv3+"
+
+ [tool.poetry.dependencies]
+-python = ">=3.7,<3.11"
++python = ">=3.7"
+ onionshare_cli = {path = "../cli", develop = true}
+ PySide2 = "5.15.2.1"
+ qrcode = "*"
1
0
Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package ghc-fgl for openSUSE:Factory checked in at 2023-11-23 21:40:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-fgl (Old)
and /work/SRC/openSUSE:Factory/.ghc-fgl.new.25432 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-fgl"
Thu Nov 23 21:40:33 2023 rev:9 rq:1128071 version:5.8.2.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc-fgl/ghc-fgl.changes 2023-06-30 19:59:10.957754237 +0200
+++ /work/SRC/openSUSE:Factory/.ghc-fgl.new.25432/ghc-fgl.changes 2023-11-23 21:41:53.498239367 +0100
@@ -1,0 +2,28 @@
+Wed Oct 18 08:42:49 UTC 2023 - Peter Simons <psimons(a)suse.com>
+
+- Update fgl to version 5.8.2.0.
+ 5.8.2.0
+ -------
+
+ * Data.Graph.Inductive.Graph now only requires Graph, not DynGraph
+ (issue #100).
+
+ * Documented that some functions are partial (issue #98).
+
+ * Add `insert` function as synonym for `&` (issue #90).
+
+ 5.8.1.1
+ -------
+
+ * Data.Graph.Inductive.Query.Dominators.{dom,iDom} could fail for some
+ graphs (issue #109, regression in 5.8.1.0).
+
+ 5.8.1.0
+ -------
+
+ * Data.Graph.Inductive.PatriciaTree.Gr and
+ Data.Graph.Inductive.Tree.Gr now have Functor instances.
+
+ * 'Gr a' is now an instance of Functor.
+
+-------------------------------------------------------------------
Old:
----
fgl-5.8.0.0.tar.gz
fgl.cabal
New:
----
fgl-5.8.2.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-fgl.spec ++++++
--- /var/tmp/diff_new_pack.wiAoZL/_old 2023-11-23 21:41:54.446274286 +0100
+++ /var/tmp/diff_new_pack.wiAoZL/_new 2023-11-23 21:41:54.446274286 +0100
@@ -20,13 +20,12 @@
%global pkgver %{pkg_name}-%{version}
%bcond_with tests
Name: ghc-%{pkg_name}
-Version: 5.8.0.0
+Version: 5.8.2.0
Release: 0
Summary: Martin Erwig's Functional Graph Library
License: BSD-3-Clause
URL: https://hackage.haskell.org/package/%{pkg_name}
Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{ve…
-Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/1.cabal…
BuildRequires: ghc-Cabal-devel
BuildRequires: ghc-array-devel
BuildRequires: ghc-array-prof
@@ -81,7 +80,6 @@
%prep
%autosetup -n %{pkg_name}-%{version}
-cp -p %{SOURCE1} %{pkg_name}.cabal
%build
%ghc_lib_build
++++++ fgl-5.8.0.0.tar.gz -> fgl-5.8.2.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/ChangeLog new/fgl-5.8.2.0/ChangeLog
--- old/fgl-5.8.0.0/ChangeLog 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/ChangeLog 2001-09-09 03:46:40.000000000 +0200
@@ -1,3 +1,27 @@
+5.8.2.0
+-------
+
+* Data.Graph.Inductive.Graph now only requires Graph, not DynGraph
+ (issue #100).
+
+* Documented that some functions are partial (issue #98).
+
+* Add `insert` function as synonym for `&` (issue #90).
+
+5.8.1.1
+-------
+
+* Data.Graph.Inductive.Query.Dominators.{dom,iDom} could fail for some
+ graphs (issue #109, regression in 5.8.1.0).
+
+5.8.1.0
+-------
+
+* Data.Graph.Inductive.PatriciaTree.Gr and
+ Data.Graph.Inductive.Tree.Gr now have Functor instances.
+
+* 'Gr a' is now an instance of Functor.
+
5.8.0.0
-------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/Data/Graph/Inductive/Graph.hs new/fgl-5.8.2.0/Data/Graph/Inductive/Graph.hs
--- old/fgl-5.8.0.0/Data/Graph/Inductive/Graph.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/Data/Graph/Inductive/Graph.hs 2001-09-09 03:46:40.000000000 +0200
@@ -34,6 +34,7 @@
Graph(..),
DynGraph(..),
-- * Operations
+ insert,
order,
size,
-- ** Graph Folds and Maps
@@ -156,9 +157,10 @@
matchAny :: gr a b -> GDecomp gr a b
matchAny g = case labNodes g of
[] -> error "Match Exception, Empty Graph"
- (v,_):_ -> (c,g')
- where
- (Just c,g') = match v g
+ (v,_):_ ->
+ case match v g of
+ (Just c,g') -> (c,g')
+ _ -> error "Match Exception, cannot extract node"
-- | The number of 'Node's in a 'Graph'.
noNodes :: gr a b -> Int
@@ -186,6 +188,10 @@
-- in the graph.
(&) :: Context a b -> gr a b -> gr a b
+-- | A synonym for '&', to avoid conflicts with the similarly named
+-- operator in "Data.Function".
+insert :: DynGraph gr => Context a b -> gr a b -> gr a b
+insert = (&)
-- | The number of nodes in the graph. An alias for 'noNodes'.
order :: (Graph gr) => gr a b -> Int
@@ -302,7 +308,7 @@
--
-- NOTE: in the case of multiple edges with the same label, this
-- will only delete the /first/ such edge. To delete all such
--- edges, please use 'delAllLedge'.
+-- edges, please use 'delAllLEdge'.
delLEdge :: (DynGraph gr, Eq b) => LEdge b -> gr a b -> gr a b
delLEdge = delLEdgeBy delete
@@ -577,7 +583,7 @@
-- | Pretty-print the graph. Note that this loses a lot of
-- information, such as edge inverses, etc.
-prettify :: (DynGraph gr, Show a, Show b) => gr a b -> String
+prettify :: (Graph gr, Show a, Show b) => gr a b -> String
prettify g = foldr (showsContext . context g) id (nodes g) ""
where
showsContext (_,n,l,s) sg = shows n . (':':) . shows l
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/Data/Graph/Inductive/Internal/RootPath.hs new/fgl-5.8.2.0/Data/Graph/Inductive/Internal/RootPath.hs
--- old/fgl-5.8.0.0/Data/Graph/Inductive/Internal/RootPath.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/Data/Graph/Inductive/Internal/RootPath.hs 2001-09-09 03:46:40.000000000 +0200
@@ -29,7 +29,7 @@
| otherwise = findP v ps
getPath :: Node -> RTree -> Path
-getPath v = reverse . first (\(w:_)->w==v)
+getPath v = reverse . first ((==v) . head)
getLPath :: Node -> LRTree a -> LPath a
getLPath v = LP . reverse . findP v
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/Data/Graph/Inductive/Monad.hs new/fgl-5.8.2.0/Data/Graph/Inductive/Monad.hs
--- old/fgl-5.8.0.0/Data/Graph/Inductive/Monad.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/Data/Graph/Inductive/Monad.hs 2001-09-09 03:46:40.000000000 +0200
@@ -56,8 +56,10 @@
matchAnyM g = do vs <- labNodesM g
case vs of
[] -> error "Match Exception, Empty Graph"
- (v,_):_ -> do ~(Just c,g') <- matchM v g
- return (c,g')
+ (v,_):_ -> do r <- matchM v g
+ case r of
+ (Just c,g') -> return (c,g')
+ _ -> error "Match Exception, cannot extract node"
noNodesM :: m (gr a b) -> m Int
noNodesM = labNodesM >>. length
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/Data/Graph/Inductive/NodeMap.hs new/fgl-5.8.2.0/Data/Graph/Inductive/NodeMap.hs
--- old/fgl-5.8.0.0/Data/Graph/Inductive/NodeMap.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/Data/Graph/Inductive/NodeMap.hs 2001-09-09 03:46:40.000000000 +0200
@@ -112,20 +112,22 @@
let (g', _, _) = insMapNode m a g
in g'
+-- | Partial function: raises exception if passed nodes that are not in the graph.
insMapEdge :: (Ord a, DynGraph g) => NodeMap a -> (a, a, b) -> g a b -> g a b
insMapEdge m e g =
- let (Just e') = mkEdge m e
- in insEdge e' g
+ case mkEdge m e of Just e' -> insEdge e' g
+ Nothing -> error "insMapEdge: invalid edge"
delMapNode :: (Ord a, DynGraph g) => NodeMap a -> a -> g a b -> g a b
delMapNode m a g =
let (n, _) = mkNode_ m a
in delNode n g
+-- | Partial function: raises exception if passed nodes that are not in the graph.
delMapEdge :: (Ord a, DynGraph g) => NodeMap a -> (a, a) -> g a b -> g a b
delMapEdge m (n1, n2) g =
- let Just (n1', n2', _) = mkEdge m (n1, n2, ())
- in delEdge (n1', n2') g
+ case mkEdge m (n1, n2, ()) of Just (n1', n2', _) -> delEdge (n1', n2') g
+ Nothing -> error "delMapEdge: invalid edge"
insMapNodes :: (Ord a, DynGraph g) => NodeMap a -> [a] -> g a b -> (g a b, NodeMap a, [LNode a])
insMapNodes m as g =
@@ -137,27 +139,33 @@
let (g', _, _) = insMapNodes m as g
in g'
+-- | Partial function: raises exception if passed nodes that are not in the graph.
insMapEdges :: (Ord a, DynGraph g) => NodeMap a -> [(a, a, b)] -> g a b -> g a b
insMapEdges m es g =
- let Just es' = mkEdges m es
- in insEdges es' g
+ case mkEdges m es of Just es' -> insEdges es' g
+ Nothing -> error "insMapEdges: invalid edge"
delMapNodes :: (Ord a, DynGraph g) => NodeMap a -> [a] -> g a b -> g a b
delMapNodes m as g =
let ns = P.map fst $ mkNodes_ m as
in delNodes ns g
+-- | Partial function: raises exception if passed nodes that are not in the graph.
delMapEdges :: (Ord a, DynGraph g) => NodeMap a -> [(a, a)] -> g a b -> g a b
delMapEdges m ns g =
- let Just ns' = mkEdges m $ P.map (\(a, b) -> (a, b, ())) ns
- ns'' = P.map (\(a, b, _) -> (a, b)) ns'
- in delEdges ns'' g
+ case mkEdges m $ P.map (\(a, b) -> (a, b, ())) ns of
+ Nothing -> error "delMapEdges: invalid edges"
+ Just ns' ->
+ let ns'' = P.map (\(a, b, _) -> (a, b)) ns'
+ in delEdges ns'' g
+-- | Partial function: raises exception if passed a node that is not in the graph.
mkMapGraph :: (Ord a, DynGraph g) => [a] -> [(a, a, b)] -> (g a b, NodeMap a)
mkMapGraph ns es =
let (ns', m') = mkNodes new ns
- Just es' = mkEdges m' es
- in (mkGraph ns' es', m')
+ in case mkEdges m' es of
+ Just es' -> (mkGraph ns' es', m')
+ Nothing -> error "mkMapGraph: invalid edges"
-- | Graph construction monad; handles passing both the 'NodeMap' and the
-- 'Graph'.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/Data/Graph/Inductive/PatriciaTree.hs new/fgl-5.8.2.0/Data/Graph/Inductive/PatriciaTree.hs
--- old/fgl-5.8.0.0/Data/Graph/Inductive/PatriciaTree.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/Data/Graph/Inductive/PatriciaTree.hs 2001-09-09 03:46:40.000000000 +0200
@@ -134,6 +134,9 @@
rnf (Gr g) = rnf g
#endif
+instance Functor (Gr a) where
+ fmap = fastEMap
+
#if MIN_VERSION_base (4,8,0)
instance Bifunctor Gr where
bimap = fastNEMap
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/Data/Graph/Inductive/Query/BCC.hs new/fgl-5.8.2.0/Data/Graph/Inductive/Query/BCC.hs
--- old/fgl-5.8.0.0/Data/Graph/Inductive/Query/BCC.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/Data/Graph/Inductive/Query/BCC.hs 2001-09-09 03:46:40.000000000 +0200
@@ -43,10 +43,11 @@
splitGraphs :: (DynGraph gr) => [gr a b] -> [Node] -> [gr a b]
splitGraphs gs [] = gs
splitGraphs [] _ = error "splitGraphs: empty graph list"
-splitGraphs gs (v:vs) = splitGraphs (gs''++gs''') vs
- where gs'' = embedContexts c gs'
- gs' = gComponents g'
- ((Just c,g'), gs''') = findGraph v gs
+splitGraphs gs (v:vs) = case findGraph v gs of
+ ((Nothing, _), _) -> error "splitGraphs: invalid node"
+ ((Just c,g'), gs''') -> splitGraphs (gs''++gs''') vs
+ where gs'' = embedContexts c gs'
+ gs' = gComponents g'
{-|
Finds the bi-connected components of an undirected connected graph.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/Data/Graph/Inductive/Query/BFS.hs new/fgl-5.8.2.0/Data/Graph/Inductive/Query/BFS.hs
--- old/fgl-5.8.0.0/Data/Graph/Inductive/Query/BFS.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/Data/Graph/Inductive/Query/BFS.hs 2001-09-09 03:46:40.000000000 +0200
@@ -107,10 +107,12 @@
bf :: (Graph gr) => Queue Path -> gr a b -> RTree
bf q g | queueEmpty q || isEmpty g = []
| otherwise =
- case match v g of
- (Just c, g') -> p:bf (queuePutList (map (:p) (suc' c)) q') g'
- (Nothing, g') -> bf q' g'
- where (p@(v:_),q') = queueGet q
+ case queueGet q of
+ ([], _) -> []
+ (p@(v:_),q') ->
+ case match v g of
+ (Just c, g') -> p:bf (queuePutList (map (:p) (suc' c)) q') g'
+ (Nothing, g') -> bf q' g'
esp :: (Graph gr) => Node -> Node -> gr a b -> Path
esp s t = getPath t . bft s
@@ -128,11 +130,13 @@
lbf :: (Graph gr) => Queue (LPath b) -> gr a b -> LRTree b
lbf q g | queueEmpty q || isEmpty g = []
| otherwise =
- case match v g of
- (Just c, g') ->
- LP p:lbf (queuePutList (map (\v' -> LP (v':p)) (lsuc' c)) q') g'
- (Nothing, g') -> lbf q' g'
- where (LP (p@((v,_):_)),q') = queueGet q
+ case queueGet q of
+ (LP [], _) -> []
+ (LP (p@((v,_):_)),q') ->
+ case match v g of
+ (Just c, g') ->
+ LP p:lbf (queuePutList (map (\v' -> LP (v':p)) (lsuc' c)) q') g'
+ (Nothing, g') -> lbf q' g'
lesp :: (Graph gr) => Node -> Node -> gr a b -> LPath b
lesp s t = getLPath t . lbft s
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/Data/Graph/Inductive/Query/Dominators.hs new/fgl-5.8.2.0/Data/Graph/Inductive/Query/Dominators.hs
--- old/fgl-5.8.0.0/Data/Graph/Inductive/Query/Dominators.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/Data/Graph/Inductive/Query/Dominators.hs 2001-09-09 03:46:40.000000000 +0200
@@ -17,16 +17,17 @@
import Data.Graph.Inductive.Query.DFS
import Data.IntMap (IntMap)
import qualified Data.IntMap as I
+import Data.Maybe (mapMaybe)
import Data.Tree (Tree (..))
import qualified Data.Tree as T
{-# ANN iDom "HLint: ignore Use ***" #-}
--- | return immediate dominators for each node of a graph, given a root
+-- | return immediate dominators for each reachable node of a graph, given a root
iDom :: (Graph gr) => gr a b -> Node -> [(Node,Node)]
iDom g root = let (result, toNode, _) = idomWork g root
in map (\(a, b) -> (toNode ! a, toNode ! b)) (assocs result)
--- | return the set of dominators of the nodes of a graph, given a root
+-- | return the set of dominators of the reachable nodes of a graph, given a root
dom :: (Graph gr) => gr a b -> Node -> [(Node,[Node])]
dom g root = let
(iD, toNode, fromNode) = idomWork g root
@@ -50,24 +51,26 @@
type FromNode = IntMap Node'
idomWork :: (Graph gr) => gr a b -> Node -> (IDom, ToNode, FromNode)
-idomWork g root = let
- -- use depth first tree from root do build the first approximation
- trees@(~[tree]) = dff [root] g
- -- relabel the tree so that paths from the root have increasing nodes
- (s, ntree) = numberTree 0 tree
- -- the approximation iDom0 just maps each node to its parent
- iD0 = array (1, s-1) (tail $ treeEdges (-1) ntree)
- -- fromNode translates graph nodes to relabeled (internal) nodes
- fromNode = I.unionWith const (I.fromList (zip (T.flatten tree) (T.flatten ntree))) (I.fromList (zip (nodes g) (repeat (-1))))
- -- toNode translates internal nodes to graph nodes
- toNode = array (0, s-1) (zip (T.flatten ntree) (T.flatten tree))
- preds = array (1, s-1) [(i, filter (/= -1) (map (fromNode I.!)
- (pre g (toNode ! i)))) | i <- [1..s-1]]
- -- iteratively improve the approximation to find iDom.
- iD = fixEq (refineIDom preds) iD0
- in
- if null trees then error "Dominators.idomWork: root not in graph"
- else (iD, toNode, fromNode)
+idomWork g root =
+ case dff [root] g of
+ [] -> error "Dominators.idomWork: root not in graph"
+ tree : _ ->
+ let
+ nds = reachable root g
+ -- use depth first tree from root do build the first approximation
+ -- relabel the tree so that paths from the root have increasing nodes
+ (s, ntree) = numberTree 0 tree
+ -- the approximation iDom0 just maps each node to its parent
+ iD0 = array (1, s-1) (tail $ treeEdges (-1) ntree)
+ -- fromNode translates graph nodes to relabeled (internal) nodes
+ fromNode = I.unionWith const (I.fromList (zip (T.flatten tree) (T.flatten ntree))) (I.fromList (zip nds (repeat (-1))))
+ -- toNode translates internal nodes to graph nodes
+ toNode = array (0, s-1) (zip (T.flatten ntree) (T.flatten tree))
+ preds = array (1, s-1) [(i, filter (/= -1) (mapMaybe (`I.lookup` fromNode)
+ (pre g (toNode ! i)))) | i <- [1..s-1]]
+ -- iteratively improve the approximation to find iDom.
+ iD = fixEq (refineIDom preds) iD0
+ in (iD, toNode, fromNode)
-- for each node in iDom, find the intersection of all its predecessor's
-- dominating sets, and update iDom accordingly.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/Data/Graph/Inductive/Query/Indep.hs new/fgl-5.8.2.0/Data/Graph/Inductive/Query/Indep.hs
--- old/fgl-5.8.0.0/Data/Graph/Inductive/Query/Indep.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/Data/Graph/Inductive/Query/Indep.hs 2001-09-09 03:46:40.000000000 +0200
@@ -22,12 +22,14 @@
indepSize :: (DynGraph gr) => gr a b -> ([Node], Int)
indepSize g
| isEmpty g = ([], 0)
- | l1 > l2 = il1
- | otherwise = il2
+ | otherwise =
+ case match v g of
+ (Nothing,_) -> error "indepSize: unexpected invalid node"
+ (Just c,g') ->
+ let il1@(_,l1) = indepSize g'
+ il2@(_,l2) = ((v:) *** (+1)) $ indepSize (delNodes (neighbors' c) g')
+ in if l1 > l2 then il1 else il2
where
vs = nodes g
v = snd . maximumBy (compare `on` fst)
. map ((,) =<< deg g) $ vs
- (Just c,g') = match v g
- il1@(_,l1) = indepSize g'
- il2@(_,l2) = ((v:) *** (+1)) $ indepSize (delNodes (neighbors' c) g')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/Data/Graph/Inductive/Query/MST.hs new/fgl-5.8.2.0/Data/Graph/Inductive/Query/MST.hs
--- old/fgl-5.8.0.0/Data/Graph/Inductive/Query/MST.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/Data/Graph/Inductive/Query/MST.hs 2001-09-09 03:46:40.000000000 +0200
@@ -20,10 +20,12 @@
prim :: (Graph gr,Real b) => H.Heap b (LPath b) -> gr a b -> LRTree b
prim h g | H.isEmpty h || isEmpty g = []
prim h g =
- case match v g of
- (Just c,g') -> p:prim (H.mergeAll (h':newEdges p c)) g'
- (Nothing,g') -> prim h' g'
- where (_,p@(LP ((v,_):_)),h') = H.splitMin h
+ case H.splitMin h of
+ (_,p@(LP ((v,_):_)),h') ->
+ case match v g of
+ (Just c,g') -> p:prim (H.mergeAll (h':newEdges p c)) g'
+ (Nothing,g') -> prim h' g'
+ _ -> []
msTreeAt :: (Graph gr,Real b) => Node -> gr a b -> LRTree b
msTreeAt v = prim (H.unit 0 (LP [(v,0)]))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/Data/Graph/Inductive/Query/MaxFlow.hs new/fgl-5.8.2.0/Data/Graph/Inductive/Query/MaxFlow.hs
--- old/fgl-5.8.0.0/Data/Graph/Inductive/Query/MaxFlow.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/Data/Graph/Inductive/Query/MaxFlow.hs 2001-09-09 03:46:40.000000000 +0200
@@ -64,10 +64,11 @@
-- residual capacity of that edge's label. Then return the updated
-- list.
updAdjList::(Num b) => Adj (b,b,b) -> Node -> b -> Bool -> Adj (b,b,b)
-updAdjList s v cf fwd = rs ++ ((x,y+cf',z-cf'),w) : rs'
+updAdjList s v cf fwd =
+ case break ((v==) . snd) s of
+ (rs, ((x,y,z),w):rs') -> rs ++ ((x,y+cf',z-cf'),w) : rs'
+ _ -> error "updAdjList: invalid node"
where
- (rs, ((x,y,z),w):rs') = break ((v==) . snd) s
-
cf' = if fwd
then cf
else negate cf
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/Data/Graph/Inductive/Query/MaxFlow2.hs new/fgl-5.8.2.0/Data/Graph/Inductive/Query/MaxFlow2.hs
--- old/fgl-5.8.0.0/Data/Graph/Inductive/Query/MaxFlow2.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/Data/Graph/Inductive/Query/MaxFlow2.hs 2001-09-09 03:46:40.000000000 +0200
@@ -77,7 +77,7 @@
-- Compute an augmenting path
augPathFused :: Network -> Node -> Node -> Maybe DirPath
augPathFused g s t = listToMaybe $ map reverse $
- filter (\((u,_):_) -> u==t) tree
+ filter ((==t) . fst . head) tree
where tree = bftForEK s g
-- Breadth First Search wrapper function
@@ -87,8 +87,12 @@
-- Breadth First Search, tailored for Edmonds & Karp
bfForEK :: Queue DirPath -> Network -> DirRTree
bfForEK q g
- | queueEmpty q || isEmpty g = []
- | otherwise = case match v g of
+ | queueEmpty q || isEmpty g = []
+ | otherwise =
+ case queueGet q of
+ ([], _) -> []
+ (p@((v,_):_), q1) ->
+ case match v g of
(Nothing, g') -> bfForEK q1 g'
(Just (preAdj, _, _, sucAdj), g') -> p:bfForEK q2 g'
where
@@ -100,7 +104,6 @@
-- Traverse edges forwards if flow less than capacity
suc2 = [ (sucNode,Forward):p
| ((c, f), sucNode) <- sucAdj, c>f]
- where (p@((v,_):_), q1)=queueGet q
-- Extract augmenting path from network; return path as a sequence of
-- edges with direction of traversal, and new network with augmenting
@@ -110,13 +113,17 @@
extractPathFused g [] = ([], g)
extractPathFused g [(_,_)] = ([], g)
extractPathFused g ((u,_):rest@((v,Forward):_)) =
- ((u, v, l, Forward):tailedges, newerg)
- where (tailedges, newerg) = extractPathFused newg rest
- Just (l, newg) = extractEdge g u v (uncurry (>))
+ case extractEdge g u v (uncurry (>)) of
+ Just (l, newg) ->
+ let (tailedges, newerg) = extractPathFused newg rest
+ in ((u, v, l, Forward):tailedges, newerg)
+ Nothing -> error "extractPathFused Forward: invalid edge"
extractPathFused g ((u,_):rest@((v,Backward):_)) =
- ((v, u, l, Backward):tailedges, newerg)
- where (tailedges, newerg) = extractPathFused newg rest
- Just (l, newg) = extractEdge g v u (\(_,f)->(f>0))
+ case extractEdge g v u (\(_,f)->(f>0)) of
+ Just (l, newg) ->
+ let (tailedges, newerg) = extractPathFused newg rest
+ in ((v, u, l, Backward):tailedges, newerg)
+ Nothing -> error "extractPathFused Backward: invalid edge"
ekFusedStep :: EKStepFunc
ekFusedStep g s t = case maybePath of
@@ -142,7 +149,7 @@
[(v, u, f) | (u,v,(_,f)) <- labEdges g, f>0])
augPath :: Network -> Node -> Node -> Maybe Path
-augPath g s t = listToMaybe $ map reverse $ filter (\(u:_) -> u==t) tree
+augPath g s t = listToMaybe $ map reverse $ filter ((==t) . head) tree
where tree = bft s (residualGraph g)
-- Extract augmenting path from network; return path as a sequence of
@@ -168,12 +175,12 @@
-- Return the label on the edge and the graph without the edge
extractEdge :: Gr a b -> Node -> Node -> (b->Bool) -> Maybe (b, Gr a b)
extractEdge g u v p =
- case adj of
- Just (el, _) -> Just (el, (p', node, l, rest) & newg)
- Nothing -> Nothing
- where (Just (p', node, l, s), newg) = match u g
- (adj, rest)=extractAdj s
- (\(l', dest) -> dest==v && p l')
+ case match u g of
+ ((Just (p', node, l, s), newg)) ->
+ let (adj, rest)=extractAdj s (\(l', dest) -> dest==v && p l')
+ in do (el, _) <- adj
+ Just (el, (p', node, l, rest) & newg)
+ _ -> Nothing
-- Extract an item from an adjacency list that satisfies a given
-- predicate. Return the item and the rest of the adjacency list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/Data/Graph/Inductive/Query/Monad.hs new/fgl-5.8.2.0/Data/Graph/Inductive/Query/Monad.hs
--- old/fgl-5.8.0.0/Data/Graph/Inductive/Query/Monad.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/Data/Graph/Inductive/Query/Monad.hs 2001-09-09 03:46:40.000000000 +0200
@@ -78,11 +78,11 @@
fmap = liftM
instance (Monad m) => Applicative (GT m g) where
- pure = return
+ pure x = MGT (\mg->do {g<-mg; return (x,g)})
(<*>) = ap
instance (Monad m) => Monad (GT m g) where
- return x = MGT (\mg->do {g<-mg; return (x,g)})
+ return = pure
f >>= h = MGT (\mg->do {(x,g)<-apply f mg; apply' (h x) g})
condMGT' :: (Monad m) => (s -> Bool) -> GT m s a -> GT m s a -> GT m s a
@@ -218,14 +218,15 @@
dffM vs = MGT (\mg->
do g<-mg
b<-isEmptyM mg
- if b||null vs then return ([],g) else
- let (v:vs') = vs in
- do (mc,g1) <- matchM v mg
+ case (b, vs) of
+ (False, v:vs') -> do
+ (mc,g1) <- matchM v mg
case mc of
Nothing -> apply (dffM vs') (return g1)
Just c -> do (ts, g2) <- apply (dffM (suc' c)) (return g1)
(ts',g3) <- apply (dffM vs') (return g2)
return (Node (node' c) ts:ts',g3)
+ _ -> return ([],g)
)
graphDff :: (GraphM m gr) => [Node] -> m (gr a b) -> m [Tree Node]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/Data/Graph/Inductive/Query/SP.hs new/fgl-5.8.2.0/Data/Graph/Inductive/Query/SP.hs
--- old/fgl-5.8.0.0/Data/Graph/Inductive/Query/SP.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/Data/Graph/Inductive/Query/SP.hs 2001-09-09 03:46:40.000000000 +0200
@@ -28,10 +28,12 @@
-> LRTree b
dijkstra h g | H.isEmpty h || isEmpty g = []
dijkstra h g =
- case match v g of
- (Just c,g') -> p:dijkstra (H.mergeAll (h':expand d p c)) g'
- (Nothing,g') -> dijkstra h' g'
- where (_,p@(LP ((v,d):_)),h') = H.splitMin h
+ case H.splitMin h of
+ (_,p@(LP ((v,d):_)),h') ->
+ case match v g of
+ (Just c,g') -> p:dijkstra (H.mergeAll (h':expand d p c)) g'
+ (Nothing,g') -> dijkstra h' g'
+ _ -> []
-- | Tree of shortest paths from a certain node to the rest of the
-- (reachable) nodes.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/Data/Graph/Inductive/Query/TransClos.hs new/fgl-5.8.2.0/Data/Graph/Inductive/Query/TransClos.hs
--- old/fgl-5.8.0.0/Data/Graph/Inductive/Query/TransClos.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/Data/Graph/Inductive/Query/TransClos.hs 2001-09-09 03:46:40.000000000 +0200
@@ -18,8 +18,8 @@
outU gr = map toEdge . out gr
{-|
-Finds the transitive, reflexive closure of a directed graph.
-Given a graph G=(V,E), its transitive closure is the graph:
+Finds the reflexive-transitive closure of a directed graph.
+Given a graph G=(V,E), its reflexive-transitive closure is the graph:
G* = (V,E*) where E*={(i,j): i,j in V and either i = j or there is a path from i to j in G}
-}
trc :: (DynGraph gr) => gr a b -> gr a ()
@@ -30,11 +30,12 @@
{-|
Finds the reflexive closure of a directed graph.
-Given a graph G=(V,E), its transitive closure is the graph:
+Given a graph G=(V,E), its reflexive closure is the graph:
G* = (V,Er union E) where Er = {(i,i): i in V}
-}
rc :: (DynGraph gr) => gr a b -> gr a ()
-rc g = newEdges `insEdges` insNodes ln empty
+rc g = (newEdges ++ oldEdges) `insEdges` insNodes ln empty
where
ln = labNodes g
newEdges = [ (u, u, ()) | (u, _) <- ln ]
+ oldEdges = [ (u, v, ()) | (u, v, _) <- labEdges g ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/Data/Graph/Inductive/Tree.hs new/fgl-5.8.2.0/Data/Graph/Inductive/Tree.hs
--- old/fgl-5.8.0.0/Data/Graph/Inductive/Tree.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/Data/Graph/Inductive/Tree.hs 2001-09-09 03:46:40.000000000 +0200
@@ -135,6 +135,9 @@
rnf (Gr g) = rnf g
#endif
+instance Functor (Gr a) where
+ fmap = emap
+
#if MIN_VERSION_base (4,8,0)
instance Bifunctor Gr where
bimap = nemap
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/LICENSE new/fgl-5.8.2.0/LICENSE
--- old/fgl-5.8.0.0/LICENSE 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/LICENSE 2001-09-09 03:46:40.000000000 +0200
@@ -1,5 +1,6 @@
Copyright (c) 1999-2008, Martin Erwig
2010, Ivan Lazar Miljenovic
+ 2023, Troels Henriksen
All rights reserved.
Redistribution and use in source and binary forms, with or without
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/fgl-arbitrary/Data/Graph/Inductive/Arbitrary.hs new/fgl-5.8.2.0/fgl-arbitrary/Data/Graph/Inductive/Arbitrary.hs
--- old/fgl-5.8.0.0/fgl-arbitrary/Data/Graph/Inductive/Arbitrary.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/fgl-arbitrary/Data/Graph/Inductive/Arbitrary.hs 2001-09-09 03:46:40.000000000 +0200
@@ -321,23 +321,24 @@
toConnGraph :: forall ag a b. (ArbGraph ag, Arbitrary a, Arbitrary b)
=> ag a b -> Gen (Connected ag a b)
-toConnGraph ag = do a <- arbitrary
- ces <- concat <$> mapM mkE ws
- return $ CG { connNode = v
- , connArbGraph = fromBaseGraph
- . insEdges ces
- . insNode (v,a)
- $ g
- }
+toConnGraph ag = case newNodes 1 g of
+ [] -> error "toConnGraph: cannot make node"
+ v:_ -> do
+ a <- arbitrary
+ ces <- concat <$> mapM (mkE v) ws
+ return $ CG { connNode = v
+ , connArbGraph = fromBaseGraph
+ . insEdges ces
+ . insNode (v,a)
+ $ g
+ }
where
g = toBaseGraph ag
- [v] = newNodes 1 g
-
ws = nodes g
- mkE w = do b <- arbitrary
- return (edgeF p [(v,w,b)])
+ mkE v w = do b <- arbitrary
+ return (edgeF p [(v,w,b)])
p :: GrProxy ag
p = GrProxy
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/fgl.cabal new/fgl-5.8.2.0/fgl.cabal
--- old/fgl-5.8.0.0/fgl.cabal 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/fgl.cabal 2001-09-09 03:46:40.000000000 +0200
@@ -1,9 +1,9 @@
name: fgl
-version: 5.8.0.0
+version: 5.8.2.0
license: BSD3
license-file: LICENSE
author: Martin Erwig, Ivan Lazar Miljenovic
-maintainer: Ivan.Miljenovic(a)gmail.com
+maintainer: athas(a)sigkill.dk
category: Data Structures, Graphs
synopsis: Martin Erwig's Functional Graph Library
@@ -20,7 +20,7 @@
tested-with: GHC == 7.2.2, GHC == 7.4.2, GHC == 7.6.3, GHC == 7.8.4,
GHC == 7.10.3, GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.3,
GHC == 8.6.2, GHC == 8.8.2, GHC == 8.10.7, GHC == 9.0.2,
- GHC == 9.2.3, GHC == 9.4.2
+ GHC == 9.2.4, GHC == 9.4.4, GHC == 9.6.3, GHC == 9.8.1
source-repository head
type: git
@@ -73,7 +73,7 @@
if flag(containers042)
build-depends: containers >= 0.4.2
- , deepseq >= 1.1.0.0 && < 1.5
+ , deepseq >= 1.1.0.0 && < 1.6
else
build-depends: containers < 0.4.2
@@ -93,7 +93,7 @@
build-depends: fgl
, base
, QuickCheck >= 2.8 && < 2.15
- , hspec >= 2.1 && < 2.11
+ , hspec >= 2.1 && < 2.12
, containers
hs-source-dirs: test
@@ -107,6 +107,8 @@
, Data.Graph.Inductive.Query.Properties
ghc-options: -Wall
+ if impl(ghc >= 8.0)
+ ghc-options: -Wall -Wno-star-is-type
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/test/Data/Graph/Inductive/Graph/Properties.hs new/fgl-5.8.2.0/test/Data/Graph/Inductive/Graph/Properties.hs
--- old/fgl-5.8.0.0/test/Data/Graph/Inductive/Graph/Properties.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/test/Data/Graph/Inductive/Graph/Properties.hs 2001-09-09 03:46:40.000000000 +0200
@@ -194,18 +194,17 @@
-- current behaviour is to throw an error if an existing node is
-- used.
valid_insNode :: (DynGraph gr, Ord a, Ord b) => gr a b -> a -> Bool
-valid_insNode g l = gelem v g'
- && sort (labNodes g') == sort (vl : labNodes g)
- && sort (labEdges g') == sort (labEdges g)
- -- Note: not testing whether this changes
- -- nodeRange because newNodes /might/ return
- -- unused nodes in the middle.
- where
- [v] = newNodes 1 g
-
- vl = (v,l)
-
- g' = insNode vl g
+valid_insNode g l =
+ case newNodes 1 g of
+ [v] -> let vl = (v,l)
+ g' = insNode vl g
+ in gelem v g'
+ && sort (labNodes g') == sort (vl : labNodes g)
+ && sort (labEdges g') == sort (labEdges g)
+ -- Note: not testing whether this changes
+ -- nodeRange because newNodes /might/ return
+ -- unused nodes in the middle.
+ _ -> False
-- | Insert a node for every label in the list, but don't add any new
-- edges.
@@ -329,12 +328,13 @@
-- adding the specified number to the graph and then deleting them.
valid_delAllLEdge :: (DynGraph gr, Eq a, Eq b) => gr a b -> NonNegative Int
-> a -> a -> b -> Bool
-valid_delAllLEdge g (NonNegative c) a1 a2 b = equal g' (delAllLEdge le g'')
- where
- [v,w] = newNodes 2 g
- g' = insNodes [(v,a1),(w,a2)] g
- le = (v,w,b)
- g'' = insEdges (replicate c le) g'
+valid_delAllLEdge g (NonNegative c) a1 a2 b =
+ case newNodes 2 g of
+ [v,w] -> let g' = insNodes [(v,a1),(w,a2)] g
+ le = (v,w,b)
+ g'' = insEdges (replicate c le) g'
+ in equal g' (delAllLEdge le g'')
+ _ -> False
-- | There is a version of 'mkGraph' in its documentation that uses
-- 'DynGraph' (hence why it isn't used by default). This ensures
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/test/Data/Graph/Inductive/Query/Properties.hs new/fgl-5.8.2.0/test/Data/Graph/Inductive/Query/Properties.hs
--- old/fgl-5.8.0.0/test/Data/Graph/Inductive/Query/Properties.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/test/Data/Graph/Inductive/Query/Properties.hs 2001-09-09 03:46:40.000000000 +0200
@@ -133,14 +133,25 @@
-- Dominators
test_dom :: Spec
-test_dom = it "dom" $
- sortIt (dom domGraph 1) `shouldMatchList` [ (1, [1])
- , (2, [1,2])
- , (3, [1,2,3])
- , (4, [1,2,4])
- , (5, [1,2,5])
- , (6, [1,2,6])
- ]
+test_dom = describe "dom" $ do
+ it "regular dom" $
+ sortIt (dom domGraph 1) `shouldMatchList` [ (1, [1])
+ , (2, [1,2])
+ , (3, [1,2,3])
+ , (4, [1,2,4])
+ , (5, [1,2,5])
+ , (6, [1,2,6])
+ ]
+ it "multiple components dom" $
+ sortIt (dom domGraph1 1) `shouldMatchList` [ (1, [1])
+ , (2, [1, 2])
+ ]
+ it "directed reachable components dom" $
+ sortIt (dom domGraph2 1) `shouldMatchList` [ (1, [1]) ]
+
+ it "unreachable nodes dom" $
+ sortIt (dom domGraph3 1) `shouldMatchList` [(1,[1]), (2,[1,2])]
+
where
sortIt = map (second sort)
@@ -160,6 +171,23 @@
, (5,2)
]
+-- This graph has two components (independent subgraphs)
+domGraph1 :: Gr () ()
+domGraph1 = mkUGraph [1..3]
+ [ (1,2)
+ ]
+
+-- This graph has no reachables from 1 (but 1 is reachable)
+domGraph2 :: Gr () ()
+domGraph2 = mkUGraph [1..3]
+ [ (2,1)
+ , (2,2)
+ ]
+
+-- From #109: 1 -> 2 <- 3
+domGraph3 :: Gr () ()
+domGraph3 = mkUGraph [1..3] [(1,2), (3,2)]
+
-- -----------------------------------------------------------------------------
-- GVD
@@ -333,26 +361,29 @@
test_sp_Just :: (ArbGraph gr, Graph gr, Real b) =>
Proxy (gr a b) -> gr a b -> Property
test_sp_Just _ g =
- (noNodes g >= 2 && v `elem` bfs u g) ==>
- isJust (spLength u v g) &&
- isJust maybePath &&
- not (null path) &&
- head path == u &&
- last path == v
- where
- [u,v] = take 2 (nodes g)
- maybePath@(Just path) = sp u v g
+ case nodes g of
+ u:v:_ ->
+ v `elem` bfs u g ==>
+ isJust (spLength u v g) &&
+ case sp u v g of
+ Nothing -> False
+ Just path ->
+ not (null path) &&
+ head path == u &&
+ last path == v
+ _ -> property True
-- | Test that 'spLength' and 'sp' return 'Nothing' when destination
-- is not reachable from source.
test_sp_Nothing :: (ArbGraph gr, Graph gr, Real b) =>
Proxy (gr a b) -> gr a b -> Property
test_sp_Nothing _ g =
- (noNodes g >= 2 && not (v `elem` bfs u g)) ==>
- isNothing (spLength u v g) &&
- isNothing (sp u v g)
- where
- [u,v] = take 2 (nodes g)
+ case nodes g of
+ u:v:_ ->
+ not (v `elem` bfs u g) ==>
+ isNothing (spLength u v g) &&
+ isNothing (sp u v g)
+ _ -> property True
-- -----------------------------------------------------------------------------
-- TransClos
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/fgl-5.8.0.0/test/TestSuite.hs new/fgl-5.8.2.0/test/TestSuite.hs
--- old/fgl-5.8.0.0/test/TestSuite.hs 2001-09-09 03:46:40.000000000 +0200
+++ new/fgl-5.8.2.0/test/TestSuite.hs 2001-09-09 03:46:40.000000000 +0200
@@ -79,7 +79,7 @@
propType "subgraph" valid_subgraph
where
- proxyProp str = prop str . ($p)
+ proxyProp str = prop str . ($ p)
propType :: (Testable pr) => String -> (GraphType gr -> pr) -> Spec
propType = prop
@@ -126,7 +126,7 @@
propP "tc" test_tc
propP "rc" test_rc
where
- propP str = prop str . ($p)
+ propP str = prop str . ($ p)
p :: PatriciaTreeP
p = Proxy
1
0