openSUSE Commits
Threads by month
- ----- 2025 -----
- 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
May 2012
- 1 participants
- 1423 discussions
Hello community,
here is the log from the commit of package texinfo for openSUSE:Factory checked in at 2012-05-31 17:10:51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/texinfo (Old)
and /work/SRC/openSUSE:Factory/.texinfo.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "texinfo", Maintainer is "werner(a)suse.com"
Changes:
--------
--- /work/SRC/openSUSE:Factory/texinfo/texinfo.changes 2012-02-10 17:46:46.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.texinfo.new/texinfo.changes 2012-05-31 17:11:09.000000000 +0200
@@ -1,0 +2,6 @@
+Tue May 29 13:37:27 UTC 2012 - puzel(a)suse.com
+
+- fix build with automake-1.12
+ - add: automake-1.12.patch
+
+-------------------------------------------------------------------
New:
----
automake-1.12.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ texinfo.spec ++++++
--- /var/tmp/diff_new_pack.6Tlq6I/_old 2012-05-31 17:11:11.000000000 +0200
+++ /var/tmp/diff_new_pack.6Tlq6I/_new 2012-05-31 17:11:11.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package texinfo
#
-# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -15,6 +15,7 @@
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
+
Name: texinfo
BuildRequires: automake
BuildRequires: help2man
@@ -23,13 +24,13 @@
BuildRequires: ncurses-devel
BuildRequires: perl-gettext
BuildRequires: zlib-devel
-License: GPL-2.0+ ; GPL-3.0+
-Group: Productivity/Publishing/Texinfo
Version: 4.13a
Release: 0
%global version_t2h 1.82
%global version_t2r 2.0
Summary: Tools Needed to Create Documentation from Texinfo Sources
+License: GPL-2.0+ ; GPL-3.0+
+Group: Productivity/Publishing/Texinfo
Url: http://www.texinfo.org
PreReq: %{install_info_prereq}
Provides: makeinfo = %{version}
@@ -50,6 +51,7 @@
Patch6: texi2roff-2.0-gcc4.patch
Patch7: texinfo-4.13a-bug640417.diff
Patch8: texinfo-4.13a-bug713517.diff
+Patch9: automake-1.12.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -81,8 +83,9 @@
Roland McGrath <roland(a)gnu.org>
%package -n info
-License: GPL-2.0+
Summary: A Stand-Alone Terminal-Based Info Browser
+License: GPL-2.0+
+Group: Productivity/Publishing/Texinfo
PreReq: bash zlib libzio
%description -n info
@@ -116,6 +119,7 @@
%patch5 -p0 -b .echo
%patch7 -p1 -b .size_t
%patch8 -p0 -b .egrep
+%patch9 -p1
%patch -p0
pushd ../texi2html-%{version_t2h}
%patch1 -p0
++++++ automake-1.12.patch ++++++
Index: texinfo-4.13/configure.ac
===================================================================
--- texinfo-4.13.orig/configure.ac
+++ texinfo-4.13/configure.ac
@@ -13,7 +13,7 @@ AC_INIT([GNU Texinfo], [4.13], [bug-texi
dnl Must come before AM_INIT_AUTOMAKE.
AC_CONFIG_AUX_DIR([build-aux])
-AM_INIT_AUTOMAKE([1.10.1 readme-alpha dist-lzma])
+AM_INIT_AUTOMAKE([1.10.1 readme-alpha dist-xz])
# Minimum Autoconf version required.
AC_PREREQ(2.59)
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package suspend for openSUSE:Factory checked in at 2012-05-31 17:10:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/suspend (Old)
and /work/SRC/openSUSE:Factory/.suspend.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "suspend", Maintainer is "hmacht(a)suse.com"
Changes:
--------
--- /work/SRC/openSUSE:Factory/suspend/suspend.changes 2012-05-10 14:34:50.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.suspend.new/suspend.changes 2012-05-31 17:10:46.000000000 +0200
@@ -1,0 +2,6 @@
+Mon May 21 11:36:07 UTC 2012 - badshah400(a)gmail.com
+
+- Use BuildRequires: libgnutls-devel instead of gnutls-devel for
+ Factory in keeping with gnutls package naming changes.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ suspend.spec ++++++
--- /var/tmp/diff_new_pack.pZ3z09/_old 2012-05-31 17:10:48.000000000 +0200
+++ /var/tmp/diff_new_pack.pZ3z09/_new 2012-05-31 17:10:48.000000000 +0200
@@ -18,7 +18,11 @@
Name: suspend
BuildRequires: glib2-devel
+%if 0%{?suse_version} > 1210
+BuildRequires: libgnutls-devel
+%else
BuildRequires: gnutls-devel
+%endif
BuildRequires: libgcrypt-devel
BuildRequires: libtool
BuildRequires: pciutils-devel
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package SuSEfirewall2 for openSUSE:Factory checked in at 2012-05-31 17:10:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/SuSEfirewall2 (Old)
and /work/SRC/openSUSE:Factory/.SuSEfirewall2.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "SuSEfirewall2", Maintainer is "lnussel(a)suse.com"
Changes:
--------
--- /work/SRC/openSUSE:Factory/SuSEfirewall2/SuSEfirewall2.changes 2011-11-07 15:56:52.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.SuSEfirewall2.new/SuSEfirewall2.changes 2012-05-31 17:10:40.000000000 +0200
@@ -1,0 +2,17 @@
+Tue May 29 13:16:20 UTC 2012 - lnussel(a)suse.de
+
+- fix typo spotted by Frederic
+
+-------------------------------------------------------------------
+Wed Jan 18 14:17:19 UTC 2012 - lnussel(a)suse.de
+
+- assume all interface names are correct (bnc#739084)
+
+-------------------------------------------------------------------
+Wed Dec 14 16:55:43 UTC 2011 - lnussel(a)suse.de
+
+- fix forward masquerading (bnc#736205)
+- compat syntax for negated options no longer works (bnc#660156, bnc#731088)
+- enhance debug mode
+
+-------------------------------------------------------------------
Old:
----
SuSEfirewall2-3.6.282.tar.bz2
SuSEfirewall2.rpmlintrc
New:
----
SuSEfirewall2-3.6.289.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ SuSEfirewall2.spec ++++++
--- /var/tmp/diff_new_pack.GJHq1k/_old 2012-05-31 17:10:42.000000000 +0200
+++ /var/tmp/diff_new_pack.GJHq1k/_new 2012-05-31 17:10:42.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package SuSEfirewall2
#
-# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -19,7 +19,7 @@
Name: SuSEfirewall2
-Version: 3.6.282
+Version: 3.6.289
Release: 1
License: GPL-2.0+
Group: Productivity/Networking/Security
++++++ SuSEfirewall2-3.6.282.tar.bz2 -> SuSEfirewall2-3.6.289.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/SuSEfirewall2-3.6.282/Makefile new/SuSEfirewall2-3.6.289/Makefile
--- old/SuSEfirewall2-3.6.282/Makefile 2011-11-07 11:55:00.000000000 +0100
+++ new/SuSEfirewall2-3.6.289/Makefile 2012-05-29 15:10:20.000000000 +0200
@@ -69,8 +69,8 @@
install -m 644 LICENCE $(DESTDIR)$(pkgdocdir)/
install -m 644 SuSEfirewall2.sysconfig $(DESTDIR)$(pkgdocdir)/
-dist:
- @./mktar
+package:
+ @./obs/mkpackage
doc:
$(MAKE) -C doc
@@ -78,4 +78,4 @@
clean:
rm -f $(ARCHIVE)
-.PHONY: clean doc dist install install_doc all
+.PHONY: clean doc package install install_doc all
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/SuSEfirewall2-3.6.282/SuSEfirewall2 new/SuSEfirewall2-3.6.289/SuSEfirewall2
--- old/SuSEfirewall2-3.6.282/SuSEfirewall2 2011-11-07 11:55:00.000000000 +0100
+++ new/SuSEfirewall2-3.6.289/SuSEfirewall2 2012-05-29 15:10:20.000000000 +0200
@@ -72,7 +72,7 @@
open open the specified services in the specified zone. You need to
restart SuSEfirewall2 for changes to take effect.
on add SuSEfirewall2 initscripts to boot process and start
- off remove SuSEefirwall2 initscripts from boot process and stop
+ off remove SuSEfirwall2 initscripts from boot process and stop
file FILENAME same as "start" but load alternate config file FILENAME
@@ -321,6 +321,10 @@
{
echo modprobe "$@"
}
+ syslog()
+ {
+ echo "# <$1> ${*:2}"
+ }
else
IPTABLES="$IPTABLES_BIN"
IP6TABLES="$IP6TABLES_BIN"
@@ -772,38 +776,6 @@
esac
}
-# set $dev to actual name of device $1
-getdevinfo()
-{
- local dev=
- local d="$1"
- local var="$2"
- if [ -d /sys/class/net/"$d" ]; then
- dev="$d"
- else
- local deprecatediface=
- if [ -x /sbin/getcfg-interface ]; then
- dev=`/sbin/getcfg-interface "$d"`
- elif [ -x "$hwdesc2iface" ]; then
- case "$d" in
- *-id-*) dev=`$hwdesc2iface id ${d#*-id-}`; deprecatediface=1 ;;
- *-bus-*) dev=`$hwdesc2iface bus ${d#*-bus-}`; deprecatediface=1 ;;
- esac
- fi
-
- if [ -z "$dev" -o ! -d /sys/class/net/"$dev" ]; then
- return 1
- fi
-
- if [ -n "$deprecatediface" ]; then
- warning "$var: the notation '$d' is deprecated. Please use '$dev' instead"
- fi
- fi
-
- echo "$dev"
- return 0
-}
-
setlock()
{
if [ "$remove_bootlock" -ne 0 ]; then
@@ -872,7 +844,6 @@
warning "ignoring deprecated interface 'auto' in $var"
continue
fi
- dev=`getdevinfo "$dev" "$var"` || continue
case "$dev" in *:*) continue; ;; esac
devs="$devs $dev"
@@ -928,6 +899,7 @@
{
local d z
local have_override=''
+ [ "${FW_AUTODETECT_INTERFACES:-yes}" = 'yes' ] || return
set -- /sys/class/net/*
for d in "$@"; do
test -d "$d" || continue
@@ -1071,7 +1043,6 @@
continue
fi
fi
- dev=`getdevinfo "$dev" FW_MASQ_DEV` || continue
case "$dev" in *:*) continue; ;; esac
devs="$devs $dev"
@@ -1873,10 +1844,34 @@
fi
}
+# construct -s/-d pairs with correct negation
+net2srcdst()
+{
+ local name="$1"
+ local value=${2#\!}
+ if [ -z "$value" ]; then
+ echo "${name}_src="
+ echo "${name}_dst="
+ echo "${name}_neg="
+ return
+ fi
+ local neg=
+ if [ "$2" != "$value" ]; then
+ neg='! '
+ echo "${name}_neg=1"
+ else
+ echo "${name}_neg="
+ fi
+ echo "${name}_src=\"$neg-s $value\""
+ echo "${name}_dst=\"$neg-d $value\""
+}
+
# redirect packets from one port to another, opens ports in input_*
redirect_rules()
{
- local chain nets net1 net2 proto port1 port2
+ local chain nets proto port1 port2
+ local net1 net1_neg net1_src net1_dst
+ local net2 net2_neg net2_src net2_dst
local redirectinstalled
for nets in $FW_REDIRECT; do
IFS=, eval set -- \$nets
@@ -1900,10 +1895,10 @@
if [ -n "$port2" ]; then
port2="--to-ports $port2"
fi
- net1=${net1/\!/\! }
- net2=${net2/\!/\! }
- $IPTABLES -A PREROUTING -t mangle -j MARK -p $proto -s $net1 -d $net2 $port1 --set-mark $mark_redir
- $IPTABLES -A PREROUTING -t nat -j REDIRECT -p $proto -s $net1 -d $net2 $port1 $port2
+ eval `net2srcdst net1 "$net1"`
+ eval `net2srcdst net2 "$net2"`
+ $IPTABLES -A PREROUTING -t mangle -j MARK -p $proto $net1_src $net2_dst $port1 --set-mark $mark_redir
+ $IPTABLES -A PREROUTING -t nat -j REDIRECT -p $proto $net1_src $net2_dst $port1 $port2
redirectinstalled=1
fi
done
@@ -2051,7 +2046,9 @@
masquerading_rules()
{
- local nets net1 net2 proto port dev snet2 sport
+ local nets proto port dev sport
+ local net1 net1_neg net1_src net1_dst
+ local net2 net2_neg net2_src net2_dst
local szone dzone sdev sdevs
local z d
local var='FW_NOMASQ_NETS'
@@ -2073,20 +2070,14 @@
elif [ -z "$net1" ]; then
error "source network must not be empty in $var -> $nets"
elif check_proto_port "$proto" "$port" '' "$var"; then
- net1=${net1/\!/\! }
- net2=${net2/\!/\! }
- snet2=""
- if [ -n "$net2" ]; then
- snet2="-s $net2"
- net2="-d $net2"
- fi
-
+ eval `net2srcdst net1 "$net1"`
+ eval `net2srcdst net2 "$net2"`
for dev in $FW_MASQ_DEV; do
d=${dev//[^A-Za-z0-9]/_}
eval z=\${iface_$d}
if [ "$var" = "FW_NOMASQ_NETS" ]; then # cheap hack
- $IPTABLES -A POSTROUTING -j ACCEPT -t nat -s $net1 $net2 $proto $port -o $dev
+ $IPTABLES -A POSTROUTING -j ACCEPT -t nat $net1_src $net2_dst $proto $port -o $dev
continue
fi
@@ -2099,19 +2090,19 @@
[ "$sdev" = "$dev" ] && continue
if [ "forward_$z" != "$dzone" ]; then
#echo "$dzone: $sdev ($szone) -> $dev ($z)"
- $LAA $IPTABLES -A $dzone ${LOG}"-`rulelog $dzone`-ACC-MASQ " -s $net1 $net2 $proto $port -i $sdev -o $dev
- $IPTABLES -A $dzone -j "$ACCEPT" -m conntrack --ctstate NEW,ESTABLISHED,RELATED -s $net1 $net2 $proto $port -i $sdev -o $dev
+ $LAA $IPTABLES -A $dzone ${LOG}"-`rulelog $dzone`-ACC-MASQ " $net1_src $net2_dst $proto $port -i $sdev -o $dev
+ $IPTABLES -A $dzone -j "$ACCEPT" -m conntrack --ctstate NEW,ESTABLISHED,RELATED $net1_src $net2_dst $proto $port -i $sdev -o $dev
else
#echo "$dzone: $sdev ($szone) <- $dev ($z)"
# we need to allow the replies as well
- $LAA $IPTABLES -A $dzone -d $net1 $snet2 $proto $rport -i $dev -o $sdev ${LOG}"-`rulelog $dzone`-ACC-MASQ " -m conntrack --ctstate ESTABLISHED,RELATED
- $IPTABLES -A $dzone -d $net1 $snet2 $proto $rport -i $dev -o $sdev -j "$ACCEPT" -m conntrack --ctstate ESTABLISHED,RELATED
+ $LAA $IPTABLES -A $dzone $net1_dst $net2_src $proto $rport -i $dev -o $sdev ${LOG}"-`rulelog $dzone`-ACC-MASQ " -m conntrack --ctstate ESTABLISHED,RELATED
+ $IPTABLES -A $dzone $net1_dst $net2_src $proto $rport -i $dev -o $sdev -j "$ACCEPT" -m conntrack --ctstate ESTABLISHED,RELATED
fi
done
done
done
- $IPTABLES -A POSTROUTING -j MASQUERADE -t nat -s $net1 $net2 $proto $port -o $dev
+ $IPTABLES -A POSTROUTING -j MASQUERADE -t nat $net1_src $net2_dst $proto $port -o $dev
done
fi
done
@@ -2122,19 +2113,21 @@
# <source network>,<destination>,<protocol>,<port>,<ip to forward to>,<redirect port>
forward_masquerading_rules()
{
- local nets net1 net2 proto port1 port2 lip
+ local nets proto port1 port2 lip
+ local net1 net1_neg net1_src net1_dst
+ local net2 net2_neg net2_src net2_dst
for nets in $FW_FORWARD_MASQ; do
IFS=, eval set -- \$nets
net1="$1"
- net2="$2"
+ target="$2"
proto="$3"
port1="$4"
port2="$5"
- lip="$6"
+ net2="$6"
- case "$net2" in
- */*|'')
+ case "$target" in
+ */*|\!*|'')
error "target must be a single host in FW_FORWARD_MASQ -> $nets"
continue
;;
@@ -2149,29 +2142,29 @@
elif [ -z "$port1" ]; then
error "Port missing in FW_FORWARD_MASQ -> $nets"
else
- net1=${net1/\!/\! }
- net2=${net2/\!/\! }
+ eval `net2srcdst net1 "$net1"`
+ eval `net2srcdst net2 "$net2"`
+ eval `net2srcdst target "$target"`
proto="-p $proto"
test -z "$port2" && port2="$port1"
port1="--dport $port1"
dport2="--dport $port2"
port2=":${port2/:/-}"
- test -n "$lip" && lip="-d $lip"
for dev in $FW_MASQ_DEV; do
- $IPTABLES -A PREROUTING -j DNAT -t nat $proto -s $net1 $lip $port1 --to-destination ${net2}${port2} -i $dev
+ $IPTABLES -A PREROUTING -j DNAT -t nat $proto $net1_src $net2_dst $port1 --to-destination ${target}${port2} -i $dev
# to install minimal rule set we'd need to check if
# $net1 is covered by $FW_MASQ_NETS. Not feasible in
# bash code so just check for 0/0
if [ "$FW_MASQ_NETS" != "0/0" ]; then
- $IPTABLES -A POSTROUTING -j MASQUERADE -t nat -s $net1 -d $net2 $proto $dport2 -o $dev
+ $IPTABLES -A POSTROUTING -j MASQUERADE -t nat $net1_src $net2_dst $proto $dport2 -o $dev
fi
done
for chain in $forward_zones; do
chain=forward_$chain
- $LAC $IPTABLES -A $chain ${LOG}"-`rulelog $chain`-ACC-REVMASQ " $proto -s $net1 -d $net2 $dport2 -m conntrack --ctstate NEW
- $LAA $IPTABLES -A $chain ${LOG}"-`rulelog $chain`-ACC-REVMASQ " $proto -s $net1 -d $net2 $dport2
- $IPTABLES -A $chain -j "$ACCEPT" $proto -s $net1 -d $net2 $dport2
- $IPTABLES -A $chain -j "$ACCEPT" $proto -d $net1 -s $net2 -m conntrack --ctstate ESTABLISHED,RELATED
+ $LAC $IPTABLES -A $chain ${LOG}"-`rulelog $chain`-ACC-REVMASQ " $proto $net1_src $target_dst $dport2 -m conntrack --ctstate NEW
+ $LAA $IPTABLES -A $chain ${LOG}"-`rulelog $chain`-ACC-REVMASQ " $proto $net1_src $target_dst $dport2
+ $IPTABLES -A $chain -j "$ACCEPT" $proto $net1_src $target_dst $dport2
+ $IPTABLES -A $chain -j "$ACCEPT" $proto $net1_dst $target_src -m conntrack --ctstate ESTABLISHED,RELATED
done
fi
done
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/SuSEfirewall2-3.6.282/mktar new/SuSEfirewall2-3.6.289/mktar
--- old/SuSEfirewall2-3.6.282/mktar 2011-11-07 11:55:00.000000000 +0100
+++ new/SuSEfirewall2-3.6.289/mktar 1970-01-01 01:00:00.000000000 +0100
@@ -1,13 +0,0 @@
-#!/bin/sh
-set -e
-NAME=SuSEfirewall2
-VERSION=3.6
-revs=`git rev-list master|wc -l`
-# there are two empty commits in svn were not converted to git
-# commits so increase revs by two
-let revs=revs+2
-vers="${VERSION:+${VERSION}.}$revs"
-pfx="$NAME-$vers"
-fn="$pfx".tar.bz2
-git archive --prefix="$pfx"/ HEAD | bzip2 > $fn
-echo "version $vers -> $fn"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/SuSEfirewall2-3.6.282/obs/mkchanges new/SuSEfirewall2-3.6.289/obs/mkchanges
--- old/SuSEfirewall2-3.6.282/obs/mkchanges 1970-01-01 01:00:00.000000000 +0100
+++ new/SuSEfirewall2-3.6.289/obs/mkchanges 2012-05-29 15:10:20.000000000 +0200
@@ -0,0 +1,11 @@
+#!/bin/sh
+# create log suitable for c&p into rpm changes file
+if [ -z "$1" ]; then
+ set -- remotes/origin/master..HEAD
+elif [ "${1%.changes}" != "$1" ]; then
+ # parse time stamp of .changes file
+ d=`awk 'NR==2{FS=" - ";$0=$0;print $1;exit}' < $1`
+ set -- --since="$d" HEAD
+fi
+# no idea why it always prints those commit lines
+git rev-list --pretty=format:"- %s" "$@" |grep -v ^commit
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/SuSEfirewall2-3.6.282/obs/mkpackage new/SuSEfirewall2-3.6.289/obs/mkpackage
--- old/SuSEfirewall2-3.6.282/obs/mkpackage 1970-01-01 01:00:00.000000000 +0100
+++ new/SuSEfirewall2-3.6.289/obs/mkpackage 2012-05-29 15:10:20.000000000 +0200
@@ -0,0 +1,61 @@
+#!/bin/bash
+set -e
+shopt -s nullglob
+name="`pwd -P`"
+name=${name##*/}
+name=${name%%.*}
+dstdir="package"
+src="$PWD"
+if [ ! -d "$dstdir/.osc" ]; then
+ echo "*** Error: please check out the package:"
+ echo "osc branch openSUSE:Factory $name"
+ echo "ln -s home\:*\:branches\:*/$name $dstdir"
+ exit 1
+fi
+if [ "`git --no-pager diff --name-only|wc -l`" != '0' -o "`git --no-pager diff --name-only --cached|wc -l`" != 0 ]; then
+ echo "*** Error: uncomitted changes"
+ echo "run 'git add file' to add files, 'git commit -a' to commit changes"
+ exit 1
+fi
+cd "$dstdir"
+echo "osc up"
+osc up
+cd "$src"
+"$src"/obs/mkchanges "$dstdir/$name".changes | tee "$dstdir"/.changes
+#test ! -s $dstdir/.changes || git push
+for i in *.bz2; do
+ /bin/rm -vi "$i"
+done
+cd "$src"
+eval `"$src"/obs/mktar`
+mv "$FILENAME" "$dstdir"
+cd "$dstdir"
+osc add "$FILENAME"
+if [ -n "$VERSION" ]; then
+ read sourcefile < <(/usr/lib/build/spectool --tag "/source0?/" "$name".spec)
+ if [ -n "$sourcefile" ]; then
+ sourcefile="${sourcefile/*: /}"
+ if [ -e "$sourcefile" ]; then
+ osc rm -f "$sourcefile" || true
+ fi
+ fi
+ sed -i -e "0,/^Version: /{s/^\(Version: *\).*/\1$VERSION/;}" "$name".spec
+fi
+osc vc "$name".changes .changes && rm -f .changes
+cd "$src"
+if [ -n "`git rev-list remotes/origin/master..HEAD`" ]; then
+ pushed=
+ if ! grep -q refs/heads/master .git/HEAD; then
+ echo "Warning: not on master branch"
+ elif read -p "push changes now? (Y/n) "; then
+ if [ -z "$REPLY" -o "${REPLY#y}" != "$REPLY" ]; then
+ git push && pushed=1 || true
+ fi
+ fi
+ if [ -z "$pushed" ]; then
+ echo "*** Warning: changes not pushed!"
+ else
+ cd "$dstdir"
+ osc ci
+ fi
+fi
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/SuSEfirewall2-3.6.282/obs/mktar new/SuSEfirewall2-3.6.289/obs/mktar
--- old/SuSEfirewall2-3.6.282/obs/mktar 1970-01-01 01:00:00.000000000 +0100
+++ new/SuSEfirewall2-3.6.289/obs/mktar 2012-05-29 15:10:20.000000000 +0200
@@ -0,0 +1,17 @@
+#!/bin/sh
+set -e
+NAME=SuSEfirewall2
+VERSION=3.6
+revs=`git rev-list master|wc -l`
+# there are two empty commits in svn were not converted to git
+# commits so increase revs by two
+let revs=revs+2
+vers="${VERSION:+${VERSION}.}$revs"
+pfx="$NAME-$vers"
+fn="$pfx".tar.bz2
+if ! git config --get tar.umask >/dev/null 2>&1 ; then
+ git config --add tar.umask 022
+fi
+git archive --prefix="$pfx"/ HEAD | bzip2 > $fn
+echo "VERSION=$vers"
+echo "FILENAME=$fn"
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package splashy for openSUSE:Factory checked in at 2012-05-31 17:10:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/splashy (Old)
and /work/SRC/openSUSE:Factory/.splashy.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "splashy", Maintainer is "hmacht(a)suse.com"
Changes:
--------
--- /work/SRC/openSUSE:Factory/splashy/splashy.changes 2012-05-08 11:15:51.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.splashy.new/splashy.changes 2012-05-31 17:10:35.000000000 +0200
@@ -1,0 +2,6 @@
+Tue May 29 12:52:48 UTC 2012 - puzel(a)suse.com
+
+- fix build with automake-1.12
+ - add: automake-1.12.patch
+
+-------------------------------------------------------------------
New:
----
automake-1.12.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ splashy.spec ++++++
--- /var/tmp/diff_new_pack.ms24BC/_old 2012-05-31 17:10:36.000000000 +0200
+++ /var/tmp/diff_new_pack.ms24BC/_new 2012-05-31 17:10:36.000000000 +0200
@@ -42,6 +42,7 @@
Patch7: splashy-exits-prematurely-fix.patch
Patch8: update-initramfs.patch
Patch9: splashy-glib231.patch
+Patch10: automake-1.12.patch
BuildRequires: DirectFB-devel
BuildRequires: ImageMagick-devel
BuildRequires: file-devel
@@ -188,6 +189,7 @@
%patch7 -p1
%patch8 -p1
%patch9 -p1
+%patch10 -p1
find . -type f | xargs perl -pi -e "s|/usr/lib/|%{_libdir}/|g"
find . -type f | xargs perl -pi -e "s|/lib/|/%{_lib}/|g"
# build gets confused on x86_64 because of this .la file
++++++ automake-1.12.patch ++++++
Index: splashy-0.3.13/autogen.sh
===================================================================
--- splashy-0.3.13.orig/autogen.sh
+++ splashy-0.3.13/autogen.sh
@@ -261,13 +261,14 @@ AUTOHEADER=`echo $AUTOCONF | sed s/autoc
case $REQUIRED_AUTOMAKE_VERSION in
1.4*) automake_progs="automake-1.4" ;;
- 1.5*) automake_progs="automake-1.5 automake-1.6 automake-1.7 automake-1.8 automake-1.9 automake-1.10 automake-1.11" ;;
- 1.6*) automake_progs="automake-1.6 automake-1.7 automake-1.8 automake-1.9 automake-1.10 automake-1.11" ;;
- 1.7*) automake_progs="automake-1.7 automake-1.8 automake-1.9 automake-1.10 automake-1.11" ;;
- 1.8*) automake_progs="automake-1.8 automake-1.9 automake-1.10 automake-1.11" ;;
- 1.9*) automake_progs="automake-1.9 automake-1.10 automake-1.11" ;;
- 1.10*) automake_progs="automake-1.10 automake-1.11" ;;
- 1.11*) automake_progs="automake-1.11" ;;
+ 1.5*) automake_progs="automake-1.5 automake-1.6 automake-1.7 automake-1.8 automake-1.9 automake-1.10 automake-1.11 automake-1.12" ;;
+ 1.6*) automake_progs="automake-1.6 automake-1.7 automake-1.8 automake-1.9 automake-1.10 automake-1.11 automake-1.12" ;;
+ 1.7*) automake_progs="automake-1.7 automake-1.8 automake-1.9 automake-1.10 automake-1.11 automake-1.12" ;;
+ 1.8*) automake_progs="automake-1.8 automake-1.9 automake-1.10 automake-1.11 automake-1.12" ;;
+ 1.9*) automake_progs="automake-1.9 automake-1.10 automake-1.11 automake-1.12" ;;
+ 1.10*) automake_progs="automake-1.10 automake-1.11 automake-1.12" ;;
+ 1.11*) automake_progs="automake-1.11 automake-1.12" ;;
+ 1.12*) automake_progs="automake-1.12" ;;
esac
version_check automake AUTOMAKE "$automake_progs" $REQUIRED_AUTOMAKE_VERSION \
"http://ftp.gnu.org/pub/gnu/automake/automake-$REQUIRED_AUTOMAKE_VERSION.tar…" || DIE=1
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package sblim-cmpi-rpm for openSUSE:Factory checked in at 2012-05-31 17:10:25
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/sblim-cmpi-rpm (Old)
and /work/SRC/openSUSE:Factory/.sblim-cmpi-rpm.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "sblim-cmpi-rpm", Maintainer is ""
Changes:
--------
New Changes file:
--- /dev/null 2012-05-03 01:24:41.895590051 +0200
+++ /work/SRC/openSUSE:Factory/.sblim-cmpi-rpm.new/sblim-cmpi-rpm.changes 2012-05-31 17:10:29.000000000 +0200
@@ -0,0 +1,15 @@
+-------------------------------------------------------------------
+Mon May 28 10:48:16 UTC 2012 - kkaempf(a)suse.com
+
+- add autoconf,automake,libtool to BuildRequires
+
+-------------------------------------------------------------------
+Mon Sep 13 19:34:06 UTC 2010 - kkaempf(a)novell.com
+
+- Fix RHEL build
+
+-------------------------------------------------------------------
+Tue Jul 27 13:05:15 UTC 2010 - kkaempf(a)novell.com
+
+- Initial version 1.0.1
+
New:
----
link-with-libdl.patch
sblim-cmpi-rpm-1.0.1.tar.bz2
sblim-cmpi-rpm.changes
sblim-cmpi-rpm.spec
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ sblim-cmpi-rpm.spec ++++++
#
# spec file for package sblim-cmpi-rpm (Version 1.0.1)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: sblim-cmpi-rpm
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: gcc-c++
BuildRequires: libtool
BuildRequires: openssl-devel
BuildRequires: pam-devel
BuildRequires: sblim-cmpi-base-devel
BuildRequires: sblim-indication_helper-devel
BuildRequires: sblim-testsuite
%if 0%{?suse_version}
BuildRequires: openslp-devel
%endif
Url: http://sblim.wiki.sourceforge.net/
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Summary: SBLIM Linux RPM Instrumentation for CMPI
Version: 1.0.1
Release: 86
Group: System/Management
License: CPL-1.0
Requires: sblim-cmpi-base >= 1.2.3, cim-server
Source0: http://prdownloads.sourceforge.net/sblim/sblim-cmpi-rpm-%{version}.tar.bz2
Patch0: link-with-libdl.patch
PreReq: sblim-sfcb
#!BuildIgnore: tog-pegasus
%description
Standards Based Linux Instrumentation Base RPM CMPI Providers for
System-related CIM classes
%prep
%setup -q -n %{name}-%{version}
%patch0 -p1
autoreconf -f -i
%build
%configure --disable-static
%{__make}
%install
%if 0%{?suse_version}
%makeinstall docdir=%{_docdir}/%{name}
%else
make install DESTDIR=%{buildroot} docdir=%{_docdir}/%{name}-%{version}
%endif
rm %buildroot%_libdir/cmpi/*.la
rm %buildroot%_libdir/*.la
%clean
%{__rm} -rf $RPM_BUILD_ROOT
%post
%define mof Linux_RpmPackage
# compile MOF
d=%_datadir/%name
$d/provider-register.sh -t sfcb -r $d/%{mof}.registration -m $d/%{mof}.mof
%preun
if [ "$1" = "0" ]; then
d=%_datadir/%name
$d/provider-register.sh -t sfcb -d -r $d/%{mof}.registration -m $d/%{mof}.mof
fi
%files
%defattr(-,root,root)
# skip-check-libtool-deps
%{_libdir}/cmpi/*.so*
%{_libdir}/*.so*
#%{_datadir}/sblim-testsuite
%{_datadir}/%{name}
%if 0%{?suse_version}
%doc %{_docdir}/%{name}
%else
%doc %{_docdir}/%{name}-%{version}
%endif
/usr/include/sblim/cimrpm.h
/usr/include/sblim/cimrpmfp.h
%changelog
++++++ link-with-libdl.patch ++++++
diff -wruN -x '*~' ../orig-sblim-cmpi-rpm-1.0.1/Makefile.am ./Makefile.am
--- ../orig-sblim-cmpi-rpm-1.0.1/Makefile.am 2007-05-17 04:39:01.000000000 +0200
+++ ./Makefile.am 2010-07-27 15:09:24.000000000 +0200
@@ -72,7 +72,7 @@
libcimrpmv4.la
libcimrpm_la_SOURCES = cimrpm.c
-# libcimrpm_la_LIBADD = -ldl
+libcimrpm_la_LIBADD = -ldl
libcimrpm_la_LDFLAGS = -Wc,-nostartfiles
libcimrpmv4_la_SOURCES = cimrpmv4.c
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package satsolver-bindings for openSUSE:Factory checked in at 2012-05-31 17:09:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/satsolver-bindings (Old)
and /work/SRC/openSUSE:Factory/.satsolver-bindings.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "satsolver-bindings", Maintainer is "mls(a)suse.com"
Changes:
--------
--- /work/SRC/openSUSE:Factory/satsolver-bindings/satsolver-bindings.changes 2012-02-23 15:34:46.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.satsolver-bindings.new/satsolver-bindings.changes 2012-05-31 17:09:54.000000000 +0200
@@ -2 +2 @@
-Mon Feb 13 10:55:23 UTC 2012 - coolo(a)suse.com
+Tue May 29 12:23:54 UTC 2012 - kkaempf(a)suse.com
@@ -4 +4,9 @@
-- patch license to follow spdx.org standard
+- Adapt to Swig 2.0.7
+- More Ruby 1.9 fixes
+- 0.45.0
+
+-------------------------------------------------------------------
+Mon May 14 12:20:37 UTC 2012 - kkaempf(a)suse.com
+
+- Adapt to Ruby 1.9
+- 0.44.6
Old:
----
satsolver-bindings-0.44.5.tar.bz2
New:
----
satsolver-bindings-0.45.0.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ satsolver-bindings.spec ++++++
--- /var/tmp/diff_new_pack.b8vpOe/_old 2012-05-31 17:09:56.000000000 +0200
+++ /var/tmp/diff_new_pack.b8vpOe/_new 2012-05-31 17:09:56.000000000 +0200
@@ -19,7 +19,7 @@
%define run_testsuite 1
Name: satsolver-bindings
-Version: 0.44.5
+Version: 0.45.0
Release: 0
Url: http://github.com/openSUSE/sat-solver-bindings
Source: satsolver-bindings-%{version}.tar.bz2
@@ -45,6 +45,7 @@
%endif
%endif
%if 0%{?suse_version}
+BuildRequires: pkg-config
%if 0%{?suse_version} < 1030
BuildRequires: expat
%else
@@ -73,8 +74,8 @@
# add macros if not already defined
%{!?py_sitedir: %define py_sitedir %(%__python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
%{!?py_requires: %define py_requires Requires: python}
-%{!?ruby_sitelib: %global ruby_sitelib %(ruby -rrbconfig -e 'puts Config::CONFIG["sitelibdir"] ')}
-%{!?ruby_sitearch: %global ruby_sitearch %(ruby -rrbconfig -e 'puts Config::CONFIG["sitearchdir"] ')}
+%{!?ruby_sitelib: %global ruby_sitelib %(ruby -rrbconfig -e 'puts RbConfig::CONFIG["sitelibdir"] ')}
+%{!?ruby_sitearch: %global ruby_sitearch %(ruby -rrbconfig -e 'puts RbConfig::CONFIG["sitearchdir"] ')}
%description
This is not a package but a .spec placeholder fo subpackages of
@@ -145,7 +146,8 @@
Bernhard Wiedemann <bwiedemann(a)suse.de>
%package -n satsolver-bindings-devel
-Requires: swig %{name}-devel
+Requires: %{name}-devel
+Requires: swig
Summary: Swig input files for satsolver bindings
Group: Development/Libraries/Other
@@ -198,7 +200,7 @@
make DESTDIR=$RPM_BUILD_ROOT install
# we want to leave the .a file untouched
export NO_BRP_STRIP_DEBUG=true
-%if 0%{?suse_version} > 1020
+%if 0%{?suse_version} > 1020 && 0%{?suse_version} < 1220
%fdupes -s build/bindings/ruby/html
%endif
cd ..
@@ -249,8 +251,10 @@
%endif
# rdoc-swig doesn't work with Ruby 1.8.1 on RHEL4
%if 0%{?rhel_version} == 0 || 0%{?rhel_version} >= 500
+%if 0%{?suse_version} == 0 || 0%{?suse_version} < 1220
%doc build/bindings/ruby/html
%endif
+%endif
%files -n python-satsolver
%defattr(-,root,root,-)
++++++ satsolver-bindings-0.44.5.tar.bz2 -> satsolver-bindings-0.45.0.tar.bz2 ++++++
/work/SRC/openSUSE:Factory/satsolver-bindings/satsolver-bindings-0.44.5.tar.bz2 /work/SRC/openSUSE:Factory/.satsolver-bindings.new/satsolver-bindings-0.45.0.tar.bz2 differ: char 11, line 1
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package python-virtualenvwrapper for openSUSE:Factory checked in at 2012-05-31 17:09:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-virtualenvwrapper (Old)
and /work/SRC/openSUSE:Factory/.python-virtualenvwrapper.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-virtualenvwrapper", Maintainer is ""
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-virtualenvwrapper/python-virtualenvwrapper.changes 2012-04-20 15:19:52.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.python-virtualenvwrapper.new/python-virtualenvwrapper.changes 2012-05-31 17:09:48.000000000 +0200
@@ -1,0 +2,30 @@
+Mon May 21 02:07:15 UTC 2012 - alexandre(a)exatati.com.br
+
+- Update to 3.4:
+ - Add install-lazy-loader option.
+
+-------------------------------------------------------------------
+Sat May 12 23:24:48 UTC 2012 - alexandre(a)exatati.com.br
+
+- Update to 3.3:
+ - Clean up file permissions and remove shebangs from scripts not
+ intended to be executed on the command line. (contributed by
+ ralphbean)
+ - Worked on some brittle tests.
+ - Received updates to Japanese translation of the documentation
+ from t2y.
+ - Fix the test script and runner so the user’s $WORKON_HOME is not
+ erased if they do not have some test shells installed. (big thanks
+ to agriffis).
+ - If the hook loader is told to list plugins but is not given a
+ hook name, it prints the list of core hooks.
+ - Merge several fixes for path and variable handling for MSYS users
+ from bwanamarko. Includes a fix for issue 138.
+ - Change mkvirtualenv so it catches both -h and --help.
+ - Fix some issues with the way temporary files are used for hook
+ scripts. (contributed by agriffis)
+ - Allow relative path to requirements file with mkvirtualenv and
+ -r option. (barberj)
+ - Make whitespace consistent. (agriffis)
+
+-------------------------------------------------------------------
Old:
----
virtualenvwrapper-3.2.tar.gz
New:
----
virtualenvwrapper-3.4.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-virtualenvwrapper.spec ++++++
--- /var/tmp/diff_new_pack.Arxcgf/_old 2012-05-31 17:09:49.000000000 +0200
+++ /var/tmp/diff_new_pack.Arxcgf/_new 2012-05-31 17:09:49.000000000 +0200
@@ -15,14 +15,15 @@
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
+
Name: python-virtualenvwrapper
-Version: 3.2
+Version: 3.4
Release: 0
Url: http://www.doughellmann.com/projects/virtualenvwrapper/
Summary: Enhancements to virtualenv
License: HPND
Group: Development/Languages/Python
-Source: http://pypi.python.org/packages/source/v/virtualenvwrapper/virtualenvwrappe…
+Source: virtualenvwrapper-%{version}.tar.bz2
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: python-devel
BuildRequires: python-distribute
@@ -63,5 +64,6 @@
%doc README.txt
%{python_sitelib}/*
%{_bindir}/virtualenvwrapper.sh
+%{_bindir}/virtualenvwrapper_lazy.sh
%changelog
++++++ virtualenvwrapper-3.2.tar.gz -> virtualenvwrapper-3.4.tar.bz2 ++++++
++++ 31504 lines of diff (skipped)
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package python-django-nose for openSUSE:Factory checked in at 2012-05-31 17:09:25
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-django-nose (Old)
and /work/SRC/openSUSE:Factory/.python-django-nose.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-django-nose", Maintainer is ""
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-django-nose/python-django-nose.changes 2012-03-24 20:09:52.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.python-django-nose.new/python-django-nose.changes 2012-05-31 17:09:27.000000000 +0200
@@ -1,0 +2,22 @@
+Mon May 21 01:55:09 UTC 2012 - alexandre(a)exatati.com.br
+
+- Update to 1.1:
+ * Django TransactionTestCases don't clean up after themselves;
+ they leave junk in the DB and clean it up only on _pre_setup.
+ Thus, Django makes sure these tests run last. Now django-nose
+ does, too. This means one fewer source of failures on existing
+ projects. (Erik Rose)
+ * Add support for hygienic TransactionTestCases. (Erik Rose)
+ * Support models that are used only for tests. Just put them in
+ any file imported in the course of loading tests. No more crazy
+ hacks necessary. (Erik Rose)
+ * Make the fixture bundler more conservative, fixing some conceivable
+ situations in which fixtures would not appear as intended if a
+ TransactionTestCase found its way into the middle of a bundle.
+ (Erik Rose)
+ * Fix an error that would surface when using SQLAlchemy with
+ connection pooling. (Roger Hu)
+ * Gracefully ignore the new --liveserver option introduced in
+ Django 1.4; don't let it through to nose. (Adam DePue)
+
+-------------------------------------------------------------------
Old:
----
django-nose-1.0.tar.gz
New:
----
django-nose-1.1.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-django-nose.spec ++++++
--- /var/tmp/diff_new_pack.za4FIl/_old 2012-05-31 17:09:29.000000000 +0200
+++ /var/tmp/diff_new_pack.za4FIl/_new 2012-05-31 17:09:29.000000000 +0200
@@ -17,13 +17,13 @@
Name: python-django-nose
-Version: 1.0
+Version: 1.1
Release: 0
Url: http://github.com/jbalogh/django-nose
Summary: Django test runner that uses nose
License: BSD-3-Clause
Group: Development/Languages/Python
-Source: http://pypi.python.org/packages/source/d/django-nose/django-nose-%{version}…
+Source: django-nose-%{version}.tar.bz2
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: python-devel
BuildRequires: python-distribute
++++++ django-nose-1.0.tar.gz -> django-nose-1.1.tar.bz2 ++++++
Files old/django-nose-1.0/._MANIFEST.in and new/django-nose-1.1/._MANIFEST.in differ
Files old/django-nose-1.0/._changelog.txt and new/django-nose-1.1/._changelog.txt differ
Files old/django-nose-1.0/._runtests.sh and new/django-nose-1.1/._runtests.sh differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-nose-1.0/PKG-INFO new/django-nose-1.1/PKG-INFO
--- old/django-nose-1.0/PKG-INFO 2012-03-13 20:04:49.000000000 +0100
+++ new/django-nose-1.1/PKG-INFO 2012-05-20 03:18:48.000000000 +0200
@@ -1,7 +1,7 @@
Metadata-Version: 1.0
Name: django-nose
-Version: 1.0
-Summary: Django test runner that uses nose
+Version: 1.1
+Summary: Makes your Django tests simple and snappy
Home-page: http://github.com/jbalogh/django-nose
Author: Erik Rose
Author-email: erikrose(a)grinchcentral.com
@@ -13,14 +13,25 @@
Features
--------
- * All the goodness of `nose`_ in your Django tests
+ * All the goodness of `nose`_ in your Django tests, like...
+
+ * Testing just your apps by default, not all the standard ones that happen to
+ be in ``INSTALLED_APPS``
+ * Running the tests in one or more specific modules (or apps, or classes, or
+ running a specific test)
+ * Obviating the need to import all your tests into ``tests/__init__.py``.
+ This not only saves busy-work but also eliminates the possibility of
+ accidentally shadowing test classes.
+ * Taking advantage of all the useful `nose plugins`_
* Fixture bundling, an optional feature which speeds up your fixture-based
tests by a factor of 4
* Reuse of previously created test DBs, cutting 10 seconds off startup time
+ * Hygienic TransactionTestCases, which can save you a DB flush per test
* Support for various databases. Tested with MySQL, PostgreSQL, and SQLite.
Others should work as well.
.. _nose: http://somethingaboutorange.com/mrl/projects/nose/
+ .. _nose plugins: http://nose-plugins.jottit.com/
Installation
@@ -73,18 +84,25 @@
the flag off the next time you run tests. This will cue the test runner to
reinitialize the test database.
+ Also, REUSE_DB is not compatible with TransactionTestCases that leave junk in
+ the DB, so be sure to make your TransactionTestCases hygienic (see below) if
+ you want to use it.
+
Enabling Fast Fixtures
----------------------
- django-nose includes a nose plugin which drastically speeds up your tests by
- eliminating redundant setup of Django test fixtures. To use it...
+ django-nose includes a fixture bundler which drastically speeds up your tests
+ by eliminating redundant setup of Django test fixtures. To use it...
1. Subclass ``django_nose.FastFixtureTestCase`` instead of
``django.test.TestCase``. (I like to import it ``as TestCase`` in my
project's ``tests/__init__.py`` and then import it from there into my actual
- tests. Then it's easy to sub the base class in and out.)
- 2. Activate the plugin by passing the ``--with-fixture-bundling`` option to ``./manage.py test``.
+ tests. Then it's easy to sub the base class in and out.) This alone will
+ cause fixtures to load once per class rather than once per test.
+ 2. Activate fixture bundling by passing the ``--with-fixture-bundling`` option
+ to ``./manage.py test``. This loads each unique set of fixtures only once,
+ even across class, module, and app boundaries.
How Fixture Bundling Works
~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -132,6 +150,59 @@
``exempt_from_fixture_bundling`` attribute of the test class to ``True``.
+ Speedy Hygienic TransactionTestCases
+ ------------------------------------
+
+ Unlike the stock Django test runner, django-nose lets you write custom
+ TransactionTestCase subclasses which expect to start with an unmarred DB,
+ saving an entire DB flush per test.
+
+ Background
+ ~~~~~~~~~~
+
+ The default Django TransactionTestCase class `can leave the DB in an unclean
+ state`_ when it's done. To compensate, TransactionTestCase does a
+ time-consuming flush of the DB *before* each test to ensure it begins with a
+ clean slate. Django's stock test runner then runs TransactionTestCases last so
+ they don't wreck the environment for better-behaved tests. django-nose
+ replicates this behavior.
+
+ Escaping the Grime
+ ~~~~~~~~~~~~~~~~~~
+
+ Some people, however, have made subclasses of TransactionTestCase that clean up
+ after themselves (and can do so efficiently, since they know what they've
+ changed). Like TestCase, these may assume they start with a clean DB. However,
+ any TransactionTestCases that run before them and leave a mess could cause them
+ to fail spuriously.
+
+ django-nose offers to fix this. If you include a special attribute on your
+ well-behaved TransactionTestCase... ::
+
+ class MyNiceTestCase(TransactionTestCase):
+ cleans_up_after_itself = True
+
+ ...django-nose will run it before any of those nasty, trash-spewing test cases.
+ You can thus enjoy a big speed boost any time you make a TransactionTestCase
+ clean up after itself: skipping a whole DB flush before every test. With a
+ large schema, this can save minutes of IO.
+
+ django-nose's own FastFixtureTestCase uses this feature, even though it
+ ultimately acts more like a TestCase than a TransactionTestCase.
+
+ .. _can leave the DB in an unclean state: https://docs.djangoproject.com/en/dev/topics/testing/?from=olddocs#django.t…
+
+
+ Test-Only Models
+ ----------------
+
+ If you have a model that is used only by tests (for example, to test an
+ abstract model base class), you can put it in any file that's imported in the
+ course of loading tests. For example, if the tests that need it are in
+ ``test_models.py``, you can put the model in there, too. django-nose will make
+ sure its DB table gets created.
+
+
Using With South
----------------
@@ -198,10 +269,32 @@
https://github.com/jbalogh/django-nose/tree/django-1.1 or
http://pypi.python.org/pypi/django-nose/0.0.3.
+ Django 1.0
+ ~~~~~~~~~~
+
+ django-nose does not support Django 1.0.
+
Recent Version History
----------------------
+ 1.1
+ * Django TransactionTestCases don't clean up after themselves; they leave
+ junk in the DB and clean it up only on _pre_setup. Thus, Django makes sure
+ these tests run last. Now django-nose does, too. This means one fewer
+ source of failures on existing projects. (Erik Rose)
+ * Add support for hygienic TransactionTestCases. (Erik Rose)
+ * Support models that are used only for tests. Just put them in any file
+ imported in the course of loading tests. No more crazy hacks necessary.
+ (Erik Rose)
+ * Make the fixture bundler more conservative, fixing some conceivable
+ situations in which fixtures would not appear as intended if a
+ TransactionTestCase found its way into the middle of a bundle. (Erik Rose)
+ * Fix an error that would surface when using SQLAlchemy with connection
+ pooling. (Roger Hu)
+ * Gracefully ignore the new ``--liveserver`` option introduced in Django 1.4;
+ don't let it through to nose. (Adam DePue)
+
1.0 (2012-03-12)
* New fixture-bundling plugin for avoiding needless fixture setup (Erik Rose)
* Moved FastFixtureTestCase in from test-utils, so now all the
@@ -213,7 +306,6 @@
* Nail down versions of the package requirements. (Daniel Mizyrycki)
0.1.3 (2010-04-15)
-
* Even better coverage support (rozza)
* README fixes (carljm and ionelmc)
* optparse OptionGroups are handled better (outofculture)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-nose-1.0/README.rst new/django-nose-1.1/README.rst
--- old/django-nose-1.0/README.rst 2012-03-13 19:56:03.000000000 +0100
+++ new/django-nose-1.1/README.rst 2012-05-19 21:26:12.000000000 +0200
@@ -5,14 +5,25 @@
Features
--------
-* All the goodness of `nose`_ in your Django tests
+* All the goodness of `nose`_ in your Django tests, like...
+
+ * Testing just your apps by default, not all the standard ones that happen to
+ be in ``INSTALLED_APPS``
+ * Running the tests in one or more specific modules (or apps, or classes, or
+ running a specific test)
+ * Obviating the need to import all your tests into ``tests/__init__.py``.
+ This not only saves busy-work but also eliminates the possibility of
+ accidentally shadowing test classes.
+ * Taking advantage of all the useful `nose plugins`_
* Fixture bundling, an optional feature which speeds up your fixture-based
tests by a factor of 4
* Reuse of previously created test DBs, cutting 10 seconds off startup time
+* Hygienic TransactionTestCases, which can save you a DB flush per test
* Support for various databases. Tested with MySQL, PostgreSQL, and SQLite.
Others should work as well.
.. _nose: http://somethingaboutorange.com/mrl/projects/nose/
+.. _nose plugins: http://nose-plugins.jottit.com/
Installation
@@ -65,18 +76,25 @@
the flag off the next time you run tests. This will cue the test runner to
reinitialize the test database.
+Also, REUSE_DB is not compatible with TransactionTestCases that leave junk in
+the DB, so be sure to make your TransactionTestCases hygienic (see below) if
+you want to use it.
+
Enabling Fast Fixtures
----------------------
-django-nose includes a nose plugin which drastically speeds up your tests by
-eliminating redundant setup of Django test fixtures. To use it...
+django-nose includes a fixture bundler which drastically speeds up your tests
+by eliminating redundant setup of Django test fixtures. To use it...
1. Subclass ``django_nose.FastFixtureTestCase`` instead of
``django.test.TestCase``. (I like to import it ``as TestCase`` in my
project's ``tests/__init__.py`` and then import it from there into my actual
- tests. Then it's easy to sub the base class in and out.)
-2. Activate the plugin by passing the ``--with-fixture-bundling`` option to ``./manage.py test``.
+ tests. Then it's easy to sub the base class in and out.) This alone will
+ cause fixtures to load once per class rather than once per test.
+2. Activate fixture bundling by passing the ``--with-fixture-bundling`` option
+ to ``./manage.py test``. This loads each unique set of fixtures only once,
+ even across class, module, and app boundaries.
How Fixture Bundling Works
~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -124,6 +142,59 @@
``exempt_from_fixture_bundling`` attribute of the test class to ``True``.
+Speedy Hygienic TransactionTestCases
+------------------------------------
+
+Unlike the stock Django test runner, django-nose lets you write custom
+TransactionTestCase subclasses which expect to start with an unmarred DB,
+saving an entire DB flush per test.
+
+Background
+~~~~~~~~~~
+
+The default Django TransactionTestCase class `can leave the DB in an unclean
+state`_ when it's done. To compensate, TransactionTestCase does a
+time-consuming flush of the DB *before* each test to ensure it begins with a
+clean slate. Django's stock test runner then runs TransactionTestCases last so
+they don't wreck the environment for better-behaved tests. django-nose
+replicates this behavior.
+
+Escaping the Grime
+~~~~~~~~~~~~~~~~~~
+
+Some people, however, have made subclasses of TransactionTestCase that clean up
+after themselves (and can do so efficiently, since they know what they've
+changed). Like TestCase, these may assume they start with a clean DB. However,
+any TransactionTestCases that run before them and leave a mess could cause them
+to fail spuriously.
+
+django-nose offers to fix this. If you include a special attribute on your
+well-behaved TransactionTestCase... ::
+
+ class MyNiceTestCase(TransactionTestCase):
+ cleans_up_after_itself = True
+
+...django-nose will run it before any of those nasty, trash-spewing test cases.
+You can thus enjoy a big speed boost any time you make a TransactionTestCase
+clean up after itself: skipping a whole DB flush before every test. With a
+large schema, this can save minutes of IO.
+
+django-nose's own FastFixtureTestCase uses this feature, even though it
+ultimately acts more like a TestCase than a TransactionTestCase.
+
+.. _can leave the DB in an unclean state: https://docs.djangoproject.com/en/dev/topics/testing/?from=olddocs#django.t…
+
+
+Test-Only Models
+----------------
+
+If you have a model that is used only by tests (for example, to test an
+abstract model base class), you can put it in any file that's imported in the
+course of loading tests. For example, if the tests that need it are in
+``test_models.py``, you can put the model in there, too. django-nose will make
+sure its DB table gets created.
+
+
Using With South
----------------
@@ -190,10 +261,32 @@
https://github.com/jbalogh/django-nose/tree/django-1.1 or
http://pypi.python.org/pypi/django-nose/0.0.3.
+Django 1.0
+~~~~~~~~~~
+
+django-nose does not support Django 1.0.
+
Recent Version History
----------------------
+1.1
+ * Django TransactionTestCases don't clean up after themselves; they leave
+ junk in the DB and clean it up only on _pre_setup. Thus, Django makes sure
+ these tests run last. Now django-nose does, too. This means one fewer
+ source of failures on existing projects. (Erik Rose)
+ * Add support for hygienic TransactionTestCases. (Erik Rose)
+ * Support models that are used only for tests. Just put them in any file
+ imported in the course of loading tests. No more crazy hacks necessary.
+ (Erik Rose)
+ * Make the fixture bundler more conservative, fixing some conceivable
+ situations in which fixtures would not appear as intended if a
+ TransactionTestCase found its way into the middle of a bundle. (Erik Rose)
+ * Fix an error that would surface when using SQLAlchemy with connection
+ pooling. (Roger Hu)
+ * Gracefully ignore the new ``--liveserver`` option introduced in Django 1.4;
+ don't let it through to nose. (Adam DePue)
+
1.0 (2012-03-12)
* New fixture-bundling plugin for avoiding needless fixture setup (Erik Rose)
* Moved FastFixtureTestCase in from test-utils, so now all the
@@ -205,7 +298,6 @@
* Nail down versions of the package requirements. (Daniel Mizyrycki)
0.1.3 (2010-04-15)
-
* Even better coverage support (rozza)
* README fixes (carljm and ionelmc)
* optparse OptionGroups are handled better (outofculture)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-nose-1.0/changelog.txt new/django-nose-1.1/changelog.txt
--- old/django-nose-1.0/changelog.txt 2012-03-13 19:57:24.000000000 +0100
+++ new/django-nose-1.1/changelog.txt 2012-05-19 20:56:19.000000000 +0200
@@ -1,18 +1,4 @@
-- 1.0
- * New fixture-bundling plugin for avoiding needless fixture setup (Erik Rose)
- * Moved FastFixtureTestCase in from test-utils, so now all the
- fixture-bundling stuff is in one library. (Erik Rose)
- * Added the REUSE_DB setting for faster startup and shutdown. (Erik Rose)
- * Fixed a crash when printing options with certain verbosities. (Daniel Abel)
- * Broke hard dependency on MySQL. Support PostgreSQL. (Roger Hu)
- * Support SQLite, both memory- and disk-based. (Roger Hu and Erik Rose)
- * Nail down versions of the package requirements. (Daniel Mizyrycki)
-
-- 0.1.3 (04-15-10)
- * Even better coverage support (rozza)
- * README fixes (carljm and ionelmc)
- * optparse OptionGroups are handled better (outofculture)
- * nose plugins are loaded before listing options
+(Later entries are in the readme.)
- 0.1.2 (08-14-10)
* run_tests API support (carjm)
Files old/django-nose-1.0/django_nose/.___init__.py and new/django-nose-1.1/django_nose/.___init__.py differ
Files old/django-nose-1.0/django_nose/._fixture_bundling.py and new/django-nose-1.1/django_nose/._fixture_bundling.py differ
Files old/django-nose-1.0/django_nose/._plugin.py and new/django-nose-1.1/django_nose/._plugin.py differ
Files old/django-nose-1.0/django_nose/._runner.py and new/django-nose-1.1/django_nose/._runner.py differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-nose-1.0/django_nose/__init__.py new/django-nose-1.1/django_nose/__init__.py
--- old/django-nose-1.0/django_nose/__init__.py 2012-03-13 04:46:32.000000000 +0100
+++ new/django-nose-1.1/django_nose/__init__.py 2012-05-19 20:56:25.000000000 +0200
@@ -1,4 +1,4 @@
-VERSION = (1, 0, 0)
+VERSION = (1, 1, 0)
__version__ = '.'.join(map(str, VERSION))
from django_nose.runner import *
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-nose-1.0/django_nose/fixture_bundling.py new/django-nose-1.1/django_nose/fixture_bundling.py
--- old/django-nose-1.0/django_nose/fixture_bundling.py 2011-09-07 23:41:02.000000000 +0200
+++ new/django-nose-1.1/django_nose/fixture_bundling.py 1970-01-01 01:00:00.000000000 +0100
@@ -1,106 +0,0 @@
-from nose.plugins import Plugin
-from nose.suite import ContextSuite
-
-
-class Bucketer(object):
- def __init__(self):
- # { frozenset(['users.json']):
- # [ContextSuite(...), ContextSuite(...)] }
- self.buckets = {}
-
- def add(self, test):
- """Put a test into a bucket according to its set of fixtures and the
- value of its exempt_from_fixture_bundling attr."""
- key = (frozenset(getattr(test.context, 'fixtures', [])),
- getattr(test.context, 'exempt_from_fixture_bundling', False))
- self.buckets.setdefault(key, []).append(test)
-
-
-class FixtureBundlingPlugin(Plugin):
- """Nose plugin which reorders tests to avoid redundant fixture setup
-
- I reorder test classes so ones using identical sets of fixtures run
- adjacently. I then put attributes on the classes which advise a savvy
- test superclass (like test-utils' FastFixtureTestCase) to not reload the
- fixtures for each class.
-
- This takes support.mozilla.com's suite from 123s down to 94s.
-
- """
- name = 'fixture-bundling'
-
- def prepareTest(self, test):
- """Reorder the tests in the suite so classes using identical sets of
- fixtures are contiguous."""
-
- def process_tests(suite, base_callable):
- """Given a nested disaster of [Lazy]Suites, traverse to the first
- level that has setup or teardown routines, and do something to
- them.
-
- If we were to traverse all the way to the leaves (the Tests)
- indiscriminately and return them, when the runner later calls them,
- they'd run without reference to the suite that contained them, so
- they'd miss their class-, module-, and package-wide setup and
- teardown routines.
-
- The nested suites form basically a double-linked tree, and suites
- will call up to their containing suites to run their setups and
- teardowns, but it would be hubris to assume that something you saw
- fit to setup or teardown at the module level is less costly to
- repeat than DB fixtures. Also, those sorts of setups and teardowns
- are extremely rare in our code. Thus, we limit the granularity of
- bucketing to the first level that has setups or teardowns.
-
- """
- if (not hasattr(suite, '_tests') or
- (hasattr(suite, 'hasFixtures') and suite.hasFixtures())):
- # We hit a Test or something with setup, so do the thing.
- base_callable(suite)
- else:
- for t in suite._tests:
- process_tests(t, base_callable)
-
- def suite_sorted_by_fixtures(suite):
- """Flatten and sort a tree of Suites by the ``fixtures`` members of
- their contexts.
-
- Add ``_fb_should_setup_fixtures`` and
- ``_fb_should_teardown_fixtures`` attrs to each test class to advise
- it whether to set up or tear down (respectively) the fixtures.
-
- Return a Suite.
-
- """
- bucketer = Bucketer()
- process_tests(suite, bucketer.add)
-
- # Lay the bundles of common-fixture-having test classes end to end
- # in a single list so we can make a test suite out of them:
- flattened = []
- for ((fixtures, is_exempt), fixture_bundle) in bucketer.buckets.iteritems():
- # Advise first and last test classes in each bundle to set up
- # and tear down fixtures and the rest not to:
- if fixtures and not is_exempt:
- # Ones with fixtures are sure to be classes, which means
- # they're sure to be ContextSuites with contexts.
-
- # First class with this set of fixtures sets up:
- fixture_bundle[0].context._fb_should_setup_fixtures = True
-
- # Set all classes' 1..n should_setup to False:
- for cls in fixture_bundle[1:]:
- cls.context._fb_should_setup_fixtures = False
-
- # Last class tears down:
- fixture_bundle[-1].context._fb_should_teardown_fixtures = True
-
- # Set all classes' 0..(n-1) should_teardown to False:
- for cls in fixture_bundle[:-1]:
- cls.context._fb_should_teardown_fixtures = False
-
- flattened.extend(fixture_bundle)
-
- return ContextSuite(flattened)
-
- return suite_sorted_by_fixtures(test)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-nose-1.0/django_nose/plugin.py new/django-nose-1.1/django_nose/plugin.py
--- old/django-nose-1.0/django_nose/plugin.py 2012-03-13 05:40:49.000000000 +0100
+++ new/django-nose-1.1/django_nose/plugin.py 2012-05-19 20:56:19.000000000 +0200
@@ -2,10 +2,14 @@
import sys
from nose.plugins.base import Plugin
+from nose.suite import ContextSuite
from django.conf import settings
from django.db.models.loading import get_apps, load_app
-from django.test.testcases import TransactionTestCase
+from django.test.testcases import TransactionTestCase, TestCase
+
+from django_nose.testcases import FastFixtureTestCase
+from django_nose.utils import process_tests, is_subclass_at_all
class AlwaysOnPlugin(Plugin):
@@ -26,35 +30,47 @@
class ResultPlugin(AlwaysOnPlugin):
- """
- Captures the TestResult object for later inspection.
+ """Captures the TestResult object for later inspection
nose doesn't return the full test result object from any of its runner
methods. Pass an instance of this plugin to the TestProgram and use
``result`` after running the tests to get the TestResult object.
- """
- name = "result"
+ """
+ name = 'result'
def finalize(self, result):
self.result = result
class DjangoSetUpPlugin(AlwaysOnPlugin):
- """
- Configures Django to setup and tear down the environment.
+ """Configures Django to set up and tear down the environment
+
This allows coverage to report on all code imported and used during the
- initialisation of the test runner.
+ initialization of the test runner.
"""
- name = "django setup"
+ name = 'django setup'
def __init__(self, runner):
super(DjangoSetUpPlugin, self).__init__()
self.runner = runner
self.sys_stdout = sys.stdout
- def begin(self):
+ def prepareTest(self, test):
+ """Create the Django DB and model tables, and do other setup.
+
+ This isn't done in begin() because that's too early--the DB has to be
+ set up *after* the tests are imported so the model registry contains
+ models defined in tests.py modules. Models are registered at
+ declaration time by their metaclass.
+
+ prepareTestRunner() might also have been a sane choice, except that, if
+ some plugin returns something from it, none of the other ones get
+ called. I'd rather not dink with scores if I don't have to.
+
+ """
+ # What is this stdout switcheroo for?
sys_stdout = sys.stdout
sys.stdout = self.sys_stdout
@@ -66,3 +82,170 @@
def finalize(self, result):
self.runner.teardown_databases(self.old_names)
self.runner.teardown_test_environment()
+
+
+class Bucketer(object):
+ def __init__(self):
+ # { (frozenset(['users.json']), True):
+ # [ContextSuite(...), ContextSuite(...)] }
+ self.buckets = {}
+
+ # All the non-FastFixtureTestCase tests we saw, in the order they came
+ # in:
+ self.remainder = []
+
+ def add(self, test):
+ """Put a test into a bucket according to its set of fixtures and the
+ value of its exempt_from_fixture_bundling attr."""
+ if is_subclass_at_all(test.context, FastFixtureTestCase):
+ # We bucket even FFTCs that don't have any fixtures, but it
+ # shouldn't matter.
+ key = (frozenset(getattr(test.context, 'fixtures', [])),
+ getattr(test.context, 'exempt_from_fixture_bundling', False))
+ self.buckets.setdefault(key, []).append(test)
+ else:
+ self.remainder.append(test)
+
+
+class TestReorderer(AlwaysOnPlugin):
+ """Reorder tests for various reasons."""
+ name = 'django-nose-test-reorderer'
+
+ def options(self, parser, env):
+ super(TestReorderer, self).options(parser, env) # pointless
+ parser.add_option('--with-fixture-bundling',
+ action='store_true',
+ dest='with_fixture_bundling',
+ default=env.get('NOSE_WITH_FIXTURE_BUNDLING', False),
+ help='Load a unique set of fixtures only once, even '
+ 'across test classes. '
+ '[NOSE_WITH_FIXTURE_BUNDLING]')
+
+ def configure(self, options, conf):
+ super(TestReorderer, self).configure(options, conf)
+ self.should_bundle = options.with_fixture_bundling
+
+ def _put_transaction_test_cases_last(self, test):
+ """Reorder tests in the suite so TransactionTestCase-based tests come
+ last.
+
+ Django has a weird design decision wherein TransactionTestCase doesn't
+ clean up after itself. Instead, it resets the DB to a clean state only
+ at the *beginning* of each test:
+ https://docs.djangoproject.com/en/dev/topics/testing/?from=olddocs#
+ django. test.TransactionTestCase. Thus, Django reorders tests so
+ TransactionTestCases all come last. Here we do the same.
+
+ "I think it's historical. We used to have doctests also, adding cleanup
+ after each unit test wouldn't necessarily clean up after doctests, so
+ you'd have to clean on entry to a test anyway." was once uttered on
+ #django-dev.
+
+ """
+
+ def filthiness(test):
+ """Return a comparand based on whether a test is guessed to clean
+ up after itself.
+
+ Django's TransactionTestCase doesn't clean up the DB on teardown,
+ but it's hard to guess whether subclasses (other than TestCase) do.
+ We will assume they don't, unless they have a
+ ``cleans_up_after_itself`` attr set to True. This is reasonable
+ because the odd behavior of TransactionTestCase is documented, so
+ subclasses should by default be assumed to preserve it.
+
+ Thus, things will get these comparands (and run in this order):
+
+ * 1: TestCase subclasses. These clean up after themselves.
+ * 1: TransactionTestCase subclasses with
+ cleans_up_after_itself=True. These include
+ FastFixtureTestCases. If you're using the
+ FixtureBundlingPlugin, it will pull the FFTCs out, reorder
+ them, and run them first of all.
+ * 2: TransactionTestCase subclasses. These leave a mess.
+ * 2: Anything else (including doctests, I hope). These don't care
+ about the mess you left, because they don't hit the DB or, if
+ they do, are responsible for ensuring that it's clean (as per
+ https://docs.djangoproject.com/en/dev/topics/testing/?from=
+ olddocs#writing-doctests)
+
+ """
+ test_class = test.context
+ if (is_subclass_at_all(test_class, TestCase) or
+ (is_subclass_at_all(test_class, TransactionTestCase) and
+ getattr(test_class, 'cleans_up_after_itself', False))):
+ return 1
+ return 2
+
+ flattened = []
+ process_tests(test, flattened.append)
+ flattened.sort(key=filthiness)
+ return ContextSuite(flattened)
+
+ def _bundle_fixtures(self, test):
+ """Reorder the tests in the suite so classes using identical sets of
+ fixtures are contiguous.
+
+ I reorder FastFixtureTestCases so ones using identical sets of fixtures run
+ adjacently. I then put attributes on them to advise them to not reload the
+ fixtures for each class.
+
+ This takes support.mozilla.com's suite from 123s down to 94s.
+
+ FastFixtureTestCases are the only ones we care about, because nobody
+ else, in practice, pays attention to the ``_fb`` advisory bits. We
+ return those first, then any remaining tests in the order they were
+ received.
+
+ """
+ def suite_sorted_by_fixtures(suite):
+ """Flatten and sort a tree of Suites by the ``fixtures`` members of
+ their contexts.
+
+ Add ``_fb_should_setup_fixtures`` and
+ ``_fb_should_teardown_fixtures`` attrs to each test class to advise
+ it whether to set up or tear down (respectively) the fixtures.
+
+ Return a Suite.
+
+ """
+ bucketer = Bucketer()
+ process_tests(suite, bucketer.add)
+
+ # Lay the bundles of common-fixture-having test classes end to end
+ # in a single list so we can make a test suite out of them:
+ flattened = []
+ for ((fixtures, is_exempt), fixture_bundle) in bucketer.buckets.iteritems():
+ # Advise first and last test classes in each bundle to set up
+ # and tear down fixtures and the rest not to:
+ if fixtures and not is_exempt:
+ # Ones with fixtures are sure to be classes, which means
+ # they're sure to be ContextSuites with contexts.
+
+ # First class with this set of fixtures sets up:
+ fixture_bundle[0].context._fb_should_setup_fixtures = True
+
+ # Set all classes' 1..n should_setup to False:
+ for cls in fixture_bundle[1:]:
+ cls.context._fb_should_setup_fixtures = False
+
+ # Last class tears down:
+ fixture_bundle[-1].context._fb_should_teardown_fixtures = True
+
+ # Set all classes' 0..(n-1) should_teardown to False:
+ for cls in fixture_bundle[:-1]:
+ cls.context._fb_should_teardown_fixtures = False
+
+ flattened.extend(fixture_bundle)
+ flattened.extend(bucketer.remainder)
+
+ return ContextSuite(flattened)
+
+ return suite_sorted_by_fixtures(test)
+
+ def prepareTest(self, test):
+ """Reorder the tests."""
+ test = self._put_transaction_test_cases_last(test)
+ if self.should_bundle:
+ test = self._bundle_fixtures(test)
+ return test
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-nose-1.0/django_nose/runner.py new/django-nose-1.1/django_nose/runner.py
--- old/django-nose-1.0/django_nose/runner.py 2012-03-13 18:52:48.000000000 +0100
+++ new/django-nose-1.1/django_nose/runner.py 2012-05-19 20:56:19.000000000 +0200
@@ -24,7 +24,8 @@
import nose.core
-from django_nose.plugin import DjangoSetUpPlugin, ResultPlugin
+from django_nose.plugin import DjangoSetUpPlugin, ResultPlugin, TestReorderer
+from django_nose.utils import uses_mysql
try:
any
@@ -36,7 +37,7 @@
return False
-__all__ = ['BasicNoseRunner', 'NoseTestSuiteRunner', 'uses_mysql']
+__all__ = ['BasicNoseRunner', 'NoseTestSuiteRunner']
# This is a table of Django's "manage.py test" options which
@@ -44,10 +45,6 @@
OPTION_TRANSLATION = {'--failfast': '-x'}
-def uses_mysql(connection):
- return 'mysql' in connection.settings_dict['ENGINE']
-
-
# Django v1.2 does not have a _get_test_db_name() function.
if not hasattr(BaseDatabaseCreation, '_get_test_db_name'):
def _get_test_db_name(self):
@@ -61,7 +58,7 @@
def _get_plugins_from_settings():
- for plg_path in list(getattr(settings, 'NOSE_PLUGINS', [])) + ['django_nose.fixture_bundling.FixtureBundlingPlugin']:
+ for plg_path in list(getattr(settings, 'NOSE_PLUGINS', [])) + ['django_nose.plugin.TestReorderer']:
try:
dot = plg_path.rindex('.')
except ValueError:
@@ -109,7 +106,9 @@
def run_suite(self, nose_argv):
result_plugin = ResultPlugin()
- plugins_to_add = [DjangoSetUpPlugin(self), result_plugin]
+ plugins_to_add = [DjangoSetUpPlugin(self),
+ result_plugin,
+ TestReorderer()]
for plugin in _get_plugins_from_settings():
plugins_to_add.append(plugin)
@@ -119,13 +118,12 @@
return result_plugin.result
def run_tests(self, test_labels, extra_tests=None):
- """
- Run the unit tests for all the test names in the provided list.
+ """Run the unit tests for all the test names in the provided list.
Test names specified may be file or module names, and may optionally
indicate the test case to run by separating the module or file name
from the test case name with a colon. Filenames may be relative or
- absolute. Examples:
+ absolute. Examples:
runner.run_tests('test.module')
runner.run_tests('another.test:TestCase.test_method')
@@ -133,6 +131,7 @@
runner.run_tests('/path/to/test/file.py:test_function')
Returns the number of tests that failed.
+
"""
nose_argv = (['nosetests', '--verbosity', str(self.verbosity)]
+ list(test_labels))
@@ -140,7 +139,7 @@
nose_argv.extend(settings.NOSE_ARGS)
# Skip over 'manage.py test' and any arguments handled by django.
- django_opts = ['--noinput']
+ django_opts = ['--noinput', '--liveserver']
for opt in BaseCommand.option_list:
django_opts.extend(opt._long_opts)
django_opts.extend(opt._short_opts)
@@ -207,7 +206,7 @@
def _reusing_db():
"""Return whether the ``REUSE_DB`` flag was passed"""
- return (os.getenv('REUSE_DB', 'false').lower() in ('true', '1', ''))
+ return os.getenv('REUSE_DB', 'false').lower() in ('true', '1', '')
def _can_support_reuse_db(connection):
@@ -285,6 +284,14 @@
if _should_create_database(connection):
# We're not using _skip_create_test_db, so put the DB name back:
connection.settings_dict['NAME'] = orig_db_name
+
+ # Since we replaced the connection with the test DB, closing
+ # the connection will avoid pooling issues with SQLAlchemy. The
+ # issue is trying to CREATE/DROP the test database using a
+ # connection to a DB that was established with that test DB.
+ # MySQLdb doesn't allow it, and SQLAlchemy attempts to reuse
+ # the existing connection from its pool.
+ connection.close()
else:
# Reset auto-increment sequences. Apparently, SUMO's tests are
# horrid and coupled to certain numbers.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-nose-1.0/django_nose/testcases.py new/django-nose-1.1/django_nose/testcases.py
--- old/django-nose-1.0/django_nose/testcases.py 2012-03-13 04:46:32.000000000 +0100
+++ new/django-nose-1.1/django_nose/testcases.py 2012-05-19 20:56:19.000000000 +0200
@@ -5,7 +5,7 @@
from django.db import connections, DEFAULT_DB_ALIAS, transaction
from django_nose.fixture_tables import tables_used_by_fixtures
-from django_nose.runner import uses_mysql
+from django_nose.utils import uses_mysql
__all__ = ['FastFixtureTestCase']
@@ -32,6 +32,8 @@
plugin from django-nose, which does it dynamically at test time.
"""
+ cleans_up_after_itself = True # This is the good kind of puppy.
+
@classmethod
def setUpClass(cls):
"""Turn on manual commits. Load and commit the fixtures."""
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-nose-1.0/django_nose/utils.py new/django-nose-1.1/django_nose/utils.py
--- old/django-nose-1.0/django_nose/utils.py 1970-01-01 01:00:00.000000000 +0100
+++ new/django-nose-1.1/django_nose/utils.py 2012-05-19 20:56:19.000000000 +0200
@@ -0,0 +1,48 @@
+def process_tests(suite, process):
+ """Given a nested disaster of [Lazy]Suites, traverse to the first
+ level that has setup or teardown, and do something to them.
+
+ If we were to traverse all the way to the leaves (the Tests)
+ indiscriminately and return them, when the runner later calls them,
+ they'd run without reference to the suite that contained them, so
+ they'd miss their class-, module-, and package-wide setup and
+ teardown routines.
+
+ The nested suites form basically a double-linked tree, and suites
+ will call up to their containing suites to run their setups and
+ teardowns, but it would be hubris to assume that something you saw
+ fit to setup or teardown at the module level is less costly to
+ repeat than DB fixtures. Also, those sorts of setups and teardowns
+ are extremely rare in our code. Thus, we limit the granularity of
+ bucketing to the first level that has setups or teardowns.
+
+ :arg process: The thing to call once we get to a leaf or a test with setup
+ or teardown
+
+ """
+ if (not hasattr(suite, '_tests') or
+ (hasattr(suite, 'hasFixtures') and suite.hasFixtures())):
+ # We hit a Test or something with setup, so do the thing. (Note that
+ # "fixtures" here means setup or teardown routines, not Django
+ # fixtures.)
+ process(suite)
+ else:
+ for t in suite._tests:
+ process_tests(t, process)
+
+
+def is_subclass_at_all(cls, class_info):
+ """Return whether ``cls`` is a subclass of ``class_info``.
+
+ Even if ``cls`` is not a class, don't crash. Return False instead.
+
+ """
+ try:
+ return issubclass(cls, class_info)
+ except TypeError:
+ return False
+
+
+def uses_mysql(connection):
+ """Return whether the connection represents a MySQL DB."""
+ return 'mysql' in connection.settings_dict['ENGINE']
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-nose-1.0/django_nose.egg-info/PKG-INFO new/django-nose-1.1/django_nose.egg-info/PKG-INFO
--- old/django-nose-1.0/django_nose.egg-info/PKG-INFO 2012-03-13 20:04:49.000000000 +0100
+++ new/django-nose-1.1/django_nose.egg-info/PKG-INFO 2012-05-20 03:18:48.000000000 +0200
@@ -1,7 +1,7 @@
Metadata-Version: 1.0
Name: django-nose
-Version: 1.0
-Summary: Django test runner that uses nose
+Version: 1.1
+Summary: Makes your Django tests simple and snappy
Home-page: http://github.com/jbalogh/django-nose
Author: Erik Rose
Author-email: erikrose(a)grinchcentral.com
@@ -13,14 +13,25 @@
Features
--------
- * All the goodness of `nose`_ in your Django tests
+ * All the goodness of `nose`_ in your Django tests, like...
+
+ * Testing just your apps by default, not all the standard ones that happen to
+ be in ``INSTALLED_APPS``
+ * Running the tests in one or more specific modules (or apps, or classes, or
+ running a specific test)
+ * Obviating the need to import all your tests into ``tests/__init__.py``.
+ This not only saves busy-work but also eliminates the possibility of
+ accidentally shadowing test classes.
+ * Taking advantage of all the useful `nose plugins`_
* Fixture bundling, an optional feature which speeds up your fixture-based
tests by a factor of 4
* Reuse of previously created test DBs, cutting 10 seconds off startup time
+ * Hygienic TransactionTestCases, which can save you a DB flush per test
* Support for various databases. Tested with MySQL, PostgreSQL, and SQLite.
Others should work as well.
.. _nose: http://somethingaboutorange.com/mrl/projects/nose/
+ .. _nose plugins: http://nose-plugins.jottit.com/
Installation
@@ -73,18 +84,25 @@
the flag off the next time you run tests. This will cue the test runner to
reinitialize the test database.
+ Also, REUSE_DB is not compatible with TransactionTestCases that leave junk in
+ the DB, so be sure to make your TransactionTestCases hygienic (see below) if
+ you want to use it.
+
Enabling Fast Fixtures
----------------------
- django-nose includes a nose plugin which drastically speeds up your tests by
- eliminating redundant setup of Django test fixtures. To use it...
+ django-nose includes a fixture bundler which drastically speeds up your tests
+ by eliminating redundant setup of Django test fixtures. To use it...
1. Subclass ``django_nose.FastFixtureTestCase`` instead of
``django.test.TestCase``. (I like to import it ``as TestCase`` in my
project's ``tests/__init__.py`` and then import it from there into my actual
- tests. Then it's easy to sub the base class in and out.)
- 2. Activate the plugin by passing the ``--with-fixture-bundling`` option to ``./manage.py test``.
+ tests. Then it's easy to sub the base class in and out.) This alone will
+ cause fixtures to load once per class rather than once per test.
+ 2. Activate fixture bundling by passing the ``--with-fixture-bundling`` option
+ to ``./manage.py test``. This loads each unique set of fixtures only once,
+ even across class, module, and app boundaries.
How Fixture Bundling Works
~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -132,6 +150,59 @@
``exempt_from_fixture_bundling`` attribute of the test class to ``True``.
+ Speedy Hygienic TransactionTestCases
+ ------------------------------------
+
+ Unlike the stock Django test runner, django-nose lets you write custom
+ TransactionTestCase subclasses which expect to start with an unmarred DB,
+ saving an entire DB flush per test.
+
+ Background
+ ~~~~~~~~~~
+
+ The default Django TransactionTestCase class `can leave the DB in an unclean
+ state`_ when it's done. To compensate, TransactionTestCase does a
+ time-consuming flush of the DB *before* each test to ensure it begins with a
+ clean slate. Django's stock test runner then runs TransactionTestCases last so
+ they don't wreck the environment for better-behaved tests. django-nose
+ replicates this behavior.
+
+ Escaping the Grime
+ ~~~~~~~~~~~~~~~~~~
+
+ Some people, however, have made subclasses of TransactionTestCase that clean up
+ after themselves (and can do so efficiently, since they know what they've
+ changed). Like TestCase, these may assume they start with a clean DB. However,
+ any TransactionTestCases that run before them and leave a mess could cause them
+ to fail spuriously.
+
+ django-nose offers to fix this. If you include a special attribute on your
+ well-behaved TransactionTestCase... ::
+
+ class MyNiceTestCase(TransactionTestCase):
+ cleans_up_after_itself = True
+
+ ...django-nose will run it before any of those nasty, trash-spewing test cases.
+ You can thus enjoy a big speed boost any time you make a TransactionTestCase
+ clean up after itself: skipping a whole DB flush before every test. With a
+ large schema, this can save minutes of IO.
+
+ django-nose's own FastFixtureTestCase uses this feature, even though it
+ ultimately acts more like a TestCase than a TransactionTestCase.
+
+ .. _can leave the DB in an unclean state: https://docs.djangoproject.com/en/dev/topics/testing/?from=olddocs#django.t…
+
+
+ Test-Only Models
+ ----------------
+
+ If you have a model that is used only by tests (for example, to test an
+ abstract model base class), you can put it in any file that's imported in the
+ course of loading tests. For example, if the tests that need it are in
+ ``test_models.py``, you can put the model in there, too. django-nose will make
+ sure its DB table gets created.
+
+
Using With South
----------------
@@ -198,10 +269,32 @@
https://github.com/jbalogh/django-nose/tree/django-1.1 or
http://pypi.python.org/pypi/django-nose/0.0.3.
+ Django 1.0
+ ~~~~~~~~~~
+
+ django-nose does not support Django 1.0.
+
Recent Version History
----------------------
+ 1.1
+ * Django TransactionTestCases don't clean up after themselves; they leave
+ junk in the DB and clean it up only on _pre_setup. Thus, Django makes sure
+ these tests run last. Now django-nose does, too. This means one fewer
+ source of failures on existing projects. (Erik Rose)
+ * Add support for hygienic TransactionTestCases. (Erik Rose)
+ * Support models that are used only for tests. Just put them in any file
+ imported in the course of loading tests. No more crazy hacks necessary.
+ (Erik Rose)
+ * Make the fixture bundler more conservative, fixing some conceivable
+ situations in which fixtures would not appear as intended if a
+ TransactionTestCase found its way into the middle of a bundle. (Erik Rose)
+ * Fix an error that would surface when using SQLAlchemy with connection
+ pooling. (Roger Hu)
+ * Gracefully ignore the new ``--liveserver`` option introduced in Django 1.4;
+ don't let it through to nose. (Adam DePue)
+
1.0 (2012-03-12)
* New fixture-bundling plugin for avoiding needless fixture setup (Erik Rose)
* Moved FastFixtureTestCase in from test-utils, so now all the
@@ -213,7 +306,6 @@
* Nail down versions of the package requirements. (Daniel Mizyrycki)
0.1.3 (2010-04-15)
-
* Even better coverage support (rozza)
* README fixes (carljm and ionelmc)
* optparse OptionGroups are handled better (outofculture)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-nose-1.0/django_nose.egg-info/SOURCES.txt new/django-nose-1.1/django_nose.egg-info/SOURCES.txt
--- old/django-nose-1.0/django_nose.egg-info/SOURCES.txt 2012-03-13 20:04:49.000000000 +0100
+++ new/django-nose-1.1/django_nose.egg-info/SOURCES.txt 2012-05-20 03:18:48.000000000 +0200
@@ -5,11 +5,11 @@
runtests.sh
setup.py
django_nose/__init__.py
-django_nose/fixture_bundling.py
django_nose/fixture_tables.py
django_nose/plugin.py
django_nose/runner.py
django_nose/testcases.py
+django_nose/utils.py
django_nose.egg-info/PKG-INFO
django_nose.egg-info/SOURCES.txt
django_nose.egg-info/dependency_links.txt
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-nose-1.0/setup.py new/django-nose-1.1/setup.py
--- old/django-nose-1.0/setup.py 2012-03-13 20:03:34.000000000 +0100
+++ new/django-nose-1.1/setup.py 2012-05-20 03:15:22.000000000 +0200
@@ -6,8 +6,8 @@
setup(
name='django-nose',
- version='1.0',
- description='Django test runner that uses nose',
+ version='1.1',
+ description='Makes your Django tests simple and snappy',
long_description=open(os.path.join(ROOT, 'README.rst')).read(),
author='Jeff Balogh',
author_email='me(a)jeffbalogh.org',
@@ -15,7 +15,7 @@
maintainer_email='erikrose(a)grinchcentral.com',
url='http://github.com/jbalogh/django-nose',
license='BSD',
- packages=find_packages(exclude=['testapp','testapp/*']),
+ packages=find_packages(exclude=['testapp', 'testapp/*']),
include_package_data=True,
zip_safe=False,
install_requires=['nose>=1.0', 'Django>=1.2'],
Files old/django-nose-1.0/testapp/.DS_Store and new/django-nose-1.1/testapp/.DS_Store differ
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package python-configobj for openSUSE:Factory checked in at 2012-05-31 17:09:20
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-configobj (Old)
and /work/SRC/openSUSE:Factory/.python-configobj.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-configobj", Maintainer is ""
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-configobj/python-configobj.changes 2012-05-29 10:35:10.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.python-configobj.new/python-configobj.changes 2012-05-31 17:09:21.000000000 +0200
@@ -1,0 +2,7 @@
+Tue May 29 08:26:59 UTC 2012 - cfarrell(a)suse.com
+
+- license update: BSD-3-Clause
+ Refers only to the license available at
+ http://www.voidspace.org.uk/python/license.shtml (which is BSD-3-Clause)
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-configobj.spec ++++++
--- /var/tmp/diff_new_pack.r8fb6m/_old 2012-05-31 17:09:22.000000000 +0200
+++ /var/tmp/diff_new_pack.r8fb6m/_new 2012-05-31 17:09:22.000000000 +0200
@@ -22,7 +22,7 @@
# FIXME: Change python-cofigobj-docs Obsoletes to < with next version update. Obsoletes introduced with version 4.7.2.
Url: http://www.voidspace.org.uk/python/configobj.html
Summary: Config file reading, writing and validation
-License: BSD-2-Clause
+License: BSD-3-Clause
Group: Development/Languages/Python
Source: http://pypi.python.org/packages/source/c/%{modname}/%{modname}-%{version}.t…
BuildRoot: %{_tmppath}/%{name}-%{version}-build
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0
Hello community,
here is the log from the commit of package projectM for openSUSE:Factory checked in at 2012-05-31 17:09:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/projectM (Old)
and /work/SRC/openSUSE:Factory/.projectM.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "projectM", Maintainer is ""
Changes:
--------
--- /work/SRC/openSUSE:Factory/projectM/projectM.changes 2012-05-14 16:18:13.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.projectM.new/projectM.changes 2012-05-31 17:09:17.000000000 +0200
@@ -1,0 +2,11 @@
+Thu May 24 22:31:29 UTC 2012 - i(a)marguerite.su
+
+- update version 2.1.0
+ * Fixed several memory leaks (when projectM gets destroyed, or when a preset gets destroyed)
+ * Resolved some parser errors and an embarrasing evaluation bug (in particular, 2^x does not equal x^2)
+ * +/- keys support to edit the ratings
+ * libvisual / gstreamer compatible
+ * Various cmake build fixes and improvements
+- drop two patches. upstream fixed.
+
+-------------------------------------------------------------------
Old:
----
override_cmake_cmp0015_warning.patch
projectM-2.0.1-pc_version.patch
projectM-2.0.1.tar.bz2
New:
----
projectM-2.1.0.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ projectM.spec ++++++
--- /var/tmp/diff_new_pack.evkJct/_old 2012-05-31 17:09:20.000000000 +0200
+++ /var/tmp/diff_new_pack.evkJct/_new 2012-05-31 17:09:20.000000000 +0200
@@ -17,16 +17,14 @@
Name: projectM
-Version: 2.0.1
-Release: 1.1
+Version: 2.1.0
+Release: 0
Summary: An Awesome Music Visualizer
License: LGPL-2.1+
Group: Productivity/Multimedia/Sound/Visualization
Url: http://projectm.sourceforge.net
Source0: %{name}-%{version}.tar.bz2
Source1: FindGLEW.cmake
-Patch0: override_cmake_cmp0015_warning.patch
-Patch1: projectM-2.0.1-pc_version.patch
BuildRequires: cmake
BuildRequires: fdupes
BuildRequires: ftgl-devel
@@ -91,8 +89,7 @@
%prep
%setup -q
-%patch0 -p1
-%patch1 -p0
+
rm -r src/WinLibs # legal issues, see bnc#738417, we don't need that whole tree
%build
@@ -104,7 +101,10 @@
EXTRA_FLAGS="$EXTRA_FLAGS -DLIB_SUFFIX=64"
fi
-cmake -DCMAKE_INSTALL_PREFIX=/usr $EXTRA_FLAGS ..
+#projectM-test has link problems, I don't know how to fix, so disable it
+cmake -DCMAKE_INSTALL_PREFIX=/usr $EXTRA_FLAGS \
+ -DINCLUDE-PROJECTM-TEST=OFF \
+ ..
make %{?_smp_mflags}
@@ -135,14 +135,14 @@
%files
%defattr(-,root,root)
%{_bindir}/%{name}-pulseaudio
-%{_bindir}/%{name}-test
-%{_bindir}/%{name}-test-texture
+#%{_bindir}/%{name}-test
+#%{_bindir}/%{name}-test-texture
%{_datadir}/applications/%{name}-pulseaudio.desktop
%{_datadir}/pixmaps/*
%files -n lib%{name}2
%defattr(-,root,root)
-%{_libdir}/lib%{name}.so.2.00
+%{_libdir}/lib%{name}.so.%{version}
%files -n lib%{name}-qt1
%defattr(-,root,root)
++++++ projectM-2.0.1.tar.bz2 -> projectM-2.1.0.tar.bz2 ++++++
/work/SRC/openSUSE:Factory/projectM/projectM-2.0.1.tar.bz2 /work/SRC/openSUSE:Factory/.projectM.new/projectM-2.1.0.tar.bz2 differ: char 11, line 1
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe(a)opensuse.org
For additional commands, e-mail: opensuse-commit+help(a)opensuse.org
1
0