openSUSE Commits
Threads by month
- ----- 2025 -----
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- 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
August 2017
- 1 participants
- 2097 discussions
Hello community,
here is the log from the commit of package 000product for openSUSE:Factory checked in at 2017-08-31 21:04:10
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000product (Old)
and /work/SRC/openSUSE:Factory/.000product.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000product"
Thu Aug 31 21:04:10 2017 rev:76 rq: version:unknown
Thu Aug 31 21:04:06 2017 rev:75 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
_service:product_converter:openSUSE-Addon-Lang-cd-cd-x86_64.kiwi: same change
_service:product_converter:openSUSE-Addon-Lang-release.spec: same change
_service:product_converter:openSUSE-Addon-NonOss-cd-addon-nonoss-i586_x86_64.kiwi: same change
_service:product_converter:openSUSE-Addon-NonOss-ftp-ftp-i586_x86_64.kiwi: same change
_service:product_converter:openSUSE-Addon-NonOss-release.spec: same change
++++++ _service:product_converter:openSUSE-Kubic-dvd5-DVD-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.Nym7u8/_old 2017-08-31 21:04:33.475179345 +0200
+++ /var/tmp/diff_new_pack.Nym7u8/_new 2017-08-31 21:04:33.487177658 +0200
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE-Kubic___20170830" schemaversion="4.1">
+<image name="OBS__openSUSE-Kubic___20170831" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -34,9 +34,9 @@
<productvar name="RUN_ISOHYBRID">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20170830</productvar>
+ <productvar name="VERSION">20170831</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse-kubic:20170830,openSUSE Kubic</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse-kubic:20170831,openSUSE Kubic</productinfo>
<productinfo name="LINGUAS">en_US </productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/suse-tumbleweed</productoption>
++++++ _service:product_converter:openSUSE-Kubic-release.spec ++++++
--- /var/tmp/diff_new_pack.Nym7u8/_old 2017-08-31 21:04:33.707146753 +0200
+++ /var/tmp/diff_new_pack.Nym7u8/_new 2017-08-31 21:04:33.743141696 +0200
@@ -20,7 +20,7 @@
Summary: openSUSE Kubic
License: GPL-2.0+
Group: System/Fhs
-Version: 20170830
+Version: 20170831
Release: 0
BuildRequires: skelcd-openSUSE
Recommends: branding
@@ -31,9 +31,9 @@
Provides: %name-%version
Provides: product() = openSUSE-Kubic
-Provides: product(openSUSE-Kubic) = 20170830-0
+Provides: product(openSUSE-Kubic) = 20170831-0
Provides: product-label() = openSUSE%20Kubic
-Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%2Dkubic%3A20170830
+Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%2Dkubic%3A20170831
Provides: product-url(releasenotes) = https%3A%2F%2Fwww.suse.com%2Freleasenotes%2F%{_target_cpu}%2FSUSE%2DCAASP%2F1.0%2Frelease%2Dnotes%2Dcaasp.rpm
Provides: product-endoflife()
@@ -90,7 +90,7 @@
PRETTY_NAME="openSUSE Kubic"
ID="opensuse-kubic"
ANSI_COLOR="0;32"
-CPE_NAME="cpe:/o:opensuse:opensuse-kubic:20170830"
+CPE_NAME="cpe:/o:opensuse:opensuse-kubic:20170831"
EOF
@@ -100,11 +100,11 @@
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>openSUSE-Kubic</name>
- <version>20170830</version>
+ <version>20170831</version>
<release>0</release>
<endoflife></endoflife>
<arch>%{_target_cpu}</arch>
- <cpeid>cpe:/o:opensuse:opensuse-kubic:20170830</cpeid>
+ <cpeid>cpe:/o:opensuse:opensuse-kubic:20170831</cpeid>
<productline>openSUSE-Kubic</productline>
<register>
<target/>
++++++ _service:product_converter:openSUSE-cd-mini-i586.kiwi ++++++
--- /var/tmp/diff_new_pack.Nym7u8/_old 2017-08-31 21:04:33.943113599 +0200
+++ /var/tmp/diff_new_pack.Nym7u8/_new 2017-08-31 21:04:33.947113037 +0200
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20170830" schemaversion="4.1">
+<image name="OBS__openSUSE___20170831" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -31,9 +31,9 @@
<productvar name="RUN_ISOHYBRID">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20170830</productvar>
+ <productvar name="VERSION">20170831</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20170830,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20170831,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de en en_GB en_US es fi fr hu it ja nb nl pl pt pt_BR ru sv zh zh_CN zh_TW </productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/suse-tumbleweed</productoption>
_service:product_converter:openSUSE-cd-mini-x86_64.kiwi: same change
_service:product_converter:openSUSE-dvd5-dvd-i586.kiwi: same change
++++++ _service:product_converter:openSUSE-dvd5-dvd-promo-i586.kiwi ++++++
--- /var/tmp/diff_new_pack.Nym7u8/_old 2017-08-31 21:04:34.427045605 +0200
+++ /var/tmp/diff_new_pack.Nym7u8/_new 2017-08-31 21:04:34.427045605 +0200
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20170830" schemaversion="4.1">
+<image name="OBS__openSUSE___20170831" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -32,9 +32,9 @@
<productvar name="RUN_MEDIA_CHECK">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20170830</productvar>
+ <productvar name="VERSION">20170831</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20170830,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20170831,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de en en_GB en_US es fi fr hu it ja nb nl pl pt pt_BR ru sv zh zh_CN zh_TW </productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/suse-tumbleweed</productoption>
_service:product_converter:openSUSE-dvd5-dvd-promo-x86_64.kiwi: same change
++++++ _service:product_converter:openSUSE-dvd5-dvd-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.Nym7u8/_old 2017-08-31 21:04:35.098951202 +0200
+++ /var/tmp/diff_new_pack.Nym7u8/_new 2017-08-31 21:04:35.110949516 +0200
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20170830" schemaversion="4.1">
+<image name="OBS__openSUSE___20170831" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -34,9 +34,9 @@
<productvar name="RUN_ISOHYBRID">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20170830</productvar>
+ <productvar name="VERSION">20170831</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20170830,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20170831,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de en en_GB en_US es fi fr hu it ja nb nl pl pt pt_BR ru sv zh zh_CN zh_TW </productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/suse-tumbleweed</productoption>
++++++ _service:product_converter:openSUSE-dvd9-dvd-biarch-i586_x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.Nym7u8/_old 2017-08-31 21:04:35.390910182 +0200
+++ /var/tmp/diff_new_pack.Nym7u8/_new 2017-08-31 21:04:35.390910182 +0200
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20170830" schemaversion="4.1">
+<image name="OBS__openSUSE___20170831" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -36,9 +36,9 @@
<productvar name="RUN_MEDIA_CHECK">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20170830</productvar>
+ <productvar name="VERSION">20170831</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20170830,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20170831,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de en en_GB en_US es fi fr hu it ja nb nl pl pt pt_BR ru sv zh zh_CN zh_TW </productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/suse-tumbleweed</productoption>
++++++ _service:product_converter:openSUSE-ftp-ftp-i586_x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.Nym7u8/_old 2017-08-31 21:04:35.518892199 +0200
+++ /var/tmp/diff_new_pack.Nym7u8/_new 2017-08-31 21:04:35.526891075 +0200
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20170830" schemaversion="4.1">
+<image name="OBS__openSUSE___20170831" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -23,7 +23,7 @@
<productoptions>
<productvar name="DISTNAME">openSUSE</productvar>
<productvar name="FLAVOR">ftp</productvar>
- <productvar name="MEDIUM_NAME">openSUSE-20170830-i586-x86_64</productvar>
+ <productvar name="MEDIUM_NAME">openSUSE-20170831-i586-x86_64</productvar>
<productvar name="MULTIPLE_MEDIA">true</productvar>
<productvar name="PRODUCT_DIR">/</productvar>
<productvar name="PRODUCT_NAME">$DISTNAME-$FLAVOR</productvar>
@@ -34,9 +34,9 @@
<productvar name="REPO_ONLY">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20170830</productvar>
+ <productvar name="VERSION">20170831</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20170830,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20170831,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de en en_GB en_US es fi fr hu it ja nb nl pl pt pt_BR ru sv zh zh_CN zh_TW </productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="DEBUGMEDIUM">2</productoption>
++++++ _service:product_converter:openSUSE-release.spec ++++++
--- /var/tmp/diff_new_pack.Nym7u8/_old 2017-08-31 21:04:35.778855674 +0200
+++ /var/tmp/diff_new_pack.Nym7u8/_new 2017-08-31 21:04:35.802852302 +0200
@@ -18,7 +18,7 @@
Name: openSUSE-release
%define product openSUSE
-Version: 20170830
+Version: 20170831
Release: 0
# 0 is the product release, not the build release of this package
Provides: aaa_version
@@ -28,7 +28,7 @@
Obsoletes: aaa_version
Obsoletes: openSUSE-Promo-release <= 11.1
Obsoletes: openSUSE-release-live <= 11.0
-Obsoletes: product_flavor(%{product}) < 20170830
+Obsoletes: product_flavor(%{product}) < 20170831
Conflicts: sles-release <= 10 sled-release <= 10 core-release <= 10
# bnc#826592
Provides: weakremover(kernel-default) < 3.11
@@ -46,7 +46,7 @@
BuildRequires: skelcd-openSUSE
Provides: %name-%version
Provides: product() = openSUSE
-Provides: product(openSUSE) = 20170830-0
+Provides: product(openSUSE) = 20170831-0
%ifarch x86_64
Provides: product-register-target() = openSUSE%2DTumbleweed%2Dx86_64
%endif
@@ -60,7 +60,7 @@
Provides: product-register-target() = openSUSE%2DTumbleweed%2Daarch64
%endif
Provides: product-label() = openSUSE
-Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%3A20170830
+Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%3A20170831
Provides: product-url(releasenotes) = http%3A%2F%2Fdoc.opensuse.org%2Frelease%2Dnotes%2Fx86_64%2FopenSUSE%2FTumbleweed%2Frelease%2Dnotes%2DopenSUSE.rpm
Provides: product-url(repository) = http%3A%2F%2Fdownload.opensuse.org%2Ftumbleweed%2Frepo%2Foss%2F
@@ -8109,10 +8109,10 @@
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>openSUSE</name>
- <version>20170830</version>
+ <version>20170831</version>
<release>0</release>
<arch>%{_target_cpu}</arch>
- <cpeid>cpe:/o:opensuse:opensuse:20170830</cpeid>
+ <cpeid>cpe:/o:opensuse:opensuse:20170831</cpeid>
<productline>openSUSE</productline>
<register>
%ifarch x86_64
openSUSE-release.spec: same change
++++++ openSUSE-Kubic.product ++++++
--- /var/tmp/diff_new_pack.Nym7u8/_old 2017-08-31 21:04:37.746579206 +0200
+++ /var/tmp/diff_new_pack.Nym7u8/_new 2017-08-31 21:04:37.750578644 +0200
@@ -6,7 +6,7 @@
<name>openSUSE-Kubic</name>
<releasepkgname>openSUSE-Kubic-release</releasepkgname>
<endoflife/>
- <version>20170830</version>
+ <version>20170831</version>
<!-- release is no longer optional -->
<release>0</release>
<productline>openSUSE-Kubic</productline>
++++++ openSUSE.product ++++++
--- /var/tmp/diff_new_pack.Nym7u8/_old 2017-08-31 21:04:37.846565158 +0200
+++ /var/tmp/diff_new_pack.Nym7u8/_new 2017-08-31 21:04:37.850564595 +0200
@@ -4,7 +4,7 @@
<product>
<vendor>openSUSE</vendor>
<name>openSUSE</name>
- <version>20170830</version>
+ <version>20170831</version>
<release>0</release>
<productline>openSUSE</productline>
1
0
Hello community,
here is the log from the commit of package claws-mail for openSUSE:Factory checked in at 2017-08-31 21:03:59
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/claws-mail (Old)
and /work/SRC/openSUSE:Factory/.claws-mail.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "claws-mail"
Thu Aug 31 21:03:59 2017 rev:77 rq:519929 version:3.15.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/claws-mail/claws-mail.changes 2017-06-20 09:38:50.789170752 +0200
+++ /work/SRC/openSUSE:Factory/.claws-mail.new/claws-mail.changes 2017-08-31 21:04:21.696834221 +0200
@@ -1,0 +2,27 @@
+Wed Aug 30 13:49:18 UTC 2017 - psychonaut(a)nothingisreal.com
+
+- update to 3.15.1
+ * Bug fixes:
+ o bug 3348, 'Contact pictures not deleted when contact is
+ deleted'
+ o bug 3721, 'Fails to build in Debian kfreebsd-*'
+ o bug 3744, 'Crash upon deleting tags.'
+ o bug 3822, 'AttRemover deletes message and fails to create
+ new one when disk is full'
+ o bug 3828, '"Re-edit" should not recycle the Message-ID
+ header'
+ o bug 3835, 'autogen.sh fails with invalid test on line 33'
+ o bug 3855, 'segfault at startup with old profile and IMAP
+ account'
+ o bug 3866, 'slibtool causes compile failure'
+ o fix crash in sieve manager window when no account has sieve
+ enabled.
+ o fix incorrect labels in folder selection dialog.
+ o fix RSSyl feeds getting renamed to "Untitled feed".
+ o fix Resent-Date value.
+ o Fix typo around libarchive in configure.ac.
+- rename claws-mail-3.15.0_libcanberra-gtk3.patch to
+ libcanberra-gtk3.patch
+- refreshed libcanberra-gtk3.patch and imap-Fix-use-after-free.patch
+
+-------------------------------------------------------------------
Old:
----
claws-mail-3.15.0.tar.xz
claws-mail-3.15.0_libcanberra-gtk3.patch
New:
----
claws-mail-3.15.1.tar.xz
libcanberra-gtk3.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ claws-mail.spec ++++++
--- /var/tmp/diff_new_pack.3289b5/_old 2017-08-31 21:04:23.464585849 +0200
+++ /var/tmp/diff_new_pack.3289b5/_new 2017-08-31 21:04:23.564571801 +0200
@@ -29,14 +29,14 @@
%bcond_with tnef
Name: claws-mail
-Version: 3.15.0
+Version: 3.15.1
Release: 0
Url: http://www.claws-mail.org/
Summary: A configurable email client
License: GPL-3.0+
Group: Productivity/Networking/Email/Clients
Source: http://www.claws-mail.org/download.php?file=releases/%{name}-%{version}.tar…
-Patch: claws-mail-3.15.0_libcanberra-gtk3.patch
+Patch: libcanberra-gtk3.patch
Patch1: imap-Fix-use-after-free.patch
BuildRequires: NetworkManager-devel
BuildRequires: compface-devel
++++++ claws-mail-3.15.0.tar.xz -> claws-mail-3.15.1.tar.xz ++++++
++++ 57995 lines of diff (skipped)
++++++ imap-Fix-use-after-free.patch ++++++
--- /var/tmp/diff_new_pack.3289b5/_old 2017-08-31 21:04:28.695850848 +0200
+++ /var/tmp/diff_new_pack.3289b5/_new 2017-08-31 21:04:28.695850848 +0200
@@ -1,17 +1,6 @@
-From da97dac531e28bb8f607b02c14adfc738fb2b86d Mon Sep 17 00:00:00 2001
-From: Ricardo Mones <ricardo(a)mones.org>
-Date: Tue, 18 Apr 2017 12:13:33 +0200
-Subject: [PATCH] Fix use after free
-
----
- src/imap.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/src/imap.c b/src/imap.c
-index eb810a3aa..0e1e777aa 100644
---- a/src/imap.c
-+++ b/src/imap.c
-@@ -1320,8 +1320,9 @@ try_again:
+--- claws-mail-3.15.1_orig/src/imap.c 2017-08-28 19:50:26.000000000 +0200
++++ claws-mail-3.15.1/src/imap.c 2017-08-30 16:11:53.374696914 +0200
+@@ -1323,8 +1323,9 @@
}
if (acc_pass != NULL) {
++++++ libcanberra-gtk3.patch ++++++
--- claws-mail-3.15.1_orig/configure 2017-08-29 21:37:11.000000000 +0200
+++ claws-mail-3.15.1/configure 2017-08-30 16:23:33.881148253 +0200
@@ -22588,12 +22588,12 @@
pkg_cv_libcanberra_gtk_CFLAGS="$libcanberra_gtk_CFLAGS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcanberra-gtk >= 0.6\""; } >&5
- ($PKG_CONFIG --exists --print-errors "libcanberra-gtk >= 0.6") 2>&5
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcanberra-gtk3 >= 0.6\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "libcanberra-gtk3 >= 0.6") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
- pkg_cv_libcanberra_gtk_CFLAGS=`$PKG_CONFIG --cflags "libcanberra-gtk >= 0.6" 2>/dev/null`
+ pkg_cv_libcanberra_gtk_CFLAGS=`$PKG_CONFIG --cflags "libcanberra-gtk3 >= 0.6" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
@@ -22605,12 +22605,12 @@
pkg_cv_libcanberra_gtk_LIBS="$libcanberra_gtk_LIBS"
elif test -n "$PKG_CONFIG"; then
if test -n "$PKG_CONFIG" && \
- { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcanberra-gtk >= 0.6\""; } >&5
- ($PKG_CONFIG --exists --print-errors "libcanberra-gtk >= 0.6") 2>&5
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libcanberra-gtk3 >= 0.6\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "libcanberra-gtk3 >= 0.6") 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; then
- pkg_cv_libcanberra_gtk_LIBS=`$PKG_CONFIG --libs "libcanberra-gtk >= 0.6" 2>/dev/null`
+ pkg_cv_libcanberra_gtk_LIBS=`$PKG_CONFIG --libs "libcanberra-gtk3 >= 0.6" 2>/dev/null`
test "x$?" != "x0" && pkg_failed=yes
else
pkg_failed=yes
@@ -22631,9 +22631,9 @@
_pkg_short_errors_supported=no
fi
if test $_pkg_short_errors_supported = yes; then
- libcanberra_gtk_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libcanberra-gtk >= 0.6" 2>&1`
+ libcanberra_gtk_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libcanberra-gtk3 >= 0.6" 2>&1`
else
- libcanberra_gtk_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libcanberra-gtk >= 0.6" 2>&1`
+ libcanberra_gtk_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libcanberra-gtk3 >= 0.6" 2>&1`
fi
# Put the nasty error message in config.log where it belongs
echo "$libcanberra_gtk_PKG_ERRORS" >&5
1
0
Hello community,
here is the log from the commit of package vamp-plugin-sdk for openSUSE:Factory checked in at 2017-08-31 21:03:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/vamp-plugin-sdk (Old)
and /work/SRC/openSUSE:Factory/.vamp-plugin-sdk.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "vamp-plugin-sdk"
Thu Aug 31 21:03:56 2017 rev:17 rq:519921 version:2.7.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/vamp-plugin-sdk/vamp-plugin-sdk.changes 2015-08-05 06:50:10.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.vamp-plugin-sdk.new/vamp-plugin-sdk.changes 2017-08-31 21:04:18.309310174 +0200
@@ -1,0 +2,34 @@
+Mon Aug 28 17:06:46 UTC 2017 - aloisio(a)gmx.com
+
+- Update to version 2.7.1
+ * Fix inclusion mechanism for FFTs which could cause a host
+ application to crash in certain circumstances due to
+ conflicting versions of C-linkage symbols
+ version 2.7:
+ * Add ability to PluginLoader to list plugins only in (or not in)
+ certain library files
+ * Fix fixed-sample-rate output timestamps in printout from the
+ simple host, and add regression test script using test plugin
+ * Switch the convenience FFT interface for plugin usage from the
+ very slow reference implementation previously provided, to the
+ somewhat faster KissFFT
+ * Add a top-secret compiler flag to switch internal FFTs to
+ single-precision only
+ * Fix some small but long-standing memory leaks and minor bugs
+ version 2.6:
+ * Add a simple C-linkage API for plugin library discovery and
+ loading -- the missing part when trying to use Vamp plugins
+ from C or a language with only C-linkage foreign-function
+ interface
+ * Fix bug in PluginBufferingAdapter reset() function, which
+ failed to reset timestamp rewrites (symptom: timestamps
+ appeared to continue to ascend from end point on next run after
+ a reset)
+ * Fix sometime 1-sample rounding error in
+ PluginInputDomainAdapter
+ * Update build files for more recent OS versions
+ * Add -L option to simple host, as synonym for --list-full
+ * Add a combined Visual C++ solution that includes the plugin
+ SDK, host SDK, example plugins, and simple host projects
+
+-------------------------------------------------------------------
Old:
----
vamp-plugin-sdk-2.5.tar.gz
New:
----
vamp-plugin-sdk-2.7.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ vamp-plugin-sdk.spec ++++++
--- /var/tmp/diff_new_pack.ga2jiu/_old 2017-08-31 21:04:19.797101137 +0200
+++ /var/tmp/diff_new_pack.ga2jiu/_new 2017-08-31 21:04:19.801100575 +0200
@@ -1,7 +1,7 @@
#
# spec file for package vamp-plugin-sdk
#
-# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 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
@@ -17,21 +17,21 @@
Name: vamp-plugin-sdk
-Version: 2.5
+Version: 2.7.1
Release: 0
Summary: An API for audio analysis and feature extraction plugins
License: MIT
Group: Productivity/Multimedia/Sound/Utilities
Url: http://www.vamp-plugins.org/
-Source0: code.soundsoftware.ac.uk/attachments/download/690/%{name}-%{version}.tar.gz
+Source0: https://code.soundsoftware.ac.uk/attachments/download/2206/%{name}-%{versio…
Source1: baselibs.conf
BuildRequires: doxygen
BuildRequires: fdupes
BuildRequires: gcc-c++
BuildRequires: graphviz
BuildRequires: help2man
-BuildRequires: libsndfile-devel
-BuildRequires: pkg-config
+BuildRequires: pkgconfig
+BuildRequires: pkgconfig(sndfile)
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
++++++ vamp-plugin-sdk-2.5.tar.gz -> vamp-plugin-sdk-2.7.1.tar.gz ++++++
++++ 11151 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package nvme-cli for openSUSE:Factory checked in at 2017-08-31 21:03:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/nvme-cli (Old)
and /work/SRC/openSUSE:Factory/.nvme-cli.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "nvme-cli"
Thu Aug 31 21:03:50 2017 rev:17 rq:519919 version:1.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/nvme-cli/nvme-cli.changes 2017-07-02 13:38:21.301565607 +0200
+++ /work/SRC/openSUSE:Factory/.nvme-cli.new/nvme-cli.changes 2017-08-31 21:04:14.649824338 +0200
@@ -1,0 +2,6 @@
+Thu Aug 31 10:21:34 UTC 2017 - jthumshirn(a)suse.com
+
+- Fix hostid parsing (bsc#1049272)
+ + 0007-nvme-cli-fix-connecting-failure-due-to-invalid-uuid-format.patch
+
+-------------------------------------------------------------------
New:
----
0007-nvme-cli-fix-connecting-failure-due-to-invalid-uuid-format.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ nvme-cli.spec ++++++
--- /var/tmp/diff_new_pack.TUtswx/_old 2017-08-31 21:04:16.429574280 +0200
+++ /var/tmp/diff_new_pack.TUtswx/_new 2017-08-31 21:04:16.473568099 +0200
@@ -36,6 +36,7 @@
Patch4: 0004-nvme-cli-id-ctrl-display-additional-fields.patch
Patch5: 0005-nvme-cli-add-ns-descs-subcommand.patch
Patch6: 0006-fabrics-add-hostid-option-to-connect-command.patch
+Patch7: 0007-nvme-cli-fix-connecting-failure-due-to-invalid-uuid-format.patch
%description
NVMe is a fast, scalable, direct attached storage interface. The nvme
@@ -50,6 +51,7 @@
%patch4 -p1
%patch5 -p1
%patch6 -p1
+%patch7 -p1
%build
echo %{version} > version
++++++ 0007-nvme-cli-fix-connecting-failure-due-to-invalid-uuid-format.patch ++++++
>From 0832d06cd62d3541489a3b74e6280b6b68522880 Mon Sep 17 00:00:00 2001
From: Guan Junxiong <guanjunxiong(a)huawei.com>
Date: Thu, 3 Aug 2017 21:38:16 +0800
Subject: [PATCH] nvme-cli: fix connecting failure due to invalid uuid format
of hostid
When we connect or discover a target with --hostid option via the
/etc/nvme/hostid file, we fails this operation because the hostid
is only 35 not 36 bytes which doesn't pass the uuid checking in the
kernel.The last character is overridden with null bytes because fgets
reads at most one less than sizeof of buffer characters.
Signed-off-by: Guan Junxiong <guanjunxiong(a)huawei.com>
Reviewed-by: Christoph Hellwig <hch(a)lst.de>
Signed-off-by: Keith Busch <keith.busch(a)intel.com>
---
fabrics.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fabrics.c b/fabrics.c
index da4e04e..9ed1127 100644
--- a/fabrics.c
+++ b/fabrics.c
@@ -463,7 +463,7 @@ static int nvmf_hostnqn_file(void)
static int nvmf_hostid_file(void)
{
FILE *f;
- char hostid[NVMF_HOSTID_SIZE];
+ char hostid[NVMF_HOSTID_SIZE + 1];
int ret = false;
f = fopen(PATH_NVMF_HOSTID, "r");
1
0
Hello community,
here is the log from the commit of package java-9-openjdk for openSUSE:Factory checked in at 2017-08-31 21:03:48
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/java-9-openjdk (Old)
and /work/SRC/openSUSE:Factory/.java-9-openjdk.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "java-9-openjdk"
Thu Aug 31 21:03:48 2017 rev:10 rq:519865 version:9.0.0.0~181
Changes:
--------
--- /work/SRC/openSUSE:Factory/java-9-openjdk/java-9-openjdk.changes 2017-08-29 11:47:10.150201781 +0200
+++ /work/SRC/openSUSE:Factory/.java-9-openjdk.new/java-9-openjdk.changes 2017-08-31 21:04:07.194871772 +0200
@@ -1,0 +2,12 @@
+Thu Aug 31 05:45:07 UTC 2017 - fstrba(a)suse.com
+
+- Added patch:
+ * ppc32-atomic_copy64.patch
+ - fix in a zero assembly for PPC that prevented 32-bit ppc
+ build to succeed
+- Removed patch:
+ * 8073754-stack-overflow-9-build.patch
+ - rendered unnecessary by the above
+- Minor packaging fixes for zero build architectures
+
+-------------------------------------------------------------------
Old:
----
8073754-stack-overflow-9-build.patch
New:
----
ppc32-atomic_copy64.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ java-9-openjdk.spec ++++++
--- /var/tmp/diff_new_pack.sxM61D/_old 2017-08-31 21:04:11.374284556 +0200
+++ /var/tmp/diff_new_pack.sxM61D/_new 2017-08-31 21:04:11.378283995 +0200
@@ -180,7 +180,7 @@
Patch103: jdk9-gcc6.patch
#
Patch200: ppc_stack_overflow_fix.patch
-Patch201: 8073754-stack-overflow-9-build.patch
+Patch201: ppc32-atomic_copy64.patch
#
Patch300: java-9-openjdk-linuxfilestore.patch
Patch301: bootcycle_jobs.patch
@@ -574,9 +574,6 @@
%ifnarch %{arm}
--with-num-cores="$NUM_PROC" \
%endif
-%ifarch ppc
- --with-boot-jdk-jvmargs="-XX:ThreadStackSize=2240" \
-%endif
%ifarch s390
--with-boot-jdk-jvmargs="-Xms256M -Xmx768M" \
%endif
@@ -1015,9 +1012,6 @@
%dir %{_jvmdir}/%{sdkdir}/lib
%dir %{_jvmdir}/%{sdkdir}/lib/jli
%dir %{_jvmdir}/%{sdkdir}/lib/server
-%if %{with zero}
-%dir %{_jvmdir}/%{sdkdir}/lib/zero
-%endif
%dir %{_jvmdir}/%{sdkdir}/lib/desktop
%dir %{_jvmdir}/%{sdkdir}/lib/security
@@ -1059,7 +1053,9 @@
%{_jvmdir}/%{sdkdir}/conf/security/policy/unlimited/default_local.policy
%{_jvmdir}/%{sdkdir}/conf/security/policy/unlimited/default_US_export.policy
%{_jvmdir}/%{sdkdir}/conf/sound.properties
+%if ! %{with zero}
%{_jvmdir}/%{sdkdir}/lib/classlist
+%endif
%{_jvmdir}/%{sdkdir}/lib/desktop/jconsole.desktop
%{_jvmdir}/%{sdkdir}/lib/desktop/policytool.desktop
%{_jvmdir}/%{sdkdir}/lib/jexec
@@ -1149,7 +1145,9 @@
%{_jvmdir}/%{sdkdir}/bin/jdb
%{_jvmdir}/%{sdkdir}/bin/jdeprscan
%{_jvmdir}/%{sdkdir}/bin/jdeps
+%if ! %{with zero}
%{_jvmdir}/%{sdkdir}/bin/jhsdb
+%endif
%{_jvmdir}/%{sdkdir}/bin/jimage
%{_jvmdir}/%{sdkdir}/bin/jinfo
%{_jvmdir}/%{sdkdir}/bin/jlink
@@ -1178,7 +1176,9 @@
%{_jvmdir}/%{sdkdir}/include/orb.idl
%{_jvmdir}/%{sdkdir}/lib/ct.sym
%{_jvmdir}/%{sdkdir}/lib/libattach.so
+%if ! %{with zero}
%{_jvmdir}/%{sdkdir}/lib/libsaproc.so
+%endif
%if 0%{?suse_version} > 1320
%ghost %{_jvmdir}/%{sdkdir}/lib/tzdb.dat
%endif
++++++ ppc32-atomic_copy64.patch ++++++
--- jdk9/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.hpp 2017-08-29 08:23:05.410120138 +0200
+++ jdk9/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.hpp 2017-08-29 08:24:18.834121391 +0200
@@ -36,12 +36,12 @@
// Atomically copy 64 bits of data
static void atomic_copy64(volatile void *src, volatile void *dst) {
-#if defined(PPC32)
+#if defined(PPC32) && !defined(__NO_FPRS__)
double tmp;
- asm volatile ("lfd %0, 0(%1)\n"
- "stfd %0, 0(%2)\n"
- : "=f"(tmp)
- : "b"(src), "b"(dst));
+ asm volatile ("lfd %0, %2\n"
+ "stfd %0, %1\n"
+ : "=&f"(tmp), "=Q"(*(volatile double*)dst)
+ : "Q"(*(volatile double*)src));
#elif defined(S390) && !defined(_LP64)
double tmp;
asm volatile ("ld %0, 0(%1)\n"
1
0
Hello community,
here is the log from the commit of package leechcraft for openSUSE:Factory checked in at 2017-08-31 21:03:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/leechcraft (Old)
and /work/SRC/openSUSE:Factory/.leechcraft.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "leechcraft"
Thu Aug 31 21:03:44 2017 rev:45 rq:519817 version:0.6.70+git.9561.gaf7a4f70b8
Changes:
--------
--- /work/SRC/openSUSE:Factory/leechcraft/leechcraft-doc.changes 2017-08-24 18:53:04.923649054 +0200
+++ /work/SRC/openSUSE:Factory/.leechcraft.new/leechcraft-doc.changes 2017-08-31 21:03:57.276265353 +0200
@@ -1,0 +2,5 @@
+Sun Aug 13 07:51:04 UTC 2017 - dap.darkness(a)gmail.com
+
+- Updated to 0.6.70-9561-gaf7a4f70b8 git snapshot.
+
+-------------------------------------------------------------------
--- /work/SRC/openSUSE:Factory/leechcraft/leechcraft.changes 2017-08-24 18:53:04.995638917 +0200
+++ /work/SRC/openSUSE:Factory/.leechcraft.new/leechcraft.changes 2017-08-31 21:03:58.232131052 +0200
@@ -1,0 +2,11 @@
+Sun Aug 13 07:51:04 UTC 2017 - dap.darkness(a)gmail.com
+
+- Updated to 0.6.70-9561-gaf7a4f70b8 git snapshot:
+ * Bug #2042 was resolved (segfault on Qt 5.6 → 5.9 update).
+- Monocle plugin requires gcc ≥ 7.
+- Let's use Qt5 lastfm library.
+- Enabled back plugins since Qt5Qwt6 became available:
+ * lemon — another network Monitor;
+ * liznoo — power manager.
+
+-------------------------------------------------------------------
Old:
----
leechcraft-0.6.70-9432-g81ef79f367.tar.xz
New:
----
leechcraft-0.6.70-9561-gaf7a4f70b8.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ leechcraft-doc.spec ++++++
--- /var/tmp/diff_new_pack.9sqXWJ/_old 2017-08-31 21:04:00.807769171 +0200
+++ /var/tmp/diff_new_pack.9sqXWJ/_new 2017-08-31 21:04:00.807769171 +0200
@@ -16,16 +16,16 @@
#
-%define LEECHCRAFT_VERSION 0.6.70-9432-g81ef79f367
+%define LEECHCRAFT_VERSION 0.6.70-9561-gaf7a4f70b8
Name: leechcraft-doc
-Version: 0.6.70+git.9432.g81ef79f367
+Version: 0.6.70+git.9561.gaf7a4f70b8
Release: 0
Summary: Modular Internet Client Documentation
License: BSL-1.0
Group: Development/Libraries/Other
Url: http://leechcraft.org
-Source0: https://dist.leechcraft.org/LeechCraft/0.6.75/leechcraft-%{LEECHCRAFT_VERSI…
+Source0: leechcraft-%{LEECHCRAFT_VERSION}.tar.xz
BuildRequires: doxygen >= 1.8.3.1
BuildRequires: fdupes
++++++ leechcraft.spec ++++++
--- /var/tmp/diff_new_pack.9sqXWJ/_old 2017-08-31 21:04:00.891757370 +0200
+++ /var/tmp/diff_new_pack.9sqXWJ/_new 2017-08-31 21:04:00.907755122 +0200
@@ -24,7 +24,7 @@
%define qml_dir %{_datadir}/leechcraft/qml5
%define so_ver -qt5-0_6_75
-%define LEECHCRAFT_VERSION 0.6.70-9432-g81ef79f367
+%define LEECHCRAFT_VERSION 0.6.70-9561-gaf7a4f70b8
%define db_postfix %{so_ver}_1
%define gui_postfix %{so_ver}_1
@@ -43,14 +43,14 @@
%define xsd_postfix %{so_ver}
Name: leechcraft
-Version: 0.6.70+git.9432.g81ef79f367
+Version: 0.6.70+git.9561.gaf7a4f70b8
Release: 0
Summary: Modular Internet Client
License: BSL-1.0
Group: Productivity/Networking/Other
Url: http://leechcraft.org
-Source0: https://dist.leechcraft.org/LeechCraft/0.6.75/leechcraft-%{LEECHCRAFT_VERSI…
+Source0: leechcraft-%{LEECHCRAFT_VERSION}.tar.xz
Source4: %{name}-rpmlintrc
Source8: leechcraft-session.1
Source9: lc_plugin_wrapper-qt5.1
@@ -70,18 +70,21 @@
BuildRequires: cmake >= 3.5
BuildRequires: fdupes
BuildRequires: file-devel
-%if 0%{?suse_version} > 1325
-BuildRequires: gcc-c++ >= 6
-%else
+%if 0%{?suse_version} <= 1320
+%if 0%{?sle_version} == 120200
BuildRequires: gcc6-c++
+%else
+BuildRequires: gcc7-c++
+%endif
+%else
+BuildRequires: gcc-c++ >= 7
%endif
BuildRequires: hicolor-icon-theme
BuildRequires: libQt5Gui-private-headers-devel
BuildRequires: libjpeg-devel
-BuildRequires: liblastfm-devel
+BuildRequires: liblastfm-qt5-devel
BuildRequires: libsensors4-devel
BuildRequires: libtidy-devel
-# BuildRequires: llvm-clang
BuildRequires: pkgconfig
%if 0%{?suse_version} > 1325
BuildRequires: wt-devel
@@ -99,6 +102,7 @@
BuildRequires: pkgconfig(Qt5Qml)
BuildRequires: pkgconfig(Qt5Quick)
BuildRequires: pkgconfig(Qt5QuickWidgets)
+BuildRequires: pkgconfig(Qt5Qwt6)
BuildRequires: pkgconfig(Qt5Script)
BuildRequires: pkgconfig(Qt5Sensors)
BuildRequires: pkgconfig(Qt5Sql)
@@ -111,7 +115,9 @@
BuildRequires: pkgconfig(Qt5Xml)
BuildRequires: pkgconfig(Qt5XmlPatterns)
BuildRequires: pkgconfig(bzip2)
+%if 0%{?suse_version} > 1325 || 0%{?sle_version} >= 120300
BuildRequires: pkgconfig(ddjvuapi)
+%endif
%if 0%{?suse_version} > 1325
BuildRequires: pkgconfig(geoip)
%endif
@@ -145,8 +151,10 @@
BuildRequires: pkgconfig(libtorrent-rasterbar)
%endif
BuildRequires: pkgconfig(libudev)
+%if 0%{?suse_version} > 1325 || 0%{?sle_version} >= 120300
BuildRequires: pkgconfig(poppler-cpp)
BuildRequires: pkgconfig(poppler-qt5)
+%endif
BuildRequires: pkgconfig(purple)
BuildRequires: pkgconfig(qca2-qt5)
BuildRequires: pkgconfig(qtermwidget5)
@@ -187,8 +195,9 @@
%endif
Obsoletes: %{name}-choroid
Obsoletes: %{name}-harbinger
-Obsoletes: %{name}-lemon
-Obsoletes: %{name}-liznoo
+%if 0%{?suse_version} < 1325 && 0%{?sle_version} <= 120200
+Obsoletes: %{name}-monocle
+%endif
Obsoletes: %{name}-nacheku
Obsoletes: %{name}-popishu
Obsoletes: %{name}-qrosp
@@ -979,6 +988,8 @@
Recommends: %{name}-krigstask
Recommends: %{name}-laughty
Recommends: %{name}-launchy
+Recommends: %{name}-lemon
+Recommends: %{name}-liznoo
Recommends: %{name}-mellonetray
Recommends: %{name}-ooronee
Recommends: %{name}-sb2
@@ -1248,6 +1259,17 @@
This package provides a third-party application launcher plugin for Leechcraft.
+%package lemon
+Summary: LeechCraft Network Monitor Module
+License: BSL-1.0
+Group: Productivity/Networking/Other
+Requires: %{name} = %{version}
+Requires: %{name}-sb = %{version}
+
+%description lemon
+This package provides another Network Monitor plugin for Leechcraft.
+
+
%package lhtr
Summary: LeechCraft HTML WYSIWYG editor Module
License: BSL-1.0
@@ -1260,6 +1282,29 @@
usable with mail and blog modules.
+%package liznoo
+Summary: LeechCraft Power management module
+License: BSL-1.0
+Group: Productivity/Networking/Other
+Requires: %{name} = %{version}
+Requires: upower
+Recommends: %{name}-sb = %{version}
+
+%description liznoo
+This package provides a power manager plugin for Leechcraft
+which makes use of upower.
+
+Features:
+ * Displays battery status in LeechCraft tray.
+ * Displays battery charge and power consumption history.
+ * Notifies other plugins about sleep and resume events. This way, plugins
+ like Azoth can disconnect from servers gracefully on hibernation and
+ reconnect properly on startup.
+ * Allows the user to sleep/hibernate the system.
+ * Notifies the user when device starts discharging or charging.
+ * Notifies the user on low capacity.
+
+
%package lmp
Summary: LeechCraft Media player Module
License: BSL-1.0
@@ -1407,6 +1452,7 @@
for LeechCraft SB2.
+%if 0%{?suse_version} > 1325 || 0%{?sle_version} >= 120300
%package monocle
Summary: LeechCraft Document viewer Module
License: BSL-1.0
@@ -1480,7 +1526,7 @@
%description monocle-seen
This package contains a LeechCraft Monocle subplugin for djvu
document support via the djvulibre backend.
-
+%endif
%package musiczombie
Summary: LeechCraft Azoth MusicBrainz.org client Module
@@ -2250,14 +2296,19 @@
-DCMAKE_CXX_FLAGS="${tmpflags} -Doverride=" \
-DCMAKE_INSTALL_PREFIX=%{_prefix} \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-%if 0%{?suse_version} < 1325
+%if 0%{?suse_version} <= 1320
+%if 0%{?sle_version} == 120200
-DCMAKE_C_COMPILER=/usr/bin/gcc-6 \
-DCMAKE_CXX_COMPILER=/usr/bin/g++-6 \
+%else
+ -DCMAKE_C_COMPILER=/usr/bin/gcc-7 \
+ -DCMAKE_CXX_COMPILER=/usr/bin/g++-7 \
+%endif
%endif
-DSTRICT_LICENSING=True \
-DWITH_DBUS_LOADERS=True \
-DWITH_PCRE=True \
- -DWITH_QWT=False \
+ -DWITH_QWT=True \
-DENABLE_UTIL_TESTS=True \
-DENABLE_ADVANCEDNOTIFICATIONS=True \
-DENABLE_AGGREGATOR=True \
@@ -2318,7 +2369,7 @@
-DENABLE_LASTFMSCROBBLE=True \
-DENABLE_LAUGHTY=True \
-DENABLE_LAUNCHY=True \
- -DENABLE_LEMON=False \
+ -DENABLE_LEMON=True \
-DENABLE_LHTR=True \
-DWITH_LHTR_HTML=True \
%if 0%{?suse_version} > 1325
@@ -2326,7 +2377,7 @@
%else
-DUSE_LIBTIDY_HTML5=False \
%endif
- -DENABLE_LIZNOO=False \
+ -DENABLE_LIZNOO=True \
-DENABLE_LMP=True \
-DENABLE_LMP_BRAINSLUGZ=True \
-DENABLE_LMP_FRADJ=True \
@@ -2339,10 +2390,14 @@
-DENABLE_LMP_PPL=True \
-DENABLE_LMP_PPL_TESTS=True \
-DENABLE_MELLONETRAY=True \
+%if 0%{?suse_version} > 1325 || 0%{?sle_version} >= 120300
-DENABLE_MONOCLE=True \
-DENABLE_MONOCLE_MU=False \
-DENABLE_MONOCLE_PDF=True \
-DENABLE_MONOCLE_POSTRUS=True \
+%else
+ -DENABLE_MONOCLE=False \
+%endif
-DENABLE_MUSICZOMBIE=True \
%if %{with ffmpeg}
-DWITH_MUSICZOMBIE_CHROMAPRINT=True \
@@ -2934,12 +2989,26 @@
%{translations_dir}/*craft_launchy_*.qm
%{qml_dir}/launchy
+%files lemon
+%defattr(-,root,root)
+%{plugin_dir}/lib%{name}_lemon.so
+%{qml_dir}/lemon/
+%{translations_dir}/*craft_lemon_*.qm
+%{settings_dir}/lemonsettings.xml
+
%files lhtr
%defattr(-,root,root)
%{plugin_dir}/lib%{name}_lhtr.so
%{translations_dir}/*craft_lhtr_*.qm
%{settings_dir}/lhtrsettings.xml
+%files liznoo
+%defattr(-,root,root)
+%{plugin_dir}/lib%{name}_liznoo.so
+%{settings_dir}/liznoosettings.xml
+%{translations_dir}/*craft_liznoo_*.qm
+%{qml_dir}/liznoo
+
%files lmp
%defattr(-,root,root)
%{settings_dir}/lmpsettings.xml
@@ -3011,6 +3080,7 @@
%{qml_dir}/mellonetray/
%{translations_dir}/*craft_mellonetray_*.qm
+%if 0%{?suse_version} > 1325 || 0%{?sle_version} >= 120300
%files monocle
%defattr(-,root,root)
%{plugin_dir}/lib%{name}_monocle.so
@@ -3053,6 +3123,7 @@
%{_datadir}/applications/%{name}-monocle-seen-qt5.desktop
%{translations_dir}/*craft_monocle_seen_??.qm
%{translations_dir}/*craft_monocle_seen_??_??.qm
+%endif
%files musiczombie
%defattr(-,root,root)
++++++ leechcraft-0.6.70-9432-g81ef79f367.tar.xz -> leechcraft-0.6.70-9561-gaf7a4f70b8.tar.xz ++++++
++++ 9543 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package python-usb for openSUSE:Factory checked in at 2017-08-31 21:03:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-usb (Old)
and /work/SRC/openSUSE:Factory/.python-usb.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-usb"
Thu Aug 31 21:03:43 2017 rev:13 rq:519811 version:1.0.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-usb/python-usb.changes 2016-10-04 15:58:55.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.python-usb.new/python-usb.changes 2017-08-31 21:03:50.389232993 +0200
@@ -1,0 +2,6 @@
+Wed Aug 30 23:52:59 UTC 2017 - toddrme2178(a)gmail.com
+
+- singlespec auto-conversion
+- Use pypi source URL.
+
+-------------------------------------------------------------------
Old:
----
1.0.0.tar.gz
New:
----
PyUSB-1.0.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-usb.spec ++++++
--- /var/tmp/diff_new_pack.gcQ2Ps/_old 2017-08-31 21:03:52.224975068 +0200
+++ /var/tmp/diff_new_pack.gcQ2Ps/_new 2017-08-31 21:03:52.276967762 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-usb
#
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 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
@@ -16,8 +16,7 @@
#
-%define versuffix %nil
-
+%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-usb
Version: 1.0.0
Release: 0
@@ -25,31 +24,31 @@
License: BSD-3-Clause
Group: Development/Languages/Python
Url: https://github.com/walac/pyusb
-Source: https://github.com/walac/pyusb/archive/%{version}%{versuffix}.tar.gz
+Source: https://files.pythonhosted.org/packages/source/p/pyusb/PyUSB-%{version}.tar…
+BuildRequires: %{python_module devel}
BuildRequires: dos2unix
-BuildRequires: python-devel
+BuildRequires: python-rpm-macros
BuildRoot: %{_tmppath}/%{name}-%{version}-build
-%if 0%{?suse_version} > 1110
BuildArch: noarch
-%endif
+%python_subpackages
%description
Aims to provide easy USB access to the Python language.
%prep
-%setup -q -n pyusb-%{version}%{versuffix}
+%setup -q -n pyusb-%{version}
# Convert dos format files to unix format
find . -name "*.rst" -exec dos2unix {} \;
%build
-python setup.py build
+%python_build
%install
-python setup.py install --prefix=%{_prefix} --root=%{buildroot}
+%python_install
-%files
+%files %{python_files}
%defattr(-,root,root)
-%{python_sitelib}/*
%doc ACKNOWLEDGEMENTS LICENSE README.rst docs/*
+%{python_sitelib}/*
%changelog
1
0
Hello community,
here is the log from the commit of package python-JsonWeb for openSUSE:Factory checked in at 2017-08-31 21:03:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-JsonWeb (Old)
and /work/SRC/openSUSE:Factory/.python-JsonWeb.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-JsonWeb"
Thu Aug 31 21:03:41 2017 rev:2 rq:519800 version:0.8.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-JsonWeb/python-JsonWeb.changes 2015-11-10 10:03:02.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.python-JsonWeb.new/python-JsonWeb.changes 2017-08-31 21:03:49.253392580 +0200
@@ -1,0 +2,5 @@
+Thu Aug 24 13:42:06 UTC 2017 - jmatejek(a)suse.com
+
+- singlespec auto-conversion
+
+-------------------------------------------------------------------
@@ -4,0 +10 @@
+
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-JsonWeb.spec ++++++
--- /var/tmp/diff_new_pack.HM4LLk/_old 2017-08-31 21:03:50.189261089 +0200
+++ /var/tmp/diff_new_pack.HM4LLk/_new 2017-08-31 21:03:50.205258842 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-JsonWeb
#
-# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 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
@@ -16,54 +16,40 @@
#
+%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-JsonWeb
Version: 0.8.2
Release: 0
-Summary: Quickly add json serialization and deserialization to your python classes
+Summary: Add JSON (de)serialization to your python objects
License: BSD-3-Clause
Group: Development/Languages/Python
Url: http://www.jsonweb.info/
-Source: https://pypi.python.org/packages/source/J/JsonWeb/JsonWeb-%{version}.tar.gz
-BuildRequires: python-coverage
-BuildRequires: python-devel
-BuildRequires: python-nose
+Source: https://files.pythonhosted.org/packages/source/J/JsonWeb/JsonWeb-%{version}…
+BuildRequires: %{python_module coverage}
+BuildRequires: %{python_module devel}
+BuildRequires: %{python_module nose}
+BuildRequires: python-rpm-macros
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildArch: noarch
+%python_subpackages
%description
-JsonWeb
-========
-Add JSON (de)serialization to your python objects :
-
- >>> from jsonweb import decode, encode
- >>> @encode.to_object()
- ... @decode.from_object()
- ... class User(object):
- ... def __init__(self, nick, email):
- ... self.nick = nick
- ... self.email = email
- >>> json_str = encode.dumper(User("cool_user123", "cool_user123(a)example.com"))
- >>> print json_str
- {"nick": "cool_user123", "__type__": "User", "email": "cool_user123(a)example.com"}
- >>> user = decode.loader(json_str)
- >>> print user.nick
- cool_user123
- >>> print user
- <User object at 0x10145e390>
+Quickly add json serialization and deserialization
+to your python classes.
%prep
%setup -q -n JsonWeb-%{version}
%build
-python setup.py build
+%python_build
%install
-python setup.py install --prefix=%{_prefix} --root=%{buildroot}
+%python_install
%check
-nosetests
+%python_expand nosetests-%{$python_bin_suffix}
-%files
+%files %{python_files}
%defattr(-,root,root,-)
%doc README.rst
%{python_sitelib}/*
1
0
Hello community,
here is the log from the commit of package imapfilter for openSUSE:Factory checked in at 2017-08-31 21:03:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/imapfilter (Old)
and /work/SRC/openSUSE:Factory/.imapfilter.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "imapfilter"
Thu Aug 31 21:03:37 2017 rev:38 rq:519798 version:2.6.10
Changes:
--------
--- /work/SRC/openSUSE:Factory/imapfilter/imapfilter.changes 2017-03-03 17:44:50.262563226 +0100
+++ /work/SRC/openSUSE:Factory/.imapfilter.new/imapfilter.changes 2017-08-31 21:03:47.801596560 +0200
@@ -1,0 +2,5 @@
+Tue Aug 22 13:11:15 UTC 2017 - crrodriguez(a)opensuse.org
+
+- fix build failure with lua 5.3. missing include directory.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ imapfilter.spec ++++++
--- /var/tmp/diff_new_pack.n2Il3F/_old 2017-08-31 21:03:48.997428544 +0200
+++ /var/tmp/diff_new_pack.n2Il3F/_new 2017-08-31 21:03:49.025424610 +0200
@@ -46,7 +46,7 @@
%setup -q
%build
-%{__make} PREFIX="%{_prefix}" MANDIR="%{_prefix}/share/man" MYCFLAGS="$RPM_OPT_FLAGS" %{?jobs:-j%{jobs}}
+%{__make} PREFIX="%{_prefix}" MANDIR="%{_prefix}/share/man" MYCFLAGS="$RPM_OPT_FLAGS -I%lua_incdir" %{?jobs:-j%{jobs}}
%install
%makeinstall PREFIX="%{_prefix}" MANDIR="%{_prefix}/share/man"
1
0
Hello community,
here is the log from the commit of package planner for openSUSE:Factory checked in at 2017-08-31 21:03:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/planner (Old)
and /work/SRC/openSUSE:Factory/.planner.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "planner"
Thu Aug 31 21:03:35 2017 rev:48 rq:519759 version:0.14.6
Changes:
--------
--- /work/SRC/openSUSE:Factory/planner/planner.changes 2016-03-29 10:39:26.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.planner.new/planner.changes 2017-08-31 21:03:46.385795483 +0200
@@ -1,0 +2,7 @@
+Tue Aug 15 09:18:46 UTC 2017 - zaitor(a)opensuse.org
+
+- Drop gtk-doc BuildRequires and pass --enable-gtk-doc=no to
+ configure, needed with new gtk-doc 1.26, as gtkdoc-mktmpl is
+ removed from it.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ planner.spec ++++++
--- /var/tmp/diff_new_pack.RZLzRc/_old 2017-08-31 21:03:47.565629714 +0200
+++ /var/tmp/diff_new_pack.RZLzRc/_new 2017-08-31 21:03:47.569629152 +0200
@@ -1,7 +1,7 @@
#
# spec file for package planner
#
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 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
@@ -42,7 +42,6 @@
%endif
BuildRequires: fdupes
BuildRequires: gnome-common
-BuildRequires: gtk-doc
BuildRequires: intltool
BuildRequires: libglade2-devel
BuildRequires: libgnomecanvas-devel
@@ -109,7 +108,7 @@
--disable-schemas-install \
--disable-scrollkeeper \
--disable-update-mimedb \
- --enable-gtk-doc \
+ --enable-gtk-doc=no \
--with-database=no \
--enable-python \
--enable-python-plugin \
1
0
Hello community,
here is the log from the commit of package 389-ds for openSUSE:Factory checked in at 2017-08-31 21:03:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/389-ds (Old)
and /work/SRC/openSUSE:Factory/.389-ds.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "389-ds"
Thu Aug 31 21:03:33 2017 rev:11 rq:519693 version:1.3.6.6
Changes:
--------
--- /work/SRC/openSUSE:Factory/389-ds/389-ds.changes 2017-08-29 11:44:09.683640576 +0200
+++ /work/SRC/openSUSE:Factory/.389-ds.new/389-ds.changes 2017-08-31 21:03:43.130252892 +0200
@@ -1,0 +2,6 @@
+Wed Aug 30 12:29:40 UTC 2017 - bwiedemann(a)suse.com
+
+- Add 389-ds-reproducible.patch not use build date in build num
+ to make build reproducible (boo#1047218)
+
+-------------------------------------------------------------------
New:
----
389-ds-reproducible.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ 389-ds.spec ++++++
--- /var/tmp/diff_new_pack.y7yG6W/_old 2017-08-31 21:03:45.253954508 +0200
+++ /var/tmp/diff_new_pack.y7yG6W/_new 2017-08-31 21:03:45.277951137 +0200
@@ -35,6 +35,8 @@
# PATCH-FIX-SLES -- Make init scripts LSB conform
Patch1: 0001-init_fhs.patch
Patch2: 0002-use-python2-for-selinux-detection.patch
+# PATCH-FIX-UPSTREAM -- Allow to override buildnum
+Patch3: 389-ds-reproducible.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: autoconf
BuildRequires: automake
@@ -113,6 +115,7 @@
%setup -a 1 -qn %name-base-%version
%patch1 -p1
%patch2 -p1
+%patch3 -p1
%build
autoreconf -fi
++++++ 389-ds-reproducible.patch ++++++
Upstream: https://pagure.io/389-ds-base/issue/49347
Index: 389-ds-base-1.3.4.14/buildnum.pl
===================================================================
--- 389-ds-base-1.3.4.14.orig/buildnum.pl
+++ 389-ds-base-1.3.4.14/buildnum.pl
@@ -31,7 +31,7 @@ if ($opt_H) {exitHelp();}
$platdir = $opt_p;
# Get current time
-@now = gmtime;
+@now = gmtime($ENV{SOURCE_DATE_EPOCH} || time);
# Format buildnum as YYYY.DDD.HHMM
$year = $now[5] + 1900;
1
0
Hello community,
here is the log from the commit of package wireshark for openSUSE:Factory checked in at 2017-08-31 21:03:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/wireshark (Old)
and /work/SRC/openSUSE:Factory/.wireshark.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "wireshark"
Thu Aug 31 21:03:31 2017 rev:128 rq:519687 version:2.4.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/wireshark/wireshark.changes 2017-08-28 15:19:32.668665799 +0200
+++ /work/SRC/openSUSE:Factory/.wireshark.new/wireshark.changes 2017-08-31 21:03:39.954699064 +0200
@@ -1,0 +2,15 @@
+Tue Aug 29 21:38:52 UTC 2017 - astieger(a)suse.com
+
+- Wireshark 2.4.1:
+ This release fixes minor vulnerabilities that could be used to
+ trigger dissector crashes, infinite loops, or cause excessive use
+ of memory resources by making Wireshark read specially crafted
+ packages from the network or a capture file:
+ * CVE-2017-13767: MSDP dissector infinite loop (bsc#1056248)
+ * CVE-2017-13766: Profinet I/O buffer overrun (bsc#1056249)
+ * CVE-2017-13764: Modbus dissector crash (bsc#1056250)
+ * CVE-2017-13765: IrCOMM dissector buffer overrun (bsc#1056251)
+ * Further bug fixes and updated protocol support as listed in:
+ https://www.wireshark.org/docs/relnotes/wireshark-2.4.1.html
+
+-------------------------------------------------------------------
@@ -59 +74 @@
- trigger dissector crashes, infinite loopsm or cause excessive use
+ trigger dissector crashes, infinite loops, or cause excessive use
@@ -75 +90 @@
- trigger dissector crashes, infinite loopsm or cause excessive use
+ trigger dissector crashes, infinite loops, or cause excessive use
Old:
----
SIGNATURES-2.4.0.txt
wireshark-2.4.0.tar.xz
New:
----
SIGNATURES-2.4.1.txt
wireshark-2.4.1.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ wireshark.spec ++++++
--- /var/tmp/diff_new_pack.nLKBXT/_old 2017-08-31 21:03:42.302369211 +0200
+++ /var/tmp/diff_new_pack.nLKBXT/_new 2017-08-31 21:03:42.322366402 +0200
@@ -20,7 +20,7 @@
%define libutil libwsutil8
%define libwire libwireshark10
%define libtap libwiretap7
-%define libcodecs libwscodecs0
+%define libcodecs libwscodecs1
# disable caps
%define use_caps 0
# Enable new Qt gui on new releases and build old GTK2 gui on old releases
@@ -36,7 +36,7 @@
%bcond_with geoip
%endif
Name: wireshark
-Version: 2.4.0
+Version: 2.4.1
Release: 0
Summary: A Network Traffic Analyser
License: GPL-2.0+ AND GPL-3.0+
++++++ SIGNATURES-2.4.0.txt -> SIGNATURES-2.4.1.txt ++++++
--- /work/SRC/openSUSE:Factory/wireshark/SIGNATURES-2.4.0.txt 2017-08-28 15:19:32.120742799 +0200
+++ /work/SRC/openSUSE:Factory/.wireshark.new/SIGNATURES-2.4.1.txt 2017-08-31 21:03:37.211084546 +0200
@@ -1,60 +1,60 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
-wireshark-2.4.0.tar.xz: 28755596 bytes
-SHA256(wireshark-2.4.0.tar.xz)=890bb41b826ff04e98fb089446ab37e5871e16205278bfeffc2a7c7364de3b04
-RIPEMD160(wireshark-2.4.0.tar.xz)=277b417c0e52f7e5ad9278c63a7d5ac74e552518
-SHA1(wireshark-2.4.0.tar.xz)=aa8f53300f60956553902ccc755c0dfe86f768fc
-MD5(wireshark-2.4.0.tar.xz)=655106f8cf3bb8f521336d3a8ab5b10b
-
-Wireshark-win64-2.4.0.exe: 59110928 bytes
-SHA256(Wireshark-win64-2.4.0.exe)=341f97b1d8fc25b4e149fb20b718451aa8646856faa0576071037e60ed47f8b0
-RIPEMD160(Wireshark-win64-2.4.0.exe)=57c5eca5d4efcb1c2b8c80cd79e6cb4d505e9c03
-SHA1(Wireshark-win64-2.4.0.exe)=0452d3aa7ad1cc1240c0cdd9457159de244ca8be
-MD5(Wireshark-win64-2.4.0.exe)=f611afe4a6d59f7ad18fd573232e30fe
-
-Wireshark-win32-2.4.0.exe: 53570224 bytes
-SHA256(Wireshark-win32-2.4.0.exe)=971e6021d6ba214aa938ff43436b70525efc8f5286e556066dfa4863603e7c5e
-RIPEMD160(Wireshark-win32-2.4.0.exe)=04cd96b19aff8375fe1217c1829a850d1a3753ca
-SHA1(Wireshark-win32-2.4.0.exe)=6e8351cb2aba06173aabc907922338edbcda63d2
-MD5(Wireshark-win32-2.4.0.exe)=d96a10a99ca06e36528a0e6c662c17e5
-
-Wireshark-win32-2.4.0.msi: 43032576 bytes
-SHA256(Wireshark-win32-2.4.0.msi)=b730430387efab0bc3b01e5f10a2e708672d75157663c251fcb20431d6649a9f
-RIPEMD160(Wireshark-win32-2.4.0.msi)=d726fbb03f9fdf64771620955ec6ae1924b23fbf
-SHA1(Wireshark-win32-2.4.0.msi)=fe3cb12f5efa30e0619e81ba81271b334e4cd053
-MD5(Wireshark-win32-2.4.0.msi)=5cd3e1b7ed315c3f5e928c9c8001dbf9
-
-Wireshark-win64-2.4.0.msi: 48455680 bytes
-SHA256(Wireshark-win64-2.4.0.msi)=609262ab1ecdda6fd3ed3a5ccddfb5b8d939b7a28616c5dacddcb1528c2b02d9
-RIPEMD160(Wireshark-win64-2.4.0.msi)=e74ec7c8892a9413074cb1474d9fa335829c05be
-SHA1(Wireshark-win64-2.4.0.msi)=1f4437025097362c8e76841a7569bb72da6cd036
-MD5(Wireshark-win64-2.4.0.msi)=6fb4c41eb8a5300e0b0200ea7c1d56a4
-
-WiresharkPortable_2.4.0.paf.exe: 46243888 bytes
-SHA256(WiresharkPortable_2.4.0.paf.exe)=76dfafd12ad82a19fffe0d99b48e9ba5dd1b77ce9c566dcf19cdf32fffb40f22
-RIPEMD160(WiresharkPortable_2.4.0.paf.exe)=65cbdfca286976a652a931c8e0c989c4e431efbe
-SHA1(WiresharkPortable_2.4.0.paf.exe)=8c84ecf4455f34f7624ae1056f1af568a02bd2e0
-MD5(WiresharkPortable_2.4.0.paf.exe)=8544747f6a4a89ee88d965953a1ff8b1
-
-Wireshark 2.4.0 Intel 64.dmg: 35144406 bytes
-SHA256(Wireshark 2.4.0 Intel 64.dmg)=20c2e5fa8ec302fc47100ad42f8d2020e629a72b75a7343929206d3274bd08b2
-RIPEMD160(Wireshark 2.4.0 Intel 64.dmg)=978eab476a2ab3dcae2080902dc3d8f223f21aed
-SHA1(Wireshark 2.4.0 Intel 64.dmg)=5aecbddef5a762a0a4c36c9312b727bf671c0992
-MD5(Wireshark 2.4.0 Intel 64.dmg)=2cf632f801dc810c5f0378fa983fc9e9
+wireshark-2.4.1.tar.xz: 28780384 bytes
+SHA256(wireshark-2.4.1.tar.xz)=02ddbcf9b10f9dfa1e36eec00fe00cb5b5ce8e07203843baf056ac7909911fcd
+RIPEMD160(wireshark-2.4.1.tar.xz)=4e47f79741fe09ed404e03ab51be617abc3ae3d5
+SHA1(wireshark-2.4.1.tar.xz)=2a52aeefba0a45747b1e4593c82c6efc33aa4182
+MD5(wireshark-2.4.1.tar.xz)=22b925108e0b65d6560f0af161157266
+
+Wireshark-win32-2.4.1.exe: 53597448 bytes
+SHA256(Wireshark-win32-2.4.1.exe)=8a2be35c125010538692130af6fc4f9384e3a3caa4f49eec7fc17e238512c067
+RIPEMD160(Wireshark-win32-2.4.1.exe)=a9c9567857ca768835ed9ab040a2ae1b86df779f
+SHA1(Wireshark-win32-2.4.1.exe)=392c5eebe1aef355e6e660e34cb98ad2dde5e2b2
+MD5(Wireshark-win32-2.4.1.exe)=f7daa36cdd469bf067e258c9d1847ee6
+
+Wireshark-win64-2.4.1.exe: 59132608 bytes
+SHA256(Wireshark-win64-2.4.1.exe)=c97d6a43bca6e706975b45bfa99d320674003673f8bc8337954694ef14e6cc26
+RIPEMD160(Wireshark-win64-2.4.1.exe)=70efd612db44caa65f40946557891fd952445a4e
+SHA1(Wireshark-win64-2.4.1.exe)=0ccf8188aa3970adea3003c0e7bff12cd6d34313
+MD5(Wireshark-win64-2.4.1.exe)=2e71aed667c5a6de9acced176a504939
+
+Wireshark-win32-2.4.1.msi: 43048960 bytes
+SHA256(Wireshark-win32-2.4.1.msi)=467f29e274fa6da0072295198217ba324db7885d49f1d6e6e40008622ffe3ea0
+RIPEMD160(Wireshark-win32-2.4.1.msi)=16832d856347c305c14403e65c79f10c7961affd
+SHA1(Wireshark-win32-2.4.1.msi)=a04faea8ee31bbd621719605c95ade9536aebab6
+MD5(Wireshark-win32-2.4.1.msi)=9000a088689fcd24253d363a853bb7aa
+
+Wireshark-win64-2.4.1.msi: 48398336 bytes
+SHA256(Wireshark-win64-2.4.1.msi)=7a75a2eebfa197dd34c17707ddf6065921b24af58470fa85d44498402866db1c
+RIPEMD160(Wireshark-win64-2.4.1.msi)=13ae3e3cace6968af1507d26d5b0224f3a5c427c
+SHA1(Wireshark-win64-2.4.1.msi)=5f533bf7e6226ebb9d59f0cef149015869364e69
+MD5(Wireshark-win64-2.4.1.msi)=cfb3b9fe4b73e4cb6d5bfc0b37b7d841
+
+WiresharkPortable_2.4.1.paf.exe: 46309696 bytes
+SHA256(WiresharkPortable_2.4.1.paf.exe)=f75753a335cb6278527c21822c07a08a3ca977c83da23c7fc80c7bbdf3fabcce
+RIPEMD160(WiresharkPortable_2.4.1.paf.exe)=953ed214dc32d07fa5891ec8738180a21b95a0d2
+SHA1(WiresharkPortable_2.4.1.paf.exe)=3ac54e3129c82c919c8c00fd5ce28cd8d8230297
+MD5(WiresharkPortable_2.4.1.paf.exe)=bee21315ce99ecfff83f61d950be8d46
+
+Wireshark 2.4.1 Intel 64.dmg: 35197766 bytes
+SHA256(Wireshark 2.4.1 Intel 64.dmg)=cbf1f66020d049e645edd9ee8f0ebdd7d71d019d3fb2c44e028fcd65195b268b
+RIPEMD160(Wireshark 2.4.1 Intel 64.dmg)=37c33371a0b142fea753f3723f6a30f7476fea18
+SHA1(Wireshark 2.4.1 Intel 64.dmg)=d841c155e6aa8681cefdaffec4b95432de865957
+MD5(Wireshark 2.4.1 Intel 64.dmg)=911497d6ea05821321a824bae57d7835
-----BEGIN PGP SIGNATURE-----
-iQIzBAEBCgAdFiEEWlrbp9vqbD+HIk8ZgiRKeOb+ruoFAllvmzYACgkQgiRKeOb+
-ruqBnQ//aQcb7kM0F9Ra6fH1e+d5q+dij1vBb1qCyZYAPpGDxTrR6zwjHmHHFKxC
-UGy1jlKVgyLvgEtRX75MmV2QEGbtKQPNvqSyYbs+uKBDwhEzYL41mEv6MIZ00Yyn
-NcLiWj5brc5ha4NHZmBfYROna3GywczcLgCVDdnfw6WMirjQNfrl6qDp1Wl7sPjK
-c3mj2efF+SDkICyyvprWNhqYfS8kybFVAsDQs2xUrbP0rjbxSQGAVpAcPhrq+DYX
-5/hFPNlIHfDEbUOfULZ3CAITxZjv9qmoTlitiwzQDcapjDtTeiSRCxa+IQDiJpnl
-rcWsnRnQP3mJETHo0nlCtWHSFliC0JxzLXnXerU+OJz2jNcBra16rpb38WqOSWfR
-wVpCpWCKDjcH9sLs1MNKcy39DzqDln3LRRbqfgOIMy396Zstp/NgDxVJBlyWaajo
-MjgIrDYsLEMrNJCmqeO7DR1+BY5p4QI3yDyIvAokCwIs4i4613MMAsVOc3PE0HZR
-zCOcyOr6WXUsXSDRhQPNj3TgR/WqJ7R4xKjoEMlvYmPjuZUfZNxT2YxwAn2zC3BU
-Hl7xWL0s/DkMoqszdFlJJ/KlblXwh84OB8EC7kxokgNxj3bylMnXYglXKyx6ixWk
-sASii0IgV5+gAW4u7W82dHfzUvxUdVvCc8BUDQox0ljIHJ9AkVk=
-=DSoc
+iQIzBAEBCgAdFiEEWlrbp9vqbD+HIk8ZgiRKeOb+ruoFAlmluawACgkQgiRKeOb+
+ruo8BxAAogsZKu8S4y6VdpaZtJJA7SJChbtFnCn87rXgpYxwJkUBIXmf/B9Qj8Vp
+e6wYmz5ijwngyLjeosvfA7TLiO4yVxTB8gpJyrAxSrDF7HBE33ZNnJmHys1GzEYS
+5CG7e0QuaB6MYHuALkIgDCW39o8n9empd0ceKuPEtjf/YjcGLgz+qbvMMQ2l9Mqv
+eVMZrzZaL6jBO/os9XbVwIWhC8tT6sQ0WNKAGgIyY75SGWAUKEzM23JpToq/Dlv2
+5dJxTMYl4yKZQXDpxvFc9xpro6GyVzYrqj668zrwmaF2V/c/9ujU3YJ84RzI8KKq
+RJSFw6cyFu9J5SBlX1opaUg0I8sVJ8gdJI10THjSlW3QCN2z4Rry/YPMjyj7Sf64
+wcklGajDQsjOtjsp5x3ijRbeOD7Z02AJRws8ugh/lKAxOfWF4RMdM+rBeLSVD7AZ
+z9edBVM7wXbBnrrIZuUZZt4oXZwUa6HGJQmb/ZXzBg6FuL4g2EX2cb+2TNN31rfX
+NMJVA//no7DDUWdXbL4A4W9/igf2tD5DgLfFSHdewYpsUIr0w/oWy40BwpBQ5U1O
+Vo41UMGSQK/b6Ep2T3iDyo/xwuZLeYQGP/j3s1FPbjVDtTBscb00F/Lit9SMr/Nk
+PblN5mZB1nAlCgDWcH/c4W1TGK+4MCsUjaRTYjIz2NZlgwy+iVk=
+=JnJn
-----END PGP SIGNATURE-----
++++++ wireshark-2.4.0.tar.xz -> wireshark-2.4.1.tar.xz ++++++
/work/SRC/openSUSE:Factory/wireshark/wireshark-2.4.0.tar.xz /work/SRC/openSUSE:Factory/.wireshark.new/wireshark-2.4.1.tar.xz differ: char 27, line 1
1
0
Hello community,
here is the log from the commit of package vagrant for openSUSE:Factory checked in at 2017-08-31 21:03:29
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/vagrant (Old)
and /work/SRC/openSUSE:Factory/.vagrant.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "vagrant"
Thu Aug 31 21:03:29 2017 rev:3 rq:519591 version:1.9.7
Changes:
--------
--- /work/SRC/openSUSE:Factory/vagrant/vagrant.changes 2017-03-12 20:03:17.519767999 +0100
+++ /work/SRC/openSUSE:Factory/.vagrant.new/vagrant.changes 2017-08-31 21:03:31.687860569 +0200
@@ -1,0 +2,54 @@
+Tue Aug 29 12:33:50 UTC 2017 - robert.munteanu(a)gmail.com
+
+- Added 0024-do-not-depend-on-wdm.patch - that rubygem only works
+ on windows
+
+-------------------------------------------------------------------
+Wed Aug 16 08:59:17 UTC 2017 - robert.munteanu(a)gmail.com
+
+- Rebase 0023-vbox-fix-package.patch for Vagrant 1.9.7
+- Fix various 'have choice for ...' errors
+
+-------------------------------------------------------------------
+Sun Aug 13 19:07:06 UTC 2017 - robert.munteanu(a)gmail.com
+
+- add 0023-vbox-fix-package.patch ( boo#1044087 )
+
+-------------------------------------------------------------------
+Tue Jul 25 18:17:14 UTC 2017 - opensuse_buildservice(a)ojkastl.de
+
+- renamed patch 0010-also-build-with-ruby2.4.patch to
+ 0020-also-build-with-ruby2.4.patch
+- add patches for ruby2.4 compatibility
+ * added patch
+ 0021-Use-Integer-instead-of-Fixnum-for-Ruby-2.4-compatibi.patch
+ * added patch 0022-Do-not-use-deprecated-API.patch
+
+-------------------------------------------------------------------
+Mon Jul 24 19:51:52 UTC 2017 - opensuse_buildservice(a)ojkastl.de
+
+- update to version 1.9.7
+- removed patch 0005-Support-system-installed-plugins.patch that
+ no longer applies
+- added patch 0010-also-build-with-ruby2.4.patch that allows builds
+ with ruby2.4, even if vagrant states otherwise
+ (https://github.com/mitchellh/vagrant/blob/master/vagrant.gemspec#L15)
+
+-------------------------------------------------------------------
+Thu Jun 15 07:25:19 UTC 2017 - opensuse_buildservice(a)ojkastl.de
+
+- as rubygem-childprocess has been updated to 0.7 in d:l:r:e, which
+ does not work with vagrant, a BuildRequires for
+ rubygem-childprocess <= 0.7 has been added
+
+-------------------------------------------------------------------
+Sun May 21 16:08:12 UTC 2017 - opensuse_buildservice(a)ojkastl.de
+
+- update to version 1.9.5
+- removed patch 0007-Update-command.rb.patch, that has been
+ integrated upstream
+- rebased patches to allow patching version 1.9.5 instead of 1.9.1
+- added explicit BuildRequires for rubygems needed to get vagrant
+ to build
+
+-------------------------------------------------------------------
Old:
----
0005-Support-system-installed-plugins.patch
0007-Update-command.rb.patch
vagrant-1.9.1.tar.gz
New:
----
0020-also-build-with-ruby2.4.patch
0021-Use-Integer-instead-of-Fixnum-for-Ruby-2.4-compatibi.patch
0022-Do-not-use-deprecated-API.patch
0023-vbox-fix-package.patch
0024-do-not-depend-on-wdm.patch
vagrant-1.9.7.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ vagrant.spec ++++++
--- /var/tmp/diff_new_pack.jVeBp8/_old 2017-08-31 21:03:33.991536898 +0200
+++ /var/tmp/diff_new_pack.jVeBp8/_new 2017-08-31 21:03:34.015533527 +0200
@@ -22,7 +22,7 @@
%{!?vim_data_dir:%global vim_data_dir /usr/share/vim/%(readlink /usr/share/vim/current)}
Name: vagrant
-Version: 1.9.1
+Version: 1.9.7
Release: 0
Summary: Build and distribute virtualized development environments
License: MIT
@@ -40,11 +40,17 @@
Patch2: 0002-bin-vagrant-silence-warning-about-installer.patch
Patch3: 0003-Use-a-private-temporary-dir.patch
Patch4: 0004-linux-cap-halt-don-t-wait-for-shutdown-h-now-to-fini.patch
-Patch5: 0005-Support-system-installed-plugins.patch
Patch6: 0006-Relax-dependency-resolution.patch
-Patch7: 0007-Update-command.rb.patch
Patch8: 0008-Read-data-from-usr-share-vagrant.patch
Patch9: 0009-plugins-don-t-abuse-require_relative.patch
+#
+#
+# try building with ruby2.4
+Patch20: 0020-also-build-with-ruby2.4.patch
+Patch21: 0021-Use-Integer-instead-of-Fixnum-for-Ruby-2.4-compatibi.patch
+Patch22: 0022-Do-not-use-deprecated-API.patch
+Patch23: 0023-vbox-fix-package.patch
+Patch24: 0024-do-not-depend-on-wdm.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
# force only one ruby version
@@ -53,10 +59,13 @@
#
BuildRequires: %{ruby >= 2.0.0}
BuildRequires: %{rubygem bundler}
-BuildRequires: %{rubygem childprocess}
+BuildRequires: %{rubygem childprocess <= 0.7 }
+BuildRequires: %{rubygem crack }
# Prevent have choice for rubygem(ruby:2.2.0:erubis)
BuildRequires: %{rubygem erubis >= 2.7}
-BuildRequires: %{rubygem i18n}
+BuildRequires: %{rubygem fake_ftp}
+BuildRequires: %{rubygem hashicorp-checkpoint}
+BuildRequires: %{rubygem i18n <= 0.8 }
BuildRequires: %{rubygem listen}
BuildRequires: %{rubygem log4r}
# Prevent have choice for rubygem(ruby:2.2.0:net-scp)
@@ -67,10 +76,25 @@
BuildRequires: %{rubygem nokogiri >= 1.7}
# Prevent have choice for rubygem(ruby:2.1.0:mime-types) >= 1.16
BuildRequires: %{rubygem mime-types >= 2}
+# Prevent have choice for rubygem(ruby:2.4.0:addressable) >= 2.3.6
+BuildRequires: %{rubygem addressable >= 2.4 }
+# Prevent have choice for rubygem(ruby:2.4.0:builder) >= 2.1.2
+BuildRequires: %{rubygem builder >= 3.1 }
BuildRequires: ruby-macros >= 5
# inotify should go here
#BuildRequires: %{rubygem rb-kqueue}
+BuildRequires: %{rubygem rake <= 12.0 }
+BuildRequires: %{rubygem rake >= 11.3 }
+BuildRequires: %{rubygem rb-kqueue }
BuildRequires: %{rubygem rest-client}
+BuildRequires: %{rubygem rspec <= 2.15 }
+BuildRequires: %{rubygem ruby_dep <= 1.5 }
+# Intentionally removed, wdm only works on Windows
+# BuildRequires: %{rubygem wdm }
+BuildRequires: %{rubygem webmock }
+BuildRequires: %{rubygem winrm }
+BuildRequires: %{rubygem winrm-elevated }
+BuildRequires: %{rubygem winrm-fs }
#
Requires: %{rubygem childprocess}
# Prevent have choice for rubygem(ruby:2.2.0:erubis)
@@ -135,11 +159,17 @@
%patch2 -p1
%patch3 -p1
%patch4 -p1
-%patch5 -p1
%patch6 -p1
-%patch7 -p1
%patch8 -p1
%patch9 -p1
+#
+#
+#
+%patch20 -p1
+%patch21 -p1
+%patch22 -p1
+%patch23 -p1
+%patch24 -p1
cp %{SOURCE3} .
++++++ 0001-Disable-Checkpoint.patch ++++++
--- /var/tmp/diff_new_pack.jVeBp8/_old 2017-08-31 21:03:34.127517793 +0200
+++ /var/tmp/diff_new_pack.jVeBp8/_new 2017-08-31 21:03:34.127517793 +0200
@@ -1,15 +1,18 @@
+From f12371988e650c372b44acb3347fc4348476e082 Mon Sep 17 00:00:00 2001
From: Antonio Terceiro <terceiro(a)debian.org>
Date: Sat, 11 Oct 2014 16:48:07 -0300
-Subject: Disable Checkpoint
+Subject: [PATCH] Disable Checkpoint
We don't want vagrant phoning home all the time
+
+Signed-off-by: Johannes Kastl <kastl(a)b1-systems.de>
---
lib/vagrant/environment.rb | 38 ++-----------------------------------
plugins/commands/version/command.rb | 29 ----------------------------
2 files changed, 2 insertions(+), 65 deletions(-)
diff --git a/lib/vagrant/environment.rb b/lib/vagrant/environment.rb
-index 96c9ada..d7ba556 100644
+index 125070f3d..5d41ff028 100644
--- a/lib/vagrant/environment.rb
+++ b/lib/vagrant/environment.rb
@@ -4,7 +4,6 @@ require 'pathname'
@@ -66,14 +69,14 @@
- # @return [Hash]
+ # Usage of the checkpoint service is disabled in the Debian package.
def checkpoint
-- @checkpoint_thr.join
+- @checkpoint_thr.join(THREAD_MAX_JOIN_TIMEOUT)
- return @checkpoint_thr[:result]
+ nil
end
# Makes a call to the CLI with the given arguments as if they
diff --git a/plugins/commands/version/command.rb b/plugins/commands/version/command.rb
-index c3c47ac..654b251 100644
+index c3c47acfa..654b2516a 100644
--- a/plugins/commands/version/command.rb
+++ b/plugins/commands/version/command.rb
@@ -21,35 +21,6 @@ module VagrantPlugins
@@ -112,3 +115,6 @@
0
end
end
+--
+2.13.0
+
++++++ 0002-bin-vagrant-silence-warning-about-installer.patch ++++++
--- /var/tmp/diff_new_pack.jVeBp8/_old 2017-08-31 21:03:34.139516107 +0200
+++ /var/tmp/diff_new_pack.jVeBp8/_new 2017-08-31 21:03:34.143515545 +0200
@@ -1,19 +1,32 @@
+From 246fe8ff4bb69cfffa7e44e4e571f2febc5e7719 Mon Sep 17 00:00:00 2001
From: Antonio Terceiro <terceiro(a)debian.org>
Date: Sat, 11 Oct 2014 16:54:58 -0300
-Subject: bin/vagrant: silence warning about installer
+Subject: [PATCH] bin/vagrant: silence warning about installer
+Signed-off-by: Johannes Kastl <kastl(a)b1-systems.de>
---
- bin/vagrant | 5 -----
- 1 file changed, 5 deletions(-)
+ bin/vagrant | 16 ----------------
+ 1 file changed, 16 deletions(-)
diff --git a/bin/vagrant b/bin/vagrant
-index 080b7a7..6667ab1 100755
+index 19df75033..6667ab152 100755
--- a/bin/vagrant
+++ b/bin/vagrant
-@@ -117,11 +117,6 @@ begin
+@@ -117,22 +117,6 @@ begin
logger.debug("Creating Vagrant environment")
env = Vagrant::Environment.new(opts)
+- # If we are running with the Windows Subsystem for Linux do
+- # some extra setup to allow access to Vagrant managed machines
+- # outside the subsystem
+- if Vagrant::Util::Platform.wsl?
+- recreate_env = Vagrant::Util::Platform.wsl_init(env, logger)
+- if recreate_env
+- logger.info("Re-creating Vagrant environment due to WSL modifications.")
+- env = Vagrant::Environment.new(opts)
+- end
+- end
+-
- if !Vagrant.in_installer? && !Vagrant.very_quiet?
- # If we're not in the installer, warn.
- env.ui.warn(I18n.t("vagrant.general.not_in_installer") + "\n", prefix: false)
@@ -22,3 +35,6 @@
begin
# Execute the CLI interface, and exit with the proper error code
exit_status = env.cli(argv)
+--
+2.13.0
+
++++++ 0003-Use-a-private-temporary-dir.patch ++++++
--- /var/tmp/diff_new_pack.jVeBp8/_old 2017-08-31 21:03:34.187509364 +0200
+++ /var/tmp/diff_new_pack.jVeBp8/_new 2017-08-31 21:03:34.187509364 +0200
@@ -1,18 +1,21 @@
+From 7ceb61fdbfc9e62e199e4f306474ba5b65f080c9 Mon Sep 17 00:00:00 2001
From: Antonio Terceiro <terceiro(a)debian.org>
Date: Wed, 22 Oct 2014 09:40:14 -0200
-Subject: Use a private temporary dir
+Subject: [PATCH] Use a private temporary dir
Without this vagrant will clutter $TMPDIR with dozens of even hundreds
of temporary files (~4 per vagrant invocation).
+
+Signed-off-by: Johannes Kastl <kastl(a)b1-systems.de>
---
lib/vagrant/box.rb | 3 ++-
- lib/vagrant/util.rb | 1 +
+ lib/vagrant/util.rb | 2 ++
lib/vagrant/util/tempfile.rb | 39 +++++++++++++++++++++++++++++++++++++++
- 3 files changed, 42 insertions(+), 1 deletion(-)
+ 3 files changed, 43 insertions(+), 1 deletion(-)
create mode 100644 lib/vagrant/util/tempfile.rb
diff --git a/lib/vagrant/box.rb b/lib/vagrant/box.rb
-index cd839ee..65eee88 100644
+index cd839ee91..65eee8828 100644
--- a/lib/vagrant/box.rb
+++ b/lib/vagrant/box.rb
@@ -9,6 +9,7 @@ require "vagrant/util/downloader"
@@ -33,20 +36,21 @@
url = @metadata_url
diff --git a/lib/vagrant/util.rb b/lib/vagrant/util.rb
-index 07f3b18..a806ba5 100644
+index 313e1bd19..6e6f669f4 100644
--- a/lib/vagrant/util.rb
+++ b/lib/vagrant/util.rb
-@@ -8,6 +8,7 @@ module Vagrant
- autoload :Retryable, 'vagrant/util/retryable'
+@@ -13,6 +13,8 @@ module Vagrant
autoload :SafeExec, 'vagrant/util/safe_exec'
+ autoload :SilenceWarnings, 'vagrant/util/silence_warnings'
autoload :StackedProcRunner, 'vagrant/util/stacked_proc_runner'
+ autoload :Tempfile, 'vagrant/util/tempfile'
- autoload :TemplateRenderer, 'vagrant/util/template_renderer'
++ autoload :TemplateRenderer, 'vagrant/util/template_renderer'
autoload :StringBlockEditor, 'vagrant/util/string_block_editor'
autoload :Subprocess, 'vagrant/util/subprocess'
+ autoload :TemplateRenderer, 'vagrant/util/template_renderer'
diff --git a/lib/vagrant/util/tempfile.rb b/lib/vagrant/util/tempfile.rb
new file mode 100644
-index 0000000..0cbbb53
+index 000000000..0cbbb53ac
--- /dev/null
+++ b/lib/vagrant/util/tempfile.rb
@@ -0,0 +1,39 @@
@@ -89,3 +93,6 @@
+at_exit do
+ FileUtils.rm_rf(Vagrant::Util::Tempfile.private_tmpdir)
+end
+--
+2.13.0
+
++++++ 0004-linux-cap-halt-don-t-wait-for-shutdown-h-now-to-fini.patch ++++++
--- /var/tmp/diff_new_pack.jVeBp8/_old 2017-08-31 21:03:34.315491382 +0200
+++ /var/tmp/diff_new_pack.jVeBp8/_new 2017-08-31 21:03:34.335488573 +0200
@@ -1,16 +1,19 @@
+From 68b48e8ac3316ea157e28a3b02b38f3334a7d985 Mon Sep 17 00:00:00 2001
From: Antonio Terceiro <terceiro(a)softwarelivre.org>
Date: Tue, 3 Feb 2015 10:35:17 -0200
-Subject: linux/cap/halt: don't wait for `shutdown -h now` to finish
+Subject: [PATCH] linux/cap/halt: don't wait for `shutdown -h now` to finish
When running a Debian 8 lxc guest (with the vagrant-lxc plugin), which
has systemd as init system, `vagrant halt` will hang waiting for
`shutdown -h now` to return.
+
+Signed-off-by: Johannes Kastl <kastl(a)b1-systems.de>
---
plugins/guests/linux/cap/halt.rb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/plugins/guests/linux/cap/halt.rb b/plugins/guests/linux/cap/halt.rb
-index 60dc5dd..657636e 100644
+index 60dc5dde4..657636eaf 100644
--- a/plugins/guests/linux/cap/halt.rb
+++ b/plugins/guests/linux/cap/halt.rb
@@ -4,7 +4,7 @@ module VagrantPlugins
@@ -22,3 +25,6 @@
rescue IOError, Vagrant::Errors::SSHDisconnected
# Do nothing, because it probably means the machine shut down
# and SSH connection was lost.
+--
+2.13.0
+
++++++ 0006-Relax-dependency-resolution.patch ++++++
--- /var/tmp/diff_new_pack.jVeBp8/_old 2017-08-31 21:03:34.431475087 +0200
+++ /var/tmp/diff_new_pack.jVeBp8/_new 2017-08-31 21:03:34.431475087 +0200
@@ -1,14 +1,16 @@
+From f1ca337645e6a3b55fba063b1f2972d190c82d6b Mon Sep 17 00:00:00 2001
From: Antonio Terceiro <terceiro(a)debian.org>
Date: Sun, 16 Aug 2015 10:45:47 +0200
-Subject: Relax dependency resolution
+Subject: [PATCH] Relax dependency resolution
+Signed-off-by: Johannes Kastl <kastl(a)b1-systems.de>
---
Gemfile | 6 ------
- vagrant.gemspec | 45 +++++++++++++++------------------------------
- 2 files changed, 15 insertions(+), 36 deletions(-)
+ vagrant.gemspec | 25 +++++++++++++++----------
+ 2 files changed, 15 insertions(+), 16 deletions(-)
diff --git a/Gemfile b/Gemfile
-index 15f2458..b4e2a20 100644
+index 15f245819..b4e2a20bb 100644
--- a/Gemfile
+++ b/Gemfile
@@ -1,9 +1,3 @@
@@ -21,59 +23,6 @@
-else
- gem 'vagrant-spec', git: "https://github.com/mitchellh/vagrant-spec.git"
-end
-diff --git a/vagrant.gemspec b/vagrant.gemspec
-index 3c74eb1..f7da9f6 100644
---- a/vagrant.gemspec
-+++ b/vagrant.gemspec
-@@ -16,36 +16,21 @@ Gem::Specification.new do |s|
- s.required_rubygems_version = ">= 1.3.6"
- s.rubyforge_project = "vagrant"
-
-- s.add_dependency "childprocess", "~> 0.5.0"
-- s.add_dependency "erubis", "~> 2.7.0"
-- s.add_dependency "i18n", ">= 0.6.0", "<= 0.8.0"
-- s.add_dependency "listen", "~> 3.1.5"
-- s.add_dependency "hashicorp-checkpoint", "~> 0.1.1"
-- s.add_dependency "log4r", "~> 1.1.9", "< 1.1.11"
-- s.add_dependency "net-ssh", "~> 3.0.1"
-- s.add_dependency "net-sftp", "~> 2.1"
-- s.add_dependency "net-scp", "~> 1.1.0"
-- s.add_dependency "rb-kqueue", "~> 0.2.0"
-- s.add_dependency "rest-client", ">= 1.6.0", "< 3.0"
-- s.add_dependency "wdm", "~> 0.1.0"
-- s.add_dependency "winrm", "~> 1.6"
-- s.add_dependency "winrm-fs", "~> 0.3.0"
--
-- # We lock this down to avoid compilation issues.
-- s.add_dependency "nokogiri", "= 1.6.7.1"
--
-- # NOTE: The ruby_dep gem is an implicit dependency from the listen gem. Later versions
-- # of the ruby_dep gem impose an aggressive constraint on the required ruby version (>= 2.2.5).
-- # Explicit constraint is defined to provide required dependency to listen without imposing
-- # tighter restrictions on valid ruby versions
-- s.add_dependency "ruby_dep", "<= 1.3.1"
--
-- # Constraint rake to properly handle deprecated method usage
-- # from within rspec
-- s.add_development_dependency "rake", "~> 11.3.0"
-- s.add_development_dependency "rspec", "~> 2.14.0"
-- s.add_development_dependency "webmock", "~> 1.20"
-- s.add_development_dependency "fake_ftp", "~> 0.1"
-+ ########################################################################
-+ # On Debian, it not viable to lock down much of the dependencies because they
-+ # are shared across applications in the entire archive. So here we are being
-+ # optimistic and replacing `=` with `~>`.
-+ ########################################################################
-+ s.add_dependency "childprocess"
-+ s.add_dependency "erubis"
-+ s.add_dependency "i18n"
-+ s.add_dependency "listen"
-+ s.add_dependency "log4r"
-+ s.add_dependency "net-ssh"
-+ s.add_dependency "net-sftp"
-+ s.add_dependency "net-scp"
-+ s.add_dependency "rest-client"
-+ s.add_dependency "nokogiri"
-
- # The following block of code determines the files that should be included
- # in the gem. It does this by reading all the files in the directory where
+--
+2.13.0
+
++++++ 0008-Read-data-from-usr-share-vagrant.patch ++++++
--- /var/tmp/diff_new_pack.jVeBp8/_old 2017-08-31 21:03:34.451472277 +0200
+++ /var/tmp/diff_new_pack.jVeBp8/_new 2017-08-31 21:03:34.451472277 +0200
@@ -1,16 +1,18 @@
+From 3597147739d63a6ed9006ab461bcb92afc8f834f Mon Sep 17 00:00:00 2001
From: Antonio Terceiro <terceiro(a)debian.org>
Date: Sat, 11 Oct 2014 16:55:21 -0300
-Subject: Read data from /usr/share/vagrant
+Subject: [PATCH] Read data from /usr/share/vagrant
+Signed-off-by: Johannes Kastl <kastl(a)b1-systems.de>
---
lib/vagrant/shared_helpers.rb | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/lib/vagrant/shared_helpers.rb b/lib/vagrant/shared_helpers.rb
-index fe11401..edf21ea 100644
+index 5522272d3..305d73db1 100644
--- a/lib/vagrant/shared_helpers.rb
+++ b/lib/vagrant/shared_helpers.rb
-@@ -79,7 +79,17 @@ module Vagrant
+@@ -85,7 +85,17 @@ module Vagrant
#
# @return [Pathname]
def self.source_root
@@ -29,3 +31,6 @@
end
# This returns the path to the ~/.vagrant.d folder where Vagrant's
+--
+2.13.0
+
++++++ 0009-plugins-don-t-abuse-require_relative.patch ++++++
--- /var/tmp/diff_new_pack.jVeBp8/_old 2017-08-31 21:03:34.507464409 +0200
+++ /var/tmp/diff_new_pack.jVeBp8/_new 2017-08-31 21:03:34.523462162 +0200
@@ -1,5 +1,25 @@
+From 9a3b6124412483cd2fa3779fade3387e96917caf Mon Sep 17 00:00:00 2001
+From: Johannes Kastl <kastl(a)b1-systems.de>
+Date: Wed, 17 May 2017 09:09:57 +0200
+Subject: [PATCH] plugins-don-t-abuse-require_relative.patch
+
+Signed-off-by: Johannes Kastl <kastl(a)b1-systems.de>
+---
+ plugins/guests/arch/cap/configure_networks.rb | 2 +-
+ plugins/guests/debian/cap/configure_networks.rb | 2 +-
+ plugins/guests/freebsd/cap/configure_networks.rb | 2 +-
+ plugins/guests/funtoo/cap/configure_networks.rb | 2 +-
+ plugins/guests/gentoo/cap/configure_networks.rb | 2 +-
+ plugins/guests/netbsd/cap/configure_networks.rb | 2 +-
+ plugins/guests/nixos/cap/configure_networks.rb | 2 +-
+ plugins/guests/openbsd/cap/configure_networks.rb | 2 +-
+ plugins/guests/redhat/cap/configure_networks.rb | 2 +-
+ plugins/guests/slackware/cap/configure_networks.rb | 2 +-
+ plugins/guests/suse/cap/configure_networks.rb | 2 +-
+ 11 files changed, 11 insertions(+), 11 deletions(-)
+
diff --git a/plugins/guests/arch/cap/configure_networks.rb b/plugins/guests/arch/cap/configure_networks.rb
-index 0c748b3..57b3496 100644
+index 0ef71d55f..df0bd0f8f 100644
--- a/plugins/guests/arch/cap/configure_networks.rb
+++ b/plugins/guests/arch/cap/configure_networks.rb
@@ -2,7 +2,7 @@ require "ipaddr"
@@ -12,7 +32,7 @@
module VagrantPlugins
module GuestArch
diff --git a/plugins/guests/debian/cap/configure_networks.rb b/plugins/guests/debian/cap/configure_networks.rb
-index 263fe92..9f5e540 100644
+index 99d6681de..3b582b159 100644
--- a/plugins/guests/debian/cap/configure_networks.rb
+++ b/plugins/guests/debian/cap/configure_networks.rb
@@ -1,6 +1,6 @@
@@ -24,7 +44,7 @@
module VagrantPlugins
module GuestDebian
diff --git a/plugins/guests/freebsd/cap/configure_networks.rb b/plugins/guests/freebsd/cap/configure_networks.rb
-index 8e5627b..f9e761e 100644
+index 8e5627b5e..f9e761ee7 100644
--- a/plugins/guests/freebsd/cap/configure_networks.rb
+++ b/plugins/guests/freebsd/cap/configure_networks.rb
@@ -1,6 +1,6 @@
@@ -36,7 +56,7 @@
module VagrantPlugins
module GuestFreeBSD
diff --git a/plugins/guests/funtoo/cap/configure_networks.rb b/plugins/guests/funtoo/cap/configure_networks.rb
-index 6e20dc2..1b41340 100644
+index 6e20dc237..1b41340c1 100644
--- a/plugins/guests/funtoo/cap/configure_networks.rb
+++ b/plugins/guests/funtoo/cap/configure_networks.rb
@@ -1,6 +1,6 @@
@@ -48,11 +68,12 @@
module VagrantPlugins
module GuestFuntoo
diff --git a/plugins/guests/gentoo/cap/configure_networks.rb b/plugins/guests/gentoo/cap/configure_networks.rb
-index 38b1850..5675015 100644
+index f7464432c..002271b71 100644
--- a/plugins/guests/gentoo/cap/configure_networks.rb
+++ b/plugins/guests/gentoo/cap/configure_networks.rb
-@@ -1,6 +1,6 @@
+@@ -1,7 +1,7 @@
require "tempfile"
+ require "ipaddr"
-require_relative "../../../../lib/vagrant/util/template_renderer"
+require "vagrant/util/template_renderer"
@@ -60,7 +81,7 @@
module VagrantPlugins
module GuestGentoo
diff --git a/plugins/guests/netbsd/cap/configure_networks.rb b/plugins/guests/netbsd/cap/configure_networks.rb
-index d53b6c6..922edfd 100644
+index d53b6c6e4..922edfdab 100644
--- a/plugins/guests/netbsd/cap/configure_networks.rb
+++ b/plugins/guests/netbsd/cap/configure_networks.rb
@@ -1,6 +1,6 @@
@@ -72,7 +93,7 @@
module VagrantPlugins
module GuestNetBSD
diff --git a/plugins/guests/nixos/cap/configure_networks.rb b/plugins/guests/nixos/cap/configure_networks.rb
-index 9645862..ed37176 100644
+index 96458622f..ed371765e 100644
--- a/plugins/guests/nixos/cap/configure_networks.rb
+++ b/plugins/guests/nixos/cap/configure_networks.rb
@@ -1,7 +1,7 @@
@@ -85,7 +106,7 @@
module VagrantPlugins
module GuestNixos
diff --git a/plugins/guests/openbsd/cap/configure_networks.rb b/plugins/guests/openbsd/cap/configure_networks.rb
-index 30c4be0..64989d1 100644
+index 30c4be060..64989d103 100644
--- a/plugins/guests/openbsd/cap/configure_networks.rb
+++ b/plugins/guests/openbsd/cap/configure_networks.rb
@@ -1,6 +1,6 @@
@@ -97,7 +118,7 @@
module VagrantPlugins
module GuestOpenBSD
diff --git a/plugins/guests/redhat/cap/configure_networks.rb b/plugins/guests/redhat/cap/configure_networks.rb
-index 3964579..64b2052 100644
+index 44fa5fa67..58ac7a31c 100644
--- a/plugins/guests/redhat/cap/configure_networks.rb
+++ b/plugins/guests/redhat/cap/configure_networks.rb
@@ -1,6 +1,6 @@
@@ -109,7 +130,7 @@
module VagrantPlugins
module GuestRedHat
diff --git a/plugins/guests/slackware/cap/configure_networks.rb b/plugins/guests/slackware/cap/configure_networks.rb
-index b11b93e..0f18027 100644
+index b11b93e98..0f180275f 100644
--- a/plugins/guests/slackware/cap/configure_networks.rb
+++ b/plugins/guests/slackware/cap/configure_networks.rb
@@ -1,6 +1,6 @@
@@ -121,7 +142,7 @@
module VagrantPlugins
module GuestSlackware
diff --git a/plugins/guests/suse/cap/configure_networks.rb b/plugins/guests/suse/cap/configure_networks.rb
-index 2dd1402..e6dd96f 100644
+index 2dd140230..e6dd96f08 100644
--- a/plugins/guests/suse/cap/configure_networks.rb
+++ b/plugins/guests/suse/cap/configure_networks.rb
@@ -1,6 +1,6 @@
@@ -132,3 +153,6 @@
module VagrantPlugins
module GuestSUSE
+--
+2.13.0
+
++++++ 0020-also-build-with-ruby2.4.patch ++++++
>From 9e12cba5e8be3df9dfe5768913dec6a04341b35c Mon Sep 17 00:00:00 2001
From: Johannes Kastl <kastl(a)b1-systems.de>
Date: Mon, 24 Jul 2017 21:47:17 +0200
Subject: [PATCH] also build with ruby2.4
Signed-off-by: Johannes Kastl <opensuse_buildservice(a)ojkastl.de>
---
vagrant.gemspec | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/vagrant.gemspec b/vagrant.gemspec
index c92ca1701..8a839ca41 100644
--- a/vagrant.gemspec
+++ b/vagrant.gemspec
@@ -12,7 +12,7 @@ Gem::Specification.new do |s|
s.summary = "Build and distribute virtualized development environments."
s.description = "Vagrant is a tool for building and distributing virtualized development environments."
- s.required_ruby_version = "~> 2.2", "< 2.4"
+ s.required_ruby_version = "~> 2.2"
s.required_rubygems_version = ">= 1.3.6"
s.rubyforge_project = "vagrant"
--
2.13.3
++++++ 0021-Use-Integer-instead-of-Fixnum-for-Ruby-2.4-compatibi.patch ++++++
>From 3cdd1d09f9617e6005fc643000b5486ffbe22577 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?V=C3=ADt=20Ondruch?= <vondruch(a)redhat.com>
Date: Tue, 14 Feb 2017 10:13:29 +0100
Subject: [PATCH] Use Integer instead of Fixnum for Ruby 2.4+ compatibility.
Signed-off-by: Johannes Kastl <kastl(a)b1-systems.de>
---
lib/vagrant/cli.rb | 2 +-
lib/vagrant/plugin/v2/communicator.rb | 2 +-
lib/vagrant/registry.rb | 2 +-
plugins/provisioners/shell/config.rb | 4 ++--
plugins/pushes/local-exec/config.rb | 4 ++--
test/unit/plugins/provisioners/shell/config_test.rb | 6 +++---
test/unit/plugins/pushes/local-exec/config_test.rb | 4 ++--
7 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/lib/vagrant/cli.rb b/lib/vagrant/cli.rb
index a6e9655f0..cca8c0184 100644
--- a/lib/vagrant/cli.rb
+++ b/lib/vagrant/cli.rb
@@ -45,7 +45,7 @@ module Vagrant
result = 1
end
- result = 0 if !result.is_a?(Fixnum)
+ result = 0 if !result.is_a?(Integer)
return result
end
diff --git a/lib/vagrant/plugin/v2/communicator.rb b/lib/vagrant/plugin/v2/communicator.rb
index 511fb6002..41385f486 100644
--- a/lib/vagrant/plugin/v2/communicator.rb
+++ b/lib/vagrant/plugin/v2/communicator.rb
@@ -50,7 +50,7 @@ module Vagrant
# until then. It will wait up to the given duration or raise an
# exception if something goes wrong.
#
- # @param [Fixnum] duration Timeout in seconds.
+ # @param [Integer] duration Timeout in seconds.
# @return [Boolean] Will return true on successful connection
# or false on timeout.
def wait_for_ready(duration)
diff --git a/lib/vagrant/registry.rb b/lib/vagrant/registry.rb
index d84a745a5..c0c4e1bad 100644
--- a/lib/vagrant/registry.rb
+++ b/lib/vagrant/registry.rb
@@ -52,7 +52,7 @@ module Vagrant
# Return the number of elements in this registry.
#
- # @return [Fixnum]
+ # @return [Integer]
def length
@items.keys.length
end
diff --git a/plugins/provisioners/shell/config.rb b/plugins/provisioners/shell/config.rb
index 049eb15d0..05da320e3 100644
--- a/plugins/provisioners/shell/config.rb
+++ b/plugins/provisioners/shell/config.rb
@@ -106,10 +106,10 @@ module VagrantPlugins
def args_valid?
return true if !args
return true if args.is_a?(String)
- return true if args.is_a?(Fixnum)
+ return true if args.is_a?(Integer)
if args.is_a?(Array)
args.each do |a|
- return false if !a.kind_of?(String) && !a.kind_of?(Fixnum)
+ return false if !a.kind_of?(String) && !a.kind_of?(Integer)
end
return true
diff --git a/plugins/pushes/local-exec/config.rb b/plugins/pushes/local-exec/config.rb
index d62dfa8fa..9ed466088 100644
--- a/plugins/pushes/local-exec/config.rb
+++ b/plugins/pushes/local-exec/config.rb
@@ -63,10 +63,10 @@ module VagrantPlugins
def args_valid?
return true if !args
return true if args.is_a?(String)
- return true if args.is_a?(Fixnum)
+ return true if args.is_a?(Integer)
if args.is_a?(Array)
args.each do |a|
- return false if !a.kind_of?(String) && !a.kind_of?(Fixnum)
+ return false if !a.kind_of?(String) && !a.kind_of?(Integer)
end
return true
diff --git a/test/unit/plugins/provisioners/shell/config_test.rb b/test/unit/plugins/provisioners/shell/config_test.rb
index c4d260b90..905a28b03 100644
--- a/test/unit/plugins/provisioners/shell/config_test.rb
+++ b/test/unit/plugins/provisioners/shell/config_test.rb
@@ -30,7 +30,7 @@ describe "VagrantPlugins::Shell::Config" do
expect(result["shell provisioner"]).to eq([])
end
- it "passes with fixnum args" do
+ it "passes with integer args" do
subject.path = file_that_exists
subject.args = 1
subject.finalize!
@@ -112,7 +112,7 @@ describe "VagrantPlugins::Shell::Config" do
end
describe 'finalize!' do
- it 'changes fixnum args into strings' do
+ it 'changes integer args into strings' do
subject.path = file_that_exists
subject.args = 1
subject.finalize!
@@ -120,7 +120,7 @@ describe "VagrantPlugins::Shell::Config" do
expect(subject.args).to eq '1'
end
- it 'changes fixnum args in arrays into strings' do
+ it 'changes integer args in arrays into strings' do
subject.path = file_that_exists
subject.args = ["string", 1, 2]
subject.finalize!
diff --git a/test/unit/plugins/pushes/local-exec/config_test.rb b/test/unit/plugins/pushes/local-exec/config_test.rb
index 1bde10d98..9442b6420 100644
--- a/test/unit/plugins/pushes/local-exec/config_test.rb
+++ b/test/unit/plugins/pushes/local-exec/config_test.rb
@@ -70,7 +70,7 @@ describe VagrantPlugins::LocalExecPush::Config do
expect(errors).to be_empty
end
- it "passes with fixnum args" do
+ it "passes with integer args" do
subject.args = 1
expect(errors).to be_empty
end
@@ -118,7 +118,7 @@ describe VagrantPlugins::LocalExecPush::Config do
expect(errors).to be_empty
end
- it "passes with fixnum args" do
+ it "passes with integer args" do
subject.args = 1
expect(errors).to be_empty
end
--
2.13.3
++++++ 0022-Do-not-use-deprecated-API.patch ++++++
>From 6d269293e37db86325bec0a17502d68838d28214 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?V=C3=ADt=20Ondruch?= <vondruch(a)redhat.com>
Date: Tue, 14 Feb 2017 10:33:58 +0100
Subject: [PATCH] Do not use deprecated API.
Signed-off-by: Johannes Kastl <kastl(a)b1-systems.de>
---
lib/vagrant/util/keypair.rb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/vagrant/util/keypair.rb b/lib/vagrant/util/keypair.rb
index 342d3264f..5e3d10ea6 100644
--- a/lib/vagrant/util/keypair.rb
+++ b/lib/vagrant/util/keypair.rb
@@ -26,7 +26,7 @@ module Vagrant
private_key = rsa_key.to_pem
if password
- cipher = OpenSSL::Cipher::Cipher.new('des3')
+ cipher = OpenSSL::Cipher.new('des3')
private_key = rsa_key.to_pem(cipher, password)
end
--
2.13.3
++++++ 0023-vbox-fix-package.patch ++++++
diff -ur vagrant-1.9.7.orig/plugins/providers/virtualbox/action/package.rb vagrant-1.9.7/plugins/providers/virtualbox/action/package.rb
--- vagrant-1.9.7.orig/plugins/providers/virtualbox/action/package.rb 2017-08-16 11:52:01.270242802 +0300
+++ vagrant-1.9.7/plugins/providers/virtualbox/action/package.rb 2017-08-16 11:53:08.929783075 +0300
@@ -1,4 +1,4 @@
-require_relative "../../../../lib/vagrant/action/general/package"
+require "vagrant/action/general/package"
module VagrantPlugins
module ProviderVirtualBox
diff -ur vagrant-1.9.7.orig/plugins/providers/virtualbox/action/package_setup_folders.rb vagrant-1.9.7/plugins/providers/virtualbox/action/package_setup_folders.rb
--- vagrant-1.9.7.orig/plugins/providers/virtualbox/action/package_setup_folders.rb 2017-08-16 11:52:01.270242802 +0300
+++ vagrant-1.9.7/plugins/providers/virtualbox/action/package_setup_folders.rb 2017-08-16 11:52:51.353902487 +0300
@@ -1,6 +1,6 @@
require "fileutils"
-require_relative "../../../../lib/vagrant/action/general/package_setup_folders"
+require "vagrant/action/general/package"
module VagrantPlugins
module ProviderVirtualBox
++++++ 0024-do-not-depend-on-wdm.patch ++++++
diff -ur vagrant-1.9.7.orig/vagrant.gemspec vagrant-1.9.7/vagrant.gemspec
--- vagrant-1.9.7.orig/vagrant.gemspec 2017-08-16 11:52:01.226243101 +0300
+++ vagrant-1.9.7/vagrant.gemspec 2017-08-29 15:32:55.920511390 +0300
@@ -27,7 +27,6 @@
s.add_dependency "net-scp", "~> 1.2.0"
s.add_dependency "rb-kqueue", "~> 0.2.0"
s.add_dependency "rest-client", ">= 1.6.0", "< 3.0"
- s.add_dependency "wdm", "~> 0.1.0"
s.add_dependency "winrm", "~> 2.1"
s.add_dependency "winrm-fs", "~> 1.0"
s.add_dependency "winrm-elevated", "~> 1.1"
++++++ vagrant-1.9.1.tar.gz -> vagrant-1.9.7.tar.gz ++++++
++++ 24836 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package ghc-hyphenation for openSUSE:Factory checked in at 2017-08-31 21:03:27
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-hyphenation (Old)
and /work/SRC/openSUSE:Factory/.ghc-hyphenation.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-hyphenation"
Thu Aug 31 21:03:27 2017 rev:2 rq:518535 version:0.7
Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc-hyphenation/ghc-hyphenation.changes 2017-03-24 01:59:43.442289269 +0100
+++ /work/SRC/openSUSE:Factory/.ghc-hyphenation.new/ghc-hyphenation.changes 2017-08-31 21:03:28.172354504 +0200
@@ -1,0 +2,11 @@
+Fri Aug 4 03:26:31 UTC 2017 - psimons(a)suse.com
+
+- Update to version 0.7 revision 2.
+ * Updated Spanish and Thai hyphenation patterns.
+ * Removed Lao patterns until higher quality patterns are available.
+ * Updated the licenses associated with many patterns
+ * Revamp `Setup.hs` to use `cabal-doctest`. This makes it build
+ with `Cabal-2.0`, and makes the `doctest`s work with `cabal new-build` and
+ sandboxes.
+
+-------------------------------------------------------------------
Old:
----
hyphenation-0.6.tar.gz
New:
----
hyphenation-0.7.tar.gz
hyphenation.cabal
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-hyphenation.spec ++++++
--- /var/tmp/diff_new_pack.gV6yuW/_old 2017-08-31 21:03:29.336190983 +0200
+++ /var/tmp/diff_new_pack.gV6yuW/_new 2017-08-31 21:03:29.340190421 +0200
@@ -1,7 +1,7 @@
#
# spec file for package ghc-hyphenation
#
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 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,24 +19,23 @@
%global pkg_name hyphenation
%bcond_with tests
Name: ghc-%{pkg_name}
-Version: 0.6
+Version: 0.7
Release: 0
Summary: Configurable Knuth-Liang hyphenation
-License: BSD-3-Clause
-Group: Development/Languages/Other
-Url: https://hackage.haskell.org/package/%{pkg_name}
+License: BSD-2-Clause
+Group: Development/Libraries/Haskell
+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/2.cabal…
BuildRequires: ghc-Cabal-devel
BuildRequires: ghc-bytestring-devel
+BuildRequires: ghc-cabal-doctest-devel
BuildRequires: ghc-containers-devel
BuildRequires: ghc-rpm-macros
BuildRequires: ghc-unordered-containers-devel
BuildRequires: ghc-zlib-devel
-BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if %{with tests}
-BuildRequires: ghc-directory-devel
BuildRequires: ghc-doctest-devel
-BuildRequires: ghc-filepath-devel
%endif
%description
@@ -57,7 +56,7 @@
%package devel
Summary: Haskell %{pkg_name} library development files
-Group: Development/Libraries/Other
+Group: Development/Libraries/Haskell
Requires: %{name} = %{version}-%{release}
Requires: ghc-compiler = %{ghc_version}
Requires(post): ghc-compiler = %{ghc_version}
@@ -68,6 +67,7 @@
%prep
%setup -q -n %{pkg_name}-%{version}
+cp -p %{SOURCE1} %{pkg_name}.cabal
%build
%ghc_lib_build
@@ -85,7 +85,6 @@
%ghc_pkg_recache
%files -f %{name}.files
-%defattr(-,root,root,-)
%doc LICENSE
%dir %{_datadir}/%{pkg_name}-%{version}
%{_datadir}/%{pkg_name}-%{version}/*.hyp.txt.gz
@@ -94,7 +93,6 @@
%{_datadir}/%{pkg_name}-%{version}/*.chr.txt.gz
%files devel -f %{name}-devel.files
-%defattr(-,root,root,-)
%doc CHANGELOG.markdown
%changelog
++++++ hyphenation-0.6.tar.gz -> hyphenation-0.7.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hyphenation-0.6/.travis.yml new/hyphenation-0.7/.travis.yml
--- old/hyphenation-0.6/.travis.yml 2015-07-24 01:53:55.000000000 +0200
+++ new/hyphenation-0.7/.travis.yml 2017-04-28 01:51:16.000000000 +0200
@@ -1,47 +1,107 @@
-# NB: don't set `language: haskell` here
-
-# See also https://github.com/hvr/multi-ghc-travis for more information
-env:
- # we have to use CABALVER=1.16 for GHC<7.6 as well, as there's
- # no package for earlier cabal versions in the PPA
- - GHCVER=7.4.2 CABALVER=1.16
- - GHCVER=7.6.3 CABALVER=1.16
- - GHCVER=7.8.4 CABALVER=1.18
- - GHCVER=7.10.1 CABALVER=1.22
- - GHCVER=head CABALVER=1.22
+# This file has been generated -- see https://github.com/hvr/multi-ghc-travis
+language: c
+sudo: false
+
+cache:
+ directories:
+ - $HOME/.cabsnap
+ - $HOME/.cabal/packages
+
+before_cache:
+ - rm -fv $HOME/.cabal/packages/hackage.haskell.org/build-reports.log
+ - rm -fv $HOME/.cabal/packages/hackage.haskell.org/00-index.tar
matrix:
+ include:
+ - env: CABALVER=1.24 GHCVER=7.0.4
+ compiler: ": #GHC 7.0.4"
+ addons: {apt: {packages: [cabal-install-1.24,ghc-7.0.4,hlint], sources: [hvr-ghc]}}
+ - env: CABALVER=1.24 GHCVER=7.2.2
+ compiler: ": #GHC 7.2.2"
+ addons: {apt: {packages: [cabal-install-1.24,ghc-7.2.2,hlint], sources: [hvr-ghc]}}
+ - env: CABALVER=1.24 GHCVER=7.4.2
+ compiler: ": #GHC 7.4.2"
+ addons: {apt: {packages: [cabal-install-1.24,ghc-7.4.2,hlint], sources: [hvr-ghc]}}
+ - env: CABALVER=1.24 GHCVER=7.6.3
+ compiler: ": #GHC 7.6.3"
+ addons: {apt: {packages: [cabal-install-1.24,ghc-7.6.3,hlint], sources: [hvr-ghc]}}
+ - env: CABALVER=1.24 GHCVER=7.8.4
+ compiler: ": #GHC 7.8.4"
+ addons: {apt: {packages: [cabal-install-1.24,ghc-7.8.4,hlint], sources: [hvr-ghc]}}
+ - env: CABALVER=1.24 GHCVER=7.10.3
+ compiler: ": #GHC 7.10.3"
+ addons: {apt: {packages: [cabal-install-1.24,ghc-7.10.3,hlint], sources: [hvr-ghc]}}
+ - env: CABALVER=1.24 GHCVER=8.0.2
+ compiler: ": #GHC 8.0.2"
+ addons: {apt: {packages: [cabal-install-1.24,ghc-8.0.2,hlint], sources: [hvr-ghc]}}
+ - env: CABALVER=1.24 GHCVER=8.2.1
+ compiler: ": #GHC 8.2.1"
+ addons: {apt: {packages: [cabal-install-1.24,ghc-8.2.1,hlint], sources: [hvr-ghc]}}
+ - env: CABALVER=1.24 GHCVER=head
+ compiler: ": #GHC head"
+ addons: {apt: {packages: [cabal-install-1.24,ghc-head,hlint], sources: [hvr-ghc]}}
+
allow_failures:
- - env: GHCVER=head CABALVER=1.22
+ - env: CABALVER=1.24 GHCVER=7.0.4
+ - env: CABALVER=1.24 GHCVER=7.2.2
+ - env: CABALVER=1.24 GHCVER=head
-# Note: the distinction between `before_install` and `install` is not
-# important.
before_install:
- - travis_retry sudo add-apt-repository -y ppa:hvr/ghc
- - travis_retry sudo apt-get update
- - travis_retry sudo apt-get install cabal-install-$CABALVER ghc-$GHCVER
- - export PATH=/opt/ghc/$GHCVER/bin:/opt/cabal/$CABALVER/bin:$PATH
- - cabal --version
+ - unset CC
+ - export PATH=$HOME/.cabal/bin:/opt/ghc/$GHCVER/bin:/opt/cabal/$CABALVER/bin:$PATH
install:
- - travis_retry cabal update
- - cabal install --only-dependencies
- - travis_retry sudo apt-get -q -y install hlint || cabal install hlint
+ - cabal --version
+ - echo "$(ghc --version) [$(ghc --print-project-git-commit-id 2> /dev/null || echo '?')]"
+ - if [ -f $HOME/.cabal/packages/hackage.haskell.org/00-index.tar.gz ];
+ then
+ zcat $HOME/.cabal/packages/hackage.haskell.org/00-index.tar.gz >
+ $HOME/.cabal/packages/hackage.haskell.org/00-index.tar;
+ fi
+ - travis_retry cabal update -v
+ - sed -i 's/^jobs:/-- jobs:/' ${HOME}/.cabal/config
+ - cabal install --only-dependencies --enable-tests --enable-benchmarks --dry -v > installplan.txt
+ - sed -i -e '1,/^Resolving /d' installplan.txt; cat installplan.txt
+
+# check whether current requested install-plan matches cached package-db snapshot
+ - if diff -u installplan.txt $HOME/.cabsnap/installplan.txt;
+ then
+ echo "cabal build-cache HIT";
+ rm -rfv .ghc;
+ cp -a $HOME/.cabsnap/ghc $HOME/.ghc;
+ cp -a $HOME/.cabsnap/lib $HOME/.cabsnap/share $HOME/.cabsnap/bin $HOME/.cabal/;
+ else
+ echo "cabal build-cache MISS";
+ rm -rf $HOME/.cabsnap;
+ mkdir -p $HOME/.ghc $HOME/.cabal/lib $HOME/.cabal/share $HOME/.cabal/bin;
+ cabal install -j --only-dependencies --enable-tests --enable-benchmarks;
+ fi
+
+# snapshot package-db on cache miss
+ - if [ ! -d $HOME/.cabsnap ];
+ then
+ echo "snapshotting package-db to build-cache";
+ mkdir $HOME/.cabsnap;
+ cp -a $HOME/.ghc $HOME/.cabsnap/ghc;
+ cp -a $HOME/.cabal/lib $HOME/.cabal/share $HOME/.cabal/bin installplan.txt $HOME/.cabsnap/;
+ fi
# Here starts the actual work to be performed for the package under
# test; any command which exits with a non-zero exit code causes the
# build to fail.
script:
# -v2 provides useful information for debugging
- - cabal configure -v2
+ - cabal configure --enable-tests --enable-benchmarks -v2
# this builds all libraries and executables
# (including tests/benchmarks)
- cabal build
+ - cabal test
+ - hlint src --cpp-define HLINT
+
# tests that a source-distribution can be generated
- cabal sdist
- - hlint src --cpp-define HLINT
# check that the generated source-distribution can be built & installed
- export SRC_TGZ=$(cabal info . | awk '{print $2 ".tar.gz";exit}') ;
@@ -60,3 +120,5 @@
skip_join: true
template:
- "\x0313hyphenation\x03/\x0306%{branch}\x03 \x0314%{commit}\x03 %{build_url} %{message}"
+
+# EOF
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hyphenation-0.6/CHANGELOG.markdown new/hyphenation-0.7/CHANGELOG.markdown
--- old/hyphenation-0.6/CHANGELOG.markdown 2015-07-24 01:53:55.000000000 +0200
+++ new/hyphenation-0.7/CHANGELOG.markdown 2017-04-28 01:51:16.000000000 +0200
@@ -1,3 +1,12 @@
+0.7
+---
+* Updated Spanish and Thai hyphenation patterns.
+* Removed Lao patterns until higher quality patterns are available.
+* Updated the licenses associated with many patterns
+* Revamp `Setup.hs` to use `cabal-doctest`. This makes it build
+ with `Cabal-2.0`, and makes the `doctest`s work with `cabal new-build` and
+ sandboxes.
+
0.6
---
* Applied `gzip` to the internal data files. This shrinks the resulting library and any statically linked executable by about a meg and a half.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hyphenation-0.6/LICENSE new/hyphenation-0.7/LICENSE
--- old/hyphenation-0.6/LICENSE 2015-07-24 01:53:55.000000000 +0200
+++ new/hyphenation-0.7/LICENSE 2017-04-28 01:51:16.000000000 +0200
@@ -1,4 +1,4 @@
-Copyright 2012-2015 Edward Kmett
+Copyright 2012-2016 Edward Kmett
All rights reserved.
@@ -13,10 +13,6 @@
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
-3. Neither the name of the author nor the names of his contributors
- may be used to endorse or promote products derived from this software
- without specific prior written permission.
-
THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hyphenation-0.6/Setup.lhs new/hyphenation-0.7/Setup.lhs
--- old/hyphenation-0.6/Setup.lhs 2015-07-24 01:53:55.000000000 +0200
+++ new/hyphenation-0.7/Setup.lhs 2017-04-28 01:51:16.000000000 +0200
@@ -1,7 +1,182 @@
-#!/usr/bin/runhaskell
-> module Main (main) where
+\begin{code}
+{-# LANGUAGE CPP #-}
+{-# LANGUAGE OverloadedStrings #-}
+module Main (main) where
-> import Distribution.Simple
+#ifndef MIN_VERSION_cabal_doctest
+#define MIN_VERSION_cabal_doctest(x,y,z) 0
+#endif
-> main :: IO ()
-> main = defaultMain
+
+#if MIN_VERSION_cabal_doctest(1,0,0)
+import Distribution.Extra.Doctest ( defaultMainWithDoctests )
+#else
+
+-- Otherwise we provide a shim
+
+#ifndef MIN_VERSION_Cabal
+#define MIN_VERSION_Cabal(x,y,z) 0
+#endif
+#ifndef MIN_VERSION_directory
+#define MIN_VERSION_directory(x,y,z) 0
+#endif
+#if MIN_VERSION_Cabal(1,24,0)
+#define InstalledPackageId UnitId
+#endif
+
+import Control.Monad ( when )
+import Data.List ( nub )
+import Data.String ( fromString )
+import Distribution.Package ( InstalledPackageId )
+import Distribution.Package ( PackageId, Package (..), packageVersion )
+import Distribution.PackageDescription ( PackageDescription(), TestSuite(..) , Library (..), BuildInfo (..))
+import Distribution.Simple ( defaultMainWithHooks, UserHooks(..), simpleUserHooks )
+import Distribution.Simple.Utils ( rewriteFile, createDirectoryIfMissingVerbose )
+import Distribution.Simple.BuildPaths ( autogenModulesDir )
+import Distribution.Simple.Setup ( BuildFlags(buildDistPref, buildVerbosity), fromFlag)
+import Distribution.Simple.LocalBuildInfo ( withPackageDB, withLibLBI, withTestLBI, LocalBuildInfo(), ComponentLocalBuildInfo(componentPackageDeps), compiler )
+import Distribution.Simple.Compiler ( showCompilerId , PackageDB (..))
+import Distribution.Text ( display , simpleParse )
+import System.FilePath ( (</>) )
+
+#if MIN_VERSION_Cabal(1,25,0)
+import Distribution.Simple.BuildPaths ( autogenComponentModulesDir )
+#endif
+
+#if MIN_VERSION_directory(1,2,2)
+import System.Directory (makeAbsolute)
+#else
+import System.Directory (getCurrentDirectory)
+import System.FilePath (isAbsolute)
+
+makeAbsolute :: FilePath -> IO FilePath
+makeAbsolute p | isAbsolute p = return p
+ | otherwise = do
+ cwd <- getCurrentDirectory
+ return $ cwd </> p
+#endif
+
+generateBuildModule :: String -> BuildFlags -> PackageDescription -> LocalBuildInfo -> IO ()
+generateBuildModule testsuiteName flags pkg lbi = do
+ let verbosity = fromFlag (buildVerbosity flags)
+ let distPref = fromFlag (buildDistPref flags)
+
+ -- Package DBs
+ let dbStack = withPackageDB lbi ++ [ SpecificPackageDB $ distPref </> "package.conf.inplace" ]
+ let dbFlags = "-hide-all-packages" : packageDbArgs dbStack
+
+ withLibLBI pkg lbi $ \lib libcfg -> do
+ let libBI = libBuildInfo lib
+
+ -- modules
+ let modules = exposedModules lib ++ otherModules libBI
+ -- it seems that doctest is happy to take in module names, not actual files!
+ let module_sources = modules
+
+ -- We need the directory with library's cabal_macros.h!
+#if MIN_VERSION_Cabal(1,25,0)
+ let libAutogenDir = autogenComponentModulesDir lbi libcfg
+#else
+ let libAutogenDir = autogenModulesDir lbi
+#endif
+
+ -- Lib sources and includes
+ iArgs <- mapM (fmap ("-i"++) . makeAbsolute) $ libAutogenDir : hsSourceDirs libBI
+ includeArgs <- mapM (fmap ("-I"++) . makeAbsolute) $ includeDirs libBI
+
+ -- CPP includes, i.e. include cabal_macros.h
+ let cppFlags = map ("-optP"++) $
+ [ "-include", libAutogenDir ++ "/cabal_macros.h" ]
+ ++ cppOptions libBI
+
+ withTestLBI pkg lbi $ \suite suitecfg -> when (testName suite == fromString testsuiteName) $ do
+
+ -- get and create autogen dir
+#if MIN_VERSION_Cabal(1,25,0)
+ let testAutogenDir = autogenComponentModulesDir lbi suitecfg
+#else
+ let testAutogenDir = autogenModulesDir lbi
+#endif
+ createDirectoryIfMissingVerbose verbosity True testAutogenDir
+
+ -- write autogen'd file
+ rewriteFile (testAutogenDir </> "Build_doctests.hs") $ unlines
+ [ "module Build_doctests where"
+ , ""
+ -- -package-id etc. flags
+ , "pkgs :: [String]"
+ , "pkgs = " ++ (show $ formatDeps $ testDeps libcfg suitecfg)
+ , ""
+ , "flags :: [String]"
+ , "flags = " ++ show (iArgs ++ includeArgs ++ dbFlags ++ cppFlags)
+ , ""
+ , "module_sources :: [String]"
+ , "module_sources = " ++ show (map display module_sources)
+ ]
+ where
+ -- we do this check in Setup, as then doctests don't need to depend on Cabal
+ isOldCompiler = maybe False id $ do
+ a <- simpleParse $ showCompilerId $ compiler lbi
+ b <- simpleParse "7.5"
+ return $ packageVersion (a :: PackageId) < b
+
+ formatDeps = map formatOne
+ formatOne (installedPkgId, pkgId)
+ -- The problem is how different cabal executables handle package databases
+ -- when doctests depend on the library
+ | packageId pkg == pkgId = "-package=" ++ display pkgId
+ | otherwise = "-package-id=" ++ display installedPkgId
+
+ -- From Distribution.Simple.Program.GHC
+ packageDbArgs :: [PackageDB] -> [String]
+ packageDbArgs | isOldCompiler = packageDbArgsConf
+ | otherwise = packageDbArgsDb
+
+ -- GHC <7.6 uses '-package-conf' instead of '-package-db'.
+ packageDbArgsConf :: [PackageDB] -> [String]
+ packageDbArgsConf dbstack = case dbstack of
+ (GlobalPackageDB:UserPackageDB:dbs) -> concatMap specific dbs
+ (GlobalPackageDB:dbs) -> ("-no-user-package-conf")
+ : concatMap specific dbs
+ _ -> ierror
+ where
+ specific (SpecificPackageDB db) = [ "-package-conf=" ++ db ]
+ specific _ = ierror
+ ierror = error $ "internal error: unexpected package db stack: "
+ ++ show dbstack
+
+ -- GHC >= 7.6 uses the '-package-db' flag. See
+ -- https://ghc.haskell.org/trac/ghc/ticket/5977.
+ packageDbArgsDb :: [PackageDB] -> [String]
+ -- special cases to make arguments prettier in common scenarios
+ packageDbArgsDb dbstack = case dbstack of
+ (GlobalPackageDB:UserPackageDB:dbs)
+ | all isSpecific dbs -> concatMap single dbs
+ (GlobalPackageDB:dbs)
+ | all isSpecific dbs -> "-no-user-package-db"
+ : concatMap single dbs
+ dbs -> "-clear-package-db"
+ : concatMap single dbs
+ where
+ single (SpecificPackageDB db) = [ "-package-db=" ++ db ]
+ single GlobalPackageDB = [ "-global-package-db" ]
+ single UserPackageDB = [ "-user-package-db" ]
+ isSpecific (SpecificPackageDB _) = True
+ isSpecific _ = False
+
+testDeps :: ComponentLocalBuildInfo -> ComponentLocalBuildInfo -> [(InstalledPackageId, PackageId)]
+testDeps xs ys = nub $ componentPackageDeps xs ++ componentPackageDeps ys
+
+defaultMainWithDoctests :: String -> IO ()
+defaultMainWithDoctests testSuiteName = defaultMainWithHooks simpleUserHooks
+ { buildHook = \pkg lbi hooks flags -> do
+ generateBuildModule testSuiteName flags pkg lbi
+ buildHook simpleUserHooks pkg lbi hooks flags
+ }
+
+#endif
+
+main :: IO ()
+main = defaultMainWithDoctests "doctests"
+
+\end{code}
Binary files old/hyphenation-0.6/data/hyph-af.chr.txt.gz and new/hyphenation-0.7/data/hyph-af.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-af.hyp.txt.gz and new/hyphenation-0.7/data/hyph-af.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-af.lic.txt.gz and new/hyphenation-0.7/data/hyph-af.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-af.pat.txt.gz and new/hyphenation-0.7/data/hyph-af.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-as.chr.txt.gz and new/hyphenation-0.7/data/hyph-as.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-as.hyp.txt.gz and new/hyphenation-0.7/data/hyph-as.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-as.lic.txt.gz and new/hyphenation-0.7/data/hyph-as.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-as.pat.txt.gz and new/hyphenation-0.7/data/hyph-as.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-bg.chr.txt.gz and new/hyphenation-0.7/data/hyph-bg.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-bg.hyp.txt.gz and new/hyphenation-0.7/data/hyph-bg.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-bg.lic.txt.gz and new/hyphenation-0.7/data/hyph-bg.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-bg.pat.txt.gz and new/hyphenation-0.7/data/hyph-bg.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-bn.chr.txt.gz and new/hyphenation-0.7/data/hyph-bn.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-bn.hyp.txt.gz and new/hyphenation-0.7/data/hyph-bn.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-bn.lic.txt.gz and new/hyphenation-0.7/data/hyph-bn.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-bn.pat.txt.gz and new/hyphenation-0.7/data/hyph-bn.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ca.chr.txt.gz and new/hyphenation-0.7/data/hyph-ca.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ca.hyp.txt.gz and new/hyphenation-0.7/data/hyph-ca.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ca.lic.txt.gz and new/hyphenation-0.7/data/hyph-ca.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ca.pat.txt.gz and new/hyphenation-0.7/data/hyph-ca.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-cop.chr.txt.gz and new/hyphenation-0.7/data/hyph-cop.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-cop.hyp.txt.gz and new/hyphenation-0.7/data/hyph-cop.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-cop.lic.txt.gz and new/hyphenation-0.7/data/hyph-cop.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-cop.pat.txt.gz and new/hyphenation-0.7/data/hyph-cop.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-cs.chr.txt.gz and new/hyphenation-0.7/data/hyph-cs.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-cs.hyp.txt.gz and new/hyphenation-0.7/data/hyph-cs.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-cs.lic.txt.gz and new/hyphenation-0.7/data/hyph-cs.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-cs.pat.txt.gz and new/hyphenation-0.7/data/hyph-cs.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-cy.chr.txt.gz and new/hyphenation-0.7/data/hyph-cy.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-cy.hyp.txt.gz and new/hyphenation-0.7/data/hyph-cy.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-cy.lic.txt.gz and new/hyphenation-0.7/data/hyph-cy.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-cy.pat.txt.gz and new/hyphenation-0.7/data/hyph-cy.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-da.chr.txt.gz and new/hyphenation-0.7/data/hyph-da.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-da.hyp.txt.gz and new/hyphenation-0.7/data/hyph-da.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-da.lic.txt.gz and new/hyphenation-0.7/data/hyph-da.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-da.pat.txt.gz and new/hyphenation-0.7/data/hyph-da.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-de-1901.chr.txt.gz and new/hyphenation-0.7/data/hyph-de-1901.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-de-1901.hyp.txt.gz and new/hyphenation-0.7/data/hyph-de-1901.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-de-1901.lic.txt.gz and new/hyphenation-0.7/data/hyph-de-1901.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-de-1901.pat.txt.gz and new/hyphenation-0.7/data/hyph-de-1901.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-de-1996.chr.txt.gz and new/hyphenation-0.7/data/hyph-de-1996.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-de-1996.hyp.txt.gz and new/hyphenation-0.7/data/hyph-de-1996.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-de-1996.lic.txt.gz and new/hyphenation-0.7/data/hyph-de-1996.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-de-1996.pat.txt.gz and new/hyphenation-0.7/data/hyph-de-1996.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-de-ch-1901.chr.txt.gz and new/hyphenation-0.7/data/hyph-de-ch-1901.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-de-ch-1901.hyp.txt.gz and new/hyphenation-0.7/data/hyph-de-ch-1901.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-de-ch-1901.lic.txt.gz and new/hyphenation-0.7/data/hyph-de-ch-1901.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-de-ch-1901.pat.txt.gz and new/hyphenation-0.7/data/hyph-de-ch-1901.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-el-monoton.chr.txt.gz and new/hyphenation-0.7/data/hyph-el-monoton.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-el-monoton.hyp.txt.gz and new/hyphenation-0.7/data/hyph-el-monoton.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-el-monoton.lic.txt.gz and new/hyphenation-0.7/data/hyph-el-monoton.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-el-monoton.pat.txt.gz and new/hyphenation-0.7/data/hyph-el-monoton.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-el-polyton.chr.txt.gz and new/hyphenation-0.7/data/hyph-el-polyton.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-el-polyton.hyp.txt.gz and new/hyphenation-0.7/data/hyph-el-polyton.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-el-polyton.lic.txt.gz and new/hyphenation-0.7/data/hyph-el-polyton.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-el-polyton.pat.txt.gz and new/hyphenation-0.7/data/hyph-el-polyton.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-en-gb.chr.txt.gz and new/hyphenation-0.7/data/hyph-en-gb.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-en-gb.hyp.txt.gz and new/hyphenation-0.7/data/hyph-en-gb.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-en-gb.lic.txt.gz and new/hyphenation-0.7/data/hyph-en-gb.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-en-gb.pat.txt.gz and new/hyphenation-0.7/data/hyph-en-gb.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-en-us.chr.txt.gz and new/hyphenation-0.7/data/hyph-en-us.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-en-us.hyp.txt.gz and new/hyphenation-0.7/data/hyph-en-us.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-en-us.lic.txt.gz and new/hyphenation-0.7/data/hyph-en-us.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-en-us.pat.txt.gz and new/hyphenation-0.7/data/hyph-en-us.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-eo.chr.txt.gz and new/hyphenation-0.7/data/hyph-eo.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-eo.hyp.txt.gz and new/hyphenation-0.7/data/hyph-eo.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-eo.lic.txt.gz and new/hyphenation-0.7/data/hyph-eo.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-eo.pat.txt.gz and new/hyphenation-0.7/data/hyph-eo.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-es.chr.txt.gz and new/hyphenation-0.7/data/hyph-es.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-es.hyp.txt.gz and new/hyphenation-0.7/data/hyph-es.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-es.lic.txt.gz and new/hyphenation-0.7/data/hyph-es.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-es.pat.txt.gz and new/hyphenation-0.7/data/hyph-es.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-et.chr.txt.gz and new/hyphenation-0.7/data/hyph-et.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-et.hyp.txt.gz and new/hyphenation-0.7/data/hyph-et.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-et.lic.txt.gz and new/hyphenation-0.7/data/hyph-et.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-et.pat.txt.gz and new/hyphenation-0.7/data/hyph-et.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-eu.chr.txt.gz and new/hyphenation-0.7/data/hyph-eu.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-eu.hyp.txt.gz and new/hyphenation-0.7/data/hyph-eu.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-eu.lic.txt.gz and new/hyphenation-0.7/data/hyph-eu.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-eu.pat.txt.gz and new/hyphenation-0.7/data/hyph-eu.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-fi.chr.txt.gz and new/hyphenation-0.7/data/hyph-fi.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-fi.hyp.txt.gz and new/hyphenation-0.7/data/hyph-fi.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-fi.lic.txt.gz and new/hyphenation-0.7/data/hyph-fi.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-fi.pat.txt.gz and new/hyphenation-0.7/data/hyph-fi.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-fr.chr.txt.gz and new/hyphenation-0.7/data/hyph-fr.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-fr.hyp.txt.gz and new/hyphenation-0.7/data/hyph-fr.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-fr.lic.txt.gz and new/hyphenation-0.7/data/hyph-fr.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-fr.pat.txt.gz and new/hyphenation-0.7/data/hyph-fr.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-fur.chr.txt.gz and new/hyphenation-0.7/data/hyph-fur.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-fur.hyp.txt.gz and new/hyphenation-0.7/data/hyph-fur.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-fur.lic.txt.gz and new/hyphenation-0.7/data/hyph-fur.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-fur.pat.txt.gz and new/hyphenation-0.7/data/hyph-fur.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ga.chr.txt.gz and new/hyphenation-0.7/data/hyph-ga.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ga.hyp.txt.gz and new/hyphenation-0.7/data/hyph-ga.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ga.lic.txt.gz and new/hyphenation-0.7/data/hyph-ga.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ga.pat.txt.gz and new/hyphenation-0.7/data/hyph-ga.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-gl.chr.txt.gz and new/hyphenation-0.7/data/hyph-gl.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-gl.hyp.txt.gz and new/hyphenation-0.7/data/hyph-gl.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-gl.lic.txt.gz and new/hyphenation-0.7/data/hyph-gl.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-gl.pat.txt.gz and new/hyphenation-0.7/data/hyph-gl.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-grc.chr.txt.gz and new/hyphenation-0.7/data/hyph-grc.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-grc.hyp.txt.gz and new/hyphenation-0.7/data/hyph-grc.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-grc.lic.txt.gz and new/hyphenation-0.7/data/hyph-grc.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-grc.pat.txt.gz and new/hyphenation-0.7/data/hyph-grc.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-gu.chr.txt.gz and new/hyphenation-0.7/data/hyph-gu.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-gu.hyp.txt.gz and new/hyphenation-0.7/data/hyph-gu.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-gu.lic.txt.gz and new/hyphenation-0.7/data/hyph-gu.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-gu.pat.txt.gz and new/hyphenation-0.7/data/hyph-gu.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-hi.chr.txt.gz and new/hyphenation-0.7/data/hyph-hi.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-hi.hyp.txt.gz and new/hyphenation-0.7/data/hyph-hi.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-hi.lic.txt.gz and new/hyphenation-0.7/data/hyph-hi.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-hi.pat.txt.gz and new/hyphenation-0.7/data/hyph-hi.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-hr.chr.txt.gz and new/hyphenation-0.7/data/hyph-hr.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-hr.hyp.txt.gz and new/hyphenation-0.7/data/hyph-hr.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-hr.lic.txt.gz and new/hyphenation-0.7/data/hyph-hr.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-hr.pat.txt.gz and new/hyphenation-0.7/data/hyph-hr.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-hsb.chr.txt.gz and new/hyphenation-0.7/data/hyph-hsb.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-hsb.hyp.txt.gz and new/hyphenation-0.7/data/hyph-hsb.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-hsb.lic.txt.gz and new/hyphenation-0.7/data/hyph-hsb.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-hsb.pat.txt.gz and new/hyphenation-0.7/data/hyph-hsb.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-hu.chr.txt.gz and new/hyphenation-0.7/data/hyph-hu.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-hu.hyp.txt.gz and new/hyphenation-0.7/data/hyph-hu.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-hu.lic.txt.gz and new/hyphenation-0.7/data/hyph-hu.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-hu.pat.txt.gz and new/hyphenation-0.7/data/hyph-hu.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-hy.chr.txt.gz and new/hyphenation-0.7/data/hyph-hy.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-hy.hyp.txt.gz and new/hyphenation-0.7/data/hyph-hy.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-hy.lic.txt.gz and new/hyphenation-0.7/data/hyph-hy.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-hy.pat.txt.gz and new/hyphenation-0.7/data/hyph-hy.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ia.chr.txt.gz and new/hyphenation-0.7/data/hyph-ia.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ia.hyp.txt.gz and new/hyphenation-0.7/data/hyph-ia.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ia.lic.txt.gz and new/hyphenation-0.7/data/hyph-ia.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ia.pat.txt.gz and new/hyphenation-0.7/data/hyph-ia.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-id.chr.txt.gz and new/hyphenation-0.7/data/hyph-id.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-id.hyp.txt.gz and new/hyphenation-0.7/data/hyph-id.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-id.lic.txt.gz and new/hyphenation-0.7/data/hyph-id.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-id.pat.txt.gz and new/hyphenation-0.7/data/hyph-id.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-is.chr.txt.gz and new/hyphenation-0.7/data/hyph-is.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-is.hyp.txt.gz and new/hyphenation-0.7/data/hyph-is.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-is.lic.txt.gz and new/hyphenation-0.7/data/hyph-is.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-is.pat.txt.gz and new/hyphenation-0.7/data/hyph-is.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-it.chr.txt.gz and new/hyphenation-0.7/data/hyph-it.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-it.hyp.txt.gz and new/hyphenation-0.7/data/hyph-it.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-it.lic.txt.gz and new/hyphenation-0.7/data/hyph-it.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-it.pat.txt.gz and new/hyphenation-0.7/data/hyph-it.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ka.chr.txt.gz and new/hyphenation-0.7/data/hyph-ka.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ka.hyp.txt.gz and new/hyphenation-0.7/data/hyph-ka.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ka.lic.txt.gz and new/hyphenation-0.7/data/hyph-ka.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ka.pat.txt.gz and new/hyphenation-0.7/data/hyph-ka.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-kmr.chr.txt.gz and new/hyphenation-0.7/data/hyph-kmr.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-kmr.hyp.txt.gz and new/hyphenation-0.7/data/hyph-kmr.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-kmr.lic.txt.gz and new/hyphenation-0.7/data/hyph-kmr.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-kmr.pat.txt.gz and new/hyphenation-0.7/data/hyph-kmr.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-kn.chr.txt.gz and new/hyphenation-0.7/data/hyph-kn.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-kn.hyp.txt.gz and new/hyphenation-0.7/data/hyph-kn.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-kn.lic.txt.gz and new/hyphenation-0.7/data/hyph-kn.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-kn.pat.txt.gz and new/hyphenation-0.7/data/hyph-kn.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-la-x-classic.chr.txt.gz and new/hyphenation-0.7/data/hyph-la-x-classic.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-la-x-classic.hyp.txt.gz and new/hyphenation-0.7/data/hyph-la-x-classic.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-la-x-classic.lic.txt.gz and new/hyphenation-0.7/data/hyph-la-x-classic.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-la-x-classic.pat.txt.gz and new/hyphenation-0.7/data/hyph-la-x-classic.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-la.chr.txt.gz and new/hyphenation-0.7/data/hyph-la.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-la.hyp.txt.gz and new/hyphenation-0.7/data/hyph-la.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-la.lic.txt.gz and new/hyphenation-0.7/data/hyph-la.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-la.pat.txt.gz and new/hyphenation-0.7/data/hyph-la.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-lo.chr.txt.gz and new/hyphenation-0.7/data/hyph-lo.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-lo.hyp.txt.gz and new/hyphenation-0.7/data/hyph-lo.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-lo.lic.txt.gz and new/hyphenation-0.7/data/hyph-lo.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-lo.pat.txt.gz and new/hyphenation-0.7/data/hyph-lo.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-lt.chr.txt.gz and new/hyphenation-0.7/data/hyph-lt.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-lt.hyp.txt.gz and new/hyphenation-0.7/data/hyph-lt.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-lt.lic.txt.gz and new/hyphenation-0.7/data/hyph-lt.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-lt.pat.txt.gz and new/hyphenation-0.7/data/hyph-lt.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-lv.chr.txt.gz and new/hyphenation-0.7/data/hyph-lv.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-lv.hyp.txt.gz and new/hyphenation-0.7/data/hyph-lv.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-lv.lic.txt.gz and new/hyphenation-0.7/data/hyph-lv.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-lv.pat.txt.gz and new/hyphenation-0.7/data/hyph-lv.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ml.chr.txt.gz and new/hyphenation-0.7/data/hyph-ml.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ml.hyp.txt.gz and new/hyphenation-0.7/data/hyph-ml.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ml.lic.txt.gz and new/hyphenation-0.7/data/hyph-ml.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ml.pat.txt.gz and new/hyphenation-0.7/data/hyph-ml.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-mn-cyrl.chr.txt.gz and new/hyphenation-0.7/data/hyph-mn-cyrl.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-mn-cyrl.hyp.txt.gz and new/hyphenation-0.7/data/hyph-mn-cyrl.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-mn-cyrl.lic.txt.gz and new/hyphenation-0.7/data/hyph-mn-cyrl.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-mn-cyrl.pat.txt.gz and new/hyphenation-0.7/data/hyph-mn-cyrl.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-mr.chr.txt.gz and new/hyphenation-0.7/data/hyph-mr.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-mr.hyp.txt.gz and new/hyphenation-0.7/data/hyph-mr.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-mr.lic.txt.gz and new/hyphenation-0.7/data/hyph-mr.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-mr.pat.txt.gz and new/hyphenation-0.7/data/hyph-mr.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-mul-ethi.chr.txt.gz and new/hyphenation-0.7/data/hyph-mul-ethi.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-mul-ethi.hyp.txt.gz and new/hyphenation-0.7/data/hyph-mul-ethi.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-mul-ethi.lic.txt.gz and new/hyphenation-0.7/data/hyph-mul-ethi.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-mul-ethi.pat.txt.gz and new/hyphenation-0.7/data/hyph-mul-ethi.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-nb.chr.txt.gz and new/hyphenation-0.7/data/hyph-nb.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-nb.hyp.txt.gz and new/hyphenation-0.7/data/hyph-nb.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-nb.lic.txt.gz and new/hyphenation-0.7/data/hyph-nb.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-nb.pat.txt.gz and new/hyphenation-0.7/data/hyph-nb.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-nl.chr.txt.gz and new/hyphenation-0.7/data/hyph-nl.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-nl.hyp.txt.gz and new/hyphenation-0.7/data/hyph-nl.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-nl.lic.txt.gz and new/hyphenation-0.7/data/hyph-nl.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-nl.pat.txt.gz and new/hyphenation-0.7/data/hyph-nl.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-nn.chr.txt.gz and new/hyphenation-0.7/data/hyph-nn.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-nn.hyp.txt.gz and new/hyphenation-0.7/data/hyph-nn.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-nn.lic.txt.gz and new/hyphenation-0.7/data/hyph-nn.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-nn.pat.txt.gz and new/hyphenation-0.7/data/hyph-nn.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-or.chr.txt.gz and new/hyphenation-0.7/data/hyph-or.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-or.hyp.txt.gz and new/hyphenation-0.7/data/hyph-or.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-or.lic.txt.gz and new/hyphenation-0.7/data/hyph-or.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-or.pat.txt.gz and new/hyphenation-0.7/data/hyph-or.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-pa.chr.txt.gz and new/hyphenation-0.7/data/hyph-pa.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-pa.hyp.txt.gz and new/hyphenation-0.7/data/hyph-pa.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-pa.lic.txt.gz and new/hyphenation-0.7/data/hyph-pa.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-pa.pat.txt.gz and new/hyphenation-0.7/data/hyph-pa.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-pl.chr.txt.gz and new/hyphenation-0.7/data/hyph-pl.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-pl.hyp.txt.gz and new/hyphenation-0.7/data/hyph-pl.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-pl.lic.txt.gz and new/hyphenation-0.7/data/hyph-pl.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-pl.pat.txt.gz and new/hyphenation-0.7/data/hyph-pl.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-pms.chr.txt.gz and new/hyphenation-0.7/data/hyph-pms.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-pms.hyp.txt.gz and new/hyphenation-0.7/data/hyph-pms.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-pms.lic.txt.gz and new/hyphenation-0.7/data/hyph-pms.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-pms.pat.txt.gz and new/hyphenation-0.7/data/hyph-pms.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-pt.chr.txt.gz and new/hyphenation-0.7/data/hyph-pt.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-pt.hyp.txt.gz and new/hyphenation-0.7/data/hyph-pt.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-pt.lic.txt.gz and new/hyphenation-0.7/data/hyph-pt.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-pt.pat.txt.gz and new/hyphenation-0.7/data/hyph-pt.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-rm.chr.txt.gz and new/hyphenation-0.7/data/hyph-rm.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-rm.hyp.txt.gz and new/hyphenation-0.7/data/hyph-rm.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-rm.lic.txt.gz and new/hyphenation-0.7/data/hyph-rm.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-rm.pat.txt.gz and new/hyphenation-0.7/data/hyph-rm.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ro.chr.txt.gz and new/hyphenation-0.7/data/hyph-ro.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ro.hyp.txt.gz and new/hyphenation-0.7/data/hyph-ro.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ro.lic.txt.gz and new/hyphenation-0.7/data/hyph-ro.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ro.pat.txt.gz and new/hyphenation-0.7/data/hyph-ro.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ru.chr.txt.gz and new/hyphenation-0.7/data/hyph-ru.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ru.hyp.txt.gz and new/hyphenation-0.7/data/hyph-ru.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ru.lic.txt.gz and new/hyphenation-0.7/data/hyph-ru.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ru.pat.txt.gz and new/hyphenation-0.7/data/hyph-ru.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sa.chr.txt.gz and new/hyphenation-0.7/data/hyph-sa.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sa.hyp.txt.gz and new/hyphenation-0.7/data/hyph-sa.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sa.lic.txt.gz and new/hyphenation-0.7/data/hyph-sa.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sa.pat.txt.gz and new/hyphenation-0.7/data/hyph-sa.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sh-cyrl.chr.txt.gz and new/hyphenation-0.7/data/hyph-sh-cyrl.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sh-cyrl.hyp.txt.gz and new/hyphenation-0.7/data/hyph-sh-cyrl.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sh-cyrl.lic.txt.gz and new/hyphenation-0.7/data/hyph-sh-cyrl.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sh-cyrl.pat.txt.gz and new/hyphenation-0.7/data/hyph-sh-cyrl.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sh-latn.chr.txt.gz and new/hyphenation-0.7/data/hyph-sh-latn.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sh-latn.hyp.txt.gz and new/hyphenation-0.7/data/hyph-sh-latn.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sh-latn.lic.txt.gz and new/hyphenation-0.7/data/hyph-sh-latn.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sh-latn.pat.txt.gz and new/hyphenation-0.7/data/hyph-sh-latn.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sk.chr.txt.gz and new/hyphenation-0.7/data/hyph-sk.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sk.hyp.txt.gz and new/hyphenation-0.7/data/hyph-sk.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sk.lic.txt.gz and new/hyphenation-0.7/data/hyph-sk.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sk.pat.txt.gz and new/hyphenation-0.7/data/hyph-sk.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sl.chr.txt.gz and new/hyphenation-0.7/data/hyph-sl.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sl.hyp.txt.gz and new/hyphenation-0.7/data/hyph-sl.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sl.lic.txt.gz and new/hyphenation-0.7/data/hyph-sl.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sl.pat.txt.gz and new/hyphenation-0.7/data/hyph-sl.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sr-cyrl.chr.txt.gz and new/hyphenation-0.7/data/hyph-sr-cyrl.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sr-cyrl.hyp.txt.gz and new/hyphenation-0.7/data/hyph-sr-cyrl.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sr-cyrl.lic.txt.gz and new/hyphenation-0.7/data/hyph-sr-cyrl.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sr-cyrl.pat.txt.gz and new/hyphenation-0.7/data/hyph-sr-cyrl.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sv.chr.txt.gz and new/hyphenation-0.7/data/hyph-sv.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sv.hyp.txt.gz and new/hyphenation-0.7/data/hyph-sv.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sv.lic.txt.gz and new/hyphenation-0.7/data/hyph-sv.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-sv.pat.txt.gz and new/hyphenation-0.7/data/hyph-sv.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ta.chr.txt.gz and new/hyphenation-0.7/data/hyph-ta.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ta.hyp.txt.gz and new/hyphenation-0.7/data/hyph-ta.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ta.lic.txt.gz and new/hyphenation-0.7/data/hyph-ta.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-ta.pat.txt.gz and new/hyphenation-0.7/data/hyph-ta.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-te.chr.txt.gz and new/hyphenation-0.7/data/hyph-te.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-te.hyp.txt.gz and new/hyphenation-0.7/data/hyph-te.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-te.lic.txt.gz and new/hyphenation-0.7/data/hyph-te.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-te.pat.txt.gz and new/hyphenation-0.7/data/hyph-te.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-th.chr.txt.gz and new/hyphenation-0.7/data/hyph-th.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-th.hyp.txt.gz and new/hyphenation-0.7/data/hyph-th.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-th.lic.txt.gz and new/hyphenation-0.7/data/hyph-th.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-th.pat.txt.gz and new/hyphenation-0.7/data/hyph-th.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-tk.chr.txt.gz and new/hyphenation-0.7/data/hyph-tk.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-tk.hyp.txt.gz and new/hyphenation-0.7/data/hyph-tk.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-tk.lic.txt.gz and new/hyphenation-0.7/data/hyph-tk.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-tk.pat.txt.gz and new/hyphenation-0.7/data/hyph-tk.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-tr.chr.txt.gz and new/hyphenation-0.7/data/hyph-tr.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-tr.hyp.txt.gz and new/hyphenation-0.7/data/hyph-tr.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-tr.lic.txt.gz and new/hyphenation-0.7/data/hyph-tr.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-tr.pat.txt.gz and new/hyphenation-0.7/data/hyph-tr.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-uk.chr.txt.gz and new/hyphenation-0.7/data/hyph-uk.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-uk.hyp.txt.gz and new/hyphenation-0.7/data/hyph-uk.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-uk.lic.txt.gz and new/hyphenation-0.7/data/hyph-uk.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-uk.pat.txt.gz and new/hyphenation-0.7/data/hyph-uk.pat.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-zh-latn-pinyin.chr.txt.gz and new/hyphenation-0.7/data/hyph-zh-latn-pinyin.chr.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-zh-latn-pinyin.hyp.txt.gz and new/hyphenation-0.7/data/hyph-zh-latn-pinyin.hyp.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-zh-latn-pinyin.lic.txt.gz and new/hyphenation-0.7/data/hyph-zh-latn-pinyin.lic.txt.gz differ
Binary files old/hyphenation-0.6/data/hyph-zh-latn-pinyin.pat.txt.gz and new/hyphenation-0.7/data/hyph-zh-latn-pinyin.pat.txt.gz differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hyphenation-0.6/hyphenation.cabal new/hyphenation-0.7/hyphenation.cabal
--- old/hyphenation-0.6/hyphenation.cabal 2015-07-24 01:53:55.000000000 +0200
+++ new/hyphenation-0.7/hyphenation.cabal 2017-04-28 01:51:16.000000000 +0200
@@ -1,6 +1,6 @@
name: hyphenation
category: Text
-version: 0.6
+version: 0.7
license: BSD3
cabal-version: >= 1.8
license-file: LICENSE
@@ -9,9 +9,9 @@
stability: provisional
homepage: http://github.com/ekmett/hyphenation
bug-reports: http://github.com/ekmett/hyphenation/issues
-copyright: (C) 2012-2015 Edward A. Kmett
+copyright: (C) 2012-2016 Edward A. Kmett
synopsis: Configurable Knuth-Liang hyphenation
-tested-with: GHC == 7.4.2, GHC == 7.6.3, GHC == 7.8.4, GHC == 7.10.1
+tested-with: GHC == 7.4.2, GHC == 7.6.3, GHC == 7.8.4, GHC == 7.10.3, GHC == 8.0.2, GHC == 8.2.1
description:
Configurable Knuth-Liang hyphenation
.
@@ -29,19 +29,25 @@
.
>>> hyphenate icelandic "va\240lahei\240avegavinnuverkf\230rageymslusk\250r"
["va\240la","hei\240a","vega","vinnu","verk","f\230ra","geymslu","sk\250r"]
-build-type: Simple
+build-type: Custom
data-dir: data
data-files: *.hyp.txt.gz, *.pat.txt.gz, *.lic.txt.gz, *.chr.txt.gz
extra-source-files: .travis.yml CHANGELOG.markdown HLint.hs
+custom-setup
+ setup-depends:
+ base >= 4.3 && <5,
+ Cabal >= 1.10,
+ cabal-doctest >= 1 && <1.1
+
source-repository head
type: git
location: git://github.com/ekmett/hyphenation.git
Flag Embed
Description: Embed data in library binary
- (Warning: This increases the executable size by about 3Mbs unless
+ (Warning: This increases the executable size by about 1Mb unless
unneeded language data files are manually removed from
the "data" directory before compiling)
Default: False
@@ -49,7 +55,7 @@
library
build-depends:
base >= 4 && < 5,
- bytestring >= 0.9.4 && < 0.11,
+ bytestring >= 0.9 && < 0.11,
containers >= 0.3.0.0 && < 0.6,
unordered-containers >= 0.2.1 && < 0.3,
zlib >= 0.5 && < 0.7
@@ -66,6 +72,7 @@
Text.Hyphenation.Pattern
other-modules:
+ Text.Hyphenation.ByteStringLazyCompat
Paths_hyphenation
hs-source-dirs: src
@@ -78,9 +85,7 @@
build-depends:
base,
containers,
- directory >= 1.0 && < 1.3,
- doctest >= 0.8 && < 0.10,
- filepath >= 1.3 && < 1.5,
+ doctest >= 0.11.2 && < 0.12,
hyphenation,
unordered-containers
ghc-options: -Wall -threaded
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hyphenation-0.6/src/Text/Hyphenation/ByteStringLazyCompat.hs new/hyphenation-0.7/src/Text/Hyphenation/ByteStringLazyCompat.hs
--- old/hyphenation-0.6/src/Text/Hyphenation/ByteStringLazyCompat.hs 1970-01-01 01:00:00.000000000 +0100
+++ new/hyphenation-0.7/src/Text/Hyphenation/ByteStringLazyCompat.hs 2017-04-28 01:51:16.000000000 +0200
@@ -0,0 +1,32 @@
+{-# LANGUAGE CPP #-}
+
+-----------------------------------------------------------------------------
+-- |
+-- Module : Text.Hyphenation.ByteStringLazyCompat
+-- Copyright : (C) 2012-2015 Edward Kmett,
+-- (C) 2007 Ned Batchelder
+-- License : BSD-style (see the languageAffix LICENSE)
+--
+-- Maintainer : Edward Kmett <ekmett(a)gmail.com>
+-- Stability : provisional
+-- Portability : portable
+--
+----------------------------------------------------------------------------
+module Text.Hyphenation.ByteStringLazyCompat
+ ( module Lazy
+#if !(MIN_VERSION_bytestring(0,10,0))
+ , fromStrict
+#endif
+ ) where
+
+import Data.ByteString.Lazy as Lazy
+
+#if !(MIN_VERSION_bytestring(0,10,0))
+import qualified Data.ByteString as BS
+import Data.ByteString.Lazy.Internal (ByteString(..))
+
+-- |/O(1)/ Convert a strict 'ByteString' into a lazy 'ByteString'.
+fromStrict :: BS.ByteString -> ByteString
+fromStrict bs | BS.null bs = Empty
+ | otherwise = Chunk bs Empty
+#endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hyphenation-0.6/src/Text/Hyphenation/Language.hs new/hyphenation-0.7/src/Text/Hyphenation/Language.hs
--- old/hyphenation-0.6/src/Text/Hyphenation/Language.hs 2015-07-24 01:53:55.000000000 +0200
+++ new/hyphenation-0.7/src/Text/Hyphenation/Language.hs 2017-04-28 01:51:16.000000000 +0200
@@ -27,7 +27,7 @@
, coptic, croatian, czech, danish, dutch, english_US, english_GB, esperanto
, estonian, ethiopic, {- farsi, -} finnish, french, friulan, galician, georgian, german_1901, german_1996
, german_Swiss, greek_Ancient, greek_Mono, greek_Poly, gujarati, hindi, hungarian
- , icelandic, indonesian, interlingua, irish, italian, kannada, kurmanji, lao, latin, latin_Classic
+ , icelandic, indonesian, interlingua, irish, italian, kannada, kurmanji, latin, latin_Classic
, latvian, lithuanian, malayalam, marathi, mongolian, norwegian_Bokmal
, norwegian_Nynorsk, oriya, panjabi, piedmontese, polish, portuguese, romanian, romansh
, russian, sanskrit, serbian_Cyrillic, serbocroatian_Cyrillic
@@ -41,14 +41,13 @@
#if __GLASGOW_HASKELL__ < 710
import Data.Functor ((<$>))
#endif
-import Data.Maybe (fromMaybe)
import qualified Data.IntMap as IM
+import Text.Hyphenation.ByteStringLazyCompat as Lazy
import Text.Hyphenation.Hyphenator
import Text.Hyphenation.Pattern
import Text.Hyphenation.Exception
import System.IO.Unsafe
import Data.ByteString.Lazy.Char8 as Char8
-import Data.ByteString.Lazy as Lazy
#if !EMBED
import Paths_hyphenation
@@ -75,7 +74,7 @@
pat <- Char8.unpack . decompress <$> (getDataFileName ("hyph-" ++ language ++ ".pat.txt.gz") >>= Lazy.readFile)
chr <- Char8.unpack . decompress <$> (getDataFileName ("hyph-" ++ language ++ ".chr.txt.gz") >>= Lazy.readFile)
let chrMap = IM.fromList (Prelude.lines chr >>= chrLine)
- tryLookup x = fromMaybe x $ IM.lookup (fromEnum x) chrMap
+ tryLookup x = IM.findWithDefault x (fromEnum x) chrMap
return $ Hyphenator tryLookup (parsePatterns pat) (parseExceptions hyp) defaultLeftMin defaultRightMin
#else
loadHyphenator language = return $ Hyphenator tryLookup (parsePatterns pat) (parseExceptions hyp) defaultLeftMin defaultRightMin
@@ -83,7 +82,7 @@
Just pat = Char8.unpack . decompress . Lazy.fromStrict <$> lookup ("hyph-" ++ language ++ ".pat.txt.gz") hyphenatorFiles
Just chr = Char8.unpack . decompress . Lazy.fromStrict <$> lookup ("hyph-" ++ language ++ ".chr.txt.gz") hyphenatorFiles
chrMap = IM.fromList (Prelude.lines chr >>= chrLine)
- tryLookup x = fromMaybe x $ IM.lookup (fromEnum x) chrMap
+ tryLookup x = IM.findWithDefault x (fromEnum x) chrMap
#endif
-- | A strongly typed set of available languages you can use for hyphenation.
@@ -123,7 +122,6 @@
| Italian
| Kannada
| Kurmanji
- | Lao
| Latin
| Latin_Classic
| Latvian
@@ -199,7 +197,6 @@
Italian -> "it"
Kannada -> "kn"
Kurmanji -> "kmr"
- Lao -> "lo"
Latin -> "la"
Latin_Classic -> "la-x-classic"
Latvian -> "lv"
@@ -264,7 +261,7 @@
coptic, croatian, czech, danish, dutch, esperanto,
estonian, ethiopic, {- farsi, -} finnish, friulan, galician, georgian, german_1901, german_1996,
german_Swiss, greek_Ancient, greek_Mono, greek_Poly, gujarati, hindi, hungarian,
- indonesian, interlingua, irish, italian, kannada, kurmanji, lao, latin, latin_Classic,
+ indonesian, interlingua, irish, italian, kannada, kurmanji, latin, latin_Classic,
latvian, lithuanian, malayalam, marathi, mongolian, norwegian_Bokmal,
norwegian_Nynorsk, oriya, panjabi, piedmontese, polish, portuguese, romanian,
romansh, russian, sanskrit, serbian_Cyrillic, serbocroatian_Cyrillic,
@@ -309,7 +306,6 @@
italian = unsafePerformIO (loadHyphenator (languageAffix Italian))
kannada = unsafePerformIO (loadHyphenator (languageAffix Kannada))
kurmanji = unsafePerformIO (loadHyphenator (languageAffix Kurmanji))
-lao = unsafePerformIO (loadHyphenator (languageAffix Lao))
latin = unsafePerformIO (loadHyphenator (languageAffix Latin))
latin_Classic = unsafePerformIO (loadHyphenator (languageAffix Latin_Classic))
latvian = unsafePerformIO (loadHyphenator (languageAffix Latvian))
@@ -385,7 +381,6 @@
Italian -> italian
Kannada -> kannada
Kurmanji -> kurmanji
- Lao -> lao
Latin -> latin
Latin_Classic -> latin_Classic
Latvian -> latvian
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hyphenation-0.6/tests/doctests.hs new/hyphenation-0.7/tests/doctests.hs
--- old/hyphenation-0.6/tests/doctests.hs 2015-07-24 01:53:55.000000000 +0200
+++ new/hyphenation-0.7/tests/doctests.hs 2017-04-28 01:51:16.000000000 +0200
@@ -1,31 +1,25 @@
-{-# LANGUAGE CPP #-}
+-----------------------------------------------------------------------------
+-- |
+-- Module : Main (doctests)
+-- Copyright : (C) 2012-14 Edward Kmett
+-- License : BSD-style (see the file LICENSE)
+-- Maintainer : Edward Kmett <ekmett(a)gmail.com>
+-- Stability : provisional
+-- Portability : portable
+--
+-- This module provides doctests for a project based on the actual versions
+-- of the packages it was built with. It requires a corresponding Setup.lhs
+-- to be added to the project
+-----------------------------------------------------------------------------
module Main where
+import Build_doctests (flags, pkgs, module_sources)
+import Data.Foldable (traverse_)
import Test.DocTest
-import System.Directory
-import System.FilePath
-#if __GLASGOW_HASKELL__ < 710
-import Control.Applicative
-#endif
-import Control.Monad
-import Data.List
main :: IO ()
-main = getSources >>= \sources -> doctest $
- "-isrc"
- : "-idist/build/autogen"
- : "-optP-include"
- : "-optPdist/build/autogen/cabal_macros.h"
- : sources
-
-getSources :: IO [FilePath]
-getSources = filter (isSuffixOf ".hs") <$> go "src"
+main = do
+ traverse_ putStrLn args
+ doctest args
where
- go dir = do
- (dirs, files) <- getFilesAndDirectories dir
- (files ++) . concat <$> mapM go dirs
-
-getFilesAndDirectories :: FilePath -> IO ([FilePath], [FilePath])
-getFilesAndDirectories dir = do
- c <- map (dir </>) . filter (`notElem` ["..", "."]) <$> getDirectoryContents dir
- (,) <$> filterM doesDirectoryExist c <*> filterM doesFileExist c
+ args = flags ++ pkgs ++ module_sources
++++++ hyphenation.cabal ++++++
name: hyphenation
category: Text
version: 0.7
x-revision: 2
license: BSD3
cabal-version: >= 1.8
license-file: LICENSE
author: Edward A. Kmett
maintainer: Edward A. Kmett <ekmett(a)gmail.com>
stability: provisional
homepage: http://github.com/ekmett/hyphenation
bug-reports: http://github.com/ekmett/hyphenation/issues
copyright: (C) 2012-2016 Edward A. Kmett
synopsis: Configurable Knuth-Liang hyphenation
tested-with: GHC == 7.4.2, GHC == 7.6.3, GHC == 7.8.4, GHC == 7.10.3, GHC == 8.0.2, GHC == 8.2.1
description:
Configurable Knuth-Liang hyphenation
.
Uses the UTF8 encoded hyphenation patterns provided by
hyph-utf8 from
<http://www.ctan.org/tex-archive/language/hyph-utf8>
.
Usage:
.
>>> hyphenate english_US "supercalifragilisticexpialadocious"
["su","per","cal","ifrag","ilis","tic","ex","pi","al","ado","cious"]
.
>>> hyphenate english_US "hyphenation"
["hy","phen","ation"]
.
>>> hyphenate icelandic "va\240lahei\240avegavinnuverkf\230rageymslusk\250r"
["va\240la","hei\240a","vega","vinnu","verk","f\230ra","geymslu","sk\250r"]
build-type: Custom
data-dir: data
data-files: *.hyp.txt.gz, *.pat.txt.gz, *.lic.txt.gz, *.chr.txt.gz
extra-source-files: .travis.yml CHANGELOG.markdown HLint.hs
custom-setup
setup-depends:
base >= 4.3 && <5,
Cabal >= 1.10,
cabal-doctest >= 1 && <1.1
source-repository head
type: git
location: git://github.com/ekmett/hyphenation.git
Flag Embed
Description: Embed data in library binary
(Warning: This increases the executable size by about 1Mb unless
unneeded language data files are manually removed from
the "data" directory before compiling)
Default: False
library
build-depends:
base >= 4 && < 5,
bytestring >= 0.9 && < 0.11,
containers >= 0.3.0.0 && < 0.6,
unordered-containers >= 0.2.1 && < 0.3,
zlib >= 0.5 && < 0.7
if flag(embed)
build-depends: file-embed >= 0.0.7 && < 0.1
CPP-Options: "-DEMBED"
exposed-modules:
Text.Hyphenation
Text.Hyphenation.Hyphenator
Text.Hyphenation.Language
Text.Hyphenation.Exception
Text.Hyphenation.Pattern
other-modules:
Text.Hyphenation.ByteStringLazyCompat
Paths_hyphenation
hs-source-dirs: src
ghc-options: -Wall
-- Verify the results of the examples
test-suite doctests
type: exitcode-stdio-1.0
main-is: doctests.hs
build-depends:
base,
containers,
doctest >= 0.11.2 && < 0.14,
hyphenation,
unordered-containers
ghc-options: -Wall -threaded
hs-source-dirs: tests
1
0
Hello community,
here is the log from the commit of package ghc-hruby for openSUSE:Factory checked in at 2017-08-31 21:03:25
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-hruby (Old)
and /work/SRC/openSUSE:Factory/.ghc-hruby.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-hruby"
Thu Aug 31 21:03:25 2017 rev:3 rq:517545 version:0.3.4.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc-hruby/ghc-hruby.changes 2017-07-23 12:15:51.235421078 +0200
+++ /work/SRC/openSUSE:Factory/.ghc-hruby.new/ghc-hruby.changes 2017-08-31 21:03:26.632570847 +0200
@@ -1,0 +2,11 @@
+Thu Aug 3 15:38:38 UTC 2017 - psimons(a)suse.com
+
+- Updated with latest spec-cleaner version 0.9.8-8-geadfbbf.
+
+-------------------------------------------------------------------
+Thu Jul 27 14:07:31 UTC 2017 - psimons(a)suse.com
+
+- Update to version 0.3.4.4. This change makes the previously added
+ "add-ruby-2.4-support.patch" obsolete.
+
+-------------------------------------------------------------------
Old:
----
add-ruby-2.4-support.patch
hruby-0.3.4.3.tar.gz
New:
----
hruby-0.3.4.4.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-hruby.spec ++++++
--- /var/tmp/diff_new_pack.q5SxoX/_old 2017-08-31 21:03:27.636429803 +0200
+++ /var/tmp/diff_new_pack.q5SxoX/_new 2017-08-31 21:03:27.656426993 +0200
@@ -19,14 +19,13 @@
%global pkg_name hruby
%bcond_with tests
Name: ghc-%{pkg_name}
-Version: 0.3.4.3
+Version: 0.3.4.4
Release: 0
Summary: Embed a Ruby intepreter in your Haskell program !
License: BSD-3-Clause
-Group: Development/Languages/Other
-Url: https://hackage.haskell.org/package/%{pkg_name}
+Group: Development/Libraries/Haskell
+URL: https://hackage.haskell.org/package/%{pkg_name}
Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{ve…
-Patch1: https://github.com/bartavelle/hruby/commit/ab6e3492ad1db9aa1236e2b61738cd63…
BuildRequires: ghc-Cabal-devel
BuildRequires: ghc-aeson-devel
BuildRequires: ghc-attoparsec-devel
@@ -38,7 +37,6 @@
BuildRequires: ghc-unordered-containers-devel
BuildRequires: ghc-vector-devel
BuildRequires: ruby2.4-devel
-BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if %{with tests}
BuildRequires: ghc-QuickCheck-devel
%endif
@@ -49,7 +47,7 @@
%package devel
Summary: Haskell %{pkg_name} library development files
-Group: Development/Libraries/Other
+Group: Development/Libraries/Haskell
Requires: %{name} = %{version}-%{release}
Requires: ghc-compiler = %{ghc_version}
Requires: ruby2.4-devel
@@ -61,7 +59,6 @@
%prep
%setup -q -n %{pkg_name}-%{version}
-%patch1 -p1
%build
%ghc_lib_build
@@ -79,10 +76,8 @@
%ghc_pkg_recache
%files -f %{name}.files
-%defattr(-,root,root,-)
%doc LICENSE
%files devel -f %{name}-devel.files
-%defattr(-,root,root,-)
%changelog
++++++ hruby-0.3.4.3.tar.gz -> hruby-0.3.4.4.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hruby-0.3.4.3/Setup.hs new/hruby-0.3.4.4/Setup.hs
--- old/hruby-0.3.4.3/Setup.hs 2017-01-23 11:23:07.000000000 +0100
+++ new/hruby-0.3.4.4/Setup.hs 2017-07-21 14:39:42.000000000 +0200
@@ -32,7 +32,7 @@
evalRuby exp = do
let getruby [] = return (ExitFailure 3, "beuh", undefined)
getruby (x:xs) = readProcessWithExitCode x ["-e", exp] "" `catch` \ (_ :: IOException) -> getruby xs
- (exitCode, out, err) <- getruby [ "ruby2.1", "ruby2.0", "ruby2", "ruby1.8", "ruby"]
+ (exitCode, out, err) <- getruby [ "ruby.ruby2.4", "ruby2.4", "ruby2.1", "ruby2.0", "ruby2", "ruby1.8", "ruby"]
return $ if exitCode == ExitSuccess
then Just out
else Nothing
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hruby-0.3.4.3/hruby.cabal new/hruby-0.3.4.4/hruby.cabal
--- old/hruby-0.3.4.3/hruby.cabal 2017-01-23 11:24:29.000000000 +0100
+++ new/hruby-0.3.4.4/hruby.cabal 2017-07-21 14:39:55.000000000 +0200
@@ -2,7 +2,7 @@
-- see http://haskell.org/cabal/users-guide/
name: hruby
-version: 0.3.4.3
+version: 0.3.4.4
synopsis: Embed a Ruby intepreter in your Haskell program !
description: This doesn't work with Ruby 1.9. Everything you need should be in Foreign.Ruby.Safe.
license: BSD3
1
0
Hello community,
here is the log from the commit of package ghc-arithmoi for openSUSE:Factory checked in at 2017-08-31 21:03:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-arithmoi (Old)
and /work/SRC/openSUSE:Factory/.ghc-arithmoi.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-arithmoi"
Thu Aug 31 21:03:23 2017 rev:3 rq:515421 version:0.5.0.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc-arithmoi/ghc-arithmoi.changes 2016-10-22 13:19:48.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.ghc-arithmoi.new/ghc-arithmoi.changes 2017-08-31 21:03:24.800828210 +0200
@@ -1,0 +2,10 @@
+Thu Aug 3 15:38:38 UTC 2017 - psimons(a)suse.com
+
+- Updated with latest spec-cleaner version 0.9.8-8-geadfbbf.
+
+-------------------------------------------------------------------
+Thu Jul 27 14:07:28 UTC 2017 - psimons(a)suse.com
+
+- Update to version 0.5.0.0.
+
+-------------------------------------------------------------------
Old:
----
arithmoi-0.4.3.0.tar.gz
New:
----
arithmoi-0.5.0.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ghc-arithmoi.spec ++++++
--- /var/tmp/diff_new_pack.cqGF19/_old 2017-08-31 21:03:25.792688852 +0200
+++ /var/tmp/diff_new_pack.cqGF19/_new 2017-08-31 21:03:25.792688852 +0200
@@ -1,7 +1,7 @@
#
# spec file for package ghc-arithmoi
#
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 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,9 +19,9 @@
%global pkg_name arithmoi
%bcond_with tests
Name: ghc-%{pkg_name}
-Version: 0.4.3.0
+Version: 0.5.0.0
Release: 0
-Summary: Efficient basic number-theoretic functions. Primes, powers, integer logarithms
+Summary: Efficient basic number-theoretic functions
License: MIT
Group: Development/Languages/Other
Url: https://hackage.haskell.org/package/%{pkg_name}
@@ -29,10 +29,11 @@
BuildRequires: ghc-Cabal-devel
BuildRequires: ghc-array-devel
BuildRequires: ghc-containers-devel
+BuildRequires: ghc-exact-pi-devel
+BuildRequires: ghc-integer-logarithms-devel
BuildRequires: ghc-mtl-devel
BuildRequires: ghc-random-devel
BuildRequires: ghc-rpm-macros
-BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if %{with tests}
BuildRequires: ghc-QuickCheck-devel
BuildRequires: ghc-smallcheck-devel
@@ -40,7 +41,6 @@
BuildRequires: ghc-tasty-hunit-devel
BuildRequires: ghc-tasty-quickcheck-devel
BuildRequires: ghc-tasty-smallcheck-devel
-BuildRequires: ghc-transformers-compat-devel
BuildRequires: ghc-transformers-devel
%endif
@@ -48,7 +48,7 @@
A library of basic functionality needed for number-theoretic calculations.
The aim of this library is to provide efficient implementations of the
functions. Primes and related things (totients, factorisation), powers (integer
-roots and tests, modular exponentiation), integer logarithms.
+roots and tests, modular exponentiation).
%package devel
Summary: Haskell %{pkg_name} library development files
@@ -80,11 +80,9 @@
%ghc_pkg_recache
%files -f %{name}.files
-%defattr(-,root,root,-)
%doc LICENSE
%files devel -f %{name}-devel.files
-%defattr(-,root,root,-)
-%doc TODO
+%doc Changes
%changelog
++++++ arithmoi-0.4.3.0.tar.gz -> arithmoi-0.5.0.0.tar.gz ++++++
++++ 2924 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package ztail for openSUSE:Factory checked in at 2017-08-31 21:03:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ztail (Old)
and /work/SRC/openSUSE:Factory/.ztail.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ztail"
Thu Aug 31 21:03:16 2017 rev:2 rq:513578 version:1.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/ztail/ztail.changes 2017-04-12 18:25:56.895386331 +0200
+++ /work/SRC/openSUSE:Factory/.ztail.new/ztail.changes 2017-08-31 21:03:17.765816642 +0200
@@ -1,0 +2,5 @@
+Fri Jul 28 03:01:24 UTC 2017 - psimons(a)suse.com
+
+- Update to version 1.2 revision 2.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ztail.spec ++++++
--- /var/tmp/diff_new_pack.nNWrAZ/_old 2017-08-31 21:03:19.045636825 +0200
+++ /var/tmp/diff_new_pack.nNWrAZ/_new 2017-08-31 21:03:19.057635139 +0200
@@ -24,7 +24,7 @@
Group: Development/Languages/Other
Url: https://hackage.haskell.org/package/%{name}
Source0: https://hackage.haskell.org/package/%{name}-%{version}/%{name}-%{version}.t…
-Source1: https://hackage.haskell.org/package/%{name}-%{version}/revision/1.cabal#/%{…
+Source1: https://hackage.haskell.org/package/%{name}-%{version}/revision/2.cabal#/%{…
BuildRequires: ghc-Cabal-devel
BuildRequires: ghc-array-devel
BuildRequires: ghc-bytestring-devel
++++++ ztail.cabal ++++++
--- /var/tmp/diff_new_pack.nNWrAZ/_old 2017-08-31 21:03:19.221612101 +0200
+++ /var/tmp/diff_new_pack.nNWrAZ/_new 2017-08-31 21:03:19.257607043 +0200
@@ -1,6 +1,6 @@
Name: ztail
Version: 1.2
-x-revision: 1
+x-revision: 2
Author: Dylan Simon
Maintainer: dylan(a)dylex.net
License: BSD3
@@ -30,7 +30,7 @@
base >= 4.8 && < 5,
unix == 2.7.*,
time >= 1.5 && < 1.7,
- process >= 1.2 && < 1.5,
+ process >= 1.2 && < 1.7,
array == 0.5.*,
filepath == 1.4.*,
bytestring == 0.10.*,
1
0
Hello community,
here is the log from the commit of package wordpass for openSUSE:Factory checked in at 2017-08-31 21:03:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/wordpass (Old)
and /work/SRC/openSUSE:Factory/.wordpass.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "wordpass"
Thu Aug 31 21:03:15 2017 rev:3 rq:513577 version:1.0.0.7
Changes:
--------
--- /work/SRC/openSUSE:Factory/wordpass/wordpass.changes 2017-05-03 15:56:15.964053160 +0200
+++ /work/SRC/openSUSE:Factory/.wordpass.new/wordpass.changes 2017-08-31 21:03:15.962070072 +0200
@@ -1,0 +2,5 @@
+Fri Jul 28 07:54:15 UTC 2017 - psimons(a)suse.com
+
+- Relax the over-specified version constraint on vector.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ wordpass.spec ++++++
--- /var/tmp/diff_new_pack.GL0oR7/_old 2017-08-31 21:03:16.829948133 +0200
+++ /var/tmp/diff_new_pack.GL0oR7/_new 2017-08-31 21:03:16.833947572 +0200
@@ -71,6 +71,7 @@
%prep
%setup -q
+cabal-tweak-dep-ver vector '<0.12' ' < 1'
%build
%ghc_lib_build
1
0
Hello community,
here is the log from the commit of package viewprof for openSUSE:Factory checked in at 2017-08-31 21:03:13
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/viewprof (Old)
and /work/SRC/openSUSE:Factory/.viewprof.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "viewprof"
Thu Aug 31 21:03:13 2017 rev:2 rq:513576 version:0.0.0.6
Changes:
--------
--- /work/SRC/openSUSE:Factory/viewprof/viewprof.changes 2017-04-18 13:49:50.759160814 +0200
+++ /work/SRC/openSUSE:Factory/.viewprof.new/viewprof.changes 2017-08-31 21:03:14.438284166 +0200
@@ -1,0 +2,5 @@
+Thu Jul 27 14:08:08 UTC 2017 - psimons(a)suse.com
+
+- Update to version 0.0.0.6.
+
+-------------------------------------------------------------------
Old:
----
viewprof-0.0.0.1.tar.gz
New:
----
viewprof-0.0.0.6.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ viewprof.spec ++++++
--- /var/tmp/diff_new_pack.tqO6Dg/_old 2017-08-31 21:03:15.562126265 +0200
+++ /var/tmp/diff_new_pack.tqO6Dg/_new 2017-08-31 21:03:15.574124580 +0200
@@ -17,7 +17,7 @@
Name: viewprof
-Version: 0.0.0.1
+Version: 0.0.0.6
Release: 0
Summary: Text-based interactive GHC .prof viewer
License: BSD-3-Clause
@@ -52,7 +52,7 @@
%files
%defattr(-,root,root,-)
%doc LICENSE
-%doc CHANGELOG.md
+%doc CHANGELOG.md README.md
%{_bindir}/%{name}
%changelog
++++++ viewprof-0.0.0.1.tar.gz -> viewprof-0.0.0.6.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/viewprof-0.0.0.1/CHANGELOG.md new/viewprof-0.0.0.6/CHANGELOG.md
--- old/viewprof-0.0.0.1/CHANGELOG.md 2017-01-25 00:42:28.000000000 +0100
+++ new/viewprof-0.0.0.6/CHANGELOG.md 2017-07-21 08:22:24.000000000 +0200
@@ -1,5 +1,30 @@
# Revision history for viewprof
-## 0.0.0 (2017-01-20)
+## 0.0.0.5 - 2017-07-21
+
+* Relax upper version bound for vty
+
+## 0.0.0.5 - 2017-07-10
+
+* Relax upper version bound for brick
+* Add Docker support on Windows
+
+## 0.0.0.4 - 2017-06-28
+
+* Relax upper version bound for brick
+
+## 0.0.0.3 - 2017-06-12
+
+* Relax upper version bound for brick
+
+## 0.0.0.2 - 2017-02-14
+
+* Update ghc-prof to 1.4.0
+
+## 0.0.0.1 - 2017-01-25
+
+* Relax upper version bounds for vty and brick
+
+## 0.0.0 - 2017-01-20
* Initial release
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/viewprof-0.0.0.1/README.md new/viewprof-0.0.0.6/README.md
--- old/viewprof-0.0.0.1/README.md 1970-01-01 01:00:00.000000000 +0100
+++ new/viewprof-0.0.0.6/README.md 2017-07-21 08:11:57.000000000 +0200
@@ -0,0 +1,63 @@
+# viewprof
+[](https://hackage.haskell.org/package/viewprof)
+[](http://packdeps.haskellers.com/feed?needle=viewprof)
+[](http://stackage.org/l…
+[](http://stacka…
+[](https://tra…
+
+viewprof is a text-based interactive GHC .prof viewer.
+
+
+
+It has three display modes:
+
+* __Aggregate cost centers view__: This is the default view. It groups cost centers by their name and module name, like the middle section of .prof files.
+* __Call sites view__: If you press enter on a cost center, viewprof displays call sites of the cost center you selected. This view tells how much the cost center spent for each call site.
+* __Modules view__: If you press M, viewprof displays the module level breakdown. This view tells coarse overview of cost attribution.
+
+## Installation
+
+```
+stack install viewprof
+```
+
+### On Windows
+
+#### Prerequisites
+
+- [Docker for Windows](https://docs.docker.com/docker-for-windows/install/) or [Docker Toolbox](https://docs.docker.com/toolbox/overview/).
+ - Currently tried with: [Docker Toolbox v17.04.0ce](https://github.com/docker/toolbox/releases/tag/v17.04.0-ce) on Windows 10 Home.
+- [cygpath](https://cygwin.com/cygwin-ug-net/cygpath.html)
+ - Bundled with [Cygwin](https://www.cygwin.com/), [MSYS2](http://www.msys2.org/) etc.
+
+#### How to install and launch
+
+```bat
+git clone git@github.com:maoe/viewprof.git
+cd viewprof/docker
+docker-machine start
+docker build -t viewprof .
+.\viewprof.bat path/to/file.prof
+```
+
+## Usage
+
+| keys | action |
+|-------------------|---------------------------------------------|
+| `q` or `escape` | quit the current view |
+| `j` or `↓` | move focus down |
+| `k` or `↑` | move focus up |
+| `gg` | move focus to the top |
+| `G` | move focus to the bottom |
+| `C` | display aggregate cost center view |
+| `M` | switch to module breakdown |
+| `enter` | select a cost center and display call sites |
+| `t` | sort by time |
+| `a` | sort by allocation |
+| `e` | sort by # of entries |
+| `h` or `?` | show key bindings |
+| `i` | show profile information |
+
+## Acknowledgement
+
+`viewprof` was originally meant to be a Haskell port of [mkotha/viewprof](https://github.com/mkotha/viewprof), which is a text-based .prof viewer written in Common Lisp.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/viewprof-0.0.0.1/bin/viewprof.hs new/viewprof-0.0.0.6/bin/viewprof.hs
--- old/viewprof-0.0.0.1/bin/viewprof.hs 2017-01-24 21:17:21.000000000 +0100
+++ new/viewprof-0.0.0.6/bin/viewprof.hs 2017-02-15 00:09:46.000000000 +0100
@@ -41,12 +41,12 @@
data View
= AggregatesView
- { _costCentres :: !(V.Vector Prof.AggregateCostCentre)
+ { _costCentres :: !(V.Vector Prof.AggregatedCostCentre)
, _focus :: !Int
}
| CallSitesView
- { _callee :: !Prof.AggregateCostCentre
- , _callSites :: !(V.Vector (Prof.CallSite Prof.AggregateCostCentre))
+ { _callee :: !Prof.AggregatedCostCentre
+ , _callSites :: !(V.Vector (Prof.CallSite Prof.AggregatedCostCentre))
, _focus :: !Int
, _expanded :: !(Set Int)
}
@@ -85,7 +85,7 @@
Right prof -> return Profile
{ _report = prof
, _views = AggregatesView
- { _costCentres = V.fromList (Prof.aggregateCostCentres prof)
+ { _costCentres = V.fromList (Prof.aggregatedCostCentres prof)
, _focus = 0
} :| []
, _modalView = Nothing
@@ -151,17 +151,17 @@
EvKey (KChar 't') [] -> do
invalidateCache
continue $! sortCostCentresBy
- (Prof.aggregateCostCentreTime &&& Prof.aggregateCostCentreAlloc)
+ (Prof.aggregatedCostCentreTime &&& Prof.aggregatedCostCentreAlloc)
prof
EvKey (KChar 'a') [] -> do
invalidateCache
continue $! sortCostCentresBy
- (Prof.aggregateCostCentreAlloc &&& Prof.aggregateCostCentreTime)
+ (Prof.aggregatedCostCentreAlloc &&& Prof.aggregatedCostCentreTime)
prof
EvKey (KChar 'e') [] -> do
invalidateCache
continue $! sortCostCentresBy
- Prof.aggregateCostCentreEntries
+ Prof.aggregatedCostCentreEntries
prof
EvKey key []
| key `elem` [KEnter] -> do
@@ -204,16 +204,16 @@
sortCallSitesBy key p = p & topView . callSites
%~ V.modify (Merge.sortBy (flip compare `on` key))
displayCostCentres p = p & views .~ AggregatesView
- { _costCentres = V.fromList $ Prof.aggregateCostCentres $ p ^. report
+ { _costCentres = V.fromList $ Prof.aggregatedCostCentres $ p ^. report
, _focus = 0
} NE.:| []
displayCallers p = fromMaybe p $ do
let !model = p ^. topView . costCentres
!idx = p ^. currentFocus
- Prof.AggregateCostCentre {..} <- model V.!? idx
+ Prof.AggregatedCostCentre {..} <- model V.!? idx
(_callee, callers) <- Prof.aggregateCallSites
- aggregateCostCentreName
- aggregateCostCentreModule
+ aggregatedCostCentreName
+ aggregatedCostCentreModule
(p ^. report)
return $! p & views %~ NE.cons CallSitesView
{ _callee
@@ -283,13 +283,13 @@
AggregatesView {..} -> viewport AggregatesViewport Vertical $
vBox $ V.toList $
flip V.imap _costCentres $ \i row -> cached (AggregatesCache i) $
- let widget = drawAggregateCostCentre row
+ let widget = drawAggregatedCostCentre row
in if i == _focus
then withAttr selectedAttr (visible widget)
else widget
CallSitesView {..} -> viewport CallSitesViewport Vertical $
vBox
- [ drawAggregateCostCentre _callee
+ [ drawAggregatedCostCentre _callee
, vBox $ V.toList $ flip V.imap _callSites $ \i row ->
cached (CallSitesCache i) $
let widget = drawCallSite _callee row
@@ -305,33 +305,33 @@
then withAttr selectedAttr (visible widget)
else widget
-drawAggregateCostCentre :: Prof.AggregateCostCentre -> Widget n
-drawAggregateCostCentre Prof.AggregateCostCentre {..} = hBox
- [ txt aggregateCostCentreModule
+drawAggregatedCostCentre :: Prof.AggregatedCostCentre -> Widget n
+drawAggregatedCostCentre Prof.AggregatedCostCentre {..} = hBox
+ [ txt aggregatedCostCentreModule
, txt "."
- , padRight Max $ txt aggregateCostCentreName
- , maybe emptyWidget (padRight (Pad 1) . str . show) aggregateCostCentreEntries
- , padRight (Pad 1) $ str (formatPercentage aggregateCostCentreTime)
- , str (formatPercentage aggregateCostCentreAlloc)
+ , padRight Max $ txt aggregatedCostCentreName
+ , maybe emptyWidget (padRight (Pad 1) . str . show) aggregatedCostCentreEntries
+ , padRight (Pad 1) $ str (formatPercentage aggregatedCostCentreTime)
+ , str (formatPercentage aggregatedCostCentreAlloc)
]
drawCallSite
- :: Prof.AggregateCostCentre
- -> Prof.CallSite Prof.AggregateCostCentre
+ :: Prof.AggregatedCostCentre
+ -> Prof.CallSite Prof.AggregatedCostCentre
-> Widget n
-drawCallSite Prof.AggregateCostCentre {..} Prof.CallSite {..} = hBox
- [ txt $ Prof.aggregateCostCentreModule callSiteCostCentre
+drawCallSite Prof.AggregatedCostCentre {..} Prof.CallSite {..} = hBox
+ [ txt $ Prof.aggregatedCostCentreModule callSiteCostCentre
, txt "."
- , padRight Max $ txt $ Prof.aggregateCostCentreName callSiteCostCentre
+ , padRight Max $ txt $ Prof.aggregatedCostCentreName callSiteCostCentre
, padRight (Pad 1) $ str $ show callSiteContribEntries
, padRight (Pad 1) $ hBox
- [ str $ contribution callSiteContribTime aggregateCostCentreTime
+ [ str $ contribution callSiteContribTime aggregatedCostCentreTime
, txt " ("
, str $ formatPercentage callSiteContribTime
, txt ")"
]
, hBox
- [ str $ contribution callSiteContribAlloc aggregateCostCentreAlloc
+ [ str $ contribution callSiteContribAlloc aggregatedCostCentreAlloc
, txt " ("
, str $ formatPercentage callSiteContribAlloc
, txt ")"
Binary files old/viewprof-0.0.0.1/img/screenshot.png and new/viewprof-0.0.0.6/img/screenshot.png differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/viewprof-0.0.0.1/viewprof.cabal new/viewprof-0.0.0.6/viewprof.cabal
--- old/viewprof-0.0.0.1/viewprof.cabal 2017-01-25 00:42:28.000000000 +0100
+++ new/viewprof-0.0.0.6/viewprof.cabal 2017-07-21 08:22:24.000000000 +0200
@@ -1,32 +1,40 @@
name: viewprof
-version: 0.0.0.1
+version: 0.0.0.6
synopsis: Text-based interactive GHC .prof viewer
--- description:
+description: Text-based interactive GHC .prof viewer
+homepage: https://github.com/maoe/viewprof
+bug-reports: https://github.com/maoe/viewprof/issues
license: BSD3
license-file: LICENSE
author: Mitsutoshi Aoe
maintainer: Mitsutoshi Aoe <maoe(a)foldr.in>
-copyright: Copyright (C) 2016 Mitsutoshi Aoe
+copyright: Copyright (C) 2016-2017 Mitsutoshi Aoe
category: Development
build-type: Simple
-extra-source-files: CHANGELOG.md
+extra-source-files:
+ CHANGELOG.md
+ README.md
+ img/screenshot.png
cabal-version: >= 1.10
tested-with: GHC == 8.0.2
executable viewprof
main-is: viewprof.hs
- -- other-extensions:
build-depends:
base >= 4.9 && < 4.10
- , brick >= 0.16 && < 0.18
+ , brick >= 0.16 && < 0.21
, containers >= 0.5.7 && < 0.6
- , ghc-prof >= 1.3.0 && < 1.4
+ , ghc-prof >= 1.4 && < 1.5
, lens >= 4.14 && < 4.16
, scientific >= 0.3.4.4 && < 0.4
, text >= 1.2.2.0 && < 1.3
, vector >= 0.10.12.3 && < 0.13
, vector-algorithms >= 0.6.0.4 && < 0.8
- , vty >= 5.13 && < 5.16
+ , vty >= 5.13 && < 5.17
hs-source-dirs: bin
default-language: Haskell2010
ghc-options: -Wall -threaded
+
+source-repository head
+ type: git
+ location: https://github.com/maoe/viewprof.git
1
0
Hello community,
here is the log from the commit of package titlecase for openSUSE:Factory checked in at 2017-08-31 21:03:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/titlecase (Old)
and /work/SRC/openSUSE:Factory/.titlecase.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "titlecase"
Thu Aug 31 21:03:11 2017 rev:3 rq:513575 version:1.0.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/titlecase/titlecase.changes 2017-06-22 10:39:55.857531255 +0200
+++ /work/SRC/openSUSE:Factory/.titlecase.new/titlecase.changes 2017-08-31 21:03:12.866505005 +0200
@@ -1,0 +2,5 @@
+Thu Jul 27 14:06:34 UTC 2017 - psimons(a)suse.com
+
+- Update to version 1.0.1.
+
+-------------------------------------------------------------------
Old:
----
titlecase-0.1.0.3.tar.gz
titlecase.cabal
New:
----
titlecase-1.0.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ titlecase.spec ++++++
--- /var/tmp/diff_new_pack.jbBSKl/_old 2017-08-31 21:03:13.714385876 +0200
+++ /var/tmp/diff_new_pack.jbBSKl/_new 2017-08-31 21:03:13.734383066 +0200
@@ -19,20 +19,16 @@
%global pkg_name titlecase
%bcond_with tests
Name: %{pkg_name}
-Version: 0.1.0.3
+Version: 1.0.1
Release: 0
-Summary: Convert English words to title case
+Summary: Convert English Words to Title Case
License: BSD-3-Clause
Group: Development/Languages/Other
Url: https://hackage.haskell.org/package/%{name}
Source0: https://hackage.haskell.org/package/%{name}-%{version}/%{name}-%{version}.t…
-Source1: https://hackage.haskell.org/package/%{name}-%{version}/revision/1.cabal#/%{…
BuildRequires: chrpath
BuildRequires: ghc-Cabal-devel
-BuildRequires: ghc-blaze-markup-devel
BuildRequires: ghc-rpm-macros
-BuildRequires: ghc-semigroups-devel
-BuildRequires: ghc-text-devel
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if %{with tests}
BuildRequires: ghc-tasty-devel
@@ -44,7 +40,7 @@
Capitalize all English words except articles (a, an, the), coordinating
conjunctions (for, and, nor, but, or, yet, so), and prepositions (unless they
begin or end the title). The prepositions are taken from
-<https://en.wikipedia.org/wiki/List_of_English_prepositions>.
+<https://en.wikipedia.org/wiki/List_of_English_prepositions Wikipedia>.
%package -n ghc-%{name}
Summary: Haskell %{name} library
@@ -66,7 +62,6 @@
%prep
%setup -q
-cp -p %{SOURCE1} %{name}.cabal
%build
%ghc_lib_build
++++++ titlecase-0.1.0.3.tar.gz -> titlecase-1.0.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/titlecase-0.1.0.3/Main.hs new/titlecase-1.0.1/Main.hs
--- old/titlecase-0.1.0.3/Main.hs 2016-10-27 22:56:17.000000000 +0200
+++ new/titlecase-1.0.1/Main.hs 2017-07-17 08:46:13.000000000 +0200
@@ -1,10 +1,10 @@
module Main ( main ) where
-import Data.Text ( pack )
import Data.Text.Titlecase
import System.Environment
-import Text.Blaze
-import Text.Blaze.Renderer.Pretty
main :: IO ()
-main = getArgs >>= putStr . renderMarkup . toMarkup . titlecase . pack . unwords
+main = getArgs >>= parseArgs >>= putStrLn . titlecase
+ where parseArgs :: [String] -> IO String
+ parseArgs [] = getContents
+ parseArgs xs = return $ unwords xs
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/titlecase-0.1.0.3/src/Data/Text/Titlecase/Internal.hs new/titlecase-1.0.1/src/Data/Text/Titlecase/Internal.hs
--- old/titlecase-0.1.0.3/src/Data/Text/Titlecase/Internal.hs 2016-10-27 22:56:17.000000000 +0200
+++ new/titlecase-1.0.1/src/Data/Text/Titlecase/Internal.hs 2017-07-17 08:46:13.000000000 +0200
@@ -1,109 +1,71 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE OverloadedStrings #-}
-
--- | As the name implies, this module is meant to be used only if
--- you want to get access to the internals, say, if you're unhappy
--- with the provided 'Data.Text.Titlecase.titlecase' function.
--- "Data.Text.Titlecase.Internal" doesn't prevent you from creating
--- improperly capitalized 'Titlecase' values. In any other case,
--- "Data.Text.Titlecase" is what you're looking for.
+-- | As the name implies, this module is meant to be used only if you want to
+-- get access to the internals, say, if you're unhappy with the provided
+-- 'Data.Text.Titlecase.titlecase' function.
module Data.Text.Titlecase.Internal where
-import Prelude (Eq, Show, Bool, ($), (.), uncurry)
-import Control.Applicative
-import qualified Data.Char as Char
-import Data.Foldable (elem)
-import Data.List.NonEmpty hiding (unwords)
-import Data.Semigroup
-import Data.Text hiding (toTitle)
-import Text.Blaze
-
--- * Types
-
-newtype Titlecase = Titlecase { unTitlecase :: Text } deriving (Eq, Show)
-
-instance ToMarkup Titlecase where
- toMarkup (Titlecase t) = toMarkup t
- preEscapedToMarkup (Titlecase t) = preEscapedToMarkup t
-
-newtype Article = Article { unArticle :: Text } deriving (Eq, Show)
-
-newtype Conjunction = Conjunction { unConjunction :: Text } deriving (Eq, Show)
-
-data Preposition = OneWordPreposition Text
- | TwoWordPreposition Text Text
- | ThreeWordPreposition Text Text Text
- | FourWordPreposition Text Text Text Text
- deriving (Eq, Show)
+import Data.Char ( toLower, toUpper )
+-- * Articles
--- * Helpers
+newtype Article = Article { unArticle :: String } deriving (Eq, Show)
--- | Capitalize the first character. Note that this function behaves
--- differently than 'Data.Text.toTitle'.
-toTitle :: Text -> Text
-toTitle t = pack $ case unpack t of
- "" -> ""
- (x:xs) -> Char.toUpper x : xs
+isArticle :: String -> Bool
+isArticle = isElem unArticle articles
-(<#>) :: Text -> Text -> Text
-x <#> "" = x
-x <#> y = x <> " " <> y
+articles :: [Article]
+articles = map Article ["a", "an", "the"]
-uncurry3 :: (a -> b -> c -> d) -> (a, b, c) -> d
-uncurry3 f (a,b,c) = f a b c
+-- * Conjunctions
-uncurry4 :: (a -> b -> c -> d -> e) -> (a, b, c, d) -> e
-uncurry4 f (a,b,c,d) = f a b c d
+newtype Conjunction = Conjunction { unConjunction :: String } deriving (Eq, Show)
-isElem :: (a -> Text) -> NonEmpty a -> Text -> Bool
-isElem f xs = (`elem` (f <$> xs)) . toLower
+conjunctions :: [Conjunction]
+conjunctions = map Conjunction ["for", "and", "nor", "but", "or", "yet", "so"]
-isArticle, isConjunction,
- isOneWordPreposition :: Text -> Bool
-isTwoWordPreposition :: Text -> Text -> Bool
-isThreeWordPreposition :: Text -> Text -> Text -> Bool
-isFourWordPreposition :: Text -> Text -> Text -> Text -> Bool
-
-isArticle = isElem unArticle articles
-isConjunction = isElem unConjunction conjunctions
-isOneWordPreposition = isElem unPreposition oneWordPrepositions
-isTwoWordPreposition a b = isElem unPreposition twoWordPrepositions $ unwords [a, b]
-isThreeWordPreposition a b c = isElem unPreposition threeWordPrepositions $ unwords [a, b, c]
-isFourWordPreposition a b c d = isElem unPreposition fourWordPrepositions $ unwords [a, b, c, d]
+isConjunction :: String -> Bool
+isConjunction = isElem unConjunction conjunctions
+
+-- * Prepositions
+
+data Preposition = OneWordPreposition String
+ | TwoWordPreposition String String
+ | ThreeWordPreposition String String String
+ | FourWordPreposition String String String String
+ deriving (Eq, Show)
+
+-- | The words come from
+-- <https://en.wikipedia.org/wiki/List_of_English_prepositions Wikipedia>
+-- but without <https://en.wikipedia.org/wiki/Conjunction_%28grammar%29#Subordinating_conju… subordinating conjunctions>.
+
+prepositions :: [Preposition]
+prepositions
+ = oneWordPrepositions
+ ++ twoWordPrepositions
+ ++ threeWordPrepositions
+ ++ fourWordPrepositions
-unPreposition :: Preposition -> Text
+unPreposition :: Preposition -> String
unPreposition p = case p of
OneWordPreposition a -> a
TwoWordPreposition a b -> unwords [a, b]
ThreeWordPreposition a b c -> unwords [a, b, c]
FourWordPreposition a b c d -> unwords [a, b, c, d]
+isOneWordPreposition :: String -> Bool
+isOneWordPreposition = isElem unPreposition oneWordPrepositions
--- * Words that are capitalized only when they start or end a title
+isTwoWordPreposition :: String -> String -> Bool
+isTwoWordPreposition a b = isElem unPreposition twoWordPrepositions $ unwords [a, b]
-articles :: NonEmpty Article
-articles = Article <$> fromList ["a", "an", "the"]
+isThreeWordPreposition :: String -> String -> String -> Bool
+isThreeWordPreposition a b c = isElem unPreposition threeWordPrepositions $ unwords [a, b, c]
-conjunctions :: NonEmpty Conjunction
-conjunctions = Conjunction <$> fromList
- ["for", "and", "nor", "but", "or", "yet", "so"]
+isFourWordPreposition :: String -> String -> String -> String -> Bool
+isFourWordPreposition a b c d = isElem unPreposition fourWordPrepositions $ unwords [a, b, c, d]
-prepositions :: NonEmpty Preposition
-prepositions
- = oneWordPrepositions
- <> twoWordPrepositions
- <> threeWordPrepositions
- <> fourWordPrepositions
-
--- | The words to not capitalize come from
--- <https://en.wikipedia.org/wiki/List_of_English_prepositions Wikipedia primarily>,
--- but removing
--- <https://en.wikipedia.org/wiki/Conjunction_%28grammar%29#Subordinating_conju… subordinating conjunctions>
--- generally.
-oneWordPrepositions :: NonEmpty Preposition
-oneWordPrepositions = OneWordPreposition <$> fromList
+oneWordPrepositions :: [Preposition]
+oneWordPrepositions = map OneWordPreposition
[ "a", "abaft", "abeam", "aboard", "about", "above", "absent", "across"
, "afore", "against", "along", "alongside", "amid", "amidst"
, "among", "amongst", "an", "anenst", "apropos", "apud", "around"
@@ -130,8 +92,8 @@
, "w/o", "worth"
]
-twoWordPrepositions :: NonEmpty Preposition
-twoWordPrepositions = uncurry TwoWordPreposition <$> fromList
+twoWordPrepositions :: [Preposition]
+twoWordPrepositions = map (uncurry TwoWordPreposition)
[ ("according", "to"), ("ahead", "of"), ("apart", "from"), ("as", "for")
, ("as", "of"), ("as", "per"), ("as", "regards"), ("aside", "from")
, ("astern", "of")
@@ -152,8 +114,8 @@
, ("up", "to")
]
-threeWordPrepositions :: NonEmpty Preposition
-threeWordPrepositions = uncurry3 ThreeWordPreposition <$> fromList
+threeWordPrepositions :: [Preposition]
+threeWordPrepositions = map (uncurry3 ThreeWordPreposition)
[ ("as", "opposed", "to")
, ("as", "well", "as")
, ("by", "means", "of"), ("by", "virtue", "of")
@@ -165,9 +127,30 @@
, ("with", "regard", "to"), ("with", "respect", "to")
]
-fourWordPrepositions :: NonEmpty Preposition
-fourWordPrepositions = uncurry4 FourWordPreposition <$> fromList
+fourWordPrepositions :: [Preposition]
+fourWordPrepositions = map (uncurry4 FourWordPreposition)
[ ("at", "the", "behest", "of")
, ("for", "the", "sake", "of")
, ("with", "a", "view", "to")
]
+
+-- * Helper functions
+
+-- | Capitalize the first character of a string.
+
+toTitle :: String -> String
+toTitle "" = ""
+toTitle (x:xs) = toUpper x : xs
+
+(<#>) :: String -> String -> String
+x <#> "" = x
+x <#> y = x ++ " " ++ y
+
+uncurry3 :: (a -> b -> c -> d) -> (a, b, c) -> d
+uncurry3 f (a,b,c) = f a b c
+
+uncurry4 :: (a -> b -> c -> d -> e) -> (a, b, c, d) -> e
+uncurry4 f (a,b,c,d) = f a b c d
+
+isElem :: (a -> String) -> [a] -> String -> Bool
+isElem f xs = (`elem` (fmap f xs)) . map toLower
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/titlecase-0.1.0.3/src/Data/Text/Titlecase.hs new/titlecase-1.0.1/src/Data/Text/Titlecase.hs
--- old/titlecase-0.1.0.3/src/Data/Text/Titlecase.hs 2016-10-27 22:56:17.000000000 +0200
+++ new/titlecase-1.0.1/src/Data/Text/Titlecase.hs 2017-07-17 08:46:13.000000000 +0200
@@ -1,31 +1,22 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE OverloadedStrings #-}
-{-# LANGUAGE MultiWayIf #-}
-
-module Data.Text.Titlecase
- ( Titlecase
- , titlecase
- ) where
-
-import Prelude (Int, ($), (==), (||), (&&), succ, otherwise)
-import qualified Data.List as List
-import Data.Text hiding (toTitle)
-import Data.Text.Titlecase.Internal
-
--- | Capitalize all English words except 'articles' (a, an, the),
--- coordinating 'conjunctions' (for, and, nor, but, or, yet, so), and
--- 'prepositions' (unless they begin or end the title). The
--- 'prepositions' are taken from this list:
--- <https://en.wikipedia.org/wiki/List_of_English_prepositions>.
-titlecase :: Text -> Titlecase
-titlecase t = Titlecase $ go 1 ws
+{-# LANGUAGE MultiWayIf #-}
+
+module Data.Text.Titlecase ( titlecase ) where
+
+import Data.Text.Titlecase.Internal
+
+-- | Capitalize all English words except 'articles' (a, an, the), coordinating
+-- 'conjunctions' (for, and, nor, but, or, yet, so), and 'prepositions' (unless
+-- they begin or end the title).
+
+titlecase :: String -> String
+titlecase t = go 1 ws
where
- ws :: [Text]
+ ws :: [String]
ws = words t
isFirst i = i == 1
- isLast i = i == List.length ws
+ isLast i = i == length ws
- go :: Int -> [Text] -> Text
+ go :: Int -> [String] -> String
go _ [] = ""
go i (a:b:c:d:tt) = parse4 i a b c d tt
go i (a:b:c :tt) = parse3 i a b c tt
@@ -34,28 +25,28 @@
parse4 i a b c d tt =
if isFourWordPreposition a b c d
- then if | isFirst i && List.null tt
+ then if | isFirst i && null tt
-> unwords [toTitle a, b, c, toTitle d]
| isFirst i -> unwords [toTitle a, b, c, d] <#> go (succ i) tt
- | List.null tt -> unwords [ a, b, c, toTitle d]
+ | null tt -> unwords [ a, b, c, toTitle d]
| otherwise -> unwords [ a, b, c, d] <#> go (succ i) tt
else parse3 i a b c (d:tt)
parse3 i a b c tt =
if isThreeWordPreposition a b c
- then if | isFirst i && List.null tt
+ then if | isFirst i && null tt
-> unwords [toTitle a, b, toTitle c]
| isFirst i -> unwords [toTitle a, b, c] <#> go (succ i) tt
- | List.null tt -> unwords [ a, b, toTitle c]
+ | null tt -> unwords [ a, b, toTitle c]
| otherwise -> unwords [ a, b, c] <#> go (succ i) tt
else parse2 i a b (c:tt)
parse2 i a b tt =
if isTwoWordPreposition a b
- then if | isFirst i && List.null tt
+ then if | isFirst i && null tt
-> unwords [toTitle a, toTitle b]
| isFirst i -> unwords [toTitle a, b] <#> go (succ i) tt
- | List.null tt -> unwords [ a, toTitle b]
+ | null tt -> unwords [ a, toTitle b]
| otherwise -> unwords [ a, b] <#> go (succ i) tt
else parse1 i a (b:tt)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/titlecase-0.1.0.3/tests/Main.hs new/titlecase-1.0.1/tests/Main.hs
--- old/titlecase-0.1.0.3/tests/Main.hs 1970-01-01 01:00:00.000000000 +0100
+++ new/titlecase-1.0.1/tests/Main.hs 2017-07-17 08:46:13.000000000 +0200
@@ -0,0 +1,12 @@
+module Main where
+
+import qualified Property
+import qualified Unit
+
+import Test.Tasty
+
+main :: IO ()
+main = defaultMain tests
+
+tests :: TestTree
+tests = testGroup "Tests" [Property.tests, Unit.tests]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/titlecase-0.1.0.3/tests/Property.hs new/titlecase-1.0.1/tests/Property.hs
--- old/titlecase-0.1.0.3/tests/Property.hs 1970-01-01 01:00:00.000000000 +0100
+++ new/titlecase-1.0.1/tests/Property.hs 2017-07-17 08:46:13.000000000 +0200
@@ -0,0 +1,45 @@
+module Property where
+
+import Data.Text.Titlecase
+import Data.Text.Titlecase.Internal
+
+import Data.List as List
+import Test.Tasty
+import Test.Tasty.QuickCheck
+
+tests :: TestTree
+tests = testGroup "Property tests"
+ [ sameLength
+ , firstWordCapitalized
+ , lastWordCapitalized
+ , titlecaseIdempotent
+ ]
+
+ignoreList :: [String]
+ignoreList =
+ (fmap unArticle articles)
+ ++ (fmap unConjunction conjunctions)
+ ++ (fmap unPreposition prepositions)
+
+arbitraryText :: Gen String
+arbitraryText = elements ignoreList
+
+sameLength :: TestTree
+sameLength = testProperty "titlecase doesn't change the length" $
+ forAll arbitraryText $ \t -> length (titlecase t) === length t
+
+firstWordCapitalized :: TestTree
+firstWordCapitalized = testProperty "First word is always capitalized" $
+ let wordsHead = List.head . words in
+ forAll arbitraryText $
+ \t -> not (null t) ==> wordsHead (titlecase t) === toTitle (wordsHead t)
+
+lastWordCapitalized :: TestTree
+lastWordCapitalized = testProperty "Last word is always capitalized" $
+ let wordsLast = List.last . words in
+ forAll arbitraryText $
+ \t -> not (null t) ==> wordsLast (titlecase t) === toTitle (wordsLast t)
+
+titlecaseIdempotent :: TestTree
+titlecaseIdempotent = testProperty "Applying titlecase twice is the same as doing it once" $
+ forAll arbitraryText $ \t -> titlecase (titlecase t) === titlecase t
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/titlecase-0.1.0.3/tests/Test/Property.hs new/titlecase-1.0.1/tests/Test/Property.hs
--- old/titlecase-0.1.0.3/tests/Test/Property.hs 2016-10-27 22:56:17.000000000 +0200
+++ new/titlecase-1.0.1/tests/Test/Property.hs 1970-01-01 01:00:00.000000000 +0100
@@ -1,56 +0,0 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE OverloadedStrings #-}
-{-# OPTIONS_GHC -fno-warn-orphans #-}
-
-module Test.Property where
-
-import Prelude (($), (.), not)
-import Control.Applicative
-import qualified Data.List as List
-import qualified Data.List.NonEmpty as NonEmpty
-import Data.Semigroup
-import Data.Text hiding (toTitle)
-import Data.Text.Titlecase
-import Data.Text.Titlecase.Internal
-import Test.Tasty
-import Test.Tasty.QuickCheck
-
-tests :: TestTree
-tests = testGroup "Property tests"
- [ sameLength
- , firstWordCapitalized
- , lastWordCapitalized
- , titlecaseIdempotent
- ]
-
-titlecaseUnsafe :: Text -> Text
-titlecaseUnsafe = unTitlecase . titlecase
-
-ignoreList :: [Text]
-ignoreList = NonEmpty.toList
- $ (unArticle <$> articles)
- <> (unConjunction <$> conjunctions)
- <> (unPreposition <$> prepositions)
-
-instance Arbitrary Text where
- arbitrary = elements ignoreList
-
-sameLength :: TestTree
-sameLength = testProperty "titlecase doesn't change the length" $
- \t -> length (titlecaseUnsafe t) === length t
-
-firstWordCapitalized :: TestTree
-firstWordCapitalized = testProperty "First word is always capitalized" $
- let wordsHead = List.head . words in
- \t -> not (null t) ==>
- wordsHead (titlecaseUnsafe t) === toTitle (wordsHead t)
-
-lastWordCapitalized :: TestTree
-lastWordCapitalized = testProperty "Last word is always capitalized" $
- let wordsLast = List.last . words in
- \t -> not (null t) ==>
- wordsLast (titlecaseUnsafe t) === toTitle (wordsLast t)
-
-titlecaseIdempotent :: TestTree
-titlecaseIdempotent = testProperty "Applying titlecase twice is the same as doing it once" $
- \t -> titlecaseUnsafe (titlecaseUnsafe t) === titlecaseUnsafe t
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/titlecase-0.1.0.3/tests/Test/Unit.hs new/titlecase-1.0.1/tests/Test/Unit.hs
--- old/titlecase-0.1.0.3/tests/Test/Unit.hs 2016-10-27 22:56:17.000000000 +0200
+++ new/titlecase-1.0.1/tests/Test/Unit.hs 1970-01-01 01:00:00.000000000 +0100
@@ -1,59 +0,0 @@
-{-# LANGUAGE NoImplicitPrelude #-}
-{-# LANGUAGE OverloadedStrings #-}
-
-module Test.Unit where
-
-import Prelude (($), (.))
-import Data.Foldable (mapM_)
-import Data.Text hiding (toTitle)
-import Data.Text.Titlecase
-import Data.Text.Titlecase.Internal hiding (articles, conjunctions, prepositions)
-import qualified Data.Text.Titlecase.Internal as Titlecase
-import Test.Tasty
-import Test.Tasty.HUnit
-
-tests :: TestTree
-tests = testGroup "Unit tests" [articles, conjunctions, prepositions]
-
-articles :: TestTree
-articles = testGroup "Articles" [articleFirst, articleLast, articleIgnored]
-
-conjunctions :: TestTree
-conjunctions = testGroup "Conjunctions" [conjunctionFirst, conjunctionLast, conjunctionIgnored]
-
-prepositions :: TestTree
-prepositions = testGroup "Prepositions" [prepositionFirst, prepositionLast, prepositionIgnored]
-
-testTitlecase, testFirst, testLast, testIgnored :: Text -> Assertion
-testTitlecase t = titlecase (toLower t) @?= Titlecase t
-
-toTitleFirst :: Text -> Text
-toTitleFirst t = unwords $ case words t of
- [] -> []
- (x:xs) -> toTitle x : xs
-
-toTitleLast :: Text -> Text
-toTitleLast t = unwords $ go $ words t
- where
- go [] = []
- go [x] = [toTitle x]
- go (x:xs) = x : go xs
-
-testFirst t = testTitlecase $ toTitleFirst t <#> "Is First, so It Is Capitalized"
-testLast t = testTitlecase $ "This Sentence Capitalizes" <#> toTitleLast t
-testIgnored t = testTitlecase $ "This Sentence Keeps" <#> t <#> "As Is"
-
-articleFirst, articleLast, articleIgnored :: TestTree
-articleFirst = testCase "article is first" $ mapM_ (testFirst . unArticle) Titlecase.articles
-articleLast = testCase "article is last" $ mapM_ (testLast . unArticle) Titlecase.articles
-articleIgnored = testCase "article is ignored" $ mapM_ (testIgnored . unArticle) Titlecase.articles
-
-conjunctionFirst, conjunctionLast, conjunctionIgnored :: TestTree
-conjunctionFirst = testCase "conjunction is first" $ mapM_ (testFirst . unConjunction) Titlecase.conjunctions
-conjunctionLast = testCase "conjunction is last" $ mapM_ (testLast . unConjunction) Titlecase.conjunctions
-conjunctionIgnored = testCase "conjunction is ignored" $ mapM_ (testIgnored . unConjunction) Titlecase.conjunctions
-
-prepositionFirst, prepositionLast, prepositionIgnored :: TestTree
-prepositionFirst = testCase "preposition is first" $ mapM_ (testFirst . unPreposition) Titlecase.prepositions
-prepositionLast = testCase "preposition is last" $ mapM_ (testLast . unPreposition) Titlecase.prepositions
-prepositionIgnored = testCase "preposition is ignored" $ mapM_ (testIgnored . unPreposition) Titlecase.prepositions
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/titlecase-0.1.0.3/tests/Test.hs new/titlecase-1.0.1/tests/Test.hs
--- old/titlecase-0.1.0.3/tests/Test.hs 2016-10-27 22:56:17.000000000 +0200
+++ new/titlecase-1.0.1/tests/Test.hs 1970-01-01 01:00:00.000000000 +0100
@@ -1,11 +0,0 @@
-module Main where
-
-import Test.Tasty
-import qualified Test.Property as Property
-import qualified Test.Unit as Unit
-
-main :: IO ()
-main = defaultMain tests
-
-tests :: TestTree
-tests = testGroup "Tests" [Property.tests, Unit.tests]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/titlecase-0.1.0.3/tests/Unit.hs new/titlecase-1.0.1/tests/Unit.hs
--- old/titlecase-0.1.0.3/tests/Unit.hs 1970-01-01 01:00:00.000000000 +0100
+++ new/titlecase-1.0.1/tests/Unit.hs 2017-07-17 08:46:13.000000000 +0200
@@ -0,0 +1,55 @@
+module Unit where
+
+import Data.Text.Titlecase
+import qualified Data.Text.Titlecase.Internal as Titlecase
+import Data.Text.Titlecase.Internal hiding (articles, conjunctions, prepositions)
+
+import Test.Tasty
+import Test.Tasty.HUnit
+import Data.Char ( toLower )
+
+tests :: TestTree
+tests = testGroup "Unit tests" [articles, conjunctions, prepositions]
+
+articles :: TestTree
+articles = testGroup "Articles" [articleFirst, articleLast, articleIgnored]
+
+conjunctions :: TestTree
+conjunctions = testGroup "Conjunctions" [conjunctionFirst, conjunctionLast, conjunctionIgnored]
+
+prepositions :: TestTree
+prepositions = testGroup "Prepositions" [prepositionFirst, prepositionLast, prepositionIgnored]
+
+testTitlecase, testFirst, testLast, testIgnored :: String -> Assertion
+testTitlecase t = titlecase (map toLower t) @?= t
+
+toTitleFirst :: String -> String
+toTitleFirst t = unwords $ case words t of
+ [] -> []
+ (x:xs) -> toTitle x : xs
+
+toTitleLast :: String -> String
+toTitleLast t = unwords $ go $ words t
+ where
+ go [] = []
+ go [x] = [toTitle x]
+ go (x:xs) = x : go xs
+
+testFirst t = testTitlecase $ toTitleFirst t <#> "Is First, so It Is Capitalized"
+testLast t = testTitlecase $ "This Sentence Capitalizes" <#> toTitleLast t
+testIgnored t = testTitlecase $ "This Sentence Keeps" <#> t <#> "As Is"
+
+articleFirst, articleLast, articleIgnored :: TestTree
+articleFirst = testCase "article is first" $ mapM_ (testFirst . unArticle) Titlecase.articles
+articleLast = testCase "article is last" $ mapM_ (testLast . unArticle) Titlecase.articles
+articleIgnored = testCase "article is ignored" $ mapM_ (testIgnored . unArticle) Titlecase.articles
+
+conjunctionFirst, conjunctionLast, conjunctionIgnored :: TestTree
+conjunctionFirst = testCase "conjunction is first" $ mapM_ (testFirst . unConjunction) Titlecase.conjunctions
+conjunctionLast = testCase "conjunction is last" $ mapM_ (testLast . unConjunction) Titlecase.conjunctions
+conjunctionIgnored = testCase "conjunction is ignored" $ mapM_ (testIgnored . unConjunction) Titlecase.conjunctions
+
+prepositionFirst, prepositionLast, prepositionIgnored :: TestTree
+prepositionFirst = testCase "preposition is first" $ mapM_ (testFirst . unPreposition) Titlecase.prepositions
+prepositionLast = testCase "preposition is last" $ mapM_ (testLast . unPreposition) Titlecase.prepositions
+prepositionIgnored = testCase "preposition is ignored" $ mapM_ (testIgnored . unPreposition) Titlecase.prepositions
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/titlecase-0.1.0.3/titlecase.cabal new/titlecase-1.0.1/titlecase.cabal
--- old/titlecase-0.1.0.3/titlecase.cabal 2016-10-27 22:56:17.000000000 +0200
+++ new/titlecase-1.0.1/titlecase.cabal 2017-07-17 08:46:13.000000000 +0200
@@ -1,14 +1,15 @@
--- This file has been generated from package.yaml by hpack version 0.14.1.
+-- This file has been generated from package.yaml by hpack version 0.18.1.
--
-- see: https://github.com/sol/hpack
name: titlecase
-version: 0.1.0.3
+version: 1.0.1
license: BSD3
license-file: LICENSE
author: Nikita Karetnikov,
Peter Simons,
- Aaron Wolf
+ Aaron Wolf,
+ Serg Nesterov
maintainer: Peter Simons <simons(a)cryp.to>
homepage: https://github.com/peti/titlecase#readme
bug-reports: https://github.com/peti/titlecase/issues
@@ -16,8 +17,8 @@
stability: stable
build-type: Simple
cabal-version: >= 1.10
-synopsis: Convert English words to title case
-description: Capitalize all English words except articles (a, an, the), coordinating conjunctions (for, and, nor, but, or, yet, so), and prepositions (unless they begin or end the title). The prepositions are taken from <https://en.wikipedia.org/wiki/List_of_English_prepositions>.
+synopsis: Convert English Words to Title Case
+description: Capitalize all English words except articles (a, an, the), coordinating conjunctions (for, and, nor, but, or, yet, so), and prepositions (unless they begin or end the title). The prepositions are taken from <https://en.wikipedia.org/wiki/List_of_English_prepositions Wikipedia>.
tested-with: GHC > 7.6 && < 8.1
source-repository head
@@ -28,12 +29,10 @@
default-language: Haskell2010
hs-source-dirs:
src
+ other-extensions: MultiWayIf
ghc-options: -Wall
build-depends:
- base <5,
- blaze-markup,
- semigroups,
- text
+ base <5
exposed-modules:
Data.Text.Titlecase
Data.Text.Titlecase.Internal
@@ -46,27 +45,21 @@
ghc-options: -Wall
build-depends:
base <5,
- blaze-markup,
- semigroups,
- text,
titlecase
test-suite test
type: exitcode-stdio-1.0
- main-is: Test.hs
+ main-is: Main.hs
hs-source-dirs:
tests
ghc-options: -Wall
build-depends:
base <5,
- blaze-markup,
- semigroups,
- text,
titlecase,
tasty,
tasty-hunit,
tasty-quickcheck
other-modules:
- Test.Property
- Test.Unit
+ Property
+ Unit
default-language: Haskell2010
1
0
Hello community,
here is the log from the commit of package stylish-haskell for openSUSE:Factory checked in at 2017-08-31 21:03:09
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/stylish-haskell (Old)
and /work/SRC/openSUSE:Factory/.stylish-haskell.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "stylish-haskell"
Thu Aug 31 21:03:09 2017 rev:3 rq:513574 version:0.8.1.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/stylish-haskell/stylish-haskell.changes 2017-03-24 02:16:53.464504389 +0100
+++ /work/SRC/openSUSE:Factory/.stylish-haskell.new/stylish-haskell.changes 2017-08-31 21:03:11.158744948 +0200
@@ -1,0 +2,5 @@
+Thu Jul 27 14:07:44 UTC 2017 - psimons(a)suse.com
+
+- Update to version 0.8.1.0.
+
+-------------------------------------------------------------------
Old:
----
stylish-haskell-0.7.1.0.tar.gz
New:
----
stylish-haskell-0.8.1.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ stylish-haskell.spec ++++++
--- /var/tmp/diff_new_pack.wEGzvl/_old 2017-08-31 21:03:12.110611209 +0200
+++ /var/tmp/diff_new_pack.wEGzvl/_new 2017-08-31 21:03:12.146606152 +0200
@@ -19,7 +19,7 @@
%global pkg_name stylish-haskell
%bcond_with tests
Name: %{pkg_name}
-Version: 0.7.1.0
+Version: 0.8.1.0
Release: 0
Summary: Haskell code prettifier
License: BSD-3-Clause
++++++ stylish-haskell-0.7.1.0.tar.gz -> stylish-haskell-0.8.1.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/stylish-haskell-0.7.1.0/CHANGELOG new/stylish-haskell-0.8.1.0/CHANGELOG
--- old/stylish-haskell-0.7.1.0/CHANGELOG 2017-01-24 13:53:59.000000000 +0100
+++ new/stylish-haskell-0.8.1.0/CHANGELOG 2017-06-19 14:23:15.000000000 +0200
@@ -1,5 +1,24 @@
# CHANGELOG
+- 0.8.1.0 (2017-06-19)
+ * Add `pad_module_names` option (by Yuriy Syrovetskiy)
+ * Add `space_surround` option to import styling (by Linus Arver)
+ * Bump `optparse-applicative` to 0.14
+
+- 0.8.0.0
+ * Remove `MagicHash` from whitelisted language extensions, since it was
+ causing parsing errors (by Artyom Kazak)
+ * Don't leave a `#-}` hanging on the next line when `language_pragmas`
+ is set to `compact` and the `#-}` doesn't fit into character limit
+ (by Artyom Kazak)
+ * Deduplicate import specs (i.e. `import Foo (a, a, b)` becomes
+ `import Foo (a, b)`) (by Artyom Kazak)
+ * Take package imports into account when prettifying imports
+ (by Artyom Kazak)
+ * Bump `aeson` to 1.2
+ * Bump `syb` to 0.7
+ * Bump `HUnit` to 1.6
+
- 0.7.1.0
* Keep `safe` and `{-# SOURCE #-}` import annotations (by Moritz Drexl)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/stylish-haskell-0.7.1.0/data/stylish-haskell.yaml new/stylish-haskell-0.8.1.0/data/stylish-haskell.yaml
--- old/stylish-haskell-0.7.1.0/data/stylish-haskell.yaml 2017-01-24 13:53:59.000000000 +0100
+++ new/stylish-haskell-0.8.1.0/data/stylish-haskell.yaml 2017-06-19 14:23:15.000000000 +0200
@@ -41,7 +41,7 @@
# Default: global.
align: global
- # Folowing options affect only import list alignment.
+ # The following options affect only import list alignment.
#
# List align has following options:
#
@@ -64,6 +64,25 @@
# Default: after_alias
list_align: after_alias
+ # Right-pad the module names to align imports in a group:
+ #
+ # - true: a little more readable
+ #
+ # > import qualified Data.List as List (concat, foldl, foldr,
+ # > init, last, length)
+ # > import qualified Data.List.Extra as List (concat, foldl, foldr,
+ # > init, last, length)
+ #
+ # - false: diff-safe
+ #
+ # > import qualified Data.List as List (concat, foldl, foldr, init,
+ # > last, length)
+ # > import qualified Data.List.Extra as List (concat, foldl, foldr,
+ # > init, last, length)
+ #
+ # Default: true
+ pad_module_names: true
+
# Long list align style takes effect when import is too long. This is
# determined by 'columns' setting.
#
@@ -75,7 +94,7 @@
# short enough to fit to single line. Otherwise it'll be multiline.
#
# - multiline: One line per import list entry.
- # Type with contructor list acts like single import.
+ # Type with constructor list acts like single import.
#
# > import qualified Data.Map as M
# > ( empty
@@ -109,7 +128,7 @@
# Useful for 'file' and 'group' align settings.
list_padding: 4
- # Separate lists option affects formating of import list for type
+ # Separate lists option affects formatting of import list for type
# or class. The only difference is single space between type and list
# of constructors, selectors and class functions.
#
@@ -126,6 +145,22 @@
# Default: true
separate_lists: true
+ # Space surround option affects formatting of import lists on a single
+ # line. The only difference is single space after the initial
+ # parenthesis and a single space before the terminal parenthesis.
+ #
+ # - true: There is single space associated with the enclosing
+ # parenthesis.
+ #
+ # > import Data.Foo ( foo )
+ #
+ # - false: There is no space associated with the enclosing parenthesis
+ #
+ # > import Data.Foo (foo)
+ #
+ # Default: false
+ space_surround: false
+
# Language pragmas
- language_pragmas:
# We can generate different styles of language pragma lists.
@@ -142,7 +177,7 @@
# Align affects alignment of closing pragma brackets.
#
- # - true: Brackets are aligned in same collumn.
+ # - true: Brackets are aligned in same column.
#
# - false: Brackets are not aligned together. There is only one space
# between actual import and closing bracket.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/stylish-haskell-0.7.1.0/lib/Language/Haskell/Stylish/Config.hs new/stylish-haskell-0.8.1.0/lib/Language/Haskell/Stylish/Config.hs
--- old/stylish-haskell-0.7.1.0/lib/Language/Haskell/Stylish/Config.hs 2017-01-24 13:53:59.000000000 +0100
+++ new/stylish-haskell-0.8.1.0/lib/Language/Haskell/Stylish/Config.hs 2017-06-19 14:23:15.000000000 +0200
@@ -184,13 +184,15 @@
<*> (Imports.Options
<$> (o A..:? "align" >>= parseEnum aligns (def Imports.importAlign))
<*> (o A..:? "list_align" >>= parseEnum listAligns (def Imports.listAlign))
+ <*> (o A..:? "pad_module_names" A..!= def Imports.padModuleNames)
<*> (o A..:? "long_list_align"
>>= parseEnum longListAligns (def Imports.longListAlign))
-- Note that padding has to be at least 1. Default is 4.
<*> (o A..:? "empty_list_align"
>>= parseEnum emptyListAligns (def Imports.emptyListAlign))
<*> o A..:? "list_padding" A..!= (def Imports.listPadding)
- <*> o A..:? "separate_lists" A..!= (def Imports.separateLists))
+ <*> o A..:? "separate_lists" A..!= (def Imports.separateLists)
+ <*> o A..:? "space_surround" A..!= (def Imports.spaceSurround))
where
def f = f Imports.defaultOptions
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/stylish-haskell-0.7.1.0/lib/Language/Haskell/Stylish/Parse.hs new/stylish-haskell-0.8.1.0/lib/Language/Haskell/Stylish/Parse.hs
--- old/stylish-haskell-0.7.1.0/lib/Language/Haskell/Stylish/Parse.hs 2017-01-24 13:53:59.000000000 +0100
+++ new/stylish-haskell-0.8.1.0/lib/Language/Haskell/Stylish/Parse.hs 2017-06-19 14:23:15.000000000 +0200
@@ -24,7 +24,6 @@
[ H.GADTs
, H.HereDocuments
, H.KindSignatures
- , H.MagicHash
, H.NewQualifiedOperators
, H.PatternGuards
, H.StandaloneDeriving
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/stylish-haskell-0.7.1.0/lib/Language/Haskell/Stylish/Step/Imports.hs new/stylish-haskell-0.8.1.0/lib/Language/Haskell/Stylish/Step/Imports.hs
--- old/stylish-haskell-0.7.1.0/lib/Language/Haskell/Stylish/Step/Imports.hs 2017-01-24 13:53:59.000000000 +0100
+++ new/stylish-haskell-0.8.1.0/lib/Language/Haskell/Stylish/Step/Imports.hs 2017-06-19 14:23:15.000000000 +0200
@@ -1,5 +1,5 @@
-{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
--------------------------------------------------------------------------------
module Language.Haskell.Stylish.Step.Imports
( Options (..)
@@ -16,13 +16,16 @@
--------------------------------------------------------------------------------
import Control.Arrow ((&&&))
import Control.Monad (void)
+import qualified Data.Aeson as A
+import qualified Data.Aeson.Types as A
import Data.Char (toLower)
import Data.List (intercalate, sortBy)
+import qualified Data.Map as M
import Data.Maybe (isJust, maybeToList)
+import Data.Monoid ((<>))
import Data.Ord (comparing)
+import qualified Data.Set as S
import qualified Language.Haskell.Exts as H
-import qualified Data.Aeson as A
-import qualified Data.Aeson.Types as A
--------------------------------------------------------------------------------
@@ -35,20 +38,24 @@
data Options = Options
{ importAlign :: ImportAlign
, listAlign :: ListAlign
+ , padModuleNames :: Bool
, longListAlign :: LongListAlign
, emptyListAlign :: EmptyListAlign
, listPadding :: ListPadding
, separateLists :: Bool
+ , spaceSurround :: Bool
} deriving (Eq, Show)
defaultOptions :: Options
defaultOptions = Options
{ importAlign = Global
, listAlign = AfterAlias
+ , padModuleNames = True
, longListAlign = Inline
, emptyListAlign = Inherit
, listPadding = LPConstant 4
, separateLists = True
+ , spaceSurround = False
}
data ListPadding
@@ -81,6 +88,16 @@
| Multiline
deriving (Eq, Show)
+
+--------------------------------------------------------------------------------
+
+modifyImportSpecs :: ([H.ImportSpec l] -> [H.ImportSpec l])
+ -> H.ImportDecl l -> H.ImportDecl l
+modifyImportSpecs f imp = imp {H.importSpecs = f' <$> H.importSpecs imp}
+ where
+ f' (H.ImportSpecList l h specs) = H.ImportSpecList l h (f specs)
+
+
--------------------------------------------------------------------------------
imports :: H.Module l -> [H.ImportDecl l]
imports (H.Module _ _ _ is _) = is
@@ -91,16 +108,94 @@
importName :: H.ImportDecl l -> String
importName i = let (H.ModuleName _ n) = H.importModule i in n
+importPackage :: H.ImportDecl l -> Maybe String
+importPackage i = H.importPkg i
+
+
+--------------------------------------------------------------------------------
+-- | A "compound import name" is import's name and package (if present). For
+-- instance, if you have an import @Foo.Bar@ from package @foobar@, the full
+-- name will be @"foobar" Foo.Bar@.
+compoundImportName :: H.ImportDecl l -> String
+compoundImportName i =
+ case importPackage i of
+ Nothing -> importName i
+ Just pkg -> show pkg ++ " " ++ importName i
+
--------------------------------------------------------------------------------
longestImport :: [H.ImportDecl l] -> Int
-longestImport = maximum . map (length . importName)
+longestImport = maximum . map (length . compoundImportName)
--------------------------------------------------------------------------------
-- | Compare imports for ordering
compareImports :: H.ImportDecl l -> H.ImportDecl l -> Ordering
-compareImports = comparing (map toLower . importName &&& H.importQualified)
+compareImports =
+ comparing (map toLower . importName &&&
+ fmap (map toLower) . importPackage &&&
+ H.importQualified)
+
+
+--------------------------------------------------------------------------------
+-- | Remove (or merge) duplicated import specs.
+--
+-- * When something is mentioned twice, it's removed: @A, A@ -> A
+-- * More general forms take priority: @A, A(..)@ -> @A(..)@
+-- * Sometimes we have to combine imports: @A(x), A(y)@ -> @A(x, y)@
+--
+-- Import specs are always sorted by subsequent steps so we don't have to care
+-- about preserving order.
+deduplicateImportSpecs :: Ord l => H.ImportDecl l -> H.ImportDecl l
+deduplicateImportSpecs =
+ modifyImportSpecs $
+ map recomposeImportSpec .
+ M.toList . M.fromListWith (<>) .
+ map decomposeImportSpec
+
+-- | What we are importing (variable, class, etc)
+data ImportEntity l
+ -- | A variable
+ = ImportVar l (H.Name l)
+ -- | Something that can be imported partially
+ | ImportClassOrData l (H.Name l)
+ -- | Something else ('H.IAbs')
+ | ImportOther l (H.Namespace l) (H.Name l)
+ deriving (Eq, Ord)
+
+-- | What we are importing from an 'ImportClassOrData'
+data ImportPortion l
+ = ImportSome [H.CName l] -- ^ @A(x, y, z)@
+ | ImportAll -- ^ @A(..)@
+
+instance Ord l => Monoid (ImportPortion l) where
+ mempty = ImportSome []
+ mappend (ImportSome a) (ImportSome b) = ImportSome (setUnion a b)
+ mappend _ _ = ImportAll
+
+-- | O(n log n) union.
+setUnion :: Ord a => [a] -> [a] -> [a]
+setUnion a b = S.toList (S.fromList a `S.union` S.fromList b)
+
+decomposeImportSpec :: H.ImportSpec l -> (ImportEntity l, ImportPortion l)
+decomposeImportSpec x = case x of
+ -- I checked and it looks like namespace's 'l' is always equal to x's 'l'
+ H.IAbs l space n -> case space of
+ H.NoNamespace _ -> (ImportClassOrData l n, ImportSome [])
+ H.TypeNamespace _ -> (ImportOther l space n, ImportSome [])
+ H.PatternNamespace _ -> (ImportOther l space n, ImportSome [])
+ H.IVar l n -> (ImportVar l n, ImportSome [])
+ H.IThingAll l n -> (ImportClassOrData l n, ImportAll)
+ H.IThingWith l n names -> (ImportClassOrData l n, ImportSome names)
+
+recomposeImportSpec :: (ImportEntity l, ImportPortion l) -> H.ImportSpec l
+recomposeImportSpec (e, p) = case e of
+ ImportClassOrData l n -> case p of
+ ImportSome [] -> H.IAbs l (H.NoNamespace l) n
+ ImportSome names -> H.IThingWith l n names
+ ImportAll -> H.IThingAll l n
+ ImportVar l n -> H.IVar l n
+ ImportOther l space n -> H.IAbs l space n
--------------------------------------------------------------------------------
@@ -119,10 +214,7 @@
--------------------------------------------------------------------------------
-- | Sort the input spec list inside an 'H.ImportDecl'
sortImportSpecs :: H.ImportDecl l -> H.ImportDecl l
-sortImportSpecs imp = imp {H.importSpecs = sort' <$> H.importSpecs imp}
- where
- sort' (H.ImportSpecList l h specs) = H.ImportSpecList l h $
- sortBy compareImportSpecs specs
+sortImportSpecs = modifyImportSpecs (sortBy compareImportSpecs)
--------------------------------------------------------------------------------
@@ -186,27 +278,27 @@
| otherwise = shortWrap
emptyWrap = case emptyListAlign of
- Inherit -> inlineWrap
+ Inherit -> inlineWrap
RightAfter -> [paddedNoSpecBase ++ " ()"]
inlineWrap = inlineWrapper
$ mapSpecs
$ withInit (++ ",")
- . withHead ("(" ++)
- . withLast (++ ")")
+ . withHead (("(" ++ maybeSpace) ++)
+ . withLast (++ (maybeSpace ++ ")"))
inlineWrapper = case listAlign of
NewLine -> (paddedNoSpecBase :) . wrapRest columns listPadding'
WithAlias -> wrap columns paddedBase (inlineBaseLength + 1)
-- Add 1 extra space to ensure same padding as in original code.
- AfterAlias -> withTail (' ' :)
+ AfterAlias -> withTail ((' ' : maybeSpace) ++)
. wrap columns paddedBase (afterAliasBaseLength + 1)
inlineWithBreakWrap = paddedNoSpecBase : wrapRest columns listPadding'
( mapSpecs
$ withInit (++ ",")
- . withHead ("(" ++)
- . withLast (++ ")"))
+ . withHead (("(" ++ maybeSpace) ++)
+ . withLast (++ (maybeSpace ++ ")")))
inlineToMultilineWrap
| length inlineWithBreakWrap > 2
@@ -221,9 +313,9 @@
. withTail (", " ++))
++ [")"])
- paddedBase = base $ padImport $ importName imp
+ paddedBase = base $ padImport $ compoundImportName imp
- paddedNoSpecBase = base $ padImportNoSpec $ importName imp
+ paddedNoSpecBase = base $ padImportNoSpec $ compoundImportName imp
padImport = if hasExtras && padName
then padRight longest
@@ -233,12 +325,11 @@
then padRight longest
else id
- base' baseName importAs hasHiding' = unwords $ concat $ filter (not . null)
+ base' baseName importAs hasHiding' = unwords $ concat $
[ ["import"]
, source
, safe
, qualified
- , show <$> maybeToList (H.importPkg imp)
, [baseName]
, importAs
, hasHiding'
@@ -248,9 +339,10 @@
["as " ++ as | H.ModuleName _ as <- maybeToList $ H.importAs imp]
["hiding" | hasHiding]
- inlineBaseLength = length $ base' (padImport $ importName imp) [] []
+ inlineBaseLength = length $
+ base' (padImport $ compoundImportName imp) [] []
- afterAliasBaseLength = length $ base' (padImport $ importName imp)
+ afterAliasBaseLength = length $ base' (padImport $ compoundImportName imp)
["as " ++ as | H.ModuleName _ as <- maybeToList $ H.importAs imp] []
(hasHiding, importSpecs) = case H.importSpecs imp of
@@ -282,6 +374,10 @@
Just [] -> ["()"] -- Instance only imports
Just is -> f $ map (prettyImportSpec separateLists) is
+ maybeSpace = case spaceSurround of
+ True -> " "
+ False -> ""
+
--------------------------------------------------------------------------------
prettyImportGroup :: Int -> Options -> Bool -> Int
@@ -292,12 +388,13 @@
sortBy compareImports imps
where
align' = importAlign align
+ padModuleNames' = padModuleNames align
longest' = case align' of
Group -> longestImport imps
_ -> longest
- padName = align' /= None
+ padName = align' /= None && padModuleNames'
padQual = case align' of
Global -> True
@@ -320,7 +417,8 @@
]
ls
where
- imps = map sortImportSpecs $ imports $ fmap linesFromSrcSpan module'
+ imps = map (sortImportSpecs . deduplicateImportSpecs) $
+ imports $ fmap linesFromSrcSpan module'
longest = longestImport imps
groups = groupAdjacent [(H.ann i, i) | i <- imps]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/stylish-haskell-0.7.1.0/lib/Language/Haskell/Stylish/Step/LanguagePragmas.hs new/stylish-haskell-0.8.1.0/lib/Language/Haskell/Stylish/Step/LanguagePragmas.hs
--- old/stylish-haskell-0.7.1.0/lib/Language/Haskell/Stylish/Step/LanguagePragmas.hs 2017-01-24 13:53:59.000000000 +0100
+++ new/stylish-haskell-0.8.1.0/lib/Language/Haskell/Stylish/Step/LanguagePragmas.hs 2017-06-19 14:23:15.000000000 +0200
@@ -56,7 +56,7 @@
--------------------------------------------------------------------------------
compactPragmas :: Int -> [String] -> Lines
compactPragmas columns pragmas' = wrap columns "{-# LANGUAGE" 13 $
- map (++ ",") (init pragmas') ++ [last pragmas', "#-}"]
+ map (++ ",") (init pragmas') ++ [last pragmas' ++ " #-}"]
--------------------------------------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/stylish-haskell-0.7.1.0/stylish-haskell.cabal new/stylish-haskell-0.8.1.0/stylish-haskell.cabal
--- old/stylish-haskell-0.7.1.0/stylish-haskell.cabal 2017-01-24 13:53:59.000000000 +0100
+++ new/stylish-haskell-0.8.1.0/stylish-haskell.cabal 2017-06-19 14:23:15.000000000 +0200
@@ -1,5 +1,5 @@
Name: stylish-haskell
-Version: 0.7.1.0
+Version: 0.8.1.0
Synopsis: Haskell code prettifier
Homepage: https://github.com/jaspervdj/stylish-haskell
License: BSD3
@@ -49,7 +49,7 @@
Paths_stylish_haskell
Build-depends:
- aeson >= 0.6 && < 1.2,
+ aeson >= 0.6 && < 1.3,
base >= 4.8 && < 5,
bytestring >= 0.9 && < 0.11,
containers >= 0.3 && < 0.6,
@@ -57,7 +57,7 @@
filepath >= 1.1 && < 1.5,
haskell-src-exts >= 1.18 && < 1.20,
mtl >= 2.0 && < 2.3,
- syb >= 0.3 && < 0.7,
+ syb >= 0.3 && < 0.8,
yaml >= 0.7 && < 0.9
Executable stylish-haskell
@@ -68,9 +68,9 @@
Build-depends:
stylish-haskell,
strict >= 0.3 && < 0.4,
- optparse-applicative >= 0.12 && < 0.14,
+ optparse-applicative >= 0.12 && < 0.15,
-- Copied from regular dependencies...
- aeson >= 0.6 && < 1.2,
+ aeson >= 0.6 && < 1.3,
base >= 4.8 && < 5,
bytestring >= 0.9 && < 0.11,
containers >= 0.3 && < 0.6,
@@ -78,7 +78,7 @@
filepath >= 1.1 && < 1.5,
haskell-src-exts >= 1.18 && < 1.20,
mtl >= 2.0 && < 2.3,
- syb >= 0.3 && < 0.7,
+ syb >= 0.3 && < 0.8,
yaml >= 0.7 && < 0.9
Test-suite stylish-haskell-tests
@@ -112,11 +112,11 @@
Language.Haskell.Stylish.Verbose
Build-depends:
- HUnit >= 1.2 && < 1.6,
+ HUnit >= 1.2 && < 1.7,
test-framework >= 0.4 && < 0.9,
test-framework-hunit >= 0.2 && < 0.4,
-- Copied from regular dependencies...
- aeson >= 0.6 && < 1.2,
+ aeson >= 0.6 && < 1.3,
base >= 4.8 && < 5,
bytestring >= 0.9 && < 0.11,
containers >= 0.3 && < 0.6,
@@ -124,7 +124,7 @@
filepath >= 1.1 && < 1.5,
haskell-src-exts >= 1.18 && < 1.20,
mtl >= 2.0 && < 2.3,
- syb >= 0.3 && < 0.7,
+ syb >= 0.3 && < 0.8,
yaml >= 0.7 && < 0.9
Source-repository head
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/stylish-haskell-0.7.1.0/tests/Language/Haskell/Stylish/Parse/Tests.hs new/stylish-haskell-0.8.1.0/tests/Language/Haskell/Stylish/Parse/Tests.hs
--- old/stylish-haskell-0.7.1.0/tests/Language/Haskell/Stylish/Parse/Tests.hs 2017-01-24 13:53:59.000000000 +0100
+++ new/stylish-haskell-0.8.1.0/tests/Language/Haskell/Stylish/Parse/Tests.hs 2017-06-19 14:23:15.000000000 +0200
@@ -27,6 +27,7 @@
, testCase "StandalonDeriving extension" testStandaloneDeriving
, testCase "UnicodeSyntax extension" testUnicodeSyntax
, testCase "XmlSyntax regression" testXmlSyntaxRegression
+ , testCase "MagicHash regression" testMagicHashRegression
]
--------------------------------------------------------------------------------
@@ -120,6 +121,11 @@
[ "smaller a b = a <b"
]
+testMagicHashRegression :: Assertion
+testMagicHashRegression = assert $ isRight $ parseModule [] Nothing $ unlines
+ [ "xs = \"foo\"#|1#|'a'#|bar#|Nil"
+ ]
+
--------------------------------------------------------------------------------
isRight :: Either a b -> Bool
isRight (Right _) = True
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/stylish-haskell-0.7.1.0/tests/Language/Haskell/Stylish/Step/Imports/Tests.hs new/stylish-haskell-0.8.1.0/tests/Language/Haskell/Stylish/Step/Imports/Tests.hs
--- old/stylish-haskell-0.7.1.0/tests/Language/Haskell/Stylish/Step/Imports/Tests.hs 2017-01-24 13:53:59.000000000 +0100
+++ new/stylish-haskell-0.8.1.0/tests/Language/Haskell/Stylish/Step/Imports/Tests.hs 2017-06-19 14:23:15.000000000 +0200
@@ -47,6 +47,11 @@
, testCase "case 19d" case19c
, testCase "case 19d" case19d
, testCase "case 20" case20
+ , testCase "case 21" case21
+ , testCase "case 22" case22
+ , testCase "case 23" case23
+ , testCase "case 24" case24
+ , testCase "case 25" case25
]
@@ -186,7 +191,7 @@
--------------------------------------------------------------------------------
case08 :: Assertion
case08 = expected
- @=? testStep (step 80 $ Options Global WithAlias Inline Inherit (LPConstant 4) True) input
+ @=? testStep (step 80 $ Options Global WithAlias True Inline Inherit (LPConstant 4) True False) input
where
expected = unlines
[ "module Herp where"
@@ -209,7 +214,7 @@
--------------------------------------------------------------------------------
case09 :: Assertion
case09 = expected
- @=? testStep (step 80 $ Options Global WithAlias Multiline Inherit (LPConstant 4) True) input
+ @=? testStep (step 80 $ Options Global WithAlias True Multiline Inherit (LPConstant 4) True False) input
where
expected = unlines
[ "module Herp where"
@@ -243,7 +248,7 @@
--------------------------------------------------------------------------------
case10 :: Assertion
case10 = expected
- @=? testStep (step 40 $ Options Group WithAlias Multiline Inherit (LPConstant 4) True) input
+ @=? testStep (step 40 $ Options Group WithAlias True Multiline Inherit (LPConstant 4) True False) input
where
expected = unlines
[ "module Herp where"
@@ -282,7 +287,7 @@
--------------------------------------------------------------------------------
case11 :: Assertion
case11 = expected
- @=? testStep (step 80 $ Options Group NewLine Inline Inherit (LPConstant 4) True) input
+ @=? testStep (step 80 $ Options Group NewLine True Inline Inherit (LPConstant 4) True False) input
where
expected = unlines
[ "module Herp where"
@@ -310,7 +315,7 @@
--------------------------------------------------------------------------------
case12 :: Assertion
case12 = expected
- @=? testStep (step 80 $ Options Group NewLine Inline Inherit (LPConstant 2) True) input'
+ @=? testStep (step 80 $ Options Group NewLine True Inline Inherit (LPConstant 2) True False) input'
where
input' = unlines
[ "import Data.List (map)"
@@ -325,7 +330,7 @@
--------------------------------------------------------------------------------
case13 :: Assertion
case13 = expected
- @=? testStep (step 80 $ Options None WithAlias InlineWithBreak Inherit (LPConstant 4) True) input'
+ @=? testStep (step 80 $ Options None WithAlias True InlineWithBreak Inherit (LPConstant 4) True False) input'
where
input' = unlines
[ "import qualified Data.List as List (concat, foldl, foldr, head, init,"
@@ -343,7 +348,7 @@
case14 :: Assertion
case14 = expected
@=? testStep
- (step 80 $ Options None WithAlias InlineWithBreak Inherit (LPConstant 10) True) expected
+ (step 80 $ Options None WithAlias True InlineWithBreak Inherit (LPConstant 10) True False) expected
where
expected = unlines
[ "import qualified Data.List as List (concat, map, null, reverse, tail, (++))"
@@ -353,7 +358,7 @@
--------------------------------------------------------------------------------
case15 :: Assertion
case15 = expected
- @=? testStep (step 80 $ Options None AfterAlias Multiline Inherit (LPConstant 4) True) input'
+ @=? testStep (step 80 $ Options None AfterAlias True Multiline Inherit (LPConstant 4) True False) input'
where
expected = unlines
[ "import Data.Acid (AcidState)"
@@ -379,7 +384,7 @@
--------------------------------------------------------------------------------
case16 :: Assertion
case16 = expected
- @=? testStep (step 80 $ Options None AfterAlias Multiline Inherit (LPConstant 4) False) input'
+ @=? testStep (step 80 $ Options None AfterAlias True Multiline Inherit (LPConstant 4) False False) input'
where
expected = unlines
[ "import Data.Acid (AcidState)"
@@ -403,7 +408,7 @@
--------------------------------------------------------------------------------
case17 :: Assertion
case17 = expected
- @=? testStep (step 80 $ Options None AfterAlias Multiline Inherit (LPConstant 4) True) input'
+ @=? testStep (step 80 $ Options None AfterAlias True Multiline Inherit (LPConstant 4) True False) input'
where
expected = unlines
[ "import Control.Applicative (Applicative (pure, (<*>)))"
@@ -421,7 +426,7 @@
--------------------------------------------------------------------------------
case18 :: Assertion
case18 = expected @=? testStep
- (step 40 $ Options None AfterAlias InlineToMultiline Inherit (LPConstant 4) True) input'
+ (step 40 $ Options None AfterAlias True InlineToMultiline Inherit (LPConstant 4) True False) input'
where
expected = unlines
----------------------------------------
@@ -448,7 +453,7 @@
--------------------------------------------------------------------------------
case19 :: Assertion
case19 = expected @=? testStep
- (step 40 $ Options Global NewLine InlineWithBreak RightAfter (LPConstant 17) True) case19input
+ (step 40 $ Options Global NewLine True InlineWithBreak RightAfter (LPConstant 17) True False) case19input
where
expected = unlines
----------------------------------------
@@ -463,7 +468,7 @@
case19b :: Assertion
case19b = expected @=? testStep
- (step 40 $ Options File NewLine InlineWithBreak RightAfter (LPConstant 17) True) case19input
+ (step 40 $ Options File NewLine True InlineWithBreak RightAfter (LPConstant 17) True False) case19input
where
expected = unlines
----------------------------------------
@@ -478,7 +483,7 @@
case19c :: Assertion
case19c = expected @=? testStep
- (step 40 $ Options File NewLine InlineWithBreak RightAfter LPModuleName True) case19input
+ (step 40 $ Options File NewLine True InlineWithBreak RightAfter LPModuleName True False) case19input
where
expected = unlines
----------------------------------------
@@ -493,7 +498,7 @@
case19d :: Assertion
case19d = expected @=? testStep
- (step 40 $ Options Global NewLine InlineWithBreak RightAfter LPModuleName True) case19input
+ (step 40 $ Options Global NewLine True InlineWithBreak RightAfter LPModuleName True False) case19input
where
expected = unlines
----------------------------------------
@@ -531,3 +536,130 @@
, "import qualified Data.Map as Map"
, "import Data.Set (empty)"
]
+
+--------------------------------------------------------------------------------
+case21 :: Assertion
+case21 = expected
+ @=? testStep (step 80 defaultOptions) input'
+ where
+ expected = unlines
+ [ "{-# LANGUAGE ExplicitNamespaces #-}"
+ , "import X1 (A, B, C)"
+ , "import X2 (A, B, C)"
+ , "import X3 (A (..))"
+ , "import X4 (A (..))"
+ , "import X5 (A (..))"
+ , "import X6 (A (a, b, c), B (m, n, o))"
+ , "import X7 (a, b, c)"
+ , "import X8 (type (+), (+))"
+ , "import X9 hiding (x, y, z)"
+ ]
+ input' = unlines
+ [ "{-# LANGUAGE ExplicitNamespaces #-}"
+ , "import X1 (A, B, A, C, A, B, A)"
+ , "import X2 (C(), B(), A())"
+ , "import X3 (A(..))"
+ , "import X4 (A, A(..))"
+ , "import X5 (A(..), A(x))"
+ , "import X6 (A(a,b), B(m,n), A(c), B(o))"
+ , "import X7 (a, b, a, c)"
+ , "import X8 (type (+), (+))"
+ , "import X9 hiding (x, y, z, x)"
+ ]
+
+--------------------------------------------------------------------------------
+case22 :: Assertion
+case22 = expected
+ @=? testStep (step 80 defaultOptions) input'
+ where
+ expected = unlines
+ [ "{-# LANGUAGE PackageImports #-}"
+ , "import A"
+ , "import \"blah\" A"
+ , "import \"foo\" A"
+ , "import qualified \"foo\" A as X"
+ , "import \"foo\" B (shortName, someLongName, someLongerName,"
+ , " theLongestNameYet)"
+ ]
+ input' = unlines
+ [ "{-# LANGUAGE PackageImports #-}"
+ , "import A"
+ , "import \"foo\" A"
+ , "import \"blah\" A"
+ , "import qualified \"foo\" A as X"
+ -- this import fits into 80 chats without "foo",
+ -- but doesn't fit when "foo" is included into the calculation
+ , "import \"foo\" B (someLongName, someLongerName, " ++
+ "theLongestNameYet, shortName)"
+ ]
+
+--------------------------------------------------------------------------------
+case23 :: Assertion
+case23 = expected
+ @=? testStep (step 40 $ Options None AfterAlias False Inline Inherit (LPConstant 4) True True) input'
+ where
+ expected = unlines
+ [ "import Data.Acid ( AcidState )"
+ , "import Data.Default.Class ( Default (def) )"
+ , ""
+ , "import Data.Monoid ( (<>) )"
+ , ""
+ , "import Data.ALongName.Foo ( Boo, Foo,"
+ , " Goo )"
+ ]
+
+ input' = unlines
+ [ "import Data.Acid (AcidState)"
+ , "import Data.Default.Class (Default(def))"
+ , ""
+ , "import Data.Monoid ((<>) )"
+ , ""
+ , "import Data.ALongName.Foo (Foo, Goo, Boo)"
+ ]
+
+--------------------------------------------------------------------------------
+case24 :: Assertion
+case24 = expected
+ @=? testStep (step 40 $ Options None AfterAlias False InlineWithBreak Inherit (LPConstant 4) True True) input'
+ where
+ expected = unlines
+ [ "import Data.Acid ( AcidState )"
+ , "import Data.Default.Class"
+ , " ( Default (def) )"
+ , ""
+ , "import Data.ALongName.Foo"
+ , " ( BooReallyLong, FooReallyLong,"
+ , " GooReallyLong )"
+ ]
+
+ input' = unlines
+ [ "import Data.Acid (AcidState)"
+ , "import Data.Default.Class (Default(def))"
+ , ""
+ , "import Data.ALongName.Foo (FooReallyLong, " ++
+ "GooReallyLong, BooReallyLong)"
+ ]
+
+--------------------------------------------------------------------------------
+case25 :: Assertion
+case25 = expected
+ @=? testStep (step 80 $ Options Group AfterAlias False Multiline Inherit (LPConstant 4) False False) input'
+ where
+ expected = unlines
+ [ "import Data.Acid (AcidState)"
+ , "import Data.Default.Class (Default(def))"
+ , ""
+ , "import Data.Maybe (Maybe(Just, Nothing))"
+ , "import qualified Data.Maybe.Extra (Maybe(Just, Nothing))"
+ , ""
+ , "import Data.Foo (Foo(Bar, Foo), Goo(Goo))"
+ ]
+ input' = unlines
+ [ "import Data.Acid (AcidState)"
+ , "import Data.Default.Class (Default(def))"
+ , ""
+ , "import Data.Maybe (Maybe (Just, Nothing))"
+ , "import qualified Data.Maybe.Extra (Maybe(Just, Nothing))"
+ , ""
+ , "import Data.Foo (Foo (Foo,Bar), Goo(Goo))"
+ ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/stylish-haskell-0.7.1.0/tests/Language/Haskell/Stylish/Step/LanguagePragmas/Tests.hs new/stylish-haskell-0.8.1.0/tests/Language/Haskell/Stylish/Step/LanguagePragmas/Tests.hs
--- old/stylish-haskell-0.7.1.0/tests/Language/Haskell/Stylish/Step/LanguagePragmas/Tests.hs 2017-01-24 13:53:59.000000000 +0100
+++ new/stylish-haskell-0.8.1.0/tests/Language/Haskell/Stylish/Step/LanguagePragmas/Tests.hs 2017-06-19 14:23:15.000000000 +0200
@@ -26,6 +26,8 @@
, testCase "case 06" case06
, testCase "case 07" case07
, testCase "case 08" case08
+ , testCase "case 09" case09
+ , testCase "case 10" case10
]
@@ -167,3 +169,31 @@
"TemplateHaskell #-}"
, "{-# LANGUAGE TypeOperators, ViewPatterns #-}"
]
+
+
+--------------------------------------------------------------------------------
+case09 :: Assertion
+case09 = expected @=? testStep (step 80 Compact True False) input
+ where
+ input = unlines
+ [ "{-# LANGUAGE DefaultSignatures, FlexibleInstances, LambdaCase, " ++
+ "TypeApplications"
+ , " #-}"
+ ]
+ expected = unlines
+ [ "{-# LANGUAGE DefaultSignatures, FlexibleInstances, LambdaCase,"
+ , " TypeApplications #-}"
+ ]
+
+--------------------------------------------------------------------------------
+case10 :: Assertion
+case10 = expected @=? testStep (step 80 Compact True False) input
+ where
+ input = unlines
+ [ "{-# LANGUAGE NondecreasingIndentation, ScopedTypeVariables,"
+ , " TypeApplications #-}"
+ ]
+ expected = unlines
+ [ "{-# LANGUAGE NondecreasingIndentation, ScopedTypeVariables, " ++
+ "TypeApplications #-}"
+ ]
1
0
Hello community,
here is the log from the commit of package stack for openSUSE:Factory checked in at 2017-08-31 21:03:07
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/stack (Old)
and /work/SRC/openSUSE:Factory/.stack.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "stack"
Thu Aug 31 21:03:07 2017 rev:10 rq:513573 version:1.5.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/stack/stack.changes 2017-05-16 14:38:53.087990688 +0200
+++ /work/SRC/openSUSE:Factory/.stack.new/stack.changes 2017-08-31 21:03:08.983050637 +0200
@@ -1,0 +2,5 @@
+Wed Jul 26 03:02:15 UTC 2017 - psimons(a)suse.com
+
+- Update to version 1.5.0 revision 1.
+
+-------------------------------------------------------------------
Old:
----
stack-1.4.0.tar.gz
New:
----
stack-1.5.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ stack.spec ++++++
--- /var/tmp/diff_new_pack.n6jC5U/_old 2017-08-31 21:03:10.254871944 +0200
+++ /var/tmp/diff_new_pack.n6jC5U/_new 2017-08-31 21:03:10.262870821 +0200
@@ -19,14 +19,14 @@
%global pkg_name stack
%bcond_with tests
Name: %{pkg_name}
-Version: 1.4.0
+Version: 1.5.0
Release: 0
Summary: The Haskell Tool Stack
License: BSD-3-Clause
Group: Development/Languages/Other
Url: https://hackage.haskell.org/package/%{name}
Source0: https://hackage.haskell.org/package/%{name}-%{version}/%{name}-%{version}.t…
-Source1: https://hackage.haskell.org/package/%{name}-%{version}/revision/4.cabal#/%{…
+Source1: https://hackage.haskell.org/package/%{name}-%{version}/revision/1.cabal#/%{…
BuildRequires: chrpath
BuildRequires: ghc-Cabal-devel
BuildRequires: ghc-aeson-devel
@@ -48,6 +48,7 @@
BuildRequires: ghc-cryptonite-devel
BuildRequires: ghc-deepseq-devel
BuildRequires: ghc-directory-devel
+BuildRequires: ghc-echo-devel
BuildRequires: ghc-either-devel
BuildRequires: ghc-errors-devel
BuildRequires: ghc-exceptions-devel
@@ -62,7 +63,6 @@
BuildRequires: ghc-hackage-security-devel
BuildRequires: ghc-hashable-devel
BuildRequires: ghc-hastache-devel
-BuildRequires: ghc-hit-devel
BuildRequires: ghc-hpack-devel
BuildRequires: ghc-hpc-devel
BuildRequires: ghc-http-client-devel
@@ -74,6 +74,7 @@
BuildRequires: ghc-memory-devel
BuildRequires: ghc-microlens-devel
BuildRequires: ghc-microlens-mtl-devel
+BuildRequires: ghc-mintty-devel
BuildRequires: ghc-monad-control-devel
BuildRequires: ghc-monad-logger-devel
BuildRequires: ghc-monad-unlift-devel
@@ -100,6 +101,7 @@
BuildRequires: ghc-semigroups-devel
BuildRequires: ghc-split-devel
BuildRequires: ghc-stm-devel
+BuildRequires: ghc-store-core-devel
BuildRequires: ghc-store-devel
BuildRequires: ghc-streaming-commons-devel
BuildRequires: ghc-tar-devel
++++++ stack-1.4.0.tar.gz -> stack-1.5.0.tar.gz ++++++
++++ 9058 lines of diff (skipped)
++++++ stack.cabal ++++++
--- /var/tmp/diff_new_pack.n6jC5U/_old 2017-08-31 21:03:10.878784283 +0200
+++ /var/tmp/diff_new_pack.n6jC5U/_new 2017-08-31 21:03:10.882783722 +0200
@@ -1,6 +1,6 @@
-x-revision: 4
name: stack
-version: 1.4.0
+version: 1.5.0
+x-revision: 1
cabal-version: >=1.10
build-type: Custom
license: BSD3
@@ -59,7 +59,7 @@
if os(windows)
build-depends:
- Win32 >=2.3.1.0 && <2.4
+ Win32 >=2.3.1.1 && <2.4
cpp-options: -DWINDOWS
else
build-depends:
@@ -82,6 +82,7 @@
Options.Applicative.Args
Options.Applicative.Builder.Extra
Options.Applicative.Complicated
+ Path.CheckInstall
Path.Extra
Path.Find
Paths_stack
@@ -123,6 +124,7 @@
Stack.Options.BuildParser
Stack.Options.CleanParser
Stack.Options.ConfigParser
+ Stack.Options.Completion
Stack.Options.DockerParser
Stack.Options.DotParser
Stack.Options.ExecParser
@@ -138,6 +140,7 @@
Stack.Options.PackageParser
Stack.Options.ResolverParser
Stack.Options.ScriptParser
+ Stack.Options.SDistParser
Stack.Options.SolverParser
Stack.Options.TestParser
Stack.Options.Utils
@@ -177,6 +180,7 @@
Stack.Types.Resolver
Stack.Types.Sig
Stack.Types.StackT
+ Stack.Types.StringError
Stack.Types.TemplateName
Stack.Types.Version
Stack.Upgrade
@@ -203,11 +207,12 @@
conduit >=1.2.8 && <1.3,
conduit-extra >=1.1.14 && <1.2,
containers >=0.5.5.1 && <0.6,
- cryptonite >=0.19 && <0.22,
+ cryptonite >=0.19 && <0.24,
cryptonite-conduit >=0.1 && <0.3,
directory >=1.2.1.0 && <1.4,
+ echo >=0.1.3 && <0.2,
either >=4.4.1.1 && <4.5,
- errors >=2.1.2 && <2.2,
+ errors >=2.1.3 && <2.3,
exceptions >=0.8.0.2 && <0.9,
extra >=1.4.10 && <1.6,
fast-logger >=2.3.1 && <2.5,
@@ -215,19 +220,20 @@
filepath >=1.3.0.2 && <1.5,
fsnotify >=0.2.1 && <0.3,
generic-deriving >=1.10.5 && <1.12,
+ ghc-prim >=0.4.0.0 && <0.6,
hackage-security >=0.5.2.2 && <0.6,
hashable >=1.2.3.2 && <1.3,
- hit >=0.6.3 && <0.7,
hpc >=0.6.0.2 && <0.7,
http-client >=0.5.3.3 && <0.6,
http-client-tls >=0.3.4 && <0.4,
http-conduit >=2.2.3 && <2.3,
http-types >=0.8.6 && <0.10,
- lifted-async >=0.9.0 && <0.10,
- lifted-base >=0.2.3.8 && <0.3,
+ lifted-async >=0.9.1.1 && <0.10,
+ lifted-base >=0.2.3.11 && <0.3,
memory >=0.13 && <0.15,
microlens >=0.3.0.0 && <0.5,
microlens-mtl >=0.1.10.0 && <0.2,
+ mintty >=0.1.1 && <0.2,
monad-control >=1.0.1.0 && <1.1,
monad-logger >=0.3.13.1 && <0.4,
monad-unlift >=0.2.0 && <0.3,
@@ -237,7 +243,7 @@
optparse-applicative ==0.13.*,
path >=0.5.8 && <0.6,
path-io >=1.1.0 && <2.0.0,
- persistent >=2.1.2 && <2.7,
+ persistent >=2.1.2 && <2.8,
persistent-sqlite >=2.1.4 && <2.5.0.1 || >2.5.0.1 && <2.7,
persistent-template >=2.1.1 && <2.6,
pretty >=1.1.1.1 && <1.2,
@@ -246,9 +252,9 @@
resourcet >=1.1.4.1 && <1.2,
retry >=0.6 && <0.8,
safe ==0.3.*,
- safe-exceptions >=0.1.4.0 && <0.2,
+ safe-exceptions >=0.1.5.0 && <0.2,
semigroups >=0.5 && <0.19,
- split >=0.2.3.1 && <0.3,
+ split >=0.2.3.2 && <0.3,
stm >=2.4.4 && <2.5,
streaming-commons >=0.1.10.0 && <0.2,
tar >=0.5.0.3 && <0.6,
@@ -256,7 +262,7 @@
temporary >=1.2.0.3 && <1.3,
text >=1.2.0.4 && <1.3,
text-binary >=0.2.1.1 && <0.3,
- text-metrics >=0.1 && <0.3,
+ text-metrics >=0.1 && <0.4,
time >=1.4.2 && <1.7,
tls >=1.3.8 && <1.4,
transformers >=0.3.0.0 && <0.6,
@@ -265,15 +271,16 @@
unix-compat >=0.4.1.4 && <0.5,
unordered-containers >=0.2.5.1 && <0.3,
vector >=0.10.12.3 && <0.13,
- vector-binary-instances >=0.2.3.2 && <0.3,
+ vector-binary-instances >=0.2.3.5 && <0.3,
yaml >=0.8.20 && <0.9,
zlib >=0.5.4.2 && <0.7,
deepseq ==1.4.*,
hastache >=0.6.1 && <0.7,
project-template ==0.2.*,
zip-archive >=0.2.3.7 && <0.4,
- hpack >=0.17.0 && <0.18,
- store >=0.2.1.0 && <0.4,
+ hpack >=0.17.0 && <0.19,
+ store >=0.4.1 && <0.5,
+ store-core ==0.4.*,
annotated-wl-pprint >=0.7.0 && <0.8,
file-embed >=0.0.10 && <0.1
default-language: Haskell2010
@@ -289,12 +296,12 @@
if os(windows)
build-depends:
- Win32 >=2.3.1.0 && <2.4
+ Win32 >=2.3.1.1 && <2.4
cpp-options: -DWINDOWS
if !flag(disable-git-info)
build-depends:
- gitrev >=1.1 && <1.3,
+ gitrev >=1.1 && <1.4,
optparse-simple >=0.0.3 && <0.1
cpp-options: -DUSE_GIT_INFO
@@ -311,9 +318,9 @@
either >=4.4.1.1 && <4.5,
filelock >=0.1.0.1 && <0.2,
filepath >=1.3.0.2 && <1.5,
- hpack >=0.17.0 && <0.18,
+ hpack >=0.17.0 && <0.19,
http-client >=0.5.3.3 && <0.6,
- lifted-base >=0.2.3.8 && <0.3,
+ lifted-base >=0.2.3.11 && <0.3,
microlens >=0.3.0.0 && <0.5,
monad-control >=1.0.1.0 && <1.1,
monad-logger >=0.3.13.1 && <0.4,
@@ -321,8 +328,8 @@
optparse-applicative ==0.13.*,
path >=0.5.8 && <0.6,
path-io >=1.1.0 && <2.0.0,
- split >=0.2.3.1 && <0.3,
- stack >=1.4.0 && <1.5,
+ split >=0.2.3.2 && <0.3,
+ stack,
text >=1.2.0.4 && <1.3,
transformers >=0.3.0.0 && <0.6
default-language: Haskell2010
@@ -343,34 +350,34 @@
attoparsec >=0.13.1.0 && <0.14,
base >=4.7 && <5,
conduit >=1.2.8 && <1.3,
- conduit-extra >=1.1.14 && <1.2,
+ conduit-extra >=1.1.16 && <1.2,
containers >=0.5.5.1 && <0.6,
- cryptonite >=0.19 && <0.22,
+ cryptonite >=0.19 && <0.24,
directory >=1.2.1.0 && <1.4,
exceptions >=0.8.3 && <0.9,
- filepath >=1.4.0.0 && <1.5,
+ filepath >=1.3.0.2 && <1.5,
hspec >=2.2 && <2.5,
- hashable >=1.2.4.0 && <1.3,
+ hashable >=1.2.3.2 && <1.3,
http-client-tls >=0.3.4 && <0.4,
http-conduit >=2.2.3 && <2.3,
- monad-logger >=0.3.20.1 && <0.4,
+ monad-logger >=0.3.24 && <0.4,
neat-interpolation ==0.3.*,
optparse-applicative ==0.13.*,
path >=0.5.8 && <0.6,
path-io >=1.1.0 && <2.0.0,
- resourcet >=1.1.8.1 && <1.2,
+ resourcet >=1.1.9 && <1.2,
retry >=0.6 && <0.8,
- stack >=1.4.0 && <1.5,
- temporary >=1.2.0.4 && <1.3,
+ stack,
+ temporary >=1.2.0.3 && <1.3,
text >=1.2.2.1 && <1.3,
transformers >=0.3.0.0 && <0.6,
mono-traversable >=0.10.2 && <1.1,
th-reify-many >=0.1.6 && <0.2,
smallcheck >=1.1.1 && <1.2,
- bytestring >=0.10.6.0 && <0.11,
- store >=0.2.1.0 && <0.4,
+ bytestring >=0.10.4.0 && <0.11,
+ store >=0.4.1 && <0.5,
vector >=0.10.12.3 && <0.13,
- unordered-containers >=0.2.7.1 && <0.3,
+ unordered-containers >=0.2.8.0 && <0.3,
template-haskell >=2.9.0.0 && <2.12,
yaml >=0.8.20 && <0.9
default-language: Haskell2010
@@ -400,7 +407,7 @@
type: exitcode-stdio-1.0
main-is: IntegrationSpec.hs
build-depends:
- async >=2.1.0 && <2.2,
+ async >=2.1.1.1 && <2.2,
base >=4.7 && <5,
bytestring >=0.10.4.0 && <0.11,
conduit >=1.2.8 && <1.3,
@@ -410,8 +417,8 @@
filepath >=1.3.0.2 && <1.5,
hspec >=2.2 && <2.5,
process >=1.2.0.0 && <1.5,
- resourcet >=1.1.8.1 && <1.2,
- temporary >=1.2.0.4 && <1.3,
+ resourcet >=1.1.9 && <1.2,
+ temporary >=1.2.0.3 && <1.3,
text >=1.2.2.1 && <1.3,
transformers >=0.3.0.0 && <0.6,
unix-compat >=0.4.1.4 && <0.5
@@ -420,3 +427,8 @@
other-modules:
StackTest
ghc-options: -threaded -rtsopts -with-rtsopts=-N -Wall -fwarn-tabs -fwarn-incomplete-uni-patterns -fwarn-incomplete-record-updates
+
+custom-setup
+ setup-depends: base
+ , Cabal
+ , filepath
1
0
Hello community,
here is the log from the commit of package hspec-discover for openSUSE:Factory checked in at 2017-08-31 21:03:04
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/hspec-discover (Old)
and /work/SRC/openSUSE:Factory/.hspec-discover.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "hspec-discover"
Thu Aug 31 21:03:04 2017 rev:3 rq:513572 version:2.4.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/hspec-discover/hspec-discover.changes 2017-04-14 13:39:22.741332200 +0200
+++ /work/SRC/openSUSE:Factory/.hspec-discover.new/hspec-discover.changes 2017-08-31 21:03:05.435549068 +0200
@@ -1,0 +2,5 @@
+Thu Jul 27 14:03:31 UTC 2017 - psimons(a)suse.com
+
+- Update to version 2.4.4.
+
+-------------------------------------------------------------------
Old:
----
hspec-discover-2.4.3.tar.gz
New:
----
hspec-discover-2.4.4.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ hspec-discover.spec ++++++
--- /var/tmp/diff_new_pack.LwWu5a/_old 2017-08-31 21:03:06.423410271 +0200
+++ /var/tmp/diff_new_pack.LwWu5a/_new 2017-08-31 21:03:06.439408024 +0200
@@ -19,7 +19,7 @@
%global pkg_name hspec-discover
%bcond_with tests
Name: %{pkg_name}
-Version: 2.4.3
+Version: 2.4.4
Release: 0
Summary: Automatically discover and run Hspec tests
License: MIT
++++++ hspec-discover-2.4.3.tar.gz -> hspec-discover-2.4.4.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hspec-discover-2.4.3/hspec-discover.cabal new/hspec-discover-2.4.4/hspec-discover.cabal
--- old/hspec-discover-2.4.3/hspec-discover.cabal 2017-03-25 12:27:49.000000000 +0100
+++ new/hspec-discover-2.4.4/hspec-discover.cabal 2017-06-16 11:08:31.000000000 +0200
@@ -1,9 +1,9 @@
--- This file has been generated from package.yaml by hpack version 0.17.0.
+-- This file has been generated from package.yaml by hpack version 0.18.0.
--
-- see: https://github.com/sol/hpack
name: hspec-discover
-version: 2.4.3
+version: 2.4.4
license: MIT
license-file: LICENSE
copyright: (c) 2012-2017 Simon Hengel
1
0
Hello community,
here is the log from the commit of package hpack for openSUSE:Factory checked in at 2017-08-31 21:03:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/hpack (Old)
and /work/SRC/openSUSE:Factory/.hpack.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "hpack"
Thu Aug 31 21:03:02 2017 rev:8 rq:513571 version:0.18.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/hpack/hpack.changes 2017-06-21 13:57:00.788880846 +0200
+++ /work/SRC/openSUSE:Factory/.hpack.new/hpack.changes 2017-08-31 21:03:02.995891845 +0200
@@ -1,0 +2,5 @@
+Thu Jul 27 14:04:28 UTC 2017 - psimons(a)suse.com
+
+- Update to version 0.18.1.
+
+-------------------------------------------------------------------
Old:
----
hpack-0.17.1.tar.gz
New:
----
hpack-0.18.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ hpack.spec ++++++
--- /var/tmp/diff_new_pack.xPo86F/_old 2017-08-31 21:03:03.955756982 +0200
+++ /var/tmp/diff_new_pack.xPo86F/_new 2017-08-31 21:03:03.963755858 +0200
@@ -19,7 +19,7 @@
%global pkg_name hpack
%bcond_with tests
Name: %{pkg_name}
-Version: 0.17.1
+Version: 0.18.1
Release: 0
Summary: An alternative format for Haskell packages
License: MIT
@@ -93,6 +93,7 @@
%files
%defattr(-,root,root,-)
%doc LICENSE
+%doc CHANGELOG.md
%{_bindir}/%{name}
%files -n ghc-%{name} -f ghc-%{name}.files
@@ -101,5 +102,6 @@
%files -n ghc-%{name}-devel -f ghc-%{name}-devel.files
%defattr(-,root,root,-)
+%doc CHANGELOG.md
%changelog
++++++ hpack-0.17.1.tar.gz -> hpack-0.18.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.17.1/CHANGELOG.md new/hpack-0.18.1/CHANGELOG.md
--- old/hpack-0.17.1/CHANGELOG.md 1970-01-01 01:00:00.000000000 +0100
+++ new/hpack-0.18.1/CHANGELOG.md 2017-06-24 02:59:33.000000000 +0200
@@ -0,0 +1,25 @@
+## next
+ - Output generated cabal file to `stdout` when `-` is given as a command-line
+ option (see #113)
+ - Recognize `.chs`, `.y`, `.ly` and `.x` as Haskell modules when inferring
+ modules for
+
+## Change in 0.18.0
+ - Make `executable` a shortcut of `executables: { package-name: ... }`
+ - Add support for `ghcjs-options` and `js-sources` (see #161)
+ - Allow `license-file` to be a list
+ - Accept input file on command-line (see #106)
+ - Add Paths_* when no modules are specified (see #86)
+
+## Changes in 0.17.1
+ - Do not descend into irrelevant directories when inferring modules (see #165)
+
+## Changes in 0.17.0
+ - Added custom-setup section
+ - Add support for `!include` directives
+
+## Changes in 0.16.0
+ - Warn when `name` is missing
+ - Support globs in `c-sources`
+ - Use binary I/O for cabal files avoiding problems with non-UTF-8 locales
+ - Fix rendering of `.` as directory (cabal syntax issue)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.17.1/hpack.cabal new/hpack-0.18.1/hpack.cabal
--- old/hpack-0.17.1/hpack.cabal 2017-06-08 05:34:06.000000000 +0200
+++ new/hpack-0.18.1/hpack.cabal 2017-06-24 02:59:33.000000000 +0200
@@ -1,9 +1,9 @@
--- This file has been generated from package.yaml by hpack version 0.17.0.
+-- This file has been generated from package.yaml by hpack version 0.18.0.
--
-- see: https://github.com/sol/hpack
name: hpack
-version: 0.17.1
+version: 0.18.1
synopsis: An alternative format for Haskell packages
description: See README at <https://github.com/sol/hpack#readme>
category: Development
@@ -15,6 +15,9 @@
build-type: Simple
cabal-version: >= 1.10
+extra-source-files:
+ CHANGELOG.md
+
source-repository head
type: git
location: https://github.com/sol/hpack
@@ -45,6 +48,7 @@
Hpack.FormattingHints
Hpack.GenericsUtil
Hpack.Haskell
+ Hpack.Options
Hpack.Render
Hpack.Util
Paths_hpack
@@ -104,6 +108,7 @@
Hpack.FormattingHintsSpec
Hpack.GenericsUtilSpec
Hpack.HaskellSpec
+ Hpack.OptionsSpec
Hpack.RenderSpec
Hpack.RunSpec
Hpack.UtilSpec
@@ -113,6 +118,7 @@
Hpack.FormattingHints
Hpack.GenericsUtil
Hpack.Haskell
+ Hpack.Options
Hpack.Render
Hpack.Run
Hpack.Util
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.17.1/src/Hpack/Config.hs new/hpack-0.18.1/src/Hpack/Config.hs
--- old/hpack-0.17.1/src/Hpack/Config.hs 2017-06-08 05:34:06.000000000 +0200
+++ new/hpack-0.18.1/src/Hpack/Config.hs 2017-06-24 02:59:33.000000000 +0200
@@ -80,7 +80,7 @@
, packageCopyright = []
, packageBuildType = Simple
, packageLicense = Nothing
- , packageLicenseFile = Nothing
+ , packageLicenseFile = []
, packageTestedWith = Nothing
, packageFlags = []
, packageExtraSourceFiles = []
@@ -119,7 +119,7 @@
++ maybe [] sectionDependencies packageLibrary
section :: a -> Section a
-section a = Section a [] [] [] [] [] [] [] [] [] [] [] [] [] [] Nothing [] []
+section a = Section a [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] [] Nothing [] []
packageConfig :: FilePath
packageConfig = "package.yaml"
@@ -230,9 +230,11 @@
, commonOptionsOtherExtensions :: Maybe (List String)
, commonOptionsGhcOptions :: Maybe (List GhcOption)
, commonOptionsGhcProfOptions :: Maybe (List GhcProfOption)
+, commonOptionsGhcjsOptions :: Maybe (List GhcjsOption)
, commonOptionsCppOptions :: Maybe (List CppOption)
, commonOptionsCcOptions :: Maybe (List CcOption)
, commonOptionsCSources :: Maybe (List FilePath)
+, commonOptionsJsSources :: Maybe (List FilePath)
, commonOptionsExtraLibDirs :: Maybe (List FilePath)
, commonOptionsExtraLibraries :: Maybe (List FilePath)
, commonOptionsIncludeDirs :: Maybe (List FilePath)
@@ -308,6 +310,8 @@
"Custom" -> return Custom
_ -> fail "build-type must be one of: Simple, Configure, Make, Custom"
+type ExecutableConfig = CaptureUnknownFields (Section ExecutableSection)
+
data PackageConfig = PackageConfig {
packageConfigName :: Maybe String
, packageConfigVersion :: Maybe String
@@ -322,7 +326,7 @@
, packageConfigCopyright :: Maybe (List String)
, packageConfigBuildType :: Maybe BuildType
, packageConfigLicense :: Maybe String
-, packageConfigLicenseFile :: Maybe String
+, packageConfigLicenseFile :: Maybe (List String)
, packageConfigTestedWith :: Maybe String
, packageConfigFlags :: Maybe (Map String (CaptureUnknownFields FlagSection))
, packageConfigExtraSourceFiles :: Maybe (List FilePath)
@@ -331,7 +335,8 @@
, packageConfigGit :: Maybe String
, packageConfigCustomSetup :: Maybe (CaptureUnknownFields CustomSetupSection)
, packageConfigLibrary :: Maybe (CaptureUnknownFields (Section LibrarySection))
-, packageConfigExecutables :: Maybe (Map String (CaptureUnknownFields (Section ExecutableSection)))
+, packageConfigExecutable :: Maybe ExecutableConfig
+, packageConfigExecutables :: Maybe (Map String ExecutableConfig)
, packageConfigTests :: Maybe (Map String (CaptureUnknownFields (Section ExecutableSection)))
, packageConfigBenchmarks :: Maybe (Map String (CaptureUnknownFields (Section ExecutableSection)))
} deriving (Eq, Show, Generic)
@@ -425,7 +430,7 @@
, packageCopyright :: [String]
, packageBuildType :: BuildType
, packageLicense :: Maybe String
-, packageLicenseFile :: Maybe FilePath
+, packageLicenseFile :: [FilePath]
, packageTestedWith :: Maybe String
, packageFlags :: [Flag]
, packageExtraSourceFiles :: [FilePath]
@@ -463,9 +468,11 @@
, sectionOtherExtensions :: [String]
, sectionGhcOptions :: [GhcOption]
, sectionGhcProfOptions :: [GhcProfOption]
+, sectionGhcjsOptions :: [GhcjsOption]
, sectionCppOptions :: [CppOption]
, sectionCcOptions :: [CcOption]
, sectionCSources :: [FilePath]
+, sectionJsSources :: [FilePath]
, sectionExtraLibDirs :: [FilePath]
, sectionExtraLibraries :: [FilePath]
, sectionIncludeDirs :: [FilePath]
@@ -514,24 +521,30 @@
mkPackage :: FilePath -> (CaptureUnknownFields (Section PackageConfig)) -> IO ([String], Package)
mkPackage dir (CaptureUnknownFields unknownFields globalOptions@Section{sectionData = PackageConfig{..}}) = do
+ libraryResult <- mapM (toLibrary dir packageName_ globalOptions) mLibrarySection
let
- nameWarnings :: [String]
- name :: String
- (nameWarnings, name) = maybe (["Package name not specified, inferred " ++ show inferredName], inferredName) ((,) []) packageConfigName
- where inferredName = takeBaseName dir
-
- mCustomSetup :: Maybe CustomSetup
- mCustomSetup = toCustomSetup <$> mCustomSetupSection
+ executableWarnings :: [String]
+ executableSections :: [(String, Section ExecutableSection)]
+ (executableWarnings, executableSections) = (warnings, map (fmap captureUnknownFieldsValue) sections)
+ where
+ sections = case (packageConfigExecutable, packageConfigExecutables) of
+ (Nothing, Nothing) -> []
+ (Just executable, _) -> [(packageName_, executable)]
+ (Nothing, Just executables) -> Map.toList executables
+
+ warnings = ignoringExecutablesWarning ++ unknownFieldWarnings
+ ignoringExecutablesWarning = case (packageConfigExecutable, packageConfigExecutables) of
+ (Just _, Just _) -> ["Ignoring field \"executables\" in favor of \"executable\""]
+ _ -> []
+ unknownFieldWarnings = formatUnknownSectionFields (isJust packageConfigExecutables) "executable" sections
- libraryResult <- mapM (toLibrary dir name globalOptions) mLibrarySection
- let
mLibrary :: Maybe (Section Library)
mLibrary = fmap snd libraryResult
libraryWarnings :: [String]
libraryWarnings = maybe [] fst libraryResult
- (executablesWarnings, executables) <- toExecutables dir globalOptions (map (fmap captureUnknownFieldsValue) executableSections)
+ (executablesWarnings, executables) <- toExecutables dir globalOptions executableSections
(testsWarnings, tests) <- toExecutables dir globalOptions (map (fmap captureUnknownFieldsValue) testsSections)
(benchmarksWarnings, benchmarks) <- toExecutables dir globalOptions (map (fmap captureUnknownFieldsValue) benchmarkSections)
@@ -553,8 +566,13 @@
let defaultBuildType :: BuildType
defaultBuildType = maybe Simple (const Custom) mCustomSetup
+ configLicenseFiles :: Maybe (List String)
+ configLicenseFiles = packageConfigLicenseFile <|> do
+ guard licenseFileExists
+ Just (List ["LICENSE"])
+
pkg = Package {
- packageName = name
+ packageName = packageName_
, packageVersion = fromMaybe "0.0.0" packageConfigVersion
, packageSynopsis = packageConfigSynopsis
, packageDescription = packageConfigDescription
@@ -567,7 +585,7 @@
, packageCopyright = fromMaybeList packageConfigCopyright
, packageBuildType = fromMaybe defaultBuildType packageConfigBuildType
, packageLicense = packageConfigLicense
- , packageLicenseFile = packageConfigLicenseFile <|> (guard licenseFileExists >> Just "LICENSE")
+ , packageLicenseFile = fromMaybeList configLicenseFiles
, packageTestedWith = packageConfigTestedWith
, packageFlags = flags
, packageExtraSourceFiles = extraSourceFiles
@@ -586,10 +604,11 @@
++ flagWarnings
++ maybe [] (formatUnknownFields "custom-setup section") (captureUnknownFieldsFields <$> packageConfigCustomSetup)
++ maybe [] (formatUnknownFields "library section") (captureUnknownFieldsFields <$> packageConfigLibrary)
- ++ formatUnknownSectionFields "executable" executableSections
- ++ formatUnknownSectionFields "test" testsSections
+ ++ formatUnknownSectionFields True "test" testsSections
+ ++ formatUnknownSectionFields True "benchmark" benchmarkSections
++ formatMissingSourceDirs missingSourceDirs
++ libraryWarnings
+ ++ executableWarnings
++ executablesWarnings
++ testsWarnings
++ benchmarksWarnings
@@ -598,8 +617,15 @@
return (warnings, pkg)
where
- executableSections :: [(String, CaptureUnknownFields (Section ExecutableSection))]
- executableSections = toList packageConfigExecutables
+ nameWarnings :: [String]
+ packageName_ :: String
+ (nameWarnings, packageName_) = case packageConfigName of
+ Nothing -> let inferredName = takeBaseName dir in
+ (["Package name not specified, inferred " ++ show inferredName], inferredName)
+ Just n -> ([], n)
+
+ mCustomSetup :: Maybe CustomSetup
+ mCustomSetup = toCustomSetup <$> mCustomSetupSection
testsSections :: [(String, CaptureUnknownFields (Section ExecutableSection))]
testsSections = toList packageConfigTests
@@ -630,11 +656,13 @@
where
f field = "Ignoring unknown field " ++ show field ++ " in " ++ name
- formatUnknownSectionFields :: String -> [(String, CaptureUnknownFields a)] -> [String]
- formatUnknownSectionFields sectionType = concatMap f . map (fmap captureUnknownFieldsFields)
+ formatUnknownSectionFields :: Bool -> String -> [(String, CaptureUnknownFields a)] -> [String]
+ formatUnknownSectionFields showSect sectionType = concatMap f . map (fmap captureUnknownFieldsFields)
where
f :: (String, [String]) -> [String]
- f (sect, fields) = formatUnknownFields (sectionType ++ " section " ++ show sect) fields
+ f (sect, fields) = formatUnknownFields
+ (sectionType ++ " section" ++ if showSect then " " ++ show sect else "")
+ fields
formatMissingSourceDirs = map f
where
@@ -671,12 +699,23 @@
(warnings, files) <- expandGlobs "c-sources" dir sectionCSources
return (warnings, sect {sectionCSources = files})
+expandJsSources :: FilePath -> Section a -> IO ([String], Section a)
+expandJsSources dir sect@Section{..} = do
+ (warnings, files) <- expandGlobs "js-sources" dir sectionJsSources
+ return (warnings, sect {sectionJsSources = files})
+
+expandForeignSources :: FilePath -> Section a -> IO ([String], Section a)
+expandForeignSources dir sect = do
+ (cWarnings, sect_) <- expandCSources dir sect
+ (jsWarnings, sect__) <- expandJsSources dir sect_
+ return (cWarnings ++ jsWarnings, sect__)
+
toCustomSetup :: CustomSetupSection -> CustomSetup
toCustomSetup CustomSetupSection{..} = CustomSetup
{ customSetupDependencies = fromMaybeList customSetupSectionDependencies }
toLibrary :: FilePath -> String -> Section global -> Section LibrarySection -> IO ([String], Section Library)
-toLibrary dir name globalOptions library = traverse fromLibrarySection sect >>= expandCSources dir
+toLibrary dir name globalOptions library = traverse fromLibrarySection sect >>= expandForeignSources dir
where
sect :: Section LibrarySection
sect = mergeSections globalOptions library
@@ -693,7 +732,7 @@
toExecutables :: FilePath -> Section global -> [(String, Section ExecutableSection)] -> IO ([String], [Section Executable])
toExecutables dir globalOptions executables = do
- result <- mapM toExecutable sections >>= mapM (expandCSources dir)
+ result <- mapM toExecutable sections >>= mapM (expandForeignSources dir)
let (warnings, xs) = unzip result
return (concat warnings, xs)
where
@@ -724,9 +763,11 @@
, sectionOtherExtensions = sectionOtherExtensions globalOptions ++ sectionOtherExtensions options
, sectionGhcOptions = sectionGhcOptions globalOptions ++ sectionGhcOptions options
, sectionGhcProfOptions = sectionGhcProfOptions globalOptions ++ sectionGhcProfOptions options
+ , sectionGhcjsOptions = sectionGhcjsOptions globalOptions ++ sectionGhcjsOptions options
, sectionCppOptions = sectionCppOptions globalOptions ++ sectionCppOptions options
, sectionCcOptions = sectionCcOptions globalOptions ++ sectionCcOptions options
, sectionCSources = sectionCSources globalOptions ++ sectionCSources options
+ , sectionJsSources = sectionJsSources globalOptions ++ sectionJsSources options
, sectionExtraLibDirs = sectionExtraLibDirs globalOptions ++ sectionExtraLibDirs options
, sectionExtraLibraries = sectionExtraLibraries globalOptions ++ sectionExtraLibraries options
, sectionIncludeDirs = sectionIncludeDirs globalOptions ++ sectionIncludeDirs options
@@ -748,9 +789,11 @@
, sectionOtherExtensions = fromMaybeList commonOptionsOtherExtensions
, sectionGhcOptions = fromMaybeList commonOptionsGhcOptions
, sectionGhcProfOptions = fromMaybeList commonOptionsGhcProfOptions
+ , sectionGhcjsOptions = fromMaybeList commonOptionsGhcjsOptions
, sectionCppOptions = fromMaybeList commonOptionsCppOptions
, sectionCcOptions = fromMaybeList commonOptionsCcOptions
, sectionCSources = fromMaybeList commonOptionsCSources
+ , sectionJsSources = fromMaybeList commonOptionsJsSources
, sectionExtraLibDirs = fromMaybeList commonOptionsExtraLibDirs
, sectionExtraLibraries = fromMaybeList commonOptionsExtraLibraries
, sectionIncludeDirs = fromMaybeList commonOptionsIncludeDirs
@@ -779,12 +822,12 @@
determineModules :: String -> [String] -> Maybe (List String) -> Maybe (List String) -> ([String], [String])
determineModules name modules mExposedModules mOtherModules = case (mExposedModules, mOtherModules) of
- (Nothing, Nothing) -> (modules, [])
+ (Nothing, Nothing) -> (modules, [pathsModuleFromPackageName name])
_ -> (exposedModules, otherModules)
- where
- otherModules = maybe ((modules \\ exposedModules) ++ pathsModule) fromList mOtherModules
- exposedModules = maybe (modules \\ otherModules) fromList mExposedModules
- pathsModule = [pathsModuleFromPackageName name] \\ exposedModules
+ where
+ otherModules = maybe ((modules \\ exposedModules) ++ pathsModule) fromList mOtherModules
+ exposedModules = maybe (modules \\ otherModules) fromList mExposedModules
+ pathsModule = [pathsModuleFromPackageName name] \\ exposedModules
getModules :: FilePath -> FilePath -> IO [String]
getModules dir src_ = sort <$> do
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.17.1/src/Hpack/Options.hs new/hpack-0.18.1/src/Hpack/Options.hs
--- old/hpack-0.17.1/src/Hpack/Options.hs 1970-01-01 01:00:00.000000000 +0100
+++ new/hpack-0.18.1/src/Hpack/Options.hs 2017-06-24 02:59:33.000000000 +0200
@@ -0,0 +1,33 @@
+module Hpack.Options where
+
+import Prelude ()
+import Prelude.Compat
+
+data ParseResult = Help | PrintVersion | Run Options | ParseError
+ deriving (Eq, Show)
+
+data Options = Options {
+ optionsVerbose :: Bool
+, optionsToStdout :: Bool
+, optionsTarget :: Maybe FilePath
+} deriving (Eq, Show)
+
+parseOptions :: [String] -> ParseResult
+parseOptions xs = case xs of
+ ["--version"] -> PrintVersion
+ ["--help"] -> Help
+ _ -> case targets of
+ Just (target, toStdout) -> Run (Options verbose toStdout target)
+ Nothing -> ParseError
+ where
+ silentFlag = "--silent"
+ verbose = not (silentFlag `elem` xs)
+ ys = filter (/= silentFlag) xs
+
+ targets = case ys of
+ ["-"] -> Just (Nothing, True)
+ ["-", "-"] -> Nothing
+ [dir] -> Just (Just dir, False)
+ [dir, "-"] -> Just (Just dir, True)
+ [] -> Just (Nothing, False)
+ _ -> Nothing
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.17.1/src/Hpack/Run.hs new/hpack-0.18.1/src/Hpack/Run.hs
--- old/hpack-0.17.1/src/Hpack/Run.hs 2017-06-08 05:34:06.000000000 +0200
+++ new/hpack-0.18.1/src/Hpack/Run.hs 2017-06-24 02:59:33.000000000 +0200
@@ -34,9 +34,10 @@
import Hpack.Render
import Hpack.FormattingHints
-run :: FilePath -> IO ([String], FilePath, String)
-run dir = do
- mPackage <- readPackageConfig (dir </> packageConfig)
+run :: Maybe FilePath -> FilePath -> IO ([String], FilePath, String)
+run mDir c = do
+ let dir = fromMaybe "" mDir
+ mPackage <- readPackageConfig (dir </> c)
case mPackage of
Right (warnings, pkg) -> do
let cabalFile = dir </> (packageName pkg ++ ".cabal")
@@ -105,7 +106,9 @@
, ("maintainer", formatList packageMaintainer)
, ("copyright", formatList packageCopyright)
, ("license", packageLicense)
- , ("license-file", packageLicenseFile)
+ , case packageLicenseFile of
+ [file] -> ("license-file", Just file)
+ files -> ("license-files", formatList files)
, ("tested-with", packageTestedWith)
, ("build-type", Just (show packageBuildType))
, ("cabal-version", cabalVersion)
@@ -219,11 +222,13 @@
, renderOtherExtensions sectionOtherExtensions
, renderGhcOptions sectionGhcOptions
, renderGhcProfOptions sectionGhcProfOptions
+ , renderGhcjsOptions sectionGhcjsOptions
, renderCppOptions sectionCppOptions
, renderCcOptions sectionCcOptions
, renderDirectories "include-dirs" sectionIncludeDirs
, Field "install-includes" (LineSeparatedList sectionInstallIncludes)
, Field "c-sources" (LineSeparatedList sectionCSources)
+ , Field "js-sources" (LineSeparatedList sectionJsSources)
, renderDirectories "extra-lib-dirs" sectionExtraLibDirs
, Field "extra-libraries" (LineSeparatedList sectionExtraLibraries)
, renderLdOptions sectionLdOptions
@@ -269,6 +274,9 @@
renderGhcProfOptions :: [GhcProfOption] -> Element
renderGhcProfOptions = Field "ghc-prof-options" . WordList
+renderGhcjsOptions :: [GhcjsOption] -> Element
+renderGhcjsOptions = Field "ghcjs-options" . WordList
+
renderCppOptions :: [CppOption] -> Element
renderCppOptions = Field "cpp-options" . WordList
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.17.1/src/Hpack/Util.hs new/hpack-0.18.1/src/Hpack/Util.hs
--- old/hpack-0.17.1/src/Hpack/Util.hs 2017-06-08 05:34:06.000000000 +0200
+++ new/hpack-0.18.1/src/Hpack/Util.hs 2017-06-24 02:59:33.000000000 +0200
@@ -3,6 +3,7 @@
List(..)
, GhcOption
, GhcProfOption
+, GhcjsOption
, CppOption
, CcOption
, LdOption
@@ -18,7 +19,6 @@
import Prelude ()
import Prelude.Compat
-import Control.Applicative
import Control.Exception
import Control.Monad.Compat
import Data.Aeson.Types
@@ -54,6 +54,7 @@
type GhcOption = String
type GhcProfOption = String
+type GhcjsOption = String
type CppOption = String
type CcOption = String
type LdOption = String
@@ -77,7 +78,15 @@
toModule path = case reverse path of
[] -> Nothing
x : xs -> do
- m <- stripSuffix ".hs" x <|> stripSuffix ".lhs" x <|> stripSuffix ".hsc" x
+ m <- msum $ map (`stripSuffix` x) [
+ ".hs"
+ , ".lhs"
+ , ".chs"
+ , ".hsc"
+ , ".y"
+ , ".ly"
+ , ".x"
+ ]
let name = reverse (m : xs)
guard (isModule name) >> return (intercalate "." name)
where
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.17.1/src/Hpack.hs new/hpack-0.18.1/src/Hpack.hs
--- old/hpack-0.17.1/src/Hpack.hs 2017-06-08 05:34:06.000000000 +0200
+++ new/hpack-0.18.1/src/Hpack.hs 2017-06-24 02:59:33.000000000 +0200
@@ -8,9 +8,9 @@
, main
#ifdef TEST
, hpackWithVersion
-, parseVerbosity
, extractVersion
, parseVersion
+, splitDirectory
#endif
) where
@@ -28,9 +28,12 @@
import System.Environment
import System.Exit
import System.IO
+import System.FilePath
+import System.Directory
import Text.ParserCombinators.ReadP
import Paths_hpack (version)
+import Hpack.Options
import Hpack.Config
import Hpack.Run
import Hpack.Util
@@ -38,9 +41,9 @@
programVersion :: Version -> String
programVersion v = "hpack version " ++ Version.showVersion v
-header :: Version -> String
-header v = unlines [
- "-- This file has been generated from " ++ packageConfig ++ " by " ++ programVersion v ++ "."
+header :: FilePath -> Version -> String
+header p v = unlines [
+ "-- This file has been generated from " ++ p ++ " by " ++ programVersion v ++ "."
, "--"
, "-- see: https://github.com/sol/hpack"
, ""
@@ -49,30 +52,23 @@
main :: IO ()
main = do
args <- getArgs
- case args of
- ["--version"] -> putStrLn (programVersion version)
- ["--help"] -> printHelp
- _ -> case parseVerbosity args of
- (verbose, [dir]) -> hpack dir verbose
- (verbose, []) -> hpack "" verbose
- _ -> do
- printHelp
- exitFailure
+ case parseOptions args of
+ PrintVersion -> putStrLn (programVersion version)
+ Help -> printHelp
+ Run options -> case options of
+ Options _verbose True dir -> hpackStdOut dir
+ Options verbose False dir -> hpack dir verbose
+ ParseError -> do
+ printHelp
+ exitFailure
printHelp :: IO ()
printHelp = do
hPutStrLn stderr $ unlines [
- "Usage: hpack [ --silent ] [ dir ]"
+ "Usage: hpack [ --silent ] [ dir ] [ - ]"
, " hpack --version"
]
-parseVerbosity :: [String] -> (Bool, [String])
-parseVerbosity xs = (verbose, ys)
- where
- silentFlag = "--silent"
- verbose = not (silentFlag `elem` xs)
- ys = filter (/= silentFlag) xs
-
safeInit :: [a] -> [a]
safeInit [] = []
safeInit xs = init xs
@@ -87,10 +83,10 @@
[v] -> Just v
_ -> Nothing
-hpack :: FilePath -> Bool -> IO ()
+hpack :: Maybe FilePath -> Bool -> IO ()
hpack = hpackWithVersion version
-hpackResult :: FilePath -> IO Result
+hpackResult :: Maybe FilePath -> IO Result
hpackResult = hpackWithVersionResult version
data Result = Result {
@@ -101,19 +97,35 @@
data Status = Generated | AlreadyGeneratedByNewerHpack | OutputUnchanged
-hpackWithVersion :: Version -> FilePath -> Bool -> IO ()
-hpackWithVersion v dir verbose = do
- r <- hpackWithVersionResult v dir
- forM_ (resultWarnings r) $ \warning -> hPutStrLn stderr ("WARNING: " ++ warning)
+hpackWithVersion :: Version -> Maybe FilePath -> Bool -> IO ()
+hpackWithVersion v p verbose = do
+ r <- hpackWithVersionResult v p
+ printWarnings (resultWarnings r)
when verbose $ putStrLn $
case resultStatus r of
Generated -> "generated " ++ resultCabalFile r
OutputUnchanged -> resultCabalFile r ++ " is up-to-date"
AlreadyGeneratedByNewerHpack -> resultCabalFile r ++ " was generated with a newer version of hpack, please upgrade and try again."
-hpackWithVersionResult :: Version -> FilePath -> IO Result
-hpackWithVersionResult v dir = do
- (warnings, cabalFile, new) <- run dir
+printWarnings :: [String] -> IO ()
+printWarnings warnings = do
+ forM_ warnings $ \warning -> hPutStrLn stderr ("WARNING: " ++ warning)
+
+splitDirectory :: Maybe FilePath -> IO (Maybe FilePath, FilePath)
+splitDirectory Nothing = return (Nothing, packageConfig)
+splitDirectory (Just p) = do
+ isDirectory <- doesDirectoryExist p
+ return $ if isDirectory
+ then (Just p, packageConfig)
+ else let
+ file = takeFileName p
+ dir = takeDirectory p
+ in (guard (p /= file) >> Just dir, if null file then packageConfig else file)
+
+hpackWithVersionResult :: Version -> Maybe FilePath -> IO Result
+hpackWithVersionResult v p = do
+ (dir, file) <- splitDirectory p
+ (warnings, cabalFile, new) <- run dir file
old <- fmap splitHeader <$> tryReadFile cabalFile
let oldVersion = fmap fst old >>= extractVersion
status <-
@@ -121,7 +133,7 @@
if (fmap snd old == Just (lines new)) then
return OutputUnchanged
else do
- B.writeFile cabalFile $ encodeUtf8 $ T.pack $ header v ++ new
+ B.writeFile cabalFile $ encodeUtf8 $ T.pack $ header file v ++ new
return Generated
else
return AlreadyGeneratedByNewerHpack
@@ -133,3 +145,10 @@
where
splitHeader :: String -> ([String], [String])
splitHeader = fmap (dropWhile null) . span ("--" `isPrefixOf`) . lines
+
+hpackStdOut :: Maybe FilePath -> IO ()
+hpackStdOut p = do
+ (dir, file) <- splitDirectory p
+ (warnings, _cabalFile, new) <- run dir file
+ B.putStr $ encodeUtf8 $ T.pack new
+ printWarnings warnings
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.17.1/test/Hpack/ConfigSpec.hs new/hpack-0.18.1/test/Hpack/ConfigSpec.hs
--- old/hpack-0.17.1/test/Hpack/ConfigSpec.hs 2017-06-08 05:34:06.000000000 +0200
+++ new/hpack-0.18.1/test/Hpack/ConfigSpec.hs 2017-06-24 02:59:33.000000000 +0200
@@ -6,7 +6,6 @@
, package
, executable
-, library
) where
import Helper
@@ -30,7 +29,7 @@
executable name main_ = Executable name main_ []
library :: Library
-library = Library Nothing [] [] []
+library = Library Nothing [] ["Paths_foo"] []
withPackage :: String -> IO () -> (([String], Package) -> Expectation) -> Expectation
withPackage content beforeAction expectation = withTempDirectory $ \dir_ -> do
@@ -117,6 +116,15 @@
captureUnknownFieldsValue <$> decodeEither input
`shouldBe` Right (section Empty){sectionCSources = ["foo.c", "bar/*.c"]}
+ it "accepts js-sources" $ do
+ let input = [i|
+ js-sources:
+ - foo.js
+ - bar/*.js
+ |]
+ captureUnknownFieldsValue <$> decodeEither input
+ `shouldBe` Right (section Empty){sectionJsSources = ["foo.js", "bar/*.js"]}
+
it "accepts extra-lib-dirs" $ do
let input = [i|
extra-lib-dirs:
@@ -296,6 +304,9 @@
it "adds the Paths_* module to the other-modules" $ do
determineModules "foo" [] (Just $ List ["Foo"]) Nothing `shouldBe` (["Foo"], ["Paths_foo"])
+ it "adds the Paths_* module to the other-modules when no modules are specified" $ do
+ determineModules "foo" [] Nothing Nothing `shouldBe` ([], ["Paths_foo"])
+
it "replaces dashes with underscores in Paths_*" $ do
determineModules "foo-bar" [] (Just $ List ["Foo"]) Nothing `shouldBe` (["Foo"], ["Paths_foo_bar"])
@@ -470,13 +481,19 @@
(do
touch "LICENSE"
)
- (packageLicenseFile >>> (`shouldBe` Just "LICENSE"))
+ (packageLicenseFile >>> (`shouldBe` ["LICENSE"]))
it "accepts license file" $ do
withPackageConfig_ [i|
license-file: FOO
|]
- (packageLicenseFile >>> (`shouldBe` Just "FOO"))
+ (packageLicenseFile >>> (`shouldBe` ["FOO"]))
+
+ it "accepts list of license files" $ do
+ withPackageConfig_ [i|
+ license-file: [FOO, BAR]
+ |]
+ (packageLicenseFile >>> (`shouldBe` ["FOO", "BAR"]))
it "accepts build-type: Simple" $ do
withPackageConfig_ [i|
@@ -619,6 +636,30 @@
}
)
+ it "accepts ghcjs-options" $ do
+ withPackageConfig_ [i|
+ ghcjs-options: -dedupe
+ library:
+ ghcjs-options: -ghcjs1
+
+ executables:
+ foo:
+ main: Main.hs
+ ghcjs-options: -ghcjs2
+
+
+ tests:
+ spec:
+ main: Spec.hs
+ ghcjs-options: -ghcjs3
+ |]
+ (`shouldBe` package {
+ packageLibrary = Just (section library) {sectionGhcjsOptions = ["-dedupe", "-ghcjs1"]}
+ , packageExecutables = [(section $ executable "foo" "Main.hs") {sectionGhcjsOptions = ["-dedupe", "-ghcjs2"]}]
+ , packageTests = [(section $ executable "spec" "Spec.hs") {sectionGhcjsOptions = ["-dedupe", "-ghcjs3"]}]
+ }
+ )
+
it "accepts ld-options" $ do
withPackageConfig_ [i|
library:
@@ -787,6 +828,30 @@
)
(packageLibrary >>> (`shouldBe` Just (section library) {sectionCSources = ["cbits/bar.c", "cbits/foo.c"]}))
+ it "accepts js-sources" $ do
+ withPackageConfig [i|
+ library:
+ js-sources:
+ - jsbits/*.js
+ |]
+ (do
+ touch "jsbits/foo.js"
+ touch "jsbits/bar.js"
+ )
+ (packageLibrary >>> (`shouldBe` Just (section library) {sectionJsSources = ["jsbits/bar.js", "jsbits/foo.js"]}))
+
+ it "accepts global js-sources" $ do
+ withPackageConfig [i|
+ js-sources:
+ - jsbits/*.js
+ library: {}
+ |]
+ (do
+ touch "jsbits/foo.js"
+ touch "jsbits/bar.js"
+ )
+ (packageLibrary >>> (`shouldBe` Just (section library) {sectionJsSources = ["jsbits/bar.js", "jsbits/foo.js"]}))
+
it "allows to specify exposed" $ do
withPackageConfig_ [i|
library:
@@ -865,7 +930,7 @@
]
)
- it "reads executable section" $ do
+ it "reads executables section" $ do
withPackageConfig_ [i|
executables:
foo:
@@ -873,6 +938,44 @@
|]
(packageExecutables >>> (`shouldBe` [section $ executable "foo" "driver/Main.hs"]))
+ it "reads executable section" $ do
+ withPackageConfig_ [i|
+ executable:
+ main: driver/Main.hs
+ |]
+ (packageExecutables >>> (`shouldBe` [section $ executable "foo" "driver/Main.hs"]))
+
+ it "warns on unknown executable fields" $ do
+ withPackageWarnings_ [i|
+ name: foo
+ executable:
+ main: Main.hs
+ unknown: true
+ |]
+ (`shouldBe` ["Ignoring unknown field \"unknown\" in executable section"])
+
+ context "with both executable and executables" $ do
+ it "gives executable precedence" $ do
+ withPackageConfig_ [i|
+ executable:
+ main: driver/Main1.hs
+ executables:
+ foo2:
+ main: driver/Main2.hs
+ |]
+ (packageExecutables >>> (`shouldBe` [section $ executable "foo" "driver/Main1.hs"]))
+
+ it "warns" $ do
+ withPackageWarnings_ [i|
+ name: foo
+ executable:
+ main: driver/Main1.hs
+ executables:
+ foo2:
+ main: driver/Main2.hs
+ |]
+ (`shouldBe` ["Ignoring field \"executables\" in favor of \"executable\""])
+
it "accepts arbitrary entry points as main" $ do
withPackageConfig_ [i|
executables:
@@ -1041,6 +1144,50 @@
)
(`shouldBe` package {packageExecutables = [(section $ executable "foo" "driver/Main.hs") {sectionCSources = ["cbits/bar.c", "cbits/foo.c"]}]})
+ it "accepts js-sources" $ do
+ withPackageConfig [i|
+ executables:
+ foo:
+ main: driver/Main.hs
+ js-sources:
+ - jsbits/*.js
+ |]
+ (do
+ touch "jsbits/foo.js"
+ touch "jsbits/bar.js"
+ )
+ (`shouldBe` package {packageExecutables = [(section $ executable "foo" "driver/Main.hs") {sectionJsSources = ["jsbits/bar.js", "jsbits/foo.js"]}]})
+
+ it "accepts global js-sources" $ do
+ withPackageConfig [i|
+ js-sources:
+ - jsbits/*.js
+ executables:
+ foo:
+ main: driver/Main.hs
+ |]
+ (do
+ touch "jsbits/foo.js"
+ touch "jsbits/bar.js"
+ )
+ (`shouldBe` package {packageExecutables = [(section $ executable "foo" "driver/Main.hs") {sectionJsSources = ["jsbits/bar.js", "jsbits/foo.js"]}]})
+
+ context "when reading benchmark section" $ do
+ it "warns on unknown fields" $ do
+ withPackageWarnings_ [i|
+ name: foo
+ benchmarks:
+ foo:
+ main: Main.hs
+ bar: 42
+ baz: 23
+ |]
+ (`shouldBe` [
+ "Ignoring unknown field \"bar\" in benchmark section \"foo\""
+ , "Ignoring unknown field \"baz\" in benchmark section \"foo\""
+ ]
+ )
+
context "when reading test section" $ do
it "warns on unknown fields" $ do
withPackageWarnings_ [i|
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.17.1/test/Hpack/OptionsSpec.hs new/hpack-0.18.1/test/Hpack/OptionsSpec.hs
--- old/hpack-0.17.1/test/Hpack/OptionsSpec.hs 1970-01-01 01:00:00.000000000 +0100
+++ new/hpack-0.18.1/test/Hpack/OptionsSpec.hs 2017-06-24 02:59:33.000000000 +0200
@@ -0,0 +1,41 @@
+module Hpack.OptionsSpec (spec) where
+
+import Helper
+
+import Prelude ()
+import Prelude.Compat
+
+import Hpack.Options
+
+spec :: Spec
+spec = do
+ describe "parseOptions" $ do
+ context "with --help" $ do
+ it "returns Help" $ do
+ parseOptions ["--help"] `shouldBe` Help
+
+ context "with --version" $ do
+ it "returns PrintVersion" $ do
+ parseOptions ["--version"] `shouldBe` PrintVersion
+
+ context "by default" $ do
+ it "returns Run" $ do
+ parseOptions [] `shouldBe` Run (Options True False Nothing)
+
+ it "includes target" $ do
+ parseOptions ["foo"] `shouldBe` Run (Options True False (Just "foo"))
+
+ context "with superfluous arguments" $ do
+ it "returns ParseError" $ do
+ parseOptions ["foo", "bar"] `shouldBe` ParseError
+
+ context "with --silent" $ do
+ it "sets optionsVerbose to False" $ do
+ parseOptions ["--silent"] `shouldBe` Run (Options False False Nothing)
+
+ context "with -" $ do
+ it "sets optionsToStdout to True" $ do
+ parseOptions ["-"] `shouldBe` Run (Options True True Nothing)
+
+ it "rejects - for target" $ do
+ parseOptions ["-", "-"] `shouldBe` ParseError
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.17.1/test/Hpack/RunSpec.hs new/hpack-0.18.1/test/Hpack/RunSpec.hs
--- old/hpack-0.17.1/test/Hpack/RunSpec.hs 2017-06-08 05:34:06.000000000 +0200
+++ new/hpack-0.18.1/test/Hpack/RunSpec.hs 2017-06-24 02:59:33.000000000 +0200
@@ -1,7 +1,7 @@
{-# LANGUAGE OverloadedStrings #-}
module Hpack.RunSpec (spec) where
-import Test.Hspec
+import Helper
import Data.List.Compat
import Hpack.ConfigSpec hiding (spec)
@@ -9,6 +9,9 @@
import Hpack.Render
import Hpack.Run
+library :: Library
+library = Library Nothing [] [] []
+
spec :: Spec
spec = do
describe "renderPackage" $ do
@@ -60,6 +63,25 @@
, "cabal-version: >= 1.10"
]
+ it "includes license-file" $ do
+ renderPackage_ package {packageLicenseFile = ["FOO"]} `shouldBe` unlines [
+ "name: foo"
+ , "version: 0.0.0"
+ , "license-file: FOO"
+ , "build-type: Simple"
+ , "cabal-version: >= 1.10"
+ ]
+
+ it "aligns license-files" $ do
+ renderPackage defaultRenderSettings 16 [] [] package {packageLicenseFile = ["FOO", "BAR"]} `shouldBe` unlines [
+ "name: foo"
+ , "version: 0.0.0"
+ , "license-files: FOO,"
+ , " BAR"
+ , "build-type: Simple"
+ , "cabal-version: >= 1.10"
+ ]
+
it "includes copyright holder" $ do
renderPackage_ package {packageCopyright = ["(c) 2015 Simon Hengel"]} `shouldBe` unlines [
"name: foo"
@@ -244,6 +266,7 @@
, " ghc-prof-options: -fprof-auto -rtsopts"
, " default-language: Haskell2010"
]
+
describe "renderConditional" $ do
it "renders conditionals" $ do
let conditional = Conditional "os(windows)" (section ()) {sectionDependencies = ["Win32"]} Nothing
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/hpack-0.17.1/test/HpackSpec.hs new/hpack-0.18.1/test/HpackSpec.hs
--- old/hpack-0.17.1/test/HpackSpec.hs 2017-06-08 05:34:06.000000000 +0200
+++ new/hpack-0.18.1/test/HpackSpec.hs 2017-06-24 02:59:33.000000000 +0200
@@ -1,5 +1,7 @@
module HpackSpec (spec) where
+import Helper
+
import Prelude ()
import Prelude.Compat
@@ -7,8 +9,6 @@
import Control.DeepSeq
import Data.Version (Version(..), showVersion)
-import Test.Hspec
-import Test.Mockery.Directory
import Test.QuickCheck
import Hpack
@@ -18,14 +18,6 @@
spec :: Spec
spec = do
- describe "parseVerbosity" $ do
- it "returns True by default" $ do
- parseVerbosity ["foo"] `shouldBe` (True, ["foo"])
-
- context "with --silent" $ do
- it "returns False" $ do
- parseVerbosity ["--silent"] `shouldBe` (False, [])
-
describe "extractVersion" $ do
it "extracts Hpack version from a cabal file" $ do
let cabalFile = ["-- This file has been generated from package.yaml by hpack version 0.10.0."]
@@ -47,9 +39,9 @@
it "does not write a new cabal file" $ do
inTempDirectory $ do
writeFile "package.yaml" "name: foo"
- hpackWithVersion (makeVersion [0,8,0]) "." False
+ hpackWithVersion (makeVersion [0,8,0]) Nothing False
old <- readFile "foo.cabal" >>= (return $!!)
- hpackWithVersion (makeVersion [0,10,0]) "." False
+ hpackWithVersion (makeVersion [0,10,0]) Nothing False
readFile "foo.cabal" `shouldReturn` old
context "when exsting cabal file was generated with a newer version of hpack" $ do
@@ -59,7 +51,7 @@
"name: foo"
, "version: 0.1.0"
]
- hpackWithVersion (makeVersion [0,10,0]) "." False
+ hpackWithVersion (makeVersion [0,10,0]) Nothing False
old <- readFile "foo.cabal" >>= (return $!!)
writeFile "package.yaml" $ unlines [
@@ -67,5 +59,43 @@
, "version: 0.2.0"
]
- hpackWithVersion (makeVersion [0,8,0]) "." False
+ hpackWithVersion (makeVersion [0,8,0]) Nothing False
readFile "foo.cabal" `shouldReturn` old
+
+ describe "splitDirectory" $ do
+ context "when given Nothing" $ do
+ it "defaults file name to package.yaml" $ do
+ splitDirectory Nothing `shouldReturn` (Nothing, "package.yaml")
+
+ context "when given a directory" $ do
+ it "defaults file name to package.yaml" $ do
+ withTempDirectory $ \dir -> do
+ splitDirectory (Just dir) `shouldReturn` (Just dir, "package.yaml")
+
+ context "when given a file name" $ do
+ it "defaults directory to Nothing" $ do
+ inTempDirectory $ do
+ touch "foo.yaml"
+ splitDirectory (Just "foo.yaml") `shouldReturn` (Nothing, "foo.yaml")
+
+ context "when given a path to a file" $ do
+ it "splits directory from file name" $ do
+ withTempDirectory $ \dir -> do
+ let file = dir </> "foo.yaml"
+ touch file
+ splitDirectory (Just file) `shouldReturn` (Just dir, "foo.yaml")
+
+ context "when path does not exist" $ do
+ it "defaults directory to Nothing" $ do
+ inTempDirectory $ do
+ splitDirectory (Just "test/foo.yaml") `shouldReturn` (Just "test", "foo.yaml")
+
+ context "when file does not exist" $ do
+ it "defaults directory to Nothing" $ do
+ inTempDirectory $ do
+ splitDirectory (Just "test") `shouldReturn` (Nothing, "test")
+
+ context "when directory does not exist" $ do
+ it "defaults directory to Nothing" $ do
+ inTempDirectory $ do
+ splitDirectory (Just "test/") `shouldReturn` (Just "test", "package.yaml")
1
0
Hello community,
here is the log from the commit of package hlint for openSUSE:Factory checked in at 2017-08-31 21:02:59
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/hlint (Old)
and /work/SRC/openSUSE:Factory/.hlint.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "hlint"
Thu Aug 31 21:02:59 2017 rev:13 rq:513570 version:2.0.9
Changes:
--------
--- /work/SRC/openSUSE:Factory/hlint/hlint.changes 2017-04-13 10:44:44.324238718 +0200
+++ /work/SRC/openSUSE:Factory/.hlint.new/hlint.changes 2017-08-31 21:03:00.916184048 +0200
@@ -1,0 +2,5 @@
+Thu Jul 27 14:04:59 UTC 2017 - psimons(a)suse.com
+
+- Update to version 2.0.9.
+
+-------------------------------------------------------------------
Old:
----
hlint-1.9.41.tar.gz
New:
----
hlint-2.0.9.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ hlint.spec ++++++
--- /var/tmp/diff_new_pack.HV0CD3/_old 2017-08-31 21:03:02.339984001 +0200
+++ /var/tmp/diff_new_pack.HV0CD3/_new 2017-08-31 21:03:02.379978381 +0200
@@ -18,7 +18,7 @@
%global pkg_name hlint
Name: %{pkg_name}
-Version: 1.9.41
+Version: 2.0.9
Release: 0
Summary: Source code suggestions
License: BSD-3-Clause
@@ -28,6 +28,7 @@
BuildRequires: chrpath
BuildRequires: ghc-Cabal-devel
BuildRequires: ghc-ansi-terminal-devel
+BuildRequires: ghc-bytestring-devel
BuildRequires: ghc-cmdargs-devel
BuildRequires: ghc-containers-devel
BuildRequires: ghc-cpphs-devel
@@ -39,8 +40,12 @@
BuildRequires: ghc-process-devel
BuildRequires: ghc-refact-devel
BuildRequires: ghc-rpm-macros
+BuildRequires: ghc-text-devel
BuildRequires: ghc-transformers-devel
BuildRequires: ghc-uniplate-devel
+BuildRequires: ghc-unordered-containers-devel
+BuildRequires: ghc-vector-devel
+BuildRequires: ghc-yaml-devel
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -87,10 +92,8 @@
%doc CHANGES.txt README.md
%{_bindir}/%{name}
%dir %{_datadir}/%{name}-%{version}
-%{_datadir}/%{name}-%{version}/Default.hs
-%{_datadir}/%{name}-%{version}/Generalise.hs
-%{_datadir}/%{name}-%{version}/Dollar.hs
-%{_datadir}/%{name}-%{version}/HLint.hs
+%{_datadir}/%{name}-%{version}/hlint.yaml
+%{_datadir}/%{name}-%{version}/default.yaml
%{_datadir}/%{name}-%{version}/Test.hs
%{_datadir}/%{name}-%{version}/report_template.html
%{_datadir}/%{name}-%{version}/hs-lint.el
++++++ hlint-1.9.41.tar.gz -> hlint-2.0.9.tar.gz ++++++
++++ 5292 lines of diff (skipped)
1
0