Hello community,

here is the log from the commit of package ghc-constraints for 
openSUSE:Leap:15.2 checked in at 2020-03-13 10:56:45
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Leap:15.2/ghc-constraints (Old)
 and      /work/SRC/openSUSE:Leap:15.2/.ghc-constraints.new.3160 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ghc-constraints"

Fri Mar 13 10:56:45 2020 rev:12 rq:782959 version:0.12

Changes:
--------
--- /work/SRC/openSUSE:Leap:15.2/ghc-constraints/ghc-constraints.changes        
2020-02-19 18:38:38.841972748 +0100
+++ 
/work/SRC/openSUSE:Leap:15.2/.ghc-constraints.new.3160/ghc-constraints.changes  
    2020-03-13 10:56:46.668409123 +0100
@@ -1,0 +2,29 @@
+Fri Feb  7 08:04:07 UTC 2020 - [email protected]
+
+- Update constraints to version 0.12.
+  0.12 [2020.02.03]
+  -----------------
+  * Relax the type signature for `divideTimes`:
+
+    ```diff
+    -dividesTimes :: (Divides a b, Divides a c) :- Divides a (b * c)
+    +dividesTimes ::  Divides a b               :- Divides a (b * c)
+    ```
+
+  * Simplify the type signature of `dividesDef`:
+
+    ```diff
+    -dividesDef :: forall a b. Divides a b :- ((a * Div b a) ~ b)
+    +dividesDef :: forall a b. Divides a b :- (Mod b a ~ 0)
+    ```
+
+    The original type of `diviesDef` can be (partially) recovered by defining
+    it in terms of the new `dividesDef`:
+
+    ```hs
+    dividesDef' :: forall a b. (1 <= a, Divides a b) :- ((a * Div b a) ~ b)
+    dividesDef' = Sub $ case (dividesDef @a @b, euclideanNat @a @b) of
+      (Sub Dict, Sub Dict) -> Dict
+    ```
+
+-------------------------------------------------------------------

Old:
----
  constraints-0.11.2.tar.gz

New:
----
  constraints-0.12.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ ghc-constraints.spec ++++++
--- /var/tmp/diff_new_pack.N1zhJL/_old  2020-03-13 10:56:47.112409440 +0100
+++ /var/tmp/diff_new_pack.N1zhJL/_new  2020-03-13 10:56:47.116409443 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package ghc-constraints
 #
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2020 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -19,7 +19,7 @@
 %global pkg_name constraints
 %bcond_with tests
 Name:           ghc-%{pkg_name}
-Version:        0.11.2
+Version:        0.12
 Release:        0
 Summary:        Constraint manipulation
 License:        BSD-2-Clause

++++++ constraints-0.11.2.tar.gz -> constraints-0.12.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/constraints-0.11.2/CHANGELOG.markdown 
new/constraints-0.12/CHANGELOG.markdown
--- old/constraints-0.11.2/CHANGELOG.markdown   2001-09-09 03:46:40.000000000 
+0200
+++ new/constraints-0.12/CHANGELOG.markdown     2001-09-09 03:46:40.000000000 
+0200
@@ -1,3 +1,28 @@
+0.12 [2020.02.03]
+-----------------
+* Relax the type signature for `divideTimes`:
+
+  ```diff
+  -dividesTimes :: (Divides a b, Divides a c) :- Divides a (b * c)
+  +dividesTimes ::  Divides a b               :- Divides a (b * c)
+  ```
+
+* Simplify the type signature of `dividesDef`:
+
+  ```diff
+  -dividesDef :: forall a b. Divides a b :- ((a * Div b a) ~ b)
+  +dividesDef :: forall a b. Divides a b :- (Mod b a ~ 0)
+  ```
+
+  The original type of `diviesDef` can be (partially) recovered by defining
+  it in terms of the new `dividesDef`:
+
+  ```hs
+  dividesDef' :: forall a b. (1 <= a, Divides a b) :- ((a * Div b a) ~ b)
+  dividesDef' = Sub $ case (dividesDef @a @b, euclideanNat @a @b) of
+    (Sub Dict, Sub Dict) -> Dict
+  ```
+
 0.11.2 [2019.09.06]
 -------------------
 * Depend on the `type-equality` compatibility library so that `(:~~:)` may be
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/constraints-0.11.2/constraints.cabal 
new/constraints-0.12/constraints.cabal
--- old/constraints-0.11.2/constraints.cabal    2001-09-09 03:46:40.000000000 
+0200
+++ new/constraints-0.12/constraints.cabal      2001-09-09 03:46:40.000000000 
+0200
@@ -1,6 +1,6 @@
 name:          constraints
 category:      Constraints
-version:       0.11.2
+version:       0.12
 license:       BSD2
 cabal-version: >= 1.10
 license-file:  LICENSE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/constraints-0.11.2/src/Data/Constraint/Nat.hs 
new/constraints-0.12/src/Data/Constraint/Nat.hs
--- old/constraints-0.11.2/src/Data/Constraint/Nat.hs   2001-09-09 
03:46:40.000000000 +0200
+++ new/constraints-0.12/src/Data/Constraint/Nat.hs     2001-09-09 
03:46:40.000000000 +0200
@@ -323,7 +323,7 @@
 dividesPlus :: (Divides a b, Divides a c) :- Divides a (b + c)
 dividesPlus = Sub axiom
 
-dividesTimes :: (Divides a b, Divides a c) :- Divides a (b * c)
+dividesTimes :: Divides a b :- Divides a (b * c)
 dividesTimes = Sub axiom
 
 dividesMin :: (Divides a b, Divides a c) :- Divides a (Min b c)
@@ -332,7 +332,10 @@
 dividesMax :: (Divides a b, Divides a c) :- Divides a (Max b c)
 dividesMax = Sub axiom
 
-dividesDef :: forall a b. Divides a b :- ((a * Div b a) ~ b)
+-- This `dividesDef` is simpler and more convenient than Divides a b :- ((a * 
Div b a) ~ b)
+-- because the latter can be easily derived via 'euclideanNat', but not vice 
versa.
+
+dividesDef :: forall a b. Divides a b :- (Mod b a ~ 0)
 dividesDef = Sub axiom
 
 dividesPow :: (1 <= n, Divides a b) :- Divides a (b^n)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/constraints-0.11.2/src/Data/Constraint.hs 
new/constraints-0.12/src/Data/Constraint.hs
--- old/constraints-0.11.2/src/Data/Constraint.hs       2001-09-09 
03:46:40.000000000 +0200
+++ new/constraints-0.12/src/Data/Constraint.hs 2001-09-09 03:46:40.000000000 
+0200
@@ -208,6 +208,7 @@
 infixr 9 :-
 infixr 9 ⊢
 
+-- | Type entailment, as written with a single character.
 type (⊢) = (:-)
 
 -- | This is the type of entailment.


Reply via email to