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 2019
- 1 participants
- 2232 discussions
Hello community,
here is the log from the commit of package 000product for openSUSE:Factory checked in at 2019-05-07 12:01:07
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000product (Old)
and /work/SRC/openSUSE:Factory/.000product.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000product"
Tue May 7 12:01:07 2019 rev:1177 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
Old:
----
_service
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
openSUSE-MicroOS-dvd5-dvd-x86_64.kiwi: same change
openSUSE-MicroOS-dvd5-kubic-dvd-x86_64.kiwi: same change
openSUSE-cd-mini-i586.kiwi: same change
openSUSE-cd-mini-x86_64.kiwi: same change
openSUSE-dvd5-dvd-i586.kiwi: same change
openSUSE-dvd5-dvd-x86_64.kiwi: same change
openSUSE-ftp-ftp-i586_x86_64.kiwi: same change
stub.kiwi: same change
1
0
Hello community,
here is the log from the commit of package 000release-packages for openSUSE:Factory checked in at 2019-05-07 12:01:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000release-packages (Old)
and /work/SRC/openSUSE:Factory/.000release-packages.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000release-packages"
Tue May 7 12:01:02 2019 rev:128 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
Old:
----
weakremovers.inc
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
openSUSE-MicroOS-release.spec: same change
openSUSE-release.spec: same change
stub.spec: same change
1
0
Hello community,
here is the log from the commit of package 000product for openSUSE:Factory checked in at 2019-05-07 01:04:10
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000product (Old)
and /work/SRC/openSUSE:Factory/.000product.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000product"
Tue May 7 01:04:10 2019 rev:1176 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
openSUSE-MicroOS-dvd5-dvd-x86_64.kiwi: same change
openSUSE-MicroOS-dvd5-kubic-dvd-x86_64.kiwi: same change
openSUSE-cd-mini-i586.kiwi: same change
openSUSE-cd-mini-x86_64.kiwi: same change
openSUSE-dvd5-dvd-i586.kiwi: same change
openSUSE-dvd5-dvd-x86_64.kiwi: same change
openSUSE-ftp-ftp-i586_x86_64.kiwi: same change
stub.kiwi: same change
++++++ unsorted.yml ++++++
--- /var/tmp/diff_new_pack.6Km2bu/_old 2019-05-07 01:04:17.839157645 +0200
+++ /var/tmp/diff_new_pack.6Km2bu/_new 2019-05-07 01:04:17.859157692 +0200
@@ -9634,10 +9634,10 @@
- libopenblas-gnu-hpc-devel
- libopenblas-pthreads-gnu-hpc
- libopenblas-pthreads-gnu-hpc-devel
- - libopenblas-pthreads_0_3_5-gnu-hpc
- - libopenblas-pthreads_0_3_5-gnu-hpc-devel
- - libopenblas_0_3_5-gnu-hpc
- - libopenblas_0_3_5-gnu-hpc-devel
+ - libopenblas-pthreads_0_3_6-gnu-hpc
+ - libopenblas-pthreads_0_3_6-gnu-hpc-devel
+ - libopenblas_0_3_6-gnu-hpc
+ - libopenblas_0_3_6-gnu-hpc-devel
- libopenblas_openmp-devel
- libopenblas_openmp0
- libopenblas_pthreads-devel
@@ -14075,8 +14075,8 @@
- openbabel-devel
- openblas-devel
- openblas-devel-headers
- - openblas-pthreads_0_3_5-gnu-hpc-devel-static
- - openblas_0_3_5-gnu-hpc-devel-static
+ - openblas-pthreads_0_3_6-gnu-hpc-devel-static
+ - openblas_0_3_6-gnu-hpc-devel-static
- openblas_openmp-devel-static
- openblas_pthreads-devel-static
- openblas_serial-devel-static
@@ -14862,6 +14862,7 @@
- perl-Class-C3-XS
- perl-Class-Container
- perl-Class-DBI
+ - perl-Class-ErrorHandler
- perl-Class-Factory-Util
- perl-Class-Inner
- perl-Class-MakeMethods
@@ -14959,9 +14960,12 @@
- perl-DateTime-Calendar-Julian
- perl-DateTime-Calendar-Mayan
- perl-DateTime-Format-DateParse
+ - perl-DateTime-Format-Flexible
+ - perl-DateTime-Format-Mail
- perl-DateTime-Format-MySQL
- perl-DateTime-Format-Pg
- perl-DateTime-Format-SQLite
+ - perl-DateTime-Format-W3CDTF
- perl-DateTime-Tiny
- perl-Debug-Trace
- perl-Declare-Constraints-Simple
@@ -15232,6 +15236,7 @@
- perl-Module-Refresh
- perl-Module-ScanDeps
- perl-Module-Starter
+ - perl-Module-Util
- perl-Mojo-IOLoop-ReadWriteProcess
- perl-Mojo-Pg
- perl-Mojo-RabbitMQ-Client: [x86_64]
@@ -15628,6 +15633,7 @@
- perl-UNIVERSAL-require
- perl-URI-Find
- perl-URI-Nested
+ - perl-URI-Template
- perl-URI-db
- perl-Unicode-Collate
- perl-Unicode-LineBreak
@@ -15646,6 +15652,7 @@
- perl-Win-Hivex
- perl-Wx
- perl-X11-Protocol-Other
+ - perl-XML-Atom
- perl-XML-Atom-SimpleFeed
- perl-XML-Bare
- perl-XML-CommonNS
@@ -16682,7 +16689,6 @@
- python-websockify-common
- python-wxWidgets-3_0-devel
- python-xapian
- - python-xmldiff
- python-xmms2
- python-yaql
- python-yui
@@ -18727,6 +18733,7 @@
- python2-xhtml2pdf
- python2-xlrd
- python2-xlwt
+ - python2-xmldiff
- python2-xmlsec
- python2-xmltodict
- python2-xpybutil
@@ -18980,6 +18987,7 @@
- python3-abimap
- python3-abimap-doc
- python3-abseil
+ - python3-acefile
- python3-acitoolkit
- python3-acme
- python3-actdiag
@@ -20937,6 +20945,7 @@
- python3-xhtml2pdf
- python3-xlrd
- python3-xlwt
+ - python3-xmldiff
- python3-xmlsec
- python3-xmltodict
- python3-xpybutil
1
0
Hello community,
here is the log from the commit of package 000release-packages for openSUSE:Factory checked in at 2019-05-07 01:04:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000release-packages (Old)
and /work/SRC/openSUSE:Factory/.000release-packages.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000release-packages"
Tue May 7 01:04:06 2019 rev:127 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
openSUSE-MicroOS-release.spec: same change
openSUSE-release.spec: same change
stub.spec: same change
++++++ weakremovers.inc ++++++
--- /var/tmp/diff_new_pack.EAwIus/_old 2019-05-07 01:04:10.667140832 +0200
+++ /var/tmp/diff_new_pack.EAwIus/_new 2019-05-07 01:04:10.691140888 +0200
@@ -14037,12 +14037,16 @@
Provides: weakremover(libopenblas-pthreads_0_3_3-gnu-hpc-devel)
Provides: weakremover(libopenblas-pthreads_0_3_4-gnu-hpc)
Provides: weakremover(libopenblas-pthreads_0_3_4-gnu-hpc-devel)
+Provides: weakremover(libopenblas-pthreads_0_3_5-gnu-hpc)
+Provides: weakremover(libopenblas-pthreads_0_3_5-gnu-hpc-devel)
Provides: weakremover(libopenblas_0_2_20-gnu-hpc)
Provides: weakremover(libopenblas_0_2_20-gnu-hpc-devel)
Provides: weakremover(libopenblas_0_3_3-gnu-hpc)
Provides: weakremover(libopenblas_0_3_3-gnu-hpc-devel)
Provides: weakremover(libopenblas_0_3_4-gnu-hpc)
Provides: weakremover(libopenblas_0_3_4-gnu-hpc-devel)
+Provides: weakremover(libopenblas_0_3_5-gnu-hpc)
+Provides: weakremover(libopenblas_0_3_5-gnu-hpc-devel)
Provides: weakremover(libopenct1)
Provides: weakremover(libopencv3_2)
Provides: weakremover(libopencv3_3)
@@ -14905,9 +14909,11 @@
Provides: weakremover(openblas-pthreads_0_2_20-gnu-hpc-devel-static)
Provides: weakremover(openblas-pthreads_0_3_3-gnu-hpc-devel-static)
Provides: weakremover(openblas-pthreads_0_3_4-gnu-hpc-devel-static)
+Provides: weakremover(openblas-pthreads_0_3_5-gnu-hpc-devel-static)
Provides: weakremover(openblas_0_2_20-gnu-hpc-devel-static)
Provides: weakremover(openblas_0_3_3-gnu-hpc-devel-static)
Provides: weakremover(openblas_0_3_4-gnu-hpc-devel-static)
+Provides: weakremover(openblas_0_3_5-gnu-hpc-devel-static)
Provides: weakremover(openct)
Provides: weakremover(openct-devel)
Provides: weakremover(openfst)
1
0
Hello community,
here is the log from the commit of package python-djangorestframework for openSUSE:Factory checked in at 2019-05-06 21:17:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-djangorestframework (Old)
and /work/SRC/openSUSE:Factory/.python-djangorestframework.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-djangorestframework"
Mon May 6 21:17:32 2019 rev:6 rq:701068 version:3.9.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-djangorestframework/python-djangorestframework.changes 2019-03-06 15:51:44.640431722 +0100
+++ /work/SRC/openSUSE:Factory/.python-djangorestframework.new.5148/python-djangorestframework.changes 2019-05-06 21:17:34.025121999 +0200
@@ -1,0 +2,8 @@
+Mon May 6 11:39:52 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Update to 3.9.3:
+ * This is the last Django REST Framework release that will support Python 2.
+ * Adjusted the compat check for django-guardian to allow the last guardian
+ version (v1.4.9) compatible with Python 2. #6613
+
+-------------------------------------------------------------------
Old:
----
djangorestframework-3.9.2.tar.gz
New:
----
djangorestframework-3.9.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-djangorestframework.spec ++++++
--- /var/tmp/diff_new_pack.X20GZZ/_old 2019-05-06 21:17:34.593123476 +0200
+++ /var/tmp/diff_new_pack.X20GZZ/_new 2019-05-06 21:17:34.593123476 +0200
@@ -27,7 +27,7 @@
%bcond_with test
%endif
Name: python-djangorestframework%{psuffix}
-Version: 3.9.2
+Version: 3.9.3
Release: 0
Summary: A REST Framework for Django
License: BSD-2-Clause
@@ -53,7 +53,7 @@
BuildRequires: %{python_module PyYAML}
BuildRequires: %{python_module coreapi >= 2.3.1}
BuildRequires: %{python_module coreschema >= 0.0.4}
-BuildRequires: %{python_module django-guardian >= 1.5.0}
+BuildRequires: %{python_module django-guardian >= 1.4.9}
BuildRequires: %{python_module psycopg2}
BuildRequires: %{python_module pytest-django >= 3.3.2}
BuildRequires: python3-django-filter >= 1.1.0
++++++ djangorestframework-3.9.2.tar.gz -> djangorestframework-3.9.3.tar.gz ++++++
/work/SRC/openSUSE:Factory/python-djangorestframework/djangorestframework-3.9.2.tar.gz /work/SRC/openSUSE:Factory/.python-djangorestframework.new.5148/djangorestframework-3.9.3.tar.gz differ: char 30, line 1
1
0
Hello community,
here is the log from the commit of package python-yaspin for openSUSE:Factory checked in at 2019-05-06 21:17:29
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-yaspin (Old)
and /work/SRC/openSUSE:Factory/.python-yaspin.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-yaspin"
Mon May 6 21:17:29 2019 rev:2 rq:701067 version:0.14.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-yaspin/python-yaspin.changes 2019-03-04 09:22:20.712579712 +0100
+++ /work/SRC/openSUSE:Factory/.python-yaspin.new.5148/python-yaspin.changes 2019-05-06 21:17:29.769110931 +0200
@@ -1,0 +2,7 @@
+Mon May 6 11:50:48 UTC 2019 - pgajdos(a)suse.com
+
+- version update to 0.14.2
+ * fix: remove extra ``\b`` written to stdout. Fixes ``write()`` in
+ rxvt terminal
+
+-------------------------------------------------------------------
Old:
----
yaspin-0.14.1.tar.gz
New:
----
yaspin-0.14.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-yaspin.spec ++++++
--- /var/tmp/diff_new_pack.9flVPw/_old 2019-05-06 21:17:30.929113949 +0200
+++ /var/tmp/diff_new_pack.9flVPw/_new 2019-05-06 21:17:30.957114021 +0200
@@ -18,7 +18,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-yaspin
-Version: 0.14.1
+Version: 0.14.2
Release: 0
Summary: Yet Another Terminal Spinner
License: MIT
++++++ yaspin-0.14.1.tar.gz -> yaspin-0.14.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yaspin-0.14.1/HISTORY.rst new/yaspin-0.14.2/HISTORY.rst
--- old/yaspin-0.14.1/HISTORY.rst 2019-01-27 23:22:13.000000000 +0100
+++ new/yaspin-0.14.2/HISTORY.rst 2019-04-27 23:05:29.000000000 +0200
@@ -1,6 +1,12 @@
Release History
===============
+0.14.2 / 2019-04-27
+-------------------
+
+* fix: remove extra ``\b`` written to stdout. Fixes ``write()`` in rxvt terminal
+
+
0.14.1 / 2019-01-28
-------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yaspin-0.14.1/PKG-INFO new/yaspin-0.14.2/PKG-INFO
--- old/yaspin-0.14.1/PKG-INFO 2019-01-27 23:40:45.000000000 +0100
+++ new/yaspin-0.14.2/PKG-INFO 2019-04-27 23:11:40.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: yaspin
-Version: 0.14.1
+Version: 0.14.2
Summary: Yet Another Terminal Spinner
Home-page: https://github.com/pavdmyt/yaspin
Author: Pavlo Dmytrenko
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yaspin-0.14.1/setup.cfg new/yaspin-0.14.2/setup.cfg
--- old/yaspin-0.14.1/setup.cfg 2019-01-27 23:40:45.000000000 +0100
+++ new/yaspin-0.14.2/setup.cfg 2019-04-27 23:11:40.000000000 +0200
@@ -1,5 +1,5 @@
[bumpversion]
-current_version = 0.14.1
+current_version = 0.14.2
[metadata]
description-file = README.rst
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yaspin-0.14.1/yaspin/__version__.py new/yaspin-0.14.2/yaspin/__version__.py
--- old/yaspin-0.14.1/yaspin/__version__.py 2019-01-27 23:22:13.000000000 +0100
+++ new/yaspin-0.14.2/yaspin/__version__.py 2019-04-27 23:05:29.000000000 +0200
@@ -1 +1 @@
-__version__ = "0.14.1"
+__version__ = "0.14.2"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yaspin-0.14.1/yaspin/core.py new/yaspin-0.14.2/yaspin/core.py
--- old/yaspin-0.14.1/yaspin/core.py 2018-12-19 10:09:54.000000000 +0100
+++ new/yaspin-0.14.2/yaspin/core.py 2019-04-27 23:05:29.000000000 +0200
@@ -327,7 +327,6 @@
# Wait
time.sleep(self._interval)
- sys.stdout.write("\b")
def _compose_color_func(self):
fn = functools.partial(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yaspin-0.14.1/yaspin.egg-info/PKG-INFO new/yaspin-0.14.2/yaspin.egg-info/PKG-INFO
--- old/yaspin-0.14.1/yaspin.egg-info/PKG-INFO 2019-01-27 23:40:45.000000000 +0100
+++ new/yaspin-0.14.2/yaspin.egg-info/PKG-INFO 2019-04-27 23:11:40.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: yaspin
-Version: 0.14.1
+Version: 0.14.2
Summary: Yet Another Terminal Spinner
Home-page: https://github.com/pavdmyt/yaspin
Author: Pavlo Dmytrenko
1
0
Hello community,
here is the log from the commit of package python-django-guardian for openSUSE:Factory checked in at 2019-05-06 21:17:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-django-guardian (Old)
and /work/SRC/openSUSE:Factory/.python-django-guardian.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-django-guardian"
Mon May 6 21:17:26 2019 rev:14 rq:701065 version:1.5.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-django-guardian/python-django-guardian.changes 2019-03-01 16:47:48.409790404 +0100
+++ /work/SRC/openSUSE:Factory/.python-django-guardian.new.5148/python-django-guardian.changes 2019-05-06 21:17:27.993106313 +0200
@@ -1,0 +2,7 @@
+Mon May 6 11:36:39 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Update to 1.5.1:
+ * Restore compatibility with Python 2.7
+- Remove merged patch no-maxsplit.patch
+
+-------------------------------------------------------------------
Old:
----
django-guardian-1.5.0.tar.gz
no-maxsplit.patch
New:
----
django-guardian-1.5.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-django-guardian.spec ++++++
--- /var/tmp/diff_new_pack.jcDFcc/_old 2019-05-06 21:17:29.069109111 +0200
+++ /var/tmp/diff_new_pack.jcDFcc/_new 2019-05-06 21:17:29.073109122 +0200
@@ -18,14 +18,13 @@
%define pypi_package_name django-guardian
Name: python-%{pypi_package_name}
-Version: 1.5.0
+Version: 1.5.1
Release: 0
Url: http://github.com/lukaszb/django-guardian
Summary: Implementation of per object permissions for Django
License: BSD-3-Clause
Group: Development/Languages/Python
Source: https://pypi.python.org/packages/source/d/django-guardian/django-guardian-%…
-Patch0: no-maxsplit.patch
BuildRequires: %{python_module Django >= 1.8}
BuildRequires: %{python_module django-environ}
BuildRequires: %{python_module mock}
@@ -44,7 +43,6 @@
%prep
%setup -q -n django-guardian-%{version}
-%patch0 -p1
%build
%python_build
++++++ django-guardian-1.5.0.tar.gz -> django-guardian-1.5.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-guardian-1.5.0/CHANGES new/django-guardian-1.5.1/CHANGES
--- old/django-guardian-1.5.0/CHANGES 2019-01-31 12:18:26.000000000 +0100
+++ new/django-guardian-1.5.1/CHANGES 2019-05-02 11:57:04.000000000 +0200
@@ -1,7 +1,15 @@
+Release 1.5.1 (May 2, 2019)
+==========================
+
+* Restore compatibility with Python 2.7
+
+.. important::
+ The 1.5.x release line will be the last one that has support for Python 2.7.
+
Release 1.5.0 (Jan 31, 2019)
==========================
-* Updates for compatibility with latest Python and Django versions.
+* Updates for compatibility with latest Python and Django versions.
Release 1.4.9 (Jul 01, 2017)
============================
@@ -50,7 +58,7 @@
* Moved queryset support in remove_perms to its own function
* Consolidated {User,Group}ObjectPermissionManager, move logic of bulk_*_perm
to managers
-* `assign_perm` and `remove_perm` shortcuts accept `Permission`
+* `assign_perm` and `remove_perm` shortcuts accept `Permission`
instance as `perm` and `QuerySet` as `obj` too.
* Consolidated bulk_assign_perm to assign_perm and bulk_remove_perm to remove_perm
* Upgraded Grappelli templates breadcrumbs block to new Django 1.9 and
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-guardian-1.5.0/PKG-INFO new/django-guardian-1.5.1/PKG-INFO
--- old/django-guardian-1.5.0/PKG-INFO 2019-01-31 12:27:43.000000000 +0100
+++ new/django-guardian-1.5.1/PKG-INFO 2019-05-02 11:59:12.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: django-guardian
-Version: 1.5.0
+Version: 1.5.1
Summary: Implementation of per object permissions for Django.
Home-page: http://github.com/django-guardian/django-guardian
Author: Lukasz Balcerzak
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-guardian-1.5.0/django_guardian.egg-info/PKG-INFO new/django-guardian-1.5.1/django_guardian.egg-info/PKG-INFO
--- old/django-guardian-1.5.0/django_guardian.egg-info/PKG-INFO 2019-01-31 12:27:43.000000000 +0100
+++ new/django-guardian-1.5.1/django_guardian.egg-info/PKG-INFO 2019-05-02 11:59:12.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: django-guardian
-Version: 1.5.0
+Version: 1.5.1
Summary: Implementation of per object permissions for Django.
Home-page: http://github.com/django-guardian/django-guardian
Author: Lukasz Balcerzak
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-guardian-1.5.0/docs/userguide/admin-integration.rst new/django-guardian-1.5.1/docs/userguide/admin-integration.rst
--- old/django-guardian-1.5.0/docs/userguide/admin-integration.rst 2017-11-28 19:20:27.000000000 +0100
+++ new/django-guardian-1.5.1/docs/userguide/admin-integration.rst 2019-05-02 11:55:11.000000000 +0200
@@ -33,7 +33,7 @@
class Meta:
permissions = (
- ('view_post', 'Can view post'),
+ ('hide_post', 'Can hide post'),
)
get_latest_by = 'created_at'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-guardian-1.5.0/docs/userguide/assign.rst new/django-guardian-1.5.1/docs/userguide/assign.rst
--- old/django-guardian-1.5.0/docs/userguide/assign.rst 2017-11-28 19:20:27.000000000 +0100
+++ new/django-guardian-1.5.1/docs/userguide/assign.rst 2019-05-02 11:55:11.000000000 +0200
@@ -19,7 +19,7 @@
reported_by = models.ForeignKey(User, on_delete=models.CASCADE)
created_at = models.DateTimeField(auto_now_add=True)
-... and we want to be able to set custom permission *view_task*. We let Django
+... and we want to be able to set custom permission *assign_task*. We let Django
know to do so by adding ``permissions`` tuple to ``Meta`` class and our final
model could look like:
@@ -33,11 +33,11 @@
class Meta:
permissions = (
- ('view_task', 'View task'),
+ ('assign_task', 'Assign task'),
)
After we call management commands ``makemigrations`` and ``migrate``
-our *view_task* permission would be added to default set of permissions.
+our *assign_task* permission would be added to default set of permissions.
.. note::
By default, Django adds 3 permissions for each registered model:
@@ -45,11 +45,17 @@
- *add_modelname*
- *change_modelname*
- *delete_modelname*
+ - *view_modelname* (since Django 2.1)
(where *modelname* is a simplified name of our model's class). See
https://docs.djangoproject.com/en/dev/topics/auth/default/#default-permissi… for
more detail.
+.. note::
+ When upgrading to Django 2.1 custom created *view_modelname* permissions
+ clash with the newly built-in ones. The simplest way to fix this is to
+ add ``default_permissions = ('add', 'change', 'delete')`` to ``Meta``.
+
There is nothing new here since creation of permissions is
`handled by django <http://docs.djangoproject.com/en/1.2/topics/auth/#id1>`_.
Now we can move to :ref:`assigning object permissions <assign-obj-perms>`.
@@ -65,7 +71,7 @@
For user
~~~~~~~~
-Continuing our example we now can allow Joe user to view some task:
+Continuing our example we now can allow Joe user to assign some task:
.. code-block:: python
@@ -73,7 +79,7 @@
>>> boss = User.objects.create(username='Big Boss')
>>> joe = User.objects.create(username='joe')
>>> task = Task.objects.create(summary='Some job', content='', reported_by=boss)
- >>> joe.has_perm('view_task', task)
+ >>> joe.has_perm('assign_task', task)
False
Well, not so fast Joe, let us create an object permission finally:
@@ -81,8 +87,8 @@
.. code-block:: python
>>> from guardian.shortcuts import assign_perm
- >>> assign_perm('view_task', joe, task)
- >>> joe.has_perm('view_task', task)
+ >>> assign_perm('assign_task', joe, task)
+ >>> joe.has_perm('assign_task', task)
True
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-guardian-1.5.0/guardian/__init__.py new/django-guardian-1.5.1/guardian/__init__.py
--- old/django-guardian-1.5.0/guardian/__init__.py 2019-01-31 12:19:15.000000000 +0100
+++ new/django-guardian-1.5.1/guardian/__init__.py 2019-05-02 11:57:50.000000000 +0200
@@ -7,7 +7,7 @@
default_app_config = 'guardian.apps.GuardianConfig'
# PEP 396: The __version__ attribute's value SHOULD be a string.
-__version__ = '1.5.0'
+__version__ = '1.5.1'
# Compatibility to eg. django-rest-framework
VERSION = tuple(int(x) for x in __version__.split('.')[:3])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-guardian-1.5.0/guardian/backends.py new/django-guardian-1.5.1/guardian/backends.py
--- old/django-guardian-1.5.0/guardian/backends.py 2019-01-31 12:18:26.000000000 +0100
+++ new/django-guardian-1.5.1/guardian/backends.py 2019-05-02 11:55:11.000000000 +0200
@@ -82,7 +82,7 @@
return False
if '.' in perm:
- app_label, _ = perm.split('.', maxsplit=1)
+ app_label, _ = perm.split('.', 1)
if app_label != obj._meta.app_label:
# Check the content_type app_label when permission
# and obj app labels don't match.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-guardian-1.5.0/guardian/core.py new/django-guardian-1.5.1/guardian/core.py
--- old/django-guardian-1.5.0/guardian/core.py 2019-01-31 12:18:26.000000000 +0100
+++ new/django-guardian-1.5.1/guardian/core.py 2019-05-02 11:55:11.000000000 +0200
@@ -74,7 +74,7 @@
elif self.user and self.user.is_superuser:
return True
if '.' in perm:
- _, perm = perm.split('.', maxsplit=1)
+ _, perm = perm.split('.', 1)
return perm in self.get_perms(obj)
def get_group_filters(self, obj):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-guardian-1.5.0/setup.cfg new/django-guardian-1.5.1/setup.cfg
--- old/django-guardian-1.5.0/setup.cfg 2019-01-31 12:27:43.000000000 +0100
+++ new/django-guardian-1.5.1/setup.cfg 2019-05-02 11:59:12.000000000 +0200
@@ -1,5 +1,5 @@
[bumpversion]
-current_version = 1.5.0
+current_version = 1.5.1
[build_sphinx]
source-dir = docs/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-guardian-1.5.0/setup.py new/django-guardian-1.5.1/setup.py
--- old/django-guardian-1.5.0/setup.py 2019-01-31 12:20:15.000000000 +0100
+++ new/django-guardian-1.5.1/setup.py 2019-05-02 11:57:50.000000000 +0200
@@ -3,7 +3,7 @@
from extras import RunFlakesCommand
-version = '1.5.0'
+version = '1.5.1'
readme_file = os.path.join(os.path.dirname(__file__), 'README.rst')
with open(readme_file, 'r') as f:
1
0
Hello community,
here is the log from the commit of package python-django-grappelli for openSUSE:Factory checked in at 2019-05-06 21:17:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-django-grappelli (Old)
and /work/SRC/openSUSE:Factory/.python-django-grappelli.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-django-grappelli"
Mon May 6 21:17:23 2019 rev:15 rq:701062 version:2.12.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-django-grappelli/python-django-grappelli.changes 2019-03-01 16:47:08.873805395 +0100
+++ /work/SRC/openSUSE:Factory/.python-django-grappelli.new.5148/python-django-grappelli.changes 2019-05-06 21:17:24.661097648 +0200
@@ -1,0 +2,9 @@
+Mon May 6 11:35:13 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Update to 2.12.3:
+ * Improved: use get_username with object history.
+ * Improved: trigger change event in dismissChangeRelatedObjectPopup.
+ * Improved: honor cl.show_full_result_count with pagination.
+ * Fixed: using a div.grp-related-widget to wrap all possible widgets.
+
+-------------------------------------------------------------------
Old:
----
2.12.2.tar.gz
New:
----
2.12.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-django-grappelli.spec ++++++
--- /var/tmp/diff_new_pack.6kU8t6/_old 2019-05-06 21:17:25.121098844 +0200
+++ /var/tmp/diff_new_pack.6kU8t6/_new 2019-05-06 21:17:25.125098855 +0200
@@ -18,7 +18,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-django-grappelli
-Version: 2.12.2
+Version: 2.12.3
Release: 0
Summary: A skin for the Django Admin-Interface
License: BSD-2-Clause AND LGPL-2.1-or-later
++++++ 2.12.2.tar.gz -> 2.12.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-grappelli-2.12.2/README.rst new/django-grappelli-2.12.3/README.rst
--- old/django-grappelli-2.12.2/README.rst 2019-01-16 17:34:13.000000000 +0100
+++ new/django-grappelli-2.12.3/README.rst 2019-05-02 15:22:50.000000000 +0200
@@ -36,12 +36,12 @@
**Grappelli is always developed against the latest stable Django release and is NOT tested with Django's master branch.**
-* Grappelli 2.12.2 (January 16th, 2019): Compatible with Django 2.1
+* Grappelli 2.12.3 (May 3rd, 2019): Compatible with Django 2.1
* Grappelli 2.10.4 (November 1st, 2018): Compatible with Django 1.11 (LTS)
Current development branches:
-* Grappelli 2.12.3 (Development version for Django 2.1, see branch Stable/2.12.x)
+* Grappelli 2.12.4 (Development version for Django 2.1, see branch Stable/2.12.x)
* Grappelli 2.10.5 (Development version for Django 1.11, see branch Stable/2.10.x)
Older versions are available at GitHub, but are not supported anymore.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-grappelli-2.12.2/docs/changelog.rst new/django-grappelli-2.12.3/docs/changelog.rst
--- old/django-grappelli-2.12.2/docs/changelog.rst 2019-01-16 17:34:13.000000000 +0100
+++ new/django-grappelli-2.12.3/docs/changelog.rst 2019-05-02 15:22:50.000000000 +0200
@@ -8,9 +8,17 @@
Changelog
=========
-2.12.3 (not yet released)
+2.12.4 (not yet released)
-------------------------
+2.12.3 (May 3rd 2019)
+---------------------
+
+* Improved: use get_username with object history.
+* Improved: trigger change event in dismissChangeRelatedObjectPopup.
+* Improved: honor cl.show_full_result_count with pagination.
+* Fixed: using a div.grp-related-widget to wrap all possible widgets.
+
2.12.2 (January 16th 2019)
--------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-grappelli-2.12.2/docs/conf.py new/django-grappelli-2.12.3/docs/conf.py
--- old/django-grappelli-2.12.2/docs/conf.py 2019-01-16 17:34:13.000000000 +0100
+++ new/django-grappelli-2.12.3/docs/conf.py 2019-05-02 15:22:50.000000000 +0200
@@ -51,9 +51,9 @@
# built documents.
#
# The short X.Y version.
-version = '2.12.2'
+version = '2.12.3'
# The full version, including alpha/beta/rc tags.
-release = '2.12.2'
+release = '2.12.3'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-grappelli-2.12.2/docs/index.rst new/django-grappelli-2.12.3/docs/index.rst
--- old/django-grappelli-2.12.2/docs/index.rst 2019-01-16 17:34:13.000000000 +0100
+++ new/django-grappelli-2.12.3/docs/index.rst 2019-05-02 15:22:50.000000000 +0200
@@ -4,7 +4,7 @@
contain the root `toctree` directive.
.. |grappelli| replace:: Grappelli
.. |filebrowser| replace:: FileBrowser
-.. |grappelliversion| replace:: 2.12.2
+.. |grappelliversion| replace:: 2.12.3
.. _index:
@@ -76,12 +76,12 @@
**Grappelli is always developed against the latest stable Django release and is NOT tested with Django's master branch.**
-* Grappelli 2.12.2 (January 16th, 2019): Compatible with Django 2.1
+* Grappelli 2.12.3 (May 3rd, 2019): Compatible with Django 2.1
* Grappelli 2.10.4 (November 1st, 2018): Compatible with Django 1.11 (LTS)
Current development branches:
-* Grappelli 2.12.3 (Development version for Django 2.1, see branch Stable/2.12.x)
+* Grappelli 2.12.4 (Development version for Django 2.1, see branch Stable/2.12.x)
* Grappelli 2.10.5 (Development version for Django 1.11, see branch Stable/2.10.x)
Older versions are available at GitHub, but are not supported anymore.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-grappelli-2.12.2/docs/quickstart.rst new/django-grappelli-2.12.3/docs/quickstart.rst
--- old/django-grappelli-2.12.2/docs/quickstart.rst 2019-01-16 17:34:13.000000000 +0100
+++ new/django-grappelli-2.12.3/docs/quickstart.rst 2019-05-02 15:22:50.000000000 +0200
@@ -1,6 +1,6 @@
.. |grappelli| replace:: Grappelli
.. |filebrowser| replace:: FileBrowser
-.. |grappelliversion| replace:: 2.12.2
+.. |grappelliversion| replace:: 2.12.3
.. _quickstart:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-grappelli-2.12.2/grappelli/__init__.py new/django-grappelli-2.12.3/grappelli/__init__.py
--- old/django-grappelli-2.12.2/grappelli/__init__.py 2019-01-16 17:34:13.000000000 +0100
+++ new/django-grappelli-2.12.3/grappelli/__init__.py 2019-05-02 15:22:50.000000000 +0200
@@ -1,2 +1,2 @@
-VERSION = '2.12.2'
+VERSION = '2.12.3'
default_app_config = 'grappelli.apps.GrappelliConfig'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-grappelli-2.12.2/grappelli/compass/sass/partials/layout/_tools.scss new/django-grappelli-2.12.3/grappelli/compass/sass/partials/layout/_tools.scss
--- old/django-grappelli-2.12.2/grappelli/compass/sass/partials/layout/_tools.scss 2019-01-16 17:34:13.000000000 +0100
+++ new/django-grappelli-2.12.3/grappelli/compass/sass/partials/layout/_tools.scss 2019-05-02 15:22:50.000000000 +0200
@@ -219,8 +219,6 @@
}
.grp-tools.grp-related-widget-tools {
- position: absolute;
- right: -30px;
top: 2px;
z-index: 1;
li {
@@ -239,11 +237,9 @@
margin: 0;
}
}
- input + &,
- select + &,
- textarea + &,
.radiolist + &,
- .checkboxlist + & {
+ .checkboxlist + &,
+ .grp-related-widget + & {
position: relative;
display: inline-block;
float: right;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-grappelli-2.12.2/grappelli/static/admin/js/admin/RelatedObjectLookups.js new/django-grappelli-2.12.3/grappelli/static/admin/js/admin/RelatedObjectLookups.js
--- old/django-grappelli-2.12.2/grappelli/static/admin/js/admin/RelatedObjectLookups.js 2019-01-16 17:34:13.000000000 +0100
+++ new/django-grappelli-2.12.3/grappelli/static/admin/js/admin/RelatedObjectLookups.js 2019-05-02 15:22:50.000000000 +0200
@@ -61,7 +61,7 @@
function updateRelatedObjectLinks(triggeringLink) {
var $this = $(triggeringLink);
- var siblings = $this.nextAll().find('.change-related, .delete-related');
+ var siblings = $this.parent().nextAll().find('.change-related, .delete-related');
if (!siblings.length) {
return;
}
@@ -114,7 +114,7 @@
this.textContent = newRepr;
this.value = newId;
}
- });
+ }).trigger('change');
// GRAPPELLI CUSTOM: element focus
elem.focus();
win.close();
@@ -184,7 +184,7 @@
// GRAPPELLI CUSTOM
/* triggering select means that update_lookup is triggered with
generic autocompleted (which would empty the field) */
- $('.grp-related-widget-tools').parent().children('select:first-child').trigger('change');
+ $('.grp-related-widget-tools').parent().children('.grp-related-widget').children('select:first-child').trigger('change');
$('.related-lookup').click(function(e) {
e.preventDefault();
var event = $.Event('django:lookup-related');
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-grappelli-2.12.2/grappelli/static/grappelli/stylesheets/screen.css new/django-grappelli-2.12.3/grappelli/static/grappelli/stylesheets/screen.css
--- old/django-grappelli-2.12.2/grappelli/static/grappelli/stylesheets/screen.css 2019-01-16 17:34:13.000000000 +0100
+++ new/django-grappelli-2.12.3/grappelli/static/grappelli/stylesheets/screen.css 2019-05-02 15:22:50.000000000 +0200
@@ -1 +1 @@
-html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font:inherit;font-size:100%;vertical-align:baseline}html{line-height:1}ol,ul{list-style:none}table{border-collapse:collapse;border-spacing:0}caption,th,td{text-align:left;font-weight:normal;vertical-align:middle}q,blockquote{quotes:none}q:before,q:after,blockquote:before,blockquote:after{content:"";content:none}a img{border:none}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}.grp-font-family,.grp-button,input[type="submit"],a.grp-button,button.grp-button,input[type=button].grp-button,.ui-datepicker,#ui-timepicker,.ui-autocomplete,body{font-family:Arial,sans-serif}.grp-font-color,body{color:#444}.grp-font-color-quiet{color:#888}.grp-font-color-error{color:#bf3030}.grp-border-radius{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.grp-border-radius-s{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}.grp-form-field-border-radius{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.grp-form-button-border-radius{-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.grp-margin-xl{margin:30px !important}.grp-margin-l{margin:20px !important}.grp-margin-m{margin:15px !important}.grp-margin{margin:10px !important}.grp-margin-s{margin:5px !important}.grp-margin-xs{margin:2px !important}.grp-margin-top-xl{margin-top:30px !important}.grp-margin-top-l{margin-top:20px !important}.grp-margin-top-m{margin-top:15px !important}.grp-margin-top{margin-top:10px !important}.grp-margin-top-s{margin-top:5px !important}.grp-margin-top-xs{margin-top:2px !important}.grp-margin-bottom-xl{margin-bottom:30px !important}.grp-margin-bottom-l{margin-bottom:20px !important}.grp-margin-bottom-m{margin-bottom:15px !important}.grp-margin-bottom{margin-bottom:10px !important}.grp-margin-bottom-s{margin-bottom:5px !important}.grp-margin-bottom-xs{margin-bottom:2px !important}.grp-margin-left-xl{margin-left:30px !important}.grp-margin-left-l{margin-left:20px !important}.grp-margin-left-m{margin-left:15px !important}.grp-margin-left{margin-left:10px !important}.grp-margin-left-s{margin-left:5px !important}.grp-margin-left-xs{margin-left:2px !important}.grp-margin-right-xl{margin-right:30px !important}.grp-margin-right-l{margin-right:20px !important}.grp-margin-right-m{margin-right:15px !important}.grp-margin-right{margin-right:10px !important}.grp-margin-right-s{margin-right:5px !important}.grp-margin-right-xs{margin-right:2px !important}.grp-margin-vertical-xl{margin-top:30px !important;margin-bottom:30px !important}.grp-margin-vertical-l{margin-top:20px !important;margin-bottom:20px !important}.grp-margin-vertical-m{margin-top:15px !important;margin-bottom:15px !important}.grp-margin-vertical{margin-top:10px !important;margin-bottom:10px !important}.grp-margin-vertical-s{margin-top:5px !important;margin-bottom:5px !important}.grp-margin-vertical-xs{margin-top:2px !important;margin-bottom:2px !important}.grp-margin-horizontal-xl{margin-left:30px !important;margin-right:30px !important}.grp-margin-horizontal-l{margin-left:20px !important;margin-right:20px !important}.grp-margin-horizontal-m{margin-left:15px !important;margin-right:15px !important}.grp-margin-horizontal{margin-left:10px !important;margin-right:10px !important}.grp-margin-horizontal-s{margin-left:5px !important;margin-right:5px !important}.grp-margin-horizontal-xs{margin-left:2px !important;margin-right:2px !important}.grp-no-margin{margin:0 !important}.grp-no-margin-top{margin-top:0 !important}.grp-no-margin-right{margin-right:0 !important}.grp-no-margin-bottom{margin-bottom:0 !important}.grp-no-margin-left{margin-left:0 !important}.grp-padding-xl{padding:30px !important}.grp-padding-l{padding:20px !important}.grp-padding-m{padding:15px !important}.grp-padding{padding:10px !important}.grp-padding-s{padding:5px !important}.grp-padding-xs{padding:2px !important}.grp-padding-top-xl{padding-top:30px !important}.grp-padding-top-l{padding-top:20px !important}.grp-padding-top-m{padding-top:15px !important}.grp-padding-top{padding-top:10px !important}.grp-padding-top-s{padding-top:5px !important}.grp-padding-top-xs{padding-top:2px !important}.grp-padding-bottom-xl{padding-bottom:30px !important}.grp-padding-bottom-l{padding-bottom:20px !important}.grp-padding-bottom-m{padding-bottom:15px !important}.grp-padding-bottom{padding-bottom:10px !important}.grp-padding-bottom-s{padding-bottom:5px !important}.grp-padding-bottom-xs{padding-bottom:2px !important}.grp-padding-left-xl{padding-left:30px !important}.grp-padding-left-l{padding-left:20px !important}.grp-padding-left-m{padding-left:15px !important}.grp-padding-left{padding-left:10px !important}.grp-padding-left-s{padding-left:5px !important}.grp-padding-left-xs{padding-left:2px !important}.grp-padding-right-xl{padding-right:30px !important}.grp-padding-right-l{padding-right:20px !important}.grp-padding-right-m{padding-right:15px !important}.grp-padding-right{padding-right:10px !important}.grp-padding-right-s{padding-right:5px !important}.grp-padding-right-xs{padding-right:2px !important}.grp-padding-vertical-xl{padding-top:30px !important;padding-bottom:30px !important}.grp-padding-vertical-l{padding-top:20px !important;padding-bottom:20px !important}.grp-padding-vertical-m{padding-top:15px !important;padding-bottom:15px !important}.grp-padding-vertical{padding-top:10px !important;padding-bottom:10px !important}.grp-padding-vertical-s{padding-top:5px !important;padding-bottom:5px !important}.grp-padding-vertical-xs{padding-top:2px !important;padding-bottom:2px !important}.grp-padding-horizontal-xl{padding-left:30px !important;padding-right:30px !important}.grp-padding-horizontal-l{padding-left:20px !important;padding-right:20px !important}.grp-padding-horizontal-m{padding-left:15px !important;padding-right:15px !important}.grp-padding-horizontal{padding-left:10px !important;padding-right:10px !important}.grp-padding-horizontal-s{padding-left:5px !important;padding-right:5px !important}.grp-padding-horizontal-xs{padding-left:2px !important;padding-right:2px !important}.grp-no-padding{padding:0 !important}.grp-no-padding-top{padding-top:0 !important}.grp-no-padding-right{padding-right:0 !important}.grp-no-padding-bottom{padding-bottom:0 !important}.grp-no-padding-left{padding-left:0 !important}.icons-sprite,.icons-add-another,.icons-back-link-rtl,.icons-back-link,.icons-breadcrumbs-rtl,.icons-breadcrumbs,.icons-date-hierarchy-back-rtl,.icons-date-hierarchy-back,.icons-datepicker,.icons-datetime-now,.icons-form-select,.icons-link-internal-rtl,.icons-object-tools-add-link,.icons-object-tools-viewsite-link,.icons-pulldown-handler,.icons-pulldown-handler_selected,.icons-related-lookup-m2m,.icons-related-lookup,.icons-related-remove,.icons-searchbox,.icons-selector-add-m2m-horizontal,.icons-selector-add-m2m-vertical,.icons-selector-filter,.icons-selector-remove-m2m-horizontal,.icons-selector-remove-m2m-vertical,.icons-sort-remove,.icons-sorted-ascending,.icons-sorted-descending,.icons-status-no,.icons-status-unknown,.icons-status-yes,.icons-th-ascending,.icons-th-descending,.icons-timepicker,.icons-tools-add-handler,.icons-tools-arrow-down-handler,.icons-tools-arrow-up-handler,.icons-tools-close-handler,.icons-tools-delete-handler-predelete,.icons-tools-delete-handler,.icons-tools-drag-handler,.icons-tools-edit-handler,.icons-tools-open-handler,.icons-tools-remove-handler,.icons-tools-trash-handler,.icons-tools-trash-list-toggle-handler,.icons-tools-viewsite-link,.icons-ui-datepicker-next,.icons-ui-datepicker-prev,a.grp-back-link,a.grp-back-link:hover,a.fb_show,a.related-lookup,body.tinyMCE input[name="src"]+div a,body.tinyMCE input[name="href"]+div a,a.related-lookup.m2m,.grp-autocomplete-wrapper-m2m a.related-lookup,.grp-autocomplete-wrapper-fk a.related-lookup,a.grp-related-remove,button.ui-datepicker-trigger,button.ui-timepicker-trigger,button.ui-datetime-now,.grp-search-button,img[src*="admin/img/icon-unknown"][src$=".gif"],img[src*="admin/img/icon-no"][src$=".gif"],img[src*="admin/img/icon-yes"][src$=".gif"],.grp-tools a.grp-add-handler,.grp-tools a.grp-delete-handler,.grp-predelete .grp-tools a.grp-delete-handler,.grp-tools a.grp-remove-handler,.grp-tools a.grp-drag-handler,.grp-tools a.grp-viewsite-link,.grp-tools a.grp-edit-link,.grp-tools a.grp-open-handler,.grp-tools a.grp-close-handler,.grp-tools a.grp-arrow-down-handler,.grp-tools a.grp-arrow-up-handler,.grp-tools a.grp-trash-handler,.grp-tools a.grp-trash-list-toggle-handler,table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-sortremove,table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-ascending,table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-descending,.grp-date-hierarchy ul li a.grp-date-hierarchy-back,.grp-pulldown-container .grp-pulldown-handler,.grp-pulldown-container .grp-pulldown-handler:hover,.grp-pulldown-container.grp-pulldown-state-open .grp-pulldown-handler,.grp-pulldown-container.grp-pulldown-state-open .grp-pulldown-handler:hover,body.grp-filebrowser table td.grp-sorted.grp-ascending a,body.grp-filebrowser table th.grp-sorted.grp-ascending a,body.grp-filebrowser table td.grp-sorted.grp-descending a,body.grp-filebrowser table th.grp-sorted.grp-descending a,.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next,#grp-breadcrumbs>ul a,#grp-breadcrumbs>ul a:hover,#grp-page-tools a#grp-open-all,#grp-page-tools a#grp-close-all{background-image:url('../images/icons-s79f97b581c.png');background-repeat:no-repeat}.icons-add-another{background-position:0 0}.icons-add-another:hover,.icons-add-another.add-another-hover{background-position:0 -44px}.icons-back-link-rtl{background-position:0 -88px}.icons-back-link-rtl:hover,.icons-back-link-rtl.back-link-rtl-hover{background-position:0 -131px}.icons-back-link{background-position:0 -174px}.icons-back-link:hover,.icons-back-link.back-link-hover{background-position:0 -217px}.icons-breadcrumbs-rtl{background-position:0 -260px}.icons-breadcrumbs-rtl:hover,.icons-breadcrumbs-rtl.breadcrumbs-rtl-hover{background-position:0 -304px}.icons-breadcrumbs{background-position:0 -348px}.icons-breadcrumbs:hover,.icons-breadcrumbs.breadcrumbs-hover{background-position:0 -392px}.icons-date-hierarchy-back-rtl{background-position:0 -436px}.icons-date-hierarchy-back-rtl:hover,.icons-date-hierarchy-back-rtl.date-hierarchy-back-rtl-hover{background-position:0 -479px}.icons-date-hierarchy-back{background-position:0 -522px}.icons-date-hierarchy-back:hover,.icons-date-hierarchy-back.date-hierarchy-back-hover{background-position:0 -565px}.icons-datepicker{background-position:0 -608px}.icons-datepicker:hover,.icons-datepicker.datepicker-hover{background-position:0 -651px}.icons-datetime-now{background-position:0 -694px}.icons-datetime-now:hover,.icons-datetime-now.datetime-now-hover{background-position:0 -737px}.icons-form-select{background-position:0 -780px}.icons-link-internal-rtl{background-position:0 -817px}.icons-link-internal-rtl:hover,.icons-link-internal-rtl.link-internal-rtl-hover{background-position:0 -854px}.icons-object-tools-add-link{background-position:0 -891px}.icons-object-tools-viewsite-link{background-position:0 -935px}.icons-pulldown-handler{background-position:0 -979px}.icons-pulldown-handler:hover,.icons-pulldown-handler.pulldown-handler-hover{background-position:0 -1023px}.icons-pulldown-handler_selected{background-position:0 -1067px}.icons-related-lookup-m2m{background-position:0 -1111px}.icons-related-lookup-m2m:hover,.icons-related-lookup-m2m.related-lookup-m2m-hover{background-position:0 -1154px}.icons-related-lookup{background-position:0 -1197px}.icons-related-lookup:hover,.icons-related-lookup.related-lookup-hover{background-position:0 -1240px}.icons-related-remove{background-position:0 -1283px}.icons-related-remove:hover,.icons-related-remove.related-remove-hover{background-position:0 -1326px}.icons-searchbox{background-position:0 -1369px}.icons-selector-add-m2m-horizontal{background-position:0 -1404px}.icons-selector-add-m2m-horizontal:hover,.icons-selector-add-m2m-horizontal.selector-add-m2m-horizontal-hover{background-position:0 -1436px}.icons-selector-add-m2m-vertical{background-position:0 -1468px}.icons-selector-add-m2m-vertical:hover,.icons-selector-add-m2m-vertical.selector-add-m2m-vertical-hover{background-position:0 -1501px}.icons-selector-filter{background-position:0 -1534px}.icons-selector-remove-m2m-horizontal{background-position:0 -1566px}.icons-selector-remove-m2m-horizontal:hover,.icons-selector-remove-m2m-horizontal.selector-remove-m2m-horizontal-hover{background-position:0 -1598px}.icons-selector-remove-m2m-vertical{background-position:0 -1630px}.icons-selector-remove-m2m-vertical:hover,.icons-selector-remove-m2m-vertical.selector-remove-m2m-vertical-hover{background-position:0 -1663px}.icons-sort-remove{background-position:0 -1696px}.icons-sort-remove:hover,.icons-sort-remove.sort-remove-hover{background-position:0 -1739px}.icons-sorted-ascending{background-position:0 -1782px}.icons-sorted-descending{background-position:0 -1825px}.icons-status-no{background-position:0 -1868px}.icons-status-unknown{background-position:0 -1903px}.icons-status-yes{background-position:0 -1938px}.icons-th-ascending{background-position:0 -1973px}.icons-th-descending{background-position:0 -1999px}.icons-timepicker{background-position:0 -2025px}.icons-timepicker:hover,.icons-timepicker.timepicker-hover{background-position:0 -2068px}.icons-tools-add-handler{background-position:0 -2111px}.icons-tools-add-handler:hover,.icons-tools-add-handler.tools-add-handler-hover{background-position:0 -2155px}.icons-tools-arrow-down-handler{background-position:0 -2199px}.icons-tools-arrow-down-handler:hover,.icons-tools-arrow-down-handler.tools-arrow-down-handler-hover{background-position:0 -2243px}.icons-tools-arrow-up-handler{background-position:0 -2287px}.icons-tools-arrow-up-handler:hover,.icons-tools-arrow-up-handler.tools-arrow-up-handler-hover{background-position:0 -2331px}.icons-tools-close-handler{background-position:0 -2375px}.icons-tools-close-handler:hover,.icons-tools-close-handler.tools-close-handler-hover{background-position:0 -2419px}.icons-tools-delete-handler-predelete{background-position:0 -2463px}.icons-tools-delete-handler{background-position:0 -2507px}.icons-tools-delete-handler:hover,.icons-tools-delete-handler.tools-delete-handler-hover{background-position:0 -2551px}.icons-tools-drag-handler{background-position:0 -2595px}.icons-tools-drag-handler:hover,.icons-tools-drag-handler.tools-drag-handler-hover{background-position:0 -2639px}.icons-tools-edit-handler{background-position:0 -2683px}.icons-tools-edit-handler:hover,.icons-tools-edit-handler.tools-edit-handler-hover{background-position:0 -2727px}.icons-tools-open-handler{background-position:0 -2771px}.icons-tools-open-handler:hover,.icons-tools-open-handler.tools-open-handler-hover{background-position:0 -2815px}.icons-tools-remove-handler{background-position:0 -2859px}.icons-tools-remove-handler:hover,.icons-tools-remove-handler.tools-remove-handler-hover{background-position:0 -2903px}.icons-tools-trash-handler{background-position:0 -2947px}.icons-tools-trash-handler:hover,.icons-tools-trash-handler.tools-trash-handler-hover{background-position:0 -2991px}.icons-tools-trash-list-toggle-handler{background-position:0 -3035px}.icons-tools-trash-list-toggle-handler:hover,.icons-tools-trash-list-toggle-handler.tools-trash-list-toggle-handler-hover{background-position:0 -3079px}.icons-tools-viewsite-link{background-position:0 -3123px}.icons-tools-viewsite-link:hover,.icons-tools-viewsite-link.tools-viewsite-link-hover{background-position:0 -3167px}.icons-ui-datepicker-next{background-position:0 -3211px}.icons-ui-datepicker-next:hover,.icons-ui-datepicker-next.ui-datepicker-next-hover{background-position:0 -3254px}.icons-ui-datepicker-prev{background-position:0 -3297px}.icons-ui-datepicker-prev:hover,.icons-ui-datepicker-prev.ui-datepicker-prev-hover{background-position:0 -3340px}.icons-small-sprite,.icons-small-add-link,.icons-small-change-link,.icons-small-delete-link,.icons-small-filter-choice-selected,.icons-small-link-external-rtl,.icons-small-link-external,.icons-small-link-internal-rtl,.icons-small-link-internal,.icons-small-sort-remove,.icons-small-tools-related-add-handler-disabled,.icons-small-tools-related-add-handler,.icons-small-tools-related-edit-handler-disabled,.icons-small-tools-related-edit-handler,.icons-small-tools-related-remove-handler-disabled,.icons-small-tools-related-remove-handler,a.grp-link-external,a.grp-link-internal,.grp-actions li.grp-add-link a,.grp-actions li.grp-change-link a,.grp-actions li.grp-delete-link a,.grp-actions li.grp-delete-link>span:first-child,.grp-listing li.grp-add-link a,.grp-listing li.grp-change-link a,.grp-listing li.grp-delete-link a,.grp-listing li.grp-delete-link>span:first-child,.grp-listing-small li.grp-add-link a,.grp-listing-small li.grp-change-link a,.grp-listing-small li.grp-delete-link a,.grp-listing-small li.grp-delete-link>span:first-child,a.grp-add-another,a.grp-add-another:not([href]),a.grp-change-related,a.grp-change-related:not([href]),a.grp-delete-related,a.grp-delete-related:not([href]),.grp-filter .grp-row.grp-selected a{background-image:url('../images/icons-small-sf6f04fa616.png');background-repeat:no-repeat}.icons-small-add-link{background-position:0 0}.icons-small-add-link:hover,.icons-small-add-link.add-link-hover{background-position:0 -417px}.icons-small-change-link{background-position:0 -834px}.icons-small-change-link:hover,.icons-small-change-link.change-link-hover{background-position:0 -1251px}.icons-small-delete-link{background-position:0 -1668px}.icons-small-filter-choice-selected{background-position:0 -2085px}.icons-small-link-external-rtl{background-position:0 -2502px}.icons-small-link-external-rtl:hover,.icons-small-link-external-rtl.link-external-rtl-hover{background-position:0 -2919px}.icons-small-link-external{background-position:0 -3336px}.icons-small-link-external:hover,.icons-small-link-external.link-external-hover{background-position:0 -3753px}.icons-small-link-internal-rtl{background-position:0 -4170px}.icons-small-link-internal-rtl:hover,.icons-small-link-internal-rtl.link-internal-rtl-hover{background-position:0 -4587px}.icons-small-link-internal{background-position:0 -5004px}.icons-small-link-internal:hover,.icons-small-link-internal.link-internal-hover{background-position:0 -5421px}.icons-small-sort-remove{background-position:0 -5838px}.icons-small-tools-related-add-handler-disabled{background-position:0 -6255px}.icons-small-tools-related-add-handler{background-position:0 -6672px}.icons-small-tools-related-add-handler:hover,.icons-small-tools-related-add-handler.tools-related-add-handler-hover{background-position:0 -7089px}.icons-small-tools-related-edit-handler-disabled{background-position:0 -7506px}.icons-small-tools-related-edit-handler{background-position:0 -7923px}.icons-small-tools-related-edit-handler:hover,.icons-small-tools-related-edit-handler.tools-related-edit-handler-hover{background-position:0 -8340px}.icons-small-tools-related-remove-handler-disabled{background-position:0 -8757px}.icons-small-tools-related-remove-handler{background-position:0 -9174px}.icons-small-tools-related-remove-handler:hover,.icons-small-tools-related-remove-handler.tools-related-remove-handler-hover{background-position:0 -9591px}.grp-font-size-xl,h1,.h1{font-size:20px}.grp-font-size-l,h2{font-size:13px}.grp-font-size-m,h3{font-size:12px}.grp-font-size,h4,.grp-button,input[type="submit"],a.grp-button,button.grp-button,input[type=button].grp-button,body{font-size:12px}.grp-font-size-s,.grp-actions{font-size:11px}.grp-font-size-xs{font-size:10px}.grp-line-height-xl,h1,.h1{line-height:24px}.grp-line-height-l,h2{line-height:18px}.grp-line-height-m,h3{line-height:16px}.grp-line-height,h4,.grp-actions,.grp-button,input[type="submit"],a.grp-button,button.grp-button,input[type=button].grp-button,body{line-height:16px}.grp-line-height-s{line-height:14px}.grp-line-height-xs{line-height:13px}a{text-decoration:none;color:#309bbf;cursor:pointer}a:hover{color:#444}a.grp-back-link{display:inline-block;width:16px;height:16px;background-position:0 -177px}a.grp-back-link:hover,a.grp-back-link.back-link-hover{background-position:0 -220px}a.grp-back-link:hover{background-position:0 -220px}a.grp-back-link.grp-icon-text{padding-left:24px;width:auto}a.grp-link-external{padding-left:18px;color:#62bbd9;background-position:0 -3336px}a.grp-link-external:hover,a.grp-link-external.link-external-hover{background-position:0 -3753px}a.grp-link-external:hover{color:#444}a.grp-link-internal{padding-left:18px;background-position:0 -5004px}a.grp-link-internal:hover,a.grp-link-internal.link-internal-hover{background-position:0 -5421px}h1,.h1{padding:20px 0 10px;font-weight:bold}h2{font-weight:bold}h3{font-weight:bold}h4{font-weight:bold}h1 span,h2 span,h3 span,h4 span{display:inline-block;margin-left:10px;font-weight:normal}em{font-style:italic}strong{font-weight:bold}.grp-float-left{float:left !important}.grp-float-right{float:right !important}.grp-transparent{border:0 !important;background-color:transparent !important}body.grp-doc article#grp-content section.grp-doc-section{margin-top:40px;border-top:5px solid #d94800}body.grp-doc article#grp-content section.grp-doc-section:first-child{margin-top:0}body.grp-doc span.anchor-helper{position:relative;top:-80px}body.grp-doc .grp-doc-code-source{padding-top:15px;border-top:1px dashed #c30}body.grp-doc .grp-doc-description{margin-bottom:20px}body.grp-doc .grp-doc-description h1{margin-top:30px;padding-top:40px;border-top:3px solid #c30}body.grp-doc .grp-doc-description h2{font-size:16px;line-height:16px;margin:40px 0 10px}body.grp-doc .grp-doc-description h3{font-size:16px;line-height:24px;margin:20px 0 10px}body.grp-doc .grp-doc-description p,body.grp-doc .grp-doc-description ul,body.grp-doc .grp-doc-description ol{margin:10px 0;font-size:14px;line-height:24px}body.grp-doc .grp-doc-description ul{list-style-type:disc}body.grp-doc .grp-doc-description ul li{margin-left:20px}body.grp-doc .grp-doc-description small{font-size:11px}body.grp-doc .grp-doc-class,body.grp-doc .grp-doc-id,body.grp-doc .grp-doc-dom,body.grp-doc .grp-doc-file,body.grp-doc .grp-doc-django{display:inline-block;margin:-2px 0;padding:0 5px;font-size:12px;font-weight:bold;line-height:18px;border:1px solid #d9d9c3;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;background:#f2f2e6}body.grp-doc .grp-doc-dom span:before{content:"<"}body.grp-doc .grp-doc-dom span:after{content:">"}body.grp-doc code{position:relative;display:inline-block;margin:0 5px;padding:0 10px 20px;font-family:Menlo, Monaco, Consolas, "Courier New", monospace;font-size:11px;border:1px solid #d9d9c3;background:#f2f2e6;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}body.grp-doc pre{margin:10px 0;padding:0}body.grp-doc pre code{display:block;margin:0;padding:0 20px 15px}p.grp-help{max-width:758px;padding:5px 0 0;color:#9a9a9a;font-size:11px !important;line-height:13px;white-space:normal !important}p.grp-help:first-child{margin-top:5px}.errorlist+p.grp-help{padding-top:2px}.grp-cells p.grp-help,.grp-td p.grp-help{max-width:278px}.grp-row p.grp-help:first-child,.grp-td p.grp-help:first-child{margin:-2px 0 8px}.grp-row p.grp-help{margin-bottom:-2px}.grp-related-widget-wrapper+p.grp-help{position:relative;clear:left;margin-top:5px}img.grp-help-tooltip{opacity:.5}.grp-table img.grp-help-tooltip{position:absolute;right:18px;top:3px}.grp-description{font-size:11px}.grp-row img{font-size:1px;line-height:1px;vertical-align:middle}.fb_show+p.grp-help a{display:inline-block;padding:3px;font-size:0;line-height:0}.fb_show+p.grp-help a img{margin:0;font-size:0;line-height:0}p.file-upload{margin:6px 0 3px;font-size:11px;line-height:14px}p.file-upload span.clearable-file-input{display:block;margin:5px 0 -12px}p.file-upload span.clearable-file-input input{margin:1px 0 0}p.file-upload span.clearable-file-input label{margin:0 0 0 5px}tr p.file-upload{margin:1px 0 -2px;line-height:13px}p.preview{margin:5px 0 0}tr p.preview{margin:9px 0 -5px}p.preview a{display:inline-block;padding:3px;font-size:0;line-height:0;border:1px solid #309bbf;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}p.preview a:hover{border:1px solid #444}.grp-rte{font-size:13px;line-height:18px}.grp-rte h4{margin:5px 0}.grp-rte p,.grp-rte ul,.grp-rte ol,.grp-rte blockquote,.grp-rte dl,.grp-rte dt,.grp-rte dd{margin:10px 0}.grp-rte p:only-child,.grp-rte ul:only-child,.grp-rte ol:only-child,.grp-rte blockquote:only-child,.grp-rte dl:only-child,.grp-rte dt:only-child,.grp-rte dd:only-child{margin:5px 0}.grp-rte ul{margin-left:30px}.grp-rte ul li{margin-left:20px;list-style-type:disc;list-style-position:outside}.grp-rte ul li ul{margin-top:-5px !important}.grp-rte ul li ul li{list-style-type:circle}.grp-docutils .grp-module h4{padding:0;font-size:13px;border:0;background:none}.grp-docutils .grp-module h4 p{margin:0}.grp-docutils table p{margin:0 !important}.grp-docutils code,.grp-docutils pre{font-size:11px;font-family:"Bitstream Vera Sans Mono", Monaco, "Courier New", Courier, monospace}.grp-docutils pre.literal-block{margin:10px;padding:6px 8px;background:#fff}.grp-docutils .grp-group h2+.grp-row>p{padding:3px 10px 0}span.grp-anchor{position:relative;float:left;clear:both;top:-80px}.grp-nowrap{white-space:nowrap}p.datetime{white-space:nowrap !important}p.datetime br{display:none}p.datetime input.vTimeField{margin-left:6px}a.add-another img,a.related-lookup img{opacity:0}a.related-lookup img{display:none}.deletelink{padding-left:12px;background:transparent}fieldset.grp-module .grp-row label{margin:6px 0 6px;display:inline-block;font-family:Arial,sans-serif;font-size:11px;line-height:13px;color:#444}fieldset.grp-module .grp-row label.required{font-weight:bold}input[type="text"],input[type="password"],input[type="url"],input[type="email"],input[type="number"],input[type="submit"],input[type="reset"],textarea,select{margin:0;padding:2px 5px;height:25px;font-family:Arial,sans-serif;font-size:12px;line-height:14px;font-weight:bold;color:#555;border:1px solid #ccc;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#fdfdfd;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-box-shadow:inset 0 1px 3px 0 #eee;-webkit-box-shadow:inset 0 1px 3px 0 #eee;box-shadow:inset 0 1px 3px 0 #eee;overflow:hidden;vertical-align:middle}input[type="text"]:focus,input[type="text"].grp-state-focus,input[type="password"]:focus,input[type="password"].grp-state-focus,input[type="url"]:focus,input[type="url"].grp-state-focus,input[type="email"]:focus,input[type="email"].grp-state-focus,input[type="number"]:focus,input[type="number"].grp-state-focus,input[type="submit"]:focus,input[type="submit"].grp-state-focus,input[type="reset"]:focus,input[type="reset"].grp-state-focus,textarea:focus,textarea.grp-state-focus,select:focus,select.grp-state-focus{border:1px solid #aaa;-moz-box-shadow:#ccc 0 0 6px;-webkit-box-shadow:#ccc 0 0 6px;box-shadow:#ccc 0 0 6px;background:#fff;outline:0}.grp-errors input[type="text"],.grp-errors input[type="password"],.grp-errors input[type="url"],.grp-errors input[type="email"],.grp-errors input[type="number"],.grp-errors input[type="submit"],.grp-errors input[type="reset"],.grp-errors textarea,.grp-errors select{border-color:#bf3030}input[readonly],input[disabled],textarea[readonly],select[disabled]{border:1px solid #ccc !important;border-style:dotted !important;background:transparent !important}input[readonly]:focus,input[disabled]:focus,textarea[readonly]:focus,select[disabled]:focus{-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none}div.grp-readonly{position:relative;display:inline-block;margin:0;padding:4px 5px 3px !important;min-width:106px;max-width:746px;min-height:16px;font-size:12px;line-height:16px;font-weight:bold;color:#555555;border:1px dotted #ccc;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}div.grp-readonly *{white-space:normal !important}div.grp-readonly pre{white-space:pre !important}div.grp-readonly+div.grp-readonly{margin-left:20px}div.grp-readonly:empty{margin-bottom:-5px !important}.grp-errors label{color:#bf3030 !important}.grp-errors ul.radiolist.inline label,.grp-errors ul.checkboxlist.inline label{color:#444 !important}.grp-errors input[type="text"],.grp-errors input[type="password"],.grp-errors input[type="url"],.grp-errors input[type="email"],.grp-errors input[type="number"],.grp-errors input[type="submit"],.grp-errors input[type="reset"],.grp-errors textarea,.grp-errors select{border-color:#bf3030 !important}.grp-errors .selector input,.grp-errors .selector select,.grp-errors .selector textarea{border:1px solid #ccc !important}.grp-errors ul.errorlist{padding:5px 0 0;color:#bf3030;font-size:11px !important;line-height:14px}select{padding:4px 3px 4px 2px;min-width:118px}@media screen and (-webkit-min-device-pixel-ratio: 0){select,select:focus{padding:4px 28px 4px 5px;-webkit-appearance:textfield;background-image:url("../images/icons/form-select.png");background-position:100% 50%;background-repeat:no-repeat}}select[multiple]{padding-right:5px;height:160px;overflow:auto}@media screen and (-webkit-min-device-pixel-ratio: 0){select[multiple]{background-image:none}}textarea{vertical-align:top;padding:5px 5px;height:60px;overflow:auto}fieldset.monospace textarea{font-family:"Bitstream Vera Sans Mono",Monaco,"Courier New",Courier,monospace}.grp-row input[type=checkbox],.grp-row input[type=radio]{position:relative;top:1px}.grp-row input[type=checkbox]+label,.grp-row input[type=radio]+label{position:relative;margin:0 0 0 5px}input[type=text].grp-search-field{margin-right:-5px;padding-left:10px;padding-right:30px;-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px}ul.radiolist,ul.checkboxlist{position:relative;float:none;display:inline-block;margin:5px 0 0;padding:0;font-size:11px;line-height:15px;font-weight:normal}ul.radiolist label,ul.checkboxlist label{float:none;display:inline-block;margin:0 !important;padding:0 !important;width:auto !important;white-space:nowrap}ul.radiolist li+li,ul.checkboxlist li+li{margin-top:2px}.grp-row>ul.radiolist,.grp-row>ul.checkboxlist{margin:0}ul.radiolist.inline,ul.checkboxlist.inline{position:relative;float:none;display:inline-block;margin:5px 0 0;padding:0;font-size:11px;line-height:15px;font-weight:normal;max-width:760px;float:left;display:inline;margin-top:5px;margin-bottom:3px;padding-right:20px}ul.radiolist.inline label,ul.checkboxlist.inline label{float:none;display:inline-block;margin:0 !important;padding:0 !important;width:auto !important;white-space:nowrap}ul.radiolist.inline li+li,ul.checkboxlist.inline li+li{margin-top:2px}ul.radiolist.inline li,ul.checkboxlist.inline li{float:left;display:inline;margin-top:0 !important;margin-bottom:2px;padding-right:20px}.grp-module.grp-tbody ul.radiolist.inline,.grp-module.grp-tbody ul.checkboxlist.inline{white-space:normal}.grp-module.grp-tbody ul.radiolist.inline li,.grp-module.grp-tbody ul.checkboxlist.inline li{position:relative;float:left;display:inline}.grp-row.grp-cells ul.radiolist.inline li,.grp-row.grp-cells ul.checkboxlist.inline li{float:none}.selector{position:relative;float:left;overflow:hidden;width:758px}.selector .selector-available,.selector .selector-chosen{float:left;width:366px;border:1px solid #ccc;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#ddd}.selector .selector-available.stacked,.selector .selector-chosen.stacked{width:756px}.selector .selector-available h2,.selector .selector-chosen h2{padding:7px 5px 6px 7px;font-size:12px;line-height:13px;font-weight:bold}.selector .selector-available h2 img,.selector .selector-chosen h2 img{display:none}.selector ul.selector-chooser{float:left;margin:110px 2px 0;padding:0;width:18px}.selector .selector-chosen h2{border-bottom:0 !important}.selector .selector-filter{display:block !important;height:27px;padding:3px 5px 2px 2px;font-weight:bold;color:#666;border-top:1px solid #e4e4e4;border-bottom:1px solid #e4e4e4;-moz-border-radius-topleft:3px;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-moz-border-radius-topright:3px;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;line-height:25px;text-indent:25px;background:url("../images/icons/searchbox.png") 6px 50% no-repeat}.selector .selector-filter label{display:none !important}.selector .selector-filter input[type=text]{position:relative;margin:0;width:326px !important;max-width:326px !important}.selector .selector-filter img{display:none}.selector .selector-filter h2+select{position:relative;top:-1px}.selector select[multiple]{margin:0 0 0 -1px;padding-left:3px;max-width:368px !important;width:368px !important;height:200px;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.selector .selector-chosen select[multiple]{height:235px !important}.selector a.selector-add{background-image:url("../images/icons/selector-add-m2m-horizontal.png")}.selector a.selector-add:hover{background-image:url("../images/icons/selector-add-m2m-horizontal_hover.png")}.selector a.selector-remove{background-image:url("../images/icons/selector-remove-m2m-horizontal.png")}.selector a.selector-remove:hover{background-image:url("../images/icons/selector-remove-m2m-horizontal_hover.png")}.selector a.selector-chooseall,.selector a.selector-clearall{display:block;margin:0;padding:2px 7px;font-size:11px;line-height:13px;font-weight:bold}.selector.stacked .selector-available,.selector.stacked .selector-chosen{width:756px}.selector.stacked .selector-filter input[type=text]{width:716px !important;max-width:716px !important}.selector.stacked .selector-chosen .selector-filter:after{content:" " url("../images/icons/selector-add-m2m-vertical_hover.png")}.selector.stacked select[multiple]{width:758px !important;max-width:758px !important}.selector.stacked ul.selector-chooser{margin:4px 0 0 356px;width:36px}.selector.stacked ul.selector-chooser li{float:left}.selector.stacked a.selector-add{background-image:url("../images/icons/selector-add-m2m-vertical.png")}.selector.stacked a.selector-add:hover{background-image:url("../images/icons/selector-add-m2m-vertical_hover.png")}.selector.stacked a.selector-remove{background-image:url("../images/icons/selector-remove-m2m-vertical.png")}.selector.stacked a.selector-remove:hover{background-image:url("../images/icons/selector-remove-m2m-vertical_hover.png")}.selector a.selector-add,.selector a.selector-remove{display:block;width:18px;height:18px;color:transparent !important;background-position:50% 0;background-repeat:no-repeat}ul.errorlist+.selector{margin-top:8px !important}p.errornote{position:relative;float:left;clear:both;margin:0 0 5px;padding:5px 10px;width:100%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;font-weight:bold;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#bf3030}p.errornote+ul.errorlist{*zoom:1;font-size:11px;line-height:13px;font-weight:bold;color:#bf3030;white-space:normal;margin:5px 0 0;margin:-5px 0 0}p.errornote+ul.errorlist:after{content:"\0020";display:block;height:0;clear:both;overflow:hidden;visibility:hidden}p.errornote+ul.errorlist li{padding:5px 10px}p.errornote+ul.errorlist li+li{border-top:1px solid #bf3030}ul.errorlist{*zoom:1;font-size:11px;line-height:13px;font-weight:bold;color:#bf3030;white-space:normal}ul.errorlist:after{content:"\0020";display:block;height:0;clear:both;overflow:hidden;visibility:hidden}ul.errorlist+ul.errorlist{padding-top:2px}p.preview+ul.errorlist{margin-top:5px !important}p.preview+ul.errorlist{margin-top:5px !important}.grp-row ul.errorlist{*zoom:1;font-size:11px;line-height:13px;font-weight:bold;color:#bf3030;white-space:normal;margin:0}.grp-row ul.errorlist:after{content:"\0020";display:block;height:0;clear:both;overflow:hidden;visibility:hidden}.grp-row ul.errorlist li{padding:2px 0 0;border-top:0 !important}.grp-row ul.errorlist li:first-child{padding-top:0}.grp-tabular p.errornote{margin:2px 0 0}.grp-tabular p.errornote+ul.errorlist{margin:0}.grp-tabular ul.errorlist{*zoom:1;font-size:11px;line-height:13px;font-weight:bold;color:#bf3030;white-space:normal;margin:5px 0 0}.grp-tabular ul.errorlist:after{content:"\0020";display:block;height:0;clear:both;overflow:hidden;visibility:hidden}.grp-tabular ul.errorlist li{padding:5px 10px}.grp-tabular ul.errorlist li+li{border-top:1px solid #bf3030}.grp-tabular .grp-tbody ul.errorlist{margin:0}.grp-tabular .grp-td ul.errorlist{clear:both;*zoom:1;font-size:11px;line-height:13px;font-weight:bold;color:#bf3030;white-space:normal;margin:0}.grp-tabular .grp-td ul.errorlist:after{content:"\0020";display:block;height:0;clear:both;overflow:hidden;visibility:hidden}.grp-tabular .grp-td ul.errorlist li{padding:2px 0 0;border-top:0 !important}.grp-tabular .grp-td ul.errorlist li:first-child{padding-top:0}.grp-stacked p.errornote{margin:0}.grp-stacked p.errornote+ul.errorlist{margin:0}.grp-stacked ul.errorlist{*zoom:1;font-size:11px;line-height:13px;font-weight:bold;color:#bf3030;white-space:normal;margin:5px 0 0;margin:3px 0}.grp-stacked ul.errorlist:after{content:"\0020";display:block;height:0;clear:both;overflow:hidden;visibility:hidden}.grp-stacked ul.errorlist li{padding:5px 10px}.grp-stacked ul.errorlist li+li{border-top:1px solid #bf3030}.grp-stacked h3+*+ul.errorlist{*zoom:1;font-size:11px;line-height:13px;font-weight:bold;color:#bf3030;white-space:normal;margin:0;margin:0 !important;padding:5px 10px 8px;border-top:1px solid #fff;border-bottom:1px solid #ddd}.grp-stacked h3+*+ul.errorlist:after{content:"\0020";display:block;height:0;clear:both;overflow:hidden;visibility:hidden}.grp-stacked h3+*+ul.errorlist li{padding:2px 0 0;border-top:0 !important}.grp-stacked h3+*+ul.errorlist li:first-child{padding-top:0}.grp-stacked .grp-row ul.errorlist{*zoom:1;font-size:11px;line-height:13px;font-weight:bold;color:#bf3030;white-space:normal;margin:0}.grp-stacked .grp-row ul.errorlist:after{content:"\0020";display:block;height:0;clear:both;overflow:hidden;visibility:hidden}.grp-stacked .grp-row ul.errorlist li{padding:2px 0 0;border-top:0 !important}.grp-stacked .grp-row ul.errorlist li:first-child{padding-top:0}.grp-errors a.add-another+ul.errorlist{clear:both}.grp-errors td.mceIframeContainer{border:1px solid #bf3030 !important;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}input[type=text],input[type=password],input[type="number"],.vDateField,.vTimeField,.vIntegerField,.vPositiveSmallIntegerField,.vManyToManyRawIdAdminField,.vForeignKeyRawIdAdminField{width:118px}input.grp-has-related-lookup,input.vDateField.hasDatepicker,input.vTimeField.hasTimepicker,input.vFileBrowseField{padding-right:24px !important}input[type="url"],input[type="email"],input.vTextField,input.vURLField,input.vFileBrowseField,textarea,.vLargeTextField,.vXMLLargeTextField{width:278px}.row select{min-width:118px}.vLargeTextField{height:118px}.grp-row input[type="url"],.grp-row input[type="email"],.grp-row .vTextField,.grp-row .vURLField,.grp-row .vFileBrowseField,.grp-row textarea,.grp-row .vLargeTextField,.grp-row .vXMLLargeTextField,.grp-autocomplete-wrapper-m2m{width:758px}.grp-row select{max-width:758px}.grp-autocomplete-wrapper-m2m ul.grp-repr,.grp-autocomplete-wrapper-m2m ul.grp-repr li{max-width:700px}.grp-changelist-results table.grp-table input[type="url"],.grp-changelist-results table.grp-table input[type="email"],.grp-changelist-results table.grp-table .vTextField,.grp-changelist-results table.grp-table .vURLField,.grp-changelist-results table.grp-table .vFileBrowseField,.grp-changelist-results table.grp-table textarea,.grp-changelist-results table.grp-table .vLargeTextField,.grp-changelist-results table.grp-table .vXMLLargeTextField,.grp-changelist-results table.grp-table select{max-width:278px}.grp-module.grp-table select,.grp-module.grp-table .grp-autocomplete-wrapper-m2m,.grp-module.grp-table .grp-autocomplete-wrapper-fk{max-width:278px}.grp-module.grp-table .grp-autocomplete-wrapper-m2m,.grp-module.grp-table .grp-autocomplete-wrapper-fk{width:278px}.grp-module.grp-table .grp-autocomplete-wrapper-m2m ul.grp-repr,.grp-module.grp-table .grp-autocomplete-wrapper-m2m ul.grp-repr li{max-width:222px}.grp-cell input[type="url"],.grp-cell input[type="email"],.grp-cell input[type="number"],.grp-cell input[type=text],.grp-cell input[type=password],.grp-cell select,.grp-cell input[readonly],.grp-cell input[disabled],.grp-cell textarea[readonly],.grp-cell select[disabled],.grp-cell .grp-autocomplete-wrapper-m2m,.grp-cell .grp-autocomplete-wrapper-fk{max-width:278px}.grp-cell .grp-autocomplete-wrapper-m2m ul.grp-repr,.grp-cell .grp-autocomplete-wrapper-m2m ul.grp-repr li{max-width:220px}.grp-cell div.grp-readonly{max-width:266px}.grp-autocomplete-wrapper-m2m,.grp-autocomplete-wrapper-fk input.ui-autocomplete-input{margin:0;padding:2px 5px;height:25px;font-family:Arial,sans-serif;font-size:12px;line-height:14px;font-weight:bold;color:#555;border:1px solid #ccc;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#fdfdfd;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-box-shadow:inset 0 1px 3px 0 #eee;-webkit-box-shadow:inset 0 1px 3px 0 #eee;box-shadow:inset 0 1px 3px 0 #eee;overflow:hidden;vertical-align:middle}.grp-autocomplete-wrapper-m2m:focus,.grp-autocomplete-wrapper-m2m.grp-state-focus,.grp-autocomplete-wrapper-fk input.ui-autocomplete-input:focus,.grp-autocomplete-wrapper-fk input.ui-autocomplete-input.grp-state-focus{border:1px solid #aaa;-moz-box-shadow:#ccc 0 0 6px;-webkit-box-shadow:#ccc 0 0 6px;box-shadow:#ccc 0 0 6px;background:#fff;outline:0}.grp-autocomplete-wrapper-m2m:focus,.grp-autocomplete-wrapper-m2m.grp-state-focus,.grp-autocomplete-wrapper-fk input.ui-autocomplete-input:focus,.grp-autocomplete-wrapper-fk input.ui-autocomplete-input.grp-state-focus{background-color:#e1f0f5}.grp-autocomplete-wrapper-m2m a.related-lookup,.grp-autocomplete-wrapper-fk a.related-lookup{position:absolute;right:0}.grp-autocomplete-wrapper-m2m a.related-lookup,.grp-autocomplete-wrapper-m2m input:focus+a.related-lookup,.grp-autocomplete-wrapper-fk a.related-lookup,.grp-autocomplete-wrapper-fk input:focus+a.related-lookup{border:1px solid #ccc !important}.grp-autocomplete-wrapper-m2m.grp-state-focus a.grp-related-remove,.grp-autocomplete-wrapper-m2m.grp-state-focus a.related-lookup,.grp-autocomplete-wrapper-fk.grp-state-focus a.grp-related-remove,.grp-autocomplete-wrapper-fk.grp-state-focus a.related-lookup{border:1px solid #aaa !important}.grp-autocomplete-wrapper-m2m a.grp-related-remove,.grp-autocomplete-wrapper-m2m div.grp-loader,.grp-autocomplete-wrapper-fk a.grp-related-remove,.grp-autocomplete-wrapper-fk div.grp-loader{display:inline-block;position:absolute;right:24px;top:0;font-size:0;line-height:0;width:23px;height:23px;border:1px solid #ccc}.grp-autocomplete-wrapper-m2m div.grp-loader,.grp-autocomplete-wrapper-fk div.grp-loader{background:#fdfdfd url("../images/backgrounds/loading-small.gif") 50% 50% no-repeat scroll}.grp-autocomplete-wrapper-m2m.grp-autocomplete-preremove input.ui-autocomplete-input,.grp-autocomplete-wrapper-m2m.grp-autocomplete-preremove li.grp-repr a,.grp-autocomplete-wrapper-fk.grp-autocomplete-preremove input.ui-autocomplete-input,.grp-autocomplete-wrapper-fk.grp-autocomplete-preremove li.grp-repr a{color:#bf3030 !important;text-decoration:line-through}.grp-autocomplete-wrapper-m2m li.grp-repr.grp-autocomplete-preremove a,.grp-autocomplete-wrapper-fk li.grp-repr.grp-autocomplete-preremove a{color:#bf3030 !important;text-decoration:line-through}.grp-autocomplete-wrapper-m2m li.grp-repr a:after{content:","}.grp-autocomplete-wrapper-m2m li.grp-repr:nth-last-child(2) a:after{content:""}.grp-autocomplete-wrapper-m2m li.grp-repr a:after{content:","}.grp-autocomplete-wrapper-m2m li.grp-repr:nth-last-child(2) a:after{content:""}.grp-autocomplete-wrapper-m2m{display:inline-block;position:relative;padding:0;height:auto !important;vertical-align:top;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:visible}.grp-autocomplete-wrapper-m2m ul.grp-repr{float:left;padding-right:55px;width:100%;max-width:700px;overflow:hidden;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.grp-autocomplete-wrapper-m2m ul.grp-repr li{float:left;display:inline;overflow:hidden;white-space:nowrap;overflow:hidden;-ms-text-overflow:ellipsis;-o-text-overflow:ellipsis;text-overflow:ellipsis;max-width:700px}.grp-autocomplete-wrapper-m2m ul.grp-repr li.grp-repr{margin:3px 5px 0 1px;font-weight:bold;line-height:18px}.grp-autocomplete-wrapper-m2m ul.grp-repr li.grp-repr a.grp-m2m-remove{color:#555;padding-left:5px}.grp-autocomplete-wrapper-m2m ul.grp-repr li.grp-search{margin-top:1px;margin-bottom:1px;background:transparent}.grp-autocomplete-wrapper-m2m ul.grp-repr li.grp-search input[type=text]{margin:0 0 -1px;padding:0 4px;width:100px;height:22px;font-size:12px;line-height:16px;outline:0;border:0;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;background:transparent;cursor:text}.grp-autocomplete-wrapper-m2m a.related-lookup{top:-1px;right:-1px}.grp-autocomplete-wrapper-m2m a.grp-related-remove+a.grp-related-lookup{-moz-border-radius-bottomleft:0;-webkit-border-bottom-left-radius:0;border-bottom-left-radius:0}.grp-autocomplete-wrapper-m2m a.grp-related-remove,.grp-autocomplete-wrapper-m2m a.grp-related-remove+div.grp-loader{top:-1px;right:23px}.grp-autocomplete-wrapper-fk{display:inline-block;position:relative;width:auto !important;height:auto !important;margin:0 !important;padding:0 !important;vertical-align:top;font-size:0 !important;line-height:0 !important;background:transparent !important}.grp-autocomplete-wrapper-fk input.ui-autocomplete-input{padding-right:55px}.grp-errors .grp-autocomplete-wrapper-m2m,.grp-errors .grp-autocomplete-wrapper-fk input.ui-autocomplete-input,.grp-errors a.grp-related-remove{border-color:#bf3030 !important}#changelist table.grp-table div.autocomplete-wrapper-fk a.grp-related-remove,#changelist table.grp-table div.autocomplete-wrapper-m2m a.grp-related-remove,#changelist table.grp-table div.autocomplete-wrapper-fk div.grp-loader,#changelist table.grp-table div.autocomplete-wrapper-m2m div.grp-loader{top:-5px}.grp-autocomplete-wrapper-m2m .grp-autocomplete-hidden-field,.grp-autocomplete-wrapper-fk .grp-autocomplete-hidden-field{position:absolute !important;z-index:0 !important;padding:0 !important;width:1px !important;height:1px !important;font-size:0 !important;line-height:0 !important;color:transparent !important;border:0 !important;background:transparent !important}.grp-actions{margin:0;padding:0;border:0;overflow:hidden;*zoom:1;float:right;font-weight:bold}.grp-actions li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:left;padding-left:5px;padding-right:5px}.grp-actions li:first-child{padding-left:0}.grp-actions li:last-child{padding-right:0}.grp-actions li.last{padding-right:0}.grp-actions li.grp-add-link a,.grp-actions li.grp-add-link>span:first-child,.grp-actions li.grp-change-link a,.grp-actions li.grp-change-link>span:first-child,.grp-actions li.grp-delete-link a,.grp-actions li.grp-delete-link>span:first-child{padding-left:20px;display:block;font-weight:bold}.grp-actions li.grp-add-link a{background-position:0 0}.grp-actions li.grp-add-link a:hover,.grp-actions li.grp-add-link a.add-link-hover{background-position:0 -417px}.grp-actions li.grp-change-link a{background-position:0 -834px}.grp-actions li.grp-change-link a:hover,.grp-actions li.grp-change-link a.change-link-hover{background-position:0 -1251px}.grp-actions li.grp-delete-link a,.grp-actions li.grp-delete-link>span:first-child{background-position:0 -1668px}.grp-actions li.grp-icon a,.grp-actions li.grp-icon>span:first-child{padding:0 6px 0 6px}.grp-group{position:relative;float:left;clear:both;margin:0 -4px 5px;padding:2px;width:100%;border:2px solid #ccc;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;background:#fff}.grp-group.grp-closed{border:2px solid #ddd}.grp-group.grp-closed:hover{border:2px solid #ccc}.grp-module h2{padding:5px 10px 4px;text-shadow:0 1px 0 #f5f5f5;border-bottom:1px solid #ccc;-moz-border-radius-topleft:3px;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-moz-border-radius-topright:3px;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2U1ZTVlNSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2RiZGJkYiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e5e5e5),color-stop(100%, #dbdbdb));background-image:-moz-linear-gradient(#e5e5e5,#dbdbdb);background-image:-webkit-linear-gradient(#e5e5e5,#dbdbdb);background-image:linear-gradient(#e5e5e5,#dbdbdb)}.grp-module h3{padding:5px 10px;text-shadow:0 1px 0 #f5f5f5;border-top:1px solid #f5f5f5;border-bottom:1px solid #ccc;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2U1ZTVlNSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2RiZGJkYiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e5e5e5),color-stop(100%, #dbdbdb));background-image:-moz-linear-gradient(#e5e5e5,#dbdbdb);background-image:-webkit-linear-gradient(#e5e5e5,#dbdbdb);background-image:linear-gradient(#e5e5e5,#dbdbdb)}@media screen and (-webkit-min-device-pixel-ratio: 0){.grp-module h3{padding:5px 10px 4px}}.grp-module h4{padding:5px 10px;text-shadow:0 1px 0 #f5f5f5;border-top:1px solid #f5f5f5;border-bottom:1px solid #ccc;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2VhZWFlYSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2UwZTBlMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #eaeaea),color-stop(100%, #e0e0e0));background-image:-moz-linear-gradient(#eaeaea,#e0e0e0);background-image:-webkit-linear-gradient(#eaeaea,#e0e0e0);background-image:linear-gradient(#eaeaea,#e0e0e0)}@media screen and (-webkit-min-device-pixel-ratio: 0){.grp-module h4{padding:5px 10px 4px}}.grp-group>h2{padding:5px 10px 4px;text-shadow:0 1px 0 #f5f5f5;border-bottom:1px solid #ccc;-moz-border-radius-topleft:3px;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-moz-border-radius-topright:3px;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2U1ZTVlNSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2RiZGJkYiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e5e5e5),color-stop(100%, #dbdbdb));background-image:-moz-linear-gradient(#e5e5e5,#dbdbdb);background-image:-webkit-linear-gradient(#e5e5e5,#dbdbdb);background-image:linear-gradient(#e5e5e5,#dbdbdb);border:1px solid #ccc;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.grp-group.grp-open>h2{margin-bottom:2px}.grp-group.grp-tabular.grp-open>h2{margin-bottom:0}.grp-group .grp-module>h3{border-top:0 !important;-moz-border-radius-topleft:3px;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-moz-border-radius-topright:3px;-webkit-border-top-right-radius:3px;border-top-right-radius:3px}.grp-group .grp-module>h3:only-child,.grp-group .grp-module>h3:last-child{border-bottom:0}.grp-module{position:relative;float:left;clear:both;margin:0 0 5px;padding:0;width:100%;border:1px solid #ccc;background:#eee;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.grp-module .grp-module{margin:0;border:0}.grp-module .grp-module+.grp-module{border-top:1px solid #d9d9d9;-moz-border-radius-topleft:0;-webkit-border-top-left-radius:0;border-top-left-radius:0;-moz-border-radius-topright:0;-webkit-border-top-right-radius:0;border-top-right-radius:0}.grp-change-form .grp-module:not(.grp-submit-row){min-width:960px}.grp-empty-form{display:none !important}.grp-collapse.grp-closed *,.grp-collapse.grp-closed .grp-row:not(tr).grp-cells,.grp-collapse.grp-closed .grp-table,.grp-collapse.grp-closed .grp-table *{display:none}.grp-collapse.grp-closed>.grp-collapse-handler,.grp-collapse.grp-closed>.grp-collapse-handler *,.grp-collapse.grp-closed .grp-tools,.grp-collapse.grp-closed .grp-tools *{display:block !important}.grp-collapse.grp-closed .grp-tools li *[style^="display: none"]{display:none !important}.grp-collapse .grp-collapse-handler{cursor:pointer}.grp-collapse h2.grp-collapse-handler{text-shadow:0 1px 0 #c4e9f5}.grp-collapse.grp-open>h2.grp-collapse-handler{border-bottom:1px solid #ccc;-moz-border-radius-topleft:2px;-webkit-border-top-left-radius:2px;border-top-left-radius:2px;-moz-border-radius-topright:2px;-webkit-border-top-right-radius:2px;border-top-right-radius:2px;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ExZDRlNSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2JjZGZlYiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #a1d4e5),color-stop(100%, #bcdfeb));background-image:-moz-linear-gradient(#a1d4e5,#bcdfeb);background-image:-webkit-linear-gradient(#a1d4e5,#bcdfeb);background-image:linear-gradient(#a1d4e5,#bcdfeb)}.grp-collapse.grp-closed>h2.grp-collapse-handler{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2JjZGZlYiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2ExZDRlNSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #bcdfeb),color-stop(100%, #a1d4e5));background-image:-moz-linear-gradient(#bcdfeb,#a1d4e5);background-image:-webkit-linear-gradient(#bcdfeb,#a1d4e5);background-image:linear-gradient(#bcdfeb,#a1d4e5)}.grp-collapse.grp-closed>h2.grp-collapse-handler:hover{background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ExZDRlNSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2JjZGZlYiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #a1d4e5),color-stop(100%, #bcdfeb));background-image:-moz-linear-gradient(#a1d4e5,#bcdfeb);background-image:-webkit-linear-gradient(#a1d4e5,#bcdfeb);background-image:linear-gradient(#a1d4e5,#bcdfeb)}.grp-collapse.grp-module.grp-closed>h2.grp-collapse-handler{border-bottom:0}.grp-collapse h3.grp-collapse-handler{text-shadow:0 1px 0 #fff}.grp-collapse.grp-open>h3.grp-collapse-handler{border-top:1px solid #e2f2f7;border-bottom:1px solid #d9d9d9;-moz-border-radius-topleft:2px;-webkit-border-top-left-radius:2px;border-top-left-radius:2px;-moz-border-radius-topright:2px;-webkit-border-top-right-radius:2px;border-top-right-radius:2px;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2NlZTlmMiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2UxZjBmNSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #cee9f2),color-stop(100%, #e1f0f5));background-image:-moz-linear-gradient(#cee9f2,#e1f0f5);background-image:-webkit-linear-gradient(#cee9f2,#e1f0f5);background-image:linear-gradient(#cee9f2,#e1f0f5)}.grp-collapse.grp-closed>h3.grp-collapse-handler{border-bottom:0;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2UxZjBmNSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2NlZTlmMiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e1f0f5),color-stop(100%, #cee9f2));background-image:-moz-linear-gradient(#e1f0f5,#cee9f2);background-image:-webkit-linear-gradient(#e1f0f5,#cee9f2);background-image:linear-gradient(#e1f0f5,#cee9f2)}.grp-collapse.grp-closed>h3.grp-collapse-handler:hover{background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2NlZTlmMiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2UxZjBmNSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #cee9f2),color-stop(100%, #e1f0f5));background-image:-moz-linear-gradient(#cee9f2,#e1f0f5);background-image:-webkit-linear-gradient(#cee9f2,#e1f0f5);background-image:linear-gradient(#cee9f2,#e1f0f5)}.grp-collapse::selection,.grp-collapse .grp-row::selection,.grp-collapse-handler::selection{background:transparent}.grp-module .grp-row:not(tr){position:relative;float:left;clear:both;padding:5px 10px;width:100%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;border-top:1px solid #fff;border-bottom:1px solid #ddd}.grp-predelete .grp-module .grp-row:not(tr){border-bottom-color:#f2d4d4;border-top-color:#fcf4f4}.grp-module .grp-row:not(tr):first-child,.grp-module .grp-row:not(tr).grp-first{border-top:0;-moz-border-radius-topleft:2px;-webkit-border-top-left-radius:2px;border-top-left-radius:2px;-moz-border-radius-topright:2px;-webkit-border-top-right-radius:2px;border-top-right-radius:2px}.grp-module .grp-row:not(tr):last-of-type,.grp-module .grp-row:not(tr).grp-last{border-bottom:0;-moz-border-radius-bottomleft:2px;-webkit-border-bottom-left-radius:2px;border-bottom-left-radius:2px;-moz-border-radius-bottomright:2px;-webkit-border-bottom-right-radius:2px;border-bottom-right-radius:2px}.grp-module .grp-row:not(tr).grp-row-hidden{top:-1px;margin-bottom:-1px;padding:0;height:0px;font-size:0;line-height:0;border-top-color:#eee}.grp-module .grp-row:not(tr).grp-row-hidden div{display:none}.grp-module .grp-row:not(tr).grp-cells{display:table-row;padding-top:0;padding-bottom:0}.grp-module .grp-row:not(tr).grp-cells .grp-cell{display:table-cell;vertical-align:top;position:relative;padding:8px 20px 8px 0;height:100%;white-space:nowrap;border-right:1px solid #ddd;overflow:visible}.grp-module .grp-row:not(tr).grp-cells .grp-cell+.grp-cell{padding-left:20px;border-left:1px solid #fff}.grp-module .grp-row:not(tr).grp-cells .grp-cell:last-of-type{padding-right:0;border-right:0 !important}.grp-module .grp-row+.grp-module>.grp-row:first-child,.grp-module h2+.grp-module>.grp-row:first-child,.grp-module .grp-module+.grp-module>.grp-row:first-child{border-top:1px solid #fff}fieldset.grp-module .grp-row{padding:8px 10px;overflow:hidden}.grp-listing{border-top:1px solid #fff}.grp-listing:first-child{border-top:0;-moz-border-radius-topleft:2px;-webkit-border-top-left-radius:2px;border-top-left-radius:2px;-moz-border-radius-topright:2px;-webkit-border-top-right-radius:2px;border-top-right-radius:2px}.grp-listing li.grp-add-link a,.grp-listing li.grp-add-link>span:first-child,.grp-listing li.grp-change-link a,.grp-listing li.grp-change-link>span:first-child,.grp-listing li.grp-delete-link a,.grp-listing li.grp-delete-link>span:first-child{padding-left:20px;display:block;font-weight:bold}.grp-listing li.grp-add-link a{background-position:0 0}.grp-listing li.grp-add-link a:hover,.grp-listing li.grp-add-link a.add-link-hover{background-position:0 -417px}.grp-listing li.grp-change-link a{background-position:0 -834px}.grp-listing li.grp-change-link a:hover,.grp-listing li.grp-change-link a.change-link-hover{background-position:0 -1251px}.grp-listing li.grp-delete-link a,.grp-listing li.grp-delete-link>span:first-child{background-position:0 -1668px}.grp-listing li.grp-icon a,.grp-listing li.grp-icon>span:first-child{padding:0 6px 0 6px}.grp-listing li.grp-add-link,.grp-listing li.grp-change-link,.grp-listing li.grp-delete-link{padding-left:25px}.grp-listing li.grp-add-link a,.grp-listing li.grp-add-link>span:first-child,.grp-listing li.grp-change-link a,.grp-listing li.grp-change-link>span:first-child,.grp-listing li.grp-delete-link a,.grp-listing li.grp-delete-link>span:first-child{display:block;margin-left:-20px;padding-left:20px;overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis}.grp-listing-small{border-top:1px solid #fff;font-size:11px}.grp-listing-small:first-child{border-top:0;-moz-border-radius-topleft:2px;-webkit-border-top-left-radius:2px;border-top-left-radius:2px;-moz-border-radius-topright:2px;-webkit-border-top-right-radius:2px;border-top-right-radius:2px}.grp-listing-small li.grp-add-link a,.grp-listing-small li.grp-add-link>span:first-child,.grp-listing-small li.grp-change-link a,.grp-listing-small li.grp-change-link>span:first-child,.grp-listing-small li.grp-delete-link a,.grp-listing-small li.grp-delete-link>span:first-child{padding-left:20px;display:block;font-weight:bold}.grp-listing-small li.grp-add-link a{background-position:0 0}.grp-listing-small li.grp-add-link a:hover,.grp-listing-small li.grp-add-link a.add-link-hover{background-position:0 -417px}.grp-listing-small li.grp-change-link a{background-position:0 -834px}.grp-listing-small li.grp-change-link a:hover,.grp-listing-small li.grp-change-link a.change-link-hover{background-position:0 -1251px}.grp-listing-small li.grp-delete-link a,.grp-listing-small li.grp-delete-link>span:first-child{background-position:0 -1668px}.grp-listing-small li.grp-icon a,.grp-listing-small li.grp-icon>span:first-child{padding:0 6px 0 6px}.grp-listing-small li.grp-add-link,.grp-listing-small li.grp-change-link,.grp-listing-small li.grp-delete-link{padding-left:25px}.grp-listing-small li.grp-add-link a,.grp-listing-small li.grp-add-link>span:first-child,.grp-listing-small li.grp-change-link a,.grp-listing-small li.grp-change-link>span:first-child,.grp-listing-small li.grp-delete-link a,.grp-listing-small li.grp-delete-link>span:first-child{display:block;margin-left:-20px;padding-left:20px;overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis}.grp-listing-small a+span,.grp-listing-small span+span{position:relative;display:block;line-height:11px;margin:-1px 0 3px}.grp-listing-small p{margin:2px 0 4px;line-height:13px}.grp-stacked .grp-module.grp-add-item,.grp-tabular .grp-module.grp-add-item{margin-bottom:0;height:28px;font-weight:bold;border-color:transparent;background:transparent}.grp-stacked .grp-module.grp-add-item>a,.grp-tabular .grp-module.grp-add-item>a{font-weight:bold;padding:5px 10px;position:relative;top:6px}.grp-group:not(.grp-tabular){padding-bottom:0}.grp-group:not(.grp-tabular) .grp-module{margin-bottom:2px}.grp-group:not(.grp-tabular) .grp-module .grp-module{-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0;border-radius:0 0 2px 2px;border-top:1px solid #fff}.grp-group:not(.grp-tabular) .grp-module.grp-predelete .grp-module{border-top-color:#fdf8f8}.grp-group:not(.grp-tabular) h2{margin-bottom:2px}.grp-group:not(.grp-tabular).grp-closed{padding-bottom:2px}.grp-group:not(.grp-tabular).grp-closed h2{margin-bottom:0}.grp-tabular .grp-table{display:table;margin:0 0 -2px;width:100%;border:0 none;border-collapse:separate;border-spacing:0 2px;background:none}@media screen and (-webkit-min-device-pixel-ratio: 0){.grp-tabular .grp-table{margin-bottom:-1px;border-spacing:0 1px !important}}.grp-tabular .grp-table .grp-tr{display:table-row}.grp-tabular .grp-table .grp-th,.grp-tabular .grp-table .grp-td{position:relative;display:table-cell;float:none;height:100%;margin-right:0;overflow:hidden;padding:1px 20px;vertical-align:top;white-space:nowrap;border-left:1px solid #fff;border-right:1px solid #e0e0e0}.grp-tabular .grp-table .grp-th:first-of-type,.grp-tabular .grp-table .grp-td:first-of-type{padding-left:10px}.grp-tabular .grp-table .grp-thead{display:table-header-group;color:#aaa;font-size:11px;font-weight:bold}.grp-tabular .grp-table .grp-thead .grp-th,.grp-tabular .grp-table .grp-thead .grp-td{background:none;border-top:0}.grp-tabular .grp-table .grp-thead .grp-th:last-of-type,.grp-tabular .grp-table .grp-thead .grp-td:last-of-type{border-right:0}.grp-tabular .grp-table .grp-tbody{display:table-row-group;margin-top:0}.grp-tabular .grp-table .grp-tbody .grp-th,.grp-tabular .grp-table .grp-tbody .grp-td{padding-bottom:5px;padding-top:5px;border-bottom:1px solid #d4d4d4;border-top:1px solid #d4d4d4;background:#eee}.grp-tabular .grp-table .grp-tbody .grp-th:first-of-type,.grp-tabular .grp-table .grp-tbody .grp-td:first-of-type{border-left:1px solid #d4d4d4}.grp-tabular .grp-table .grp-tbody .grp-th:first-child,.grp-tabular .grp-table .grp-tbody .grp-td:first-child{-moz-border-radius-topleft:2px;-webkit-border-top-left-radius:2px;border-top-left-radius:2px;-moz-border-radius-bottomleft:2px;-webkit-border-bottom-left-radius:2px;border-bottom-left-radius:2px}.grp-tabular .grp-table .grp-tbody .grp-th:last-of-type,.grp-tabular .grp-table .grp-tbody .grp-td:last-of-type{border-right:1px solid #d4d4d4;-moz-border-radius-topright:2px;-webkit-border-top-right-radius:2px;border-top-right-radius:2px;-moz-border-radius-bottomright:2px;-webkit-border-bottom-right-radius:2px;border-bottom-right-radius:2px}.grp-tabular .grp-table .grp-tbody .grp-th.grp-tools-container,.grp-tabular .grp-table .grp-tbody .grp-td.grp-tools-container{padding-left:0;width:100%;-moz-border-radius-topright:2px;-webkit-border-top-right-radius:2px;border-top-right-radius:2px;-moz-border-radius-bottomright:2px;-webkit-border-bottom-right-radius:2px;border-bottom-right-radius:2px}.grp-tabular .grp-table .grp-tbody.grp-predelete .grp-th,.grp-tabular .grp-table .grp-tbody.grp-predelete .grp-td{border-right-color:#f2d4d4;border-left-color:#faf0f0;background:#f7e4e4}.grp-tabular .grp-table .grp-tbody.grp-predelete .grp-th:first-of-type,.grp-tabular .grp-table .grp-tbody.grp-predelete .grp-td:first-of-type{border-left:1px solid #d4d4d4}.grp-tabular .grp-table .grp-tbody.grp-predelete .grp-th:last-of-type,.grp-tabular .grp-table .grp-tbody.grp-predelete .grp-td:last-of-type{border-right:1px solid #d4d4d4}.grp-tabular .grp-table .grp-tfoot{display:table-footer-group;color:#aaa}.grp-tabular .grp-table .grp-tfoot .grp-td:last-of-type{border-right:0}.grp-tabular .grp-table .grp-module{float:none;clear:none;background:0;border:0}.grp-tabular .grp-module.grp-transparent{margin:2px 0 0}.grp-horizontal-list-container{margin:0;padding:0;border:0;overflow:hidden;*zoom:1}.grp-horizontal-list{margin:0;padding:0;border:0;overflow:hidden;*zoom:1}.grp-horizontal-list li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:left;padding-left:5px;padding-right:5px}.grp-horizontal-list li:first-child{padding-left:0}.grp-horizontal-list li:last-child{padding-right:0}.grp-horizontal-list li.last{padding-right:0}.grp-horizontal-list-right>li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:right;padding-left:5px;padding-right:5px}.grp-horizontal-list-right>li:first-child{padding-right:0}.grp-horizontal-list-right>li:last-child{padding-left:0}.grp-horizontal-list-right>li.last{padding-left:0}.grp-predelete{background:#f7e4e4}.grp-predelete h2,.grp-collapse.grp-predelete>h2.grp-collapse-handler,.grp-predelete h3,.grp-collapse.grp-predelete>h3.grp-collapse-handler,.grp-predelete h4,.grp-collapse.grp-predelete .grp-collapse>h4.grp-collapse-handler{border-bottom-color:#f0cccc;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Y3ZTRlNCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2Y0ZDhkOCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #f7e4e4),color-stop(100%, #f4d8d8));background-image:-moz-linear-gradient(#f7e4e4,#f4d8d8);background-image:-webkit-linear-gradient(#f7e4e4,#f4d8d8);background-image:linear-gradient(#f7e4e4,#f4d8d8)}.grp-collapse.grp-predelete>h2.grp-collapse-handler:hover,.grp-collapse.grp-predelete>h3.grp-collapse-handler:hover,.grp-predelete .grp-collapse>h4.grp-collapse-handler:hover,.grp-collapse.grp-open.grp-predelete>h2.grp-collapse-handler,.grp-collapse.grp-open.grp-predelete>h3.grp-collapse-handler,.grp-predelete .grp-collapse.grp-open>h4.grp-collapse-handler{border-bottom-color:#f0cccc;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Y0ZDhkOCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2Y3ZTRlNCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #f4d8d8),color-stop(100%, #f7e4e4));background-image:-moz-linear-gradient(#f4d8d8,#f7e4e4);background-image:-webkit-linear-gradient(#f4d8d8,#f7e4e4);background-image:linear-gradient(#f4d8d8,#f7e4e4)}.grp-predelete,.grp-predelete .grp-module,.grp-predelete .grp-th,.grp-predelete .grp-td{background:#f7e4e4}.button-state-blue,button,a.fb_show,a.related-lookup,body.tinyMCE input[name="src"]+div a,body.tinyMCE input[name="href"]+div a,input[type=button],a.related-lookup.m2m,.grp-autocomplete-wrapper-m2m a.related-lookup,.grp-autocomplete-wrapper-fk a.related-lookup,button.ui-datepicker-trigger,button.ui-timepicker-trigger,button.ui-datetime-now,.grp-pulldown-container .grp-pulldown-handler:hover,.grp-pulldown-container.grp-pulldown-state-open .grp-pulldown-handler,.grp-pulldown-container.grp-pulldown-state-open .grp-pulldown-handler:hover{color:#fff;border:1px solid #ccc;background-color:#e1f0f5}.button-state-grey,button:hover,a.fb_show:hover,a.related-lookup:hover,body.tinyMCE input[name="src"]+div a:hover,body.tinyMCE input[name="href"]+div a:hover,input[type=button]:hover,a.related-lookup.m2m:hover,.grp-autocomplete-wrapper-m2m a.related-lookup:hover,.grp-autocomplete-wrapper-fk a.related-lookup:hover,button.ui-datepicker-trigger:hover,button.ui-timepicker-trigger:hover,button.ui-datetime-now:hover,.grp-pulldown-container .grp-pulldown-handler,.grp-pulldown-container .grp-pulldown-content,.grp-pulldown-container .grp-pulldown-content:hover{color:#444;border:1px solid #ccc;background-color:#eee}.button-state-dark-grey{color:#444;border:1px solid #ccc;border-color:#ccc;background-color:#dbdbdb}.button-state-white,a.grp-related-remove,a.grp-related-remove:hover{border:1px solid #ccc;background-color:#fdfdfd}.button-state-red{color:#fff;border:1px solid #ccc;background-color:#bf3030}.button-state-transparent{border:1px solid transparent;background-color:transparent;background-image:none}.grp-button{position:relative;display:inline-block;margin:0;padding:5px;height:28px;font-weight:bold;-moz-border-radius:5px !important;-webkit-border-radius:5px;border-radius:5px !important;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer;overflow:hidden;vertical-align:top}@media screen and (-webkit-min-device-pixel-ratio: 0){.grp-button{padding:5px 10px}}input[type="submit"]{position:relative;display:inline-block;margin:0;padding:5px;height:28px;font-weight:bold;-moz-border-radius:5px !important;-webkit-border-radius:5px;border-radius:5px !important;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer;overflow:hidden;vertical-align:top;color:#fff;border:1px solid #2b8aab;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzRmYjJkMyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzMwOWJiZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #4fb2d3),color-stop(100%, #309bbf));background-image:-moz-linear-gradient(#4fb2d3,#309bbf);background-image:-webkit-linear-gradient(#4fb2d3,#309bbf);background-image:linear-gradient(#4fb2d3,#309bbf)}@media screen and (-webkit-min-device-pixel-ratio: 0){input[type="submit"]{padding:5px 10px}}input[type="submit"]:hover,input[type="submit"]:focus{color:#fff;border:1px solid #373737;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzVlNWU1ZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzQ0NDQ0NCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #5e5e5e),color-stop(100%, #444444));background-image:-moz-linear-gradient(#5e5e5e,#444444);background-image:-webkit-linear-gradient(#5e5e5e,#444444);background-image:linear-gradient(#5e5e5e,#444444)}.grp-fixed-footer input[type="submit"]:hover,.grp-fixed-footer input[type="submit"]:focus{color:#444;border:1px solid #c8c8c8;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff),color-stop(100%, #eeeeee));background-image:-moz-linear-gradient(#ffffff,#eeeeee);background-image:-webkit-linear-gradient(#ffffff,#eeeeee);background-image:linear-gradient(#ffffff,#eeeeee)}a.grp-button,button.grp-button,input[type=button].grp-button{position:relative;display:inline-block;margin:0;padding:5px;height:28px;font-weight:bold;-moz-border-radius:5px !important;-webkit-border-radius:5px;border-radius:5px !important;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer;overflow:hidden;vertical-align:top;color:#fff;border:1px solid #2b8aab;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzRmYjJkMyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzMwOWJiZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #4fb2d3),color-stop(100%, #309bbf));background-image:-moz-linear-gradient(#4fb2d3,#309bbf);background-image:-webkit-linear-gradient(#4fb2d3,#309bbf);background-image:linear-gradient(#4fb2d3,#309bbf);padding:5px 10px}@media screen and (-webkit-min-device-pixel-ratio: 0){a.grp-button,button.grp-button,input[type=button].grp-button{padding:5px 10px}}a.grp-button:hover,a.grp-button:focus,button.grp-button:hover,button.grp-button:focus,input[type=button].grp-button:hover,input[type=button].grp-button:focus{color:#fff;border:1px solid #373737;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzVlNWU1ZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzQ0NDQ0NCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #5e5e5e),color-stop(100%, #444444));background-image:-moz-linear-gradient(#5e5e5e,#444444);background-image:-webkit-linear-gradient(#5e5e5e,#444444);background-image:linear-gradient(#5e5e5e,#444444)}.grp-fixed-footer a.grp-button:hover,.grp-fixed-footer a.grp-button:focus,.grp-fixed-footer button.grp-button:hover,.grp-fixed-footer button.grp-button:focus,.grp-fixed-footer input[type=button].grp-button:hover,.grp-fixed-footer input[type=button].grp-button:focus{color:#444;border:1px solid #c8c8c8;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff),color-stop(100%, #eeeeee));background-image:-moz-linear-gradient(#ffffff,#eeeeee);background-image:-webkit-linear-gradient(#ffffff,#eeeeee);background-image:linear-gradient(#ffffff,#eeeeee)}a.grp-button.grp-delete-link,button.grp-button.grp-delete-link,input[type=button].grp-button.grp-delete-link{color:#fff;border:1px solid #ab2b2b;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2QzNGY0ZiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2JmMzAzMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #d34f4f),color-stop(100%, #bf3030));background-image:-moz-linear-gradient(#d34f4f,#bf3030);background-image:-webkit-linear-gradient(#d34f4f,#bf3030);background-image:linear-gradient(#d34f4f,#bf3030)}a.grp-button.grp-delete-link:hover,a.grp-button.grp-delete-link:focus,button.grp-button.grp-delete-link:hover,button.grp-button.grp-delete-link:focus,input[type=button].grp-button.grp-delete-link:hover,input[type=button].grp-button.grp-delete-link:focus{color:#fff;border:1px solid #373737;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzVlNWU1ZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzQ0NDQ0NCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #5e5e5e),color-stop(100%, #444444));background-image:-moz-linear-gradient(#5e5e5e,#444444);background-image:-webkit-linear-gradient(#5e5e5e,#444444);background-image:linear-gradient(#5e5e5e,#444444)}.grp-fixed-footer a.grp-button.grp-delete-link:hover,.grp-fixed-footer a.grp-button.grp-delete-link:focus,.grp-fixed-footer button.grp-button.grp-delete-link:hover,.grp-fixed-footer button.grp-button.grp-delete-link:focus,.grp-fixed-footer input[type=button].grp-button.grp-delete-link:hover,.grp-fixed-footer input[type=button].grp-button.grp-delete-link:focus{color:#444;border:1px solid #c8c8c8;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff),color-stop(100%, #eeeeee));background-image:-moz-linear-gradient(#ffffff,#eeeeee);background-image:-webkit-linear-gradient(#ffffff,#eeeeee);background-image:linear-gradient(#ffffff,#eeeeee)}a.grp-button.grp-cancel-link,button.grp-button.grp-cancel-link,input[type=button].grp-button.grp-cancel-link{color:#fff;border:1px solid #7b7b7b;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2EyYTJhMiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzg4ODg4OCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #a2a2a2),color-stop(100%, #888888));background-image:-moz-linear-gradient(#a2a2a2,#888888);background-image:-webkit-linear-gradient(#a2a2a2,#888888);background-image:linear-gradient(#a2a2a2,#888888)}a.grp-button.grp-cancel-link:hover,a.grp-button.grp-cancel-link:focus,button.grp-button.grp-cancel-link:hover,button.grp-button.grp-cancel-link:focus,input[type=button].grp-button.grp-cancel-link:hover,input[type=button].grp-button.grp-cancel-link:focus{color:#fff;border:1px solid #373737;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzVlNWU1ZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzQ0NDQ0NCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #5e5e5e),color-stop(100%, #444444));background-image:-moz-linear-gradient(#5e5e5e,#444444);background-image:-webkit-linear-gradient(#5e5e5e,#444444);background-image:linear-gradient(#5e5e5e,#444444)}.grp-fixed-footer a.grp-button.grp-cancel-link:hover,.grp-fixed-footer a.grp-button.grp-cancel-link:focus,.grp-fixed-footer button.grp-button.grp-cancel-link:hover,.grp-fixed-footer button.grp-button.grp-cancel-link:focus,.grp-fixed-footer input[type=button].grp-button.grp-cancel-link:hover,.grp-fixed-footer input[type=button].grp-button.grp-cancel-link:focus{color:#444;border:1px solid #c8c8c8;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff),color-stop(100%, #eeeeee));background-image:-moz-linear-gradient(#ffffff,#eeeeee);background-image:-webkit-linear-gradient(#ffffff,#eeeeee);background-image:linear-gradient(#ffffff,#eeeeee)}a.grp-button.grp-reset-link,button.grp-button.grp-reset-link,input[type=button].grp-button.grp-reset-link{color:#fff;border:1px solid #7b7b7b;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2EyYTJhMiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzg4ODg4OCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #a2a2a2),color-stop(100%, #888888));background-image:-moz-linear-gradient(#a2a2a2,#888888);background-image:-webkit-linear-gradient(#a2a2a2,#888888);background-image:linear-gradient(#a2a2a2,#888888)}a.grp-button.grp-reset-link:hover,a.grp-button.grp-reset-link:focus,button.grp-button.grp-reset-link:hover,button.grp-button.grp-reset-link:focus,input[type=button].grp-button.grp-reset-link:hover,input[type=button].grp-button.grp-reset-link:focus{color:#fff;border:1px solid #373737;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzVlNWU1ZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzQ0NDQ0NCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #5e5e5e),color-stop(100%, #444444));background-image:-moz-linear-gradient(#5e5e5e,#444444);background-image:-webkit-linear-gradient(#5e5e5e,#444444);background-image:linear-gradient(#5e5e5e,#444444)}.grp-fixed-footer a.grp-button.grp-reset-link:hover,.grp-fixed-footer a.grp-button.grp-reset-link:focus,.grp-fixed-footer button.grp-button.grp-reset-link:hover,.grp-fixed-footer button.grp-button.grp-reset-link:focus,.grp-fixed-footer input[type=button].grp-button.grp-reset-link:hover,.grp-fixed-footer input[type=button].grp-button.grp-reset-link:focus{color:#444;border:1px solid #c8c8c8;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff),color-stop(100%, #eeeeee));background-image:-moz-linear-gradient(#ffffff,#eeeeee);background-image:-webkit-linear-gradient(#ffffff,#eeeeee);background-image:linear-gradient(#ffffff,#eeeeee)}button,a.fb_show,a.related-lookup,body.tinyMCE input[name="src"]+div a,body.tinyMCE input[name="href"]+div a{position:relative;display:inline-block;margin:0 0 0 -25px;padding:0;width:25px;height:25px;-moz-border-radius-topright:3px;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-moz-border-radius-bottomright:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer;overflow:hidden;vertical-align:top}input[type=button]{position:relative;display:inline-block;margin:0 0 0 -25px;padding:0;width:25px;height:25px;-moz-border-radius-topright:3px;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-moz-border-radius-bottomright:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer;overflow:hidden;vertical-align:top;margin:0 0 0 -2px;padding:0 10px;width:auto;font-family:Arial,sans-serif;font-size:11px;line-height:13px;font-weight:bold;color:#309bbf}input[type=button]:hover{color:#444}input:focus+input[type=button]{border:1px solid #aaa}.grp-placeholder-related-fk,.grp-placeholder-related-m2m,.grp-placeholder-related-generic{position:relative;display:block;top:-24px;margin:0 0 -20px 130px;padding:0;font-weight:bold}table .grp-placeholder-related-fk,table .grp-placeholder-related-m2m,table .grp-placeholder-related-generic{top:-20px;margin-bottom:-25px}.grp-placeholder-related-fk .grp-placeholder-label:first-child,.grp-placeholder-related-m2m .grp-placeholder-label:first-child,.grp-placeholder-related-generic .grp-placeholder-label:first-child{display:inline-block;margin-top:4px}.grp-placeholder-related-fk .grp-placeholder-label:first-child *,.grp-placeholder-related-m2m .grp-placeholder-label:first-child *,.grp-placeholder-related-generic .grp-placeholder-label:first-child *{margin-top:-4px}table .grp-placeholder-related-fk .grp-placeholder-label:first-child,table .grp-placeholder-related-m2m .grp-placeholder-label:first-child,table .grp-placeholder-related-generic .grp-placeholder-label:first-child{margin-top:5px}table .grp-placeholder-related-fk .grp-placeholder-label:first-child *,table .grp-placeholder-related-m2m .grp-placeholder-label:first-child *,table .grp-placeholder-related-generic .grp-placeholder-label:first-child *{margin-top:-5px}.grp-placeholder-related-fk img,.grp-placeholder-related-m2m img,.grp-placeholder-related-generic img{vertical-align:top}.grp-errors .grp-placeholder-related-fk,.grp-errors .grp-placeholder-related-m2m,.grp-errors .grp-placeholder-related-generic{display:none}.grp-placeholder-related-fk .grp-separator:after,.grp-placeholder-related-m2m .grp-separator:after,.grp-placeholder-related-generic .grp-separator:after{content:",";display:inline-block;padding-right:4px}a.fb_show,a.related-lookup,body.tinyMCE input[name="src"]+div a,body.tinyMCE input[name="href"]+div a{display:inline-block;margin-bottom:-5px;background-position:0 -1197px}a.fb_show:hover,a.fb_show.related-lookup-hover,a.related-lookup:hover,a.related-lookup.related-lookup-hover,body.tinyMCE input[name="src"]+div a:hover,body.tinyMCE input[name="src"]+div a.related-lookup-hover,body.tinyMCE input[name="href"]+div a:hover,body.tinyMCE input[name="href"]+div a.related-lookup-hover{background-position:0 -1240px}a.related-lookup+strong{position:relative;top:2px;margin-left:5px}a.related-lookup.m2m,.grp-autocomplete-wrapper-m2m a.related-lookup{background-position:0 -1111px}a.related-lookup.m2m:hover,a.related-lookup.m2m.related-lookup-m2m-hover,.grp-autocomplete-wrapper-m2m a.related-lookup:hover,.grp-autocomplete-wrapper-m2m a.related-lookup.related-lookup-m2m-hover{background-position:0 -1154px}.grp-autocomplete-wrapper-fk a.related-lookup{background-position:0 -1197px}.grp-autocomplete-wrapper-fk a.related-lookup:hover,.grp-autocomplete-wrapper-fk a.related-lookup.related-lookup-hover{background-position:0 -1240px}a.grp-related-remove{background-position:0 -1283px}a.grp-related-remove:hover,a.grp-related-remove.related-remove-hover{background-position:0 -1326px}button.ui-datepicker-trigger{background-position:0 -608px}button.ui-datepicker-trigger:hover,button.ui-datepicker-trigger.datepicker-hover{background-position:0 -651px}button.ui-timepicker-trigger{background-position:0 -2025px}button.ui-timepicker-trigger:hover,button.ui-timepicker-trigger.timepicker-hover{background-position:0 -2068px}button.ui-timepicker-trigger+button.ui-datetime-now{margin-left:6px !important;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}button.ui-datetime-now{background-position:0 -694px}button.ui-datetime-now:hover,button.ui-datetime-now.datetime-now-hover{background-position:0 -737px}.grp-search-button{background-position:0 -1197px;border-color:transparent !important;background-color:transparent !important}.grp-search-button:hover,.grp-search-button.related-lookup-hover{background-position:0 -1240px}a.grp-add-another{background-position:0 -6672px}a.grp-add-another:hover,a.grp-add-another.tools-related-add-handler-hover{background-position:0 -7089px}a.grp-add-another:not([href]){background-position:0 -6255px;cursor:not-allowed}a.grp-change-related{background-position:0 -7923px}a.grp-change-related:hover,a.grp-change-related.tools-related-edit-handler-hover{background-position:0 -8340px}a.grp-change-related:not([href]){background-position:0 -7506px;cursor:not-allowed}a.grp-delete-related{background-position:0 -9174px}a.grp-delete-related:hover,a.grp-delete-related.tools-related-remove-handler-hover{background-position:0 -9591px}a.grp-delete-related:not([href]){background-position:0 -8757px;cursor:not-allowed}.grp-row a.add-another{top:-7px}.grp-row ul.radiolist+a.add-another,.grp-row ul.checkboxlist+a.add-another{top:3px}p.grp-help+*+a.add-another{float:right;top:-20px;margin-bottom:-20px}.grp-td a.add-another{float:none}.grp-td select+a.add-another{top:-6px}.radiolist.inline+a.add-another,.checkboxlist.inline+a.add-another{float:left;margin-left:-20px;margin-right:-10000px}.grp-row.grp-cells ul.radiolist.inline+a.add-another,.grp-row.grp-cells ul.checkboxlist.inline+a.add-another{float:none;margin-right:0}input:focus+button,.vDateField:focus+span a,.vTimeField:focus+span a,input:focus+a.fb_show,input:focus+a.related-lookup,input:focus+*+a.related-lookup,input:focus+a.add-another,.grp-state-focus a.related-lookup,body.tinyMCE input[name="src"]:focus+div a,body.tinyMCE input[name="href"]:focus+div a{border:1px solid #aaa !important}input:focus+.grp-search-button{border-color:transparent !important}.grp-errors input+button,.grp-errors .vDateField+span a,.grp-errors .vTimeField+span a,.grp-errors input+a.fb_show,.grp-errors input+a.related-lookup,.grp-errors input+*+a.related-lookup,.grp-errors input+a.add-another,.grp-errors .grp-state-focus a.related-lookup,.grp-errors a.grp-related-remove,.grp-errors .grp-state-focus a.related-remove{border-color:#bf3030 !important}img[src*="admin/img/icon-unknown"][src$=".gif"],img[src*="admin/img/icon-no"][src$=".gif"],img[src*="admin/img/icon-yes"][src$=".gif"]{position:relative;height:0;width:0;top:0;margin:-2px 0;padding:8px;font-size:0}img[src*="admin/img/icon-unknown"][src$=".gif"]{background-position:0 -1903px}img[src*="admin/img/icon-no"][src$=".gif"]{background-position:0 -1868px}img[src*="admin/img/icon-yes"][src$=".gif"]{background-position:0 -1938px}.grp-object-tools{margin:0;padding:0;border:0;overflow:hidden;*zoom:1;position:relative;float:right;top:-40px;margin:0 0 -40px}.grp-object-tools li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:left;padding-left:5px;padding-right:5px}.grp-object-tools li:first-child{padding-left:0}.grp-object-tools li:last-child{padding-right:0}.grp-object-tools li.last{padding-right:0}.grp-object-tools a{display:block;padding:4px 15px;font-weight:bold;-moz-border-radius:30px;-webkit-border-radius:30px;border-radius:30px;color:#fff;border:1px solid #777;opacity:.5;background:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzk5OTk5OSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzg4ODg4OCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #999999),color-stop(100%, #888888));background:-moz-linear-gradient(#999999,#888888);background:-webkit-linear-gradient(#999999,#888888);background:linear-gradient(#999999,#888888)}.grp-object-tools a.grp-state-focus{opacity:1}.grp-object-tools a:hover{opacity:1;border:1px solid #2987a6;background:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzM2YjBkOSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzMwOWJiZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #36b0d9),color-stop(100%, #309bbf));background:-moz-linear-gradient(#36b0d9,#309bbf);background:-webkit-linear-gradient(#36b0d9,#309bbf);background:linear-gradient(#36b0d9,#309bbf)}.grp-object-tools a.grp-add-link{padding-left:28px;background:url('../images/icons-s79f97b581c.png') 0 -891px no-repeat,url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzY2NjY2NiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzQ0NDQ0NCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background:url('../images/icons-s79f97b581c.png') 0 -891px no-repeat,-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #666666),color-stop(100%, #444444));background:url('../images/icons-s79f97b581c.png') 0 -891px no-repeat,-moz-linear-gradient(#666666,#444444);background:url('../images/icons-s79f97b581c.png') 0 -891px no-repeat,-webkit-linear-gradient(#666666,#444444);background:url('../images/icons-s79f97b581c.png') 0 -891px no-repeat,linear-gradient(#666666,#444444)}.grp-object-tools a.grp-add-link:hover{background:url('../images/icons-s79f97b581c.png') 0 -891px no-repeat,url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzM2YjBkOSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzMwOWJiZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background:url('../images/icons-s79f97b581c.png') 0 -891px no-repeat,-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #36b0d9),color-stop(100%, #309bbf));background:url('../images/icons-s79f97b581c.png') 0 -891px no-repeat,-moz-linear-gradient(#36b0d9,#309bbf);background:url('../images/icons-s79f97b581c.png') 0 -891px no-repeat,-webkit-linear-gradient(#36b0d9,#309bbf);background:url('../images/icons-s79f97b581c.png') 0 -891px no-repeat,linear-gradient(#36b0d9,#309bbf)}.grp-object-tools a.grp-viewsite-link,.grp-object-tools a[target="_blank"]{padding-left:28px;background:url('../images/icons-s79f97b581c.png') 0 -935px no-repeat,url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzk5OTk5OSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzg4ODg4OCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background:url('../images/icons-s79f97b581c.png') 0 -935px no-repeat,-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #999999),color-stop(100%, #888888));background:url('../images/icons-s79f97b581c.png') 0 -935px no-repeat,-moz-linear-gradient(#999999,#888888);background:url('../images/icons-s79f97b581c.png') 0 -935px no-repeat,-webkit-linear-gradient(#999999,#888888);background:url('../images/icons-s79f97b581c.png') 0 -935px no-repeat,linear-gradient(#999999,#888888)}.grp-object-tools a.grp-viewsite-link:hover,.grp-object-tools a[target="_blank"]:hover{background:url('../images/icons-s79f97b581c.png') 0 -935px no-repeat,url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzM2YjBkOSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzMwOWJiZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background:url('../images/icons-s79f97b581c.png') 0 -935px no-repeat,-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #36b0d9),color-stop(100%, #309bbf));background:url('../images/icons-s79f97b581c.png') 0 -935px no-repeat,-moz-linear-gradient(#36b0d9,#309bbf);background:url('../images/icons-s79f97b581c.png') 0 -935px no-repeat,-webkit-linear-gradient(#36b0d9,#309bbf);background:url('../images/icons-s79f97b581c.png') 0 -935px no-repeat,linear-gradient(#36b0d9,#309bbf)}.grp-tools{margin:0;padding:0;border:0;overflow:hidden;*zoom:1;position:relative;float:right;top:-24px;margin:0 0 -24px;padding-right:5px;height:24px;white-space:nowrap}.grp-tools li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:left;padding-left:1px;padding-right:1px}.grp-tools li:first-child{padding-left:0}.grp-tools li:last-child{padding-right:0}.grp-tools li.last{padding-right:0}.grp-tools-container .grp-tools li{float:none !important;display:inline-block}.grp-tools a,.grp-tools span{display:block;width:24px;height:24px}.grp-tools a.grp-icon-text,.grp-tools a.grp-text,.grp-tools span.grp-icon-text,.grp-tools span.grp-text{padding-left:24px;padding-right:6px;width:auto;line-height:24px;color:#444}.grp-tools a.grp-icon-text:hover,.grp-tools a.grp-text:hover,.grp-tools span.grp-icon-text:hover,.grp-tools span.grp-text:hover{color:#309bbf}.grp-tools a.grp-text,.grp-tools span.grp-text{padding-left:8px}.grp-tools a.grp-add-handler{background-position:0 -2111px}.grp-tools a.grp-add-handler:hover,.grp-tools a.grp-add-handler.tools-add-handler-hover{background-position:0 -2155px}.grp-tools a.grp-delete-handler{background-position:0 -2507px}.grp-tools a.grp-delete-handler:hover,.grp-tools a.grp-delete-handler.tools-delete-handler-hover{background-position:0 -2551px}.grp-predelete .grp-tools a.grp-delete-handler{background-position:0 -2463px}.grp-tools a.grp-remove-handler{background-position:0 -2859px}.grp-tools a.grp-remove-handler:hover,.grp-tools a.grp-remove-handler.tools-remove-handler-hover{background-position:0 -2903px}.grp-tools a.grp-drag-handler{background-position:0 -2595px}.grp-tools a.grp-drag-handler:hover,.grp-tools a.grp-drag-handler.tools-drag-handler-hover{background-position:0 -2639px}.grp-tools a.grp-viewsite-link{background-position:0 -3123px}.grp-tools a.grp-viewsite-link:hover,.grp-tools a.grp-viewsite-link.tools-viewsite-link-hover{background-position:0 -3167px}.grp-tools a.grp-edit-link{background-position:0 -2683px}.grp-tools a.grp-edit-link:hover,.grp-tools a.grp-edit-link.tools-edit-handler-hover{background-position:0 -2727px}.grp-tools a.grp-open-handler{background-position:0 -2771px}.grp-tools a.grp-open-handler:hover,.grp-tools a.grp-open-handler.tools-open-handler-hover{background-position:0 -2815px}.grp-tools a.grp-close-handler{background-position:0 -2375px}.grp-tools a.grp-close-handler:hover,.grp-tools a.grp-close-handler.tools-close-handler-hover{background-position:0 -2419px}.grp-tools a.grp-arrow-down-handler{background-position:0 -2199px}.grp-tools a.grp-arrow-down-handler:hover,.grp-tools a.grp-arrow-down-handler.tools-arrow-down-handler-hover{background-position:0 -2243px}.grp-tools a.grp-arrow-up-handler{background-position:0 -2287px}.grp-tools a.grp-arrow-up-handler:hover,.grp-tools a.grp-arrow-up-handler.tools-arrow-up-handler-hover{background-position:0 -2331px}.grp-tools a.grp-trash-handler{background-position:0 -2947px}.grp-tools a.grp-trash-handler:hover,.grp-tools a.grp-trash-handler.tools-trash-handler-hover{background-position:0 -2991px}.grp-tools a.grp-trash-list-toggle-handler{background-position:0 -3035px}.grp-tools a.grp-trash-list-toggle-handler:hover,.grp-tools a.grp-trash-list-toggle-handler.tools-trash-list-toggle-handler-hover{background-position:0 -3079px}.grp-tools input{position:absolute;top:-30px}.grp-tools span{color:transparent !important;cursor:default !important}.grp-module>h2+.grp-tools{top:-26px;right:1px;margin-bottom:-26px}.grp-module .grp-row>.grp-tools{top:-4px;right:-9px}.grp-module>h3+.grp-tools{top:-25px;margin-bottom:-25px}.grp-module.grp-closed>h3+.grp-tools{top:-24px;margin-bottom:-24px}fieldset.grp-module .grp-row>.grp-tools{top:0}.grp-group>h2+.grp-tools{top:-28px;right:1px;margin-bottom:-28px}.grp-group.grp-closed>h2+.grp-tools{top:-26px;right:1px;margin-bottom:-26px}.grp-group.grp-tabular h2+.grp-tools{top:-27px;right:1px;margin-bottom:-27px}.grp-tools-container .grp-tools{top:0;right:-20px;margin-bottom:0}.grp-module.grp-add-item .grp-tools{top:2px}.grp-related-widget-wrapper{position:relative;float:left;display:flex}.grp-tools.grp-related-widget-tools{position:absolute;right:-30px;top:2px;z-index:1}.grp-tools.grp-related-widget-tools li{padding:0}.grp-tools.grp-related-widget-tools a{position:relative;display:inline-block;vertical-align:top;font-size:11px;line-height:16px;width:21px;height:21px}.grp-tools.grp-related-widget-tools a.add-another{top:0;margin:0}input+.grp-tools.grp-related-widget-tools,select+.grp-tools.grp-related-widget-tools,textarea+.grp-tools.grp-related-widget-tools,.radiolist+.grp-tools.grp-related-widget-tools,.checkboxlist+.grp-tools.grp-related-widget-tools{position:relative;display:inline-block;float:right;right:0;padding-left:0;margin-right:0;margin-left:5px}.radiolist+.grp-tools.grp-related-widget-tools,.checkboxlist+.grp-tools.grp-related-widget-tools{top:2px;margin-left:20px}table.grp-table{margin:0;padding:0;border-spacing:none;border-collapse:separate;border:1px solid #ccc;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}table.grp-table td,table.grp-table th{vertical-align:text-top;padding:10px;font-size:11px;line-height:15px}table.grp-table td.nowrap,table.grp-table th.nowrap{white-space:nowrap}table.grp-table thead th{vertical-align:top;padding:6px 10px 6px;font-size:11px;line-height:12px;color:#888;white-space:nowrap;border-left:1px solid #ccc;border-bottom:1px solid #ccc;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2UwZTBlMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #eeeeee),color-stop(100%, #e0e0e0));background-image:-moz-linear-gradient(#eeeeee,#e0e0e0);background-image:-webkit-linear-gradient(#eeeeee,#e0e0e0);background-image:linear-gradient(#eeeeee,#e0e0e0)}table.grp-table thead th:first-child{border-left:0}table.grp-table thead th:first-of-type{-moz-border-radius-topleft:2px;-webkit-border-top-left-radius:2px;border-top-left-radius:2px}table.grp-table thead th:last-of-type{-moz-border-radius-topright:2px;-webkit-border-top-right-radius:2px;border-top-right-radius:2px}table.grp-table thead th a{display:block;margin:-6px -10px;padding:6px 10px;height:100%;color:#59afcc}table.grp-table thead th a:hover{color:#444}table.grp-table tfoot td{vertical-align:top;padding:6px 10px 6px;font-size:11px;line-height:12px;color:#888;white-space:nowrap}table.grp-table tbody tr td,table.grp-table tbody tr th{border-bottom:1px solid #e0e0e0;border-left:1px solid #e4e4e4;vertical-align:top}table.grp-table tbody tr td:first-child,table.grp-table tbody tr th:first-child{border-left:0 !important}table.grp-table tbody tr th{font-size:12px;font-weight:bold}table.grp-table tbody tr.grp-row-even td,table.grp-table tbody tr.grp-row-even th,table.grp-table tbody tr.grp-alt td,table.grp-table tbody tr.grp-alt th{border-left:1px solid #e0e0e0;background:#f4f4f4}table.grp-table tbody tr.grp-row-odd td,table.grp-table tbody tr.grp-row-odd th{background:#fff}table.grp-table tbody tr.grp-selected{background:#ffd}table.grp-table tbody tr.grp-row-label td{border-bottom:0;color:#666}table.grp-table tbody tr:last-child td,table.grp-table tbody tr:last-child th{border-bottom:0}table.grp-table tbody tr:last-child td:first-child,table.grp-table tbody tr:last-child th:first-child{-moz-border-radius-bottomleft:2px;-webkit-border-bottom-left-radius:2px;border-bottom-left-radius:2px}table.grp-table tbody tr:last-child td:last-child,table.grp-table tbody tr:last-child th:last-child{-moz-border-radius-bottomright:2px;-webkit-border-bottom-right-radius:2px;border-bottom-right-radius:2px}table.grp-table tbody tr a.related-lookup+strong{top:0}table.grp-table tbody tr.grp-errors td,table.grp-table tbody tr.grp-errors th{padding-top:6px;padding-bottom:0}table.grp-table tbody tr.grp-errors td ul.errorlist,table.grp-table tbody tr.grp-errors th ul.errorlist{margin:0 0 3px !important}table.grp-table tfoot td{border-bottom:0;border-top:1px solid #d4d4d4}table.grp-table tfoot td:first-child{border-left:0}@media screen and (-webkit-min-device-pixel-ratio: 0){table.grp-table td>a:first-child,table.grp-table th>a:first-child{position:relative;top:1px}}table.grp-table td>input[type="checkbox"],table.grp-table td>input[type="radio"],table.grp-table th>input[type="checkbox"],table.grp-table th>input[type="radio"]{margin:0}table.grp-table td>input[type="file"],table.grp-table td>input[type="checkbox"],table.grp-table td>input[type="radio"],table.grp-table td>select,table.grp-table td p input[type="text"],table.grp-table th>input[type="file"],table.grp-table th>input[type="checkbox"],table.grp-table th>input[type="radio"],table.grp-table th>select,table.grp-table th p input[type="text"]{position:relative;margin-top:-7px !important;margin-bottom:-5px !important}table.grp-table td>input[type="text"],table.grp-table td>input[type="password"],table.grp-table td>input[type="url"],table.grp-table td>input[type="email"],table.grp-table td>input[type="number"],table.grp-table td>input[type="button"],table.grp-table td>select,table.grp-table td p input[type="text"],table.grp-table td p input[type="url"],table.grp-table td p input[type="email"],table.grp-table td p input[type="number"],table.grp-table td p>input[type="button"],table.grp-table td div.grp-related-widget-wrapper,table.grp-table th>input[type="text"],table.grp-table th>input[type="password"],table.grp-table th>input[type="url"],table.grp-table th>input[type="email"],table.grp-table th>input[type="number"],table.grp-table th>input[type="button"],table.grp-table th>select,table.grp-table th p input[type="text"],table.grp-table th p input[type="url"],table.grp-table th p input[type="email"],table.grp-table th p input[type="number"],table.grp-table th p>input[type="button"],table.grp-table th div.grp-related-widget-wrapper{vertical-align:top;margin-top:-5px !important;margin-bottom:-5px !important}table.grp-table td>textarea,table.grp-table td div.grp-readonly,table.grp-table th>textarea,table.grp-table th div.grp-readonly{position:relative;margin:-5px 0 -5px !important}table.grp-table td ul.radiolist,table.grp-table td ul.checkboxlist,table.grp-table th ul.radiolist,table.grp-table th ul.checkboxlist{margin:-3px 0 -5px}table.grp-table td ul.radiolist.inline,table.grp-table td ul.checkboxlist.inline,table.grp-table th ul.radiolist.inline,table.grp-table th ul.checkboxlist.inline{margin:-3px 0 -5px;white-space:normal !important;max-width:400px}table.grp-table td a.fb_show,table.grp-table td a.related-lookup,table.grp-table td .ui-datepicker-trigger,table.grp-table td .ui-timepicker-trigger,table.grp-table th a.fb_show,table.grp-table th a.related-lookup,table.grp-table th .ui-datepicker-trigger,table.grp-table th .ui-timepicker-trigger{margin:-5px 0 -11px -25px}table.grp-table td .grp-autocomplete-wrapper-m2m,table.grp-table td .grp-autocomplete-wrapper-fk,table.grp-table th .grp-autocomplete-wrapper-m2m,table.grp-table th .grp-autocomplete-wrapper-fk{margin:-5px 0 !important}table.grp-table td .grp-autocomplete-wrapper-m2m a.related-lookup,table.grp-table td .grp-autocomplete-wrapper-fk a.related-lookup,table.grp-table th .grp-autocomplete-wrapper-m2m a.related-lookup,table.grp-table th .grp-autocomplete-wrapper-fk a.related-lookup{top:0;margin-top:0}table.grp-table td ul.radiolist.inline+a.add-another,table.grp-table td ul.checkboxlist.inline+a.add-another,table.grp-table th ul.radiolist.inline+a.add-another,table.grp-table th ul.checkboxlist.inline+a.add-another{top:-5px}table.grp-table td>ul.errorlist,table.grp-table th>ul.errorlist{margin:8px 0 -7px !important}table.grp-table td>ul.errorlist:first-child,table.grp-table th>ul.errorlist:first-child{margin:-2px 0 8px !important}table.grp-table.grp-sortable thead th{margin:0;padding:0}table.grp-table.grp-sortable thead th div.grp-text span{display:block;padding:6px 10px;white-space:nowrap}table.grp-table.grp-sortable thead th div.grp-text span input[type="checkbox"]{margin:-6px 0 !important}table.grp-table.grp-sortable thead th.sortable{white-space:nowrap}table.grp-table.grp-sortable thead th.sortable .grp-text{position:relative;z-index:400;display:block;margin:0;padding:0;white-space:nowrap}table.grp-table.grp-sortable thead th.sortable .grp-text a{margin:0;padding:6px 10px;display:block}table.grp-table.grp-sortable thead th.sortable .grp-sortoptions{position:relative;z-index:410;display:block;float:right;clear:right;margin:0 5px 0 0px;width:50px;white-space:nowrap}table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a{position:relative;float:right;display:inline-block;margin:0;padding:0}table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-sortremove,table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-ascending,table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-descending{width:21px;height:24px}table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-sortremove{visibility:hidden;background-position:0 -1696px}table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-sortremove:hover,table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-sortremove.sort-remove-hover{background-position:0 -1739px}table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-ascending{background-position:0 -1782px}table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-descending{background-position:0 -1825px}table.grp-table.grp-sortable thead th.sortable .grp-sortoptions:hover a.grp-sortremove{visibility:visible}table.grp-table.grp-sortable thead th.sortable .grp-sortoptions span.grp-sortpriority{position:relative;float:right;display:block;padding:6px 0 0;height:16px;font-weight:bold}table.grp-table.grp-sortable thead th.sortable:hover{background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2UwZTBlMCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e0e0e0),color-stop(100%, #eeeeee));background-image:-moz-linear-gradient(#e0e0e0,#eeeeee);background-image:-webkit-linear-gradient(#e0e0e0,#eeeeee);background-image:linear-gradient(#e0e0e0,#eeeeee)}table.grp-table.grp-sortable thead th.sortable.sorted.ascending{background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2UwZTBlMCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e0e0e0),color-stop(100%, #eeeeee));background-image:-moz-linear-gradient(#e0e0e0,#eeeeee);background-image:-webkit-linear-gradient(#e0e0e0,#eeeeee);background-image:linear-gradient(#e0e0e0,#eeeeee)}table.grp-table.grp-sortable thead th.sortable.sorted.ascending:hover{background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2UwZTBlMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #eeeeee),color-stop(100%, #e0e0e0));background-image:-moz-linear-gradient(#eeeeee,#e0e0e0);background-image:-webkit-linear-gradient(#eeeeee,#e0e0e0);background-image:linear-gradient(#eeeeee,#e0e0e0)}table.grp-table.grp-sortable thead th.sortable.sorted.descending{background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2UwZTBlMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #eeeeee),color-stop(100%, #e0e0e0));background-image:-moz-linear-gradient(#eeeeee,#e0e0e0);background-image:-webkit-linear-gradient(#eeeeee,#e0e0e0);background-image:linear-gradient(#eeeeee,#e0e0e0)}table.grp-table.grp-sortable thead th.sortable.sorted.descending:hover{background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2UwZTBlMCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e0e0e0),color-stop(100%, #eeeeee));background-image:-moz-linear-gradient(#e0e0e0,#eeeeee);background-image:-webkit-linear-gradient(#e0e0e0,#eeeeee);background-image:linear-gradient(#e0e0e0,#eeeeee)}table.grp-table.grp-sortable thead th.sortable.sorted a{color:#444;font-weight:bold}table.grp-table.grp-sortable thead th.sortable.sorted .grp-text a{padding-right:60px}table.grp-table thead th.optional{font-weight:normal !important}table.grp-table tr.row-label td{margin-top:-1px;padding-top:2px;padding-bottom:0;font-size:9px}table.grp-table.xfull,table.grp-table.grp-full-width{width:100%}table.grp-table.orderable tbody tr td:hover{cursor:move}table.grp-table.orderable tbody tr td:first-child{padding-left:14px;background-image:url("../images/backgrounds/nav-grabber.gif");background-repeat:repeat-y}table.grp-table.orderable-initalized .order-cell,body>tr>td.order-cell{display:none}table.grp-table#grp-change-history{width:100%}table.grp-table#grp-change-history tbody th{width:160px}table.grp-table#grp-change-history tbody td,table.grp-table#grp-change-history tbody th{background:#eee}table.grp-table.grp-full{width:100%}.grp-module>table.grp-table.grp-full{border:0;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.model-index table.grp-table th{padding:7px 10px 8px}.grp-pagination ul{margin:0;padding:0;border:0;overflow:hidden;*zoom:1}.grp-pagination ul li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:left;padding-left:0;padding-right:0}.grp-pagination ul li:first-child{padding-left:0}.grp-pagination ul li:last-child{padding-right:0}.grp-pagination ul li.last{padding-right:0}.grp-pagination ul li{margin-right:1px;border:1px solid #fff;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.grp-pagination ul li a,.grp-pagination ul li span{display:inline-block;padding:4px 8px 4px;min-width:25px;font-size:11px;font-weight:bold;text-align:center;border:1px solid;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.grp-pagination ul li a{color:#59afcc;border-color:#d9d9d9}.grp-pagination ul li a:hover{color:#444;border-color:#bdbdbd;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2UwZTBlMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #eeeeee),color-stop(100%, #e0e0e0));background-image:-moz-linear-gradient(#eeeeee,#e0e0e0);background-image:-webkit-linear-gradient(#eeeeee,#e0e0e0);background-image:linear-gradient(#eeeeee,#e0e0e0)}.grp-pagination ul li span{color:#444;border-color:#bdbdbd;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2UwZTBlMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #eeeeee),color-stop(100%, #e0e0e0));background-image:-moz-linear-gradient(#eeeeee,#e0e0e0);background-image:-webkit-linear-gradient(#eeeeee,#e0e0e0);background-image:linear-gradient(#eeeeee,#e0e0e0)}.grp-pagination ul li.grp-results{margin-right:4px}.grp-pagination ul li.grp-separator{border-color:transparent}.grp-pagination ul li.grp-separator span{padding:4px 0;min-width:10px;font-size:14px;border-color:transparent;background:transparent}.grp-pagination ul li.grp-showall{margin-left:4px}.grp-pagination ul li:last-child{clear:right}.grp-date-hierarchy ul{position:relative;float:left;clear:both;font-size:11px;line-height:16px;font-weight:bold}.grp-date-hierarchy ul li{position:relative;float:left}.grp-date-hierarchy ul li a,.grp-date-hierarchy ul li span{padding:2px 5px}.grp-date-hierarchy ul li a.grp-date-hierarchy-back{color:#59afcc;padding-left:15px;background-position:0 -522px}.grp-date-hierarchy ul li a.grp-date-hierarchy-back:hover,.grp-date-hierarchy ul li a.grp-date-hierarchy-back.date-hierarchy-back-hover{background-position:0 -565px}.grp-date-hierarchy ul li a.grp-date-hierarchy-back:hover{color:#444}form#grp-changelist-search-form{margin:1px 0 0;border:1px solid #fff;-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px}.grp-pulldown-container{position:relative;top:0;width:inherit;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;margin:-1px 0 0}.grp-pulldown-container .grp-pulldown-handler{display:block;margin:0;font-weight:bold;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;cursor:pointer;background-position:100% -979px;background-size:auto !important;color:#309bbf}.grp-pulldown-container .grp-pulldown-handler:hover,.grp-pulldown-container .grp-pulldown-handler.pulldown-handler-hover{background-position:100% -1023px}.grp-pulldown-container .grp-pulldown-handler:hover{color:#444;background-position:100% -1023px}.grp-pulldown-container.grp-pulldown-state-open{z-index:910;float:left;clear:both;-moz-box-shadow:0 10px 50px #333;-webkit-box-shadow:0 10px 50px #333;box-shadow:0 10px 50px #333}.grp-pulldown-container.grp-pulldown-state-open .grp-pulldown-handler{color:#444;text-shadow:0 1px 0 #fff;-moz-border-radius-bottomleft:0 !important;-webkit-border-bottom-left-radius:0 !important;border-bottom-left-radius:0 !important;-moz-border-radius-bottomright:0 !important;-webkit-border-bottom-right-radius:0 !important;border-bottom-right-radius:0 !important;border-bottom:1px solid #ccc !important;background-position:100% -1067px}.grp-pulldown-container.grp-pulldown-state-open .grp-pulldown-handler:hover{color:#444;background-position:100% -1067px}.grp-pulldown-container.grp-pulldown-state-open .grp-pulldown-content{float:left;clear:both}.grp-pulldown-container .grp-pulldown-content{padding:0;width:100%;-moz-border-radius-bottomleft:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;-moz-border-radius-bottomright:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px;border-top:1px solid #fff !important;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;color:#444}.grp-pulldown-container .grp-pulldown-content:hover{color:#444}#grp-filters{position:relative}#grp-filters.grp-module{z-index:800}.grp-filter{position:relative;float:left;clear:both;width:100%;*zoom:1}.grp-filter:not(.grp-module){height:28px}.grp-filter .grp-pulldown-container{border:1px solid #fff}.grp-filter .grp-module:first-child h3{border-top:0}.grp-filter .grp-row label{display:inline-block;font-family:Arial,sans-serif;font-size:11px;line-height:13px;color:#444;display:block;margin:0 0 2px;color:#888;font-weight:bold}.grp-filter .grp-row label.required{font-weight:bold}.grp-filter .grp-row select{width:100% !important;max-width:100% !important}.grp-filter .grp-row a{display:block;margin:-5px -10px;padding:2px 10px;color:#59afcc;font-size:11px}.grp-filter .grp-row a:hover{color:#444}.grp-filter .grp-row.grp-selected a{padding-left:17px;color:#444;background-position:0 -2085px}.grp-filter:after{content:"\0020";display:block;height:0;clear:both;overflow:hidden;visibility:hidden}li.grp-changelist-actions{padding:5px 0 !important;background:transparent !important}li.grp-changelist-actions select{position:relative;float:left;margin:1px 5px 0 0}li.grp-changelist-actions button[type=submit]{float:right}li.grp-changelist-actions .grp-horizontal-list{margin:0;padding:0;border:0;overflow:hidden;*zoom:1;margin:-1px 0}li.grp-changelist-actions .grp-horizontal-list li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:left;padding-left:0;padding-right:0}li.grp-changelist-actions .grp-horizontal-list li:first-child{padding-left:0}li.grp-changelist-actions .grp-horizontal-list li:last-child{padding-right:0}li.grp-changelist-actions .grp-horizontal-list li.last{padding-right:0}li.grp-changelist-actions .grp-horizontal-list li{margin-right:4px;border:1px solid #333;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}li.grp-changelist-actions .grp-horizontal-list .grp-button{padding:5px 10px 4px;height:27px;-moz-border-radius:3px !important;-webkit-border-radius:3px;border-radius:3px !important}li.grp-changelist-actions .grp-horizontal-list a{opacity:1 !important;color:#59afcc;font-weight:bold;border:1px solid #111;background:#222}li.grp-changelist-actions .grp-horizontal-list a:hover{color:#fff;border:1px solid #222;background:#555}li.grp-changelist-actions .grp-horizontal-list span{color:#bbb !important;cursor:default !important;border:1px solid #111 !important;background:#222 !important}li.grp-changelist-actions li.grp-all,li.grp-changelist-actions li.grp-question,li.grp-changelist-actions li.grp-clear-selection{display:none}.grp-submit-row.grp-fixed-footer>ul>li.grp-changelist-actions{padding:5px 0 !important}.grp-changelist-results{background:#eee url("../images/backgrounds/changelist-results.png") repeat scroll !important}.grp-result-overflow-scroll .grp-changelist-results{overflow:auto;overflow-y:hidden;-ms-overflow-y:hidden}.grp-result-overflow-scroll .grp-changelist-results table.grp-table{border-right:0 !important}body.grp-change-list table.grp-table{margin:-1px !important}body.grp-change-list table.grp-table tr.grp-selected th,body.grp-change-list table.grp-table tr.grp-selected td{background:#ffd}body.grp-delete-confirmation ul.grp-nested-list{position:relative;float:left;clear:both;width:100%;margin:-2px 0 2px}body.grp-delete-confirmation ul.grp-nested-list li{font-size:12px;font-weight:normal}body.grp-delete-confirmation ul.grp-nested-list li>ul li>ul{margin-left:6px}body.grp-delete-confirmation ul.grp-nested-list li>ul li>ul>li{margin:5px 0 5px -4px;padding-left:10px;border-left:4px solid #ddd}body.grp-delete-confirmation ul.grp-nested-list li+li{margin-top:5px}body.grp-delete-confirmation ul.grp-nested-list>li{margin-left:0;font-size:14px;font-weight:bold;position:relative;float:left;clear:both;margin:0 0 5px;padding:0;width:100%;border:1px solid #ccc;background:#eee;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;margin-top:2px !important;margin-bottom:0 !important;padding:8px 10px}body.grp-delete-confirmation ul.grp-nested-list>li .grp-module{margin:0;border:0}body.grp-delete-confirmation ul.grp-nested-list>li .grp-module+.grp-module{border-top:1px solid #d9d9d9;-moz-border-radius-topleft:0;-webkit-border-top-left-radius:0;border-top-left-radius:0;-moz-border-radius-topright:0;-webkit-border-top-right-radius:0;border-top-right-radius:0}body.grp-delete-confirmation ul.grp-nested-list>li+li{margin-top:0}body.grp-delete-confirmation ul.grp-nested-list>li>ul{margin-top:8px;border-top:1px solid #ddd}body.grp-delete-confirmation ul.grp-nested-list>li>ul>li{margin-top:0 !important;padding-top:8px;padding-bottom:8px;font-size:13px;font-weight:bold;border-top:1px solid #fff;border-bottom:1px solid #ddd}body.grp-delete-confirmation ul.grp-nested-list>li>ul>li:last-child{padding-bottom:0;border-bottom:0}body.grp-delete-confirmation ul.grp-nested-list>li>ul>li>ul{margin-top:8px}body.grp-delete-confirmation ul.grp-nested-list>li>ul>li>ul>li{font-weight:bold}body.grp-delete-confirmation ul.grp-nested-list>li>ul>li>ul>li>ul li ul li{color:#888}body.grp-filebrowser table td>a:first-child,body.grp-filebrowser table th>a:first-child{position:relative;top:0}body.grp-filebrowser table td.grp-sorted a,body.grp-filebrowser table th.grp-sorted a{padding-right:30px;color:#444;font-weight:bold}body.grp-filebrowser table td.grp-sorted.grp-ascending a,body.grp-filebrowser table th.grp-sorted.grp-ascending a{background-position:100% -1782px}body.grp-filebrowser table td.grp-sorted.grp-descending a,body.grp-filebrowser table th.grp-sorted.grp-descending a{background-position:100% -1825px}body.grp-filebrowser table td{padding:10px 10px 8px}body.grp-filebrowser table td ul.grp-actions{position:relative;top:-1px;left:-5px;margin:0 -5px -1px 0}.grp-module.ui-widget{border:none}.ui-widget-content{border:1px solid #ccc;-moz-border-radius-bottomleft:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;-moz-border-radius-bottomright:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{font-weight:bold}.ui-widget-content .ui-state-default{background:#CEE9F2}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{font-weight:bold}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{font-weight:bold}.ui-sortable{position:relative;float:left;clear:both;width:100%}.ui-sortable .ui-sortable-helper,.ui-sortable .ui-sortable-placeholder{opacity:.8}.ui-sortable .ui-sortable-helper{margin:0;width:100% !important;height:auto !important;overflow:visible}.ui-sortable .grp-module.ui-sortable-placeholder{border:1px solid #ccc !important;background:transparent url("../images/backgrounds/ui-sortable-placeholder.png") 0 0 repeat scroll !important}.grp-group.grp-stacked .ui-sortable-placeholder{margin:0 0 2px}.grp-group.grp-stacked .ui-sortable-placeholder:first-child{margin-top:0}.grp-group.grp-tabular .ui-sortable .grp-module.ui-sortable-placeholder{overflow:hidden}.grp-group.grp-tabular .ui-sortable .grp-module.ui-sortable-placeholder .grp-th,.grp-group.grp-tabular .ui-sortable .grp-module.ui-sortable-placeholder .grp-td{padding-top:0 !important;padding-bottom:0 !important;background:transparent !important}.grp-group.grp-tabular .ui-sortable .grp-module.ui-sortable-helper{border-top:0 !important}.grp-group.grp-tabular .ui-sortable .grp-module.ui-sortable-helper .grp-th,.grp-group.grp-tabular .ui-sortable .grp-module.ui-sortable-helper .grp-td{background:#ffffcc !important}.grp-group.grp-stacked .ui-sortable-helper,.grp-group.grp-stacked .ui-sortable-helper .grp-module,.grp-group.grp-stacked .ui-sortable-helper h2,.grp-group.grp-stacked .ui-sortable-helper h3,.grp-group.grp-stacked .ui-sortable-helper h4,.grp-group.grp-stacked .grp-collapse.grp-predelete.ui-sortable-helper>h3.grp-collapse-handler,.grp-group.grp-stacked .grp-collapse.grp-open.predelete.ui-sortable-helper>h3.grp-collapse-handler,.grp-group.grp-stacked .grp-collapse.grp-predelete.ui-sortable-helper h4.grp-collapse-handler,.grp-group.grp-stacked .grp-collapse.grp-open.grp-predelete.ui-sortable-helper h4.grp-collapse-handler{background:#ffffcc !important}.datetime br{display:none}.datetimeshortcuts{width:40px;position:relative;margin-left:10px}.datetimeshortcuts a{margin-left:0 !important}.ui-datepicker{position:absolute;display:none;margin:-1px 0 0 !important;padding:3px 3px 0;width:auto !important;font-size:12px;border:1px solid #888;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#eee;-moz-box-shadow:0 10px 50px #333;-webkit-box-shadow:0 10px 50px #333;box-shadow:0 10px 50px #333}.ui-datepicker input,.ui-datepicker select,.ui-datepicker textarea,.ui-datepicker button{margin:0;padding:2px 5px;height:25px;font-family:Arial,sans-serif;font-size:12px;line-height:14px;font-weight:bold;color:#555;border:1px solid #ccc;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#fdfdfd;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-box-shadow:inset 0 1px 3px 0 #eee;-webkit-box-shadow:inset 0 1px 3px 0 #eee;box-shadow:inset 0 1px 3px 0 #eee;overflow:hidden;vertical-align:middle}.ui-datepicker input:focus,.ui-datepicker input.grp-state-focus,.ui-datepicker select:focus,.ui-datepicker select.grp-state-focus,.ui-datepicker textarea:focus,.ui-datepicker textarea.grp-state-focus,.ui-datepicker button:focus,.ui-datepicker button.grp-state-focus{border:1px solid #aaa;-moz-box-shadow:#ccc 0 0 6px;-webkit-box-shadow:#ccc 0 0 6px;box-shadow:#ccc 0 0 6px;background:#fff;outline:0}.ui-datepicker .ui-widget-content{background:#eee;color:#222222}.ui-datepicker .ui-widget-content a{color:#444}.ui-datepicker .ui-widget-header{padding:2px 0;height:25px;background:#cccccc;color:#222222;font-weight:bold}.ui-datepicker .ui-widget-header a{color:#444}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0;border:1px solid #bdbdbd}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:4px;width:20px;height:30px;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;cursor:pointer}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:none}.ui-datepicker .ui-datepicker-prev{left:2px;background-position:0 -3297px}.ui-datepicker .ui-datepicker-prev:hover,.ui-datepicker .ui-datepicker-prev.ui-datepicker-prev-hover{background-position:0 -3340px}.ui-datepicker .ui-datepicker-next{right:4px;background-position:0 -3211px}.ui-datepicker .ui-datepicker-next:hover,.ui-datepicker .ui-datepicker-next.ui-datepicker-next-hover{background-position:0 -3254px}.ui-datepicker .ui-datepicker-prev-hover{left:2px;border:none}.ui-datepicker .ui-datepicker-next-hover{right:4px;border:none}.ui-datepicker .ui-datepicker-title{margin:3px 27px 2px;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{float:left;font-size:1em;margin:-3px 0 -1px !important;padding:4px 3px 4px 2px;min-width:30px;border:1px solid #bbb}.ui-datepicker .ui-datepicker-title select.ui-datepicker-month-year{width:100%}.ui-datepicker .ui-datepicker-title select.ui-datepicker-month,.ui-datepicker .ui-datepicker-title select.ui-datepicker-year{width:49%}.ui-datepicker .ui-datepicker-title select.ui-datepicker-year{float:right}@media screen and (-webkit-min-device-pixel-ratio: 0){.ui-datepicker .ui-datepicker-title select,.ui-datepicker .ui-datepicker-title select:focus{padding:4px 28px 4px 5px;-webkit-appearance:textfield;background-image:url("../images/icons/form-select.png");background-position:100% 50%;background-repeat:no-repeat}}.ui-datepicker table{width:100%;font-size:11px;margin:0 0 2px;border:0}.ui-datepicker table th{padding:5px 0;text-align:center;color:#888;font-weight:bold;border:0;background:transparent}.ui-datepicker table td{min-width:25px;border:0;padding:1px}.ui-datepicker table td span,.ui-datepicker table td a{padding:3px 0 3px;margin:0 !important;text-align:center;display:block;color:#444;font-size:11px;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.ui-datepicker table td span.ui-state-default,.ui-datepicker table td a.ui-state-default{color:#444;border-color:#ccc}.ui-datepicker table td span.ui-state-hover,.ui-datepicker table td a.ui-state-hover{color:#fff !important;border-color:transparent !important;background:#444 !important}.ui-datepicker table td span.ui-state-active,.ui-datepicker table td a.ui-state-active{background:#fff}.ui-datepicker table td span.ui-state-highlight,.ui-datepicker table td a.ui-state-highlight{border-color:#bababa;background:#d6d6d6}.ui-datepicker table td.ui-datepicker-today a{border-color:#bababa;background:#d6d6d6}.ui-datepicker table td.ui-datepicker-current-day a{background:#fff}.ui-datepicker .ui-datepicker-buttonpane{position:relative;float:left;clear:both;background-image:none;width:100%;margin:5px 0 1px;padding:0;border:0}.ui-datepicker .ui-datepicker-buttonpane button{float:left;margin:3px 0;padding:4px 5px 5px;height:25px;color:#aaa;font-size:11px;border:1px solid #c7c7c7;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:transparent;box-shadow:none;cursor:pointer}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:right;opacity:1 !important;color:#444;font-weight:bold;background:#cee9f2}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current.ui-state-hover{color:#fff !important;border-color:#444 !important;background:#444 !important}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker.ui-datepicker-multi .ui-datepicker-group-first .ui-datepicker-title{margin-right:5px !important}.ui-datepicker.ui-datepicker-multi .ui-datepicker-group-first table{margin-right:5px !important}.ui-datepicker.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-title{margin-right:5px !important;margin-left:5px !important}.ui-datepicker.ui-datepicker-multi .ui-datepicker-group-middle table{margin-right:5px !important;margin-left:3px !important}.ui-datepicker.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-title{margin-left:5px !important}.ui-datepicker.ui-datepicker-multi .ui-datepicker-group-last table{margin-left:5px !important}.ui-datepicker.ui-datepicker-multi .ui-datepicker-buttonpane{border:none}.ui-datepicker.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-row-break{clear:both;width:100%;font-size:0em}.ui-datepicker-append{margin-left:6px;color:#999;font-size:10px}.ui-datepicker td.ui-state-disabled{padding:1px;text-align:center}.ui-datepicker td.ui-state-disabled span{background:#ccc;color:#555 !important;font-weight:bold;font-size:11px;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}button.ui-datepicker-close{float:left !important;margin-right:4px !important}#ui-timepicker{position:absolute;z-index:1;display:none;margin:-1px 0 0 !important;padding:5px 3px 3px 5px;width:216px;font-size:12px;border:1px solid #888;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#eee;-moz-box-shadow:0 10px 50px #333;-webkit-box-shadow:0 10px 50px #333;box-shadow:0 10px 50px #333}#ui-timepicker input,#ui-timepicker select,#ui-timepicker textarea,#ui-timepicker button{margin:0;padding:2px 5px;height:25px;font-family:Arial,sans-serif;font-size:12px;line-height:14px;font-weight:bold;color:#555;border:1px solid #ccc;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#fdfdfd;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-box-shadow:inset 0 1px 3px 0 #eee;-webkit-box-shadow:inset 0 1px 3px 0 #eee;box-shadow:inset 0 1px 3px 0 #eee;overflow:hidden;vertical-align:middle}#ui-timepicker input:focus,#ui-timepicker input.grp-state-focus,#ui-timepicker select:focus,#ui-timepicker select.grp-state-focus,#ui-timepicker textarea:focus,#ui-timepicker textarea.grp-state-focus,#ui-timepicker button:focus,#ui-timepicker button.grp-state-focus{border:1px solid #aaa;-moz-box-shadow:#ccc 0 0 6px;-webkit-box-shadow:#ccc 0 0 6px;box-shadow:#ccc 0 0 6px;background:#fff;outline:0}#ui-timepicker .ui-widget-content{background:#eee;color:#222222}#ui-timepicker .ui-widget-content a{color:#444}#ui-timepicker .ui-widget-header{padding:2px 0;height:25px;background:#cccccc;color:#222222;font-weight:bold}#ui-timepicker .ui-widget-header a{color:#444}#ui-timepicker ul{position:relative;float:left;clear:both;width:auto}#ui-timepicker ul li.row{position:relative;float:left;display:block;margin:0 2px 2px 0;padding:2px 10px 1px;width:30px;font-size:11px;text-align:center;border:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;cursor:pointer}#ui-timepicker ul li.row.ui-state-default{color:#444;border:1px solid #c7c7c7 !important;background:#e1f0f5}#ui-timepicker ul li.row.ui-state-default:hover{color:#fff;border:1px solid #666 !important;background:#444}#ui-timepicker ul li.row.ui-state-active{color:#444;border:1px solid #bababa !important;background:#d6d6d6}.ui-menu{z-index:1000;display:block;margin:0;padding:2px;list-style:none}.ui-menu li:first-child span{display:block;padding:1px 4px;color:#888;font-weight:bold}.ui-menu li:first-child+li{margin-top:3px}.ui-menu li>span.error{display:block;margin:0;padding:5px 5px 5px;color:#bf3030}.ui-menu li.ui-menu-item{margin:0;padding:0;width:100%;border:0 !important}.ui-menu li.ui-menu-item a{display:block;margin:0 !important;padding:3px 4px;color:#444;font-weight:bold !important;border:1px solid #c7c7c7;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;background:#cee9f2;cursor:pointer}.ui-menu li.ui-menu-item a:hover,.ui-menu li.ui-menu-item a.ui-state-hover,.ui-menu li.ui-menu-item a.ui-state-focus,.ui-menu li.ui-menu-item a.ui-state-active{color:#fff;border:1px solid #333;background:#444}.ui-menu li.ui-menu-item+li.ui-menu-item{margin-top:2px;border-top:0 !important}.ui-menu .ui-menu{margin-top:-3px}.ui-autocomplete{position:absolute;cursor:default;margin:-1px 0 0 !important;padding:3px;font-size:12px;border:1px solid #888;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#eee;-moz-box-shadow:0 10px 50px #333;-webkit-box-shadow:0 10px 50px #333;box-shadow:0 10px 50px #333;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.ui-autocomplete input,.ui-autocomplete select,.ui-autocomplete textarea,.ui-autocomplete button{margin:0;padding:2px 5px;height:25px;font-family:Arial,sans-serif;font-size:12px;line-height:14px;font-weight:bold;color:#555;border:1px solid #ccc;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#fdfdfd;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-box-shadow:inset 0 1px 3px 0 #eee;-webkit-box-shadow:inset 0 1px 3px 0 #eee;box-shadow:inset 0 1px 3px 0 #eee;overflow:hidden;vertical-align:middle}.ui-autocomplete input:focus,.ui-autocomplete input.grp-state-focus,.ui-autocomplete select:focus,.ui-autocomplete select.grp-state-focus,.ui-autocomplete textarea:focus,.ui-autocomplete textarea.grp-state-focus,.ui-autocomplete button:focus,.ui-autocomplete button.grp-state-focus{border:1px solid #aaa;-moz-box-shadow:#ccc 0 0 6px;-webkit-box-shadow:#ccc 0 0 6px;box-shadow:#ccc 0 0 6px;background:#fff;outline:0}.ui-autocomplete .ui-widget-content{background:#eee;color:#222222}.ui-autocomplete .ui-widget-content a{color:#444}.ui-autocomplete .ui-widget-header{padding:2px 0;height:25px;background:#cccccc;color:#222222;font-weight:bold}.ui-autocomplete .ui-widget-header a{color:#444}* html .ui-autocomplete{width:1px}body{position:relative;float:left;clear:both;overflow:hidden;*zoom:1;padding:0;width:100%;height:100%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;background:#fff;overflow:visible;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.grp-column.grp-centered{position:relative;display:block;float:none !important;margin:0 auto !important}.grp-span-fluid{float:none;display:table-cell;width:10000px}body.grp-login #grp-header,body.grp-login #grp-context-navigation,body.grp-login #grp-content-title{display:none}body.grp-login #grp-content{top:140px}body.grp-login .grp-module-login{border:0 !important;-moz-border-radius:6px;-webkit-border-radius:6px;border-radius:6px;background:#222 !important}body.grp-login .grp-module-login>.grp-row{padding:10px;border-top:1px solid #333 !important;border-bottom:1px solid #000 !important}body.grp-login .grp-module-login>.grp-row label{color:#fff}body.grp-login .grp-module-login h1{font-size:18px;padding:35px 0 0;border:1px solid #111;border-bottom:0;-moz-border-radius-topleft:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-webkit-border-top-right-radius:4px;border-top-right-radius:4px;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzMzMzMzMyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzIyMjIyMiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #333333),color-stop(100%, #222222));background-image:-moz-linear-gradient(#333333,#222222);background-image:-webkit-linear-gradient(#333333,#222222);background-image:linear-gradient(#333333,#222222)}body.grp-login .grp-module-login h1 span{display:block;margin:0;color:#eee}body.grp-login .grp-module-login h1 span.grp-admin-title{padding:5px 10px 7px;font-weight:bold}body.grp-login .grp-module-login h1 span.grp-admin-title a{color:#eee}body.grp-login .grp-module-login h1 span.grp-admin-title a:hover{color:#4fb2d3}body.grp-login .grp-module-login h1 span.grp-current-page{margin:0 -1px;padding:5px 11px 4px;border-top:0;border-bottom:0;border-left:1px solid #2c8eaf;border-right:1px solid #2c8eaf;color:#fff;font-size:13px;font-weight:bold;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzRmYjJkMyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzMwOWJiZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #4fb2d3),color-stop(100%, #309bbf));background-image:-moz-linear-gradient(#4fb2d3,#309bbf);background-image:-webkit-linear-gradient(#4fb2d3,#309bbf);background-image:linear-gradient(#4fb2d3,#309bbf)}body.grp-login .grp-module-login h1+.grp-row{border:0;border-top:1px solid #333}body.grp-login .grp-module-login .grp-module{border:1px solid #ccc;border-top:1px solid #f6f6f6;-moz-border-radius-topleft:0;-webkit-border-top-left-radius:0;border-top-left-radius:0;-moz-border-radius-topright:0;-webkit-border-top-right-radius:0;border-top-right-radius:0}body.grp-login .grp-module-login .grp-module .grp-row{padding-bottom:12px}body.grp-login .grp-module-login .grp-module .grp-row:first-child{border-top:0}body.grp-login .grp-module-login .grp-module .grp-row.grp-connected{margin-top:-5px;padding-top:0;border-top:1px solid #eee;background:#eee}body.grp-login .grp-module-login .grp-module .grp-row.grp-error-row{margin:0 -1px;padding:0;border-left:1px solid #af2c2c;border-right:1px solid #af2c2c;border-bottom:1px solid #ab2b2b;border-top:1px solid #ce3b3b;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}body.grp-login .grp-module-login .grp-module .grp-row.grp-error-row:first-child{margin-top:-1px;border-top:0;-moz-border-radius-topleft:0;-webkit-border-top-left-radius:0;border-top-left-radius:0;-moz-border-radius-topright:0;-webkit-border-top-right-radius:0;border-top-right-radius:0}body.grp-login .grp-module-login .grp-module label{margin:0 0 4px}body.grp-login .grp-module-login .grp-module label:first-child{margin-top:-2px}body.grp-login .grp-module-login .grp-module .grp-description{margin:3px 0 -3px;font-size:13px;line-height:15px}body.grp-login .grp-module-login .grp-module ul.errorlist{margin:5px 0 0;padding:0}body.grp-login .grp-module-login .grp-module ul.errorlist:last-child{margin-bottom:-2px}body.grp-login .grp-module-login .grp-module .errornote{margin:0;padding:9px 10px 7px;font-size:13px;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}body.grp-login .grp-module-login .grp-module .errornote+.errornote{margin-top:-3px;padding-top:0}body.grp-login .grp-module.grp-submit-row,body.grp-login .grp-module.grp-submit-row ul{padding:0;border:0;background:transparent}body.grp-login .grp-module.grp-submit-row li,body.grp-login .grp-module.grp-submit-row ul li{float:right;background:transparent}header#grp-header{position:fixed;z-index:1000;float:left;clear:both;width:100%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}#grp-navigation{position:relative;float:left;clear:both;width:100%;padding:0 20px;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzMzMzMzMyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzIyMjIyMiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #333333),color-stop(100%, #222222));background-image:-moz-linear-gradient(#333333,#222222);background-image:-webkit-linear-gradient(#333333,#222222);background-image:linear-gradient(#333333,#222222);overflow:hidden;*zoom:1;overflow:visible}#grp-navigation a{color:#4fb2d3}#grp-navigation a:hover{color:#fff}#grp-navigation ul li.grp-collapse{position:relative;z-index:1000}#grp-navigation ul li.grp-collapse>ul{display:none}#grp-navigation ul li.grp-collapse.grp-open>ul{position:absolute;z-index:1010;display:block;margin:-1px 0 0 -1px;width:202px;border-top:1px solid #090909;-moz-border-radius-bottomleft:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;-moz-border-radius-bottomright:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px;background:#222}#grp-navigation ul li.grp-collapse.grp-open>ul li{border-top:1px solid #3c3c3c;border-bottom:1px solid #090909}#grp-navigation ul li.grp-collapse.grp-open>ul li:last-child{border-bottom:0}div#grp-branding{position:relative;float:left;margin:0 10px 0 -20px;max-height:36px;overflow:hidden}h1#grp-admin-title{position:relative;float:left;margin:0;padding:10px 0;font-size:12px;line-height:16px}#grp-user-tools{position:relative;float:right;font-weight:bold;margin:0 -10px 0 0;border-left:1px solid #090909}#grp-user-tools>li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:left;padding-left:0;padding-right:0;border-left:1px solid #343434;border-right:1px solid #090909}#grp-user-tools>li:first-child{padding-left:0}#grp-user-tools>li:last-child{padding-right:0}#grp-user-tools>li.last{padding-right:0}#grp-user-tools>li.grp-user-options-container{width:200px}#grp-user-tools>li.grp-user-options-container:last-child{margin-right:11px}#grp-user-tools>li:last-child{border-right:0}#grp-user-tools>li a{display:block;padding:10px 10px}#grp-content{position:relative;float:left;clear:both;top:80px;padding:0 20px 120px;width:100%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}body.grp-change-form #grp-content-container>form,body.grp-change-form #grp-content-container>form>div{position:relative;float:left;clear:both}#grp-context-navigation{position:relative;float:left;clear:both;width:100%;font-weight:bold;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;border-bottom:1px solid #ccc;background:#eee}#grp-breadcrumbs{float:left}#grp-breadcrumbs>ul{margin:0;padding:0;border:0;overflow:hidden;*zoom:1;padding:5px 20px;text-shadow:0 1px 0 #f5f5f5}#grp-breadcrumbs>ul li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:left;padding-left:5px;padding-right:5px}#grp-breadcrumbs>ul li:first-child{padding-left:0}#grp-breadcrumbs>ul li:last-child{padding-right:0}#grp-breadcrumbs>ul li.last{padding-right:0}#grp-breadcrumbs>ul a{display:block;padding-right:15px;background-position:100% -348px}#grp-breadcrumbs>ul a:hover,#grp-breadcrumbs>ul a.breadcrumbs-hover{background-position:100% -392px}#grp-breadcrumbs>ul a:hover{background-position:100% -392px}#grp-page-tools{float:right;right:20px}#grp-page-tools #grp-toc-handler{display:none}#grp-page-tools #grp-toc-content{display:none}#grp-page-tools ul{margin:0;padding:0;border:0;overflow:hidden;*zoom:1;padding:0 20px;overflow:visible}#grp-page-tools ul li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:left;padding-left:5px;padding-right:5px}#grp-page-tools ul li:first-child{padding-left:0}#grp-page-tools ul li:last-child{padding-right:0}#grp-page-tools ul li.last{padding-right:0}#grp-page-tools ul li{position:relative;padding:1px 0 0}#grp-page-tools a{display:block;padding:4px 5px 4px 0}#grp-page-tools a.grp-tool{padding:0;width:18px;height:24px}#grp-page-tools a#grp-open-all{background-position:0 -2771px}#grp-page-tools a#grp-open-all:hover,#grp-page-tools a#grp-open-all.tools-open-handler-hover{background-position:0 -2815px}#grp-page-tools a#grp-close-all{background-position:0 -2375px}#grp-page-tools a#grp-close-all:hover,#grp-page-tools a#grp-close-all.tools-close-handler-hover{background-position:0 -2419px}.grp-messagelist{position:relative;float:none;clear:both;padding:0 0 20px;width:100%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.grp-messagelist>li{font-weight:bold;padding:5px 10px;border:1px solid #8ccde2;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#b5deec}.grp-messagelist>li.grp-success{border:1px solid #b7e28c;background:#d1ecb5}.grp-messagelist>li.grp-warning{border:1px solid #f3d988;background:#f8e8b7}.grp-messagelist>li.grp-error{border:1px solid #e7a1a1;background:#ecb5b5}.grp-messagelist>li+li{margin-top:2px}.grp-submit-row{padding:0;border:0;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;background:transparent;min-width:auto}.grp-submit-row>ul{margin-top:10px;overflow:visible}.grp-submit-row>ul>li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:right;padding-left:0;padding-right:0;margin-left:10px;-moz-border-radius:7px;-webkit-border-radius:7px;border-radius:7px}.grp-submit-row>ul>li:first-child{padding-right:0}.grp-submit-row>ul>li:last-child{padding-left:0}.grp-submit-row>ul>li.last{padding-left:0}.grp-submit-row>ul>li.grp-float-left{margin-left:0;margin-right:10px}.grp-submit-row input[type=button]{margin:0;width:auto;display:block}.grp-submit-row input.grp-button,.grp-submit-row a.grp-button,.grp-submit-row button.grp-button{filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=75);opacity:.75}.grp-submit-row input.grp-button.grp-default,.grp-submit-row a.grp-button.grp-default,.grp-submit-row button.grp-button.grp-default{filter:progid:DXImageTransform.Microsoft.Alpha(enabled=false);opacity:1}.grp-submit-row input.grp-button:hover,.grp-submit-row input.grp-button:focus,.grp-submit-row a.grp-button:hover,.grp-submit-row a.grp-button:focus,.grp-submit-row button.grp-button:hover,.grp-submit-row button.grp-button:focus{filter:progid:DXImageTransform.Microsoft.Alpha(enabled=false);opacity:1}.grp-submit-row button.grp-button{width:auto}.grp-submit-row .grp-button{-moz-box-shadow:0 0 10px #bbb;-webkit-box-shadow:0 0 10px #bbb;box-shadow:0 0 10px #bbb}.grp-submit-row.grp-fixed-footer>ul{margin-top:0}.grp-submit-row.grp-fixed-footer>ul>li{margin-bottom:5px;padding:5px !important;background:#444}.grp-submit-row.grp-fixed-footer .grp-button{-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none}.grp-fixed-footer{position:fixed;z-index:900;float:left;bottom:0;left:0;margin:0;padding:10px 20px 5px;width:100%;border:0;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzMzMzMzMyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzIyMjIyMiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #333333),color-stop(100%, #222222));background-image:-moz-linear-gradient(#333333,#222222);background-image:-webkit-linear-gradient(#333333,#222222);background-image:linear-gradient(#333333,#222222)}body.grp-popup #grp-navigation{display:none}body.grp-popup #grp-breadcrumbs{top:0}body.grp-popup #grp-content{top:20px}@media only screen and (max-device-width: 600px) and (max-device-height: 600px){html header#grp-header{position:static;width:100%;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}html #grp-content{top:0;padding-bottom:0}html .grp-fixed-footer{position:static;padding-left:20px;padding-right:20px;width:100%;margin:60px -20px 0 -20px;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}}
+html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font:inherit;font-size:100%;vertical-align:baseline}html{line-height:1}ol,ul{list-style:none}table{border-collapse:collapse;border-spacing:0}caption,th,td{text-align:left;font-weight:normal;vertical-align:middle}q,blockquote{quotes:none}q:before,q:after,blockquote:before,blockquote:after{content:"";content:none}a img{border:none}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}.grp-font-family,.grp-button,input[type="submit"],a.grp-button,button.grp-button,input[type=button].grp-button,.ui-datepicker,#ui-timepicker,.ui-autocomplete,body{font-family:Arial,sans-serif}.grp-font-color,body{color:#444}.grp-font-color-quiet{color:#888}.grp-font-color-error{color:#bf3030}.grp-border-radius{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.grp-border-radius-s{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}.grp-form-field-border-radius{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.grp-form-button-border-radius{-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.grp-margin-xl{margin:30px !important}.grp-margin-l{margin:20px !important}.grp-margin-m{margin:15px !important}.grp-margin{margin:10px !important}.grp-margin-s{margin:5px !important}.grp-margin-xs{margin:2px !important}.grp-margin-top-xl{margin-top:30px !important}.grp-margin-top-l{margin-top:20px !important}.grp-margin-top-m{margin-top:15px !important}.grp-margin-top{margin-top:10px !important}.grp-margin-top-s{margin-top:5px !important}.grp-margin-top-xs{margin-top:2px !important}.grp-margin-bottom-xl{margin-bottom:30px !important}.grp-margin-bottom-l{margin-bottom:20px !important}.grp-margin-bottom-m{margin-bottom:15px !important}.grp-margin-bottom{margin-bottom:10px !important}.grp-margin-bottom-s{margin-bottom:5px !important}.grp-margin-bottom-xs{margin-bottom:2px !important}.grp-margin-left-xl{margin-left:30px !important}.grp-margin-left-l{margin-left:20px !important}.grp-margin-left-m{margin-left:15px !important}.grp-margin-left{margin-left:10px !important}.grp-margin-left-s{margin-left:5px !important}.grp-margin-left-xs{margin-left:2px !important}.grp-margin-right-xl{margin-right:30px !important}.grp-margin-right-l{margin-right:20px !important}.grp-margin-right-m{margin-right:15px !important}.grp-margin-right{margin-right:10px !important}.grp-margin-right-s{margin-right:5px !important}.grp-margin-right-xs{margin-right:2px !important}.grp-margin-vertical-xl{margin-top:30px !important;margin-bottom:30px !important}.grp-margin-vertical-l{margin-top:20px !important;margin-bottom:20px !important}.grp-margin-vertical-m{margin-top:15px !important;margin-bottom:15px !important}.grp-margin-vertical{margin-top:10px !important;margin-bottom:10px !important}.grp-margin-vertical-s{margin-top:5px !important;margin-bottom:5px !important}.grp-margin-vertical-xs{margin-top:2px !important;margin-bottom:2px !important}.grp-margin-horizontal-xl{margin-left:30px !important;margin-right:30px !important}.grp-margin-horizontal-l{margin-left:20px !important;margin-right:20px !important}.grp-margin-horizontal-m{margin-left:15px !important;margin-right:15px !important}.grp-margin-horizontal{margin-left:10px !important;margin-right:10px !important}.grp-margin-horizontal-s{margin-left:5px !important;margin-right:5px !important}.grp-margin-horizontal-xs{margin-left:2px !important;margin-right:2px !important}.grp-no-margin{margin:0 !important}.grp-no-margin-top{margin-top:0 !important}.grp-no-margin-right{margin-right:0 !important}.grp-no-margin-bottom{margin-bottom:0 !important}.grp-no-margin-left{margin-left:0 !important}.grp-padding-xl{padding:30px !important}.grp-padding-l{padding:20px !important}.grp-padding-m{padding:15px !important}.grp-padding{padding:10px !important}.grp-padding-s{padding:5px !important}.grp-padding-xs{padding:2px !important}.grp-padding-top-xl{padding-top:30px !important}.grp-padding-top-l{padding-top:20px !important}.grp-padding-top-m{padding-top:15px !important}.grp-padding-top{padding-top:10px !important}.grp-padding-top-s{padding-top:5px !important}.grp-padding-top-xs{padding-top:2px !important}.grp-padding-bottom-xl{padding-bottom:30px !important}.grp-padding-bottom-l{padding-bottom:20px !important}.grp-padding-bottom-m{padding-bottom:15px !important}.grp-padding-bottom{padding-bottom:10px !important}.grp-padding-bottom-s{padding-bottom:5px !important}.grp-padding-bottom-xs{padding-bottom:2px !important}.grp-padding-left-xl{padding-left:30px !important}.grp-padding-left-l{padding-left:20px !important}.grp-padding-left-m{padding-left:15px !important}.grp-padding-left{padding-left:10px !important}.grp-padding-left-s{padding-left:5px !important}.grp-padding-left-xs{padding-left:2px !important}.grp-padding-right-xl{padding-right:30px !important}.grp-padding-right-l{padding-right:20px !important}.grp-padding-right-m{padding-right:15px !important}.grp-padding-right{padding-right:10px !important}.grp-padding-right-s{padding-right:5px !important}.grp-padding-right-xs{padding-right:2px !important}.grp-padding-vertical-xl{padding-top:30px !important;padding-bottom:30px !important}.grp-padding-vertical-l{padding-top:20px !important;padding-bottom:20px !important}.grp-padding-vertical-m{padding-top:15px !important;padding-bottom:15px !important}.grp-padding-vertical{padding-top:10px !important;padding-bottom:10px !important}.grp-padding-vertical-s{padding-top:5px !important;padding-bottom:5px !important}.grp-padding-vertical-xs{padding-top:2px !important;padding-bottom:2px !important}.grp-padding-horizontal-xl{padding-left:30px !important;padding-right:30px !important}.grp-padding-horizontal-l{padding-left:20px !important;padding-right:20px !important}.grp-padding-horizontal-m{padding-left:15px !important;padding-right:15px !important}.grp-padding-horizontal{padding-left:10px !important;padding-right:10px !important}.grp-padding-horizontal-s{padding-left:5px !important;padding-right:5px !important}.grp-padding-horizontal-xs{padding-left:2px !important;padding-right:2px !important}.grp-no-padding{padding:0 !important}.grp-no-padding-top{padding-top:0 !important}.grp-no-padding-right{padding-right:0 !important}.grp-no-padding-bottom{padding-bottom:0 !important}.grp-no-padding-left{padding-left:0 !important}.icons-sprite,.icons-add-another,.icons-back-link-rtl,.icons-back-link,.icons-breadcrumbs-rtl,.icons-breadcrumbs,.icons-date-hierarchy-back-rtl,.icons-date-hierarchy-back,.icons-datepicker,.icons-datetime-now,.icons-form-select,.icons-link-internal-rtl,.icons-object-tools-add-link,.icons-object-tools-viewsite-link,.icons-pulldown-handler,.icons-pulldown-handler_selected,.icons-related-lookup-m2m,.icons-related-lookup,.icons-related-remove,.icons-searchbox,.icons-selector-add-m2m-horizontal,.icons-selector-add-m2m-vertical,.icons-selector-filter,.icons-selector-remove-m2m-horizontal,.icons-selector-remove-m2m-vertical,.icons-sort-remove,.icons-sorted-ascending,.icons-sorted-descending,.icons-status-no,.icons-status-unknown,.icons-status-yes,.icons-th-ascending,.icons-th-descending,.icons-timepicker,.icons-tools-add-handler,.icons-tools-arrow-down-handler,.icons-tools-arrow-up-handler,.icons-tools-close-handler,.icons-tools-delete-handler-predelete,.icons-tools-delete-handler,.icons-tools-drag-handler,.icons-tools-edit-handler,.icons-tools-open-handler,.icons-tools-remove-handler,.icons-tools-trash-handler,.icons-tools-trash-list-toggle-handler,.icons-tools-viewsite-link,.icons-ui-datepicker-next,.icons-ui-datepicker-prev,a.grp-back-link,a.grp-back-link:hover,a.fb_show,a.related-lookup,body.tinyMCE input[name="src"]+div a,body.tinyMCE input[name="href"]+div a,a.related-lookup.m2m,.grp-autocomplete-wrapper-m2m a.related-lookup,.grp-autocomplete-wrapper-fk a.related-lookup,a.grp-related-remove,button.ui-datepicker-trigger,button.ui-timepicker-trigger,button.ui-datetime-now,.grp-search-button,img[src*="admin/img/icon-unknown"][src$=".gif"],img[src*="admin/img/icon-no"][src$=".gif"],img[src*="admin/img/icon-yes"][src$=".gif"],.grp-tools a.grp-add-handler,.grp-tools a.grp-delete-handler,.grp-predelete .grp-tools a.grp-delete-handler,.grp-tools a.grp-remove-handler,.grp-tools a.grp-drag-handler,.grp-tools a.grp-viewsite-link,.grp-tools a.grp-edit-link,.grp-tools a.grp-open-handler,.grp-tools a.grp-close-handler,.grp-tools a.grp-arrow-down-handler,.grp-tools a.grp-arrow-up-handler,.grp-tools a.grp-trash-handler,.grp-tools a.grp-trash-list-toggle-handler,table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-sortremove,table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-ascending,table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-descending,.grp-date-hierarchy ul li a.grp-date-hierarchy-back,.grp-pulldown-container .grp-pulldown-handler,.grp-pulldown-container .grp-pulldown-handler:hover,.grp-pulldown-container.grp-pulldown-state-open .grp-pulldown-handler,.grp-pulldown-container.grp-pulldown-state-open .grp-pulldown-handler:hover,body.grp-filebrowser table td.grp-sorted.grp-ascending a,body.grp-filebrowser table th.grp-sorted.grp-ascending a,body.grp-filebrowser table td.grp-sorted.grp-descending a,body.grp-filebrowser table th.grp-sorted.grp-descending a,.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next,#grp-breadcrumbs>ul a,#grp-breadcrumbs>ul a:hover,#grp-page-tools a#grp-open-all,#grp-page-tools a#grp-close-all{background-image:url('../images/icons-s79f97b581c.png');background-repeat:no-repeat}.icons-add-another{background-position:0 0}.icons-add-another:hover,.icons-add-another.add-another-hover{background-position:0 -44px}.icons-back-link-rtl{background-position:0 -88px}.icons-back-link-rtl:hover,.icons-back-link-rtl.back-link-rtl-hover{background-position:0 -131px}.icons-back-link{background-position:0 -174px}.icons-back-link:hover,.icons-back-link.back-link-hover{background-position:0 -217px}.icons-breadcrumbs-rtl{background-position:0 -260px}.icons-breadcrumbs-rtl:hover,.icons-breadcrumbs-rtl.breadcrumbs-rtl-hover{background-position:0 -304px}.icons-breadcrumbs{background-position:0 -348px}.icons-breadcrumbs:hover,.icons-breadcrumbs.breadcrumbs-hover{background-position:0 -392px}.icons-date-hierarchy-back-rtl{background-position:0 -436px}.icons-date-hierarchy-back-rtl:hover,.icons-date-hierarchy-back-rtl.date-hierarchy-back-rtl-hover{background-position:0 -479px}.icons-date-hierarchy-back{background-position:0 -522px}.icons-date-hierarchy-back:hover,.icons-date-hierarchy-back.date-hierarchy-back-hover{background-position:0 -565px}.icons-datepicker{background-position:0 -608px}.icons-datepicker:hover,.icons-datepicker.datepicker-hover{background-position:0 -651px}.icons-datetime-now{background-position:0 -694px}.icons-datetime-now:hover,.icons-datetime-now.datetime-now-hover{background-position:0 -737px}.icons-form-select{background-position:0 -780px}.icons-link-internal-rtl{background-position:0 -817px}.icons-link-internal-rtl:hover,.icons-link-internal-rtl.link-internal-rtl-hover{background-position:0 -854px}.icons-object-tools-add-link{background-position:0 -891px}.icons-object-tools-viewsite-link{background-position:0 -935px}.icons-pulldown-handler{background-position:0 -979px}.icons-pulldown-handler:hover,.icons-pulldown-handler.pulldown-handler-hover{background-position:0 -1023px}.icons-pulldown-handler_selected{background-position:0 -1067px}.icons-related-lookup-m2m{background-position:0 -1111px}.icons-related-lookup-m2m:hover,.icons-related-lookup-m2m.related-lookup-m2m-hover{background-position:0 -1154px}.icons-related-lookup{background-position:0 -1197px}.icons-related-lookup:hover,.icons-related-lookup.related-lookup-hover{background-position:0 -1240px}.icons-related-remove{background-position:0 -1283px}.icons-related-remove:hover,.icons-related-remove.related-remove-hover{background-position:0 -1326px}.icons-searchbox{background-position:0 -1369px}.icons-selector-add-m2m-horizontal{background-position:0 -1404px}.icons-selector-add-m2m-horizontal:hover,.icons-selector-add-m2m-horizontal.selector-add-m2m-horizontal-hover{background-position:0 -1436px}.icons-selector-add-m2m-vertical{background-position:0 -1468px}.icons-selector-add-m2m-vertical:hover,.icons-selector-add-m2m-vertical.selector-add-m2m-vertical-hover{background-position:0 -1501px}.icons-selector-filter{background-position:0 -1534px}.icons-selector-remove-m2m-horizontal{background-position:0 -1566px}.icons-selector-remove-m2m-horizontal:hover,.icons-selector-remove-m2m-horizontal.selector-remove-m2m-horizontal-hover{background-position:0 -1598px}.icons-selector-remove-m2m-vertical{background-position:0 -1630px}.icons-selector-remove-m2m-vertical:hover,.icons-selector-remove-m2m-vertical.selector-remove-m2m-vertical-hover{background-position:0 -1663px}.icons-sort-remove{background-position:0 -1696px}.icons-sort-remove:hover,.icons-sort-remove.sort-remove-hover{background-position:0 -1739px}.icons-sorted-ascending{background-position:0 -1782px}.icons-sorted-descending{background-position:0 -1825px}.icons-status-no{background-position:0 -1868px}.icons-status-unknown{background-position:0 -1903px}.icons-status-yes{background-position:0 -1938px}.icons-th-ascending{background-position:0 -1973px}.icons-th-descending{background-position:0 -1999px}.icons-timepicker{background-position:0 -2025px}.icons-timepicker:hover,.icons-timepicker.timepicker-hover{background-position:0 -2068px}.icons-tools-add-handler{background-position:0 -2111px}.icons-tools-add-handler:hover,.icons-tools-add-handler.tools-add-handler-hover{background-position:0 -2155px}.icons-tools-arrow-down-handler{background-position:0 -2199px}.icons-tools-arrow-down-handler:hover,.icons-tools-arrow-down-handler.tools-arrow-down-handler-hover{background-position:0 -2243px}.icons-tools-arrow-up-handler{background-position:0 -2287px}.icons-tools-arrow-up-handler:hover,.icons-tools-arrow-up-handler.tools-arrow-up-handler-hover{background-position:0 -2331px}.icons-tools-close-handler{background-position:0 -2375px}.icons-tools-close-handler:hover,.icons-tools-close-handler.tools-close-handler-hover{background-position:0 -2419px}.icons-tools-delete-handler-predelete{background-position:0 -2463px}.icons-tools-delete-handler{background-position:0 -2507px}.icons-tools-delete-handler:hover,.icons-tools-delete-handler.tools-delete-handler-hover{background-position:0 -2551px}.icons-tools-drag-handler{background-position:0 -2595px}.icons-tools-drag-handler:hover,.icons-tools-drag-handler.tools-drag-handler-hover{background-position:0 -2639px}.icons-tools-edit-handler{background-position:0 -2683px}.icons-tools-edit-handler:hover,.icons-tools-edit-handler.tools-edit-handler-hover{background-position:0 -2727px}.icons-tools-open-handler{background-position:0 -2771px}.icons-tools-open-handler:hover,.icons-tools-open-handler.tools-open-handler-hover{background-position:0 -2815px}.icons-tools-remove-handler{background-position:0 -2859px}.icons-tools-remove-handler:hover,.icons-tools-remove-handler.tools-remove-handler-hover{background-position:0 -2903px}.icons-tools-trash-handler{background-position:0 -2947px}.icons-tools-trash-handler:hover,.icons-tools-trash-handler.tools-trash-handler-hover{background-position:0 -2991px}.icons-tools-trash-list-toggle-handler{background-position:0 -3035px}.icons-tools-trash-list-toggle-handler:hover,.icons-tools-trash-list-toggle-handler.tools-trash-list-toggle-handler-hover{background-position:0 -3079px}.icons-tools-viewsite-link{background-position:0 -3123px}.icons-tools-viewsite-link:hover,.icons-tools-viewsite-link.tools-viewsite-link-hover{background-position:0 -3167px}.icons-ui-datepicker-next{background-position:0 -3211px}.icons-ui-datepicker-next:hover,.icons-ui-datepicker-next.ui-datepicker-next-hover{background-position:0 -3254px}.icons-ui-datepicker-prev{background-position:0 -3297px}.icons-ui-datepicker-prev:hover,.icons-ui-datepicker-prev.ui-datepicker-prev-hover{background-position:0 -3340px}.icons-small-sprite,.icons-small-add-link,.icons-small-change-link,.icons-small-delete-link,.icons-small-filter-choice-selected,.icons-small-link-external-rtl,.icons-small-link-external,.icons-small-link-internal-rtl,.icons-small-link-internal,.icons-small-sort-remove,.icons-small-tools-related-add-handler-disabled,.icons-small-tools-related-add-handler,.icons-small-tools-related-edit-handler-disabled,.icons-small-tools-related-edit-handler,.icons-small-tools-related-remove-handler-disabled,.icons-small-tools-related-remove-handler,a.grp-link-external,a.grp-link-internal,.grp-actions li.grp-add-link a,.grp-actions li.grp-change-link a,.grp-actions li.grp-delete-link a,.grp-actions li.grp-delete-link>span:first-child,.grp-listing li.grp-add-link a,.grp-listing li.grp-change-link a,.grp-listing li.grp-delete-link a,.grp-listing li.grp-delete-link>span:first-child,.grp-listing-small li.grp-add-link a,.grp-listing-small li.grp-change-link a,.grp-listing-small li.grp-delete-link a,.grp-listing-small li.grp-delete-link>span:first-child,a.grp-add-another,a.grp-add-another:not([href]),a.grp-change-related,a.grp-change-related:not([href]),a.grp-delete-related,a.grp-delete-related:not([href]),.grp-filter .grp-row.grp-selected a{background-image:url('../images/icons-small-sf6f04fa616.png');background-repeat:no-repeat}.icons-small-add-link{background-position:0 0}.icons-small-add-link:hover,.icons-small-add-link.add-link-hover{background-position:0 -417px}.icons-small-change-link{background-position:0 -834px}.icons-small-change-link:hover,.icons-small-change-link.change-link-hover{background-position:0 -1251px}.icons-small-delete-link{background-position:0 -1668px}.icons-small-filter-choice-selected{background-position:0 -2085px}.icons-small-link-external-rtl{background-position:0 -2502px}.icons-small-link-external-rtl:hover,.icons-small-link-external-rtl.link-external-rtl-hover{background-position:0 -2919px}.icons-small-link-external{background-position:0 -3336px}.icons-small-link-external:hover,.icons-small-link-external.link-external-hover{background-position:0 -3753px}.icons-small-link-internal-rtl{background-position:0 -4170px}.icons-small-link-internal-rtl:hover,.icons-small-link-internal-rtl.link-internal-rtl-hover{background-position:0 -4587px}.icons-small-link-internal{background-position:0 -5004px}.icons-small-link-internal:hover,.icons-small-link-internal.link-internal-hover{background-position:0 -5421px}.icons-small-sort-remove{background-position:0 -5838px}.icons-small-tools-related-add-handler-disabled{background-position:0 -6255px}.icons-small-tools-related-add-handler{background-position:0 -6672px}.icons-small-tools-related-add-handler:hover,.icons-small-tools-related-add-handler.tools-related-add-handler-hover{background-position:0 -7089px}.icons-small-tools-related-edit-handler-disabled{background-position:0 -7506px}.icons-small-tools-related-edit-handler{background-position:0 -7923px}.icons-small-tools-related-edit-handler:hover,.icons-small-tools-related-edit-handler.tools-related-edit-handler-hover{background-position:0 -8340px}.icons-small-tools-related-remove-handler-disabled{background-position:0 -8757px}.icons-small-tools-related-remove-handler{background-position:0 -9174px}.icons-small-tools-related-remove-handler:hover,.icons-small-tools-related-remove-handler.tools-related-remove-handler-hover{background-position:0 -9591px}.grp-font-size-xl,h1,.h1{font-size:20px}.grp-font-size-l,h2{font-size:13px}.grp-font-size-m,h3{font-size:12px}.grp-font-size,h4,.grp-button,input[type="submit"],a.grp-button,button.grp-button,input[type=button].grp-button,body{font-size:12px}.grp-font-size-s,.grp-actions{font-size:11px}.grp-font-size-xs{font-size:10px}.grp-line-height-xl,h1,.h1{line-height:24px}.grp-line-height-l,h2{line-height:18px}.grp-line-height-m,h3{line-height:16px}.grp-line-height,h4,.grp-actions,.grp-button,input[type="submit"],a.grp-button,button.grp-button,input[type=button].grp-button,body{line-height:16px}.grp-line-height-s{line-height:14px}.grp-line-height-xs{line-height:13px}a{text-decoration:none;color:#309bbf;cursor:pointer}a:hover{color:#444}a.grp-back-link{display:inline-block;width:16px;height:16px;background-position:0 -177px}a.grp-back-link:hover,a.grp-back-link.back-link-hover{background-position:0 -220px}a.grp-back-link:hover{background-position:0 -220px}a.grp-back-link.grp-icon-text{padding-left:24px;width:auto}a.grp-link-external{padding-left:18px;color:#62bbd9;background-position:0 -3336px}a.grp-link-external:hover,a.grp-link-external.link-external-hover{background-position:0 -3753px}a.grp-link-external:hover{color:#444}a.grp-link-internal{padding-left:18px;background-position:0 -5004px}a.grp-link-internal:hover,a.grp-link-internal.link-internal-hover{background-position:0 -5421px}h1,.h1{padding:20px 0 10px;font-weight:bold}h2{font-weight:bold}h3{font-weight:bold}h4{font-weight:bold}h1 span,h2 span,h3 span,h4 span{display:inline-block;margin-left:10px;font-weight:normal}em{font-style:italic}strong{font-weight:bold}.grp-float-left{float:left !important}.grp-float-right{float:right !important}.grp-transparent{border:0 !important;background-color:transparent !important}body.grp-doc article#grp-content section.grp-doc-section{margin-top:40px;border-top:5px solid #d94800}body.grp-doc article#grp-content section.grp-doc-section:first-child{margin-top:0}body.grp-doc span.anchor-helper{position:relative;top:-80px}body.grp-doc .grp-doc-code-source{padding-top:15px;border-top:1px dashed #c30}body.grp-doc .grp-doc-description{margin-bottom:20px}body.grp-doc .grp-doc-description h1{margin-top:30px;padding-top:40px;border-top:3px solid #c30}body.grp-doc .grp-doc-description h2{font-size:16px;line-height:16px;margin:40px 0 10px}body.grp-doc .grp-doc-description h3{font-size:16px;line-height:24px;margin:20px 0 10px}body.grp-doc .grp-doc-description p,body.grp-doc .grp-doc-description ul,body.grp-doc .grp-doc-description ol{margin:10px 0;font-size:14px;line-height:24px}body.grp-doc .grp-doc-description ul{list-style-type:disc}body.grp-doc .grp-doc-description ul li{margin-left:20px}body.grp-doc .grp-doc-description small{font-size:11px}body.grp-doc .grp-doc-class,body.grp-doc .grp-doc-id,body.grp-doc .grp-doc-dom,body.grp-doc .grp-doc-file,body.grp-doc .grp-doc-django{display:inline-block;margin:-2px 0;padding:0 5px;font-size:12px;font-weight:bold;line-height:18px;border:1px solid #d9d9c3;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;background:#f2f2e6}body.grp-doc .grp-doc-dom span:before{content:"<"}body.grp-doc .grp-doc-dom span:after{content:">"}body.grp-doc code{position:relative;display:inline-block;margin:0 5px;padding:0 10px 20px;font-family:Menlo, Monaco, Consolas, "Courier New", monospace;font-size:11px;border:1px solid #d9d9c3;background:#f2f2e6;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}body.grp-doc pre{margin:10px 0;padding:0}body.grp-doc pre code{display:block;margin:0;padding:0 20px 15px}p.grp-help{max-width:758px;padding:5px 0 0;color:#9a9a9a;font-size:11px !important;line-height:13px;white-space:normal !important}p.grp-help:first-child{margin-top:5px}.errorlist+p.grp-help{padding-top:2px}.grp-cells p.grp-help,.grp-td p.grp-help{max-width:278px}.grp-row p.grp-help:first-child,.grp-td p.grp-help:first-child{margin:-2px 0 8px}.grp-row p.grp-help{margin-bottom:-2px}.grp-related-widget-wrapper+p.grp-help{position:relative;clear:left;margin-top:5px}img.grp-help-tooltip{opacity:.5}.grp-table img.grp-help-tooltip{position:absolute;right:18px;top:3px}.grp-description{font-size:11px}.grp-row img{font-size:1px;line-height:1px;vertical-align:middle}.fb_show+p.grp-help a{display:inline-block;padding:3px;font-size:0;line-height:0}.fb_show+p.grp-help a img{margin:0;font-size:0;line-height:0}p.file-upload{margin:6px 0 3px;font-size:11px;line-height:14px}p.file-upload span.clearable-file-input{display:block;margin:5px 0 -12px}p.file-upload span.clearable-file-input input{margin:1px 0 0}p.file-upload span.clearable-file-input label{margin:0 0 0 5px}tr p.file-upload{margin:1px 0 -2px;line-height:13px}p.preview{margin:5px 0 0}tr p.preview{margin:9px 0 -5px}p.preview a{display:inline-block;padding:3px;font-size:0;line-height:0;border:1px solid #309bbf;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px}p.preview a:hover{border:1px solid #444}.grp-rte{font-size:13px;line-height:18px}.grp-rte h4{margin:5px 0}.grp-rte p,.grp-rte ul,.grp-rte ol,.grp-rte blockquote,.grp-rte dl,.grp-rte dt,.grp-rte dd{margin:10px 0}.grp-rte p:only-child,.grp-rte ul:only-child,.grp-rte ol:only-child,.grp-rte blockquote:only-child,.grp-rte dl:only-child,.grp-rte dt:only-child,.grp-rte dd:only-child{margin:5px 0}.grp-rte ul{margin-left:30px}.grp-rte ul li{margin-left:20px;list-style-type:disc;list-style-position:outside}.grp-rte ul li ul{margin-top:-5px !important}.grp-rte ul li ul li{list-style-type:circle}.grp-docutils .grp-module h4{padding:0;font-size:13px;border:0;background:none}.grp-docutils .grp-module h4 p{margin:0}.grp-docutils table p{margin:0 !important}.grp-docutils code,.grp-docutils pre{font-size:11px;font-family:"Bitstream Vera Sans Mono", Monaco, "Courier New", Courier, monospace}.grp-docutils pre.literal-block{margin:10px;padding:6px 8px;background:#fff}.grp-docutils .grp-group h2+.grp-row>p{padding:3px 10px 0}span.grp-anchor{position:relative;float:left;clear:both;top:-80px}.grp-nowrap{white-space:nowrap}p.datetime{white-space:nowrap !important}p.datetime br{display:none}p.datetime input.vTimeField{margin-left:6px}a.add-another img,a.related-lookup img{opacity:0}a.related-lookup img{display:none}.deletelink{padding-left:12px;background:transparent}fieldset.grp-module .grp-row label{margin:6px 0 6px;display:inline-block;font-family:Arial,sans-serif;font-size:11px;line-height:13px;color:#444}fieldset.grp-module .grp-row label.required{font-weight:bold}input[type="text"],input[type="password"],input[type="url"],input[type="email"],input[type="number"],input[type="submit"],input[type="reset"],textarea,select{margin:0;padding:2px 5px;height:25px;font-family:Arial,sans-serif;font-size:12px;line-height:14px;font-weight:bold;color:#555;border:1px solid #ccc;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#fdfdfd;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-box-shadow:inset 0 1px 3px 0 #eee;-webkit-box-shadow:inset 0 1px 3px 0 #eee;box-shadow:inset 0 1px 3px 0 #eee;overflow:hidden;vertical-align:middle}input[type="text"]:focus,input[type="text"].grp-state-focus,input[type="password"]:focus,input[type="password"].grp-state-focus,input[type="url"]:focus,input[type="url"].grp-state-focus,input[type="email"]:focus,input[type="email"].grp-state-focus,input[type="number"]:focus,input[type="number"].grp-state-focus,input[type="submit"]:focus,input[type="submit"].grp-state-focus,input[type="reset"]:focus,input[type="reset"].grp-state-focus,textarea:focus,textarea.grp-state-focus,select:focus,select.grp-state-focus{border:1px solid #aaa;-moz-box-shadow:#ccc 0 0 6px;-webkit-box-shadow:#ccc 0 0 6px;box-shadow:#ccc 0 0 6px;background:#fff;outline:0}.grp-errors input[type="text"],.grp-errors input[type="password"],.grp-errors input[type="url"],.grp-errors input[type="email"],.grp-errors input[type="number"],.grp-errors input[type="submit"],.grp-errors input[type="reset"],.grp-errors textarea,.grp-errors select{border-color:#bf3030}input[readonly],input[disabled],textarea[readonly],select[disabled]{border:1px solid #ccc !important;border-style:dotted !important;background:transparent !important}input[readonly]:focus,input[disabled]:focus,textarea[readonly]:focus,select[disabled]:focus{-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none}div.grp-readonly{position:relative;display:inline-block;margin:0;padding:4px 5px 3px !important;min-width:106px;max-width:746px;min-height:16px;font-size:12px;line-height:16px;font-weight:bold;color:#555555;border:1px dotted #ccc;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}div.grp-readonly *{white-space:normal !important}div.grp-readonly pre{white-space:pre !important}div.grp-readonly+div.grp-readonly{margin-left:20px}div.grp-readonly:empty{margin-bottom:-5px !important}.grp-errors label{color:#bf3030 !important}.grp-errors ul.radiolist.inline label,.grp-errors ul.checkboxlist.inline label{color:#444 !important}.grp-errors input[type="text"],.grp-errors input[type="password"],.grp-errors input[type="url"],.grp-errors input[type="email"],.grp-errors input[type="number"],.grp-errors input[type="submit"],.grp-errors input[type="reset"],.grp-errors textarea,.grp-errors select{border-color:#bf3030 !important}.grp-errors .selector input,.grp-errors .selector select,.grp-errors .selector textarea{border:1px solid #ccc !important}.grp-errors ul.errorlist{padding:5px 0 0;color:#bf3030;font-size:11px !important;line-height:14px}select{padding:4px 3px 4px 2px;min-width:118px}@media screen and (-webkit-min-device-pixel-ratio: 0){select,select:focus{padding:4px 28px 4px 5px;-webkit-appearance:textfield;background-image:url("../images/icons/form-select.png");background-position:100% 50%;background-repeat:no-repeat}}select[multiple]{padding-right:5px;height:160px;overflow:auto}@media screen and (-webkit-min-device-pixel-ratio: 0){select[multiple]{background-image:none}}textarea{vertical-align:top;padding:5px 5px;height:60px;overflow:auto}fieldset.monospace textarea{font-family:"Bitstream Vera Sans Mono",Monaco,"Courier New",Courier,monospace}.grp-row input[type=checkbox],.grp-row input[type=radio]{position:relative;top:1px}.grp-row input[type=checkbox]+label,.grp-row input[type=radio]+label{position:relative;margin:0 0 0 5px}input[type=text].grp-search-field{margin-right:-5px;padding-left:10px;padding-right:30px;-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px}ul.radiolist,ul.checkboxlist{position:relative;float:none;display:inline-block;margin:5px 0 0;padding:0;font-size:11px;line-height:15px;font-weight:normal}ul.radiolist label,ul.checkboxlist label{float:none;display:inline-block;margin:0 !important;padding:0 !important;width:auto !important;white-space:nowrap}ul.radiolist li+li,ul.checkboxlist li+li{margin-top:2px}.grp-row>ul.radiolist,.grp-row>ul.checkboxlist{margin:0}ul.radiolist.inline,ul.checkboxlist.inline{position:relative;float:none;display:inline-block;margin:5px 0 0;padding:0;font-size:11px;line-height:15px;font-weight:normal;max-width:760px;float:left;display:inline;margin-top:5px;margin-bottom:3px;padding-right:20px}ul.radiolist.inline label,ul.checkboxlist.inline label{float:none;display:inline-block;margin:0 !important;padding:0 !important;width:auto !important;white-space:nowrap}ul.radiolist.inline li+li,ul.checkboxlist.inline li+li{margin-top:2px}ul.radiolist.inline li,ul.checkboxlist.inline li{float:left;display:inline;margin-top:0 !important;margin-bottom:2px;padding-right:20px}.grp-module.grp-tbody ul.radiolist.inline,.grp-module.grp-tbody ul.checkboxlist.inline{white-space:normal}.grp-module.grp-tbody ul.radiolist.inline li,.grp-module.grp-tbody ul.checkboxlist.inline li{position:relative;float:left;display:inline}.grp-row.grp-cells ul.radiolist.inline li,.grp-row.grp-cells ul.checkboxlist.inline li{float:none}.selector{position:relative;float:left;overflow:hidden;width:758px}.selector .selector-available,.selector .selector-chosen{float:left;width:366px;border:1px solid #ccc;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#ddd}.selector .selector-available.stacked,.selector .selector-chosen.stacked{width:756px}.selector .selector-available h2,.selector .selector-chosen h2{padding:7px 5px 6px 7px;font-size:12px;line-height:13px;font-weight:bold}.selector .selector-available h2 img,.selector .selector-chosen h2 img{display:none}.selector ul.selector-chooser{float:left;margin:110px 2px 0;padding:0;width:18px}.selector .selector-chosen h2{border-bottom:0 !important}.selector .selector-filter{display:block !important;height:27px;padding:3px 5px 2px 2px;font-weight:bold;color:#666;border-top:1px solid #e4e4e4;border-bottom:1px solid #e4e4e4;-moz-border-radius-topleft:3px;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-moz-border-radius-topright:3px;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;line-height:25px;text-indent:25px;background:url("../images/icons/searchbox.png") 6px 50% no-repeat}.selector .selector-filter label{display:none !important}.selector .selector-filter input[type=text]{position:relative;margin:0;width:326px !important;max-width:326px !important}.selector .selector-filter img{display:none}.selector .selector-filter h2+select{position:relative;top:-1px}.selector select[multiple]{margin:0 0 0 -1px;padding-left:3px;max-width:368px !important;width:368px !important;height:200px;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.selector .selector-chosen select[multiple]{height:235px !important}.selector a.selector-add{background-image:url("../images/icons/selector-add-m2m-horizontal.png")}.selector a.selector-add:hover{background-image:url("../images/icons/selector-add-m2m-horizontal_hover.png")}.selector a.selector-remove{background-image:url("../images/icons/selector-remove-m2m-horizontal.png")}.selector a.selector-remove:hover{background-image:url("../images/icons/selector-remove-m2m-horizontal_hover.png")}.selector a.selector-chooseall,.selector a.selector-clearall{display:block;margin:0;padding:2px 7px;font-size:11px;line-height:13px;font-weight:bold}.selector.stacked .selector-available,.selector.stacked .selector-chosen{width:756px}.selector.stacked .selector-filter input[type=text]{width:716px !important;max-width:716px !important}.selector.stacked .selector-chosen .selector-filter:after{content:" " url("../images/icons/selector-add-m2m-vertical_hover.png")}.selector.stacked select[multiple]{width:758px !important;max-width:758px !important}.selector.stacked ul.selector-chooser{margin:4px 0 0 356px;width:36px}.selector.stacked ul.selector-chooser li{float:left}.selector.stacked a.selector-add{background-image:url("../images/icons/selector-add-m2m-vertical.png")}.selector.stacked a.selector-add:hover{background-image:url("../images/icons/selector-add-m2m-vertical_hover.png")}.selector.stacked a.selector-remove{background-image:url("../images/icons/selector-remove-m2m-vertical.png")}.selector.stacked a.selector-remove:hover{background-image:url("../images/icons/selector-remove-m2m-vertical_hover.png")}.selector a.selector-add,.selector a.selector-remove{display:block;width:18px;height:18px;color:transparent !important;background-position:50% 0;background-repeat:no-repeat}ul.errorlist+.selector{margin-top:8px !important}p.errornote{position:relative;float:left;clear:both;margin:0 0 5px;padding:5px 10px;width:100%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;font-weight:bold;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#bf3030}p.errornote+ul.errorlist{*zoom:1;font-size:11px;line-height:13px;font-weight:bold;color:#bf3030;white-space:normal;margin:5px 0 0;margin:-5px 0 0}p.errornote+ul.errorlist:after{content:"\0020";display:block;height:0;clear:both;overflow:hidden;visibility:hidden}p.errornote+ul.errorlist li{padding:5px 10px}p.errornote+ul.errorlist li+li{border-top:1px solid #bf3030}ul.errorlist{*zoom:1;font-size:11px;line-height:13px;font-weight:bold;color:#bf3030;white-space:normal}ul.errorlist:after{content:"\0020";display:block;height:0;clear:both;overflow:hidden;visibility:hidden}ul.errorlist+ul.errorlist{padding-top:2px}p.preview+ul.errorlist{margin-top:5px !important}p.preview+ul.errorlist{margin-top:5px !important}.grp-row ul.errorlist{*zoom:1;font-size:11px;line-height:13px;font-weight:bold;color:#bf3030;white-space:normal;margin:0}.grp-row ul.errorlist:after{content:"\0020";display:block;height:0;clear:both;overflow:hidden;visibility:hidden}.grp-row ul.errorlist li{padding:2px 0 0;border-top:0 !important}.grp-row ul.errorlist li:first-child{padding-top:0}.grp-tabular p.errornote{margin:2px 0 0}.grp-tabular p.errornote+ul.errorlist{margin:0}.grp-tabular ul.errorlist{*zoom:1;font-size:11px;line-height:13px;font-weight:bold;color:#bf3030;white-space:normal;margin:5px 0 0}.grp-tabular ul.errorlist:after{content:"\0020";display:block;height:0;clear:both;overflow:hidden;visibility:hidden}.grp-tabular ul.errorlist li{padding:5px 10px}.grp-tabular ul.errorlist li+li{border-top:1px solid #bf3030}.grp-tabular .grp-tbody ul.errorlist{margin:0}.grp-tabular .grp-td ul.errorlist{clear:both;*zoom:1;font-size:11px;line-height:13px;font-weight:bold;color:#bf3030;white-space:normal;margin:0}.grp-tabular .grp-td ul.errorlist:after{content:"\0020";display:block;height:0;clear:both;overflow:hidden;visibility:hidden}.grp-tabular .grp-td ul.errorlist li{padding:2px 0 0;border-top:0 !important}.grp-tabular .grp-td ul.errorlist li:first-child{padding-top:0}.grp-stacked p.errornote{margin:0}.grp-stacked p.errornote+ul.errorlist{margin:0}.grp-stacked ul.errorlist{*zoom:1;font-size:11px;line-height:13px;font-weight:bold;color:#bf3030;white-space:normal;margin:5px 0 0;margin:3px 0}.grp-stacked ul.errorlist:after{content:"\0020";display:block;height:0;clear:both;overflow:hidden;visibility:hidden}.grp-stacked ul.errorlist li{padding:5px 10px}.grp-stacked ul.errorlist li+li{border-top:1px solid #bf3030}.grp-stacked h3+*+ul.errorlist{*zoom:1;font-size:11px;line-height:13px;font-weight:bold;color:#bf3030;white-space:normal;margin:0;margin:0 !important;padding:5px 10px 8px;border-top:1px solid #fff;border-bottom:1px solid #ddd}.grp-stacked h3+*+ul.errorlist:after{content:"\0020";display:block;height:0;clear:both;overflow:hidden;visibility:hidden}.grp-stacked h3+*+ul.errorlist li{padding:2px 0 0;border-top:0 !important}.grp-stacked h3+*+ul.errorlist li:first-child{padding-top:0}.grp-stacked .grp-row ul.errorlist{*zoom:1;font-size:11px;line-height:13px;font-weight:bold;color:#bf3030;white-space:normal;margin:0}.grp-stacked .grp-row ul.errorlist:after{content:"\0020";display:block;height:0;clear:both;overflow:hidden;visibility:hidden}.grp-stacked .grp-row ul.errorlist li{padding:2px 0 0;border-top:0 !important}.grp-stacked .grp-row ul.errorlist li:first-child{padding-top:0}.grp-errors a.add-another+ul.errorlist{clear:both}.grp-errors td.mceIframeContainer{border:1px solid #bf3030 !important;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}input[type=text],input[type=password],input[type="number"],.vDateField,.vTimeField,.vIntegerField,.vPositiveSmallIntegerField,.vManyToManyRawIdAdminField,.vForeignKeyRawIdAdminField{width:118px}input.grp-has-related-lookup,input.vDateField.hasDatepicker,input.vTimeField.hasTimepicker,input.vFileBrowseField{padding-right:24px !important}input[type="url"],input[type="email"],input.vTextField,input.vURLField,input.vFileBrowseField,textarea,.vLargeTextField,.vXMLLargeTextField{width:278px}.row select{min-width:118px}.vLargeTextField{height:118px}.grp-row input[type="url"],.grp-row input[type="email"],.grp-row .vTextField,.grp-row .vURLField,.grp-row .vFileBrowseField,.grp-row textarea,.grp-row .vLargeTextField,.grp-row .vXMLLargeTextField,.grp-autocomplete-wrapper-m2m{width:758px}.grp-row select{max-width:758px}.grp-autocomplete-wrapper-m2m ul.grp-repr,.grp-autocomplete-wrapper-m2m ul.grp-repr li{max-width:700px}.grp-changelist-results table.grp-table input[type="url"],.grp-changelist-results table.grp-table input[type="email"],.grp-changelist-results table.grp-table .vTextField,.grp-changelist-results table.grp-table .vURLField,.grp-changelist-results table.grp-table .vFileBrowseField,.grp-changelist-results table.grp-table textarea,.grp-changelist-results table.grp-table .vLargeTextField,.grp-changelist-results table.grp-table .vXMLLargeTextField,.grp-changelist-results table.grp-table select{max-width:278px}.grp-module.grp-table select,.grp-module.grp-table .grp-autocomplete-wrapper-m2m,.grp-module.grp-table .grp-autocomplete-wrapper-fk{max-width:278px}.grp-module.grp-table .grp-autocomplete-wrapper-m2m,.grp-module.grp-table .grp-autocomplete-wrapper-fk{width:278px}.grp-module.grp-table .grp-autocomplete-wrapper-m2m ul.grp-repr,.grp-module.grp-table .grp-autocomplete-wrapper-m2m ul.grp-repr li{max-width:222px}.grp-cell input[type="url"],.grp-cell input[type="email"],.grp-cell input[type="number"],.grp-cell input[type=text],.grp-cell input[type=password],.grp-cell select,.grp-cell input[readonly],.grp-cell input[disabled],.grp-cell textarea[readonly],.grp-cell select[disabled],.grp-cell .grp-autocomplete-wrapper-m2m,.grp-cell .grp-autocomplete-wrapper-fk{max-width:278px}.grp-cell .grp-autocomplete-wrapper-m2m ul.grp-repr,.grp-cell .grp-autocomplete-wrapper-m2m ul.grp-repr li{max-width:220px}.grp-cell div.grp-readonly{max-width:266px}.grp-autocomplete-wrapper-m2m,.grp-autocomplete-wrapper-fk input.ui-autocomplete-input{margin:0;padding:2px 5px;height:25px;font-family:Arial,sans-serif;font-size:12px;line-height:14px;font-weight:bold;color:#555;border:1px solid #ccc;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#fdfdfd;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-box-shadow:inset 0 1px 3px 0 #eee;-webkit-box-shadow:inset 0 1px 3px 0 #eee;box-shadow:inset 0 1px 3px 0 #eee;overflow:hidden;vertical-align:middle}.grp-autocomplete-wrapper-m2m:focus,.grp-autocomplete-wrapper-m2m.grp-state-focus,.grp-autocomplete-wrapper-fk input.ui-autocomplete-input:focus,.grp-autocomplete-wrapper-fk input.ui-autocomplete-input.grp-state-focus{border:1px solid #aaa;-moz-box-shadow:#ccc 0 0 6px;-webkit-box-shadow:#ccc 0 0 6px;box-shadow:#ccc 0 0 6px;background:#fff;outline:0}.grp-autocomplete-wrapper-m2m:focus,.grp-autocomplete-wrapper-m2m.grp-state-focus,.grp-autocomplete-wrapper-fk input.ui-autocomplete-input:focus,.grp-autocomplete-wrapper-fk input.ui-autocomplete-input.grp-state-focus{background-color:#e1f0f5}.grp-autocomplete-wrapper-m2m a.related-lookup,.grp-autocomplete-wrapper-fk a.related-lookup{position:absolute;right:0}.grp-autocomplete-wrapper-m2m a.related-lookup,.grp-autocomplete-wrapper-m2m input:focus+a.related-lookup,.grp-autocomplete-wrapper-fk a.related-lookup,.grp-autocomplete-wrapper-fk input:focus+a.related-lookup{border:1px solid #ccc !important}.grp-autocomplete-wrapper-m2m.grp-state-focus a.grp-related-remove,.grp-autocomplete-wrapper-m2m.grp-state-focus a.related-lookup,.grp-autocomplete-wrapper-fk.grp-state-focus a.grp-related-remove,.grp-autocomplete-wrapper-fk.grp-state-focus a.related-lookup{border:1px solid #aaa !important}.grp-autocomplete-wrapper-m2m a.grp-related-remove,.grp-autocomplete-wrapper-m2m div.grp-loader,.grp-autocomplete-wrapper-fk a.grp-related-remove,.grp-autocomplete-wrapper-fk div.grp-loader{display:inline-block;position:absolute;right:24px;top:0;font-size:0;line-height:0;width:23px;height:23px;border:1px solid #ccc}.grp-autocomplete-wrapper-m2m div.grp-loader,.grp-autocomplete-wrapper-fk div.grp-loader{background:#fdfdfd url("../images/backgrounds/loading-small.gif") 50% 50% no-repeat scroll}.grp-autocomplete-wrapper-m2m.grp-autocomplete-preremove input.ui-autocomplete-input,.grp-autocomplete-wrapper-m2m.grp-autocomplete-preremove li.grp-repr a,.grp-autocomplete-wrapper-fk.grp-autocomplete-preremove input.ui-autocomplete-input,.grp-autocomplete-wrapper-fk.grp-autocomplete-preremove li.grp-repr a{color:#bf3030 !important;text-decoration:line-through}.grp-autocomplete-wrapper-m2m li.grp-repr.grp-autocomplete-preremove a,.grp-autocomplete-wrapper-fk li.grp-repr.grp-autocomplete-preremove a{color:#bf3030 !important;text-decoration:line-through}.grp-autocomplete-wrapper-m2m li.grp-repr a:after{content:","}.grp-autocomplete-wrapper-m2m li.grp-repr:nth-last-child(2) a:after{content:""}.grp-autocomplete-wrapper-m2m li.grp-repr a:after{content:","}.grp-autocomplete-wrapper-m2m li.grp-repr:nth-last-child(2) a:after{content:""}.grp-autocomplete-wrapper-m2m{display:inline-block;position:relative;padding:0;height:auto !important;vertical-align:top;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:visible}.grp-autocomplete-wrapper-m2m ul.grp-repr{float:left;padding-right:55px;width:100%;max-width:700px;overflow:hidden;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.grp-autocomplete-wrapper-m2m ul.grp-repr li{float:left;display:inline;overflow:hidden;white-space:nowrap;overflow:hidden;-ms-text-overflow:ellipsis;-o-text-overflow:ellipsis;text-overflow:ellipsis;max-width:700px}.grp-autocomplete-wrapper-m2m ul.grp-repr li.grp-repr{margin:3px 5px 0 1px;font-weight:bold;line-height:18px}.grp-autocomplete-wrapper-m2m ul.grp-repr li.grp-repr a.grp-m2m-remove{color:#555;padding-left:5px}.grp-autocomplete-wrapper-m2m ul.grp-repr li.grp-search{margin-top:1px;margin-bottom:1px;background:transparent}.grp-autocomplete-wrapper-m2m ul.grp-repr li.grp-search input[type=text]{margin:0 0 -1px;padding:0 4px;width:100px;height:22px;font-size:12px;line-height:16px;outline:0;border:0;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;background:transparent;cursor:text}.grp-autocomplete-wrapper-m2m a.related-lookup{top:-1px;right:-1px}.grp-autocomplete-wrapper-m2m a.grp-related-remove+a.grp-related-lookup{-moz-border-radius-bottomleft:0;-webkit-border-bottom-left-radius:0;border-bottom-left-radius:0}.grp-autocomplete-wrapper-m2m a.grp-related-remove,.grp-autocomplete-wrapper-m2m a.grp-related-remove+div.grp-loader{top:-1px;right:23px}.grp-autocomplete-wrapper-fk{display:inline-block;position:relative;width:auto !important;height:auto !important;margin:0 !important;padding:0 !important;vertical-align:top;font-size:0 !important;line-height:0 !important;background:transparent !important}.grp-autocomplete-wrapper-fk input.ui-autocomplete-input{padding-right:55px}.grp-errors .grp-autocomplete-wrapper-m2m,.grp-errors .grp-autocomplete-wrapper-fk input.ui-autocomplete-input,.grp-errors a.grp-related-remove{border-color:#bf3030 !important}#changelist table.grp-table div.autocomplete-wrapper-fk a.grp-related-remove,#changelist table.grp-table div.autocomplete-wrapper-m2m a.grp-related-remove,#changelist table.grp-table div.autocomplete-wrapper-fk div.grp-loader,#changelist table.grp-table div.autocomplete-wrapper-m2m div.grp-loader{top:-5px}.grp-autocomplete-wrapper-m2m .grp-autocomplete-hidden-field,.grp-autocomplete-wrapper-fk .grp-autocomplete-hidden-field{position:absolute !important;z-index:0 !important;padding:0 !important;width:1px !important;height:1px !important;font-size:0 !important;line-height:0 !important;color:transparent !important;border:0 !important;background:transparent !important}.grp-actions{margin:0;padding:0;border:0;overflow:hidden;*zoom:1;float:right;font-weight:bold}.grp-actions li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:left;padding-left:5px;padding-right:5px}.grp-actions li:first-child{padding-left:0}.grp-actions li:last-child{padding-right:0}.grp-actions li.last{padding-right:0}.grp-actions li.grp-add-link a,.grp-actions li.grp-add-link>span:first-child,.grp-actions li.grp-change-link a,.grp-actions li.grp-change-link>span:first-child,.grp-actions li.grp-delete-link a,.grp-actions li.grp-delete-link>span:first-child{padding-left:20px;display:block;font-weight:bold}.grp-actions li.grp-add-link a{background-position:0 0}.grp-actions li.grp-add-link a:hover,.grp-actions li.grp-add-link a.add-link-hover{background-position:0 -417px}.grp-actions li.grp-change-link a{background-position:0 -834px}.grp-actions li.grp-change-link a:hover,.grp-actions li.grp-change-link a.change-link-hover{background-position:0 -1251px}.grp-actions li.grp-delete-link a,.grp-actions li.grp-delete-link>span:first-child{background-position:0 -1668px}.grp-actions li.grp-icon a,.grp-actions li.grp-icon>span:first-child{padding:0 6px 0 6px}.grp-group{position:relative;float:left;clear:both;margin:0 -4px 5px;padding:2px;width:100%;border:2px solid #ccc;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;background:#fff}.grp-group.grp-closed{border:2px solid #ddd}.grp-group.grp-closed:hover{border:2px solid #ccc}.grp-module h2{padding:5px 10px 4px;text-shadow:0 1px 0 #f5f5f5;border-bottom:1px solid #ccc;-moz-border-radius-topleft:3px;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-moz-border-radius-topright:3px;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2U1ZTVlNSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2RiZGJkYiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e5e5e5),color-stop(100%, #dbdbdb));background-image:-moz-linear-gradient(#e5e5e5,#dbdbdb);background-image:-webkit-linear-gradient(#e5e5e5,#dbdbdb);background-image:linear-gradient(#e5e5e5,#dbdbdb)}.grp-module h3{padding:5px 10px;text-shadow:0 1px 0 #f5f5f5;border-top:1px solid #f5f5f5;border-bottom:1px solid #ccc;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2U1ZTVlNSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2RiZGJkYiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e5e5e5),color-stop(100%, #dbdbdb));background-image:-moz-linear-gradient(#e5e5e5,#dbdbdb);background-image:-webkit-linear-gradient(#e5e5e5,#dbdbdb);background-image:linear-gradient(#e5e5e5,#dbdbdb)}@media screen and (-webkit-min-device-pixel-ratio: 0){.grp-module h3{padding:5px 10px 4px}}.grp-module h4{padding:5px 10px;text-shadow:0 1px 0 #f5f5f5;border-top:1px solid #f5f5f5;border-bottom:1px solid #ccc;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2VhZWFlYSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2UwZTBlMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #eaeaea),color-stop(100%, #e0e0e0));background-image:-moz-linear-gradient(#eaeaea,#e0e0e0);background-image:-webkit-linear-gradient(#eaeaea,#e0e0e0);background-image:linear-gradient(#eaeaea,#e0e0e0)}@media screen and (-webkit-min-device-pixel-ratio: 0){.grp-module h4{padding:5px 10px 4px}}.grp-group>h2{padding:5px 10px 4px;text-shadow:0 1px 0 #f5f5f5;border-bottom:1px solid #ccc;-moz-border-radius-topleft:3px;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-moz-border-radius-topright:3px;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2U1ZTVlNSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2RiZGJkYiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e5e5e5),color-stop(100%, #dbdbdb));background-image:-moz-linear-gradient(#e5e5e5,#dbdbdb);background-image:-webkit-linear-gradient(#e5e5e5,#dbdbdb);background-image:linear-gradient(#e5e5e5,#dbdbdb);border:1px solid #ccc;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.grp-group.grp-open>h2{margin-bottom:2px}.grp-group.grp-tabular.grp-open>h2{margin-bottom:0}.grp-group .grp-module>h3{border-top:0 !important;-moz-border-radius-topleft:3px;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-moz-border-radius-topright:3px;-webkit-border-top-right-radius:3px;border-top-right-radius:3px}.grp-group .grp-module>h3:only-child,.grp-group .grp-module>h3:last-child{border-bottom:0}.grp-module{position:relative;float:left;clear:both;margin:0 0 5px;padding:0;width:100%;border:1px solid #ccc;background:#eee;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.grp-module .grp-module{margin:0;border:0}.grp-module .grp-module+.grp-module{border-top:1px solid #d9d9d9;-moz-border-radius-topleft:0;-webkit-border-top-left-radius:0;border-top-left-radius:0;-moz-border-radius-topright:0;-webkit-border-top-right-radius:0;border-top-right-radius:0}.grp-change-form .grp-module:not(.grp-submit-row){min-width:960px}.grp-empty-form{display:none !important}.grp-collapse.grp-closed *,.grp-collapse.grp-closed .grp-row:not(tr).grp-cells,.grp-collapse.grp-closed .grp-table,.grp-collapse.grp-closed .grp-table *{display:none}.grp-collapse.grp-closed>.grp-collapse-handler,.grp-collapse.grp-closed>.grp-collapse-handler *,.grp-collapse.grp-closed .grp-tools,.grp-collapse.grp-closed .grp-tools *{display:block !important}.grp-collapse.grp-closed .grp-tools li *[style^="display: none"]{display:none !important}.grp-collapse .grp-collapse-handler{cursor:pointer}.grp-collapse h2.grp-collapse-handler{text-shadow:0 1px 0 #c4e9f5}.grp-collapse.grp-open>h2.grp-collapse-handler{border-bottom:1px solid #ccc;-moz-border-radius-topleft:2px;-webkit-border-top-left-radius:2px;border-top-left-radius:2px;-moz-border-radius-topright:2px;-webkit-border-top-right-radius:2px;border-top-right-radius:2px;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ExZDRlNSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2JjZGZlYiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #a1d4e5),color-stop(100%, #bcdfeb));background-image:-moz-linear-gradient(#a1d4e5,#bcdfeb);background-image:-webkit-linear-gradient(#a1d4e5,#bcdfeb);background-image:linear-gradient(#a1d4e5,#bcdfeb)}.grp-collapse.grp-closed>h2.grp-collapse-handler{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2JjZGZlYiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2ExZDRlNSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #bcdfeb),color-stop(100%, #a1d4e5));background-image:-moz-linear-gradient(#bcdfeb,#a1d4e5);background-image:-webkit-linear-gradient(#bcdfeb,#a1d4e5);background-image:linear-gradient(#bcdfeb,#a1d4e5)}.grp-collapse.grp-closed>h2.grp-collapse-handler:hover{background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ExZDRlNSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2JjZGZlYiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #a1d4e5),color-stop(100%, #bcdfeb));background-image:-moz-linear-gradient(#a1d4e5,#bcdfeb);background-image:-webkit-linear-gradient(#a1d4e5,#bcdfeb);background-image:linear-gradient(#a1d4e5,#bcdfeb)}.grp-collapse.grp-module.grp-closed>h2.grp-collapse-handler{border-bottom:0}.grp-collapse h3.grp-collapse-handler{text-shadow:0 1px 0 #fff}.grp-collapse.grp-open>h3.grp-collapse-handler{border-top:1px solid #e2f2f7;border-bottom:1px solid #d9d9d9;-moz-border-radius-topleft:2px;-webkit-border-top-left-radius:2px;border-top-left-radius:2px;-moz-border-radius-topright:2px;-webkit-border-top-right-radius:2px;border-top-right-radius:2px;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2NlZTlmMiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2UxZjBmNSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #cee9f2),color-stop(100%, #e1f0f5));background-image:-moz-linear-gradient(#cee9f2,#e1f0f5);background-image:-webkit-linear-gradient(#cee9f2,#e1f0f5);background-image:linear-gradient(#cee9f2,#e1f0f5)}.grp-collapse.grp-closed>h3.grp-collapse-handler{border-bottom:0;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2UxZjBmNSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2NlZTlmMiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e1f0f5),color-stop(100%, #cee9f2));background-image:-moz-linear-gradient(#e1f0f5,#cee9f2);background-image:-webkit-linear-gradient(#e1f0f5,#cee9f2);background-image:linear-gradient(#e1f0f5,#cee9f2)}.grp-collapse.grp-closed>h3.grp-collapse-handler:hover{background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2NlZTlmMiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2UxZjBmNSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #cee9f2),color-stop(100%, #e1f0f5));background-image:-moz-linear-gradient(#cee9f2,#e1f0f5);background-image:-webkit-linear-gradient(#cee9f2,#e1f0f5);background-image:linear-gradient(#cee9f2,#e1f0f5)}.grp-collapse::selection,.grp-collapse .grp-row::selection,.grp-collapse-handler::selection{background:transparent}.grp-module .grp-row:not(tr){position:relative;float:left;clear:both;padding:5px 10px;width:100%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;border-top:1px solid #fff;border-bottom:1px solid #ddd}.grp-predelete .grp-module .grp-row:not(tr){border-bottom-color:#f2d4d4;border-top-color:#fcf4f4}.grp-module .grp-row:not(tr):first-child,.grp-module .grp-row:not(tr).grp-first{border-top:0;-moz-border-radius-topleft:2px;-webkit-border-top-left-radius:2px;border-top-left-radius:2px;-moz-border-radius-topright:2px;-webkit-border-top-right-radius:2px;border-top-right-radius:2px}.grp-module .grp-row:not(tr):last-of-type,.grp-module .grp-row:not(tr).grp-last{border-bottom:0;-moz-border-radius-bottomleft:2px;-webkit-border-bottom-left-radius:2px;border-bottom-left-radius:2px;-moz-border-radius-bottomright:2px;-webkit-border-bottom-right-radius:2px;border-bottom-right-radius:2px}.grp-module .grp-row:not(tr).grp-row-hidden{top:-1px;margin-bottom:-1px;padding:0;height:0px;font-size:0;line-height:0;border-top-color:#eee}.grp-module .grp-row:not(tr).grp-row-hidden div{display:none}.grp-module .grp-row:not(tr).grp-cells{display:table-row;padding-top:0;padding-bottom:0}.grp-module .grp-row:not(tr).grp-cells .grp-cell{display:table-cell;vertical-align:top;position:relative;padding:8px 20px 8px 0;height:100%;white-space:nowrap;border-right:1px solid #ddd;overflow:visible}.grp-module .grp-row:not(tr).grp-cells .grp-cell+.grp-cell{padding-left:20px;border-left:1px solid #fff}.grp-module .grp-row:not(tr).grp-cells .grp-cell:last-of-type{padding-right:0;border-right:0 !important}.grp-module .grp-row+.grp-module>.grp-row:first-child,.grp-module h2+.grp-module>.grp-row:first-child,.grp-module .grp-module+.grp-module>.grp-row:first-child{border-top:1px solid #fff}fieldset.grp-module .grp-row{padding:8px 10px;overflow:hidden}.grp-listing{border-top:1px solid #fff}.grp-listing:first-child{border-top:0;-moz-border-radius-topleft:2px;-webkit-border-top-left-radius:2px;border-top-left-radius:2px;-moz-border-radius-topright:2px;-webkit-border-top-right-radius:2px;border-top-right-radius:2px}.grp-listing li.grp-add-link a,.grp-listing li.grp-add-link>span:first-child,.grp-listing li.grp-change-link a,.grp-listing li.grp-change-link>span:first-child,.grp-listing li.grp-delete-link a,.grp-listing li.grp-delete-link>span:first-child{padding-left:20px;display:block;font-weight:bold}.grp-listing li.grp-add-link a{background-position:0 0}.grp-listing li.grp-add-link a:hover,.grp-listing li.grp-add-link a.add-link-hover{background-position:0 -417px}.grp-listing li.grp-change-link a{background-position:0 -834px}.grp-listing li.grp-change-link a:hover,.grp-listing li.grp-change-link a.change-link-hover{background-position:0 -1251px}.grp-listing li.grp-delete-link a,.grp-listing li.grp-delete-link>span:first-child{background-position:0 -1668px}.grp-listing li.grp-icon a,.grp-listing li.grp-icon>span:first-child{padding:0 6px 0 6px}.grp-listing li.grp-add-link,.grp-listing li.grp-change-link,.grp-listing li.grp-delete-link{padding-left:25px}.grp-listing li.grp-add-link a,.grp-listing li.grp-add-link>span:first-child,.grp-listing li.grp-change-link a,.grp-listing li.grp-change-link>span:first-child,.grp-listing li.grp-delete-link a,.grp-listing li.grp-delete-link>span:first-child{display:block;margin-left:-20px;padding-left:20px;overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis}.grp-listing-small{border-top:1px solid #fff;font-size:11px}.grp-listing-small:first-child{border-top:0;-moz-border-radius-topleft:2px;-webkit-border-top-left-radius:2px;border-top-left-radius:2px;-moz-border-radius-topright:2px;-webkit-border-top-right-radius:2px;border-top-right-radius:2px}.grp-listing-small li.grp-add-link a,.grp-listing-small li.grp-add-link>span:first-child,.grp-listing-small li.grp-change-link a,.grp-listing-small li.grp-change-link>span:first-child,.grp-listing-small li.grp-delete-link a,.grp-listing-small li.grp-delete-link>span:first-child{padding-left:20px;display:block;font-weight:bold}.grp-listing-small li.grp-add-link a{background-position:0 0}.grp-listing-small li.grp-add-link a:hover,.grp-listing-small li.grp-add-link a.add-link-hover{background-position:0 -417px}.grp-listing-small li.grp-change-link a{background-position:0 -834px}.grp-listing-small li.grp-change-link a:hover,.grp-listing-small li.grp-change-link a.change-link-hover{background-position:0 -1251px}.grp-listing-small li.grp-delete-link a,.grp-listing-small li.grp-delete-link>span:first-child{background-position:0 -1668px}.grp-listing-small li.grp-icon a,.grp-listing-small li.grp-icon>span:first-child{padding:0 6px 0 6px}.grp-listing-small li.grp-add-link,.grp-listing-small li.grp-change-link,.grp-listing-small li.grp-delete-link{padding-left:25px}.grp-listing-small li.grp-add-link a,.grp-listing-small li.grp-add-link>span:first-child,.grp-listing-small li.grp-change-link a,.grp-listing-small li.grp-change-link>span:first-child,.grp-listing-small li.grp-delete-link a,.grp-listing-small li.grp-delete-link>span:first-child{display:block;margin-left:-20px;padding-left:20px;overflow:hidden;text-overflow:ellipsis;-o-text-overflow:ellipsis}.grp-listing-small a+span,.grp-listing-small span+span{position:relative;display:block;line-height:11px;margin:-1px 0 3px}.grp-listing-small p{margin:2px 0 4px;line-height:13px}.grp-stacked .grp-module.grp-add-item,.grp-tabular .grp-module.grp-add-item{margin-bottom:0;height:28px;font-weight:bold;border-color:transparent;background:transparent}.grp-stacked .grp-module.grp-add-item>a,.grp-tabular .grp-module.grp-add-item>a{font-weight:bold;padding:5px 10px;position:relative;top:6px}.grp-group:not(.grp-tabular){padding-bottom:0}.grp-group:not(.grp-tabular) .grp-module{margin-bottom:2px}.grp-group:not(.grp-tabular) .grp-module .grp-module{-moz-border-radius:0 0 2px 2px;-webkit-border-radius:0;border-radius:0 0 2px 2px;border-top:1px solid #fff}.grp-group:not(.grp-tabular) .grp-module.grp-predelete .grp-module{border-top-color:#fdf8f8}.grp-group:not(.grp-tabular) h2{margin-bottom:2px}.grp-group:not(.grp-tabular).grp-closed{padding-bottom:2px}.grp-group:not(.grp-tabular).grp-closed h2{margin-bottom:0}.grp-tabular .grp-table{display:table;margin:0 0 -2px;width:100%;border:0 none;border-collapse:separate;border-spacing:0 2px;background:none}@media screen and (-webkit-min-device-pixel-ratio: 0){.grp-tabular .grp-table{margin-bottom:-1px;border-spacing:0 1px !important}}.grp-tabular .grp-table .grp-tr{display:table-row}.grp-tabular .grp-table .grp-th,.grp-tabular .grp-table .grp-td{position:relative;display:table-cell;float:none;height:100%;margin-right:0;overflow:hidden;padding:1px 20px;vertical-align:top;white-space:nowrap;border-left:1px solid #fff;border-right:1px solid #e0e0e0}.grp-tabular .grp-table .grp-th:first-of-type,.grp-tabular .grp-table .grp-td:first-of-type{padding-left:10px}.grp-tabular .grp-table .grp-thead{display:table-header-group;color:#aaa;font-size:11px;font-weight:bold}.grp-tabular .grp-table .grp-thead .grp-th,.grp-tabular .grp-table .grp-thead .grp-td{background:none;border-top:0}.grp-tabular .grp-table .grp-thead .grp-th:last-of-type,.grp-tabular .grp-table .grp-thead .grp-td:last-of-type{border-right:0}.grp-tabular .grp-table .grp-tbody{display:table-row-group;margin-top:0}.grp-tabular .grp-table .grp-tbody .grp-th,.grp-tabular .grp-table .grp-tbody .grp-td{padding-bottom:5px;padding-top:5px;border-bottom:1px solid #d4d4d4;border-top:1px solid #d4d4d4;background:#eee}.grp-tabular .grp-table .grp-tbody .grp-th:first-of-type,.grp-tabular .grp-table .grp-tbody .grp-td:first-of-type{border-left:1px solid #d4d4d4}.grp-tabular .grp-table .grp-tbody .grp-th:first-child,.grp-tabular .grp-table .grp-tbody .grp-td:first-child{-moz-border-radius-topleft:2px;-webkit-border-top-left-radius:2px;border-top-left-radius:2px;-moz-border-radius-bottomleft:2px;-webkit-border-bottom-left-radius:2px;border-bottom-left-radius:2px}.grp-tabular .grp-table .grp-tbody .grp-th:last-of-type,.grp-tabular .grp-table .grp-tbody .grp-td:last-of-type{border-right:1px solid #d4d4d4;-moz-border-radius-topright:2px;-webkit-border-top-right-radius:2px;border-top-right-radius:2px;-moz-border-radius-bottomright:2px;-webkit-border-bottom-right-radius:2px;border-bottom-right-radius:2px}.grp-tabular .grp-table .grp-tbody .grp-th.grp-tools-container,.grp-tabular .grp-table .grp-tbody .grp-td.grp-tools-container{padding-left:0;width:100%;-moz-border-radius-topright:2px;-webkit-border-top-right-radius:2px;border-top-right-radius:2px;-moz-border-radius-bottomright:2px;-webkit-border-bottom-right-radius:2px;border-bottom-right-radius:2px}.grp-tabular .grp-table .grp-tbody.grp-predelete .grp-th,.grp-tabular .grp-table .grp-tbody.grp-predelete .grp-td{border-right-color:#f2d4d4;border-left-color:#faf0f0;background:#f7e4e4}.grp-tabular .grp-table .grp-tbody.grp-predelete .grp-th:first-of-type,.grp-tabular .grp-table .grp-tbody.grp-predelete .grp-td:first-of-type{border-left:1px solid #d4d4d4}.grp-tabular .grp-table .grp-tbody.grp-predelete .grp-th:last-of-type,.grp-tabular .grp-table .grp-tbody.grp-predelete .grp-td:last-of-type{border-right:1px solid #d4d4d4}.grp-tabular .grp-table .grp-tfoot{display:table-footer-group;color:#aaa}.grp-tabular .grp-table .grp-tfoot .grp-td:last-of-type{border-right:0}.grp-tabular .grp-table .grp-module{float:none;clear:none;background:0;border:0}.grp-tabular .grp-module.grp-transparent{margin:2px 0 0}.grp-horizontal-list-container{margin:0;padding:0;border:0;overflow:hidden;*zoom:1}.grp-horizontal-list{margin:0;padding:0;border:0;overflow:hidden;*zoom:1}.grp-horizontal-list li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:left;padding-left:5px;padding-right:5px}.grp-horizontal-list li:first-child{padding-left:0}.grp-horizontal-list li:last-child{padding-right:0}.grp-horizontal-list li.last{padding-right:0}.grp-horizontal-list-right>li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:right;padding-left:5px;padding-right:5px}.grp-horizontal-list-right>li:first-child{padding-right:0}.grp-horizontal-list-right>li:last-child{padding-left:0}.grp-horizontal-list-right>li.last{padding-left:0}.grp-predelete{background:#f7e4e4}.grp-predelete h2,.grp-collapse.grp-predelete>h2.grp-collapse-handler,.grp-predelete h3,.grp-collapse.grp-predelete>h3.grp-collapse-handler,.grp-predelete h4,.grp-collapse.grp-predelete .grp-collapse>h4.grp-collapse-handler{border-bottom-color:#f0cccc;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Y3ZTRlNCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2Y0ZDhkOCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #f7e4e4),color-stop(100%, #f4d8d8));background-image:-moz-linear-gradient(#f7e4e4,#f4d8d8);background-image:-webkit-linear-gradient(#f7e4e4,#f4d8d8);background-image:linear-gradient(#f7e4e4,#f4d8d8)}.grp-collapse.grp-predelete>h2.grp-collapse-handler:hover,.grp-collapse.grp-predelete>h3.grp-collapse-handler:hover,.grp-predelete .grp-collapse>h4.grp-collapse-handler:hover,.grp-collapse.grp-open.grp-predelete>h2.grp-collapse-handler,.grp-collapse.grp-open.grp-predelete>h3.grp-collapse-handler,.grp-predelete .grp-collapse.grp-open>h4.grp-collapse-handler{border-bottom-color:#f0cccc;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Y0ZDhkOCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2Y3ZTRlNCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #f4d8d8),color-stop(100%, #f7e4e4));background-image:-moz-linear-gradient(#f4d8d8,#f7e4e4);background-image:-webkit-linear-gradient(#f4d8d8,#f7e4e4);background-image:linear-gradient(#f4d8d8,#f7e4e4)}.grp-predelete,.grp-predelete .grp-module,.grp-predelete .grp-th,.grp-predelete .grp-td{background:#f7e4e4}.button-state-blue,button,a.fb_show,a.related-lookup,body.tinyMCE input[name="src"]+div a,body.tinyMCE input[name="href"]+div a,input[type=button],a.related-lookup.m2m,.grp-autocomplete-wrapper-m2m a.related-lookup,.grp-autocomplete-wrapper-fk a.related-lookup,button.ui-datepicker-trigger,button.ui-timepicker-trigger,button.ui-datetime-now,.grp-pulldown-container .grp-pulldown-handler:hover,.grp-pulldown-container.grp-pulldown-state-open .grp-pulldown-handler,.grp-pulldown-container.grp-pulldown-state-open .grp-pulldown-handler:hover{color:#fff;border:1px solid #ccc;background-color:#e1f0f5}.button-state-grey,button:hover,a.fb_show:hover,a.related-lookup:hover,body.tinyMCE input[name="src"]+div a:hover,body.tinyMCE input[name="href"]+div a:hover,input[type=button]:hover,a.related-lookup.m2m:hover,.grp-autocomplete-wrapper-m2m a.related-lookup:hover,.grp-autocomplete-wrapper-fk a.related-lookup:hover,button.ui-datepicker-trigger:hover,button.ui-timepicker-trigger:hover,button.ui-datetime-now:hover,.grp-pulldown-container .grp-pulldown-handler,.grp-pulldown-container .grp-pulldown-content,.grp-pulldown-container .grp-pulldown-content:hover{color:#444;border:1px solid #ccc;background-color:#eee}.button-state-dark-grey{color:#444;border:1px solid #ccc;border-color:#ccc;background-color:#dbdbdb}.button-state-white,a.grp-related-remove,a.grp-related-remove:hover{border:1px solid #ccc;background-color:#fdfdfd}.button-state-red{color:#fff;border:1px solid #ccc;background-color:#bf3030}.button-state-transparent{border:1px solid transparent;background-color:transparent;background-image:none}.grp-button{position:relative;display:inline-block;margin:0;padding:5px;height:28px;font-weight:bold;-moz-border-radius:5px !important;-webkit-border-radius:5px;border-radius:5px !important;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer;overflow:hidden;vertical-align:top}@media screen and (-webkit-min-device-pixel-ratio: 0){.grp-button{padding:5px 10px}}input[type="submit"]{position:relative;display:inline-block;margin:0;padding:5px;height:28px;font-weight:bold;-moz-border-radius:5px !important;-webkit-border-radius:5px;border-radius:5px !important;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer;overflow:hidden;vertical-align:top;color:#fff;border:1px solid #2b8aab;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzRmYjJkMyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzMwOWJiZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #4fb2d3),color-stop(100%, #309bbf));background-image:-moz-linear-gradient(#4fb2d3,#309bbf);background-image:-webkit-linear-gradient(#4fb2d3,#309bbf);background-image:linear-gradient(#4fb2d3,#309bbf)}@media screen and (-webkit-min-device-pixel-ratio: 0){input[type="submit"]{padding:5px 10px}}input[type="submit"]:hover,input[type="submit"]:focus{color:#fff;border:1px solid #373737;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzVlNWU1ZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzQ0NDQ0NCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #5e5e5e),color-stop(100%, #444444));background-image:-moz-linear-gradient(#5e5e5e,#444444);background-image:-webkit-linear-gradient(#5e5e5e,#444444);background-image:linear-gradient(#5e5e5e,#444444)}.grp-fixed-footer input[type="submit"]:hover,.grp-fixed-footer input[type="submit"]:focus{color:#444;border:1px solid #c8c8c8;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff),color-stop(100%, #eeeeee));background-image:-moz-linear-gradient(#ffffff,#eeeeee);background-image:-webkit-linear-gradient(#ffffff,#eeeeee);background-image:linear-gradient(#ffffff,#eeeeee)}a.grp-button,button.grp-button,input[type=button].grp-button{position:relative;display:inline-block;margin:0;padding:5px;height:28px;font-weight:bold;-moz-border-radius:5px !important;-webkit-border-radius:5px;border-radius:5px !important;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer;overflow:hidden;vertical-align:top;color:#fff;border:1px solid #2b8aab;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzRmYjJkMyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzMwOWJiZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #4fb2d3),color-stop(100%, #309bbf));background-image:-moz-linear-gradient(#4fb2d3,#309bbf);background-image:-webkit-linear-gradient(#4fb2d3,#309bbf);background-image:linear-gradient(#4fb2d3,#309bbf);padding:5px 10px}@media screen and (-webkit-min-device-pixel-ratio: 0){a.grp-button,button.grp-button,input[type=button].grp-button{padding:5px 10px}}a.grp-button:hover,a.grp-button:focus,button.grp-button:hover,button.grp-button:focus,input[type=button].grp-button:hover,input[type=button].grp-button:focus{color:#fff;border:1px solid #373737;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzVlNWU1ZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzQ0NDQ0NCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #5e5e5e),color-stop(100%, #444444));background-image:-moz-linear-gradient(#5e5e5e,#444444);background-image:-webkit-linear-gradient(#5e5e5e,#444444);background-image:linear-gradient(#5e5e5e,#444444)}.grp-fixed-footer a.grp-button:hover,.grp-fixed-footer a.grp-button:focus,.grp-fixed-footer button.grp-button:hover,.grp-fixed-footer button.grp-button:focus,.grp-fixed-footer input[type=button].grp-button:hover,.grp-fixed-footer input[type=button].grp-button:focus{color:#444;border:1px solid #c8c8c8;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff),color-stop(100%, #eeeeee));background-image:-moz-linear-gradient(#ffffff,#eeeeee);background-image:-webkit-linear-gradient(#ffffff,#eeeeee);background-image:linear-gradient(#ffffff,#eeeeee)}a.grp-button.grp-delete-link,button.grp-button.grp-delete-link,input[type=button].grp-button.grp-delete-link{color:#fff;border:1px solid #ab2b2b;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2QzNGY0ZiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2JmMzAzMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #d34f4f),color-stop(100%, #bf3030));background-image:-moz-linear-gradient(#d34f4f,#bf3030);background-image:-webkit-linear-gradient(#d34f4f,#bf3030);background-image:linear-gradient(#d34f4f,#bf3030)}a.grp-button.grp-delete-link:hover,a.grp-button.grp-delete-link:focus,button.grp-button.grp-delete-link:hover,button.grp-button.grp-delete-link:focus,input[type=button].grp-button.grp-delete-link:hover,input[type=button].grp-button.grp-delete-link:focus{color:#fff;border:1px solid #373737;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzVlNWU1ZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzQ0NDQ0NCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #5e5e5e),color-stop(100%, #444444));background-image:-moz-linear-gradient(#5e5e5e,#444444);background-image:-webkit-linear-gradient(#5e5e5e,#444444);background-image:linear-gradient(#5e5e5e,#444444)}.grp-fixed-footer a.grp-button.grp-delete-link:hover,.grp-fixed-footer a.grp-button.grp-delete-link:focus,.grp-fixed-footer button.grp-button.grp-delete-link:hover,.grp-fixed-footer button.grp-button.grp-delete-link:focus,.grp-fixed-footer input[type=button].grp-button.grp-delete-link:hover,.grp-fixed-footer input[type=button].grp-button.grp-delete-link:focus{color:#444;border:1px solid #c8c8c8;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff),color-stop(100%, #eeeeee));background-image:-moz-linear-gradient(#ffffff,#eeeeee);background-image:-webkit-linear-gradient(#ffffff,#eeeeee);background-image:linear-gradient(#ffffff,#eeeeee)}a.grp-button.grp-cancel-link,button.grp-button.grp-cancel-link,input[type=button].grp-button.grp-cancel-link{color:#fff;border:1px solid #7b7b7b;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2EyYTJhMiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzg4ODg4OCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #a2a2a2),color-stop(100%, #888888));background-image:-moz-linear-gradient(#a2a2a2,#888888);background-image:-webkit-linear-gradient(#a2a2a2,#888888);background-image:linear-gradient(#a2a2a2,#888888)}a.grp-button.grp-cancel-link:hover,a.grp-button.grp-cancel-link:focus,button.grp-button.grp-cancel-link:hover,button.grp-button.grp-cancel-link:focus,input[type=button].grp-button.grp-cancel-link:hover,input[type=button].grp-button.grp-cancel-link:focus{color:#fff;border:1px solid #373737;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzVlNWU1ZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzQ0NDQ0NCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #5e5e5e),color-stop(100%, #444444));background-image:-moz-linear-gradient(#5e5e5e,#444444);background-image:-webkit-linear-gradient(#5e5e5e,#444444);background-image:linear-gradient(#5e5e5e,#444444)}.grp-fixed-footer a.grp-button.grp-cancel-link:hover,.grp-fixed-footer a.grp-button.grp-cancel-link:focus,.grp-fixed-footer button.grp-button.grp-cancel-link:hover,.grp-fixed-footer button.grp-button.grp-cancel-link:focus,.grp-fixed-footer input[type=button].grp-button.grp-cancel-link:hover,.grp-fixed-footer input[type=button].grp-button.grp-cancel-link:focus{color:#444;border:1px solid #c8c8c8;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff),color-stop(100%, #eeeeee));background-image:-moz-linear-gradient(#ffffff,#eeeeee);background-image:-webkit-linear-gradient(#ffffff,#eeeeee);background-image:linear-gradient(#ffffff,#eeeeee)}a.grp-button.grp-reset-link,button.grp-button.grp-reset-link,input[type=button].grp-button.grp-reset-link{color:#fff;border:1px solid #7b7b7b;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2EyYTJhMiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzg4ODg4OCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #a2a2a2),color-stop(100%, #888888));background-image:-moz-linear-gradient(#a2a2a2,#888888);background-image:-webkit-linear-gradient(#a2a2a2,#888888);background-image:linear-gradient(#a2a2a2,#888888)}a.grp-button.grp-reset-link:hover,a.grp-button.grp-reset-link:focus,button.grp-button.grp-reset-link:hover,button.grp-button.grp-reset-link:focus,input[type=button].grp-button.grp-reset-link:hover,input[type=button].grp-button.grp-reset-link:focus{color:#fff;border:1px solid #373737;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzVlNWU1ZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzQ0NDQ0NCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #5e5e5e),color-stop(100%, #444444));background-image:-moz-linear-gradient(#5e5e5e,#444444);background-image:-webkit-linear-gradient(#5e5e5e,#444444);background-image:linear-gradient(#5e5e5e,#444444)}.grp-fixed-footer a.grp-button.grp-reset-link:hover,.grp-fixed-footer a.grp-button.grp-reset-link:focus,.grp-fixed-footer button.grp-button.grp-reset-link:hover,.grp-fixed-footer button.grp-button.grp-reset-link:focus,.grp-fixed-footer input[type=button].grp-button.grp-reset-link:hover,.grp-fixed-footer input[type=button].grp-button.grp-reset-link:focus{color:#444;border:1px solid #c8c8c8;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ffffff),color-stop(100%, #eeeeee));background-image:-moz-linear-gradient(#ffffff,#eeeeee);background-image:-webkit-linear-gradient(#ffffff,#eeeeee);background-image:linear-gradient(#ffffff,#eeeeee)}button,a.fb_show,a.related-lookup,body.tinyMCE input[name="src"]+div a,body.tinyMCE input[name="href"]+div a{position:relative;display:inline-block;margin:0 0 0 -25px;padding:0;width:25px;height:25px;-moz-border-radius-topright:3px;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-moz-border-radius-bottomright:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer;overflow:hidden;vertical-align:top}input[type=button]{position:relative;display:inline-block;margin:0 0 0 -25px;padding:0;width:25px;height:25px;-moz-border-radius-topright:3px;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-moz-border-radius-bottomright:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:pointer;overflow:hidden;vertical-align:top;margin:0 0 0 -2px;padding:0 10px;width:auto;font-family:Arial,sans-serif;font-size:11px;line-height:13px;font-weight:bold;color:#309bbf}input[type=button]:hover{color:#444}input:focus+input[type=button]{border:1px solid #aaa}.grp-placeholder-related-fk,.grp-placeholder-related-m2m,.grp-placeholder-related-generic{position:relative;display:block;top:-24px;margin:0 0 -20px 130px;padding:0;font-weight:bold}table .grp-placeholder-related-fk,table .grp-placeholder-related-m2m,table .grp-placeholder-related-generic{top:-20px;margin-bottom:-25px}.grp-placeholder-related-fk .grp-placeholder-label:first-child,.grp-placeholder-related-m2m .grp-placeholder-label:first-child,.grp-placeholder-related-generic .grp-placeholder-label:first-child{display:inline-block;margin-top:4px}.grp-placeholder-related-fk .grp-placeholder-label:first-child *,.grp-placeholder-related-m2m .grp-placeholder-label:first-child *,.grp-placeholder-related-generic .grp-placeholder-label:first-child *{margin-top:-4px}table .grp-placeholder-related-fk .grp-placeholder-label:first-child,table .grp-placeholder-related-m2m .grp-placeholder-label:first-child,table .grp-placeholder-related-generic .grp-placeholder-label:first-child{margin-top:5px}table .grp-placeholder-related-fk .grp-placeholder-label:first-child *,table .grp-placeholder-related-m2m .grp-placeholder-label:first-child *,table .grp-placeholder-related-generic .grp-placeholder-label:first-child *{margin-top:-5px}.grp-placeholder-related-fk img,.grp-placeholder-related-m2m img,.grp-placeholder-related-generic img{vertical-align:top}.grp-errors .grp-placeholder-related-fk,.grp-errors .grp-placeholder-related-m2m,.grp-errors .grp-placeholder-related-generic{display:none}.grp-placeholder-related-fk .grp-separator:after,.grp-placeholder-related-m2m .grp-separator:after,.grp-placeholder-related-generic .grp-separator:after{content:",";display:inline-block;padding-right:4px}a.fb_show,a.related-lookup,body.tinyMCE input[name="src"]+div a,body.tinyMCE input[name="href"]+div a{display:inline-block;margin-bottom:-5px;background-position:0 -1197px}a.fb_show:hover,a.fb_show.related-lookup-hover,a.related-lookup:hover,a.related-lookup.related-lookup-hover,body.tinyMCE input[name="src"]+div a:hover,body.tinyMCE input[name="src"]+div a.related-lookup-hover,body.tinyMCE input[name="href"]+div a:hover,body.tinyMCE input[name="href"]+div a.related-lookup-hover{background-position:0 -1240px}a.related-lookup+strong{position:relative;top:2px;margin-left:5px}a.related-lookup.m2m,.grp-autocomplete-wrapper-m2m a.related-lookup{background-position:0 -1111px}a.related-lookup.m2m:hover,a.related-lookup.m2m.related-lookup-m2m-hover,.grp-autocomplete-wrapper-m2m a.related-lookup:hover,.grp-autocomplete-wrapper-m2m a.related-lookup.related-lookup-m2m-hover{background-position:0 -1154px}.grp-autocomplete-wrapper-fk a.related-lookup{background-position:0 -1197px}.grp-autocomplete-wrapper-fk a.related-lookup:hover,.grp-autocomplete-wrapper-fk a.related-lookup.related-lookup-hover{background-position:0 -1240px}a.grp-related-remove{background-position:0 -1283px}a.grp-related-remove:hover,a.grp-related-remove.related-remove-hover{background-position:0 -1326px}button.ui-datepicker-trigger{background-position:0 -608px}button.ui-datepicker-trigger:hover,button.ui-datepicker-trigger.datepicker-hover{background-position:0 -651px}button.ui-timepicker-trigger{background-position:0 -2025px}button.ui-timepicker-trigger:hover,button.ui-timepicker-trigger.timepicker-hover{background-position:0 -2068px}button.ui-timepicker-trigger+button.ui-datetime-now{margin-left:6px !important;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}button.ui-datetime-now{background-position:0 -694px}button.ui-datetime-now:hover,button.ui-datetime-now.datetime-now-hover{background-position:0 -737px}.grp-search-button{background-position:0 -1197px;border-color:transparent !important;background-color:transparent !important}.grp-search-button:hover,.grp-search-button.related-lookup-hover{background-position:0 -1240px}a.grp-add-another{background-position:0 -6672px}a.grp-add-another:hover,a.grp-add-another.tools-related-add-handler-hover{background-position:0 -7089px}a.grp-add-another:not([href]){background-position:0 -6255px;cursor:not-allowed}a.grp-change-related{background-position:0 -7923px}a.grp-change-related:hover,a.grp-change-related.tools-related-edit-handler-hover{background-position:0 -8340px}a.grp-change-related:not([href]){background-position:0 -7506px;cursor:not-allowed}a.grp-delete-related{background-position:0 -9174px}a.grp-delete-related:hover,a.grp-delete-related.tools-related-remove-handler-hover{background-position:0 -9591px}a.grp-delete-related:not([href]){background-position:0 -8757px;cursor:not-allowed}.grp-row a.add-another{top:-7px}.grp-row ul.radiolist+a.add-another,.grp-row ul.checkboxlist+a.add-another{top:3px}p.grp-help+*+a.add-another{float:right;top:-20px;margin-bottom:-20px}.grp-td a.add-another{float:none}.grp-td select+a.add-another{top:-6px}.radiolist.inline+a.add-another,.checkboxlist.inline+a.add-another{float:left;margin-left:-20px;margin-right:-10000px}.grp-row.grp-cells ul.radiolist.inline+a.add-another,.grp-row.grp-cells ul.checkboxlist.inline+a.add-another{float:none;margin-right:0}input:focus+button,.vDateField:focus+span a,.vTimeField:focus+span a,input:focus+a.fb_show,input:focus+a.related-lookup,input:focus+*+a.related-lookup,input:focus+a.add-another,.grp-state-focus a.related-lookup,body.tinyMCE input[name="src"]:focus+div a,body.tinyMCE input[name="href"]:focus+div a{border:1px solid #aaa !important}input:focus+.grp-search-button{border-color:transparent !important}.grp-errors input+button,.grp-errors .vDateField+span a,.grp-errors .vTimeField+span a,.grp-errors input+a.fb_show,.grp-errors input+a.related-lookup,.grp-errors input+*+a.related-lookup,.grp-errors input+a.add-another,.grp-errors .grp-state-focus a.related-lookup,.grp-errors a.grp-related-remove,.grp-errors .grp-state-focus a.related-remove{border-color:#bf3030 !important}img[src*="admin/img/icon-unknown"][src$=".gif"],img[src*="admin/img/icon-no"][src$=".gif"],img[src*="admin/img/icon-yes"][src$=".gif"]{position:relative;height:0;width:0;top:0;margin:-2px 0;padding:8px;font-size:0}img[src*="admin/img/icon-unknown"][src$=".gif"]{background-position:0 -1903px}img[src*="admin/img/icon-no"][src$=".gif"]{background-position:0 -1868px}img[src*="admin/img/icon-yes"][src$=".gif"]{background-position:0 -1938px}.grp-object-tools{margin:0;padding:0;border:0;overflow:hidden;*zoom:1;position:relative;float:right;top:-40px;margin:0 0 -40px}.grp-object-tools li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:left;padding-left:5px;padding-right:5px}.grp-object-tools li:first-child{padding-left:0}.grp-object-tools li:last-child{padding-right:0}.grp-object-tools li.last{padding-right:0}.grp-object-tools a{display:block;padding:4px 15px;font-weight:bold;-moz-border-radius:30px;-webkit-border-radius:30px;border-radius:30px;color:#fff;border:1px solid #777;opacity:.5;background:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzk5OTk5OSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzg4ODg4OCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #999999),color-stop(100%, #888888));background:-moz-linear-gradient(#999999,#888888);background:-webkit-linear-gradient(#999999,#888888);background:linear-gradient(#999999,#888888)}.grp-object-tools a.grp-state-focus{opacity:1}.grp-object-tools a:hover{opacity:1;border:1px solid #2987a6;background:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzM2YjBkOSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzMwOWJiZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #36b0d9),color-stop(100%, #309bbf));background:-moz-linear-gradient(#36b0d9,#309bbf);background:-webkit-linear-gradient(#36b0d9,#309bbf);background:linear-gradient(#36b0d9,#309bbf)}.grp-object-tools a.grp-add-link{padding-left:28px;background:url('../images/icons-s79f97b581c.png') 0 -891px no-repeat,url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzY2NjY2NiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzQ0NDQ0NCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background:url('../images/icons-s79f97b581c.png') 0 -891px no-repeat,-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #666666),color-stop(100%, #444444));background:url('../images/icons-s79f97b581c.png') 0 -891px no-repeat,-moz-linear-gradient(#666666,#444444);background:url('../images/icons-s79f97b581c.png') 0 -891px no-repeat,-webkit-linear-gradient(#666666,#444444);background:url('../images/icons-s79f97b581c.png') 0 -891px no-repeat,linear-gradient(#666666,#444444)}.grp-object-tools a.grp-add-link:hover{background:url('../images/icons-s79f97b581c.png') 0 -891px no-repeat,url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzM2YjBkOSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzMwOWJiZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background:url('../images/icons-s79f97b581c.png') 0 -891px no-repeat,-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #36b0d9),color-stop(100%, #309bbf));background:url('../images/icons-s79f97b581c.png') 0 -891px no-repeat,-moz-linear-gradient(#36b0d9,#309bbf);background:url('../images/icons-s79f97b581c.png') 0 -891px no-repeat,-webkit-linear-gradient(#36b0d9,#309bbf);background:url('../images/icons-s79f97b581c.png') 0 -891px no-repeat,linear-gradient(#36b0d9,#309bbf)}.grp-object-tools a.grp-viewsite-link,.grp-object-tools a[target="_blank"]{padding-left:28px;background:url('../images/icons-s79f97b581c.png') 0 -935px no-repeat,url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzk5OTk5OSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzg4ODg4OCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background:url('../images/icons-s79f97b581c.png') 0 -935px no-repeat,-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #999999),color-stop(100%, #888888));background:url('../images/icons-s79f97b581c.png') 0 -935px no-repeat,-moz-linear-gradient(#999999,#888888);background:url('../images/icons-s79f97b581c.png') 0 -935px no-repeat,-webkit-linear-gradient(#999999,#888888);background:url('../images/icons-s79f97b581c.png') 0 -935px no-repeat,linear-gradient(#999999,#888888)}.grp-object-tools a.grp-viewsite-link:hover,.grp-object-tools a[target="_blank"]:hover{background:url('../images/icons-s79f97b581c.png') 0 -935px no-repeat,url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzM2YjBkOSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzMwOWJiZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background:url('../images/icons-s79f97b581c.png') 0 -935px no-repeat,-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #36b0d9),color-stop(100%, #309bbf));background:url('../images/icons-s79f97b581c.png') 0 -935px no-repeat,-moz-linear-gradient(#36b0d9,#309bbf);background:url('../images/icons-s79f97b581c.png') 0 -935px no-repeat,-webkit-linear-gradient(#36b0d9,#309bbf);background:url('../images/icons-s79f97b581c.png') 0 -935px no-repeat,linear-gradient(#36b0d9,#309bbf)}.grp-tools{margin:0;padding:0;border:0;overflow:hidden;*zoom:1;position:relative;float:right;top:-24px;margin:0 0 -24px;padding-right:5px;height:24px;white-space:nowrap}.grp-tools li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:left;padding-left:1px;padding-right:1px}.grp-tools li:first-child{padding-left:0}.grp-tools li:last-child{padding-right:0}.grp-tools li.last{padding-right:0}.grp-tools-container .grp-tools li{float:none !important;display:inline-block}.grp-tools a,.grp-tools span{display:block;width:24px;height:24px}.grp-tools a.grp-icon-text,.grp-tools a.grp-text,.grp-tools span.grp-icon-text,.grp-tools span.grp-text{padding-left:24px;padding-right:6px;width:auto;line-height:24px;color:#444}.grp-tools a.grp-icon-text:hover,.grp-tools a.grp-text:hover,.grp-tools span.grp-icon-text:hover,.grp-tools span.grp-text:hover{color:#309bbf}.grp-tools a.grp-text,.grp-tools span.grp-text{padding-left:8px}.grp-tools a.grp-add-handler{background-position:0 -2111px}.grp-tools a.grp-add-handler:hover,.grp-tools a.grp-add-handler.tools-add-handler-hover{background-position:0 -2155px}.grp-tools a.grp-delete-handler{background-position:0 -2507px}.grp-tools a.grp-delete-handler:hover,.grp-tools a.grp-delete-handler.tools-delete-handler-hover{background-position:0 -2551px}.grp-predelete .grp-tools a.grp-delete-handler{background-position:0 -2463px}.grp-tools a.grp-remove-handler{background-position:0 -2859px}.grp-tools a.grp-remove-handler:hover,.grp-tools a.grp-remove-handler.tools-remove-handler-hover{background-position:0 -2903px}.grp-tools a.grp-drag-handler{background-position:0 -2595px}.grp-tools a.grp-drag-handler:hover,.grp-tools a.grp-drag-handler.tools-drag-handler-hover{background-position:0 -2639px}.grp-tools a.grp-viewsite-link{background-position:0 -3123px}.grp-tools a.grp-viewsite-link:hover,.grp-tools a.grp-viewsite-link.tools-viewsite-link-hover{background-position:0 -3167px}.grp-tools a.grp-edit-link{background-position:0 -2683px}.grp-tools a.grp-edit-link:hover,.grp-tools a.grp-edit-link.tools-edit-handler-hover{background-position:0 -2727px}.grp-tools a.grp-open-handler{background-position:0 -2771px}.grp-tools a.grp-open-handler:hover,.grp-tools a.grp-open-handler.tools-open-handler-hover{background-position:0 -2815px}.grp-tools a.grp-close-handler{background-position:0 -2375px}.grp-tools a.grp-close-handler:hover,.grp-tools a.grp-close-handler.tools-close-handler-hover{background-position:0 -2419px}.grp-tools a.grp-arrow-down-handler{background-position:0 -2199px}.grp-tools a.grp-arrow-down-handler:hover,.grp-tools a.grp-arrow-down-handler.tools-arrow-down-handler-hover{background-position:0 -2243px}.grp-tools a.grp-arrow-up-handler{background-position:0 -2287px}.grp-tools a.grp-arrow-up-handler:hover,.grp-tools a.grp-arrow-up-handler.tools-arrow-up-handler-hover{background-position:0 -2331px}.grp-tools a.grp-trash-handler{background-position:0 -2947px}.grp-tools a.grp-trash-handler:hover,.grp-tools a.grp-trash-handler.tools-trash-handler-hover{background-position:0 -2991px}.grp-tools a.grp-trash-list-toggle-handler{background-position:0 -3035px}.grp-tools a.grp-trash-list-toggle-handler:hover,.grp-tools a.grp-trash-list-toggle-handler.tools-trash-list-toggle-handler-hover{background-position:0 -3079px}.grp-tools input{position:absolute;top:-30px}.grp-tools span{color:transparent !important;cursor:default !important}.grp-module>h2+.grp-tools{top:-26px;right:1px;margin-bottom:-26px}.grp-module .grp-row>.grp-tools{top:-4px;right:-9px}.grp-module>h3+.grp-tools{top:-25px;margin-bottom:-25px}.grp-module.grp-closed>h3+.grp-tools{top:-24px;margin-bottom:-24px}fieldset.grp-module .grp-row>.grp-tools{top:0}.grp-group>h2+.grp-tools{top:-28px;right:1px;margin-bottom:-28px}.grp-group.grp-closed>h2+.grp-tools{top:-26px;right:1px;margin-bottom:-26px}.grp-group.grp-tabular h2+.grp-tools{top:-27px;right:1px;margin-bottom:-27px}.grp-tools-container .grp-tools{top:0;right:-20px;margin-bottom:0}.grp-module.grp-add-item .grp-tools{top:2px}.grp-related-widget-wrapper{position:relative;float:left;display:flex}.grp-tools.grp-related-widget-tools{top:2px;z-index:1}.grp-tools.grp-related-widget-tools li{padding:0}.grp-tools.grp-related-widget-tools a{position:relative;display:inline-block;vertical-align:top;font-size:11px;line-height:16px;width:21px;height:21px}.grp-tools.grp-related-widget-tools a.add-another{top:0;margin:0}.radiolist+.grp-tools.grp-related-widget-tools,.checkboxlist+.grp-tools.grp-related-widget-tools,.grp-related-widget+.grp-tools.grp-related-widget-tools{position:relative;display:inline-block;float:right;right:0;padding-left:0;margin-right:0;margin-left:5px}.radiolist+.grp-tools.grp-related-widget-tools,.checkboxlist+.grp-tools.grp-related-widget-tools{top:2px;margin-left:20px}table.grp-table{margin:0;padding:0;border-spacing:none;border-collapse:separate;border:1px solid #ccc;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}table.grp-table td,table.grp-table th{vertical-align:text-top;padding:10px;font-size:11px;line-height:15px}table.grp-table td.nowrap,table.grp-table th.nowrap{white-space:nowrap}table.grp-table thead th{vertical-align:top;padding:6px 10px 6px;font-size:11px;line-height:12px;color:#888;white-space:nowrap;border-left:1px solid #ccc;border-bottom:1px solid #ccc;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2UwZTBlMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #eeeeee),color-stop(100%, #e0e0e0));background-image:-moz-linear-gradient(#eeeeee,#e0e0e0);background-image:-webkit-linear-gradient(#eeeeee,#e0e0e0);background-image:linear-gradient(#eeeeee,#e0e0e0)}table.grp-table thead th:first-child{border-left:0}table.grp-table thead th:first-of-type{-moz-border-radius-topleft:2px;-webkit-border-top-left-radius:2px;border-top-left-radius:2px}table.grp-table thead th:last-of-type{-moz-border-radius-topright:2px;-webkit-border-top-right-radius:2px;border-top-right-radius:2px}table.grp-table thead th a{display:block;margin:-6px -10px;padding:6px 10px;height:100%;color:#59afcc}table.grp-table thead th a:hover{color:#444}table.grp-table tfoot td{vertical-align:top;padding:6px 10px 6px;font-size:11px;line-height:12px;color:#888;white-space:nowrap}table.grp-table tbody tr td,table.grp-table tbody tr th{border-bottom:1px solid #e0e0e0;border-left:1px solid #e4e4e4;vertical-align:top}table.grp-table tbody tr td:first-child,table.grp-table tbody tr th:first-child{border-left:0 !important}table.grp-table tbody tr th{font-size:12px;font-weight:bold}table.grp-table tbody tr.grp-row-even td,table.grp-table tbody tr.grp-row-even th,table.grp-table tbody tr.grp-alt td,table.grp-table tbody tr.grp-alt th{border-left:1px solid #e0e0e0;background:#f4f4f4}table.grp-table tbody tr.grp-row-odd td,table.grp-table tbody tr.grp-row-odd th{background:#fff}table.grp-table tbody tr.grp-selected{background:#ffd}table.grp-table tbody tr.grp-row-label td{border-bottom:0;color:#666}table.grp-table tbody tr:last-child td,table.grp-table tbody tr:last-child th{border-bottom:0}table.grp-table tbody tr:last-child td:first-child,table.grp-table tbody tr:last-child th:first-child{-moz-border-radius-bottomleft:2px;-webkit-border-bottom-left-radius:2px;border-bottom-left-radius:2px}table.grp-table tbody tr:last-child td:last-child,table.grp-table tbody tr:last-child th:last-child{-moz-border-radius-bottomright:2px;-webkit-border-bottom-right-radius:2px;border-bottom-right-radius:2px}table.grp-table tbody tr a.related-lookup+strong{top:0}table.grp-table tbody tr.grp-errors td,table.grp-table tbody tr.grp-errors th{padding-top:6px;padding-bottom:0}table.grp-table tbody tr.grp-errors td ul.errorlist,table.grp-table tbody tr.grp-errors th ul.errorlist{margin:0 0 3px !important}table.grp-table tfoot td{border-bottom:0;border-top:1px solid #d4d4d4}table.grp-table tfoot td:first-child{border-left:0}@media screen and (-webkit-min-device-pixel-ratio: 0){table.grp-table td>a:first-child,table.grp-table th>a:first-child{position:relative;top:1px}}table.grp-table td>input[type="checkbox"],table.grp-table td>input[type="radio"],table.grp-table th>input[type="checkbox"],table.grp-table th>input[type="radio"]{margin:0}table.grp-table td>input[type="file"],table.grp-table td>input[type="checkbox"],table.grp-table td>input[type="radio"],table.grp-table td>select,table.grp-table td p input[type="text"],table.grp-table th>input[type="file"],table.grp-table th>input[type="checkbox"],table.grp-table th>input[type="radio"],table.grp-table th>select,table.grp-table th p input[type="text"]{position:relative;margin-top:-7px !important;margin-bottom:-5px !important}table.grp-table td>input[type="text"],table.grp-table td>input[type="password"],table.grp-table td>input[type="url"],table.grp-table td>input[type="email"],table.grp-table td>input[type="number"],table.grp-table td>input[type="button"],table.grp-table td>select,table.grp-table td p input[type="text"],table.grp-table td p input[type="url"],table.grp-table td p input[type="email"],table.grp-table td p input[type="number"],table.grp-table td p>input[type="button"],table.grp-table td div.grp-related-widget-wrapper,table.grp-table th>input[type="text"],table.grp-table th>input[type="password"],table.grp-table th>input[type="url"],table.grp-table th>input[type="email"],table.grp-table th>input[type="number"],table.grp-table th>input[type="button"],table.grp-table th>select,table.grp-table th p input[type="text"],table.grp-table th p input[type="url"],table.grp-table th p input[type="email"],table.grp-table th p input[type="number"],table.grp-table th p>input[type="button"],table.grp-table th div.grp-related-widget-wrapper{vertical-align:top;margin-top:-5px !important;margin-bottom:-5px !important}table.grp-table td>textarea,table.grp-table td div.grp-readonly,table.grp-table th>textarea,table.grp-table th div.grp-readonly{position:relative;margin:-5px 0 -5px !important}table.grp-table td ul.radiolist,table.grp-table td ul.checkboxlist,table.grp-table th ul.radiolist,table.grp-table th ul.checkboxlist{margin:-3px 0 -5px}table.grp-table td ul.radiolist.inline,table.grp-table td ul.checkboxlist.inline,table.grp-table th ul.radiolist.inline,table.grp-table th ul.checkboxlist.inline{margin:-3px 0 -5px;white-space:normal !important;max-width:400px}table.grp-table td a.fb_show,table.grp-table td a.related-lookup,table.grp-table td .ui-datepicker-trigger,table.grp-table td .ui-timepicker-trigger,table.grp-table th a.fb_show,table.grp-table th a.related-lookup,table.grp-table th .ui-datepicker-trigger,table.grp-table th .ui-timepicker-trigger{margin:-5px 0 -11px -25px}table.grp-table td .grp-autocomplete-wrapper-m2m,table.grp-table td .grp-autocomplete-wrapper-fk,table.grp-table th .grp-autocomplete-wrapper-m2m,table.grp-table th .grp-autocomplete-wrapper-fk{margin:-5px 0 !important}table.grp-table td .grp-autocomplete-wrapper-m2m a.related-lookup,table.grp-table td .grp-autocomplete-wrapper-fk a.related-lookup,table.grp-table th .grp-autocomplete-wrapper-m2m a.related-lookup,table.grp-table th .grp-autocomplete-wrapper-fk a.related-lookup{top:0;margin-top:0}table.grp-table td ul.radiolist.inline+a.add-another,table.grp-table td ul.checkboxlist.inline+a.add-another,table.grp-table th ul.radiolist.inline+a.add-another,table.grp-table th ul.checkboxlist.inline+a.add-another{top:-5px}table.grp-table td>ul.errorlist,table.grp-table th>ul.errorlist{margin:8px 0 -7px !important}table.grp-table td>ul.errorlist:first-child,table.grp-table th>ul.errorlist:first-child{margin:-2px 0 8px !important}table.grp-table.grp-sortable thead th{margin:0;padding:0}table.grp-table.grp-sortable thead th div.grp-text span{display:block;padding:6px 10px;white-space:nowrap}table.grp-table.grp-sortable thead th div.grp-text span input[type="checkbox"]{margin:-6px 0 !important}table.grp-table.grp-sortable thead th.sortable{white-space:nowrap}table.grp-table.grp-sortable thead th.sortable .grp-text{position:relative;z-index:400;display:block;margin:0;padding:0;white-space:nowrap}table.grp-table.grp-sortable thead th.sortable .grp-text a{margin:0;padding:6px 10px;display:block}table.grp-table.grp-sortable thead th.sortable .grp-sortoptions{position:relative;z-index:410;display:block;float:right;clear:right;margin:0 5px 0 0px;width:50px;white-space:nowrap}table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a{position:relative;float:right;display:inline-block;margin:0;padding:0}table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-sortremove,table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-ascending,table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-descending{width:21px;height:24px}table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-sortremove{visibility:hidden;background-position:0 -1696px}table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-sortremove:hover,table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-sortremove.sort-remove-hover{background-position:0 -1739px}table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-ascending{background-position:0 -1782px}table.grp-table.grp-sortable thead th.sortable .grp-sortoptions a.grp-descending{background-position:0 -1825px}table.grp-table.grp-sortable thead th.sortable .grp-sortoptions:hover a.grp-sortremove{visibility:visible}table.grp-table.grp-sortable thead th.sortable .grp-sortoptions span.grp-sortpriority{position:relative;float:right;display:block;padding:6px 0 0;height:16px;font-weight:bold}table.grp-table.grp-sortable thead th.sortable:hover{background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2UwZTBlMCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e0e0e0),color-stop(100%, #eeeeee));background-image:-moz-linear-gradient(#e0e0e0,#eeeeee);background-image:-webkit-linear-gradient(#e0e0e0,#eeeeee);background-image:linear-gradient(#e0e0e0,#eeeeee)}table.grp-table.grp-sortable thead th.sortable.sorted.ascending{background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2UwZTBlMCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e0e0e0),color-stop(100%, #eeeeee));background-image:-moz-linear-gradient(#e0e0e0,#eeeeee);background-image:-webkit-linear-gradient(#e0e0e0,#eeeeee);background-image:linear-gradient(#e0e0e0,#eeeeee)}table.grp-table.grp-sortable thead th.sortable.sorted.ascending:hover{background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2UwZTBlMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #eeeeee),color-stop(100%, #e0e0e0));background-image:-moz-linear-gradient(#eeeeee,#e0e0e0);background-image:-webkit-linear-gradient(#eeeeee,#e0e0e0);background-image:linear-gradient(#eeeeee,#e0e0e0)}table.grp-table.grp-sortable thead th.sortable.sorted.descending{background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2UwZTBlMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #eeeeee),color-stop(100%, #e0e0e0));background-image:-moz-linear-gradient(#eeeeee,#e0e0e0);background-image:-webkit-linear-gradient(#eeeeee,#e0e0e0);background-image:linear-gradient(#eeeeee,#e0e0e0)}table.grp-table.grp-sortable thead th.sortable.sorted.descending:hover{background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2UwZTBlMCIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #e0e0e0),color-stop(100%, #eeeeee));background-image:-moz-linear-gradient(#e0e0e0,#eeeeee);background-image:-webkit-linear-gradient(#e0e0e0,#eeeeee);background-image:linear-gradient(#e0e0e0,#eeeeee)}table.grp-table.grp-sortable thead th.sortable.sorted a{color:#444;font-weight:bold}table.grp-table.grp-sortable thead th.sortable.sorted .grp-text a{padding-right:60px}table.grp-table thead th.optional{font-weight:normal !important}table.grp-table tr.row-label td{margin-top:-1px;padding-top:2px;padding-bottom:0;font-size:9px}table.grp-table.xfull,table.grp-table.grp-full-width{width:100%}table.grp-table.orderable tbody tr td:hover{cursor:move}table.grp-table.orderable tbody tr td:first-child{padding-left:14px;background-image:url("../images/backgrounds/nav-grabber.gif");background-repeat:repeat-y}table.grp-table.orderable-initalized .order-cell,body>tr>td.order-cell{display:none}table.grp-table#grp-change-history{width:100%}table.grp-table#grp-change-history tbody th{width:160px}table.grp-table#grp-change-history tbody td,table.grp-table#grp-change-history tbody th{background:#eee}table.grp-table.grp-full{width:100%}.grp-module>table.grp-table.grp-full{border:0;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.model-index table.grp-table th{padding:7px 10px 8px}.grp-pagination ul{margin:0;padding:0;border:0;overflow:hidden;*zoom:1}.grp-pagination ul li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:left;padding-left:0;padding-right:0}.grp-pagination ul li:first-child{padding-left:0}.grp-pagination ul li:last-child{padding-right:0}.grp-pagination ul li.last{padding-right:0}.grp-pagination ul li{margin-right:1px;border:1px solid #fff;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.grp-pagination ul li a,.grp-pagination ul li span{display:inline-block;padding:4px 8px 4px;min-width:25px;font-size:11px;font-weight:bold;text-align:center;border:1px solid;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.grp-pagination ul li a{color:#59afcc;border-color:#d9d9d9}.grp-pagination ul li a:hover{color:#444;border-color:#bdbdbd;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2UwZTBlMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #eeeeee),color-stop(100%, #e0e0e0));background-image:-moz-linear-gradient(#eeeeee,#e0e0e0);background-image:-webkit-linear-gradient(#eeeeee,#e0e0e0);background-image:linear-gradient(#eeeeee,#e0e0e0)}.grp-pagination ul li span{color:#444;border-color:#bdbdbd;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2VlZWVlZSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2UwZTBlMCIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #eeeeee),color-stop(100%, #e0e0e0));background-image:-moz-linear-gradient(#eeeeee,#e0e0e0);background-image:-webkit-linear-gradient(#eeeeee,#e0e0e0);background-image:linear-gradient(#eeeeee,#e0e0e0)}.grp-pagination ul li.grp-results{margin-right:4px}.grp-pagination ul li.grp-separator{border-color:transparent}.grp-pagination ul li.grp-separator span{padding:4px 0;min-width:10px;font-size:14px;border-color:transparent;background:transparent}.grp-pagination ul li.grp-showall{margin-left:4px}.grp-pagination ul li:last-child{clear:right}.grp-date-hierarchy ul{position:relative;float:left;clear:both;font-size:11px;line-height:16px;font-weight:bold}.grp-date-hierarchy ul li{position:relative;float:left}.grp-date-hierarchy ul li a,.grp-date-hierarchy ul li span{padding:2px 5px}.grp-date-hierarchy ul li a.grp-date-hierarchy-back{color:#59afcc;padding-left:15px;background-position:0 -522px}.grp-date-hierarchy ul li a.grp-date-hierarchy-back:hover,.grp-date-hierarchy ul li a.grp-date-hierarchy-back.date-hierarchy-back-hover{background-position:0 -565px}.grp-date-hierarchy ul li a.grp-date-hierarchy-back:hover{color:#444}form#grp-changelist-search-form{margin:1px 0 0;border:1px solid #fff;-moz-border-radius:20px;-webkit-border-radius:20px;border-radius:20px}.grp-pulldown-container{position:relative;top:0;width:inherit;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;margin:-1px 0 0}.grp-pulldown-container .grp-pulldown-handler{display:block;margin:0;font-weight:bold;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;cursor:pointer;background-position:100% -979px;background-size:auto !important;color:#309bbf}.grp-pulldown-container .grp-pulldown-handler:hover,.grp-pulldown-container .grp-pulldown-handler.pulldown-handler-hover{background-position:100% -1023px}.grp-pulldown-container .grp-pulldown-handler:hover{color:#444;background-position:100% -1023px}.grp-pulldown-container.grp-pulldown-state-open{z-index:910;float:left;clear:both;-moz-box-shadow:0 10px 50px #333;-webkit-box-shadow:0 10px 50px #333;box-shadow:0 10px 50px #333}.grp-pulldown-container.grp-pulldown-state-open .grp-pulldown-handler{color:#444;text-shadow:0 1px 0 #fff;-moz-border-radius-bottomleft:0 !important;-webkit-border-bottom-left-radius:0 !important;border-bottom-left-radius:0 !important;-moz-border-radius-bottomright:0 !important;-webkit-border-bottom-right-radius:0 !important;border-bottom-right-radius:0 !important;border-bottom:1px solid #ccc !important;background-position:100% -1067px}.grp-pulldown-container.grp-pulldown-state-open .grp-pulldown-handler:hover{color:#444;background-position:100% -1067px}.grp-pulldown-container.grp-pulldown-state-open .grp-pulldown-content{float:left;clear:both}.grp-pulldown-container .grp-pulldown-content{padding:0;width:100%;-moz-border-radius-bottomleft:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;-moz-border-radius-bottomright:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px;border-top:1px solid #fff !important;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;color:#444}.grp-pulldown-container .grp-pulldown-content:hover{color:#444}#grp-filters{position:relative}#grp-filters.grp-module{z-index:800}.grp-filter{position:relative;float:left;clear:both;width:100%;*zoom:1}.grp-filter:not(.grp-module){height:28px}.grp-filter .grp-pulldown-container{border:1px solid #fff}.grp-filter .grp-module:first-child h3{border-top:0}.grp-filter .grp-row label{display:inline-block;font-family:Arial,sans-serif;font-size:11px;line-height:13px;color:#444;display:block;margin:0 0 2px;color:#888;font-weight:bold}.grp-filter .grp-row label.required{font-weight:bold}.grp-filter .grp-row select{width:100% !important;max-width:100% !important}.grp-filter .grp-row a{display:block;margin:-5px -10px;padding:2px 10px;color:#59afcc;font-size:11px}.grp-filter .grp-row a:hover{color:#444}.grp-filter .grp-row.grp-selected a{padding-left:17px;color:#444;background-position:0 -2085px}.grp-filter:after{content:"\0020";display:block;height:0;clear:both;overflow:hidden;visibility:hidden}li.grp-changelist-actions{padding:5px 0 !important;background:transparent !important}li.grp-changelist-actions select{position:relative;float:left;margin:1px 5px 0 0}li.grp-changelist-actions button[type=submit]{float:right}li.grp-changelist-actions .grp-horizontal-list{margin:0;padding:0;border:0;overflow:hidden;*zoom:1;margin:-1px 0}li.grp-changelist-actions .grp-horizontal-list li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:left;padding-left:0;padding-right:0}li.grp-changelist-actions .grp-horizontal-list li:first-child{padding-left:0}li.grp-changelist-actions .grp-horizontal-list li:last-child{padding-right:0}li.grp-changelist-actions .grp-horizontal-list li.last{padding-right:0}li.grp-changelist-actions .grp-horizontal-list li{margin-right:4px;border:1px solid #333;-moz-border-radius:4px;-webkit-border-radius:4px;border-radius:4px}li.grp-changelist-actions .grp-horizontal-list .grp-button{padding:5px 10px 4px;height:27px;-moz-border-radius:3px !important;-webkit-border-radius:3px;border-radius:3px !important}li.grp-changelist-actions .grp-horizontal-list a{opacity:1 !important;color:#59afcc;font-weight:bold;border:1px solid #111;background:#222}li.grp-changelist-actions .grp-horizontal-list a:hover{color:#fff;border:1px solid #222;background:#555}li.grp-changelist-actions .grp-horizontal-list span{color:#bbb !important;cursor:default !important;border:1px solid #111 !important;background:#222 !important}li.grp-changelist-actions li.grp-all,li.grp-changelist-actions li.grp-question,li.grp-changelist-actions li.grp-clear-selection{display:none}.grp-submit-row.grp-fixed-footer>ul>li.grp-changelist-actions{padding:5px 0 !important}.grp-changelist-results{background:#eee url("../images/backgrounds/changelist-results.png") repeat scroll !important}.grp-result-overflow-scroll .grp-changelist-results{overflow:auto;overflow-y:hidden;-ms-overflow-y:hidden}.grp-result-overflow-scroll .grp-changelist-results table.grp-table{border-right:0 !important}body.grp-change-list table.grp-table{margin:-1px !important}body.grp-change-list table.grp-table tr.grp-selected th,body.grp-change-list table.grp-table tr.grp-selected td{background:#ffd}body.grp-delete-confirmation ul.grp-nested-list{position:relative;float:left;clear:both;width:100%;margin:-2px 0 2px}body.grp-delete-confirmation ul.grp-nested-list li{font-size:12px;font-weight:normal}body.grp-delete-confirmation ul.grp-nested-list li>ul li>ul{margin-left:6px}body.grp-delete-confirmation ul.grp-nested-list li>ul li>ul>li{margin:5px 0 5px -4px;padding-left:10px;border-left:4px solid #ddd}body.grp-delete-confirmation ul.grp-nested-list li+li{margin-top:5px}body.grp-delete-confirmation ul.grp-nested-list>li{margin-left:0;font-size:14px;font-weight:bold;position:relative;float:left;clear:both;margin:0 0 5px;padding:0;width:100%;border:1px solid #ccc;background:#eee;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;margin-top:2px !important;margin-bottom:0 !important;padding:8px 10px}body.grp-delete-confirmation ul.grp-nested-list>li .grp-module{margin:0;border:0}body.grp-delete-confirmation ul.grp-nested-list>li .grp-module+.grp-module{border-top:1px solid #d9d9d9;-moz-border-radius-topleft:0;-webkit-border-top-left-radius:0;border-top-left-radius:0;-moz-border-radius-topright:0;-webkit-border-top-right-radius:0;border-top-right-radius:0}body.grp-delete-confirmation ul.grp-nested-list>li+li{margin-top:0}body.grp-delete-confirmation ul.grp-nested-list>li>ul{margin-top:8px;border-top:1px solid #ddd}body.grp-delete-confirmation ul.grp-nested-list>li>ul>li{margin-top:0 !important;padding-top:8px;padding-bottom:8px;font-size:13px;font-weight:bold;border-top:1px solid #fff;border-bottom:1px solid #ddd}body.grp-delete-confirmation ul.grp-nested-list>li>ul>li:last-child{padding-bottom:0;border-bottom:0}body.grp-delete-confirmation ul.grp-nested-list>li>ul>li>ul{margin-top:8px}body.grp-delete-confirmation ul.grp-nested-list>li>ul>li>ul>li{font-weight:bold}body.grp-delete-confirmation ul.grp-nested-list>li>ul>li>ul>li>ul li ul li{color:#888}body.grp-filebrowser table td>a:first-child,body.grp-filebrowser table th>a:first-child{position:relative;top:0}body.grp-filebrowser table td.grp-sorted a,body.grp-filebrowser table th.grp-sorted a{padding-right:30px;color:#444;font-weight:bold}body.grp-filebrowser table td.grp-sorted.grp-ascending a,body.grp-filebrowser table th.grp-sorted.grp-ascending a{background-position:100% -1782px}body.grp-filebrowser table td.grp-sorted.grp-descending a,body.grp-filebrowser table th.grp-sorted.grp-descending a{background-position:100% -1825px}body.grp-filebrowser table td{padding:10px 10px 8px}body.grp-filebrowser table td ul.grp-actions{position:relative;top:-1px;left:-5px;margin:0 -5px -1px 0}.grp-module.ui-widget{border:none}.ui-widget-content{border:1px solid #ccc;-moz-border-radius-bottomleft:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;-moz-border-radius-bottomright:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{font-weight:bold}.ui-widget-content .ui-state-default{background:#CEE9F2}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{font-weight:bold}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{font-weight:bold}.ui-sortable{position:relative;float:left;clear:both;width:100%}.ui-sortable .ui-sortable-helper,.ui-sortable .ui-sortable-placeholder{opacity:.8}.ui-sortable .ui-sortable-helper{margin:0;width:100% !important;height:auto !important;overflow:visible}.ui-sortable .grp-module.ui-sortable-placeholder{border:1px solid #ccc !important;background:transparent url("../images/backgrounds/ui-sortable-placeholder.png") 0 0 repeat scroll !important}.grp-group.grp-stacked .ui-sortable-placeholder{margin:0 0 2px}.grp-group.grp-stacked .ui-sortable-placeholder:first-child{margin-top:0}.grp-group.grp-tabular .ui-sortable .grp-module.ui-sortable-placeholder{overflow:hidden}.grp-group.grp-tabular .ui-sortable .grp-module.ui-sortable-placeholder .grp-th,.grp-group.grp-tabular .ui-sortable .grp-module.ui-sortable-placeholder .grp-td{padding-top:0 !important;padding-bottom:0 !important;background:transparent !important}.grp-group.grp-tabular .ui-sortable .grp-module.ui-sortable-helper{border-top:0 !important}.grp-group.grp-tabular .ui-sortable .grp-module.ui-sortable-helper .grp-th,.grp-group.grp-tabular .ui-sortable .grp-module.ui-sortable-helper .grp-td{background:#ffffcc !important}.grp-group.grp-stacked .ui-sortable-helper,.grp-group.grp-stacked .ui-sortable-helper .grp-module,.grp-group.grp-stacked .ui-sortable-helper h2,.grp-group.grp-stacked .ui-sortable-helper h3,.grp-group.grp-stacked .ui-sortable-helper h4,.grp-group.grp-stacked .grp-collapse.grp-predelete.ui-sortable-helper>h3.grp-collapse-handler,.grp-group.grp-stacked .grp-collapse.grp-open.predelete.ui-sortable-helper>h3.grp-collapse-handler,.grp-group.grp-stacked .grp-collapse.grp-predelete.ui-sortable-helper h4.grp-collapse-handler,.grp-group.grp-stacked .grp-collapse.grp-open.grp-predelete.ui-sortable-helper h4.grp-collapse-handler{background:#ffffcc !important}.datetime br{display:none}.datetimeshortcuts{width:40px;position:relative;margin-left:10px}.datetimeshortcuts a{margin-left:0 !important}.ui-datepicker{position:absolute;display:none;margin:-1px 0 0 !important;padding:3px 3px 0;width:auto !important;font-size:12px;border:1px solid #888;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#eee;-moz-box-shadow:0 10px 50px #333;-webkit-box-shadow:0 10px 50px #333;box-shadow:0 10px 50px #333}.ui-datepicker input,.ui-datepicker select,.ui-datepicker textarea,.ui-datepicker button{margin:0;padding:2px 5px;height:25px;font-family:Arial,sans-serif;font-size:12px;line-height:14px;font-weight:bold;color:#555;border:1px solid #ccc;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#fdfdfd;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-box-shadow:inset 0 1px 3px 0 #eee;-webkit-box-shadow:inset 0 1px 3px 0 #eee;box-shadow:inset 0 1px 3px 0 #eee;overflow:hidden;vertical-align:middle}.ui-datepicker input:focus,.ui-datepicker input.grp-state-focus,.ui-datepicker select:focus,.ui-datepicker select.grp-state-focus,.ui-datepicker textarea:focus,.ui-datepicker textarea.grp-state-focus,.ui-datepicker button:focus,.ui-datepicker button.grp-state-focus{border:1px solid #aaa;-moz-box-shadow:#ccc 0 0 6px;-webkit-box-shadow:#ccc 0 0 6px;box-shadow:#ccc 0 0 6px;background:#fff;outline:0}.ui-datepicker .ui-widget-content{background:#eee;color:#222222}.ui-datepicker .ui-widget-content a{color:#444}.ui-datepicker .ui-widget-header{padding:2px 0;height:25px;background:#cccccc;color:#222222;font-weight:bold}.ui-datepicker .ui-widget-header a{color:#444}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0;border:1px solid #bdbdbd}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:4px;width:20px;height:30px;background-color:transparent;background-position:50% 50%;background-repeat:no-repeat;cursor:pointer}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:none}.ui-datepicker .ui-datepicker-prev{left:2px;background-position:0 -3297px}.ui-datepicker .ui-datepicker-prev:hover,.ui-datepicker .ui-datepicker-prev.ui-datepicker-prev-hover{background-position:0 -3340px}.ui-datepicker .ui-datepicker-next{right:4px;background-position:0 -3211px}.ui-datepicker .ui-datepicker-next:hover,.ui-datepicker .ui-datepicker-next.ui-datepicker-next-hover{background-position:0 -3254px}.ui-datepicker .ui-datepicker-prev-hover{left:2px;border:none}.ui-datepicker .ui-datepicker-next-hover{right:4px;border:none}.ui-datepicker .ui-datepicker-title{margin:3px 27px 2px;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{float:left;font-size:1em;margin:-3px 0 -1px !important;padding:4px 3px 4px 2px;min-width:30px;border:1px solid #bbb}.ui-datepicker .ui-datepicker-title select.ui-datepicker-month-year{width:100%}.ui-datepicker .ui-datepicker-title select.ui-datepicker-month,.ui-datepicker .ui-datepicker-title select.ui-datepicker-year{width:49%}.ui-datepicker .ui-datepicker-title select.ui-datepicker-year{float:right}@media screen and (-webkit-min-device-pixel-ratio: 0){.ui-datepicker .ui-datepicker-title select,.ui-datepicker .ui-datepicker-title select:focus{padding:4px 28px 4px 5px;-webkit-appearance:textfield;background-image:url("../images/icons/form-select.png");background-position:100% 50%;background-repeat:no-repeat}}.ui-datepicker table{width:100%;font-size:11px;margin:0 0 2px;border:0}.ui-datepicker table th{padding:5px 0;text-align:center;color:#888;font-weight:bold;border:0;background:transparent}.ui-datepicker table td{min-width:25px;border:0;padding:1px}.ui-datepicker table td span,.ui-datepicker table td a{padding:3px 0 3px;margin:0 !important;text-align:center;display:block;color:#444;font-size:11px;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.ui-datepicker table td span.ui-state-default,.ui-datepicker table td a.ui-state-default{color:#444;border-color:#ccc}.ui-datepicker table td span.ui-state-hover,.ui-datepicker table td a.ui-state-hover{color:#fff !important;border-color:transparent !important;background:#444 !important}.ui-datepicker table td span.ui-state-active,.ui-datepicker table td a.ui-state-active{background:#fff}.ui-datepicker table td span.ui-state-highlight,.ui-datepicker table td a.ui-state-highlight{border-color:#bababa;background:#d6d6d6}.ui-datepicker table td.ui-datepicker-today a{border-color:#bababa;background:#d6d6d6}.ui-datepicker table td.ui-datepicker-current-day a{background:#fff}.ui-datepicker .ui-datepicker-buttonpane{position:relative;float:left;clear:both;background-image:none;width:100%;margin:5px 0 1px;padding:0;border:0}.ui-datepicker .ui-datepicker-buttonpane button{float:left;margin:3px 0;padding:4px 5px 5px;height:25px;color:#aaa;font-size:11px;border:1px solid #c7c7c7;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:transparent;box-shadow:none;cursor:pointer}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:right;opacity:1 !important;color:#444;font-weight:bold;background:#cee9f2}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current.ui-state-hover{color:#fff !important;border-color:#444 !important;background:#444 !important}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker.ui-datepicker-multi .ui-datepicker-group-first .ui-datepicker-title{margin-right:5px !important}.ui-datepicker.ui-datepicker-multi .ui-datepicker-group-first table{margin-right:5px !important}.ui-datepicker.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-title{margin-right:5px !important;margin-left:5px !important}.ui-datepicker.ui-datepicker-multi .ui-datepicker-group-middle table{margin-right:5px !important;margin-left:3px !important}.ui-datepicker.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-title{margin-left:5px !important}.ui-datepicker.ui-datepicker-multi .ui-datepicker-group-last table{margin-left:5px !important}.ui-datepicker.ui-datepicker-multi .ui-datepicker-buttonpane{border:none}.ui-datepicker.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-row-break{clear:both;width:100%;font-size:0em}.ui-datepicker-append{margin-left:6px;color:#999;font-size:10px}.ui-datepicker td.ui-state-disabled{padding:1px;text-align:center}.ui-datepicker td.ui-state-disabled span{background:#ccc;color:#555 !important;font-weight:bold;font-size:11px;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}button.ui-datepicker-close{float:left !important;margin-right:4px !important}#ui-timepicker{position:absolute;z-index:1;display:none;margin:-1px 0 0 !important;padding:5px 3px 3px 5px;width:216px;font-size:12px;border:1px solid #888;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#eee;-moz-box-shadow:0 10px 50px #333;-webkit-box-shadow:0 10px 50px #333;box-shadow:0 10px 50px #333}#ui-timepicker input,#ui-timepicker select,#ui-timepicker textarea,#ui-timepicker button{margin:0;padding:2px 5px;height:25px;font-family:Arial,sans-serif;font-size:12px;line-height:14px;font-weight:bold;color:#555;border:1px solid #ccc;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#fdfdfd;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-box-shadow:inset 0 1px 3px 0 #eee;-webkit-box-shadow:inset 0 1px 3px 0 #eee;box-shadow:inset 0 1px 3px 0 #eee;overflow:hidden;vertical-align:middle}#ui-timepicker input:focus,#ui-timepicker input.grp-state-focus,#ui-timepicker select:focus,#ui-timepicker select.grp-state-focus,#ui-timepicker textarea:focus,#ui-timepicker textarea.grp-state-focus,#ui-timepicker button:focus,#ui-timepicker button.grp-state-focus{border:1px solid #aaa;-moz-box-shadow:#ccc 0 0 6px;-webkit-box-shadow:#ccc 0 0 6px;box-shadow:#ccc 0 0 6px;background:#fff;outline:0}#ui-timepicker .ui-widget-content{background:#eee;color:#222222}#ui-timepicker .ui-widget-content a{color:#444}#ui-timepicker .ui-widget-header{padding:2px 0;height:25px;background:#cccccc;color:#222222;font-weight:bold}#ui-timepicker .ui-widget-header a{color:#444}#ui-timepicker ul{position:relative;float:left;clear:both;width:auto}#ui-timepicker ul li.row{position:relative;float:left;display:block;margin:0 2px 2px 0;padding:2px 10px 1px;width:30px;font-size:11px;text-align:center;border:0;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;cursor:pointer}#ui-timepicker ul li.row.ui-state-default{color:#444;border:1px solid #c7c7c7 !important;background:#e1f0f5}#ui-timepicker ul li.row.ui-state-default:hover{color:#fff;border:1px solid #666 !important;background:#444}#ui-timepicker ul li.row.ui-state-active{color:#444;border:1px solid #bababa !important;background:#d6d6d6}.ui-menu{z-index:1000;display:block;margin:0;padding:2px;list-style:none}.ui-menu li:first-child span{display:block;padding:1px 4px;color:#888;font-weight:bold}.ui-menu li:first-child+li{margin-top:3px}.ui-menu li>span.error{display:block;margin:0;padding:5px 5px 5px;color:#bf3030}.ui-menu li.ui-menu-item{margin:0;padding:0;width:100%;border:0 !important}.ui-menu li.ui-menu-item a{display:block;margin:0 !important;padding:3px 4px;color:#444;font-weight:bold !important;border:1px solid #c7c7c7;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;background:#cee9f2;cursor:pointer}.ui-menu li.ui-menu-item a:hover,.ui-menu li.ui-menu-item a.ui-state-hover,.ui-menu li.ui-menu-item a.ui-state-focus,.ui-menu li.ui-menu-item a.ui-state-active{color:#fff;border:1px solid #333;background:#444}.ui-menu li.ui-menu-item+li.ui-menu-item{margin-top:2px;border-top:0 !important}.ui-menu .ui-menu{margin-top:-3px}.ui-autocomplete{position:absolute;cursor:default;margin:-1px 0 0 !important;padding:3px;font-size:12px;border:1px solid #888;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#eee;-moz-box-shadow:0 10px 50px #333;-webkit-box-shadow:0 10px 50px #333;box-shadow:0 10px 50px #333;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.ui-autocomplete input,.ui-autocomplete select,.ui-autocomplete textarea,.ui-autocomplete button{margin:0;padding:2px 5px;height:25px;font-family:Arial,sans-serif;font-size:12px;line-height:14px;font-weight:bold;color:#555;border:1px solid #ccc;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#fdfdfd;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;-moz-box-shadow:inset 0 1px 3px 0 #eee;-webkit-box-shadow:inset 0 1px 3px 0 #eee;box-shadow:inset 0 1px 3px 0 #eee;overflow:hidden;vertical-align:middle}.ui-autocomplete input:focus,.ui-autocomplete input.grp-state-focus,.ui-autocomplete select:focus,.ui-autocomplete select.grp-state-focus,.ui-autocomplete textarea:focus,.ui-autocomplete textarea.grp-state-focus,.ui-autocomplete button:focus,.ui-autocomplete button.grp-state-focus{border:1px solid #aaa;-moz-box-shadow:#ccc 0 0 6px;-webkit-box-shadow:#ccc 0 0 6px;box-shadow:#ccc 0 0 6px;background:#fff;outline:0}.ui-autocomplete .ui-widget-content{background:#eee;color:#222222}.ui-autocomplete .ui-widget-content a{color:#444}.ui-autocomplete .ui-widget-header{padding:2px 0;height:25px;background:#cccccc;color:#222222;font-weight:bold}.ui-autocomplete .ui-widget-header a{color:#444}* html .ui-autocomplete{width:1px}body{position:relative;float:left;clear:both;overflow:hidden;*zoom:1;padding:0;width:100%;height:100%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;background:#fff;overflow:visible;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.grp-column.grp-centered{position:relative;display:block;float:none !important;margin:0 auto !important}.grp-span-fluid{float:none;display:table-cell;width:10000px}body.grp-login #grp-header,body.grp-login #grp-context-navigation,body.grp-login #grp-content-title{display:none}body.grp-login #grp-content{top:140px}body.grp-login .grp-module-login{border:0 !important;-moz-border-radius:6px;-webkit-border-radius:6px;border-radius:6px;background:#222 !important}body.grp-login .grp-module-login>.grp-row{padding:10px;border-top:1px solid #333 !important;border-bottom:1px solid #000 !important}body.grp-login .grp-module-login>.grp-row label{color:#fff}body.grp-login .grp-module-login h1{font-size:18px;padding:35px 0 0;border:1px solid #111;border-bottom:0;-moz-border-radius-topleft:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-webkit-border-top-right-radius:4px;border-top-right-radius:4px;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzMzMzMzMyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzIyMjIyMiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #333333),color-stop(100%, #222222));background-image:-moz-linear-gradient(#333333,#222222);background-image:-webkit-linear-gradient(#333333,#222222);background-image:linear-gradient(#333333,#222222)}body.grp-login .grp-module-login h1 span{display:block;margin:0;color:#eee}body.grp-login .grp-module-login h1 span.grp-admin-title{padding:5px 10px 7px;font-weight:bold}body.grp-login .grp-module-login h1 span.grp-admin-title a{color:#eee}body.grp-login .grp-module-login h1 span.grp-admin-title a:hover{color:#4fb2d3}body.grp-login .grp-module-login h1 span.grp-current-page{margin:0 -1px;padding:5px 11px 4px;border-top:0;border-bottom:0;border-left:1px solid #2c8eaf;border-right:1px solid #2c8eaf;color:#fff;font-size:13px;font-weight:bold;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzRmYjJkMyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzMwOWJiZiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #4fb2d3),color-stop(100%, #309bbf));background-image:-moz-linear-gradient(#4fb2d3,#309bbf);background-image:-webkit-linear-gradient(#4fb2d3,#309bbf);background-image:linear-gradient(#4fb2d3,#309bbf)}body.grp-login .grp-module-login h1+.grp-row{border:0;border-top:1px solid #333}body.grp-login .grp-module-login .grp-module{border:1px solid #ccc;border-top:1px solid #f6f6f6;-moz-border-radius-topleft:0;-webkit-border-top-left-radius:0;border-top-left-radius:0;-moz-border-radius-topright:0;-webkit-border-top-right-radius:0;border-top-right-radius:0}body.grp-login .grp-module-login .grp-module .grp-row{padding-bottom:12px}body.grp-login .grp-module-login .grp-module .grp-row:first-child{border-top:0}body.grp-login .grp-module-login .grp-module .grp-row.grp-connected{margin-top:-5px;padding-top:0;border-top:1px solid #eee;background:#eee}body.grp-login .grp-module-login .grp-module .grp-row.grp-error-row{margin:0 -1px;padding:0;border-left:1px solid #af2c2c;border-right:1px solid #af2c2c;border-bottom:1px solid #ab2b2b;border-top:1px solid #ce3b3b;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}body.grp-login .grp-module-login .grp-module .grp-row.grp-error-row:first-child{margin-top:-1px;border-top:0;-moz-border-radius-topleft:0;-webkit-border-top-left-radius:0;border-top-left-radius:0;-moz-border-radius-topright:0;-webkit-border-top-right-radius:0;border-top-right-radius:0}body.grp-login .grp-module-login .grp-module label{margin:0 0 4px}body.grp-login .grp-module-login .grp-module label:first-child{margin-top:-2px}body.grp-login .grp-module-login .grp-module .grp-description{margin:3px 0 -3px;font-size:13px;line-height:15px}body.grp-login .grp-module-login .grp-module ul.errorlist{margin:5px 0 0;padding:0}body.grp-login .grp-module-login .grp-module ul.errorlist:last-child{margin-bottom:-2px}body.grp-login .grp-module-login .grp-module .errornote{margin:0;padding:9px 10px 7px;font-size:13px;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}body.grp-login .grp-module-login .grp-module .errornote+.errornote{margin-top:-3px;padding-top:0}body.grp-login .grp-module.grp-submit-row,body.grp-login .grp-module.grp-submit-row ul{padding:0;border:0;background:transparent}body.grp-login .grp-module.grp-submit-row li,body.grp-login .grp-module.grp-submit-row ul li{float:right;background:transparent}header#grp-header{position:fixed;z-index:1000;float:left;clear:both;width:100%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}#grp-navigation{position:relative;float:left;clear:both;width:100%;padding:0 20px;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzMzMzMzMyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzIyMjIyMiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #333333),color-stop(100%, #222222));background-image:-moz-linear-gradient(#333333,#222222);background-image:-webkit-linear-gradient(#333333,#222222);background-image:linear-gradient(#333333,#222222);overflow:hidden;*zoom:1;overflow:visible}#grp-navigation a{color:#4fb2d3}#grp-navigation a:hover{color:#fff}#grp-navigation ul li.grp-collapse{position:relative;z-index:1000}#grp-navigation ul li.grp-collapse>ul{display:none}#grp-navigation ul li.grp-collapse.grp-open>ul{position:absolute;z-index:1010;display:block;margin:-1px 0 0 -1px;width:202px;border-top:1px solid #090909;-moz-border-radius-bottomleft:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;-moz-border-radius-bottomright:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px;background:#222}#grp-navigation ul li.grp-collapse.grp-open>ul li{border-top:1px solid #3c3c3c;border-bottom:1px solid #090909}#grp-navigation ul li.grp-collapse.grp-open>ul li:last-child{border-bottom:0}div#grp-branding{position:relative;float:left;margin:0 10px 0 -20px;max-height:36px;overflow:hidden}h1#grp-admin-title{position:relative;float:left;margin:0;padding:10px 0;font-size:12px;line-height:16px}#grp-user-tools{position:relative;float:right;font-weight:bold;margin:0 -10px 0 0;border-left:1px solid #090909}#grp-user-tools>li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:left;padding-left:0;padding-right:0;border-left:1px solid #343434;border-right:1px solid #090909}#grp-user-tools>li:first-child{padding-left:0}#grp-user-tools>li:last-child{padding-right:0}#grp-user-tools>li.last{padding-right:0}#grp-user-tools>li.grp-user-options-container{width:200px}#grp-user-tools>li.grp-user-options-container:last-child{margin-right:11px}#grp-user-tools>li:last-child{border-right:0}#grp-user-tools>li a{display:block;padding:10px 10px}#grp-content{position:relative;float:left;clear:both;top:80px;padding:0 20px 120px;width:100%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}body.grp-change-form #grp-content-container>form,body.grp-change-form #grp-content-container>form>div{position:relative;float:left;clear:both}#grp-context-navigation{position:relative;float:left;clear:both;width:100%;font-weight:bold;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;border-bottom:1px solid #ccc;background:#eee}#grp-breadcrumbs{float:left}#grp-breadcrumbs>ul{margin:0;padding:0;border:0;overflow:hidden;*zoom:1;padding:5px 20px;text-shadow:0 1px 0 #f5f5f5}#grp-breadcrumbs>ul li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:left;padding-left:5px;padding-right:5px}#grp-breadcrumbs>ul li:first-child{padding-left:0}#grp-breadcrumbs>ul li:last-child{padding-right:0}#grp-breadcrumbs>ul li.last{padding-right:0}#grp-breadcrumbs>ul a{display:block;padding-right:15px;background-position:100% -348px}#grp-breadcrumbs>ul a:hover,#grp-breadcrumbs>ul a.breadcrumbs-hover{background-position:100% -392px}#grp-breadcrumbs>ul a:hover{background-position:100% -392px}#grp-page-tools{float:right;right:20px}#grp-page-tools #grp-toc-handler{display:none}#grp-page-tools #grp-toc-content{display:none}#grp-page-tools ul{margin:0;padding:0;border:0;overflow:hidden;*zoom:1;padding:0 20px;overflow:visible}#grp-page-tools ul li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:left;padding-left:5px;padding-right:5px}#grp-page-tools ul li:first-child{padding-left:0}#grp-page-tools ul li:last-child{padding-right:0}#grp-page-tools ul li.last{padding-right:0}#grp-page-tools ul li{position:relative;padding:1px 0 0}#grp-page-tools a{display:block;padding:4px 5px 4px 0}#grp-page-tools a.grp-tool{padding:0;width:18px;height:24px}#grp-page-tools a#grp-open-all{background-position:0 -2771px}#grp-page-tools a#grp-open-all:hover,#grp-page-tools a#grp-open-all.tools-open-handler-hover{background-position:0 -2815px}#grp-page-tools a#grp-close-all{background-position:0 -2375px}#grp-page-tools a#grp-close-all:hover,#grp-page-tools a#grp-close-all.tools-close-handler-hover{background-position:0 -2419px}.grp-messagelist{position:relative;float:none;clear:both;padding:0 0 20px;width:100%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.grp-messagelist>li{font-weight:bold;padding:5px 10px;border:1px solid #8ccde2;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#b5deec}.grp-messagelist>li.grp-success{border:1px solid #b7e28c;background:#d1ecb5}.grp-messagelist>li.grp-warning{border:1px solid #f3d988;background:#f8e8b7}.grp-messagelist>li.grp-error{border:1px solid #e7a1a1;background:#ecb5b5}.grp-messagelist>li+li{margin-top:2px}.grp-submit-row{padding:0;border:0;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;background:transparent;min-width:auto}.grp-submit-row>ul{margin-top:10px;overflow:visible}.grp-submit-row>ul>li{list-style-image:none;list-style-type:none;margin-left:0;white-space:nowrap;float:right;padding-left:0;padding-right:0;margin-left:10px;-moz-border-radius:7px;-webkit-border-radius:7px;border-radius:7px}.grp-submit-row>ul>li:first-child{padding-right:0}.grp-submit-row>ul>li:last-child{padding-left:0}.grp-submit-row>ul>li.last{padding-left:0}.grp-submit-row>ul>li.grp-float-left{margin-left:0;margin-right:10px}.grp-submit-row input[type=button]{margin:0;width:auto;display:block}.grp-submit-row input.grp-button,.grp-submit-row a.grp-button,.grp-submit-row button.grp-button{filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=75);opacity:.75}.grp-submit-row input.grp-button.grp-default,.grp-submit-row a.grp-button.grp-default,.grp-submit-row button.grp-button.grp-default{filter:progid:DXImageTransform.Microsoft.Alpha(enabled=false);opacity:1}.grp-submit-row input.grp-button:hover,.grp-submit-row input.grp-button:focus,.grp-submit-row a.grp-button:hover,.grp-submit-row a.grp-button:focus,.grp-submit-row button.grp-button:hover,.grp-submit-row button.grp-button:focus{filter:progid:DXImageTransform.Microsoft.Alpha(enabled=false);opacity:1}.grp-submit-row button.grp-button{width:auto}.grp-submit-row .grp-button{-moz-box-shadow:0 0 10px #bbb;-webkit-box-shadow:0 0 10px #bbb;box-shadow:0 0 10px #bbb}.grp-submit-row.grp-fixed-footer>ul{margin-top:0}.grp-submit-row.grp-fixed-footer>ul>li{margin-bottom:5px;padding:5px !important;background:#444}.grp-submit-row.grp-fixed-footer .grp-button{-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none}.grp-fixed-footer{position:fixed;z-index:900;float:left;bottom:0;left:0;margin:0;padding:10px 20px 5px;width:100%;border:0;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;color:#fff;background-image:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzMzMzMzMyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzIyMjIyMiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==');background-size:100%;background-image:-webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #333333),color-stop(100%, #222222));background-image:-moz-linear-gradient(#333333,#222222);background-image:-webkit-linear-gradient(#333333,#222222);background-image:linear-gradient(#333333,#222222)}body.grp-popup #grp-navigation{display:none}body.grp-popup #grp-breadcrumbs{top:0}body.grp-popup #grp-content{top:20px}@media only screen and (max-device-width: 600px) and (max-device-height: 600px){html header#grp-header{position:static;width:100%;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}html #grp-content{top:0;padding-bottom:0}html .grp-fixed-footer{position:static;padding-left:20px;padding-right:20px;width:100%;margin:60px -20px 0 -20px;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-grappelli-2.12.2/grappelli/templates/admin/base.html new/django-grappelli-2.12.3/grappelli/templates/admin/base.html
--- old/django-grappelli-2.12.2/grappelli/templates/admin/base.html 2019-01-16 17:34:13.000000000 +0100
+++ new/django-grappelli-2.12.3/grappelli/templates/admin/base.html 2019-05-02 15:22:50.000000000 +0200
@@ -78,7 +78,8 @@
{% block branding %}{% endblock %}
{% block admin_title %}
<h1 id="grp-admin-title">
- {% if site_header and site_header != "Django administration" %}
+ {% trans "Django administration" as vanilla_site_header %}
+ {% if site_header and site_header != vanilla_site_header %}
{{ site_header|safe }}
{% elif grappelli_admin_title %}
{{ grappelli_admin_title }}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-grappelli-2.12.2/grappelli/templates/admin/object_history.html new/django-grappelli-2.12.3/grappelli/templates/admin/object_history.html
--- old/django-grappelli-2.12.2/grappelli/templates/admin/object_history.html 2019-01-16 17:34:13.000000000 +0100
+++ new/django-grappelli-2.12.3/grappelli/templates/admin/object_history.html 2019-05-02 15:22:50.000000000 +0200
@@ -32,7 +32,7 @@
{% for action in action_list %}
<tr>
<th scope="grp-row">{{ action.action_time|date:_("DATETIME_FORMAT") }}</th>
- <td>{{ action.user.username }}{% if action.user.get_full_name %} ({{ action.user.get_full_name }}){% endif %}</td>
+ <td>{{ action.user.get_username }}{% if action.user.get_full_name %} ({{ action.user.get_full_name }}){% endif %}</td>
<td>{{ action.get_change_message }}</td>
</tr>
{% endfor %}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-grappelli-2.12.2/grappelli/templates/admin/pagination.html new/django-grappelli-2.12.3/grappelli/templates/admin/pagination.html
--- old/django-grappelli-2.12.2/grappelli/templates/admin/pagination.html 2019-01-16 17:34:13.000000000 +0100
+++ new/django-grappelli-2.12.3/grappelli/templates/admin/pagination.html 2019-05-02 15:22:50.000000000 +0200
@@ -3,18 +3,35 @@
<nav class="grp-pagination">
<header style="display:none"><h1>Pagination</h1></header>
<ul>
- {% if cl.result_count != cl.full_result_count %}
- <li class="grp-results"><span>
- {% blocktrans count cl.result_count as counter %}{{ counter }} result{% plural %}{{ counter }} results{% endblocktrans %}
- </span></li>
- {% endif %}
- <li class="grp-results">
- {% if cl.result_count != cl.full_result_count or cl.show_all %}
- <a href="?{% if cl.is_popup %}_popup=1{% endif %}" class="total">{% blocktrans with cl.full_result_count as full_result_count %}{{ full_result_count }} total{% endblocktrans %}</a>
- {% else %}
- <span>{% blocktrans with cl.full_result_count as full_result_count %}{{ full_result_count }} total{% endblocktrans %}</span>
+ {% if cl.show_full_result_count %}
+ {% if cl.result_count != cl.full_result_count %}
+ <li class="grp-results"><span>
+ {% blocktrans count cl.result_count as counter %}{{ counter }} result{% plural %}{{ counter }} results{% endblocktrans %}
+ </span></li>
{% endif %}
- </li>
+ <li class="grp-results">
+ {% if cl.result_count != cl.full_result_count or cl.show_all %}
+ <a href="?{% if cl.is_popup %}_popup=1{% endif %}" class="total">{% blocktrans with cl.full_result_count as full_result_count %}{{ full_result_count }} total{% endblocktrans %}</a>
+ {% else %}
+ <span>{% blocktrans with cl.full_result_count as full_result_count %}{{ full_result_count }} total{% endblocktrans %}</span>
+ {% endif %}
+ </li>
+ {% else %}
+ <li class="grp-results">
+ <span>
+ {% blocktrans count cl.result_count as counter %}
+ {{ counter }} result
+ {% plural %}
+ {{ counter }} results
+ {% endblocktrans %}
+ </span>
+ </li>
+ <li class="grp-results">
+ <a href="?{% if cl.is_popup %}_popup=1{% endif %}" class="total">
+ {% trans "Show all" %}
+ </a>
+ </li>
+ {% endif %}
{% if pagination_required %}
{% for i in page_range %}
{% ifequal i "." %}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-grappelli-2.12.2/grappelli/templates/admin/widgets/related_widget_wrapper.html new/django-grappelli-2.12.3/grappelli/templates/admin/widgets/related_widget_wrapper.html
--- old/django-grappelli-2.12.2/grappelli/templates/admin/widgets/related_widget_wrapper.html 2019-01-16 17:34:13.000000000 +0100
+++ new/django-grappelli-2.12.3/grappelli/templates/admin/widgets/related_widget_wrapper.html 2019-05-02 15:22:50.000000000 +0200
@@ -1,6 +1,6 @@
{% load i18n admin_static %}
<div class="grp-related-widget-wrapper related-widget-wrapper">
- {{ rendered_widget }}
+ <div class="grp-related-widget">{{ rendered_widget }}</div>
{% block links %}
{% if can_change_related or can_add_related or can_delete_related %}
<ul class="grp-tools grp-related-widget-tools">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-grappelli-2.12.2/package-lock.json new/django-grappelli-2.12.3/package-lock.json
--- old/django-grappelli-2.12.2/package-lock.json 2019-01-16 17:34:13.000000000 +0100
+++ new/django-grappelli-2.12.3/package-lock.json 2019-05-02 15:22:50.000000000 +0200
@@ -1,6 +1,6 @@
{
"name": "Grappelli",
- "version": "2.12.2",
+ "version": "2.12.3",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-grappelli-2.12.2/package.json new/django-grappelli-2.12.3/package.json
--- old/django-grappelli-2.12.2/package.json 2019-01-16 17:34:13.000000000 +0100
+++ new/django-grappelli-2.12.3/package.json 2019-05-02 15:22:50.000000000 +0200
@@ -1,6 +1,6 @@
{
"name": "Grappelli",
- "version": "2.12.2",
+ "version": "2.12.3",
"description": "A jazzy skin for the Django admin interface",
"author": "Patrick Kranzlmueller, Axel Swoboda",
"license": "New BSD",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-grappelli-2.12.2/setup.py new/django-grappelli-2.12.3/setup.py
--- old/django-grappelli-2.12.2/setup.py 2019-01-16 17:34:13.000000000 +0100
+++ new/django-grappelli-2.12.3/setup.py 2019-05-02 15:22:50.000000000 +0200
@@ -7,7 +7,7 @@
setup(
name='django-grappelli',
- version='2.12.2',
+ version='2.12.3',
description='A jazzy skin for the Django Admin-Interface.',
long_description=read('README.rst'),
url='http://django-grappelli.readthedocs.org',
1
0
Hello community,
here is the log from the commit of package python-django-cors-headers for openSUSE:Factory checked in at 2019-05-06 21:17:20
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-django-cors-headers (Old)
and /work/SRC/openSUSE:Factory/.python-django-cors-headers.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-django-cors-headers"
Mon May 6 21:17:20 2019 rev:2 rq:701061 version:2.5.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-django-cors-headers/python-django-cors-headers.changes 2019-03-26 22:31:02.877725686 +0100
+++ /work/SRC/openSUSE:Factory/.python-django-cors-headers.new.5148/python-django-cors-headers.changes 2019-05-06 21:17:23.089093560 +0200
@@ -1,0 +2,7 @@
+Mon May 6 11:33:53 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Update to 2.5.3:
+ * Tested on Django 2.2. No changes were needed for compatibility.
+ * Tested on Python 3.7. No changes were needed for compatibility.
+
+-------------------------------------------------------------------
Old:
----
django-cors-headers-2.5.2.tar.gz
New:
----
django-cors-headers-2.5.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-django-cors-headers.spec ++++++
--- /var/tmp/diff_new_pack.ZDJhAA/_old 2019-05-06 21:17:23.541094735 +0200
+++ /var/tmp/diff_new_pack.ZDJhAA/_new 2019-05-06 21:17:23.541094735 +0200
@@ -15,9 +15,10 @@
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
+
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-django-cors-headers
-Version: 2.5.2
+Version: 2.5.3
Release: 0
Summary: A Django App that adds CORS headers to responses
License: MIT
@@ -25,8 +26,8 @@
URL: https://github.com/ottoyiu/django-cors-headers
Source: https://files.pythonhosted.org/packages/source/d/django-cors-headers/django…
BuildRequires: %{python_module Django}
-BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module pytest-django}
+BuildRequires: %{python_module setuptools}
# Test config requires 100% test coverage
BuildRequires: %{python_module pytest-cov}
BuildRequires: fdupes
++++++ django-cors-headers-2.5.2.tar.gz -> django-cors-headers-2.5.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-cors-headers-2.5.2/HISTORY.rst new/django-cors-headers-2.5.3/HISTORY.rst
--- old/django-cors-headers-2.5.2/HISTORY.rst 2019-03-15 17:42:27.000000000 +0100
+++ new/django-cors-headers-2.5.3/HISTORY.rst 2019-04-28 21:03:13.000000000 +0200
@@ -6,6 +6,12 @@
.. Insert new release notes below this line
+2.5.3 (2019-04-28)
+------------------
+
+* Tested on Django 2.2. No changes were needed for compatibility.
+* Tested on Python 3.7. No changes were needed for compatibility.
+
2.5.2 (2019-03-15)
------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-cors-headers-2.5.2/PKG-INFO new/django-cors-headers-2.5.3/PKG-INFO
--- old/django-cors-headers-2.5.2/PKG-INFO 2019-03-15 17:42:50.000000000 +0100
+++ new/django-cors-headers-2.5.3/PKG-INFO 2019-04-28 21:03:29.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.2
Name: django-cors-headers
-Version: 2.5.2
+Version: 2.5.3
Summary: django-cors-headers is a Django application for handling the server headers required for Cross-Origin Resource Sharing (CORS).
Home-page: https://github.com/ottoyiu/django-cors-headers
Author: Otto Yiu
@@ -26,8 +26,8 @@
Tested with all combinations of:
- * Python: 2.7, 3.6
- * Django: 1.11, 2.0, 2.1
+ * Python: 2.7, 3.5, 3.6, 3.7
+ * Django: 1.11, 2.0, 2.1, 2.2
Setup
-----
@@ -239,6 +239,12 @@
If ``True``, cookies will be allowed to be included in cross-site HTTP
requests. Defaults to ``False``.
+ Note: in Django 2.1 the `SESSION_COOKIE_SAMESITE`_ setting was added, set to
+ ``'Lax'`` by default, which will prevent Django's session cookie being sent
+ cross-domain. Change it to ``None`` to bypass this security restriction.
+
+ .. _SESSION_COOKIE_SAMESITE: https://docs.djangoproject.com/en/2.1/ref/settings/#std:setting-SESSION_COO…
+
``CORS_MODEL``
~~~~~~~~~~~~~~
@@ -377,6 +383,12 @@
.. Insert new release notes below this line
+ 2.5.3 (2019-04-28)
+ ------------------
+
+ * Tested on Django 2.2. No changes were needed for compatibility.
+ * Tested on Python 3.7. No changes were needed for compatibility.
+
2.5.2 (2019-03-15)
------------------
@@ -584,6 +596,7 @@
Classifier: Framework :: Django :: 1.11
Classifier: Framework :: Django :: 2.0
Classifier: Framework :: Django :: 2.1
+Classifier: Framework :: Django :: 2.2
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
@@ -593,6 +606,7 @@
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
+Classifier: Programming Language :: Python :: 3.7
Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-cors-headers-2.5.2/README.rst new/django-cors-headers-2.5.3/README.rst
--- old/django-cors-headers-2.5.2/README.rst 2019-03-15 17:25:10.000000000 +0100
+++ new/django-cors-headers-2.5.3/README.rst 2019-04-28 20:15:27.000000000 +0200
@@ -18,8 +18,8 @@
Tested with all combinations of:
-* Python: 2.7, 3.6
-* Django: 1.11, 2.0, 2.1
+* Python: 2.7, 3.5, 3.6, 3.7
+* Django: 1.11, 2.0, 2.1, 2.2
Setup
-----
@@ -231,6 +231,12 @@
If ``True``, cookies will be allowed to be included in cross-site HTTP
requests. Defaults to ``False``.
+Note: in Django 2.1 the `SESSION_COOKIE_SAMESITE`_ setting was added, set to
+``'Lax'`` by default, which will prevent Django's session cookie being sent
+cross-domain. Change it to ``None`` to bypass this security restriction.
+
+.. _SESSION_COOKIE_SAMESITE: https://docs.djangoproject.com/en/2.1/ref/settings/#std:setting-SESSION_COO…
+
``CORS_MODEL``
~~~~~~~~~~~~~~
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-cors-headers-2.5.2/corsheaders/__init__.py new/django-cors-headers-2.5.3/corsheaders/__init__.py
--- old/django-cors-headers-2.5.2/corsheaders/__init__.py 2019-03-15 17:42:30.000000000 +0100
+++ new/django-cors-headers-2.5.3/corsheaders/__init__.py 2019-04-28 21:02:41.000000000 +0200
@@ -1,3 +1,3 @@
from .checks import check_settings # noqa: F401
-__version__ = '2.5.2'
+__version__ = '2.5.3'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-cors-headers-2.5.2/django_cors_headers.egg-info/PKG-INFO new/django-cors-headers-2.5.3/django_cors_headers.egg-info/PKG-INFO
--- old/django-cors-headers-2.5.2/django_cors_headers.egg-info/PKG-INFO 2019-03-15 17:42:50.000000000 +0100
+++ new/django-cors-headers-2.5.3/django_cors_headers.egg-info/PKG-INFO 2019-04-28 21:03:28.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.2
Name: django-cors-headers
-Version: 2.5.2
+Version: 2.5.3
Summary: django-cors-headers is a Django application for handling the server headers required for Cross-Origin Resource Sharing (CORS).
Home-page: https://github.com/ottoyiu/django-cors-headers
Author: Otto Yiu
@@ -26,8 +26,8 @@
Tested with all combinations of:
- * Python: 2.7, 3.6
- * Django: 1.11, 2.0, 2.1
+ * Python: 2.7, 3.5, 3.6, 3.7
+ * Django: 1.11, 2.0, 2.1, 2.2
Setup
-----
@@ -239,6 +239,12 @@
If ``True``, cookies will be allowed to be included in cross-site HTTP
requests. Defaults to ``False``.
+ Note: in Django 2.1 the `SESSION_COOKIE_SAMESITE`_ setting was added, set to
+ ``'Lax'`` by default, which will prevent Django's session cookie being sent
+ cross-domain. Change it to ``None`` to bypass this security restriction.
+
+ .. _SESSION_COOKIE_SAMESITE: https://docs.djangoproject.com/en/2.1/ref/settings/#std:setting-SESSION_COO…
+
``CORS_MODEL``
~~~~~~~~~~~~~~
@@ -377,6 +383,12 @@
.. Insert new release notes below this line
+ 2.5.3 (2019-04-28)
+ ------------------
+
+ * Tested on Django 2.2. No changes were needed for compatibility.
+ * Tested on Python 3.7. No changes were needed for compatibility.
+
2.5.2 (2019-03-15)
------------------
@@ -584,6 +596,7 @@
Classifier: Framework :: Django :: 1.11
Classifier: Framework :: Django :: 2.0
Classifier: Framework :: Django :: 2.1
+Classifier: Framework :: Django :: 2.2
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
@@ -593,6 +606,7 @@
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
+Classifier: Programming Language :: Python :: 3.7
Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-cors-headers-2.5.2/requirements.txt new/django-cors-headers-2.5.3/requirements.txt
--- old/django-cors-headers-2.5.2/requirements.txt 2019-03-14 10:53:13.000000000 +0100
+++ new/django-cors-headers-2.5.3/requirements.txt 2019-04-28 20:14:35.000000000 +0200
@@ -2,31 +2,36 @@
# This file is autogenerated by pip-compile
# To update, run:
#
-# pip-compile --output-file requirements.txt requirements.in
+# __main__.py compile -r -U
#
-atomicwrites==1.2.1 # via pytest
-attrs==18.2.0 # via pytest
-configparser==3.7.1 # via flake8
-coverage==4.5.2 # via pytest-cov
+atomicwrites==1.3.0 # via pytest
+attrs==19.1.0 # via pytest
+backports.functools-lru-cache==1.5 ; python_version < '3.0' # via isort
+configparser==3.7.4 # via entrypoints, flake8
+coverage==4.5.3 # via pytest-cov
docutils==0.14
+entrypoints==0.3 # via flake8
enum34==1.1.6 # via flake8
-flake8==3.6.0
+flake8==3.7.7
funcsigs==1.0.2 # via pytest
+functools32==3.2.3.post2 ; python_version < '3.0' # via flake8
futures==3.1.1
-isort==4.3.4
+isort==4.3.17
mccabe==0.6.1 # via flake8
-modernize==0.6.1
+modernize==0.7
more-itertools==5.0.0 # via pytest
multilint==2.4.0
pathlib2==2.3.3 # via pytest, pytest-django
-pluggy==0.8.1 # via pytest
-py==1.7.0 # via pytest
-pycodestyle==2.4.0 # via flake8
-pyflakes==2.0.0 # via flake8
+pluggy==0.9.0 # via pytest
+py==1.8.0 # via pytest
+pycodestyle==2.5.0 # via flake8
+pyflakes==2.1.1 # via flake8
pygments==2.3.1
pytest-cov==2.6.1
-pytest-django==3.4.5
-pytest==4.1.1
-pytz==2018.9
-scandir==1.9.0 # via pathlib2
+pytest-django==3.4.8
+pytest==4.4.1
+pytz==2019.1
+scandir==1.10.0 # via pathlib2
six==1.12.0 # via more-itertools, multilint, pathlib2, pytest
+sqlparse==0.3.0
+typing==3.6.6 # via flake8
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-cors-headers-2.5.2/setup.py new/django-cors-headers-2.5.3/setup.py
--- old/django-cors-headers-2.5.2/setup.py 2019-03-14 10:53:13.000000000 +0100
+++ new/django-cors-headers-2.5.3/setup.py 2019-04-28 20:15:56.000000000 +0200
@@ -46,6 +46,7 @@
'Framework :: Django :: 1.11',
'Framework :: Django :: 2.0',
'Framework :: Django :: 2.1',
+ 'Framework :: Django :: 2.2',
'Intended Audience :: Developers',
'License :: OSI Approved :: MIT License',
'Operating System :: OS Independent',
@@ -55,6 +56,7 @@
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
+ 'Programming Language :: Python :: 3.7',
'Topic :: Software Development :: Libraries :: Application Frameworks',
'Topic :: Software Development :: Libraries :: Python Modules',
],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/django-cors-headers-2.5.2/tox.ini new/django-cors-headers-2.5.3/tox.ini
--- old/django-cors-headers-2.5.2/tox.ini 2019-03-14 10:53:13.000000000 +0100
+++ new/django-cors-headers-2.5.3/tox.ini 2019-04-28 19:03:00.000000000 +0200
@@ -1,7 +1,7 @@
[tox]
envlist =
py{27,3}-django{111},
- py3-django{20,21},
+ py3-django{20,21,22},
py{27,3}-codestyle
[testenv]
@@ -13,6 +13,7 @@
django111: Django>=1.11,<2.0
django20: Django>=2.0,<2.1
django21: Django>=2.1,<2.2
+ django22: Django>=2.2,<2.3
commands = ./runtests.py {posargs}
[testenv:py27-codestyle]
1
0
Hello community,
here is the log from the commit of package haproxy for openSUSE:Factory checked in at 2019-05-06 21:17:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/haproxy (Old)
and /work/SRC/openSUSE:Factory/.haproxy.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "haproxy"
Mon May 6 21:17:18 2019 rev:70 rq:701060 version:1.8.20~git0.6fb9fadc
Changes:
--------
--- /work/SRC/openSUSE:Factory/haproxy/haproxy.changes 2019-02-14 14:32:42.543670397 +0100
+++ /work/SRC/openSUSE:Factory/.haproxy.new.5148/haproxy.changes 2019-05-06 21:17:19.793084989 +0200
@@ -1,0 +2,54 @@
+Fri May 03 12:56:13 UTC 2019 - kgronlund(a)suse.com
+
+- Update to version 1.8.20~git0.6fb9fadc:
+ * [RELEASE] Released version 1.8.20
+ * BUG/MINOR: spoe: Don't systematically wakeup SPOE stream in the applet handler
+ * BUG/MINOR: da: Get the request channel to call CHECK_HTTP_MESSAGE_FIRST()
+ * BUG/MINOR: 51d: Get the request channel to call CHECK_HTTP_MESSAGE_FIRST()
+ * BUG/MEDIUM: thread/http: Add missing locks in set-map and add-acl HTTP rules
+ * BUG/MINOR: acl: properly detect pattern type SMP_T_ADDR
+ * BUG/MEDIUM: maps: only try to parse the default value when it's present
+ * BUG/MAJOR: http_fetch: Get the channel depending on the keyword used
+ * MINOR: skip get_gmtime where tm is unused
+ * BUILD/MINOR: listener: Silent a few signedness warnings.
+ * BUG/MEDIUM: listener: make sure the listener never accepts too many conns
+ * BUG/MEDIUM: listener: use a self-locked list for the dequeue lists
+ * MAJOR: listener: do not hold the listener lock in listener_accept()
+ * BUG/MEDIUM: list: fix incorrect pointer unlocking in LIST_DEL_LOCKED()
+ * BUG/MEDIUM: list: fix again LIST_ADDQ_LOCKED
+ * BUG/MEDIUM: list: correct fix for LIST_POP_LOCKED's removal of last element
+ * MINOR: list: make the delete and pop operations idempotent
+ * BUG/MEDIUM: list: add missing store barriers when updating elements and head
+ * BUG/MEDIUM: list: fix LIST_POP_LOCKED's removal of the last pointer
+ * BUG/MEDIUM: list: fix the rollback on addq in the locked liss
+ * BUG/MEDIUM: lists: Properly handle the case we're removing the first elt.
+ * MINOR: lists: Implement locked variations.
+ * BUG/MINOR: threads: fix the process range of thread masks
+ * BUG/MEDIUM: spoe: Return an error if nothing is encoded for fragmented messages
+ * BUG/MEDIUM: spoe: Queue message only if no SPOE applet is attached to the stream
+ * BUG/MEDIUM: pattern: assign pattern IDs after checking the config validity
+ * BUILD: connection: fix naming of ip_v field
+ * BUILD: use inttypes.h instead of stdint.h
+ * BUG/MEDIUM: peers: fix a case where peer session is not cleanly reset on release.
+ * MINOR: cli: start addresses by a prefix in 'show cli sockets'
+ * BUG/MINOR: cli: correctly handle abns in 'show cli sockets'
+ * BUILD: Makefile: disable shared cache on AIX 5.1
+ * BUILD: makefile: add _LINUX_SOURCE_COMPAT to build on AIX-51
+ * BUILD: makefile: fix build of IPv6 header on aix51
+ * MINOR: tools: make memvprintf() never pass a NULL target to vsnprintf()
+ * BUILD: makefile: work around an old bug in GNU make-3.80
+ * BUG/MAJOR: checks: segfault during tcpcheck_main
+ * DOC: The option httplog is no longer valid in a backend.
+ * BUG/MEDIUM: ssl: ability to set TLS 1.3 ciphers using ssl-default-server-ciphersuites
+ * BUG/MINOR: http/counters: fix missing increment of fe->srv_aborts
+ * BUG/MAJOR: stats: Fix how huge POST data are read from the channel
+ * BUG/MAJOR: spoe: Fix initialization of thread-dependent fields
+ * BUG/MEDIUM: threads/fd: do not forget to take into account epoll_fd/pipes
+ * MEDIUM: threads: Use __ATOMIC_SEQ_CST when using the newer atomic API.
+ * BUG/MINOR: ssl: fix warning about ssl-min/max-ver support
+ * BUG/MEDIUM: 51d: fix possible segfault on deinit_51degrees()
+ * BUG/MEDIUM: logs: Only attempt to free startup_logs once.
+ * BUG/MINOR: listener: keep accept rate counters accurate under saturation
+ * BUG/MAJOR: listener: Make sure the listener exist before using it.
+
+-------------------------------------------------------------------
Old:
----
haproxy-1.8.19~git0.ebf033b4.tar.gz
New:
----
haproxy-1.8.20~git0.6fb9fadc.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ haproxy.spec ++++++
--- /var/tmp/diff_new_pack.EakfGE/_old 2019-05-06 21:17:20.433086653 +0200
+++ /var/tmp/diff_new_pack.EakfGE/_new 2019-05-06 21:17:20.437086664 +0200
@@ -47,7 +47,7 @@
%endif
Name: haproxy
-Version: 1.8.19~git0.ebf033b4
+Version: 1.8.20~git0.6fb9fadc
Release: 0
#
#
++++++ _service ++++++
--- /var/tmp/diff_new_pack.EakfGE/_old 2019-05-06 21:17:20.457086715 +0200
+++ /var/tmp/diff_new_pack.EakfGE/_new 2019-05-06 21:17:20.457086715 +0200
@@ -5,8 +5,8 @@
<param name="filename">haproxy</param>
<param name="versionformat">@PARENT_TAG@~git@TAG_OFFSET@.%h</param>
<param name="versionrewrite-pattern">v(.*)</param>
- <param name="versionrewrite-replacement">\1</param>
- <param name="revision">v1.8.19</param>
+ <param name="versionrewrite-replacement">\1</param>
+ <param name="revision">v1.8.20</param>
<param name="changesgenerate">enable</param>
</service>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.EakfGE/_old 2019-05-06 21:17:20.473086757 +0200
+++ /var/tmp/diff_new_pack.EakfGE/_new 2019-05-06 21:17:20.473086757 +0200
@@ -5,4 +5,4 @@
<param name="url">http://git.haproxy.org/git/haproxy-1.7.git</param>
<param name="changesrevision">640d526f8cdad00f7f5043b51f6a34f3f6ebb49f</param></service><service name="tar_scm">
<param name="url">http://git.haproxy.org/git/haproxy-1.8.git</param>
- <param name="changesrevision">ebf033b47d58aa04ae9913038c9369dab8740411</param></service></servicedata>
\ No newline at end of file
+ <param name="changesrevision">6fb9fadc5311cd00beb522a35596d3aa63f24fdb</param></service></servicedata>
\ No newline at end of file
++++++ haproxy-1.8.19~git0.ebf033b4.tar.gz -> haproxy-1.8.20~git0.6fb9fadc.tar.gz ++++++
++++ 2478 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package python-zstd for openSUSE:Factory checked in at 2019-05-06 21:17:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-zstd (Old)
and /work/SRC/openSUSE:Factory/.python-zstd.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-zstd"
Mon May 6 21:17:15 2019 rev:2 rq:701057 version:1.4.0.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-zstd/python-zstd.changes 2019-03-05 12:23:25.560876120 +0100
+++ /work/SRC/openSUSE:Factory/.python-zstd.new.5148/python-zstd.changes 2019-05-06 21:17:16.445076282 +0200
@@ -1,0 +2,8 @@
+Mon May 6 10:46:18 UTC 2019 - pgajdos(a)suse.com
+
+- version update to 1.4.0.0
+ * Add LICENSE to MANIFEST.in
+ * Fix version tests - don't sort, just reverse
+ * Remove debug logging
+
+-------------------------------------------------------------------
Old:
----
LICENSE
zstd-1.3.8.1.tar.gz
New:
----
zstd-1.4.0.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-zstd.spec ++++++
--- /var/tmp/diff_new_pack.TWs3eM/_old 2019-05-06 21:17:17.221078300 +0200
+++ /var/tmp/diff_new_pack.TWs3eM/_new 2019-05-06 21:17:17.225078311 +0200
@@ -18,14 +18,13 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-zstd
-Version: 1.3.8.1
+Version: 1.4.0.0
Release: 0
Summary: ZSTD Bindings for Python
License: BSD-2-Clause
Group: Development/Languages/Python
URL: https://github.com/sergey-dryabzhinsky/python-zstd
Source: https://files.pythonhosted.org/packages/source/z/zstd/zstd-%{version}.tar.gz
-Source1: https://raw.githubusercontent.com/sergey-dryabzhinsky/python-zstd/master/LI…
Patch0: test-external.patch
Patch1: test-once.patch
BuildRequires: %{python_module devel}
@@ -43,7 +42,6 @@
%setup -q -n zstd-%{version}
%patch0 -p1
%patch1 -p1
-cp %{SOURCE1} .
rm -rf zstd/
%build
++++++ zstd-1.3.8.1.tar.gz -> zstd-1.4.0.0.tar.gz ++++++
++++ 6373 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package python-pytest4 for openSUSE:Factory checked in at 2019-05-06 21:17:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pytest4 (Old)
and /work/SRC/openSUSE:Factory/.python-pytest4.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-pytest4"
Mon May 6 21:17:12 2019 rev:2 rq:701055 version:4.4.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pytest4/python-pytest4.changes 2019-04-08 10:35:12.107229864 +0200
+++ /work/SRC/openSUSE:Factory/.python-pytest4.new.5148/python-pytest4.changes 2019-05-06 21:17:13.613068918 +0200
@@ -1,0 +2,9 @@
+Mon May 6 11:01:13 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Update to 4.4.1:
+ * #5031: Environment variables are properly restored when using pytester's testdir fixture.
+ * #5039: Fix regression with --pdbcls, which stopped working with local modules in 4.0.0.
+ * #5092: Produce a warning when unknown keywords are passed to pytest.param(...).
+ * #5098: Invalidate import caches with monkeypatch.syspath_prepend, which is required with namespace packages being used.
+
+-------------------------------------------------------------------
Old:
----
pytest-4.4.0.tar.gz
New:
----
pytest-4.4.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-pytest4.spec ++++++
--- /var/tmp/diff_new_pack.uLEUxT/_old 2019-05-06 21:17:14.049070051 +0200
+++ /var/tmp/diff_new_pack.uLEUxT/_new 2019-05-06 21:17:14.049070051 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package python-pytest4
+# spec file for package python
#
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
#
@@ -26,7 +26,7 @@
%bcond_with test
%endif
Name: python-pytest4%{psuffix}
-Version: 4.4.0
+Version: 4.4.1
Release: 0
Summary: Python testing tool with autodiscovery and detailed asserts
License: MIT
@@ -54,7 +54,7 @@
%if %{with test}
BuildRequires: %{python_module hypothesis}
BuildRequires: %{python_module pygments-pytest}
-BuildRequires: %{python_module pytest = %{version}}
+BuildRequires: %{python_module pytest >= %{version}}
BuildRequires: %{python_module setuptools_scm}
BuildRequires: python-funcsigs
BuildRequires: python-mock
++++++ pytest-4.4.0.tar.gz -> pytest-4.4.1.tar.gz ++++++
++++ 1998 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package jshon for openSUSE:Factory checked in at 2019-05-06 21:17:09
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/jshon (Old)
and /work/SRC/openSUSE:Factory/.jshon.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "jshon"
Mon May 6 21:17:09 2019 rev:2 rq:701026 version:20131105
Changes:
--------
--- /work/SRC/openSUSE:Factory/jshon/jshon.changes 2019-05-05 21:21:52.917352799 +0200
+++ /work/SRC/openSUSE:Factory/.jshon.new.5148/jshon.changes 2019-05-06 21:17:11.693063925 +0200
@@ -1,0 +2,5 @@
+Mon May 6 09:13:31 UTC 2019 - Jan Engelhardt <jengelh(a)inai.de>
+
+- Ensure neutrality of description.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ jshon.spec ++++++
--- /var/tmp/diff_new_pack.XNb8Xh/_old 2019-05-06 21:17:12.269065423 +0200
+++ /var/tmp/diff_new_pack.XNb8Xh/_new 2019-05-06 21:17:12.273065433 +0200
@@ -1,6 +1,7 @@
#
# spec file for package jshon
#
+# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2015, Martin Hauke <mardnh(a)gmx.de>
#
# All modifications and additions to the file contributed by third parties
@@ -12,7 +13,7 @@
# 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/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
@@ -33,9 +34,9 @@
BuildRequires: pkgconfig(jansson)
%description
-Jshon parses, reads and creates JSON. It is designed to be as usable as possible
-from within the shell and replaces fragile adhoc parsers made from grep/sed/awk
-as well as heavyweight one-line parsers made from perl/python.
+Jshon parses, reads and creates JSON. It is usable from within the
+shell and can replace adhoc parsers made from grep/sed/awk as well as
+one-line parsers made from perl/python.
%prep
%autosetup
1
0
Hello community,
here is the log from the commit of package python-pytest-arraydiff for openSUSE:Factory checked in at 2019-05-06 21:17:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pytest-arraydiff (Old)
and /work/SRC/openSUSE:Factory/.python-pytest-arraydiff.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-pytest-arraydiff"
Mon May 6 21:17:06 2019 rev:2 rq:701023 version:0.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pytest-arraydiff/python-pytest-arraydiff.changes 2018-08-15 10:39:18.668391950 +0200
+++ /work/SRC/openSUSE:Factory/.python-pytest-arraydiff.new.5148/python-pytest-arraydiff.changes 2019-05-06 21:17:07.681053492 +0200
@@ -1,0 +2,7 @@
+Wed Feb 13 13:19:01 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Update to 0.3:
+ * Fixed compatibility with pytest 4+. [#15]
+- Use _multibuild to run tests
+
+-------------------------------------------------------------------
Old:
----
pytest-arraydiff-0.2.tar.gz
New:
----
_multibuild
pytest-arraydiff-0.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-pytest-arraydiff.spec ++++++
--- /var/tmp/diff_new_pack.1VNVf9/_old 2019-05-06 21:17:08.177054782 +0200
+++ /var/tmp/diff_new_pack.1VNVf9/_new 2019-05-06 21:17:08.177054782 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-pytest-arraydiff
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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
@@ -12,20 +12,27 @@
# 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/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
+#
-# Tests require astropy, which in turn requires this package
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
-Name: python-pytest-arraydiff
-Version: 0.2
+%global flavor @BUILD_FLAVOR@%{nil}
+%if "%{flavor}" == "test"
+%define psuffix -test
+%bcond_without test
+%else
+%define psuffix %{nil}
+%bcond_with test
+%endif
+Name: python-pytest-arraydiff%{psuffix}
+Version: 0.3
Release: 0
-License: BSD-2-Clause
Summary: Pytest plugin to help with comparing array output from tests
-Url: https://github.com/astrofrog/pytest-arraydiff
+License: BSD-2-Clause
Group: Development/Languages/Python
+URL: https://github.com/astrofrog/pytest-arraydiff
Source: https://files.pythonhosted.org/packages/source/p/pytest-arraydiff/pytest-ar…
-BuildRequires: %{python_module devel}
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
@@ -33,7 +40,11 @@
Requires: python-pytest
Requires: python-six
BuildArch: noarch
-
+%if %{with test}
+BuildRequires: %{python_module numpy}
+BuildRequires: %{python_module pytest}
+BuildRequires: %{python_module six}
+%endif
%python_subpackages
%description
@@ -52,7 +63,6 @@
- The FITS format (requires astropy). With this format, tests
can return either a Numpy array for a FITS HDU object.
-
%prep
%setup -q -n pytest-arraydiff-%{version}
@@ -60,12 +70,22 @@
%python_build
%install
+%if !%{with test}
%python_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
+%endif
+
+%if %{with test}
+%check
+# generate, default_format, test_fails, test_succeeds_func_fits_hdu tests need astropy that is python3 only, so skip
+%pytest -k 'not (test_generate or test_default_format or test_fails or test_succeeds_func_fits_hdu)'
+%endif
+%if !%{with test}
%files %{python_files}
%doc CHANGES.md README.rst
%license LICENSE
%{python_sitelib}/*
+%endif
%changelog
++++++ _multibuild ++++++
<multibuild>
<package>test</package>
</multibuild>
++++++ pytest-arraydiff-0.2.tar.gz -> pytest-arraydiff-0.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-arraydiff-0.2/CHANGES.md new/pytest-arraydiff-0.3/CHANGES.md
--- old/pytest-arraydiff-0.2/CHANGES.md 2018-01-29 11:17:46.000000000 +0100
+++ new/pytest-arraydiff-0.3/CHANGES.md 2018-12-06 05:29:14.000000000 +0100
@@ -1,3 +1,8 @@
+0.3 (2018-12-05)
+----------------
+
+- Fixed compatibility with pytest 4+. [#15]
+
0.2 (2018-01-29)
----------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-arraydiff-0.2/PKG-INFO new/pytest-arraydiff-0.3/PKG-INFO
--- old/pytest-arraydiff-0.2/PKG-INFO 2018-01-29 11:17:54.000000000 +0100
+++ new/pytest-arraydiff-0.3/PKG-INFO 2018-12-06 05:30:04.000000000 +0100
@@ -1,20 +1,20 @@
Metadata-Version: 1.1
Name: pytest-arraydiff
-Version: 0.2
+Version: 0.3
Summary: pytest plugin to help with comparing array output from tests
Home-page: https://github.com/astrofrog/pytest-arraydiff
Author: Thomas Robitaille
Author-email: thomas.robitaille(a)gmail.com
License: BSD
-Description: |Travis Build Status| |AppVeyor Build status| |Coveralls coverage|
+Description: |Travis Build Status| |AppVeyor Build status| |Coverage|
About
-----
This is a `py.test <http://pytest.org>`__ plugin to facilitate the
- generation and comparison of data arrays produced during tests (this is a
- spin-off from
- `pytest-arraydiff <https://github.com/astrofrog/pytest-arraydiff>`__).
+ generation and comparison of data arrays produced during tests, in particular
+ in cases where the arrays are too large to conveniently hard-code them
+ in the tests (e.g. ``np.testing.assert_allclose(x, [1, 2, 3])``).
The basic idea is that you can write a test that generates a Numpy array (or
other related objects depending on the format). You can then either run the
@@ -38,21 +38,15 @@
requires `pytest <http://pytest.org>`__ and
`numpy <http://www.numpy.org>`__ to be installed.
- To install, you can do:
-
- ::
+ To install, you can do::
pip install pytest-arraydiff
- You can check that the plugin is registered with pytest by doing:
-
- ::
+ You can check that the plugin is registered with pytest by doing::
py.test --version
- which will show a list of plugins:
-
- ::
+ which will show a list of plugins::
This is pytest version 2.7.1, imported from ...
setuptools registered plugins:
@@ -63,9 +57,7 @@
To use, you simply need to mark the function where you want to compare
arrays using ``(a)pytest.mark.array_compare``, and make sure that the
- function returns a plain Numpy array:
-
- ::
+ function returns a plain Numpy array::
python
import pytest
@@ -77,9 +69,7 @@
To generate the reference data files, run the tests with the
``--arraydiff-generate-path`` option with the name of the directory
- where the generated files should be placed:
-
- ::
+ where the generated files should be placed::
py.test --arraydiff-generate-path=reference
@@ -93,9 +83,7 @@
name is configurable, see below). You can also generate the baseline
arrays directly in the right directory.
- You can then run the tests simply with:
-
- ::
+ You can then run the tests simply with::
py.test --arraydiff
@@ -161,9 +149,7 @@
end in a slash).
Finally, you can also set a custom baseline directory globally when
- running tests by running ``py.test`` with:
-
- ::
+ running tests by running ``py.test`` with::
py.test --arraydiff --arraydiff-reference-path=baseline_arrays
@@ -177,9 +163,7 @@
If the arrays produced by the tests are correct, then the test will
pass, but if they are not, the test will fail with a message similar to
- the following:
-
- ::
+ the following::
E AssertionError:
E
@@ -203,9 +187,7 @@
--------------------------------------
If you are contributing some changes and want to run the tests, first
- install the latest version of the plugin then do:
-
- ::
+ install the latest version of the plugin then do::
cd tests
py.test --arraydiff
@@ -215,10 +197,10 @@
.. |Travis Build Status| image:: https://travis-ci.org/astrofrog/pytest-arraydiff.svg?branch=master
:target: https://travis-ci.org/astrofrog/pytest-arraydiff
- .. |AppVeyor Build status| image:: https://ci.appveyor.com/api/projects/status/4hfoe954rxhgslsl/branch/master?…
- :target: https://ci.appveyor.com/project/astrofrog/pytest-arraydiff
- .. |Coveralls coverage| image:: https://coveralls.io/repos/matplotlib/pytest-arraydiff/badge.svg
- :target: https://coveralls.io/r/matplotlib/pytest-arraydiff
+ .. |AppVeyor Build status| image:: https://ci.appveyor.com/api/projects/status/0nech6qgp8jlabjp/branch/master?…
+ :target: https://ci.appveyor.com/project/astropy/pytest-arraydiff
+ .. |Coverage| image:: https://codecov.io/gh/astropy/pytest-arraydiff/branch/master/graph/badge.svg
+ :target: https://codecov.io/gh/astropy/pytest-arraydiff
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-arraydiff-0.2/README.rst new/pytest-arraydiff-0.3/README.rst
--- old/pytest-arraydiff-0.2/README.rst 2018-01-29 11:12:14.000000000 +0100
+++ new/pytest-arraydiff-0.3/README.rst 2018-12-05 19:49:54.000000000 +0100
@@ -1,12 +1,12 @@
-|Travis Build Status| |AppVeyor Build status| |Coveralls coverage|
+|Travis Build Status| |AppVeyor Build status| |Coverage|
About
-----
This is a `py.test <http://pytest.org>`__ plugin to facilitate the
-generation and comparison of data arrays produced during tests (this is a
-spin-off from
-`pytest-arraydiff <https://github.com/astrofrog/pytest-arraydiff>`__).
+generation and comparison of data arrays produced during tests, in particular
+in cases where the arrays are too large to conveniently hard-code them
+in the tests (e.g. ``np.testing.assert_allclose(x, [1, 2, 3])``).
The basic idea is that you can write a test that generates a Numpy array (or
other related objects depending on the format). You can then either run the
@@ -30,21 +30,15 @@
requires `pytest <http://pytest.org>`__ and
`numpy <http://www.numpy.org>`__ to be installed.
-To install, you can do:
-
-::
+To install, you can do::
pip install pytest-arraydiff
-You can check that the plugin is registered with pytest by doing:
-
-::
+You can check that the plugin is registered with pytest by doing::
py.test --version
-which will show a list of plugins:
-
-::
+which will show a list of plugins::
This is pytest version 2.7.1, imported from ...
setuptools registered plugins:
@@ -55,9 +49,7 @@
To use, you simply need to mark the function where you want to compare
arrays using ``(a)pytest.mark.array_compare``, and make sure that the
-function returns a plain Numpy array:
-
-::
+function returns a plain Numpy array::
python
import pytest
@@ -69,9 +61,7 @@
To generate the reference data files, run the tests with the
``--arraydiff-generate-path`` option with the name of the directory
-where the generated files should be placed:
-
-::
+where the generated files should be placed::
py.test --arraydiff-generate-path=reference
@@ -85,9 +75,7 @@
name is configurable, see below). You can also generate the baseline
arrays directly in the right directory.
-You can then run the tests simply with:
-
-::
+You can then run the tests simply with::
py.test --arraydiff
@@ -153,9 +141,7 @@
end in a slash).
Finally, you can also set a custom baseline directory globally when
-running tests by running ``py.test`` with:
-
-::
+running tests by running ``py.test`` with::
py.test --arraydiff --arraydiff-reference-path=baseline_arrays
@@ -169,9 +155,7 @@
If the arrays produced by the tests are correct, then the test will
pass, but if they are not, the test will fail with a message similar to
-the following:
-
-::
+the following::
E AssertionError:
E
@@ -195,9 +179,7 @@
--------------------------------------
If you are contributing some changes and want to run the tests, first
-install the latest version of the plugin then do:
-
-::
+install the latest version of the plugin then do::
cd tests
py.test --arraydiff
@@ -207,7 +189,7 @@
.. |Travis Build Status| image:: https://travis-ci.org/astrofrog/pytest-arraydiff.svg?branch=master
:target: https://travis-ci.org/astrofrog/pytest-arraydiff
-.. |AppVeyor Build status| image:: https://ci.appveyor.com/api/projects/status/4hfoe954rxhgslsl/branch/master?…
- :target: https://ci.appveyor.com/project/astrofrog/pytest-arraydiff
-.. |Coveralls coverage| image:: https://coveralls.io/repos/matplotlib/pytest-arraydiff/badge.svg
- :target: https://coveralls.io/r/matplotlib/pytest-arraydiff
+.. |AppVeyor Build status| image:: https://ci.appveyor.com/api/projects/status/0nech6qgp8jlabjp/branch/master?…
+ :target: https://ci.appveyor.com/project/astropy/pytest-arraydiff
+.. |Coverage| image:: https://codecov.io/gh/astropy/pytest-arraydiff/branch/master/graph/badge.svg
+ :target: https://codecov.io/gh/astropy/pytest-arraydiff
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-arraydiff-0.2/pytest_arraydiff/__init__.py new/pytest-arraydiff-0.3/pytest_arraydiff/__init__.py
--- old/pytest-arraydiff-0.2/pytest_arraydiff/__init__.py 2018-01-29 11:17:46.000000000 +0100
+++ new/pytest-arraydiff-0.3/pytest_arraydiff/__init__.py 2018-12-06 05:29:24.000000000 +0100
@@ -1 +1 @@
-__version__ = '0.2'
+__version__ = '0.3'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-arraydiff-0.2/pytest_arraydiff/plugin.py new/pytest-arraydiff-0.3/pytest_arraydiff/plugin.py
--- old/pytest-arraydiff-0.2/pytest_arraydiff/plugin.py 2018-01-29 09:47:37.000000000 +0100
+++ new/pytest-arraydiff-0.3/pytest_arraydiff/plugin.py 2018-12-05 19:49:54.000000000 +0100
@@ -36,6 +36,7 @@
import shutil
import tempfile
import warnings
+from distutils.version import StrictVersion
import six
from six.moves.urllib.request import urlopen
@@ -212,7 +213,10 @@
def pytest_runtest_setup(self, item):
- compare = item.keywords.get('array_compare')
+ if StrictVersion(pytest.__version__) < StrictVersion("3.6"):
+ compare = item.get_marker('array_compare')
+ else:
+ compare = item.get_closest_marker('array_compare')
if compare is None:
return
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-arraydiff-0.2/pytest_arraydiff.egg-info/PKG-INFO new/pytest-arraydiff-0.3/pytest_arraydiff.egg-info/PKG-INFO
--- old/pytest-arraydiff-0.2/pytest_arraydiff.egg-info/PKG-INFO 2018-01-29 11:17:54.000000000 +0100
+++ new/pytest-arraydiff-0.3/pytest_arraydiff.egg-info/PKG-INFO 2018-12-06 05:30:04.000000000 +0100
@@ -1,20 +1,20 @@
Metadata-Version: 1.1
Name: pytest-arraydiff
-Version: 0.2
+Version: 0.3
Summary: pytest plugin to help with comparing array output from tests
Home-page: https://github.com/astrofrog/pytest-arraydiff
Author: Thomas Robitaille
Author-email: thomas.robitaille(a)gmail.com
License: BSD
-Description: |Travis Build Status| |AppVeyor Build status| |Coveralls coverage|
+Description: |Travis Build Status| |AppVeyor Build status| |Coverage|
About
-----
This is a `py.test <http://pytest.org>`__ plugin to facilitate the
- generation and comparison of data arrays produced during tests (this is a
- spin-off from
- `pytest-arraydiff <https://github.com/astrofrog/pytest-arraydiff>`__).
+ generation and comparison of data arrays produced during tests, in particular
+ in cases where the arrays are too large to conveniently hard-code them
+ in the tests (e.g. ``np.testing.assert_allclose(x, [1, 2, 3])``).
The basic idea is that you can write a test that generates a Numpy array (or
other related objects depending on the format). You can then either run the
@@ -38,21 +38,15 @@
requires `pytest <http://pytest.org>`__ and
`numpy <http://www.numpy.org>`__ to be installed.
- To install, you can do:
-
- ::
+ To install, you can do::
pip install pytest-arraydiff
- You can check that the plugin is registered with pytest by doing:
-
- ::
+ You can check that the plugin is registered with pytest by doing::
py.test --version
- which will show a list of plugins:
-
- ::
+ which will show a list of plugins::
This is pytest version 2.7.1, imported from ...
setuptools registered plugins:
@@ -63,9 +57,7 @@
To use, you simply need to mark the function where you want to compare
arrays using ``(a)pytest.mark.array_compare``, and make sure that the
- function returns a plain Numpy array:
-
- ::
+ function returns a plain Numpy array::
python
import pytest
@@ -77,9 +69,7 @@
To generate the reference data files, run the tests with the
``--arraydiff-generate-path`` option with the name of the directory
- where the generated files should be placed:
-
- ::
+ where the generated files should be placed::
py.test --arraydiff-generate-path=reference
@@ -93,9 +83,7 @@
name is configurable, see below). You can also generate the baseline
arrays directly in the right directory.
- You can then run the tests simply with:
-
- ::
+ You can then run the tests simply with::
py.test --arraydiff
@@ -161,9 +149,7 @@
end in a slash).
Finally, you can also set a custom baseline directory globally when
- running tests by running ``py.test`` with:
-
- ::
+ running tests by running ``py.test`` with::
py.test --arraydiff --arraydiff-reference-path=baseline_arrays
@@ -177,9 +163,7 @@
If the arrays produced by the tests are correct, then the test will
pass, but if they are not, the test will fail with a message similar to
- the following:
-
- ::
+ the following::
E AssertionError:
E
@@ -203,9 +187,7 @@
--------------------------------------
If you are contributing some changes and want to run the tests, first
- install the latest version of the plugin then do:
-
- ::
+ install the latest version of the plugin then do::
cd tests
py.test --arraydiff
@@ -215,10 +197,10 @@
.. |Travis Build Status| image:: https://travis-ci.org/astrofrog/pytest-arraydiff.svg?branch=master
:target: https://travis-ci.org/astrofrog/pytest-arraydiff
- .. |AppVeyor Build status| image:: https://ci.appveyor.com/api/projects/status/4hfoe954rxhgslsl/branch/master?…
- :target: https://ci.appveyor.com/project/astrofrog/pytest-arraydiff
- .. |Coveralls coverage| image:: https://coveralls.io/repos/matplotlib/pytest-arraydiff/badge.svg
- :target: https://coveralls.io/r/matplotlib/pytest-arraydiff
+ .. |AppVeyor Build status| image:: https://ci.appveyor.com/api/projects/status/0nech6qgp8jlabjp/branch/master?…
+ :target: https://ci.appveyor.com/project/astropy/pytest-arraydiff
+ .. |Coverage| image:: https://codecov.io/gh/astropy/pytest-arraydiff/branch/master/graph/badge.svg
+ :target: https://codecov.io/gh/astropy/pytest-arraydiff
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-arraydiff-0.2/pytest_arraydiff.egg-info/SOURCES.txt new/pytest-arraydiff-0.3/pytest_arraydiff.egg-info/SOURCES.txt
--- old/pytest-arraydiff-0.2/pytest_arraydiff.egg-info/SOURCES.txt 2018-01-29 11:17:54.000000000 +0100
+++ new/pytest-arraydiff-0.3/pytest_arraydiff.egg-info/SOURCES.txt 2018-12-06 05:30:04.000000000 +0100
@@ -9,6 +9,7 @@
pytest_arraydiff.egg-info/SOURCES.txt
pytest_arraydiff.egg-info/dependency_links.txt
pytest_arraydiff.egg-info/entry_points.txt
+pytest_arraydiff.egg-info/not-zip-safe
pytest_arraydiff.egg-info/requires.txt
pytest_arraydiff.egg-info/top_level.txt
tests/test_pytest_arraydiff.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-arraydiff-0.2/pytest_arraydiff.egg-info/not-zip-safe new/pytest-arraydiff-0.3/pytest_arraydiff.egg-info/not-zip-safe
--- old/pytest-arraydiff-0.2/pytest_arraydiff.egg-info/not-zip-safe 1970-01-01 01:00:00.000000000 +0100
+++ new/pytest-arraydiff-0.3/pytest_arraydiff.egg-info/not-zip-safe 2018-12-06 05:30:04.000000000 +0100
@@ -0,0 +1 @@
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-arraydiff-0.2/setup.cfg new/pytest-arraydiff-0.3/setup.cfg
--- old/pytest-arraydiff-0.2/setup.cfg 2018-01-29 11:17:54.000000000 +0100
+++ new/pytest-arraydiff-0.3/setup.cfg 2018-12-06 05:30:04.000000000 +0100
@@ -1,5 +1,4 @@
[egg_info]
tag_build =
tag_date = 0
-tag_svn_revision = 0
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-arraydiff-0.2/setup.py new/pytest-arraydiff-0.3/setup.py
--- old/pytest-arraydiff-0.2/setup.py 2018-01-29 09:47:37.000000000 +0100
+++ new/pytest-arraydiff-0.3/setup.py 2018-12-05 19:49:54.000000000 +0100
@@ -22,6 +22,7 @@
author='Thomas Robitaille',
author_email='thomas.robitaille(a)gmail.com',
entry_points={'pytest11': ['pytest_arraydiff = pytest_arraydiff.plugin']},
+ zip_safe=False,
classifiers=[
'Development Status :: 4 - Beta',
'Framework :: Pytest',
1
0
Hello community,
here is the log from the commit of package python-xmldiff for openSUSE:Factory checked in at 2019-05-06 21:17:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-xmldiff (Old)
and /work/SRC/openSUSE:Factory/.python-xmldiff.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-xmldiff"
Mon May 6 21:17:02 2019 rev:17 rq:697133 version:2.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-xmldiff/python-xmldiff.changes 2011-09-23 12:43:28.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.python-xmldiff.new.5148/python-xmldiff.changes 2019-05-06 21:17:03.337042195 +0200
@@ -1,0 +2,41 @@
+Fri Apr 12 08:11:46 UTC 2019 - Matej Cepl <mcepl(a)suse.com>
+
+- Conflict python-xmldiff (unversioned)
+
+-------------------------------------------------------------------
+Wed Apr 10 08:01:52 UTC 2019 - Jan Engelhardt <jengelh(a)inai.de>
+
+- Restore more useful description from before 2.3
+
+-------------------------------------------------------------------
+Tue Apr 9 08:12:37 UTC 2019 - pgajdos(a)suse.com
+
+- package reworked from scratch
+- version update to 2.3
+ - A complete, bottom-up, pure-python rewrit
+ - A new default output format with new actions
+ - A format intended to be parseable by anyone parsing the old format.
+ - XML with changes marked though tags and attributes
+ - Added options for faster node comparisons. The "middle" option is now
+ default, it had very few changes in matches, but is much faster.
+ - Implemented a Fast Match algorithm for even faster diffing.
+ - Speed improvements through caching
+ - Fixed a bug where MoveNode actions sometimes was in the wrong order
+ - Added an InsertComment action, as comments require different handling,
+ so it's easier to deal with them this way. You can still use DeleteNode and
+ UpdateTextIn for them with no special handling.
+ - When renaming tags the XMLFormatter will mark them with "diff:rename"
+ instead of making a new tag and deleting the old.
+ - Tags will now be moved first, and updated and renamed later, as the new
+ tag name or attributes might not be valid in the old location.
+ - Changed the substitution unicode character area to use the Private Use Area
+ in BMP(0), to support narrow Python builds
+ - Added --unique-attributes argument.
+ - A workaround for dealing with top level comments and the xml formatter
+ - Added a simple ``xmlpatch`` command and API.
+ - Multiple updates to documentation and code style
+- deleted patches
+ - xmldiff-0.6.7-clean-tmp.patch (not needed)
+ - xmldiff-0.6.7-xsldata.patch (not needed)
+
+-------------------------------------------------------------------
Old:
----
xmldiff-0.6.10.tar.gz
xmldiff-0.6.7-clean-tmp.patch
xmldiff-0.6.7-xsldata.patch
New:
----
xmldiff-2.3.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-xmldiff.spec ++++++
--- /var/tmp/diff_new_pack.LOQHzq/_old 2019-05-06 21:17:04.069044098 +0200
+++ /var/tmp/diff_new_pack.LOQHzq/_new 2019-05-06 21:17:04.073044109 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-xmldiff
#
-# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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
@@ -12,52 +12,61 @@
# 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/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
-
+%define oldpython python
+%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-xmldiff
-%define _name xmldiff
-Version: 0.6.10
-Release: 1
-License: GPL-2.0+
-Summary: Tree to tree correction between xml documents
-Url: http://www.logilab.org/projects/xmldiff/
-Group: Productivity/Publishing/XML
-Source: http://ftp.logilab.org/pub/xmldiff/%{_name}-%{version}.tar.gz
-Patch0: xmldiff-0.6.7-clean-tmp.patch
-Patch1: xmldiff-0.6.7-xsldata.patch
-BuildRequires: python-devel
-BuildRoot: %{_tmppath}/%{name}-%{version}-build
-Requires: file opensp libxslt python-xml
-%py_requires
+Version: 2.3
+Release: 0
+Summary: Tree to tree correction between XML documents
+License: MIT
+Group: Development/Languages/Python
+URL: https://github.com/Shoobx/xmldiff
+Source: https://files.pythonhosted.org/packages/source/x/xmldiff/xmldiff-%{version}…
+BuildRequires: %{python_module setuptools}
+BuildRequires: fdupes
+BuildRequires: python-rpm-macros
+Requires: python-lxml >= 3.1.0
+Requires: python-setuptools
+Requires: python-six
+Conflicts: %{oldpython}-xmldiff < %{version}
+BuildArch: noarch
+# SECTION test requirements
+BuildRequires: %{python_module lxml >= 3.1.0}
+BuildRequires: %{python_module setuptools}
+BuildRequires: %{python_module six}
+# /SECTION
+%python_subpackages
%description
XMLdiff shows the differences between two similar XML files in the same
-way 'diff' does with text files. It can also be used as a library or as
+way `diff` does with text files. It can also be used as a library or as
a command line tool and can work either with XML files or DOM trees.
The implementation is based on "Change detection in hierarchically
structured information", by S. Chawathe, A. Rajaraman, H.
Garcia-Molina, and J. Widom, Stanford University, 1996.
%prep
-%setup -q -n %{_name}-%{version}
-%patch0
-%patch1
+%setup -q -n xmldiff-%{version}
%build
-python setup.py build
+%python_build
%install
-python setup.py install --root=%{buildroot} --prefix=%{_prefix} --record-rpm %{name}.record-rpm
-rm -rf %{buildroot}%{python_sitearch}/%{_name}/test/data/
+%python_install
+%python_expand %fdupes %{buildroot}%{$python_sitelib}
-%clean
-%{?buildroot:%__rm -rf %{buildroot}}
+%check
+%python_exec setup.py test
-%files -f %{name}.record-rpm
-%defattr(-, root, root)
-%doc ChangeLog TODO README* doc/
+%files %{python_files}
+%doc CHANGES.rst README.rst README.txt
+%license LICENSE.txt
+%python3_only %{_bindir}/xmldiff
+%python3_only %{_bindir}/xmlpatch
+%{python_sitelib}/*
%changelog
++++++ xmldiff-0.6.10.tar.gz -> xmldiff-2.3.tar.gz ++++++
++++ 17881 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package perl-DateTime-Format-Mail for openSUSE:Factory checked in at 2019-05-06 21:16:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-DateTime-Format-Mail (Old)
and /work/SRC/openSUSE:Factory/.perl-DateTime-Format-Mail.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-DateTime-Format-Mail"
Mon May 6 21:16:42 2019 rev:1 rq:696903 version:0.403
Changes:
--------
New Changes file:
--- /dev/null 2019-05-02 15:18:01.516169518 +0200
+++ /work/SRC/openSUSE:Factory/.perl-DateTime-Format-Mail.new.5148/perl-DateTime-Format-Mail.changes 2019-05-06 21:16:45.916996894 +0200
@@ -0,0 +1,81 @@
+-------------------------------------------------------------------
+Mon Jul 4 12:29:25 UTC 2016 - coolo(a)suse.com
+
+- updated to 0.403
+ see /usr/share/doc/packages/perl-DateTime-Format-Mail/Changes
+
+ 0.403 2016-06-27
+
+ - Use DateTime->set_locale instead of ->set to set the locale. Using ->set may
+ actually change the local time unintentionally. Patch by Dave Rolsky. GitHub
+ PR #2.
+
+-------------------------------------------------------------------
+Tue Jul 7 08:52:33 UTC 2015 - coolo(a)suse.com
+
+- updated to 0.402
+ see /usr/share/doc/packages/perl-DateTime-Format-Mail/Changes
+
+ 0.402 2015-07-06
+
+ - included META.JSON (closes RT #105633, by ETHER)
+
+ - added contributors list (and put back SPOON as the main author)
+
+-------------------------------------------------------------------
+Thu Apr 16 20:55:30 UTC 2015 - coolo(a)suse.com
+
+- updated to 0.401
+ see /usr/share/doc/packages/perl-DateTime-Format-Mail/Changes
+
+ 0.401 2014-05-03
+
+ - Fix the tests to accomodate the new 1-digit format for days of month
+ before the tenth. Thanks to Dagfinn Ilmari Mannsåker for the patch.
+
+ - add some more sample dates to t/sample_dates
+ and run one test per sample date in t/sample.t
+
+ 0.400 2014-04-13
+
+ - New maintainer - Philippe Bruhat (BooK)
+
+ - Now depends on DateTime 0.18. RT #74580.
+
+ - Moved POD tests to the release stage.
+
+ - format_datetime() now uses 1-digit numbers for day of month < 10.
+ Dates with unrecognized timezones lead to the creation of a DateTime
+ object with a floating timezone.
+ UTC is now formatted as +0000, floating is formatted as -0000.
+ RT #94556.
+
+ - Now packaged using Dist::Zilla. Moved back to three-digit version numbers.
+
+-------------------------------------------------------------------
+Sat May 11 22:16:54 UTC 2013 - lars(a)linux-schulserver.de
+
+- specfile cleanup
+- require Module::Metadata for build: fixes build on SLE 11
+
+-------------------------------------------------------------------
+Mon Dec 20 12:24:51 UTC 2010 - vcizek(a)novell.com
+
+- separated perl_requires and the rest required
+
+-------------------------------------------------------------------
+Thu Dec 16 13:37:07 UTC 2010 - vcizek(a)novell.com
+
+- switch to %perl_requires macro
+
+-------------------------------------------------------------------
+Mon Nov 29 18:00:13 UTC 2010 - coolo(a)novell.com
+
+- called spec2changelog
+
+-------------------------------------------------------------------
+Sun Jun 8 00:00:00 UTC 2008 - gerrit.beine(a)gmx.de
+
+- first release 0.3001
+
+
New:
----
DateTime-Format-Mail-0.403.tar.gz
cpanspec.yml
perl-DateTime-Format-Mail.changes
perl-DateTime-Format-Mail.spec
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-DateTime-Format-Mail.spec ++++++
#
# spec file for package perl-DateTime-Format-Mail
#
# Copyright (c) 2016 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
# 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: perl-DateTime-Format-Mail
Version: 0.403
Release: 0
%define cpan_name DateTime-Format-Mail
Summary: Convert between DateTime and RFC2822/822 formats
License: Artistic-1.0 or GPL-1.0+
Group: Development/Libraries/Perl
Url: http://search.cpan.org/dist/DateTime-Format-Mail/
Source0: http://www.cpan.org/authors/id/B/BO/BOOK/%{cpan_name}-%{version}.tar.gz
Source1: cpanspec.yml
BuildArch: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: perl
BuildRequires: perl-macros
BuildRequires: perl(DateTime) >= 1.04
BuildRequires: perl(Params::Validate)
Requires: perl(DateTime) >= 1.04
Requires: perl(Params::Validate)
%{perl_requires}
%description
RFCs 2822 and 822 specify date formats to be used by email. This module
parses and emits such dates.
RFC2822 (April 2001) introduces a slightly different format of date than
that used by RFC822 (August 1982). The main correction is that the
preferred format is more limited, and thus easier to parse
programmatically.
Despite the ease of generating and parsing perfectly valid RFC822 and
RFC2822 people still get it wrong. So this module provides four things for
those handling mail dates:
* 1
A strict parser that will only accept RFC2822 dates, so you can see where
you're right.
* 2
A strict formatter, so you can generate the right stuff to begin with.
* 3
A _loose_ parser, so you can take the misbegotten output from other
programs and turn it into something useful. This includes various minor
errors as well as some somewhat more bizarre mistakes. The file
_t/sample_dates_ in this module's distribution should give you an idea of
what's valid, while _t/invalid.t_ should do the same for what's not. Those
regarded as invalid are just a bit *too* strange to allow.
* 4
Interoperation with the rest of the DateTime suite. These are a collection
of modules to handle dates in a modern and accurate fashion. In particular,
they make it trivial to parse, manipulate and then format dates. Shifting
timezones is a doddle, and converting between formats is a cinch.
As a future direction, I'm contemplating an even stricter parser that will
only accept dates with no obsolete elements.
%prep
%setup -q -n %{cpan_name}-%{version}
%build
%{__perl} Makefile.PL INSTALLDIRS=vendor
%{__make} %{?_smp_mflags}
%check
%{__make} test
%install
%perl_make_install
%perl_process_packlist
%perl_gen_filelist
%files -f %{name}.files
%defattr(-,root,root,755)
%doc Changes CREDITS LICENSE README
%changelog
++++++ cpanspec.yml ++++++
---
#description_paragraphs: 3
#no_testing: broken upstream
#sources:
# - source1
# - source2
#patches:
# foo.patch: -p1
# bar.patch:
#preamble: |-
# BuildRequires: gcc-c++
#post_prep: |-
# hunspell=`pkg-config --libs hunspell | sed -e 's,-l,,; s, *,,g'`
# sed -i -e "s,hunspell-X,$hunspell," t/00-prereq.t Makefile.PL
#post_install: |-
# sed on %{name}.files
#license: SUSE-NonFree
#skip_noarch: 1
#custom_build: -
#./Build build flags=%{?_smp_mflags} --myflag
1
0
Hello community,
here is the log from the commit of package perl-DateTime-Format-W3CDTF for openSUSE:Factory checked in at 2019-05-06 21:16:27
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-DateTime-Format-W3CDTF (Old)
and /work/SRC/openSUSE:Factory/.perl-DateTime-Format-W3CDTF.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-DateTime-Format-W3CDTF"
Mon May 6 21:16:27 2019 rev:1 rq:694942 version:0.07
Changes:
--------
New Changes file:
--- /dev/null 2019-05-02 15:18:01.516169518 +0200
+++ /work/SRC/openSUSE:Factory/.perl-DateTime-Format-W3CDTF.new.5148/perl-DateTime-Format-W3CDTF.changes 2019-05-06 21:16:28.724951673 +0200
@@ -0,0 +1,54 @@
+-------------------------------------------------------------------
+Sat Apr 8 05:28:40 UTC 2017 - coolo(a)suse.com
+
+- updated to 0.07
+ see /usr/share/doc/packages/perl-DateTime-Format-W3CDTF/Changes
+
+ 0.07 2017-04-07
+
+ - Added explicit "use lib '.'" for use with perl 5.26.0 (RT #120822, PR #1 from
+ James E Keenan).
+
+-------------------------------------------------------------------
+Wed Feb 9 08:26:07 UTC 2011 - vcizek(a)novell.com
+
+- update to 0.06
+
+- Fixed parsing of datetimes with sub-second precision (RT #14179, patch from
+ Andrew Turner).
+
+-------------------------------------------------------------------
+Tue Jan 11 13:22:50 UTC 2011 - vcizek(a)novell.com
+
+- update to 0.05
+ - Fixed a long-standing bug where a time zone other than UTC that had an
+ offset of 0 caused the format_datetime method to return the string "0". RT
+ #22802.
+- bzipped tarbal
+
+-------------------------------------------------------------------
+Mon Dec 20 12:22:43 UTC 2010 - vcizek(a)novell.com
+
+- separated perl_requires and the rest required
+
+-------------------------------------------------------------------
+Thu Dec 16 13:37:10 UTC 2010 - vcizek(a)novell.com
+
+- switch to %perl_requires macro
+
+-------------------------------------------------------------------
+Mon Nov 29 18:29:43 UTC 2010 - coolo(a)novell.com
+
+- remove /var/adm/perl-modules
+
+-------------------------------------------------------------------
+Mon Nov 29 18:00:13 UTC 2010 - coolo(a)novell.com
+
+- called spec2changelog
+
+-------------------------------------------------------------------
+Sun Jun 8 00:00:00 UTC 2008 - gerrit.beine(a)gmx.de
+
+- first release 0.04
+
+
New:
----
DateTime-Format-W3CDTF-0.07.tar.gz
cpanspec.yml
perl-DateTime-Format-W3CDTF.changes
perl-DateTime-Format-W3CDTF.spec
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-DateTime-Format-W3CDTF.spec ++++++
#
# spec file for package perl-DateTime-Format-W3CDTF
#
# 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
# 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: perl-DateTime-Format-W3CDTF
Version: 0.07
Release: 0
%define cpan_name DateTime-Format-W3CDTF
Summary: Parse and format W3CDTF datetime strings
License: Artistic-1.0 or GPL-1.0+
Group: Development/Libraries/Perl
Url: http://search.cpan.org/dist/DateTime-Format-W3CDTF/
Source0: https://cpan.metacpan.org/authors/id/G/GW/GWILLIAMS/%{cpan_name}-%{version}…
Source1: cpanspec.yml
BuildArch: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: perl
BuildRequires: perl-macros
BuildRequires: perl(DateTime)
Requires: perl(DateTime)
%{perl_requires}
%description
This module understands the W3CDTF date/time format, an ISO 8601 profile,
defined at http://www.w3.org/TR/NOTE-datetime. This format as the native
date format of RSS 1.0.
It can be used to parse these formats in order to create the appropriate
objects.
%prep
%setup -q -n %{cpan_name}-%{version}
%build
%{__perl} Makefile.PL INSTALLDIRS=vendor
%{__make} %{?_smp_mflags}
%check
%{__make} test
%install
%perl_make_install
%perl_process_packlist
%perl_gen_filelist
%files -f %{name}.files
%defattr(-,root,root,755)
%doc Changes examples README
%license LICENSE
%changelog
++++++ cpanspec.yml ++++++
---
#description_paragraphs: 3
#description: |-
# override description from CPAN
#summary: override summary from CPAN
#no_testing: broken upstream
#sources:
# - source1
# - source2
#patches:
# foo.patch: -p1
# bar.patch:
#preamble: |-
# BuildRequires: gcc-c++
#post_prep: |-
# hunspell=`pkg-config --libs hunspell | sed -e 's,-l,,; s, *,,g'`
# sed -i -e "s,hunspell-X,$hunspell," t/00-prereq.t Makefile.PL
#post_build: |-
# rm unused.files
#post_install: |-
# sed on %{name}.files
#license: SUSE-NonFree
#skip_noarch: 1
#custom_build: |-
#./Build build flags=%{?_smp_mflags} --myflag
#custom_test: |-
#startserver && make test
#ignore_requires: Bizarre::Module
1
0
Hello community,
here is the log from the commit of package xfsprogs for openSUSE:Factory checked in at 2019-05-06 21:14:57
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xfsprogs (Old)
and /work/SRC/openSUSE:Factory/.xfsprogs.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xfsprogs"
Mon May 6 21:14:57 2019 rev:57 rq:700875 version:5.0.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/xfsprogs/xfsprogs.changes 2019-03-08 13:29:36.814981094 +0100
+++ /work/SRC/openSUSE:Factory/.xfsprogs.new.5148/xfsprogs.changes 2019-05-06 21:14:59.080710008 +0200
@@ -1,0 +2,10 @@
+Sat May 04 07:20:03 UTC 2019 - seanlew(a)opensuse.org
+
+- Update to v5.0.0
+ * xfs_db: scan all sparse inodes when using 'frag'
+ * Fix build with newer statx headers
+ * libxfs: fix buffer & inode lifetimes
+ * misc: fix strncpy length complaints from gcc
+ * Merge libxfs from kernel 5.0
+
+-------------------------------------------------------------------
Old:
----
xfsprogs-4.20.0.tar.sign
xfsprogs-4.20.0.tar.xz
New:
----
xfsprogs-5.0.0.tar.sign
xfsprogs-5.0.0.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xfsprogs.spec ++++++
--- /var/tmp/diff_new_pack.MFb0yJ/_old 2019-05-06 21:14:59.548711278 +0200
+++ /var/tmp/diff_new_pack.MFb0yJ/_new 2019-05-06 21:14:59.548711278 +0200
@@ -26,7 +26,7 @@
%define libname libhandle1
Name: xfsprogs
-Version: 4.20.0
+Version: 5.0.0
Release: 0
Summary: Utilities for managing the XFS file system
License: GPL-2.0-or-later
++++++ xfsprogs-4.20.0.tar.xz -> xfsprogs-5.0.0.tar.xz ++++++
++++ 17069 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package golang-github-docker-libnetwork for openSUSE:Factory checked in at 2019-05-06 21:14:40
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/golang-github-docker-libnetwork (Old)
and /work/SRC/openSUSE:Factory/.golang-github-docker-libnetwork.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "golang-github-docker-libnetwork"
Mon May 6 21:14:40 2019 rev:15 rq:701148 version:0.7.0.1+gitr2726_872f0a83c98a
Changes:
--------
--- /work/SRC/openSUSE:Factory/golang-github-docker-libnetwork/golang-github-docker-libnetwork.changes 2019-02-13 09:57:32.257677080 +0100
+++ /work/SRC/openSUSE:Factory/.golang-github-docker-libnetwork.new.5148/golang-github-docker-libnetwork.changes 2019-05-06 21:14:42.236664308 +0200
@@ -1,0 +2,31 @@
+Mon May 06 18:21:12 UTC 2019 - asarai(a)suse.com
+
+- Update to version git.872f0a83c98add6cae255c8859e29532febc0039 which is
+ required for Docker v18.09.6-ce.
+ * Pick a random host port if the user does not specify a host port.
+ * Cleanup the cluster provider when the agent is closed
+ * Adding error log if peerAdd fails
+ * Adding synchronization to endpoint addition/deletion to prevent network connectivity issue
+ * Revert "Merge pull request #2286 from thaJeztah/18.09_backport_iptables_legacy"
+ * Bump Go to 1.10.7
+ * Fix possible nil pointer exception
+ * Fix gosimple
+ * account for removal of configs.HookState
+
+-------------------------------------------------------------------
+Fri May 03 13:16:44 UTC 2019 - Aleksa Sarai <asarai(a)suse.com>
+
+- Update to version git.4725f2163fb214a6312f3beae5991f838ec36326 which is
+ required for Docker v18.09.5-ce: bsc#1128376 boo#1134068
+ * Revert "Merge pull request #2286 from thaJeztah/18.09_backport_iptables_legacy"
+ * Bump Go to 1.10.7
+ * Fix possible nil pointer exception
+ * Fix gosimple
+ * account for removal of configs.HookState
+ * vndr runc 96ec217
+ * Update golint tool
+ * debian has iptables-legacy and iptables-nft now
+ * Make DSR an overlay-specific driver "option"
+ * Set east-west load balancing to use direct routing
+
+-------------------------------------------------------------------
Old:
----
libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382.tar.xz
New:
----
libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ golang-github-docker-libnetwork.spec ++++++
--- /var/tmp/diff_new_pack.2aO24r/_old 2019-05-06 21:14:42.888666078 +0200
+++ /var/tmp/diff_new_pack.2aO24r/_new 2019-05-06 21:14:42.892666088 +0200
@@ -29,14 +29,14 @@
%endif
# MANUAL: Update the git_version and git_revision
-%define git_version 2cfbf9b1f98162a55829a21cc603c76072a75382
-%define git_short 2cfbf9b1f981
+%define git_version 872f0a83c98add6cae255c8859e29532febc0039
+%define git_short 872f0a83c98a
# How to get the git_revision
# git clone https://github.com/docker/libnetwork.git libnetwork
# cd libnetwork
# git checkout $git_version
# git_revision=r$(git rev-list HEAD | wc -l)
-%define git_revision r2711
+%define git_revision r2726
%global provider github
%global provider_tld com
@@ -63,7 +63,7 @@
BuildRequires: fdupes
BuildRequires: golang-packaging
BuildRequires: xz
-BuildRequires: golang(API) = 1.10
+BuildRequires: golang(API) >= 1.10
ExcludeArch: s390
# KUBIC-SPECIFIC: This was required when upgrading from the original kubic
# packaging, when everything was renamed to -kubic. It also is
++++++ _service ++++++
--- /var/tmp/diff_new_pack.2aO24r/_old 2019-05-06 21:14:42.928666186 +0200
+++ /var/tmp/diff_new_pack.2aO24r/_new 2019-05-06 21:14:42.928666186 +0200
@@ -4,7 +4,7 @@
<param name="scm">git</param>
<param name="exclude">.git</param>
<param name="versionformat">git.%H</param>
- <param name="revision">2cfbf9b1f98162a55829a21cc603c76072a75382</param>
+ <param name="revision">872f0a83c98add6cae255c8859e29532febc0039</param>
<param name="changesgenerate">enable</param>
</service>
<service name="recompress" mode="disabled">
++++++ libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382.tar.xz -> libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/Dockerfile new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/Dockerfile
--- old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/Dockerfile 2018-12-07 16:40:35.000000000 +0100
+++ new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/Dockerfile 2019-04-23 18:19:33.000000000 +0200
@@ -1,4 +1,4 @@
-FROM golang:1.10.2 as dev
+FROM golang:1.10.7 as dev
RUN apt-get update && apt-get -y install iptables \
protobuf-compiler
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/agent.go new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/agent.go
--- old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/agent.go 2018-12-07 16:40:35.000000000 +0100
+++ new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/agent.go 2019-04-23 18:19:33.000000000 +0200
@@ -378,6 +378,9 @@
c.agent = nil
c.Unlock()
+ // when the agent is closed the cluster provider should be cleaned up
+ c.SetClusterProvider(nil)
+
if agent == nil {
return
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/default_gateway.go new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/default_gateway.go
--- old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/default_gateway.go 2018-12-07 16:40:35.000000000 +0100
+++ new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/default_gateway.go 2019-04-23 18:19:33.000000000 +0200
@@ -181,10 +181,8 @@
defer func() { <-procGwNetwork }()
n, err := c.NetworkByName(libnGWNetwork)
- if err != nil {
- if _, ok := err.(types.NotFoundError); ok {
- n, err = c.createGWNetwork()
- }
+ if _, ok := err.(types.NotFoundError); ok {
+ n, err = c.createGWNetwork()
}
return n, err
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/drivers/windows/overlay/joinleave_windows.go new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/drivers/windows/overlay/joinleave_windows.go
--- old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/drivers/windows/overlay/joinleave_windows.go 2018-12-07 16:40:35.000000000 +0100
+++ new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/drivers/windows/overlay/joinleave_windows.go 2019-04-23 18:19:33.000000000 +0200
@@ -95,7 +95,10 @@
return
}
- d.peerAdd(nid, eid, addr.IP, addr.Mask, mac, vtep, true)
+ err = d.peerAdd(nid, eid, addr.IP, addr.Mask, mac, vtep, true)
+ if err != nil {
+ logrus.Errorf("peerAdd failed (%v) for ip %s with mac %s", err, addr.IP.String(), mac.String())
+ }
}
func (d *driver) DecodeTableEntry(tablename string, key string, value []byte) (string, map[string]string) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/drivers/windows/overlay/ov_endpoint_windows.go new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/drivers/windows/overlay/ov_endpoint_windows.go
--- old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/drivers/windows/overlay/ov_endpoint_windows.go 2018-12-07 16:40:35.000000000 +0100
+++ new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/drivers/windows/overlay/ov_endpoint_windows.go 2019-04-23 18:19:33.000000000 +0200
@@ -4,6 +4,7 @@
"encoding/json"
"fmt"
"net"
+ "sync"
"github.com/Microsoft/hcsshim"
"github.com/docker/docker/pkg/system"
@@ -29,6 +30,13 @@
portMapping []types.PortBinding // Operation port bindings
}
+var (
+ //Server 2016 (RS1) does not support concurrent add/delete of endpoints. Therefore, we need
+ //to use this mutex and serialize the add/delete of endpoints on RS1.
+ endpointMu sync.Mutex
+ windowsBuild = system.GetOSVersion().Build
+)
+
func validateID(nid, eid string) error {
if nid == "" {
return fmt.Errorf("invalid network id")
@@ -77,8 +85,7 @@
if networkEndpoint != nil {
logrus.Debugf("Removing stale endpoint from HNS")
- _, err := hcsshim.HNSEndpointRequest("DELETE", networkEndpoint.profileID, "")
-
+ _, err := endpointRequest("DELETE", networkEndpoint.profileID, "")
if err != nil {
logrus.Debugf("Failed to delete stale overlay endpoint (%.7s) from hns", networkEndpoint.id)
}
@@ -101,8 +108,7 @@
if ep != nil {
logrus.Debugf("Deleting stale endpoint %s", eid)
n.deleteEndpoint(eid)
-
- _, err := hcsshim.HNSEndpointRequest("DELETE", ep.profileID, "")
+ _, err := endpointRequest("DELETE", ep.profileID, "")
if err != nil {
return err
}
@@ -165,7 +171,19 @@
return err
}
- pbPolicy, err := windows.ConvertPortBindings(epConnectivity.PortBindings)
+ ep.portMapping = epConnectivity.PortBindings
+ ep.portMapping, err = windows.AllocatePorts(n.portMapper, ep.portMapping, ep.addr.IP)
+ if err != nil {
+ return err
+ }
+
+ defer func() {
+ if err != nil {
+ windows.ReleasePorts(n.portMapper, ep.portMapping)
+ }
+ }()
+
+ pbPolicy, err := windows.ConvertPortBindings(ep.portMapping)
if err != nil {
return err
}
@@ -179,7 +197,7 @@
return err
}
- hnsresponse, err := hcsshim.HNSEndpointRequest("POST", "", string(configurationb))
+ hnsresponse, err := endpointRequest("POST", "", string(configurationb))
if err != nil {
return err
}
@@ -199,7 +217,7 @@
ep.portMapping, err = windows.ParsePortBindingPolicies(hnsresponse.Policies)
if err != nil {
- hcsshim.HNSEndpointRequest("DELETE", hnsresponse.Id, "")
+ endpointRequest("DELETE", hnsresponse.Id, "")
return err
}
@@ -223,9 +241,11 @@
return fmt.Errorf("endpoint id %q not found", eid)
}
+ windows.ReleasePorts(n.portMapper, ep.portMapping)
+
n.deleteEndpoint(eid)
- _, err := hcsshim.HNSEndpointRequest("DELETE", ep.profileID, "")
+ _, err := endpointRequest("DELETE", ep.profileID, "")
if err != nil {
return err
}
@@ -263,3 +283,14 @@
return data, nil
}
+
+func endpointRequest(method, path, request string) (*hcsshim.HNSEndpoint, error) {
+ if windowsBuild == 14393 {
+ endpointMu.Lock()
+ }
+ hnsresponse, err := hcsshim.HNSEndpointRequest(method, path, request)
+ if windowsBuild == 14393 {
+ endpointMu.Unlock()
+ }
+ return hnsresponse, err
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/drivers/windows/overlay/ov_network_windows.go new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/drivers/windows/overlay/ov_network_windows.go
--- old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/drivers/windows/overlay/ov_network_windows.go 2018-12-07 16:40:35.000000000 +0100
+++ new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/drivers/windows/overlay/ov_network_windows.go 2019-04-23 18:19:33.000000000 +0200
@@ -11,6 +11,7 @@
"github.com/Microsoft/hcsshim"
"github.com/docker/libnetwork/driverapi"
"github.com/docker/libnetwork/netlabel"
+ "github.com/docker/libnetwork/portmapper"
"github.com/docker/libnetwork/types"
"github.com/sirupsen/logrus"
)
@@ -46,6 +47,7 @@
initErr error
subnets []*subnet
secure bool
+ portMapper *portmapper.PortMapper
sync.Mutex
}
@@ -89,10 +91,11 @@
}
n := &network{
- id: id,
- driver: d,
- endpoints: endpointTable{},
- subnets: []*subnet{},
+ id: id,
+ driver: d,
+ endpoints: endpointTable{},
+ subnets: []*subnet{},
+ portMapper: portmapper.New(""),
}
genData, ok := option[netlabel.GenericData].(map[string]string)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/drivers/windows/overlay/peerdb_windows.go new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/drivers/windows/overlay/peerdb_windows.go
--- old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/drivers/windows/overlay/peerdb_windows.go 2018-12-07 16:40:35.000000000 +0100
+++ new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/drivers/windows/overlay/peerdb_windows.go 2019-04-23 18:19:33.000000000 +0200
@@ -67,8 +67,7 @@
}
n.removeEndpointWithAddress(addr)
-
- hnsresponse, err := hcsshim.HNSEndpointRequest("POST", "", string(configurationb))
+ hnsresponse, err := endpointRequest("POST", "", string(configurationb))
if err != nil {
return err
}
@@ -108,7 +107,7 @@
}
if updateDb {
- _, err := hcsshim.HNSEndpointRequest("DELETE", ep.profileID, "")
+ _, err := endpointRequest("DELETE", ep.profileID, "")
if err != nil {
return err
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/drivers/windows/port_mapping.go new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/drivers/windows/port_mapping.go
--- old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/drivers/windows/port_mapping.go 1970-01-01 01:00:00.000000000 +0100
+++ new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/drivers/windows/port_mapping.go 2019-04-23 18:19:33.000000000 +0200
@@ -0,0 +1,125 @@
+// +build windows
+
+package windows
+
+import (
+ "bytes"
+ "errors"
+ "fmt"
+ "net"
+
+ "github.com/docker/libnetwork/portmapper"
+ "github.com/docker/libnetwork/types"
+ "github.com/ishidawataru/sctp"
+ "github.com/sirupsen/logrus"
+)
+
+const (
+ maxAllocatePortAttempts = 10
+)
+
+// ErrUnsupportedAddressType is returned when the specified address type is not supported.
+type ErrUnsupportedAddressType string
+
+func (uat ErrUnsupportedAddressType) Error() string {
+ return fmt.Sprintf("unsupported address type: %s", string(uat))
+}
+
+// AllocatePorts allocates ports specified in bindings from the portMapper
+func AllocatePorts(portMapper *portmapper.PortMapper, bindings []types.PortBinding, containerIP net.IP) ([]types.PortBinding, error) {
+ bs := make([]types.PortBinding, 0, len(bindings))
+ for _, c := range bindings {
+ b := c.GetCopy()
+ if err := allocatePort(portMapper, &b, containerIP); err != nil {
+ // On allocation failure, release previously allocated ports. On cleanup error, just log a warning message
+ if cuErr := ReleasePorts(portMapper, bs); cuErr != nil {
+ logrus.Warnf("Upon allocation failure for %v, failed to clear previously allocated port bindings: %v", b, cuErr)
+ }
+ return nil, err
+ }
+ bs = append(bs, b)
+ }
+ return bs, nil
+}
+
+func allocatePort(portMapper *portmapper.PortMapper, bnd *types.PortBinding, containerIP net.IP) error {
+ var (
+ host net.Addr
+ err error
+ )
+
+ // Store the container interface address in the operational binding
+ bnd.IP = containerIP
+
+ // Adjust HostPortEnd if this is not a range.
+ if bnd.HostPortEnd == 0 {
+ bnd.HostPortEnd = bnd.HostPort
+ }
+
+ // Construct the container side transport address
+ container, err := bnd.ContainerAddr()
+ if err != nil {
+ return err
+ }
+
+ // Try up to maxAllocatePortAttempts times to get a port that's not already allocated.
+ for i := 0; i < maxAllocatePortAttempts; i++ {
+ if host, err = portMapper.MapRange(container, bnd.HostIP, int(bnd.HostPort), int(bnd.HostPortEnd), false); err == nil {
+ break
+ }
+ // There is no point in immediately retrying to map an explicitly chosen port.
+ if bnd.HostPort != 0 {
+ logrus.Warnf("Failed to allocate and map port %d-%d: %s", bnd.HostPort, bnd.HostPortEnd, err)
+ break
+ }
+ logrus.Warnf("Failed to allocate and map port: %s, retry: %d", err, i+1)
+ }
+ if err != nil {
+ return err
+ }
+
+ // Save the host port (regardless it was or not specified in the binding)
+ switch netAddr := host.(type) {
+ case *net.TCPAddr:
+ bnd.HostPort = uint16(host.(*net.TCPAddr).Port)
+ break
+ case *net.UDPAddr:
+ bnd.HostPort = uint16(host.(*net.UDPAddr).Port)
+ break
+ case *sctp.SCTPAddr:
+ bnd.HostPort = uint16(host.(*sctp.SCTPAddr).Port)
+ break
+ default:
+ // For completeness
+ return ErrUnsupportedAddressType(fmt.Sprintf("%T", netAddr))
+ }
+ //Windows does not support host port ranges.
+ bnd.HostPortEnd = bnd.HostPort
+ return nil
+}
+
+// ReleasePorts releases ports specified in bindings from the portMapper
+func ReleasePorts(portMapper *portmapper.PortMapper, bindings []types.PortBinding) error {
+ var errorBuf bytes.Buffer
+
+ // Attempt to release all port bindings, do not stop on failure
+ for _, m := range bindings {
+ if err := releasePort(portMapper, m); err != nil {
+ errorBuf.WriteString(fmt.Sprintf("\ncould not release %v because of %v", m, err))
+ }
+ }
+
+ if errorBuf.Len() != 0 {
+ return errors.New(errorBuf.String())
+ }
+ return nil
+}
+
+func releasePort(portMapper *portmapper.PortMapper, bnd types.PortBinding) error {
+ // Construct the host side transport address
+ host, err := bnd.HostAddr()
+ if err != nil {
+ return err
+ }
+ return portMapper.Unmap(host)
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/drivers/windows/windows.go new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/drivers/windows/windows.go
--- old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/drivers/windows/windows.go 2018-12-07 16:40:35.000000000 +0100
+++ new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/drivers/windows/windows.go 2019-04-23 18:19:33.000000000 +0200
@@ -25,6 +25,7 @@
"github.com/docker/libnetwork/discoverapi"
"github.com/docker/libnetwork/driverapi"
"github.com/docker/libnetwork/netlabel"
+ "github.com/docker/libnetwork/portmapper"
"github.com/docker/libnetwork/types"
"github.com/sirupsen/logrus"
)
@@ -88,11 +89,12 @@
}
type hnsNetwork struct {
- id string
- created bool
- config *networkConfiguration
- endpoints map[string]*hnsEndpoint // key: endpoint id
- driver *driver // The network's driver
+ id string
+ created bool
+ config *networkConfiguration
+ endpoints map[string]*hnsEndpoint // key: endpoint id
+ driver *driver // The network's driver
+ portMapper *portmapper.PortMapper
sync.Mutex
}
@@ -252,10 +254,11 @@
func (d *driver) createNetwork(config *networkConfiguration) error {
network := &hnsNetwork{
- id: config.ID,
- endpoints: make(map[string]*hnsEndpoint),
- config: config,
- driver: d,
+ id: config.ID,
+ endpoints: make(map[string]*hnsEndpoint),
+ config: config,
+ driver: d,
+ portMapper: portmapper.New(""),
}
d.Lock()
@@ -610,7 +613,27 @@
endpointStruct.MacAddress = strings.Replace(macAddress.String(), ":", "-", -1)
}
- endpointStruct.Policies, err = ConvertPortBindings(epConnectivity.PortBindings)
+ portMapping := epConnectivity.PortBindings
+
+ if n.config.Type == "l2bridge" || n.config.Type == "l2tunnel" {
+ ip := net.IPv4(0, 0, 0, 0)
+ if ifInfo.Address() != nil {
+ ip = ifInfo.Address().IP
+ }
+
+ portMapping, err = AllocatePorts(n.portMapper, portMapping, ip)
+ if err != nil {
+ return err
+ }
+
+ defer func() {
+ if err != nil {
+ ReleasePorts(n.portMapper, portMapping)
+ }
+ }()
+ }
+
+ endpointStruct.Policies, err = ConvertPortBindings(portMapping)
if err != nil {
return err
}
@@ -721,6 +744,10 @@
return err
}
+ if n.config.Type == "l2bridge" || n.config.Type == "l2tunnel" {
+ ReleasePorts(n.portMapper, ep.portMapping)
+ }
+
n.Lock()
delete(n.endpoints, eid)
n.Unlock()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/iptables/iptables.go new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/iptables/iptables.go
--- old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/iptables/iptables.go 2018-12-07 16:40:35.000000000 +0100
+++ new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/iptables/iptables.go 2019-04-23 18:19:33.000000000 +0200
@@ -87,16 +87,11 @@
}
func detectIptables() {
- path, err := exec.LookPath("iptables-legacy") // debian has iptables-legacy and iptables-nft now
+ path, err := exec.LookPath("iptables")
if err != nil {
- path, err = exec.LookPath("iptables")
- if err != nil {
- return
- }
+ return
}
-
iptablesPath = path
-
supportsXlock = exec.Command(iptablesPath, "--wait", "-L", "-n").Run() == nil
mj, mn, mc, err := GetVersion()
if err != nil {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/network.go new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/network.go
--- old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/network.go 2018-12-07 16:40:35.000000000 +0100
+++ new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/network.go 2019-04-23 18:19:33.000000000 +0200
@@ -396,11 +396,9 @@
driverOptions map[string]string
opts interface{}
)
- switch data.(type) {
- case map[string]interface{}:
- opts = data.(map[string]interface{})
- case map[string]string:
- opts = data.(map[string]string)
+ switch t := data.(type) {
+ case map[string]interface{}, map[string]string:
+ opts = t
}
ba, err := json.Marshal(opts)
if err != nil {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/networkdb/cluster.go new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/networkdb/cluster.go
--- old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/networkdb/cluster.go 2018-12-07 16:40:35.000000000 +0100
+++ new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/networkdb/cluster.go 2019-04-23 18:19:33.000000000 +0200
@@ -288,7 +288,12 @@
return
}
- myself, _ := nDB.nodes[nDB.config.NodeID]
+ myself, ok := nDB.nodes[nDB.config.NodeID]
+ if !ok {
+ nDB.RUnlock()
+ logrus.Warnf("rejoinClusterBootstrap unable to find local node info using ID:%v", nDB.config.NodeID)
+ return
+ }
bootStrapIPs := make([]string, 0, len(nDB.bootStrapIP))
for _, bootIP := range nDB.bootStrapIP {
// botostrap IPs are usually IP:port from the Join
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/portallocator/portallocator_windows.go new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/portallocator/portallocator_windows.go
--- old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/portallocator/portallocator_windows.go 1970-01-01 01:00:00.000000000 +0100
+++ new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/portallocator/portallocator_windows.go 2019-04-23 18:19:33.000000000 +0200
@@ -0,0 +1,10 @@
+package portallocator
+
+const (
+ StartPortRange = 60000
+ EndPortRange = 65000
+)
+
+func getDynamicPortRange() (start int, end int, err error) {
+ return StartPortRange, EndPortRange, nil
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/portmapper/mapper.go new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/portmapper/mapper.go
--- old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/portmapper/mapper.go 2018-12-07 16:40:35.000000000 +0100
+++ new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/portmapper/mapper.go 2019-04-23 18:19:33.000000000 +0200
@@ -4,9 +4,7 @@
"errors"
"fmt"
"net"
- "sync"
- "github.com/docker/libnetwork/iptables"
"github.com/docker/libnetwork/portallocator"
"github.com/ishidawataru/sctp"
"github.com/sirupsen/logrus"
@@ -32,20 +30,6 @@
ErrSCTPAddrNoIP = errors.New("sctp address does not contain any IP address")
)
-// PortMapper manages the network address translation
-type PortMapper struct {
- chain *iptables.ChainInfo
- bridgeName string
-
- // udp:ip:port
- currentMappings map[string]*mapping
- lock sync.Mutex
-
- proxyPath string
-
- Allocator *portallocator.PortAllocator
-}
-
// New returns a new instance of PortMapper
func New(proxyPath string) *PortMapper {
return NewWithPortAllocator(portallocator.Get(), proxyPath)
@@ -60,12 +44,6 @@
}
}
-// SetIptablesChain sets the specified chain into portmapper
-func (pm *PortMapper) SetIptablesChain(c *iptables.ChainInfo, bridgeName string) {
- pm.chain = c
- pm.bridgeName = bridgeName
-}
-
// Map maps the specified container transport address to the host's network address and transport port
func (pm *PortMapper) Map(container net.Addr, hostIP net.IP, hostPort int, useProxy bool) (host net.Addr, err error) {
return pm.MapRange(container, hostIP, hostPort, hostPort, useProxy)
@@ -174,7 +152,7 @@
containerIP, containerPort := getIPAndPort(m.container)
if hostIP.To4() != nil {
- if err := pm.forward(iptables.Append, m.proto, hostIP, allocatedHostPort, containerIP.String(), containerPort); err != nil {
+ if err := pm.AppendForwardingTableEntry(m.proto, hostIP, allocatedHostPort, containerIP.String(), containerPort); err != nil {
return nil, err
}
}
@@ -183,7 +161,7 @@
// need to undo the iptables rules before we return
m.userlandProxy.Stop()
if hostIP.To4() != nil {
- pm.forward(iptables.Delete, m.proto, hostIP, allocatedHostPort, containerIP.String(), containerPort)
+ pm.DeleteForwardingTableEntry(m.proto, hostIP, allocatedHostPort, containerIP.String(), containerPort)
if err := pm.Allocator.ReleasePort(hostIP, m.proto, allocatedHostPort); err != nil {
return err
}
@@ -222,7 +200,7 @@
containerIP, containerPort := getIPAndPort(data.container)
hostIP, hostPort := getIPAndPort(data.host)
- if err := pm.forward(iptables.Delete, data.proto, hostIP, hostPort, containerIP.String(), containerPort); err != nil {
+ if err := pm.DeleteForwardingTableEntry(data.proto, hostIP, hostPort, containerIP.String(), containerPort); err != nil {
logrus.Errorf("Error on iptables delete: %s", err)
}
@@ -248,7 +226,7 @@
for _, data := range pm.currentMappings {
containerIP, containerPort := getIPAndPort(data.container)
hostIP, hostPort := getIPAndPort(data.host)
- if err := pm.forward(iptables.Append, data.proto, hostIP, hostPort, containerIP.String(), containerPort); err != nil {
+ if err := pm.AppendForwardingTableEntry(data.proto, hostIP, hostPort, containerIP.String(), containerPort); err != nil {
logrus.Errorf("Error on iptables add: %s", err)
}
}
@@ -285,10 +263,3 @@
}
return nil, 0
}
-
-func (pm *PortMapper) forward(action iptables.Action, proto string, sourceIP net.IP, sourcePort int, containerIP string, containerPort int) error {
- if pm.chain == nil {
- return nil
- }
- return pm.chain.Forward(action, sourceIP, sourcePort, proto, containerIP, containerPort, pm.bridgeName)
-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/portmapper/mapper_linux.go new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/portmapper/mapper_linux.go
--- old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/portmapper/mapper_linux.go 1970-01-01 01:00:00.000000000 +0100
+++ new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/portmapper/mapper_linux.go 2019-04-23 18:19:33.000000000 +0200
@@ -0,0 +1,46 @@
+package portmapper
+
+import (
+ "net"
+ "sync"
+
+ "github.com/docker/libnetwork/iptables"
+ "github.com/docker/libnetwork/portallocator"
+)
+
+// PortMapper manages the network address translation
+type PortMapper struct {
+ bridgeName string
+
+ // udp:ip:port
+ currentMappings map[string]*mapping
+ lock sync.Mutex
+
+ proxyPath string
+
+ Allocator *portallocator.PortAllocator
+ chain *iptables.ChainInfo
+}
+
+// SetIptablesChain sets the specified chain into portmapper
+func (pm *PortMapper) SetIptablesChain(c *iptables.ChainInfo, bridgeName string) {
+ pm.chain = c
+ pm.bridgeName = bridgeName
+}
+
+// AppendForwardingTableEntry adds a port mapping to the forwarding table
+func (pm *PortMapper) AppendForwardingTableEntry(proto string, sourceIP net.IP, sourcePort int, containerIP string, containerPort int) error {
+ return pm.forward(iptables.Append, proto, sourceIP, sourcePort, containerIP, containerPort)
+}
+
+// DeleteForwardingTableEntry removes a port mapping from the forwarding table
+func (pm *PortMapper) DeleteForwardingTableEntry(proto string, sourceIP net.IP, sourcePort int, containerIP string, containerPort int) error {
+ return pm.forward(iptables.Delete, proto, sourceIP, sourcePort, containerIP, containerPort)
+}
+
+func (pm *PortMapper) forward(action iptables.Action, proto string, sourceIP net.IP, sourcePort int, containerIP string, containerPort int) error {
+ if pm.chain == nil {
+ return nil
+ }
+ return pm.chain.Forward(action, sourceIP, sourcePort, proto, containerIP, containerPort, pm.bridgeName)
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/portmapper/mapper_windows.go new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/portmapper/mapper_windows.go
--- old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/portmapper/mapper_windows.go 1970-01-01 01:00:00.000000000 +0100
+++ new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/portmapper/mapper_windows.go 2019-04-23 18:19:33.000000000 +0200
@@ -0,0 +1,31 @@
+package portmapper
+
+import (
+ "net"
+ "sync"
+
+ "github.com/docker/libnetwork/portallocator"
+)
+
+// PortMapper manages the network address translation
+type PortMapper struct {
+ bridgeName string
+
+ // udp:ip:port
+ currentMappings map[string]*mapping
+ lock sync.Mutex
+
+ proxyPath string
+
+ Allocator *portallocator.PortAllocator
+}
+
+// AppendForwardingTableEntry adds a port mapping to the forwarding table
+func (pm *PortMapper) AppendForwardingTableEntry(proto string, sourceIP net.IP, sourcePort int, containerIP string, containerPort int) error {
+ return nil
+}
+
+// DeleteForwardingTableEntry removes a port mapping from the forwarding table
+func (pm *PortMapper) DeleteForwardingTableEntry(proto string, sourceIP net.IP, sourcePort int, containerIP string, containerPort int) error {
+ return nil
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/portmapper/proxy_windows.go new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/portmapper/proxy_windows.go
--- old/libnetwork-git.2cfbf9b1f98162a55829a21cc603c76072a75382/portmapper/proxy_windows.go 1970-01-01 01:00:00.000000000 +0100
+++ new/libnetwork-git.872f0a83c98add6cae255c8859e29532febc0039/portmapper/proxy_windows.go 2019-04-23 18:19:33.000000000 +0200
@@ -0,0 +1,10 @@
+package portmapper
+
+import (
+ "errors"
+ "net"
+)
+
+func newProxyCommand(proto string, hostIP net.IP, hostPort int, containerIP net.IP, containerPort int, proxyPath string) (userlandProxy, error) {
+ return nil, errors.New("proxy is unsupported on windows")
+}
1
0
Hello community,
here is the log from the commit of package docker for openSUSE:Factory checked in at 2019-05-06 21:14:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/docker (Old)
and /work/SRC/openSUSE:Factory/.docker.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "docker"
Mon May 6 21:14:31 2019 rev:89 rq:701147 version:18.09.6_ce
Changes:
--------
--- /work/SRC/openSUSE:Factory/docker/docker.changes 2019-03-26 22:28:11.693766999 +0100
+++ /work/SRC/openSUSE:Factory/.docker.new.5148/docker.changes 2019-05-06 21:14:36.256648084 +0200
@@ -1,0 +2,26 @@
+Mon May 6 18:25:14 UTC 2019 - Aleksa Sarai <asarai(a)suse.com>
+
+- Update to Docker 18.09.6-ce see upstream changelog in the packaged
+ /usr/share/doc/packages/docker/CHANGELOG.md.
+- Rebase patches:
+ * bsc1128746-0001-integration-cli-don-t-build-test-images-if-they-alre.patch
+
+-------------------------------------------------------------------
+Fri May 3 14:02:46 UTC 2019 - Aleksa Sarai <asarai(a)suse.com>
+
+- Update to Docker 18.09.5-ce see upstream changelog in the packaged
+ /usr/share/doc/packages/docker/CHANGELOG.md. bsc#1128376 boo#1134068
+- Rebase patches:
+ * bsc1001161-0001-oci-include-the-domainname-in-kernel.domainname.patch
+ * bsc1001161-0002-cli-add-a-separate-domainname-flag.patch
+ * bsc1047218-0001-man-obey-SOURCE_DATE_EPOCH-when-generating-man-pages.patch
+ * bsc1128746-0001-integration-cli-don-t-build-test-images-if-they-alre.patch
+ * packaging-0001-revert-Remove-docker-prefix-for-containerd-and-runc-.patch
+ * private-registry-0001-Add-private-registry-mirror-support.patch
+ * secrets-0001-daemon-allow-directory-creation-in-run-secrets.patch
+ * secrets-0002-SUSE-implement-SUSE-container-secrets.patch
+- Updated patch name:
+ + bsc1073877-0001-apparmor-clobber-docker-default-profile-on-start.patch
+ - bsc1073877-0002-apparmor-clobber-docker-default-profile-on-start.patch
+
+-------------------------------------------------------------------
Old:
----
bsc1073877-0002-apparmor-clobber-docker-default-profile-on-start.patch
docker-18.09.3_ce.774a1f4eee66.tar.xz
New:
----
bsc1073877-0001-apparmor-clobber-docker-default-profile-on-start.patch
docker-18.09.6_ce_481bc7715621.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ docker.spec ++++++
--- /var/tmp/diff_new_pack.43CHjN/_old 2019-05-06 21:14:37.040650211 +0200
+++ /var/tmp/diff_new_pack.43CHjN/_new 2019-05-06 21:14:37.040650211 +0200
@@ -42,24 +42,24 @@
# helpfully injects into our build environment from the changelog). If you want
# to generate a new git_commit_epoch, use this:
# $ date --date="$(git show --format=fuller --date=iso $COMMIT_ID | grep -oP '(?<=^CommitDate: ).*')" '+%s'
-%define git_version 774a1f4eee66
-%define git_commit_epoch 1551333049
+%define git_version 481bc7715621
+%define git_commit_epoch 1556935084
# These are the git commits required. We verify them against the source to make
# sure we didn't miss anything important when doing upgrades.
-%define required_containerd e6b3f5632f50dbc4e9cb6288d911bf4f5e95b18e
-%define required_dockerrunc 6635b4f0c6af3810594d2770f662f34ddc15b40d
-%define required_libnetwork 2cfbf9b1f98162a55829a21cc603c76072a75382
+%define required_containerd bb71b10fd8f58240ca47fbb579b9d1028eea7c84
+%define required_dockerrunc 2b18fe1d885ee5083ef9f0838fee39b62d653e30
+%define required_libnetwork 872f0a83c98add6cae255c8859e29532febc0039
Name: %{realname}%{name_suffix}
-Version: 18.09.3_ce
+Version: 18.09.6_ce
Release: 0
-Summary: The Linux container runtime
+Summary: The Moby-project Linux container runtime
License: Apache-2.0
Group: System/Management
Url: http://www.docker.io
# TODO(VR): check those SOURCE files below
-Source: %{realname}-%{version}.%{git_version}.tar.xz
+Source: %{realname}-%{version}_%{git_version}.tar.xz
Source1: docker.service
# bsc#1086185 -- but we only apply this on Kubic.
Source2: docker-kubic-service.conf
@@ -78,7 +78,7 @@
Patch200: secrets-0001-daemon-allow-directory-creation-in-run-secrets.patch
Patch201: secrets-0002-SUSE-implement-SUSE-container-secrets.patch
# SUSE-BACKPORT: Backport of https://github.com/docker/docker/pull/37353. bsc#1099277
-Patch401: bsc1073877-0002-apparmor-clobber-docker-default-profile-on-start.patch
+Patch401: bsc1073877-0001-apparmor-clobber-docker-default-profile-on-start.patch
# SUSE-BACKPORT: Backport of https://github.com/docker/cli/pull/1306. boo#1047218
Patch402: bsc1047218-0001-man-obey-SOURCE_DATE_EPOCH-when-generating-man-pages.patch
# SUSE-ISSUE: Revert of https://github.com/docker/docker/pull/37907.
@@ -256,7 +256,7 @@
%endif
%prep
-%setup -q -n %{realname}-%{version}.%{git_version}
+%setup -q -n %{realname}-%{version}_%{git_version}
%if 0%{?is_opensuse}
# nothing
%else
++++++ _service ++++++
--- /var/tmp/diff_new_pack.43CHjN/_old 2019-05-06 21:14:37.096650363 +0200
+++ /var/tmp/diff_new_pack.43CHjN/_new 2019-05-06 21:14:37.096650363 +0200
@@ -3,8 +3,8 @@
<param name="url">https://github.com/docker/docker-ce.git</param>
<param name="scm">git</param>
<param name="exclude">.git</param>
- <param name="versionformat">18.09.3_ce.%h</param>
- <param name="revision">v18.09.3</param>
+ <param name="versionformat">18.09.6_ce_%h</param>
+ <param name="revision">v18.09.6</param>
<param name="filename">docker</param>
</service>
<service name="recompress" mode="disabled">
++++++ bsc1001161-0001-oci-include-the-domainname-in-kernel.domainname.patch ++++++
--- /var/tmp/diff_new_pack.43CHjN/_old 2019-05-06 21:14:37.100650374 +0200
+++ /var/tmp/diff_new_pack.43CHjN/_new 2019-05-06 21:14:37.104650385 +0200
@@ -1,4 +1,4 @@
-From 244ae6114d89a495f1f2b4cf98eb5979fe1381b0 Mon Sep 17 00:00:00 2001
+From a3e63ddd20b7f52ff5e81bdb1beb867d28a1c9c8 Mon Sep 17 00:00:00 2001
From: Aleksa Sarai <asarai(a)suse.de>
Date: Sun, 17 Jun 2018 17:05:54 +1000
Subject: [PATCH 1/2] oci: include the domainname in "kernel.domainname"
@@ -62,5 +62,5 @@
p := s.Linux.CgroupsPath
if useSystemd {
--
-2.19.2
+2.21.0
++++++ bsc1001161-0002-cli-add-a-separate-domainname-flag.patch ++++++
--- /var/tmp/diff_new_pack.43CHjN/_old 2019-05-06 21:14:37.108650396 +0200
+++ /var/tmp/diff_new_pack.43CHjN/_new 2019-05-06 21:14:37.108650396 +0200
@@ -1,4 +1,4 @@
-From 975d8efceb479c3d0994814cc5d488ac33d0d2d6 Mon Sep 17 00:00:00 2001
+From 1b4f9787461d00dceea94d51af8db80f0b6aa906 Mon Sep 17 00:00:00 2001
From: Aleksa Sarai <asarai(a)suse.de>
Date: Mon, 18 Jun 2018 21:58:23 +1000
Subject: [PATCH 2/2] cli: add a separate --domainname flag
@@ -19,14 +19,14 @@
---
components/cli/cli/command/container/opts.go | 3 ++
.../cli/cli/command/container/opts_test.go | 31 ++++++++++++++++---
- components/cli/contrib/completion/bash/docker | 5 +--
+ components/cli/contrib/completion/bash/docker | 1 +
components/cli/contrib/completion/zsh/_docker | 1 +
.../cli/docs/reference/commandline/create.md | 1 +
.../cli/docs/reference/commandline/run.md | 1 +
.../reference/commandline/service_create.md | 2 +-
components/cli/docs/reference/run.md | 6 ++--
components/cli/man/docker-run.1.md | 7 +++++
- 9 files changed, 46 insertions(+), 11 deletions(-)
+ 9 files changed, 44 insertions(+), 9 deletions(-)
diff --git a/components/cli/cli/command/container/opts.go b/components/cli/cli/command/container/opts.go
index 97906b672252..7cd9ce998c8b 100644
@@ -102,21 +102,10 @@
}
diff --git a/components/cli/contrib/completion/bash/docker b/components/cli/contrib/completion/bash/docker
-index 44ac8f3e0ed9..c532f5142c3d 100644
+index 92d57408617e..a0d4878ee311 100644
--- a/components/cli/contrib/completion/bash/docker
+++ b/components/cli/contrib/completion/bash/docker
-@@ -5,8 +5,8 @@
- # - SC2016: Expressions don't expand in single quotes, use double quotes for that.
- # - SC2119: Use foo "$@" if function's $1 should mean script's $1.
- # - SC2155: Declare and assign separately to avoid masking return values.
--#
--# You can find more details for each warning at the following page:
-+#
-+# You can find more details for each warning at the following page:
- # https://github.com/koalaman/shellcheck/wiki/<SCXXXX>
- #
- # bash completion file for core docker commands
-@@ -1785,6 +1785,7 @@ _docker_container_run_and_create() {
+@@ -1809,6 +1809,7 @@ _docker_container_run_and_create() {
--dns
--dns-option
--dns-search
@@ -149,7 +138,7 @@
-e, --env value Set environment variables (default [])
--env-file value Read in a file of environment variables (default [])
diff --git a/components/cli/docs/reference/commandline/run.md b/components/cli/docs/reference/commandline/run.md
-index 08b9f18d68ac..f448e1acf89b 100644
+index 6a2630bd1978..a4721e4a7761 100644
--- a/components/cli/docs/reference/commandline/run.md
+++ b/components/cli/docs/reference/commandline/run.md
@@ -57,6 +57,7 @@ Options:
@@ -161,7 +150,7 @@
-e, --env value Set environment variables (default [])
--env-file value Read in a file of environment variables (default [])
diff --git a/components/cli/docs/reference/commandline/service_create.md b/components/cli/docs/reference/commandline/service_create.md
-index 8fdb5297a102..c55c77b52d77 100644
+index bc68128d0cf9..b395a0bda064 100644
--- a/components/cli/docs/reference/commandline/service_create.md
+++ b/components/cli/docs/reference/commandline/service_create.md
@@ -755,7 +755,7 @@ The swarm extends my-network to each node running the service.
@@ -223,5 +212,5 @@
Set environment variables
--
-2.19.2
+2.21.0
++++++ bsc1047218-0001-man-obey-SOURCE_DATE_EPOCH-when-generating-man-pages.patch ++++++
--- /var/tmp/diff_new_pack.43CHjN/_old 2019-05-06 21:14:37.116650417 +0200
+++ /var/tmp/diff_new_pack.43CHjN/_new 2019-05-06 21:14:37.116650417 +0200
@@ -1,4 +1,4 @@
-From 0a2ba19d51fef679d2a695fd14c30facd5f901f1 Mon Sep 17 00:00:00 2001
+From 64f1dfcbe4313bccacbe603dcb444da82d9136d7 Mon Sep 17 00:00:00 2001
From: Aleksa Sarai <asarai(a)suse.de>
Date: Thu, 23 Aug 2018 19:53:55 +1000
Subject: [PATCH] man: obey SOURCE_DATE_EPOCH when generating man pages
@@ -54,5 +54,5 @@
dockerCli := command.NewDockerCli(stdin, stdout, stderr, false, nil)
cmd := &cobra.Command{Use: "docker"}
--
-2.19.1
+2.21.0
++++++ bsc1073877-0002-apparmor-clobber-docker-default-profile-on-start.patch -> bsc1073877-0001-apparmor-clobber-docker-default-profile-on-start.patch ++++++
--- /work/SRC/openSUSE:Factory/docker/bsc1073877-0002-apparmor-clobber-docker-default-profile-on-start.patch 2018-12-05 09:39:13.620978686 +0100
+++ /work/SRC/openSUSE:Factory/.docker.new.5148/bsc1073877-0001-apparmor-clobber-docker-default-profile-on-start.patch 2019-05-06 21:14:35.984647346 +0200
@@ -1,7 +1,7 @@
-From 04f594765577163a26f24d0fe3fc7a2283f1e018 Mon Sep 17 00:00:00 2001
+From 66a84fc12ea9c9a4a9805550b3cd2055862ef1c6 Mon Sep 17 00:00:00 2001
From: Aleksa Sarai <asarai(a)suse.de>
Date: Fri, 29 Jun 2018 17:59:30 +1000
-Subject: [PATCH 2/2] apparmor: clobber docker-default profile on start
+Subject: [PATCH] apparmor: clobber docker-default profile on start
In the process of making docker-default reloading far less expensive,
567ef8e7858c ("daemon: switch to 'ensure' workflow for AppArmor
@@ -83,5 +83,5 @@
}
--
-2.19.1
+2.21.0
++++++ bsc1128746-0001-integration-cli-don-t-build-test-images-if-they-alre.patch ++++++
--- /var/tmp/diff_new_pack.43CHjN/_old 2019-05-06 21:14:37.128650450 +0200
+++ /var/tmp/diff_new_pack.43CHjN/_new 2019-05-06 21:14:37.128650450 +0200
@@ -1,4 +1,4 @@
-From 87416bfab7420bb5d0b18269909eb71dcb8632c6 Mon Sep 17 00:00:00 2001
+From c2e035cbcb9a9fb7f89f729bef5b3354891fcdad Mon Sep 17 00:00:00 2001
From: Aleksa Sarai <asarai(a)suse.de>
Date: Tue, 12 Mar 2019 18:37:31 +1100
Subject: [PATCH] integration-cli: don't build -test images if they already
@@ -24,7 +24,7 @@
2 files changed, 35 insertions(+), 9 deletions(-)
diff --git a/components/engine/integration-cli/fixtures_linux_daemon_test.go b/components/engine/integration-cli/fixtures_linux_daemon_test.go
-index 2387a9ebee2b..0a770a76a2a9 100644
+index 5c874ec14b0c..ab152f4a9988 100644
--- a/components/engine/integration-cli/fixtures_linux_daemon_test.go
+++ b/components/engine/integration-cli/fixtures_linux_daemon_test.go
@@ -8,7 +8,6 @@ import (
@@ -33,8 +33,8 @@
"strings"
- "sync"
- "github.com/docker/docker/integration-cli/checker"
"github.com/docker/docker/internal/test/fixtures/load"
+ "github.com/go-check/check"
@@ -24,17 +23,13 @@ type logT interface {
Logf(string, ...interface{})
}
@@ -73,7 +73,7 @@
ensureNNPTestBuild(c)
return
diff --git a/components/engine/internal/test/environment/environment.go b/components/engine/internal/test/environment/environment.go
-index 74c8e2ce0ad7..e1c8a49ea8cb 100644
+index 5538d2097e9b..763c08ba4845 100644
--- a/components/engine/internal/test/environment/environment.go
+++ b/components/engine/internal/test/environment/environment.go
@@ -8,9 +8,12 @@ import (
@@ -89,8 +89,8 @@
)
// Execution contains information about the current test execution and daemon
-@@ -145,6 +148,26 @@ func (e *Execution) APIClient() client.APIClient {
- return e.client
+@@ -151,6 +154,26 @@ func (e *Execution) IsUserNamespace() bool {
+ return root != ""
}
+// HasExistingImage checks whether there is an image with the given reference.
++++++ packaging-0001-revert-Remove-docker-prefix-for-containerd-and-runc-.patch ++++++
--- /var/tmp/diff_new_pack.43CHjN/_old 2019-05-06 21:14:37.184650602 +0200
+++ /var/tmp/diff_new_pack.43CHjN/_new 2019-05-06 21:14:37.184650602 +0200
@@ -1,4 +1,4 @@
-From 9236191a98a0e9b8aa4ac7da4d4b1c0c196344e2 Mon Sep 17 00:00:00 2001
+From 6d022d4e08225c2fda686fc0d5febecee2efa864 Mon Sep 17 00:00:00 2001
From: Aleksa Sarai <asarai(a)suse.de>
Date: Thu, 29 Nov 2018 20:53:16 +1100
Subject: [PATCH] revert "Remove 'docker-' prefix for containerd and runc
@@ -21,10 +21,10 @@
7 files changed, 25 insertions(+), 35 deletions(-)
diff --git a/components/engine/api/swagger.yaml b/components/engine/api/swagger.yaml
-index f58a64f29ea3..d275f2ff49eb 100644
+index ca9d29e021de..082e5783ff1f 100644
--- a/components/engine/api/swagger.yaml
+++ b/components/engine/api/swagger.yaml
-@@ -3852,10 +3852,10 @@ definitions:
+@@ -3866,10 +3866,10 @@ definitions:
$ref: "#/definitions/Runtime"
default:
runc:
@@ -38,10 +38,10 @@
path: "/go/bin/runc"
custom:
diff --git a/components/engine/builder/builder-next/executor_unix.go b/components/engine/builder/builder-next/executor_unix.go
-index b3ea33c05c71..94d8bb766045 100644
+index 3a11f8588144..ce4d2d937f9f 100644
--- a/components/engine/builder/builder-next/executor_unix.go
+++ b/components/engine/builder/builder-next/executor_unix.go
-@@ -27,7 +27,7 @@ func newExecutor(root, cgroupParent string, net libnetwork.NetworkController) (e
+@@ -28,7 +28,7 @@ func newExecutor(root, cgroupParent string, net libnetwork.NetworkController) (e
}
return runcexecutor.New(runcexecutor.Opt{
Root: filepath.Join(root, "executor"),
@@ -111,7 +111,7 @@
- return err == nil
-}
diff --git a/components/engine/daemon/daemon_unix.go b/components/engine/daemon/daemon_unix.go
-index b69eede21c44..77adba94a468 100644
+index 5234201c828f..c40d11bc85c2 100644
--- a/components/engine/daemon/daemon_unix.go
+++ b/components/engine/daemon/daemon_unix.go
@@ -54,11 +54,11 @@ import (
@@ -138,7 +138,7 @@
type containerGetter interface {
diff --git a/components/engine/libcontainerd/supervisor/remote_daemon.go b/components/engine/libcontainerd/supervisor/remote_daemon.go
-index 095300f753e9..1dcfbe176b0d 100644
+index eb9a2bdd8198..309f50f26bb2 100644
--- a/components/engine/libcontainerd/supervisor/remote_daemon.go
+++ b/components/engine/libcontainerd/supervisor/remote_daemon.go
@@ -27,8 +27,8 @@ const (
@@ -183,5 +183,5 @@
func (r *remote) setDefaults() {
--
-2.19.2
+2.21.0
++++++ private-registry-0001-Add-private-registry-mirror-support.patch ++++++
--- /var/tmp/diff_new_pack.43CHjN/_old 2019-05-06 21:14:37.188650613 +0200
+++ /var/tmp/diff_new_pack.43CHjN/_new 2019-05-06 21:14:37.188650613 +0200
@@ -1,4 +1,4 @@
-From a2d285ef5de9537fe2dbf14c4671625aa3035b98 Mon Sep 17 00:00:00 2001
+From 2a00f998e1e081a9f72f0ba81403dceea252c6a1 Mon Sep 17 00:00:00 2001
From: Valentin Rothberg <vrothberg(a)suse.com>
Date: Mon, 2 Jul 2018 13:37:34 +0200
Subject: [PATCH] Add private-registry mirror support
@@ -1160,5 +1160,5 @@
endpoints = []APIEndpoint{
--
-2.19.1
+2.21.0
++++++ secrets-0001-daemon-allow-directory-creation-in-run-secrets.patch ++++++
--- /var/tmp/diff_new_pack.43CHjN/_old 2019-05-06 21:14:37.196650634 +0200
+++ /var/tmp/diff_new_pack.43CHjN/_new 2019-05-06 21:14:37.196650634 +0200
@@ -1,4 +1,4 @@
-From 4eba91df3257644105ef344949705651507eb2bd Mon Sep 17 00:00:00 2001
+From 6603582112f42cd00b84d62a5412f2380e55d7e3 Mon Sep 17 00:00:00 2001
From: Aleksa Sarai <asarai(a)suse.de>
Date: Wed, 8 Mar 2017 12:41:54 +1100
Subject: [PATCH 1/2] daemon: allow directory creation in /run/secrets
@@ -14,7 +14,7 @@
1 file changed, 21 insertions(+), 3 deletions(-)
diff --git a/components/engine/daemon/container_operations_unix.go b/components/engine/daemon/container_operations_unix.go
-index 9953c7f3fddc..e8f6784ca19a 100644
+index c0aab7234269..8d8b13d26cff 100644
--- a/components/engine/daemon/container_operations_unix.go
+++ b/components/engine/daemon/container_operations_unix.go
@@ -3,6 +3,7 @@
@@ -70,5 +70,5 @@
return errors.Wrap(err, "error setting ownership for secret")
}
--
-2.19.2
+2.21.0
++++++ secrets-0002-SUSE-implement-SUSE-container-secrets.patch ++++++
--- /var/tmp/diff_new_pack.43CHjN/_old 2019-05-06 21:14:37.200650645 +0200
+++ /var/tmp/diff_new_pack.43CHjN/_new 2019-05-06 21:14:37.204650656 +0200
@@ -1,4 +1,4 @@
-From 229a891b45b996a2cd10f5a71541d124e884556e Mon Sep 17 00:00:00 2001
+From 3eabc382912eeb475013b5514412968dfa300d63 Mon Sep 17 00:00:00 2001
From: Aleksa Sarai <asarai(a)suse.de>
Date: Wed, 8 Mar 2017 11:43:29 +1100
Subject: [PATCH 2/2] SUSE: implement SUSE container secrets
@@ -19,7 +19,7 @@
create mode 100644 components/engine/daemon/suse_secrets.go
diff --git a/components/engine/daemon/start.go b/components/engine/daemon/start.go
-index c00bd9ceb22b..aa705888df39 100644
+index e2265a4faeca..31b60e5621c6 100644
--- a/components/engine/daemon/start.go
+++ b/components/engine/daemon/start.go
@@ -151,6 +151,11 @@ func (daemon *Daemon) containerStart(container *container.Container, checkpoint
@@ -437,5 +437,5 @@
+ return nil
+}
--
-2.19.2
+2.21.0
1
0
Hello community,
here is the log from the commit of package MozillaFirefox for openSUSE:Factory checked in at 2019-05-06 21:14:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/MozillaFirefox (Old)
and /work/SRC/openSUSE:Factory/.MozillaFirefox.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "MozillaFirefox"
Mon May 6 21:14:06 2019 rev:287 rq:700898 version:66.0.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/MozillaFirefox/MozillaFirefox.changes 2019-04-15 12:35:02.414089150 +0200
+++ /work/SRC/openSUSE:Factory/.MozillaFirefox.new.5148/MozillaFirefox.changes 2019-05-06 21:14:09.296574091 +0200
@@ -1,0 +2,7 @@
+Sun May 5 20:21:02 UTC 2019 - Wolfgang Rosenauer <wr(a)rosenauer.org>
+
+- Mozilla Firefox 66.0.4 (boo#1134126)
+ * fix extension certificate chain
+ https://blog.mozilla.org/addons/2019/05/04/update-regarding-add-ons-in-fire…
+
+-------------------------------------------------------------------
Old:
----
firefox-66.0.3.source.tar.xz
firefox-66.0.3.source.tar.xz.asc
l10n-66.0.3.tar.xz
New:
----
firefox-66.0.4.source.tar.xz
firefox-66.0.4.source.tar.xz.asc
l10n-66.0.4.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ MozillaFirefox.spec ++++++
--- /var/tmp/diff_new_pack.eeafhd/_old 2019-05-06 21:14:34.796644123 +0200
+++ /var/tmp/diff_new_pack.eeafhd/_new 2019-05-06 21:14:34.796644123 +0200
@@ -19,12 +19,12 @@
# changed with every update
%define major 66
-%define mainver %major.0.3
-%define orig_version 66.0.3
+%define mainver %major.0.4
+%define orig_version 66.0.4
%define orig_suffix %{nil}
%define update_channel release
%define branding 1
-%define releasedate 20190409195917
+%define releasedate 20190504212614
%define source_prefix firefox-%{orig_version}
# always build with GCC as SUSE Security Team requires that
++++++ compare-locales.tar.xz ++++++
++++++ create-tar.sh ++++++
--- /var/tmp/diff_new_pack.eeafhd/_old 2019-05-06 21:14:34.920644459 +0200
+++ /var/tmp/diff_new_pack.eeafhd/_new 2019-05-06 21:14:34.920644459 +0200
@@ -7,8 +7,8 @@
CHANNEL="release"
BRANCH="releases/mozilla-$CHANNEL"
-RELEASE_TAG="37ecfd08ffee9924609121aaec3f101598f8a84e"
-VERSION="66.0.3"
+RELEASE_TAG="848b15028562c6757748070f637e0e4f0bbb5f65"
+VERSION="66.0.4"
VERSION_SUFFIX=""
LOCALE_FILE="firefox-$VERSION/browser/locales/l10n-changesets.json"
++++++ firefox-66.0.3.source.tar.xz -> firefox-66.0.4.source.tar.xz ++++++
/work/SRC/openSUSE:Factory/MozillaFirefox/firefox-66.0.3.source.tar.xz /work/SRC/openSUSE:Factory/.MozillaFirefox.new.5148/firefox-66.0.4.source.tar.xz differ: char 15, line 1
++++++ l10n-66.0.3.tar.xz -> l10n-66.0.4.tar.xz ++++++
/work/SRC/openSUSE:Factory/MozillaFirefox/l10n-66.0.3.tar.xz /work/SRC/openSUSE:Factory/.MozillaFirefox.new.5148/l10n-66.0.4.tar.xz differ: char 25, line 1
++++++ source-stamp.txt ++++++
--- /var/tmp/diff_new_pack.eeafhd/_old 2019-05-06 21:14:35.108644969 +0200
+++ /var/tmp/diff_new_pack.eeafhd/_new 2019-05-06 21:14:35.108644969 +0200
@@ -1,2 +1,2 @@
-REV=37ecfd08ffee
+REV=848b15028562
REPO=http://hg.mozilla.org/releases/mozilla-release
1
0
Hello community,
here is the log from the commit of package MozillaFirefox-branding-openSUSE for openSUSE:Factory checked in at 2019-05-06 21:13:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/MozillaFirefox-branding-openSUSE (Old)
and /work/SRC/openSUSE:Factory/.MozillaFirefox-branding-openSUSE.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "MozillaFirefox-branding-openSUSE"
Mon May 6 21:13:58 2019 rev:57 rq:700853 version:60
Changes:
--------
--- /work/SRC/openSUSE:Factory/MozillaFirefox-branding-openSUSE/MozillaFirefox-branding-openSUSE.changes 2019-04-26 22:45:08.741622164 +0200
+++ /work/SRC/openSUSE:Factory/.MozillaFirefox-branding-openSUSE.new.5148/MozillaFirefox-branding-openSUSE.changes 2019-05-06 21:14:01.076551378 +0200
@@ -1,0 +2,5 @@
+Sun May 5 07:31:47 UTC 2019 - Wolfgang Rosenauer <wr(a)rosenauer.org>
+
+- recognize Leap 15 via sle_version (required for >= 15.1)
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ MozillaFirefox-branding-openSUSE.spec ++++++
--- /var/tmp/diff_new_pack.eeNdDd/_old 2019-05-06 21:14:02.424555102 +0200
+++ /var/tmp/diff_new_pack.eeNdDd/_new 2019-05-06 21:14:02.424555102 +0200
@@ -45,34 +45,44 @@
%global progdir %{_libdir}/firefox
%global libgssapi libgssapi_krb5.so.2
+%global suseversion undefined
%if %suse_version == 1315
-# Leap 42
-%if %sle_version == 120100
-%global suseversion 42.1
-%else
-%if %sle_version == 120200
-%global suseversion 42.2
-%else
-%if %sle_version == 120300
-%global suseversion 42.3
-%endif
+ # Leap 42
+ %if %sle_version == 120100
+ %global suseversion 42.1
+ %else
+ %if %sle_version == 120200
+ %global suseversion 42.2
+ %else
+ %if %sle_version == 120300
+ %global suseversion 42.3
+ %endif
+ %endif
+ %endif
+%endif
+%if %suse_version == 1500
+ # Leap 15
+ %if %sle_version == 150000
+ %global suseversion 15.0
+ %else
+ %if %sle_version == 150100
+ %global suseversion 15.1
+ %endif
+ %endif
%endif
-%endif
-%else
+
%if %suse_version >= 1550
-# Tumbleweed
-%global suseversion Tumbleweed
-%else
-%global suseversion %(echo -e "scale=1\\n%{suse_version}/100" | bc 2>/dev/null)
-%endif
+ # Tumbleweed
+ %global suseversion Tumbleweed
%endif
+
# Leap or not
%if 0%{?sle_version}
-%global prjname Leap:%{suseversion}
-%global distname openSUSE Leap
+ %global prjname Leap:%{suseversion}
+ %global distname openSUSE Leap
%else
-%global prjname %{suseversion}
-%global distname openSUSE
+ %global prjname %{suseversion}
+ %global distname openSUSE
%endif
%global homepage https://www.opensuse.org/searchPage/
1
0
Hello community,
here is the log from the commit of package perl-Test2-Plugin-NoWarnings for openSUSE:Factory checked in at 2019-05-06 21:13:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Test2-Plugin-NoWarnings (Old)
and /work/SRC/openSUSE:Factory/.perl-Test2-Plugin-NoWarnings.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Test2-Plugin-NoWarnings"
Mon May 6 21:13:50 2019 rev:3 rq:700742 version:0.07
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Test2-Plugin-NoWarnings/perl-Test2-Plugin-NoWarnings.changes 2017-06-09 15:58:06.941670957 +0200
+++ /work/SRC/openSUSE:Factory/.perl-Test2-Plugin-NoWarnings.new.5148/perl-Test2-Plugin-NoWarnings.changes 2019-05-06 21:13:50.360521767 +0200
@@ -1,0 +2,13 @@
+Mon Apr 22 05:31:32 UTC 2019 - Stephan Kulow <coolo(a)suse.com>
+
+- updated to 0.07
+ see /usr/share/doc/packages/perl-Test2-Plugin-NoWarnings/Changes
+
+ 0.07 2019-04-21
+
+ - Reverted back to using the Warning event type, since the bug in the Test2
+ core that caused this to be a problem has since been fixed.
+
+ - Replaced use of Test2::Bundle::Extended with Test2::V0.
+
+-------------------------------------------------------------------
Old:
----
Test2-Plugin-NoWarnings-0.06.tar.gz
New:
----
Test2-Plugin-NoWarnings-0.07.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Test2-Plugin-NoWarnings.spec ++++++
--- /var/tmp/diff_new_pack.uedMT5/_old 2019-05-06 21:13:51.856525902 +0200
+++ /var/tmp/diff_new_pack.uedMT5/_new 2019-05-06 21:13:51.892526001 +0200
@@ -1,7 +1,7 @@
#
# spec file for package perl-Test2-Plugin-NoWarnings
#
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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
@@ -12,32 +12,35 @@
# 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/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: perl-Test2-Plugin-NoWarnings
-Version: 0.06
+Version: 0.07
Release: 0
%define cpan_name Test2-Plugin-NoWarnings
Summary: Fail if tests warn
License: Artistic-2.0
Group: Development/Libraries/Perl
-Url: http://search.cpan.org/dist/Test2-Plugin-NoWarnings/
+Url: https://metacpan.org/release/%{cpan_name}
Source0: https://cpan.metacpan.org/authors/id/D/DR/DROLSKY/%{cpan_name}-%{version}.t…
Source1: cpanspec.yml
BuildArch: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: perl
BuildRequires: perl-macros
+BuildRequires: perl(Capture::Tiny)
BuildRequires: perl(IPC::Run3)
+BuildRequires: perl(Test2) >= 1.302096
BuildRequires: perl(Test2::API)
-BuildRequires: perl(Test2::Bundle::Extended)
BuildRequires: perl(Test2::Event)
BuildRequires: perl(Test2::Require::Module)
BuildRequires: perl(Test2::Util::HashBase)
+BuildRequires: perl(Test2::V0)
BuildRequires: perl(Test::More) >= 1.302015
BuildRequires: perl(parent)
+Requires: perl(Test2) >= 1.302096
Requires: perl(Test2::API)
Requires: perl(Test2::Event)
Requires: perl(Test2::Util::HashBase)
@@ -56,11 +59,11 @@
%setup -q -n %{cpan_name}-%{version}
%build
-%{__perl} Makefile.PL INSTALLDIRS=vendor
-%{__make} %{?_smp_mflags}
+perl Makefile.PL INSTALLDIRS=vendor
+make %{?_smp_mflags}
%check
-%{__make} test
+make test
%install
%perl_make_install
@@ -69,7 +72,7 @@
%files -f %{name}.files
%defattr(-,root,root,755)
-%doc Changes CONTRIBUTING.md README.md
+%doc Changes CODE_OF_CONDUCT.md CONTRIBUTING.md README.md
%license LICENSE
%changelog
++++++ Test2-Plugin-NoWarnings-0.06.tar.gz -> Test2-Plugin-NoWarnings-0.07.tar.gz ++++++
++++ 2086 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package perl-Lingua-EN-Inflect for openSUSE:Factory checked in at 2019-05-06 21:13:40
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Lingua-EN-Inflect (Old)
and /work/SRC/openSUSE:Factory/.perl-Lingua-EN-Inflect.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Lingua-EN-Inflect"
Mon May 6 21:13:40 2019 rev:13 rq:700734 version:1.904
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Lingua-EN-Inflect/perl-Lingua-EN-Inflect.changes 2017-11-15 16:54:21.319606208 +0100
+++ /work/SRC/openSUSE:Factory/.perl-Lingua-EN-Inflect.new.5148/perl-Lingua-EN-Inflect.changes 2019-05-06 21:13:42.480499995 +0200
@@ -1,0 +2,13 @@
+Sun Apr 28 05:17:51 UTC 2019 - Stephan Kulow <coolo(a)suse.com>
+
+- updated to 1.904
+ see /usr/share/doc/packages/perl-Lingua-EN-Inflect/Changes
+
+
+
+ 1.904 Sat Apr 27 22:01:03 2019
+
+ - Corrected 'cyclops', 'triceratops', etc.
+ (Thanks, Lady Aleena)
+
+-------------------------------------------------------------------
Old:
----
Lingua-EN-Inflect-1.903.tar.gz
New:
----
Lingua-EN-Inflect-1.904.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Lingua-EN-Inflect.spec ++++++
--- /var/tmp/diff_new_pack.J3gaSK/_old 2019-05-06 21:13:42.964501332 +0200
+++ /var/tmp/diff_new_pack.J3gaSK/_new 2019-05-06 21:13:42.968501343 +0200
@@ -1,7 +1,7 @@
#
# spec file for package perl-Lingua-EN-Inflect
#
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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
@@ -12,18 +12,18 @@
# 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/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: perl-Lingua-EN-Inflect
-Version: 1.903
+Version: 1.904
Release: 0
%define cpan_name Lingua-EN-Inflect
Summary: Convert singular to plural. Select "a" or "an"
-License: GPL-1.0+ or Artistic-1.0
+License: Artistic-1.0 OR GPL-1.0-or-later
Group: Development/Libraries/Perl
-Url: http://search.cpan.org/dist/Lingua-EN-Inflect/
+Url: https://metacpan.org/release/%{cpan_name}
Source0: https://cpan.metacpan.org/authors/id/D/DC/DCONWAY/%{cpan_name}-%{version}.t…
Source1: cpanspec.yml
BuildArch: noarch
@@ -72,11 +72,11 @@
find . -type f ! -name \*.pl -print0 | xargs -0 chmod 644
%build
-%{__perl} Makefile.PL INSTALLDIRS=vendor
-%{__make} %{?_smp_mflags}
+perl Makefile.PL INSTALLDIRS=vendor
+make %{?_smp_mflags}
%check
-%{__make} test
+make test
%install
%perl_make_install
++++++ Lingua-EN-Inflect-1.903.tar.gz -> Lingua-EN-Inflect-1.904.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Lingua-EN-Inflect-1.903/Changes new/Lingua-EN-Inflect-1.904/Changes
--- old/Lingua-EN-Inflect-1.903/Changes 2017-10-30 01:44:44.000000000 +0100
+++ new/Lingua-EN-Inflect-1.904/Changes 2019-04-27 14:01:03.000000000 +0200
@@ -270,3 +270,9 @@
- Various bugs in documentation code debugged
(Thanks, Kornel!)
+
+
+1.904 Sat Apr 27 22:01:03 2019
+
+ - Corrected 'cyclops', 'triceratops', etc.
+ (Thanks, Lady Aleena)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Lingua-EN-Inflect-1.903/META.json new/Lingua-EN-Inflect-1.904/META.json
--- old/Lingua-EN-Inflect-1.903/META.json 2017-10-30 01:44:49.000000000 +0100
+++ new/Lingua-EN-Inflect-1.904/META.json 2019-04-27 14:01:07.000000000 +0200
@@ -4,7 +4,7 @@
"Damian Conway <DCONWAY(a)CPAN.org>"
],
"dynamic_config" : 1,
- "generated_by" : "ExtUtils::MakeMaker version 7.04, CPAN::Meta::Converter version 2.142690",
+ "generated_by" : "ExtUtils::MakeMaker version 7.34, CPAN::Meta::Converter version 2.143240",
"license" : [
"unknown"
],
@@ -37,5 +37,5 @@
}
},
"release_status" : "stable",
- "version" : "1.903"
+ "version" : "1.904"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Lingua-EN-Inflect-1.903/META.yml new/Lingua-EN-Inflect-1.904/META.yml
--- old/Lingua-EN-Inflect-1.903/META.yml 2017-10-30 01:44:48.000000000 +0100
+++ new/Lingua-EN-Inflect-1.904/META.yml 2019-04-27 14:01:07.000000000 +0200
@@ -7,7 +7,7 @@
configure_requires:
ExtUtils::MakeMaker: '0'
dynamic_config: 1
-generated_by: 'ExtUtils::MakeMaker version 7.04, CPAN::Meta::Converter version 2.142690'
+generated_by: 'ExtUtils::MakeMaker version 7.34, CPAN::Meta::Converter version 2.143240'
license: unknown
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -19,4 +19,4 @@
- inc
requires:
Test::More: '0'
-version: '1.903'
+version: '1.904'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Lingua-EN-Inflect-1.903/README new/Lingua-EN-Inflect-1.904/README
--- old/Lingua-EN-Inflect-1.903/README 2017-10-30 01:44:44.000000000 +0100
+++ new/Lingua-EN-Inflect-1.904/README 2019-04-27 14:01:03.000000000 +0200
@@ -1,4 +1,4 @@
-Lingua::EN::Inflect version 1.903
+Lingua::EN::Inflect version 1.904
The exportable subroutines of Lingua::EN::Inflect provide plural
inflections and "a"/"an" selection for English words.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Lingua-EN-Inflect-1.903/lib/Lingua/EN/Inflect.pm new/Lingua-EN-Inflect-1.904/lib/Lingua/EN/Inflect.pm
--- old/Lingua-EN-Inflect-1.903/lib/Lingua/EN/Inflect.pm 2017-10-30 01:44:44.000000000 +0100
+++ new/Lingua-EN-Inflect-1.904/lib/Lingua/EN/Inflect.pm 2019-04-27 14:01:03.000000000 +0200
@@ -7,7 +7,7 @@
require Exporter;
@ISA = qw(Exporter);
-our $VERSION = '1.903';
+our $VERSION = '1.904';
%EXPORT_TAGS =
(
@@ -157,6 +157,10 @@
'editio princeps' => 'editiones principes',
'starets' => 'startsy',
'staretz' => 'startzy',
+ 'cyclops' => 'cyclopses',
+ 'tursiops' => 'tursiopses',
+ 'triceratops' => 'triceratopses',
+ 'protoceratops' => 'protoceratopses',
);
my %PL_sb_irregular =
@@ -1831,7 +1835,7 @@
=head1 VERSION
-This document describes version 1.903 of Lingua::EN::Inflect
+This document describes version 1.904 of Lingua::EN::Inflect
=head1 SYNOPSIS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Lingua-EN-Inflect-1.903/t/inflections.t new/Lingua-EN-Inflect-1.904/t/inflections.t
--- old/Lingua-EN-Inflect-1.903/t/inflections.t 2011-05-20 09:20:26.000000000 +0200
+++ new/Lingua-EN-Inflect-1.904/t/inflections.t 2019-04-27 13:58:40.000000000 +0200
@@ -184,8 +184,16 @@
ok ( PART_PRES("spies") eq "spying" );
ok ( PART_PRES("skis") eq "skiing" );
-BEGIN { $| = 1; print "1..962\n"; }
+BEGIN { $| = 1; print "1..970\n"; }
__DATA__
+ Fury -> Furies|Furys
+ fury -> furies
+ jury -> juries
+ conjury -> conjuries
+ augury -> auguries
+ cyclops -> cyclopses
+ tursiops -> tursiopses
+ triceratops -> triceratopses
brother-german -> brothers-german | brethren-german
Tornese -> Tornesi
put-off -> put-offs
1
0
Hello community,
here is the log from the commit of package perl-Test-Simple for openSUSE:Factory checked in at 2019-05-06 21:13:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Test-Simple (Old)
and /work/SRC/openSUSE:Factory/.perl-Test-Simple.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Test-Simple"
Mon May 6 21:13:32 2019 rev:22 rq:700731 version:1.302164
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Test-Simple/perl-Test-Simple.changes 2019-02-14 14:11:33.432275177 +0100
+++ /work/SRC/openSUSE:Factory/.perl-Test-Simple.new.5148/perl-Test-Simple.changes 2019-05-06 21:13:33.588475425 +0200
@@ -1,0 +2,15 @@
+Sun Apr 28 05:38:58 UTC 2019 - Stephan Kulow <coolo(a)suse.com>
+
+- updated to 1.302164
+ see /usr/share/doc/packages/perl-Test-Simple/Changes
+
+ 1.302164 2019-04-27 01:43:44-07:00 America/Los_Angeles
+
+ 1.302163 2019-04-25 05:45:47-07:00 America/Los_Angeles (TRIAL RELEASE)
+
+ - Do not use threads::Shared in Test::Tester::Capture (#826)
+ - Add missing version info to Info/Table
+ - Fix event in global destruction bug (#827)
+ - Proper fix for todo = '' (#812, #829)
+
+-------------------------------------------------------------------
Old:
----
Test-Simple-1.302162.tar.gz
New:
----
Test-Simple-1.302164.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Test-Simple.spec ++++++
--- /var/tmp/diff_new_pack.UQMPw0/_old 2019-05-06 21:13:34.004476574 +0200
+++ /var/tmp/diff_new_pack.UQMPw0/_new 2019-05-06 21:13:34.004476574 +0200
@@ -17,7 +17,7 @@
Name: perl-Test-Simple
-Version: 1.302162
+Version: 1.302164
Release: 0
%define cpan_name Test-Simple
Summary: Basic utilities for writing tests
++++++ Test-Simple-1.302162.tar.gz -> Test-Simple-1.302164.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/Changes new/Test-Simple-1.302164/Changes
--- old/Test-Simple-1.302162/Changes 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/Changes 2019-04-27 10:43:45.000000000 +0200
@@ -1,3 +1,12 @@
+1.302164 2019-04-27 01:43:44-07:00 America/Los_Angeles
+
+1.302163 2019-04-25 05:45:47-07:00 America/Los_Angeles (TRIAL RELEASE)
+
+ - Do not use threads::Shared in Test::Tester::Capture (#826)
+ - Add missing version info to Info/Table
+ - Fix event in global destruction bug (#827)
+ - Proper fix for todo = '' (#812, #829)
+
1.302162 2019-02-05 19:55:14-08:00 America/Los_Angeles
- Typo fixes in documentation
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/META.json new/Test-Simple-1.302164/META.json
--- old/Test-Simple-1.302162/META.json 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/META.json 2019-04-27 10:43:45.000000000 +0200
@@ -48,7 +48,7 @@
"url" : "http://github.com/Test-More/test-more/"
}
},
- "version" : "1.302162",
+ "version" : "1.302164",
"x_breaks" : {
"Log::Dispatch::Config::TestLog" : "<= 0.02",
"Net::BitTorrent" : "<= 0.052",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/META.yml new/Test-Simple-1.302164/META.yml
--- old/Test-Simple-1.302162/META.yml 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/META.yml 2019-04-27 10:43:45.000000000 +0200
@@ -22,7 +22,7 @@
resources:
bugtracker: http://github.com/Test-More/test-more/issues
repository: http://github.com/Test-More/test-more/
-version: '1.302162'
+version: '1.302164'
x_breaks:
Log::Dispatch::Config::TestLog: '<= 0.02'
Net::BitTorrent: '<= 0.052'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/Makefile.PL new/Test-Simple-1.302164/Makefile.PL
--- old/Test-Simple-1.302162/Makefile.PL 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/Makefile.PL 2019-04-27 10:43:45.000000000 +0200
@@ -23,7 +23,7 @@
"Storable" => 0,
"utf8" => 0
},
- "VERSION" => "1.302162",
+ "VERSION" => "1.302164",
"test" => {
"TESTS" => "t/*.t t/Legacy/*.t t/Legacy/Bugs/*.t t/Legacy/Builder/*.t t/Legacy/Regression/*.t t/Legacy/Simple/*.t t/Legacy/Test2/*.t t/Legacy/Tester/*.t t/Legacy/subtest/*.t t/Legacy_And_Test2/*.t t/Test2/acceptance/*.t t/Test2/behavior/*.t t/Test2/legacy/*.t t/Test2/modules/*.t t/Test2/modules/API/*.t t/Test2/modules/Event/*.t t/Test2/modules/Event/TAP/*.t t/Test2/modules/EventFacet/*.t t/Test2/modules/Formatter/*.t t/Test2/modules/Hub/*.t t/Test2/modules/Hub/Interceptor/*.t t/Test2/modules/IPC/*.t t/Test2/modules/IPC/Driver/*.t t/Test2/modules/Tools/*.t t/Test2/modules/Util/*.t t/Test2/regression/*.t t/regression/*.t"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test/Builder/Formatter.pm new/Test-Simple-1.302164/lib/Test/Builder/Formatter.pm
--- old/Test-Simple-1.302162/lib/Test/Builder/Formatter.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test/Builder/Formatter.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN { require Test2::Formatter::TAP; our @ISA = qw(Test2::Formatter::TAP) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test/Builder/Module.pm new/Test-Simple-1.302164/lib/Test/Builder/Module.pm
--- old/Test-Simple-1.302162/lib/Test/Builder/Module.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test/Builder/Module.pm 2019-04-27 10:43:45.000000000 +0200
@@ -7,7 +7,7 @@
require Exporter;
our @ISA = qw(Exporter);
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
=head1 NAME
@@ -172,4 +172,11 @@
return Test::Builder->new;
}
+=head1 SEE ALSO
+
+L<< Test2::Manual::Tooling::TestBuilder >> describes the improved
+options for writing testing modules provided by L<< Test2 >>.
+
+=cut
+
1;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test/Builder/Tester/Color.pm new/Test-Simple-1.302164/lib/Test/Builder/Tester/Color.pm
--- old/Test-Simple-1.302162/lib/Test/Builder/Tester/Color.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test/Builder/Tester/Color.pm 2019-04-27 10:43:45.000000000 +0200
@@ -1,7 +1,7 @@
package Test::Builder::Tester::Color;
use strict;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
require Test::Builder::Tester;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test/Builder/Tester.pm new/Test-Simple-1.302164/lib/Test/Builder/Tester.pm
--- old/Test-Simple-1.302162/lib/Test/Builder/Tester.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test/Builder/Tester.pm 2019-04-27 10:43:45.000000000 +0200
@@ -1,7 +1,7 @@
package Test::Builder::Tester;
use strict;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Test::Builder;
use Symbol;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test/Builder/TodoDiag.pm new/Test-Simple-1.302164/lib/Test/Builder/TodoDiag.pm
--- old/Test-Simple-1.302162/lib/Test/Builder/TodoDiag.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test/Builder/TodoDiag.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN { require Test2::Event::Diag; our @ISA = qw(Test2::Event::Diag) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test/Builder.pm new/Test-Simple-1.302164/lib/Test/Builder.pm
--- old/Test-Simple-1.302162/lib/Test/Builder.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test/Builder.pm 2019-04-27 10:43:45.000000000 +0200
@@ -4,7 +4,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN {
if( $] < 5.008 ) {
@@ -63,7 +63,8 @@
$todo = ${"$cpkg\::TODO"} if $cpkg;
$todo = ${"$epkg\::TODO"} if $epkg && !$todo;
- return $e unless defined $todo;
+ return $e unless defined($todo);
+ return $e unless length($todo);
# Turn a diag into a todo diag
return Test::Builder::TodoDiag->new(%$e) if ref($e) eq 'Test2::Event::Diag';
@@ -695,7 +696,7 @@
my $self = shift;
my ($trace, $orig_name) = @_;
- my $is_todo = defined($self->todo);
+ my $is_todo = $self->in_todo;
my $msg = $is_todo ? "Failed (TODO)" : "Failed";
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test/More.pm new/Test-Simple-1.302164/lib/Test/More.pm
--- old/Test-Simple-1.302162/lib/Test/More.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test/More.pm 2019-04-27 10:43:45.000000000 +0200
@@ -17,7 +17,7 @@
return warn @_, " at $file line $line\n";
}
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Test::Builder::Module;
our @ISA = qw(Test::Builder::Module);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test/Simple.pm new/Test-Simple-1.302164/lib/Test/Simple.pm
--- old/Test-Simple-1.302162/lib/Test/Simple.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test/Simple.pm 2019-04-27 10:43:45.000000000 +0200
@@ -4,7 +4,7 @@
use strict;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Test::Builder::Module;
our @ISA = qw(Test::Builder::Module);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test/Tester/Capture.pm new/Test-Simple-1.302164/lib/Test/Tester/Capture.pm
--- old/Test-Simple-1.302162/lib/Test/Tester/Capture.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test/Tester/Capture.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
package Test::Tester::Capture;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Test::Builder;
@@ -13,14 +13,8 @@
# Make Test::Tester::Capture thread-safe for ithreads.
BEGIN {
use Config;
- if( $] >= 5.008 && $Config{useithreads} ) {
- require threads::shared;
- threads::shared->import;
- }
- else {
- *share = sub { 0 };
- *lock = sub { 0 };
- }
+ *share = sub { 0 };
+ *lock = sub { 0 };
}
my $Curr_Test = 0; share($Curr_Test);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test/Tester/CaptureRunner.pm new/Test-Simple-1.302164/lib/Test/Tester/CaptureRunner.pm
--- old/Test-Simple-1.302162/lib/Test/Tester/CaptureRunner.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test/Tester/CaptureRunner.pm 2019-04-27 10:43:45.000000000 +0200
@@ -3,7 +3,7 @@
package Test::Tester::CaptureRunner;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Test::Tester::Capture;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test/Tester/Delegate.pm new/Test-Simple-1.302164/lib/Test/Tester/Delegate.pm
--- old/Test-Simple-1.302162/lib/Test/Tester/Delegate.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test/Tester/Delegate.pm 2019-04-27 10:43:45.000000000 +0200
@@ -3,7 +3,7 @@
package Test::Tester::Delegate;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Scalar::Util();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test/Tester.pm new/Test-Simple-1.302164/lib/Test/Tester.pm
--- old/Test-Simple-1.302162/lib/Test/Tester.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test/Tester.pm 2019-04-27 10:43:45.000000000 +0200
@@ -18,7 +18,7 @@
use vars qw( @ISA @EXPORT );
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
@EXPORT = qw( run_tests check_tests check_test cmp_results show_space );
@ISA = qw( Exporter );
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test/use/ok.pm new/Test-Simple-1.302164/lib/Test/use/ok.pm
--- old/Test-Simple-1.302162/lib/Test/use/ok.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test/use/ok.pm 2019-04-27 10:43:45.000000000 +0200
@@ -1,7 +1,7 @@
package Test::use::ok;
use 5.005;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
__END__
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/API/Breakage.pm new/Test-Simple-1.302164/lib/Test2/API/Breakage.pm
--- old/Test-Simple-1.302162/lib/Test2/API/Breakage.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/API/Breakage.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Test2::Util qw/pkg_to_file/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/API/Context.pm new/Test-Simple-1.302164/lib/Test2/API/Context.pm
--- old/Test-Simple-1.302162/lib/Test2/API/Context.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/API/Context.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Carp qw/confess croak/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/API/Instance.pm new/Test-Simple-1.302164/lib/Test2/API/Instance.pm
--- old/Test-Simple-1.302162/lib/Test2/API/Instance.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/API/Instance.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
our @CARP_NOT = qw/Test2::API Test2::API::Instance Test2::IPC::Driver Test2::Formatter/;
use Carp qw/confess carp/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/API/Stack.pm new/Test-Simple-1.302164/lib/Test2/API/Stack.pm
--- old/Test-Simple-1.302162/lib/Test2/API/Stack.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/API/Stack.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Test2::Hub();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/API.pm new/Test-Simple-1.302164/lib/Test2/API.pm
--- old/Test-Simple-1.302162/lib/Test2/API.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/API.pm 2019-04-27 10:43:45.000000000 +0200
@@ -9,7 +9,7 @@
$ENV{TEST2_ACTIVE} = 1;
}
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
my $INST;
@@ -322,6 +322,23 @@
my $stack = $params{stack} || $STACK;
my $hub = $params{hub} || (@$stack ? $stack->[-1] : $stack->top);
+
+ # Catch an edge case where we try to get context after the root hub has
+ # been garbage collected resulting in a stack that has a single undef
+ # hub
+ if (!$hub && !exists($params{hub}) && @$stack) {
+ my $msg = Carp::longmess("Attempt to get Test2 context after testing has completed (did you attempt a testing event after done_testing?)");
+
+ # The error message is usually masked by the global destruction, so we have to print to STDER
+ print STDERR $msg;
+
+ # Make sure this is a failure, we are probably already in END, so set $? to change the exit code
+ $? = 1;
+
+ # Now we actually die to interrupt the program flow and avoid undefined his warnings
+ die $msg;
+ }
+
my $hid = $hub->{hid};
my $current = $CONTEXTS->{$hid};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Event/Bail.pm new/Test-Simple-1.302164/lib/Test2/Event/Bail.pm
--- old/Test-Simple-1.302162/lib/Test2/Event/Bail.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Event/Bail.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN { require Test2::Event; our @ISA = qw(Test2::Event) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Event/Diag.pm new/Test-Simple-1.302164/lib/Test2/Event/Diag.pm
--- old/Test-Simple-1.302162/lib/Test2/Event/Diag.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Event/Diag.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN { require Test2::Event; our @ISA = qw(Test2::Event) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Event/Encoding.pm new/Test-Simple-1.302164/lib/Test2/Event/Encoding.pm
--- old/Test-Simple-1.302162/lib/Test2/Event/Encoding.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Event/Encoding.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Carp qw/croak/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Event/Exception.pm new/Test-Simple-1.302164/lib/Test2/Event/Exception.pm
--- old/Test-Simple-1.302162/lib/Test2/Event/Exception.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Event/Exception.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN { require Test2::Event; our @ISA = qw(Test2::Event) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Event/Fail.pm new/Test-Simple-1.302164/lib/Test2/Event/Fail.pm
--- old/Test-Simple-1.302162/lib/Test2/Event/Fail.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Event/Fail.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Test2::EventFacet::Info;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Event/Generic.pm new/Test-Simple-1.302164/lib/Test2/Event/Generic.pm
--- old/Test-Simple-1.302162/lib/Test2/Event/Generic.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Event/Generic.pm 2019-04-27 10:43:45.000000000 +0200
@@ -5,7 +5,7 @@
use Carp qw/croak/;
use Scalar::Util qw/reftype/;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN { require Test2::Event; our @ISA = qw(Test2::Event) }
use Test2::Util::HashBase;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Event/Note.pm new/Test-Simple-1.302164/lib/Test2/Event/Note.pm
--- old/Test-Simple-1.302162/lib/Test2/Event/Note.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Event/Note.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN { require Test2::Event; our @ISA = qw(Test2::Event) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Event/Ok.pm new/Test-Simple-1.302164/lib/Test2/Event/Ok.pm
--- old/Test-Simple-1.302162/lib/Test2/Event/Ok.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Event/Ok.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN { require Test2::Event; our @ISA = qw(Test2::Event) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Event/Pass.pm new/Test-Simple-1.302164/lib/Test2/Event/Pass.pm
--- old/Test-Simple-1.302162/lib/Test2/Event/Pass.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Event/Pass.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Test2::EventFacet::Info;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Event/Plan.pm new/Test-Simple-1.302164/lib/Test2/Event/Plan.pm
--- old/Test-Simple-1.302162/lib/Test2/Event/Plan.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Event/Plan.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN { require Test2::Event; our @ISA = qw(Test2::Event) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Event/Skip.pm new/Test-Simple-1.302164/lib/Test2/Event/Skip.pm
--- old/Test-Simple-1.302162/lib/Test2/Event/Skip.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Event/Skip.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN { require Test2::Event::Ok; our @ISA = qw(Test2::Event::Ok) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Event/Subtest.pm new/Test-Simple-1.302164/lib/Test2/Event/Subtest.pm
--- old/Test-Simple-1.302162/lib/Test2/Event/Subtest.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Event/Subtest.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN { require Test2::Event::Ok; our @ISA = qw(Test2::Event::Ok) }
use Test2::Util::HashBase qw{subevents buffered subtest_id subtest_uuid};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Event/TAP/Version.pm new/Test-Simple-1.302164/lib/Test2/Event/TAP/Version.pm
--- old/Test-Simple-1.302162/lib/Test2/Event/TAP/Version.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Event/TAP/Version.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Carp qw/croak/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Event/V2.pm new/Test-Simple-1.302164/lib/Test2/Event/V2.pm
--- old/Test-Simple-1.302162/lib/Test2/Event/V2.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Event/V2.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Scalar::Util qw/reftype/;
use Carp qw/croak/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Event/Waiting.pm new/Test-Simple-1.302164/lib/Test2/Event/Waiting.pm
--- old/Test-Simple-1.302162/lib/Test2/Event/Waiting.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Event/Waiting.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN { require Test2::Event; our @ISA = qw(Test2::Event) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Event.pm new/Test-Simple-1.302164/lib/Test2/Event.pm
--- old/Test-Simple-1.302162/lib/Test2/Event.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Event.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Scalar::Util qw/blessed reftype/;
use Carp qw/croak/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/EventFacet/About.pm new/Test-Simple-1.302164/lib/Test2/EventFacet/About.pm
--- old/Test-Simple-1.302162/lib/Test2/EventFacet/About.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/EventFacet/About.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN { require Test2::EventFacet; our @ISA = qw(Test2::EventFacet) }
use Test2::Util::HashBase qw{ -package -no_display -uuid -eid };
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/EventFacet/Amnesty.pm new/Test-Simple-1.302164/lib/Test2/EventFacet/Amnesty.pm
--- old/Test-Simple-1.302162/lib/Test2/EventFacet/Amnesty.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/EventFacet/Amnesty.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
sub is_list { 1 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/EventFacet/Assert.pm new/Test-Simple-1.302164/lib/Test2/EventFacet/Assert.pm
--- old/Test-Simple-1.302162/lib/Test2/EventFacet/Assert.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/EventFacet/Assert.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN { require Test2::EventFacet; our @ISA = qw(Test2::EventFacet) }
use Test2::Util::HashBase qw{ -pass -no_debug -number };
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/EventFacet/Control.pm new/Test-Simple-1.302164/lib/Test2/EventFacet/Control.pm
--- old/Test-Simple-1.302162/lib/Test2/EventFacet/Control.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/EventFacet/Control.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN { require Test2::EventFacet; our @ISA = qw(Test2::EventFacet) }
use Test2::Util::HashBase qw{ -global -terminate -halt -has_callback -encoding };
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/EventFacet/Error.pm new/Test-Simple-1.302164/lib/Test2/EventFacet/Error.pm
--- old/Test-Simple-1.302162/lib/Test2/EventFacet/Error.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/EventFacet/Error.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
sub facet_key { 'errors' }
sub is_list { 1 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/EventFacet/Hub.pm new/Test-Simple-1.302164/lib/Test2/EventFacet/Hub.pm
--- old/Test-Simple-1.302162/lib/Test2/EventFacet/Hub.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/EventFacet/Hub.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
sub is_list { 1 }
sub facet_key { 'hubs' }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/EventFacet/Info/Table.pm new/Test-Simple-1.302164/lib/Test2/EventFacet/Info/Table.pm
--- old/Test-Simple-1.302162/lib/Test2/EventFacet/Info/Table.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/EventFacet/Info/Table.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,6 +2,8 @@
use strict;
use warnings;
+our $VERSION = '1.302164';
+
use Carp qw/confess/;
use Test2::Util::HashBase qw{-header -rows -collapse -no_collapse -as_string};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/EventFacet/Info.pm new/Test-Simple-1.302164/lib/Test2/EventFacet/Info.pm
--- old/Test-Simple-1.302162/lib/Test2/EventFacet/Info.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/EventFacet/Info.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
sub is_list { 1 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/EventFacet/Meta.pm new/Test-Simple-1.302164/lib/Test2/EventFacet/Meta.pm
--- old/Test-Simple-1.302162/lib/Test2/EventFacet/Meta.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/EventFacet/Meta.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN { require Test2::EventFacet; our @ISA = qw(Test2::EventFacet) }
use vars qw/$AUTOLOAD/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/EventFacet/Parent.pm new/Test-Simple-1.302164/lib/Test2/EventFacet/Parent.pm
--- old/Test-Simple-1.302162/lib/Test2/EventFacet/Parent.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/EventFacet/Parent.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Carp qw/confess/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/EventFacet/Plan.pm new/Test-Simple-1.302164/lib/Test2/EventFacet/Plan.pm
--- old/Test-Simple-1.302162/lib/Test2/EventFacet/Plan.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/EventFacet/Plan.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN { require Test2::EventFacet; our @ISA = qw(Test2::EventFacet) }
use Test2::Util::HashBase qw{ -count -skip -none };
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/EventFacet/Render.pm new/Test-Simple-1.302164/lib/Test2/EventFacet/Render.pm
--- old/Test-Simple-1.302162/lib/Test2/EventFacet/Render.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/EventFacet/Render.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
sub is_list { 1 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/EventFacet/Trace.pm new/Test-Simple-1.302164/lib/Test2/EventFacet/Trace.pm
--- old/Test-Simple-1.302162/lib/Test2/EventFacet/Trace.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/EventFacet/Trace.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN { require Test2::EventFacet; our @ISA = qw(Test2::EventFacet) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/EventFacet.pm new/Test-Simple-1.302164/lib/Test2/EventFacet.pm
--- old/Test-Simple-1.302162/lib/Test2/EventFacet.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/EventFacet.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Test2::Util::HashBase qw/-details/;
use Carp qw/croak/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Formatter/TAP.pm new/Test-Simple-1.302164/lib/Test2/Formatter/TAP.pm
--- old/Test-Simple-1.302162/lib/Test2/Formatter/TAP.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Formatter/TAP.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Test2::Util qw/clone_io/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Formatter.pm new/Test-Simple-1.302164/lib/Test2/Formatter.pm
--- old/Test-Simple-1.302162/lib/Test2/Formatter.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Formatter.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
my %ADDED;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Hub/Interceptor/Terminator.pm new/Test-Simple-1.302164/lib/Test2/Hub/Interceptor/Terminator.pm
--- old/Test-Simple-1.302162/lib/Test2/Hub/Interceptor/Terminator.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Hub/Interceptor/Terminator.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
1;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Hub/Interceptor.pm new/Test-Simple-1.302164/lib/Test2/Hub/Interceptor.pm
--- old/Test-Simple-1.302162/lib/Test2/Hub/Interceptor.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Hub/Interceptor.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Test2::Hub::Interceptor::Terminator();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Hub/Subtest.pm new/Test-Simple-1.302164/lib/Test2/Hub/Subtest.pm
--- old/Test-Simple-1.302162/lib/Test2/Hub/Subtest.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Hub/Subtest.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN { require Test2::Hub; our @ISA = qw(Test2::Hub) }
use Test2::Util::HashBase qw/nested exit_code manual_skip_all/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Hub.pm new/Test-Simple-1.302164/lib/Test2/Hub.pm
--- old/Test-Simple-1.302162/lib/Test2/Hub.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Hub.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Carp qw/carp croak confess/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/IPC/Driver/Files.pm new/Test-Simple-1.302164/lib/Test2/IPC/Driver/Files.pm
--- old/Test-Simple-1.302162/lib/Test2/IPC/Driver/Files.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/IPC/Driver/Files.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN { require Test2::IPC::Driver; our @ISA = qw(Test2::IPC::Driver) }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/IPC/Driver.pm new/Test-Simple-1.302164/lib/Test2/IPC/Driver.pm
--- old/Test-Simple-1.302162/lib/Test2/IPC/Driver.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/IPC/Driver.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Carp qw/confess/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/IPC.pm new/Test-Simple-1.302164/lib/Test2/IPC.pm
--- old/Test-Simple-1.302162/lib/Test2/IPC.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/IPC.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Test2::API::Instance;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Tools/Tiny.pm new/Test-Simple-1.302164/lib/Test2/Tools/Tiny.pm
--- old/Test-Simple-1.302162/lib/Test2/Tools/Tiny.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Tools/Tiny.pm 2019-04-27 10:43:45.000000000 +0200
@@ -16,7 +16,7 @@
use Test2::Hub::Interceptor();
use Test2::Hub::Interceptor::Terminator();
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
BEGIN { require Exporter; our @ISA = qw(Exporter) }
our @EXPORT = qw{
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Util/ExternalMeta.pm new/Test-Simple-1.302164/lib/Test2/Util/ExternalMeta.pm
--- old/Test-Simple-1.302162/lib/Test2/Util/ExternalMeta.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Util/ExternalMeta.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Carp qw/croak/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Util/Facets2Legacy.pm new/Test-Simple-1.302164/lib/Test2/Util/Facets2Legacy.pm
--- old/Test-Simple-1.302162/lib/Test2/Util/Facets2Legacy.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Util/Facets2Legacy.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use Carp qw/croak confess/;
use Scalar::Util qw/blessed/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Util/HashBase.pm new/Test-Simple-1.302164/lib/Test2/Util/HashBase.pm
--- old/Test-Simple-1.302162/lib/Test2/Util/HashBase.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Util/HashBase.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
#################################################################
# #
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Util/Trace.pm new/Test-Simple-1.302164/lib/Test2/Util/Trace.pm
--- old/Test-Simple-1.302162/lib/Test2/Util/Trace.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Util/Trace.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
require Test2::EventFacet::Trace;
@ISA = ('Test2::EventFacet::Trace');
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
1;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2/Util.pm new/Test-Simple-1.302164/lib/Test2/Util.pm
--- old/Test-Simple-1.302162/lib/Test2/Util.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2/Util.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use POSIX();
use Config qw/%Config/;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/Test2.pm new/Test-Simple-1.302164/lib/Test2.pm
--- old/Test-Simple-1.302162/lib/Test2.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/Test2.pm 2019-04-27 10:43:45.000000000 +0200
@@ -2,7 +2,7 @@
use strict;
use warnings;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
1;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/lib/ok.pm new/Test-Simple-1.302164/lib/ok.pm
--- old/Test-Simple-1.302162/lib/ok.pm 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/lib/ok.pm 2019-04-27 10:43:45.000000000 +0200
@@ -1,5 +1,5 @@
package ok;
-our $VERSION = '1.302162';
+our $VERSION = '1.302164';
use strict;
use Test::More ();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Test-Simple-1.302162/t/regression/812-todo.t new/Test-Simple-1.302164/t/regression/812-todo.t
--- old/Test-Simple-1.302162/t/regression/812-todo.t 2019-02-06 04:55:15.000000000 +0100
+++ new/Test-Simple-1.302164/t/regression/812-todo.t 2019-04-27 10:43:45.000000000 +0200
@@ -5,7 +5,6 @@
use Test::More;
my @values = (
- "", # false but defined -> inconsistent
0, # false but defined -> inconsistent
0.0, # false but defined -> inconsistent
"0.0", # true -> TODO
@@ -18,4 +17,12 @@
fail "Testing: $x";
}
+my $e = intercept {
+ local $TODO = "";
+ fail "Testing: '\"\"'";
+};
+
+ok(!$e->[0]->effective_pass, "Test was not TODO when set to \"\"");
+like($e->[1]->message, qr/Failed test '/, "Did not add TODO to the diagnostics");
+
done_testing;
1
0
Hello community,
here is the log from the commit of package perl-YAML for openSUSE:Factory checked in at 2019-05-06 21:13:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-YAML (Old)
and /work/SRC/openSUSE:Factory/.perl-YAML.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-YAML"
Mon May 6 21:13:24 2019 rev:43 rq:700726 version:1.28
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-YAML/perl-YAML.changes 2018-11-13 16:28:28.890396753 +0100
+++ /work/SRC/openSUSE:Factory/.perl-YAML.new.5148/perl-YAML.changes 2019-05-06 21:13:25.840454017 +0200
@@ -1,0 +2,10 @@
+Mon Apr 29 05:43:52 UTC 2019 - Stephan Kulow <coolo(a)suse.com>
+
+- updated to 1.28
+ see /usr/share/doc/packages/perl-YAML/Changes
+
+ 1.28 Sun 28 Apr 2019 11:46:21 AM CEST
+ - Security fix: only enable loading globs when $LoadCode is set (PR#213
+ TINITA)
+
+-------------------------------------------------------------------
Old:
----
YAML-1.27.tar.gz
New:
----
YAML-1.28.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-YAML.spec ++++++
--- /var/tmp/diff_new_pack.dgH4rl/_old 2019-05-06 21:13:26.368455475 +0200
+++ /var/tmp/diff_new_pack.dgH4rl/_new 2019-05-06 21:13:26.372455486 +0200
@@ -1,7 +1,7 @@
#
# spec file for package perl-YAML
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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,7 +17,7 @@
Name: perl-YAML
-Version: 1.27
+Version: 1.28
Release: 0
%define cpan_name YAML
Summary: YAML Ain't Markup Language™
@@ -50,10 +50,10 @@
%build
perl Makefile.PL INSTALLDIRS=vendor
-%{__make} %{?_smp_mflags}
+make %{?_smp_mflags}
%check
-%{__make} test
+make test
%install
%perl_make_install
++++++ YAML-1.27.tar.gz -> YAML-1.28.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/YAML-1.27/CONTRIBUTING new/YAML-1.28/CONTRIBUTING
--- old/YAML-1.27/CONTRIBUTING 2018-11-03 14:01:42.000000000 +0100
+++ new/YAML-1.28/CONTRIBUTING 2019-04-28 11:46:38.000000000 +0200
@@ -57,4 +57,4 @@
-# This file generated by Zilla-Dist-0.0.196
+# This file generated by Zilla-Dist-0.0.203
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/YAML-1.27/Changes new/YAML-1.28/Changes
--- old/YAML-1.27/Changes 2018-11-03 14:01:42.000000000 +0100
+++ new/YAML-1.28/Changes 2019-04-28 11:46:38.000000000 +0200
@@ -1,3 +1,7 @@
+1.28 Sun 28 Apr 2019 11:46:21 AM CEST
+ - Security fix: only enable loading globs when $LoadCode is set (PR#213
+ TINITA)
+
1.27 Sat Nov 3 14:01:26 CET 2018
- Remove a warning about uninitialized value for perl <= 5.10
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/YAML-1.27/LICENSE new/YAML-1.28/LICENSE
--- old/YAML-1.27/LICENSE 2018-11-03 14:01:42.000000000 +0100
+++ new/YAML-1.28/LICENSE 2019-04-28 11:46:38.000000000 +0200
@@ -1,4 +1,4 @@
-This software is copyright (c) 2018 by Ingy döt Net.
+This software is copyright (c) 2019 by Ingy döt Net.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
@@ -12,7 +12,7 @@
--- The GNU General Public License, Version 1, February 1989 ---
-This software is Copyright (c) 2018 by Ingy döt Net.
+This software is Copyright (c) 2019 by Ingy döt Net.
This is free software, licensed under:
@@ -272,7 +272,7 @@
--- The Artistic License 1.0 ---
-This software is Copyright (c) 2018 by Ingy döt Net.
+This software is Copyright (c) 2019 by Ingy döt Net.
This is free software, licensed under:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/YAML-1.27/MANIFEST new/YAML-1.28/MANIFEST
--- old/YAML-1.27/MANIFEST 2018-11-03 14:01:42.000000000 +0100
+++ new/YAML-1.28/MANIFEST 2019-04-28 11:46:38.000000000 +0200
@@ -1,4 +1,4 @@
-# This file was automatically generated by Dist::Zilla::Plugin::Manifest v6.010.
+# This file was automatically generated by Dist::Zilla::Plugin::Manifest v6.012.
CONTRIBUTING
Changes
LICENSE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/YAML-1.27/META.json new/YAML-1.28/META.json
--- old/YAML-1.27/META.json 2018-11-03 14:01:42.000000000 +0100
+++ new/YAML-1.28/META.json 2019-04-28 11:46:38.000000000 +0200
@@ -4,7 +4,7 @@
"Ingy d\u00f6t Net <ingy(a)cpan.org>"
],
"dynamic_config" : 0,
- "generated_by" : "Dist::Zilla version 6.010, CPAN::Meta::Converter version 2.150010",
+ "generated_by" : "Dist::Zilla version 6.012, CPAN::Meta::Converter version 2.150010",
"license" : [
"perl_5"
],
@@ -58,7 +58,8 @@
"web" : "https://github.com/ingydotnet/yaml-pm"
}
},
- "version" : "1.27",
+ "version" : "1.28",
+ "x_generated_by_perl" : "v5.24.1",
"x_serialization_backend" : "Cpanel::JSON::XS version 4.02"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/YAML-1.27/META.yml new/YAML-1.28/META.yml
--- old/YAML-1.27/META.yml 2018-11-03 14:01:42.000000000 +0100
+++ new/YAML-1.28/META.yml 2019-04-28 11:46:38.000000000 +0200
@@ -10,7 +10,7 @@
configure_requires:
ExtUtils::MakeMaker: '0'
dynamic_config: 0
-generated_by: 'Dist::Zilla version 6.010, CPAN::Meta::Converter version 2.150010'
+generated_by: 'Dist::Zilla version 6.012, CPAN::Meta::Converter version 2.150010'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -28,5 +28,6 @@
bugtracker: https://github.com/ingydotnet/yaml-pm/issues
homepage: https://github.com/ingydotnet/yaml-pm
repository: https://github.com/ingydotnet/yaml-pm.git
-version: '1.27'
+version: '1.28'
+x_generated_by_perl: v5.24.1
x_serialization_backend: 'YAML::Tiny version 1.73'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/YAML-1.27/Makefile.PL new/YAML-1.28/Makefile.PL
--- old/YAML-1.27/Makefile.PL 2018-11-03 14:01:42.000000000 +0100
+++ new/YAML-1.28/Makefile.PL 2019-04-28 11:46:38.000000000 +0200
@@ -1,4 +1,4 @@
-# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker v6.010.
+# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker v6.012.
use strict;
use warnings;
@@ -23,7 +23,7 @@
"Test::More" => "0.88",
"Test::YAML" => "1.05"
},
- "VERSION" => "1.27",
+ "VERSION" => "1.28",
"test" => {
"TESTS" => "t/*.t"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/YAML-1.27/README new/YAML-1.28/README
--- old/YAML-1.27/README 2018-11-03 14:01:42.000000000 +0100
+++ new/YAML-1.28/README 2019-04-28 11:46:38.000000000 +0200
@@ -4,7 +4,7 @@
VERSION
- This document describes YAML version 1.27.
+ This document describes YAML version 1.28.
NOTE
@@ -394,6 +394,10 @@
eval(). Since this is potentially risky, only use this option if you
know where your YAML has been.
+ LoadCode must be enabled also to use the feature of evaluating
+ typeglobs (because with the typeglob feature you would be able to set
+ the variable $YAML::LoadCode from a YAML file).
+
Preserve
When set to true, this option tells the Loader to load hashes into
@@ -706,7 +710,7 @@
COPYRIGHT AND LICENSE
- Copyright 2001-2018. Ingy döt Net.
+ Copyright 2001-2019. Ingy döt Net.
This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/YAML-1.27/lib/YAML/Any.pm new/YAML-1.28/lib/YAML/Any.pm
--- old/YAML-1.27/lib/YAML/Any.pm 2018-11-03 14:01:42.000000000 +0100
+++ new/YAML-1.28/lib/YAML/Any.pm 2019-04-28 11:46:38.000000000 +0200
@@ -1,6 +1,6 @@
use strict; use warnings;
package YAML::Any;
-our $VERSION = '1.27';
+our $VERSION = '1.28';
use Exporter ();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/YAML-1.27/lib/YAML/Types.pm new/YAML-1.28/lib/YAML/Types.pm
--- old/YAML-1.27/lib/YAML/Types.pm 2018-11-03 14:01:42.000000000 +0100
+++ new/YAML-1.28/lib/YAML/Types.pm 2019-04-28 11:46:38.000000000 +0200
@@ -99,7 +99,7 @@
}
no strict 'refs';
if (exists $node->{SCALAR}) {
- if ($YAML::LoadBlessed) {
+ if ($YAML::LoadBlessed and $loader->load_code) {
*{"${package}::$name"} = \$node->{SCALAR};
}
delete $node->{SCALAR};
@@ -111,7 +111,7 @@
delete $node->{IO};
next;
}
- if ($YAML::LoadBlessed) {
+ if ($YAML::LoadBlessed and $loader->load_code) {
*{"${package}::$name"} = $node->{$elem};
}
delete $node->{$elem};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/YAML-1.27/lib/YAML.pm new/YAML-1.28/lib/YAML.pm
--- old/YAML-1.27/lib/YAML.pm 2018-11-03 14:01:42.000000000 +0100
+++ new/YAML-1.28/lib/YAML.pm 2019-04-28 11:46:38.000000000 +0200
@@ -1,5 +1,5 @@
package YAML;
-our $VERSION = '1.27';
+our $VERSION = '1.28';
use YAML::Mo;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/YAML-1.27/lib/YAML.pod new/YAML-1.28/lib/YAML.pod
--- old/YAML-1.27/lib/YAML.pod 2018-11-03 14:01:42.000000000 +0100
+++ new/YAML-1.28/lib/YAML.pod 2019-04-28 11:46:38.000000000 +0200
@@ -12,7 +12,7 @@
=head1 VERSION
-This document describes L<YAML> version B<1.27>.
+This document describes L<YAML> version B<1.28>.
=head1 NOTE
@@ -405,6 +405,10 @@
C<eval()>. Since this is potentially risky, only use this option if you know
where your YAML has been.
+LoadCode must be enabled also to use the feature of evaluating typeglobs
+(because with the typeglob feature you would be able to set the variable
+C<$YAML::LoadCode> from a YAML file).
+
=item Preserve
When set to true, this option tells the Loader to load hashes into YAML::Node
@@ -716,7 +720,7 @@
=head1 COPYRIGHT AND LICENSE
-Copyright 2001-2018. Ingy döt Net.
+Copyright 2001-2019. Ingy döt Net.
This program is free software; you can redistribute it and/or modify it under
the same terms as Perl itself.
1
0
Hello community,
here is the log from the commit of package meson for openSUSE:Factory checked in at 2019-05-06 21:13:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/meson (Old)
and /work/SRC/openSUSE:Factory/.meson.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "meson"
Mon May 6 21:13:16 2019 rev:42 rq:700684 version:0.50.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/meson/meson.changes 2019-03-01 20:29:47.834005906 +0100
+++ /work/SRC/openSUSE:Factory/.meson.new.5148/meson.changes 2019-05-06 21:13:18.468431928 +0200
@@ -1,0 +2,302 @@
+Wed Apr 17 11:51:11 UTC 2019 - Dominique Leuenberger <dimstar(a)opensuse.org>
+
+- Update to version 0.50.1:
+ + d: Fix linker errors with shared libraries.
+ + Add support for VS2019 (gh#mesonbuild/meson#4640).
+ + Detect 'arm64' as aarch64 CPU family.
+ + Fix Rust global and local args (gh#mesonbuild/meson#5101).
+
+-------------------------------------------------------------------
+Mon Mar 11 12:30:24 UTC 2019 - Dominique Leuenberger <dimstar(a)opensuse.org>
+
+- Fixup meson-suse-ify-macros.patch post broken rebase.
+
+-------------------------------------------------------------------
+Sun Mar 10 18:57:41 UTC 2019 - klaatu <aloisio(a)gmx.com>
+
+- Update to version 0.50.0
+ New features:
+ * Added `cmake_module_path` and `cmake_args` to dependency
+ The CMake dependency backend can now make use of existing
+ `Find<name>.cmake` files by setting the `CMAKE_MODULE_PATH`
+ with the new `dependency()` property `cmake_module_path`.
+ The paths given to `cmake_module_path` should be relative
+ to the project source directory.
+ Furthermore the property `cmake_args` was added to give
+ CMake additional parameters.
+ * Added PGI compiler support
+ Nvidia / PGI C, C++ and Fortran
+ [no-cost](https://www.pgroup.com/products/community.htm)
+ compilers are now supported. They have been tested on Linux
+ so far.
+ * Fortran Coarray
+ Fortran 2008 / 2018 coarray support was added via
+ `dependency('coarray')`
+ * Libdir defaults to `lib` when cross compiling
+ Previously `libdir` defaulted to the value of the build
+ machine such as `lib/x86_64-linux-gnu`, which is almost
+ always incorrect when cross compiling. It now defaults to
+ plain `lib` when cross compiling. Native builds remain
+ unchanged and will point to the current system's library
+ dir.
+ * Native and Cross File Paths and Directories
+ A new `[paths]` section has been added to native and cross
+ files. This can be used to set paths such a prefix and
+ libdir in a persistent way.
+ * Add warning_level 0 option
+ Adds support for a warning level 0 which does not enable any
+ static analysis checks from the compiler
+ * A builtin target to run clang-format
+ If you have `clang-format` installed and there is a
+ `.clang-format` file in the root of your master project,
+ Meson will generate a run target called `clang-format` so you
+ can reformat all files with one command:
+ ```meson
+ ninja clang-format
+ ```
+ * Added a .path() method to object return by
+ python.find_installation()
+ `ExternalProgram` objects as well as the object returned by
+ the `python3` module provide this method, but the new python
+ module did not.
+ * Fix ninja console log from generators with multiple output
+ nodes
+ This resolves ticket #4760 where a generator w/ multiple
+ output nodes printed an empty string to the console
+ * `introspect --buildoptions` can now be used without
+ configured build directory
+ It is now possible to run `meson introspect --buildoptions
+ /path/to/meson.build` without a configured build directory.
+ Running `--buildoptions` without a build directory produces
+ the same output as running it with a freshly configured
+ build directory.
+ However, this behavior is not guaranteed if subprojects are
+ present. Due to internal limitations all subprojects are
+ processed even if they are never used in a real meson run.
+ Because of this options for the subprojects can differ.
+ * `include_directories` accepts a string
+ The `include_directories` keyword argument now accepts plain
+ strings rather than an include directory object. Meson will
+ transparently expand it so that a declaration like this:
+ ```meson
+ executable(..., include_directories: 'foo')
+ ```
+ Is equivalent to this:
+ ```meson
+ foo_inc = include_directories('foo')
+ executable(..., include_directories: inc)
+ ```
+ * Fortran submodule support
+ Initial support for Fortran ``submodule`` was added, where
+ the submodule is in the same or different file than the
+ parent ``module``.
+ The submodule hierarchy specified in the source Fortran code
+ `submodule` statements are used by Meson to resolve source
+ file dependencies.
+ For example:
+ ```fortran
+ submodule (ancestor:parent) child
+ ```
+ * Add subproject_dir to --projectinfo introspection output
+ This allows applications interfacing with Meson (such as
+ IDEs) to know about an overridden subproject directory.
+ * Find library with its headers
+ The `find_library()` method can now also verify if the
+ library's headers are found in a single call, using the
+ `has_header()` method internally.
+ ```meson
+ + Aborts if the 'z' library is found but not its header file
+ zlib = find_library('z', has_headers : 'zlib.h')
+ + Returns not-found if the 'z' library is found but not its
+ header file zlib = find_library('z', has_headers :
+ 'zlib.h', required : false)
+ ```
+ Any keyword argument with the `header_` prefix passed to
+ `find_library()` will be passed to the `has_header()`
+ method with the prefix removed.
+ ```meson
+ libfoo = find_library('foo',
+ has_headers : ['foo.h', 'bar.h'],
+ header_prefix : '#include <baz.h>',
+ header_include_directories : include_directories('.'))
+ ```
+ * NetCDF
+ NetCDF support for C, C++ and Fortran is added via
+ pkg-config.
+ * added the Flang compiler
+ [Flang](https://github.com/flang-compiler/flang/releases)
+ Fortran compiler support was added. As with other Fortran
+ compilers, flang is specified using `FC=flang meson ..` or
+ similar.
+ * New `not_found_message` for dependency
+ You can now specify a `not_found_message` that will be
+ printed if the specified dependency was not found. The point
+ is to convert constructs
+ that look like this:
+ ```meson
+ d = dependency('something', required: false)
+ if not d.found()
+ message('Will not be able to do something.')
+ endif
+ ```
+ Into this:
+ ```meson
+ d = dependency('something',
+ required: false,
+ not_found_message: 'Will not be able to do something.')
+ ```
+ Or constructs like this:
+ ```meson
+ d = dependency('something', required: false)
+ if not d.found()
+ error('Install something by doing XYZ.')
+ endif
+ ```
+ into this:
+ ```meson
+ d = dependency('something',
+ not_found_message: 'Install something by doing XYZ.')
+ ```
+ Which works, because the default value of `required` is
+ `true`.
+ * Cuda support
+ Compiling Cuda source code is now supported, though only
+ with the
+ Ninja backend. This has been tested only on Linux for now.
+ Because NVidia's Cuda compiler does not produce `.d`
+ dependency files, dependency tracking does not work.
+ * `run_command` accepts `env` kwarg
+ You can pass
+ [`environment`](Reference-manual.html#environment-object)
+ object to
+ [`run_command`](Reference-manual.html#run-command), just
+ like to `test`:
+ ```meson
+ env = environment()
+ env.set('FOO', 'bar')
+ run_command('command', 'arg1', 'arg2', env: env)
+ ```
+ * `extract_objects` accepts `File` arguments
+ The `extract_objects` function now supports File objects to
+ tell it what to extract. Previously, file paths could only
+ be passed as strings.
+ * Changed the JSON format of the introspection
+ All paths used in the meson introspection JSON format are
+ now absolute. This affects the `filename` key in the targets
+ introspection and the output of
+ `--buildsystem-files`.
+ Furthermore, the `filename` and `install_filename` keys in
+ the targets introspection are now lists of strings with
+ identical length.
+ The `--target-files` option is now deprecated, since the
+ same information can be acquired from the `--tragets`
+ introspection API.
+ * Meson file rewriter
+ This release adds the functionality to perform some basic
+ modification on the `meson.build` files from the command
+ line. The currently supported operations are:
++++ 105 more lines (skipped)
++++ between /work/SRC/openSUSE:Factory/meson/meson.changes
++++ and /work/SRC/openSUSE:Factory/.meson.new.5148/meson.changes
Old:
----
meson-0.49.2.tar.gz
meson-0.49.2.tar.gz.asc
New:
----
meson-0.50.1.tar.gz
meson-0.50.1.tar.gz.asc
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ meson.spec ++++++
--- /var/tmp/diff_new_pack.GSdZUt/_old 2019-05-06 21:13:20.472438773 +0200
+++ /var/tmp/diff_new_pack.GSdZUt/_new 2019-05-06 21:13:20.508438896 +0200
@@ -28,7 +28,7 @@
%{!?vim_data_dir:%global vim_data_dir %{_datadir}/vim}
%bcond_with setuptools
Name: meson%{name_ext}
-Version: 0.49.2
+Version: 0.50.1
Release: 0
Summary: Python-based build system
License: Apache-2.0
++++++ meson-0.49.2.tar.gz -> meson-0.50.1.tar.gz ++++++
++++ 23456 lines of diff (skipped)
++++++ meson-suse-ify-macros.patch ++++++
--- /var/tmp/diff_new_pack.GSdZUt/_old 2019-05-06 21:13:21.752442721 +0200
+++ /var/tmp/diff_new_pack.GSdZUt/_new 2019-05-06 21:13:21.752442721 +0200
@@ -1,5 +1,7 @@
---- a/data/macros.meson
-+++ b/data/macros.meson
+Index: meson-0.50.0/data/macros.meson
+===================================================================
+--- meson-0.50.0.orig/data/macros.meson
++++ meson-0.50.0/data/macros.meson
@@ -1,9 +1,15 @@
%__meson %{_bindir}/meson
%__meson_wrap_mode nodownload
@@ -17,7 +19,7 @@
%{shrink:%{__meson} \
--buildtype=plain \
--prefix=%{_prefix} \
-@@ -25,12 +31,15 @@
+@@ -25,10 +31,13 @@
%{nil}}
%meson_build \
@@ -30,6 +32,4 @@
%meson_test \
+ export LANG=C.UTF-8 \
- %ninja_test -C %{_vpath_builddir} || \
- ( rc=$?; \
- echo "-----BEGIN TESTLOG-----"; \
+ %ninja_test -C %{_vpath_builddir}
1
0
Hello community,
here is the log from the commit of package containerd for openSUSE:Factory checked in at 2019-05-06 21:13:09
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/containerd (Old)
and /work/SRC/openSUSE:Factory/.containerd.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "containerd"
Mon May 6 21:13:09 2019 rev:31 rq:700632 version:1.2.5
Changes:
--------
--- /work/SRC/openSUSE:Factory/containerd/containerd.changes 2019-03-26 22:28:05.777768426 +0100
+++ /work/SRC/openSUSE:Factory/.containerd.new.5148/containerd.changes 2019-05-06 21:13:12.860412771 +0200
@@ -1,0 +2,7 @@
+Fri May 3 13:32:05 UTC 2019 - Aleksa Sarai <asarai(a)suse.com>
+
+- Update to containerd v1.2.5, which is required for v18.09.5-ce.
+ bsc#1128376 boo#1134068
+ https://github.com/containerd/containerd/releases/tag/v1.2.5
+
+-------------------------------------------------------------------
@@ -31 +37,0 @@
-
Old:
----
containerd-git.e6b3f5632f50.tar.xz
New:
----
containerd-1.2.5_bb71b10fd8f5.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ containerd.spec ++++++
--- /var/tmp/diff_new_pack.UvXPZN/_old 2019-05-06 21:13:13.500414957 +0200
+++ /var/tmp/diff_new_pack.UvXPZN/_new 2019-05-06 21:13:13.504414971 +0200
@@ -34,18 +34,17 @@
%endif
# MANUAL: Update the git_version.
-%define containerd_version 1.2.4
-%define git_version e6b3f5632f50dbc4e9cb6288d911bf4f5e95b18e
-%define git_short e6b3f5632f50
+%define git_version bb71b10fd8f58240ca47fbb579b9d1028eea7c84
+%define git_short bb71b10fd8f5
Name: %{realname}%{name_suffix}
-Version: %{containerd_version}
+Version: 1.2.5
Release: 0
Summary: Standalone OCI Container Daemon
License: Apache-2.0
Group: System/Management
Url: https://containerd.tools
-Source: %{realname}-git.%{git_short}.tar.xz
+Source: %{realname}-%{version}_%{git_short}.tar.xz
Source1: %{realname}-rpmlintrc
# OPENSUSE-FIX-UPSTREAM: Backport of https://github.com/containerd/containerd/pull/2764.
Patch1: 0001-makefile-remove-emoji.patch
@@ -55,7 +54,7 @@
BuildRequires: libbtrfs-devel >= 3.8
BuildRequires: libseccomp-devel >= 2.2
BuildRequires: pkg-config
-BuildRequires: golang(API) = 1.10
+BuildRequires: golang(API) >= 1.11
# We provide a git revision so that Docker can require it properly.
Provides: %{name}-git = %{git_version}
# Currently runc is the only supported runtime for containerd. We pin the same
@@ -91,7 +90,6 @@
Summary: Client for %{name}
Group: System/Management
Requires: %{name} = %{version}
-BuildRequires: golang(API) = 1.10
# KUBIC-SPECIFIC: This was required when upgrading from the original kubic
# packaging, when everything was renamed to -kubic. It also is
# used to ensure that nothing complains too much when using
@@ -111,7 +109,6 @@
%package test
Summary: Test package for containerd
Group: System/Management
-BuildRequires: golang(API) = 1.10
BuildArch: noarch
# KUBIC-SPECIFIC: This was required when upgrading from the original kubic
# packaging, when everything was renamed to -kubic. It also is
@@ -129,7 +126,7 @@
Test package for containerd. It contains the source code and the tests.
%prep
-%setup -q -n %{realname}-git.%{git_short}
+%setup -q -n %{realname}-%{version}_%{git_short}
%patch1 -p1
%build
++++++ _service ++++++
--- /var/tmp/diff_new_pack.UvXPZN/_old 2019-05-06 21:13:13.552415134 +0200
+++ /var/tmp/diff_new_pack.UvXPZN/_new 2019-05-06 21:13:13.556415148 +0200
@@ -3,8 +3,8 @@
<param name="url">https://github.com/containerd/containerd.git</param>
<param name="scm">git</param>
<param name="filename">containerd</param>
- <param name="versionformat">git.%h</param>
- <param name="revision">v1.2.4</param>
+ <param name="versionformat">1.2.5_%h</param>
+ <param name="revision">v1.2.5</param>
<param name="exclude">.git</param>
</service>
<service name="recompress" mode="disabled">
1
0
Hello community,
here is the log from the commit of package docker-runc for openSUSE:Factory checked in at 2019-05-06 21:13:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/docker-runc (Old)
and /work/SRC/openSUSE:Factory/.docker-runc.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "docker-runc"
Mon May 6 21:13:02 2019 rev:18 rq:700631 version:1.0.0rc6+gitr3804_2b18fe1d885e
Changes:
--------
--- /work/SRC/openSUSE:Factory/docker-runc/docker-runc.changes 2019-04-28 19:58:12.438980040 +0200
+++ /work/SRC/openSUSE:Factory/.docker-runc.new.5148/docker-runc.changes 2019-05-06 21:13:04.168383080 +0200
@@ -1,0 +2,8 @@
+Fri May 3 13:22:02 UTC 2019 - Aleksa Sarai <asarai(a)suse.com>
+
+- Update to runc 2b18fe1d885e, which is required for Docker v18.09.5-ce.
+ bsc#1128376 boo#1134068
+- Remove patches which were merged upstream:
+ - bsc1131553-0001-nsenter-cloned_binary-various-cleanups.patch
+
+-------------------------------------------------------------------
Old:
----
bsc1131553-0001-nsenter-cloned_binary-various-cleanups.patch
docker-runc-git.6635b4f0c6af3810594d2770f662f34ddc15b40d.tar.xz
New:
----
docker-runc-git.2b18fe1d885ee5083ef9f0838fee39b62d653e30.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ docker-runc.spec ++++++
--- /var/tmp/diff_new_pack.22OgJa/_old 2019-05-06 21:13:04.576384472 +0200
+++ /var/tmp/diff_new_pack.22OgJa/_new 2019-05-06 21:13:04.580384486 +0200
@@ -29,14 +29,14 @@
%endif
# MANUAL: Update the git_version, git_short, and git_revision
-%define git_version 6635b4f0c6af3810594d2770f662f34ddc15b40d
-%define git_short 6635b4f0c6af
+%define git_version 2b18fe1d885ee5083ef9f0838fee39b62d653e30
+%define git_short 2b18fe1d885e
# How to get the git_revision
# git clone ${url}.git runc-upstream
# cd runc-upstream
# git checkout $git_version
# git_revision=r$(git rev-list HEAD | wc -l)
-%define git_revision r3778
+%define git_revision r3804
%define go_tool go
%define _name runc
@@ -51,14 +51,12 @@
Url: https://github.com/opencontainers/runc
Source: %{realname}-git.%{git_version}.tar.xz
Source1: %{realname}-rpmlintrc
-# SUSE-FIX: Backport of various upstream patches. bsc#1131314 bsc#1131553
-Patch: bsc1131553-0001-nsenter-cloned_binary-various-cleanups.patch
BuildRequires: fdupes
BuildRequires: go-go-md2man
BuildRequires: libapparmor-devel
BuildRequires: libseccomp-devel >= 2.2
BuildRequires: libselinux-devel
-BuildRequires: golang(API) = 1.10
+BuildRequires: golang(API) >= 1.10
Recommends: criu
Obsoletes: runc <= 1.0
# We provide a git revision so that Docker can require it properly.
@@ -115,8 +113,6 @@
%prep
%setup -q -n %{realname}-git.%{git_version}
-# bsc#1131314 bsc#1131553
-%patch -p1
%build
# Do not use symlinks. If you want to run the unit tests for this package at
++++++ _service ++++++
--- /var/tmp/diff_new_pack.22OgJa/_old 2019-05-06 21:13:04.604384568 +0200
+++ /var/tmp/diff_new_pack.22OgJa/_new 2019-05-06 21:13:04.604384568 +0200
@@ -4,7 +4,7 @@
<param name="scm">git</param>
<param name="filename">docker-runc</param>
<param name="versionformat">git.%H</param>
- <param name="revision">6635b4f0c6af3810594d2770f662f34ddc15b40d</param>
+ <param name="revision">2b18fe1d885ee5083ef9f0838fee39b62d653e30</param>
<param name="exclude">.git</param>
</service>
<service name="recompress" mode="disabled">
++++++ docker-runc-git.6635b4f0c6af3810594d2770f662f34ddc15b40d.tar.xz -> docker-runc-git.2b18fe1d885ee5083ef9f0838fee39b62d653e30.tar.xz ++++++
++++ 4256 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package openblas for openSUSE:Factory checked in at 2019-05-06 21:12:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openblas (Old)
and /work/SRC/openSUSE:Factory/.openblas.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openblas"
Mon May 6 21:12:42 2019 rev:26 rq:700583 version:0.3.6
Changes:
--------
--- /work/SRC/openSUSE:Factory/openblas/openblas.changes 2019-03-14 14:51:09.611798354 +0100
+++ /work/SRC/openSUSE:Factory/.openblas.new.5148/openblas.changes 2019-05-06 21:12:44.268315101 +0200
@@ -1,0 +2,72 @@
+Tue Apr 30 07:42:06 UTC 2019 - Martin Liška <mliska(a)suse.cz>
+
+- Update to version 0.3.6 (boo#1122186)
+ common:
+ * the build tools now check that a given cpu TARGET is actually valid
+ * the build-time check of system features (c_check) has been made
+ less dependent on particular perl features (this should mainly
+ benefit building on Windows)
+ * several problems with ReLAPACK and its integration were fixed,
+ including INTERFACE64 support and building a shared library
+ * building with CMAKE on BSD systems was improved
+ * a non-absolute SUM function was added based on the
+ existing optimized code for ASUM
+ * CBLAS interfaces to the IxMIN and IxMAX functions were added
+ * a name clash between LAPACKE and BOOST headers was resolved
+ * CMAKE builds with OpenMP failed to include the appropriate getrf_parallel
+ kernels
+ * a crash on thread (key) deletion with the USE_TLS=1 memory management
+ option was fixed
+ * restored several earlier fixes, in particular for OpenMP performance,
+ building on BSD, and calling fork on CYGWIN, which had inadvertently
+ been dropped in the 0.3.3 rewrite of the memory management code.
+ POWER:
+ * single precision BLAS1/2 functions have received optimized POWER8 kernels
+ * POWER9 is now a separate target, with an optimized DGEMM/DTRMM kernel
+ * building on PPC970 systems under OSX Leopard or Tiger is now supported
+ * out-of-bounds memory accesses in the gemm_beta microkernels were fixed
+ * building a shared library on AIX is now supported for POWER6
+ * DYNAMIC_ARCH support has been added for POWER6 and newer
+ ARMV7:
+ * corrected xDOT behaviour with zero INC_X or INC_Y
+ * a bug in the IMIN implementation made it return the result of IMAX
+ ARMV8:
+ * added support for HiSilicon TSV110 cpus
+ * the CMAKE build system now recognizes 32bit userspace on 64bit hardware
+ * cross-compilation with CMAKE now works again
+ * a bug in the IMIN implementation made it return the result of IMAX
+ * ARMV8 builds with the BINARY=32 option are now automatically handled as ARMV7
+ x86_64:
+ * the AVX512 DGEMM kernel has been disabled again due to unsolved problems
+ * building with old versions of MSVC was fixed
+ * it is now possible to build a static library on Windows with CMAKE
+ * accessing environment variables on CYGWIN at run time was fixed
+ * the CMAKE build system now recognizes 32bit userspace on 64bit hardware
+ * Intel "Denverton" atom and Hygon "Dhyana" zen CPUs are now autodetected
+ * building for DYNAMIC_ARCH with a DYNAMIC_LIST of targets is now supported
+ with CMAKE as well
+ * building for DYNAMIC_ARCH with GENERIC as the default target is now supported
+ * a buffer overflow in the SSE GEMM kernel for Intel Nano targets was fixed
+ * assembly bugs involving undeclared modification of input operands were fixed
+ in the AXPY, DOT, GEMV, GER, SCAL, SYMV and TRSM microkernels for Nehalem,
+ Sandybridge, Haswell, Bulldozer and Piledriver. These would typically cause
+ test failures or segfaults when compiled with recent versions of gcc from 8 onward.
+ * a similar bug was fixed in the blas_quickdivide code used to split workloads
+ in most functions
+ * a bug in the IxMIN implementation for the GENERIC target made it return the result of IxMAX
+ * fixed building on SkylakeX systems when either the compiler or the (emulated) operating
+ environment does not support AVX512
+ * improved GEMM performance on ZEN targets
+ x86:
+ * build failures caused by the recently added checks for AVX512 were fixed
+ * an inline assembly bug involving undeclared modification of an input argument was
+ fixed in the blas_quickdivide code used to split workloads in most functions
+ * a bug in the IMIN implementation for the GENERIC target made it return the result of IMAX
+ MIPS32:
+ * a bug in the IMIN implementation made it return the result of IMAX
+ IBM Z:
+ * optimized microkernels for single precicion BLAS1/2 functions have been added for Z13 and Z14
+ - Rebase openblas-noexecstack.patch and openblas-s390.patch patches.
+ - Remove 0001-Add-a-register-to-the-clobber-list-for-the-mul-instr.patch.
+
+-------------------------------------------------------------------
Old:
----
0001-Add-a-register-to-the-clobber-list-for-the-mul-instr.patch
OpenBLAS-0.3.5.tar.gz
New:
----
OpenBLAS-0.3.6.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ openblas.spec ++++++
--- /var/tmp/diff_new_pack.mIGptC/_old 2019-05-06 21:12:46.564322944 +0200
+++ /var/tmp/diff_new_pack.mIGptC/_new 2019-05-06 21:12:46.584323012 +0200
@@ -18,8 +18,8 @@
%global flavor @BUILD_FLAVOR@%{nil}
-%define _vers 0_3_5
-%define vers 0.3.5
+%define _vers 0_3_6
+%define vers 0.3.6
%define pname openblas
%bcond_with ringdisabled
@@ -131,8 +131,6 @@
Patch2: fix-arm64-cpuid-return.patch
# PATCH port
Patch3: openblas-s390.patch
-# PATCH-FIX-OPENSUSE 0001-Add-a-register-to-the-clobber-list-for-the-mul-instr.patch
-Patch4: 0001-Add-a-register-to-the-clobber-list-for-the-mul-instr.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
@@ -242,7 +240,6 @@
%ifarch s390
sed -i -e "s@m32@m31@" Makefile.system
%endif
-%patch4 -p1
%if %{without hpc}
cp %{SOURCE1} .
++++++ OpenBLAS-0.3.5.tar.gz -> OpenBLAS-0.3.6.tar.gz ++++++
/work/SRC/openSUSE:Factory/openblas/OpenBLAS-0.3.5.tar.gz /work/SRC/openSUSE:Factory/.openblas.new.5148/OpenBLAS-0.3.6.tar.gz differ: char 18, line 1
++++++ openblas-noexecstack.patch ++++++
--- /var/tmp/diff_new_pack.mIGptC/_old 2019-05-06 21:12:47.428325896 +0200
+++ /var/tmp/diff_new_pack.mIGptC/_new 2019-05-06 21:12:47.440325937 +0200
@@ -1,16 +1,16 @@
-Index: OpenBLAS-0.2.20/exports/Makefile
-===================================================================
---- OpenBLAS-0.2.20.orig/exports/Makefile
-+++ OpenBLAS-0.2.20/exports/Makefile
-@@ -137,6 +137,7 @@ else
- endif
+diff --git a/exports/Makefile b/exports/Makefile
+index b1348bd4..642618ce 100644
+--- a/exports/Makefile
++++ b/exports/Makefile
+@@ -151,6 +151,7 @@ else
+
ifneq ($(C_COMPILER), LSB)
$(CC) $(CFLAGS) $(LDFLAGS) -shared -o ../$(LIBSONAME) \
+ -Wl,-z,noexecstack \
-Wl,--whole-archive $< -Wl,--no-whole-archive \
-Wl,-soname,$(INTERNALNAME) $(EXTRALIB)
$(CC) $(CFLAGS) $(LDFLAGS) -w -o linktest linktest.c ../$(LIBSONAME) $(FEXTRALIB) && echo OK.
-@@ -164,6 +165,7 @@ else
+@@ -179,6 +180,7 @@ else
../$(LIBSONAME) : ../$(LIBNAME).renamed linktest.c
endif
$(CC) $(CFLAGS) $(LDFLAGS) -shared -o ../$(LIBSONAME) \
@@ -18,7 +18,7 @@
-Wl,--whole-archive $< -Wl,--no-whole-archive \
$(FEXTRALIB) $(EXTRALIB)
$(CC) $(CFLAGS) $(LDFLAGS) -w -o linktest linktest.c ../$(LIBSONAME) $(FEXTRALIB) && echo OK.
-@@ -183,6 +185,7 @@ ifeq ($(OSNAME), SunOS)
+@@ -198,6 +200,7 @@ ifeq ($(OSNAME), SunOS)
so : ../$(LIBSONAME)
$(CC) $(CFLAGS) $(LDFLAGS) -shared -o ../$(LIBSONAME) \
++++++ openblas-s390.patch ++++++
--- /var/tmp/diff_new_pack.mIGptC/_old 2019-05-06 21:12:47.608326510 +0200
+++ /var/tmp/diff_new_pack.mIGptC/_new 2019-05-06 21:12:47.632326592 +0200
@@ -1,17 +1,21 @@
---- OpenBLAS-0.2.20/c_check 2018/01/19 15:53:41 1.1
-+++ OpenBLAS-0.2.20/c_check 2018/01/19 15:54:23
-@@ -10,7 +10,7 @@
+diff --git a/c_check b/c_check
+index d93b756d..0b0bb426 100644
+--- a/c_check
++++ b/c_check
+@@ -10,7 +10,7 @@ $hostarch = "x86_64" if ($hostarch eq "amd64");
$hostarch = "arm" if ($hostarch =~ /^arm.*/);
$hostarch = "arm64" if ($hostarch eq "aarch64");
$hostarch = "power" if ($hostarch =~ /^(powerpc|ppc).*/);
-$hostarch = "zarch" if ($hostarch eq "s390x");
+$hostarch = "zarch" if ($hostarch =~ /^s390/);
- $tmpf = new File::Temp( UNLINK => 1 );
+ #$tmpf = new File::Temp( UNLINK => 1 );
$binary = $ENV{"BINARY"};
---- OpenBLAS-0.2.20/ctest.c 2018/01/19 15:54:29 1.1
-+++ OpenBLAS-0.2.20/ctest.c 2018/01/19 15:54:49
-@@ -105,7 +105,7 @@
+diff --git a/ctest.c b/ctest.c
+index 5e869b90..13252b46 100644
+--- a/ctest.c
++++ b/ctest.c
+@@ -117,7 +117,7 @@ ARCH_X86_64
ARCH_POWER
#endif
@@ -20,9 +24,11 @@
ARCH_ZARCH
#endif
---- OpenBLAS-0.2.20/getarch.c 2018/01/19 15:54:57 1.1
-+++ OpenBLAS-0.2.20/getarch.c 2018/01/19 15:55:07
-@@ -974,7 +974,7 @@
+diff --git a/getarch.c b/getarch.c
+index 4d960356..5fa1063b 100644
+--- a/getarch.c
++++ b/getarch.c
+@@ -1138,7 +1138,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#define OPENBLAS_SUPPORTED
#endif
1
0
Hello community,
here is the log from the commit of package glib2 for openSUSE:Factory checked in at 2019-05-06 21:12:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/glib2 (Old)
and /work/SRC/openSUSE:Factory/.glib2.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "glib2"
Mon May 6 21:12:35 2019 rev:208 rq:700575 version:2.60.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/glib2/glib2.changes 2019-05-03 22:20:42.160498748 +0200
+++ /work/SRC/openSUSE:Factory/.glib2.new.5148/glib2.changes 2019-05-06 21:12:36.652289085 +0200
@@ -1,0 +2,10 @@
+Fri May 3 17:19:40 UTC 2019 - Bjørn Lie <bjorn.lie(a)gmail.com>
+
+- Update to version 2.60.2:
+ + Fix crash when displaying notifications on macOS.
+ + Improve network status detection with NetworkManager.
+ + Bugs fixed: glgo#GNOME/GLib!790, glgo#GNOME/GLib!793,
+ glgo#GNOME/GLib!803.
+ + Updated translations.
+
+-------------------------------------------------------------------
Old:
----
glib-2.60.1.tar.xz
New:
----
glib-2.60.2.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ glib2.spec ++++++
--- /var/tmp/diff_new_pack.wO4GLz/_old 2019-05-06 21:12:37.280291230 +0200
+++ /var/tmp/diff_new_pack.wO4GLz/_new 2019-05-06 21:12:37.280291230 +0200
@@ -19,7 +19,7 @@
# systemtap is only offered as build-option, but not enabled, as it causes a build cycle
%bcond_with systemtap
Name: glib2
-Version: 2.60.1
+Version: 2.60.2
Release: 0
Summary: General-Purpose Utility Library
License: LGPL-2.1-or-later
++++++ glib-2.60.1.tar.xz -> glib-2.60.2.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/glib-2.60.1/NEWS new/glib-2.60.2/NEWS
--- old/glib-2.60.1/NEWS 2019-04-15 12:54:04.000000000 +0200
+++ new/glib-2.60.2/NEWS 2019-05-03 15:43:28.000000000 +0200
@@ -1,3 +1,19 @@
+Overview of changes in GLib 2.60.2
+==================================
+
+* Fix crash when displaying notifications on macOS (!786)
+
+* Improve network status detection with NetworkManager (!781)
+
+* Bugs fixed:
+ - !790 glib/gconstructor.h: Include stdlib.h for MSVC builds
+ - !793 Backport !786: “cocoanotificationbackend: do not release readonly property” to glib-2-60
+ - !803 Backport !781 “gnetworkmonitornm: Fix network available detection” to glib-2-60
+
+* Translation updates:
+ - Catalan
+
+
Overview of changes in GLib 2.60.1
==================================
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/glib-2.60.1/gio/gcocoanotificationbackend.m new/glib-2.60.2/gio/gcocoanotificationbackend.m
--- old/glib-2.60.1/gio/gcocoanotificationbackend.m 2019-04-15 12:54:04.000000000 +0200
+++ new/glib-2.60.2/gio/gcocoanotificationbackend.m 2019-05-03 15:43:28.000000000 +0200
@@ -258,7 +258,6 @@
}
}
- [notifications release];
[str_id release];
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/glib-2.60.1/gio/gnetworkmonitornm.c new/glib-2.60.2/gio/gnetworkmonitornm.c
--- old/glib-2.60.1/gio/gnetworkmonitornm.c 2019-04-15 12:54:04.000000000 +0200
+++ new/glib-2.60.2/gio/gnetworkmonitornm.c 2019-05-03 15:43:28.000000000 +0200
@@ -52,6 +52,19 @@
NM_CONNECTIVITY_FULL
} NMConnectivityState;
+/* Copied from https://developer.gnome.org/libnm-util/stable/libnm-util-NetworkManager.htm…;
+ * used inline to avoid a NetworkManager dependency from GLib. */
+typedef enum {
+ NM_STATE_UNKNOWN = 0,
+ NM_STATE_ASLEEP = 10,
+ NM_STATE_DISCONNECTED = 20,
+ NM_STATE_DISCONNECTING = 30,
+ NM_STATE_CONNECTING = 40,
+ NM_STATE_CONNECTED_LOCAL = 50,
+ NM_STATE_CONNECTED_SITE = 60,
+ NM_STATE_CONNECTED_GLOBAL = 70,
+} NMState;
+
struct _GNetworkMonitorNMPrivate
{
GDBusProxy *proxy;
@@ -155,11 +168,19 @@
gboolean emit_signals)
{
GVariant *v;
+ NMState nm_state;
NMConnectivityState nm_connectivity;
gboolean new_network_available;
gboolean new_network_metered;
GNetworkConnectivity new_connectivity;
+ v = g_dbus_proxy_get_cached_property (nm->priv->proxy, "State");
+ if (!v)
+ return;
+
+ nm_state = g_variant_get_uint32 (v);
+ g_variant_unref (v);
+
v = g_dbus_proxy_get_cached_property (nm->priv->proxy, "Connectivity");
if (!v)
return;
@@ -167,14 +188,26 @@
nm_connectivity = g_variant_get_uint32 (v);
g_variant_unref (v);
- if (nm_connectivity == NM_CONNECTIVITY_UNKNOWN ||
- nm_connectivity == NM_CONNECTIVITY_NONE)
+ if (nm_state <= NM_STATE_CONNECTED_LOCAL)
{
new_network_available = FALSE;
new_network_metered = FALSE;
new_connectivity = G_NETWORK_CONNECTIVITY_LOCAL;
}
- else
+ else if (nm_state <= NM_STATE_CONNECTED_SITE)
+ {
+ new_network_available = FALSE;
+ new_network_metered = FALSE;
+ if (nm_connectivity == NM_CONNECTIVITY_PORTAL)
+ {
+ new_connectivity = G_NETWORK_CONNECTIVITY_PORTAL;
+ }
+ else
+ {
+ new_connectivity = G_NETWORK_CONNECTIVITY_LIMITED;
+ }
+ }
+ else /* nm_state == NM_STATE_CONNECTED_FULL */
{
/* this is only available post NM 1.0 */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/glib-2.60.1/glib/gconstructor.h new/glib-2.60.2/glib/gconstructor.h
--- old/glib-2.60.1/glib/gconstructor.h 2019-04-15 12:54:04.000000000 +0200
+++ new/glib-2.60.2/glib/gconstructor.h 2019-05-03 15:43:28.000000000 +0200
@@ -28,6 +28,8 @@
#elif defined (_MSC_VER) && (_MSC_VER >= 1500)
/* Visual studio 2008 and later has _Pragma */
+#include <stdlib.h>
+
#define G_HAS_CONSTRUCTORS 1
/* We do some weird things to avoid the constructors being optimized
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/glib-2.60.1/meson.build new/glib-2.60.2/meson.build
--- old/glib-2.60.1/meson.build 2019-04-15 12:54:04.000000000 +0200
+++ new/glib-2.60.2/meson.build 2019-05-03 15:43:28.000000000 +0200
@@ -1,5 +1,5 @@
project('glib', 'c', 'cpp',
- version : '2.60.1',
+ version : '2.60.2',
meson_version : '>= 0.48.0',
default_options : [
'buildtype=debugoptimized',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/glib-2.60.1/po/ca.po new/glib-2.60.2/po/ca.po
--- old/glib-2.60.1/po/ca.po 2019-04-15 12:54:04.000000000 +0200
+++ new/glib-2.60.2/po/ca.po 2019-05-03 15:43:28.000000000 +0200
@@ -12,16 +12,16 @@
msgstr ""
"Project-Id-Version: glib 2.8\n"
"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2019-02-12 14:26+0000\n"
-"PO-Revision-Date: 2019-02-21 17:05+0100\n"
-"Last-Translator: Jordi Mas <jmas(a)softcatala.org>\n"
+"POT-Creation-Date: 2019-03-05 18:03+0000\n"
+"PO-Revision-Date: 2019-04-17 18:01+0200\n"
+"Last-Translator: Robert Antoni Buj Gelonch <rbuj(a)fedoraproject.org>\n"
"Language-Team: Catalan <tradgnome(a)softcatala.org>\n"
"Language: ca\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Poedit 2.1.1\n"
+"X-Generator: Poedit 2.2.1\n"
"X-Project-Style: gnome\n"
#: gio/gapplication.c:499
@@ -162,7 +162,8 @@
msgid "Usage:\n"
msgstr "Forma d'ús:\n"
-#: gio/gapplication-tool.c:114 gio/gresource-tool.c:558 gio/gsettings-tool.c:696
+#: gio/gapplication-tool.c:114 gio/gresource-tool.c:558
+#: gio/gsettings-tool.c:696
msgid "Arguments:\n"
msgstr "Arguments:\n"
@@ -391,7 +392,8 @@
#: gio/gdbusaddress.c:261 gio/gdbusaddress.c:342
#, c-format
msgid "Error in address “%s” — the port attribute is malformed"
-msgstr "Hi ha un error a l'adreça «%s»: l'atribut del port no està ben formatat"
+msgstr ""
+"Hi ha un error a l'adreça «%s»: l'atribut del port no està ben formatat"
#: gio/gdbusaddress.c:272 gio/gdbusaddress.c:353
#, c-format
@@ -560,8 +562,8 @@
#: gio/gdbusauth.c:337
msgid "Unexpected lack of content trying to (safely) read a line"
msgstr ""
-"S'ha trobat una inesperada falta de contingut en llegir (de forma segura) una "
-"línia"
+"S'ha trobat una inesperada falta de contingut en llegir (de forma segura) "
+"una línia"
#: gio/gdbusauth.c:481
#, c-format
@@ -583,7 +585,8 @@
#: gio/gdbusauthmechanismsha1.c:274
#, c-format
-msgid "Permissions on directory “%s” are malformed. Expected mode 0700, got 0%o"
+msgid ""
+"Permissions on directory “%s” are malformed. Expected mode 0700, got 0%o"
msgstr ""
"Els permisos del directori «%s» no estan ben formatats. S'esperava el mode "
"0700 però s'ha obtingut el 0%o"
@@ -618,8 +621,8 @@
msgid ""
"Second token of line %d of the keyring at “%s” with content “%s” is malformed"
msgstr ""
-"El segon testimoni de la línia %d de l'anell de claus a «%s» amb el contingut "
-"«%s» no està ben formatat"
+"El segon testimoni de la línia %d de l'anell de claus a «%s» amb el "
+"contingut «%s» no està ben formatat"
#: gio/gdbusauthmechanismsha1.c:421
#, c-format
@@ -651,7 +654,8 @@
#: gio/gdbusauthmechanismsha1.c:654
#, c-format
msgid "Error opening keyring “%s” for writing: "
-msgstr "S'ha produït un error en obrir l'anell de claus «%s» per a escriptura: "
+msgstr ""
+"S'ha produït un error en obrir l'anell de claus «%s» per a escriptura: "
#: gio/gdbusauthmechanismsha1.c:850
#, c-format
@@ -668,19 +672,22 @@
msgstr "S'ha esgotat el temps d'espera"
#: gio/gdbusconnection.c:2518
-msgid "Unsupported flags encountered when constructing a client-side connection"
+msgid ""
+"Unsupported flags encountered when constructing a client-side connection"
msgstr ""
"S'han trobat senyaladors no implementats en construir-se la part de la "
"connexió del client"
#: gio/gdbusconnection.c:4147 gio/gdbusconnection.c:4494
#, c-format
-msgid "No such interface “org.freedesktop.DBus.Properties” on object at path %s"
+msgid ""
+"No such interface “org.freedesktop.DBus.Properties” on object at path %s"
msgstr ""
"No existeix la interfície «org.freedesktop.DBus.Properties» en l'objecte al "
"camí %s"
#: gio/gdbusconnection.c:4289
+#, c-format
msgid "No such property “%s”"
msgstr "No existeix la propietat «%s»"
@@ -691,7 +698,6 @@
#: gio/gdbusconnection.c:4312
#, c-format
-#| msgid "Property '%s' is not writable"
msgid "Property “%s” is not writable"
msgstr "La propietat «%s» no és d'escriptura"
@@ -699,8 +705,8 @@
#, c-format
msgid "Error setting property “%s”: Expected type “%s” but got “%s”"
msgstr ""
-"S'ha produït un error en establir la propietat «%s»: s'esperava el tipus «%s» "
-"però s'ha obtingut el «%s»"
+"S'ha produït un error en establir la propietat «%s»: s'esperava el tipus "
+"«%s» però s'ha obtingut el «%s»"
#: gio/gdbusconnection.c:4437 gio/gdbusconnection.c:4645
#: gio/gdbusconnection.c:6614
@@ -802,13 +808,14 @@
#, c-format
msgid "Expected NUL byte after the string “%s” but found byte %d"
msgstr ""
-"S'esperava el byte «NUL» després de la cadena «%s» però s'ha trobat el byte %d"
+"S'esperava el byte «NUL» després de la cadena «%s» però s'ha trobat el byte "
+"%d"
#: gio/gdbusmessage.c:1395
#, c-format
msgid ""
-"Expected valid UTF-8 string but found invalid bytes at byte offset %d (length "
-"of string is %d). The valid UTF-8 string up until that point was “%s”"
+"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
+"(length of string is %d). The valid UTF-8 string up until that point was “%s”"
msgstr ""
"S'esperava una cadena UTF-8 vàlida però s'han trobat bytes no vàlids a "
"l'òfset %d (la llargada de la cadena és %d). La cadena UTF-8 vàlida fins "
@@ -843,8 +850,8 @@
"Encountered array of type “a%c”, expected to have a length a multiple of %u "
"bytes, but found to be %u bytes in length"
msgstr ""
-"S'ha trobat una matriu de tipus «a%c» que s'esperava que tingués una llargada "
-"múltiple de %u bytes, però en realitat és de %u bytes"
+"S'ha trobat una matriu de tipus «a%c» que s'esperava que tingués una "
+"llargada múltiple de %u bytes, però en realitat és de %u bytes"
#: gio/gdbusmessage.c:1857
#, c-format
@@ -862,11 +869,11 @@
#: gio/gdbusmessage.c:2066
#, c-format
msgid ""
-"Invalid endianness value. Expected 0x6c (“l”) or 0x42 (“B”) but found value 0x"
-"%02x"
+"Invalid endianness value. Expected 0x6c (“l”) or 0x42 (“B”) but found value "
+"0x%02x"
msgstr ""
-"Valor d'ordenació de bits (endianness) no vàlid. S'esperava 0x6c («l») o 0x42 "
-"(«B») però s'ha trobat el valor 0x%02x"
+"Valor d'ordenació de bits (endianness) no vàlid. S'esperava 0x6c («l») o "
+"0x42 («B») però s'ha trobat el valor 0x%02x"
#: gio/gdbusmessage.c:2079
#, c-format
@@ -917,7 +924,8 @@
msgid ""
"Number of file descriptors in message (%d) differs from header field (%d)"
msgstr ""
-"El nombre de descriptors de fitxer al missatge (%d) difereix del camp de la capçalera (%d)"
+"El nombre de descriptors de fitxer al missatge (%d) difereix del camp de la "
+"capçalera (%d)"
#: gio/gdbusmessage.c:2686
msgid "Cannot serialize message: "
@@ -933,7 +941,8 @@
#: gio/gdbusmessage.c:2749
#, c-format
msgid ""
-"Message body has type signature “%s” but signature in the header field is “%s”"
+"Message body has type signature “%s” but signature in the header field is "
+"“%s”"
msgstr ""
"El cos del missatge té el tipus de signatura «%s» però la signatura en el "
"camp de la capçalera és «%s»"
@@ -961,7 +970,8 @@
#: gio/gdbusprivate.c:2120
msgid "Unable to load /var/lib/dbus/machine-id or /etc/machine-id: "
-msgstr "No s'ha pogut carregar «/var/lib/dbus/machine-id» o «/etc/machine-id»: "
+msgstr ""
+"No s'ha pogut carregar «/var/lib/dbus/machine-id» o «/etc/machine-id»: "
#: gio/gdbusproxy.c:1617
#, c-format
@@ -982,8 +992,8 @@
"and proxy was constructed with the G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START flag"
msgstr ""
"No es pot invocar el mètode: el servidor intermediari és per a un nom ben "
-"conegut %s sense cap propietari i el servidor intermediari s'ha construït amb "
-"el senyalador «G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START»"
+"conegut %s sense cap propietari i el servidor intermediari s'ha construït "
+"amb el senyalador «G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START»"
#: gio/gdbusserver.c:708
msgid "Abstract name space not supported"
@@ -1202,7 +1212,8 @@
#: gio/gdbus-tool.c:1132
#, c-format
msgid "Error parsing parameter %d of type “%s”: %s\n"
-msgstr "S'ha produït un error en analitzar el paràmetre %d del tipus «%s»: %s\n"
+msgstr ""
+"S'ha produït un error en analitzar el paràmetre %d del tipus «%s»: %s\n"
#: gio/gdbus-tool.c:1576
msgid "Destination name to introspect"
@@ -1242,7 +1253,9 @@
#: gio/gdbus-tool.c:1954
msgid "Error: can’t monitor a non-message-bus connection\n"
-msgstr "Error: no es pot fer un seguiment d'una connexió que no sigui de missatges del bus\n"
+msgstr ""
+"Error: no es pot fer un seguiment d'una connexió que no sigui de missatges "
+"del bus\n"
#: gio/gdbus-tool.c:2078
msgid "Service to activate before waiting for the other one (well-known name)"
@@ -1425,7 +1438,8 @@
#: gio/gfile.c:3149
msgid "Copy (reflink/clone) between mounts is not supported"
-msgstr "No està implementada la còpia (referències, clonacions) entre muntatges"
+msgstr ""
+"No està implementada la còpia (referències, clonacions) entre muntatges"
#: gio/gfile.c:3153
msgid "Copy (reflink/clone) is not supported or invalid"
@@ -1459,14 +1473,15 @@
#: gio/gfile.c:6884 gio/gfile.c:6930
msgid "No application is registered as handling this file"
-msgstr "No hi ha cap aplicació que s'hagi registrat per gestionar aquest fitxer"
+msgstr ""
+"No hi ha cap aplicació que s'hagi registrat per gestionar aquest fitxer"
#: gio/gfileenumerator.c:212
msgid "Enumerator is closed"
msgstr "L'enumerador està tancat"
-#: gio/gfileenumerator.c:219 gio/gfileenumerator.c:278 gio/gfileenumerator.c:377
-#: gio/gfileenumerator.c:476
+#: gio/gfileenumerator.c:219 gio/gfileenumerator.c:278
+#: gio/gfileenumerator.c:377 gio/gfileenumerator.c:476
msgid "File enumerator has outstanding operation"
msgstr "L'enumerador de fitxer té una operació pendent"
@@ -1483,8 +1498,9 @@
msgid "Malformed input data for GFileIcon"
msgstr "Les dades d'entrada pel GFileIcon no són formades correctament"
-#: gio/gfileinputstream.c:149 gio/gfileinputstream.c:394 gio/gfileiostream.c:167
-#: gio/gfileoutputstream.c:164 gio/gfileoutputstream.c:497
+#: gio/gfileinputstream.c:149 gio/gfileinputstream.c:394
+#: gio/gfileiostream.c:167 gio/gfileoutputstream.c:164
+#: gio/gfileoutputstream.c:497
msgid "Stream doesn’t support query_info"
msgstr "El flux no implementa «query_info»"
@@ -2317,7 +2333,9 @@
#: gio/glib-compile-resources.c:427
#, c-format
msgid "%s preprocessing requested, but %s is not set, and %s is not in PATH"
-msgstr "s'ha demanat preprocessar %s, però %s no està configurat, i %s no està al PATH"
+msgstr ""
+"s'ha demanat preprocessar %s, però %s no està configurat, i %s no està al "
+"PATH"
#: gio/glib-compile-resources.c:460
#, c-format
@@ -2394,13 +2412,16 @@
#: gio/glib-compile-resources.c:748
msgid ""
-"Don’t embed resource data in the C file; assume it's linked externally instead"
+"Don’t embed resource data in the C file; assume it's linked externally "
+"instead"
msgstr ""
-"No incrusteu recursos de dades a un fitxer C; en comptes assumiu que està enllaçat externament"
+"No incrusteu recursos de dades a un fitxer C; en comptes assumiu que està "
+"enllaçat externament"
#: gio/glib-compile-resources.c:749
msgid "C identifier name used for the generated source code"
-msgstr "El nom de l'identificador de C que s'utilitzarà en el codi font generat"
+msgstr ""
+"El nom de l'identificador de C que s'utilitzarà en el codi font generat"
#: gio/glib-compile-resources.c:775
msgid ""
@@ -2543,9 +2564,11 @@
#: gio/glib-compile-schemas.c:583
#, c-format
msgid ""
-"<alias value='%s'/> given when “%s” is already a member of the enumerated type"
+"<alias value='%s'/> given when “%s” is already a member of the enumerated "
+"type"
msgstr ""
-"s'ha especificat <alias value='%s'/> quan «%s» ja és membre del tipus enumerat"
+"s'ha especificat <alias value='%s'/> quan «%s» ja és membre del tipus "
+"enumerat"
#: gio/glib-compile-schemas.c:589
#, c-format
@@ -2597,7 +2620,8 @@
#: gio/glib-compile-schemas.c:829
#, c-format
msgid "Invalid name “%s”: two successive hyphens (“--”) are not permitted"
-msgstr "El nom «%s» no és vàlid: no es poden posar dos guionets seguits («--»)."
+msgstr ""
+"El nom «%s» no és vàlid: no es poden posar dos guionets seguits («--»)."
#: gio/glib-compile-schemas.c:838
#, c-format
@@ -2630,15 +2654,16 @@
"<key name='%s'> shadows <key name='%s'> in <schema id='%s'>; use <override> "
"to modify value"
msgstr ""
-"La <key name='%s'> emmascara la <key name='%s'> a <schema id='%s'>. Utilitzeu "
-"<override> per modificar-ne el valor."
+"La <key name='%s'> emmascara la <key name='%s'> a <schema id='%s'>. "
+"Utilitzeu <override> per modificar-ne el valor."
#: gio/glib-compile-schemas.c:984
#, c-format
msgid ""
-"Exactly one of “type”, “enum” or “flags” must be specified as an attribute to "
-"<key>"
-msgstr "L'atribut de la <key> ha de ser necessàriament «type», «enum» o «flags»"
+"Exactly one of “type”, “enum” or “flags” must be specified as an attribute "
+"to <key>"
+msgstr ""
+"L'atribut de la <key> ha de ser necessàriament «type», «enum» o «flags»"
#: gio/glib-compile-schemas.c:1003
#, c-format
@@ -2705,8 +2730,8 @@
"<schema id='%s' list-of='%s'> extends <schema id='%s' list-of='%s'> but “%s” "
"does not extend “%s”"
msgstr ""
-"El <schema id='%s' list-of='%s'> amplia el <schema id='%s' list-of='%s'> però "
-"«%s» no amplia «%s»"
+"El <schema id='%s' list-of='%s'> amplia el <schema id='%s' list-of='%s'> "
+"però «%s» no amplia «%s»"
#: gio/glib-compile-schemas.c:1225
#, c-format
@@ -2798,8 +2823,8 @@
"cannot provide per-desktop overrides for localised key “%s” in schema "
"“%s” (override file “%s”)"
msgstr ""
-"no es pot proveir la sobreescriptura per escriptori de claus traduïdes «%s» a l'esquema "
-"«%s» (fitxer de sobreescriptura «%s»)"
+"no es pot proveir la sobreescriptura per escriptori de claus traduïdes «%s» "
+"a l'esquema «%s» (fitxer de sobreescriptura «%s»)"
#: gio/glib-compile-schemas.c:2011
#, c-format
@@ -2826,8 +2851,8 @@
#: gio/glib-compile-schemas.c:2069
#, c-format
msgid ""
-"override for key “%s” in schema “%s” in override file “%s” is not in the list "
-"of valid choices"
+"override for key “%s” in schema “%s” in override file “%s” is not in the "
+"list of valid choices"
msgstr ""
"la sobreescriptura de la clau «%s» de l'esquema «%s» en el fitxer de "
"sobreescriptura «%s» no és a la llista de valors vàlids"
@@ -2887,8 +2912,8 @@
#, c-format
msgid "Error getting filesystem info for %s: %s"
msgstr ""
-"S'ha produït un error en obtenir la informació del sistema de fitxers per %s: "
-"%s"
+"S'ha produït un error en obtenir la informació del sistema de fitxers per "
+"%s: %s"
#. Translators: This is an error message when trying to find
#. * the enclosing (user visible) mount of a file, but none
@@ -2945,7 +2970,9 @@
#: gio/glocalfile.c:2034
#, c-format
msgid "Trashing on system internal mounts is not supported"
-msgstr "No està implementat l'enviament a la paperera en muntatges interns del sistema"
+msgstr ""
+"No està implementat l'enviament a la paperera en muntatges interns del "
+"sistema"
#: gio/glocalfile.c:2118 gio/glocalfile.c:2138
#, c-format
@@ -3084,7 +3111,8 @@
msgid "symlink must be non-NULL"
msgstr "l'enllaç simbòlic no pot ser nul"
-#: gio/glocalfileinfo.c:2307 gio/glocalfileinfo.c:2326 gio/glocalfileinfo.c:2337
+#: gio/glocalfileinfo.c:2307 gio/glocalfileinfo.c:2326
+#: gio/glocalfileinfo.c:2337
#, c-format
msgid "Error setting symlink: %s"
msgstr "S'ha produït un error en establir l'enllaç simbòlic: %s"
@@ -3098,7 +3126,8 @@
#: gio/glocalfileinfo.c:2442
#, c-format
msgid "Error setting modification or access time: %s"
-msgstr "S'ha produït un error en establir el temps de modificació o d'accés: %s"
+msgstr ""
+"S'ha produït un error en establir el temps de modificació o d'accés: %s"
#: gio/glocalfileinfo.c:2465
msgid "SELinux context must be non-NULL"
@@ -3216,8 +3245,8 @@
"Amount of memory required to process the write is larger than available "
"address space"
msgstr ""
-"La quantitat de memòria necessària per processar l'escriptura és més gran que "
-"l'espai d'adreces disponible"
+"La quantitat de memòria necessària per processar l'escriptura és més gran "
+"que l'espai d'adreces disponible"
#: gio/gmemoryoutputstream.c:782
msgid "Requested seek before the beginning of the stream"
@@ -3644,7 +3673,8 @@
"Ordres:\n"
" help Mostra aquesta informació\n"
" list-schemas Llista els esquemes instal·lats\n"
-" list-relocatable-schemas Llista els esquemes que es poden canviar de lloc\n"
+" list-relocatable-schemas Llista els esquemes que es poden canviar de "
+"lloc\n"
" list-keys Llista les claus d'un esquema\n"
" list-children Llista els fills d'un esquema\n"
" list-recursively Llista les claus i els valors recursivament\n"
@@ -3676,7 +3706,8 @@
#: gio/gsettings-tool.c:699
msgid " SCHEMADIR A directory to search for additional schemas\n"
-msgstr " DIRECTORI_D'ESQUEMES Un directori on cercar-hi esquemes addicionals\n"
+msgstr ""
+" DIRECTORI_D'ESQUEMES Un directori on cercar-hi esquemes addicionals\n"
#: gio/gsettings-tool.c:707
msgid ""
@@ -3762,8 +3793,8 @@
#, c-format
msgid "Cannot use datagram operations on a socket with a timeout set."
msgstr ""
-"No es poden realitzar operacions de datagrames a un sòcol que tingui un temps "
-"d'espera màxim establert."
+"No es poden realitzar operacions de datagrames a un sòcol que tingui un "
+"temps d'espera màxim establert."
#: gio/gsocket.c:1943
#, c-format
@@ -3903,16 +3934,17 @@
msgid "Could not connect: "
msgstr "No s'ha pogut connectar: "
-#: gio/gsocketclient.c:1032 gio/gsocketclient.c:1731
+#: gio/gsocketclient.c:1032 gio/gsocketclient.c:1749
msgid "Unknown error on connect"
msgstr "S'ha produït un error desconegut en connectar-se"
-#: gio/gsocketclient.c:1086 gio/gsocketclient.c:1640
+#: gio/gsocketclient.c:1086 gio/gsocketclient.c:1657
msgid "Proxying over a non-TCP connection is not supported."
msgstr ""
-"Encara no es pot fer de servidor intermediari d'una connexió que no sigui TCP."
+"Encara no es pot fer de servidor intermediari d'una connexió que no sigui "
+"TCP."
-#: gio/gsocketclient.c:1115 gio/gsocketclient.c:1666
+#: gio/gsocketclient.c:1115 gio/gsocketclient.c:1683
#, c-format
msgid "Proxy protocol “%s” is not supported."
msgstr "El protocol del servidor intermediari «%s» no està implementat."
@@ -3966,7 +3998,8 @@
#: gio/gsocks5proxy.c:206
msgid "Username or password is too long for SOCKSv5 protocol."
msgstr ""
-"El protocol SOCKSv5 no permet un nom d'usuari o de contrasenya d'aquesta mida."
+"El protocol SOCKSv5 no permet un nom d'usuari o de contrasenya d'aquesta "
+"mida."
#: gio/gsocks5proxy.c:236
msgid "SOCKSv5 authentication failed due to wrong username or password."
@@ -4046,7 +4079,7 @@
msgstr "No s'ha pogut resoldre «%s» de forma temporal"
#: gio/gthreadedresolver.c:663 gio/gthreadedresolver.c:840
-#: gio/gthreadedresolver.c:948
+#: gio/gthreadedresolver.c:950
#, c-format
msgid "Error resolving “%s”"
msgstr "S'ha produït un error en resoldre «%s»"
@@ -4073,8 +4106,8 @@
#: gio/gtlspassword.c:111
msgid ""
-"This is the last chance to enter the password correctly before your access is "
-"locked out."
+"This is the last chance to enter the password correctly before your access "
+"is locked out."
msgstr ""
"Últim intent per introduir la contrasenya correctament abans que se us "
"bloquegi l'accés."
@@ -4083,8 +4116,8 @@
#. * displayed when more than one attempt is allowed.
#: gio/gtlspassword.c:115
msgid ""
-"Several passwords entered have been incorrect, and your access will be locked "
-"out after further failures."
+"Several passwords entered have been incorrect, and your access will be "
+"locked out after further failures."
msgstr ""
"S'han introduït diverses contrasenyes errònies i se us bloquejarà l'accés "
"després de més intents."
@@ -4253,14 +4286,14 @@
msgid "Attribute “%s” of element “%s” not found"
msgstr "No s'ha trobat l'atribut «%s» de l'element «%s»"
-#: glib/gbookmarkfile.c:1164 glib/gbookmarkfile.c:1229 glib/gbookmarkfile.c:1293
-#: glib/gbookmarkfile.c:1303
+#: glib/gbookmarkfile.c:1164 glib/gbookmarkfile.c:1229
+#: glib/gbookmarkfile.c:1293 glib/gbookmarkfile.c:1303
#, c-format
msgid "Unexpected tag “%s”, tag “%s” expected"
msgstr "No s'esperava l'etiqueta «%s», s'esperava «%s»"
-#: glib/gbookmarkfile.c:1189 glib/gbookmarkfile.c:1203 glib/gbookmarkfile.c:1271
-#: glib/gbookmarkfile.c:1317
+#: glib/gbookmarkfile.c:1189 glib/gbookmarkfile.c:1203
+#: glib/gbookmarkfile.c:1271 glib/gbookmarkfile.c:1317
#, c-format
msgid "Unexpected tag “%s” inside “%s”"
msgstr "No s'esperava l'etiqueta «%s» dins «%s»"
@@ -4275,12 +4308,15 @@
msgid "A bookmark for URI “%s” already exists"
msgstr "Ja existeix una adreça d'interès per a l'URI «%s»"
-#: glib/gbookmarkfile.c:2060 glib/gbookmarkfile.c:2218 glib/gbookmarkfile.c:2303
-#: glib/gbookmarkfile.c:2383 glib/gbookmarkfile.c:2468 glib/gbookmarkfile.c:2551
-#: glib/gbookmarkfile.c:2629 glib/gbookmarkfile.c:2708 glib/gbookmarkfile.c:2750
-#: glib/gbookmarkfile.c:2847 glib/gbookmarkfile.c:2968 glib/gbookmarkfile.c:3158
-#: glib/gbookmarkfile.c:3234 glib/gbookmarkfile.c:3402 glib/gbookmarkfile.c:3491
-#: glib/gbookmarkfile.c:3580 glib/gbookmarkfile.c:3699
+#: glib/gbookmarkfile.c:2060 glib/gbookmarkfile.c:2218
+#: glib/gbookmarkfile.c:2303 glib/gbookmarkfile.c:2383
+#: glib/gbookmarkfile.c:2468 glib/gbookmarkfile.c:2551
+#: glib/gbookmarkfile.c:2629 glib/gbookmarkfile.c:2708
+#: glib/gbookmarkfile.c:2750 glib/gbookmarkfile.c:2847
+#: glib/gbookmarkfile.c:2968 glib/gbookmarkfile.c:3158
+#: glib/gbookmarkfile.c:3234 glib/gbookmarkfile.c:3402
+#: glib/gbookmarkfile.c:3491 glib/gbookmarkfile.c:3580
+#: glib/gbookmarkfile.c:3699
#, c-format
msgid "No bookmark found for URI “%s”"
msgstr "No s'ha trobat cap adreça d'interès per a l'URI «%s»"
@@ -4902,8 +4938,8 @@
msgid ""
"Key file contains line “%s” which is not a key-value pair, group, or comment"
msgstr ""
-"El fitxer de claus conté la línia «%s» que no és una parella clau-valor, grup "
-"o comentari"
+"El fitxer de claus conté la línia «%s» que no és una parella clau-valor, "
+"grup o comentari"
#: glib/gkeyfile.c:1332
#, c-format
@@ -4944,7 +4980,8 @@
#: glib/gkeyfile.c:1960 glib/gkeyfile.c:2076 glib/gkeyfile.c:2518
#, c-format
-msgid "Key file contains key “%s” which has a value that cannot be interpreted."
+msgid ""
+"Key file contains key “%s” which has a value that cannot be interpreted."
msgstr ""
"El fitxer de claus conté la clau «%s», que té un valor que no es pot "
"interpretar."
@@ -4955,8 +4992,8 @@
"Key file contains key “%s” in group “%s” which has a value that cannot be "
"interpreted."
msgstr ""
-"El fitxer de claus conté la clau «%s» en el grup «%s», que té un valor que no "
-"es pot interpretar."
+"El fitxer de claus conté la clau «%s» en el grup «%s», que té un valor que "
+"no es pot interpretar."
#: glib/gkeyfile.c:2814 glib/gkeyfile.c:2891
#, c-format
@@ -5038,7 +5075,6 @@
#: glib/gmarkup.c:690
#, c-format
-#| msgid ""
msgid ""
"Failed to parse “%-.*s”, which should have been a digit inside a character "
"reference (ê for example) — perhaps the digit is too large"
@@ -5053,8 +5089,8 @@
"as &"
msgstr ""
"La referència del caràcter no acaba amb un punt i coma. Segurament heu "
-"utilitzat un caràcter «&» sense intenció d'iniciar una entitat. Substituïu el "
-"caràcter «&» per &"
+"utilitzat un caràcter «&» sense intenció d'iniciar una entitat. Substituïu "
+"el caràcter «&» per &"
#: glib/gmarkup.c:728
#, c-format
@@ -5098,7 +5134,8 @@
#: glib/gmarkup.c:1270
#, c-format
msgid ""
-"Odd character “%s”, expected a “>” character to end the empty-element tag “%s”"
+"Odd character “%s”, expected a “>” character to end the empty-element tag "
+"“%s”"
msgstr ""
"S'ha trobat un caràcter estrany: «%s». S'esperava el caràcter «>» per tancar "
"l'etiqueta d'element buit «%s»"
@@ -5137,8 +5174,8 @@
"“%s” is not a valid character following the characters “</”; “%s” may not "
"begin an element name"
msgstr ""
-"«%s» no és un caràcter vàlid després dels caràcters «</»; «%s» no pot iniciar "
-"un nom d'element"
+"«%s» no és un caràcter vàlid després dels caràcters «</»; «%s» no pot "
+"iniciar un nom d'element"
#: glib/gmarkup.c:1611
#, c-format
@@ -5181,8 +5218,8 @@
#: glib/gmarkup.c:1815
#, c-format
msgid ""
-"Document ended unexpectedly, expected to see a close angle bracket ending the "
-"tag <%s/>"
+"Document ended unexpectedly, expected to see a close angle bracket ending "
+"the tag <%s/>"
msgstr ""
"El document ha acabat de manera inesperada. S'esperava trobar un símbol «>» "
"que acabés l'etiqueta <%s/>."
@@ -5206,8 +5243,8 @@
"Document ended unexpectedly after the equals sign following an attribute "
"name; no attribute value"
msgstr ""
-"El document ha acabat de manera inesperada després d'un signe d'igual després "
-"d'un nom d'atribut. No hi ha cap valor d'atribut."
+"El document ha acabat de manera inesperada després d'un signe d'igual "
+"després d'un nom d'atribut. No hi ha cap valor d'atribut."
#: glib/gmarkup.c:1845
msgid "Document ended unexpectedly while inside an attribute value"
@@ -5221,7 +5258,8 @@
"de l'element «%s»"
#: glib/gmarkup.c:1866
-msgid "Document ended unexpectedly inside the close tag for an unopened element"
+msgid ""
+"Document ended unexpectedly inside the close tag for an unopened element"
msgstr ""
"El document ha acabat de manera inesperada enmig de l'etiqueta de tancament "
"per un element no obert"
@@ -5311,7 +5349,8 @@
#: glib/gregex.c:278 glib/gregex.c:286
msgid "the pattern contains items not supported for partial matching"
msgstr ""
-"el patró conté elements que no estan implementats en les concordances parcials"
+"el patró conté elements que no estan implementats en les concordances "
+"parcials"
#: glib/gregex.c:280
msgid "internal error"
@@ -5320,7 +5359,8 @@
#: glib/gregex.c:288
msgid "back references as conditions are not supported for partial matching"
msgstr ""
-"no s'ha implementat l'ús de referències anteriors per a coincidències parcials"
+"no s'ha implementat l'ús de referències anteriors per a coincidències "
+"parcials"
#: glib/gregex.c:297
msgid "recursion limit reached"
@@ -5392,7 +5432,8 @@
#: glib/gregex.c:363
msgid "POSIX named classes are supported only within a class"
-msgstr "només es permeten les classes amb nom de POSIX dins de la pròpia classe"
+msgstr ""
+"només es permeten les classes amb nom de POSIX dins de la pròpia classe"
#: glib/gregex.c:366
msgid "missing terminating )"
@@ -5872,28 +5913,24 @@
#. Translators: Keep the no-break space between %.1f and the unit symbol
#: glib/gutils.c:2341
#, c-format
-#| msgid "%.1f MB"
msgid "%.1f MB"
msgstr "%.1f MB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
#: glib/gutils.c:2343
#, c-format
-#| msgid "%.1f GB"
msgid "%.1f GB"
msgstr "%.1f GB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
#: glib/gutils.c:2345
#, c-format
-#| msgid "%.1f TB"
msgid "%.1f TB"
msgstr "%.1f TB"
#. Translators: Keep the no-break space between %.1f and the unit symbol
#: glib/gutils.c:2347
#, c-format
-#| msgid "%.1f PB"
msgid "%.1f PB"
msgstr "%.1f PB"
@@ -5943,13 +5980,13 @@
#: glib/gutils.c:2367
#, c-format
msgid "%.1f kb"
-msgstr "%.1f kB"
+msgstr "%.1f kb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
#: glib/gutils.c:2369
#, c-format
msgid "%.1f Mb"
-msgstr "%.1f MB"
+msgstr "%.1f Mb"
#. Translators: Keep the no-break space between %.1f and the unit symbol
#: glib/gutils.c:2371
@@ -6002,14 +6039,12 @@
#. Translators: Keep the no-break space between %.1f and the unit symbol
#: glib/gutils.c:2389
#, c-format
-#| msgid "%.1f PiB"
msgid "%.1f Pib"
-msgstr "%.1f PiB"
+msgstr "%.1f Pib"
#. Translators: Keep the no-break space between %.1f and the unit symbol
#: glib/gutils.c:2391
#, c-format
-#| msgid "%.1f EiB"
msgid "%.1f Eib"
msgstr "%.1f Eib"
1
0
Hello community,
here is the log from the commit of package tracker-miners for openSUSE:Factory checked in at 2019-05-06 21:12:28
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/tracker-miners (Old)
and /work/SRC/openSUSE:Factory/.tracker-miners.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "tracker-miners"
Mon May 6 21:12:28 2019 rev:14 rq:700574 version:2.2.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/tracker-miners/tracker-miners.changes 2019-03-19 11:06:26.542103837 +0100
+++ /work/SRC/openSUSE:Factory/.tracker-miners.new.5148/tracker-miners.changes 2019-05-06 21:12:30.260267250 +0200
@@ -1,0 +2,11 @@
+Fri May 3 09:20:46 UTC 2019 - Bjørn Lie <bjorn.lie(a)gmail.com>
+
+- Update to version 2.2.2:
+ + Multiple leak fixes.
+ + Functional tests now use python3.
+ + Fix text extractor handling of non-existent files.
+ + Fix indexing of tracks in FLAC files.
+ + Added new tests for file formats.
+ + Updated translations.
+
+-------------------------------------------------------------------
Old:
----
tracker-miners-2.2.1.tar.xz
New:
----
tracker-miners-2.2.2.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ tracker-miners.spec ++++++
--- /var/tmp/diff_new_pack.Gu4X35/_old 2019-05-06 21:12:30.740268889 +0200
+++ /var/tmp/diff_new_pack.Gu4X35/_new 2019-05-06 21:12:30.740268889 +0200
@@ -17,7 +17,7 @@
Name: tracker-miners
-Version: 2.2.1
+Version: 2.2.2
Release: 0
Summary: Various miners for Tracker
License: GPL-2.0-or-later
@@ -117,7 +117,7 @@
%files
%license COPYING
-%doc README
+%doc README.md
%{_libexecdir}/tracker-extract
%{_libexecdir}/tracker-writeback
%{_mandir}/man1/tracker-extract.1%{ext_man}
++++++ tracker-miners-2.2.1.tar.xz -> tracker-miners-2.2.2.tar.xz ++++++
++++ 5621 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package tracker for openSUSE:Factory checked in at 2019-05-06 21:12:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/tracker (Old)
and /work/SRC/openSUSE:Factory/.tracker.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "tracker"
Mon May 6 21:12:21 2019 rev:119 rq:700573 version:2.2.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/tracker/tracker.changes 2019-03-19 11:06:15.366103291 +0100
+++ /work/SRC/openSUSE:Factory/.tracker.new.5148/tracker.changes 2019-05-06 21:12:21.780238281 +0200
@@ -1,0 +2,14 @@
+Fri May 3 09:18:18 UTC 2019 - Bjørn Lie <bjorn.lie(a)gmail.com>
+
+- Update to version 2.2.2:
+ + Fixed initialization of virtual tables.
+ + Fixed segmentation fault in libtracker-miner.
+ + Don't try to create JSON-LD nodes with unsigned integers.
+ + Handle correctly backreferences in TrackerResource tree.
+ + Many documentation fixes.
+ + Fixed handling doubles with exponents in SPARQL.
+ + Don't limit to specific desktop environments.
+ + Build and test fixes.
+ + Updated translations.
+
+-------------------------------------------------------------------
Old:
----
tracker-2.2.1.tar.xz
New:
----
tracker-2.2.2.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ tracker.spec ++++++
--- /var/tmp/diff_new_pack.j5ypqh/_old 2019-05-06 21:12:22.296240045 +0200
+++ /var/tmp/diff_new_pack.j5ypqh/_new 2019-05-06 21:12:22.304240071 +0200
@@ -21,7 +21,7 @@
%define RPMTrackerAPI 2_0
Name: tracker
-Version: 2.2.1
+Version: 2.2.2
Release: 0
Summary: Object database, tag/metadata database, search tool and indexer
License: GPL-2.0-or-later
@@ -288,7 +288,7 @@
%{_libdir}/girepository-1.0/TrackerMiner-%{TrackerAPI}.typelib
%files -n tracker-devel
-%doc AUTHORS README NEWS
+%doc AUTHORS README.md NEWS
%{_libdir}/lib*.so
%{_includedir}/tracker-%{TrackerAPI}/
%{_libdir}/pkgconfig/tracker-control-%{TrackerAPI}.pc
++++++ tracker-2.2.1.tar.xz -> tracker-2.2.2.tar.xz ++++++
++++ 8207 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package glib-networking for openSUSE:Factory checked in at 2019-05-06 21:12:13
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/glib-networking (Old)
and /work/SRC/openSUSE:Factory/.glib-networking.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "glib-networking"
Mon May 6 21:12:13 2019 rev:62 rq:700572 version:2.60.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/glib-networking/glib-networking.changes 2019-04-10 23:10:17.723912530 +0200
+++ /work/SRC/openSUSE:Factory/.glib-networking.new.5148/glib-networking.changes 2019-05-06 21:12:14.612211422 +0200
@@ -1,0 +2,9 @@
+Fri May 3 17:15:49 UTC 2019 - Bjørn Lie <bjorn.lie(a)gmail.com>
+
+- Update to version 2.60.2:
+ + OpenSSL backend now defaults to system trust store.
+ + Fix client auth failure error with GnuTLS 3.6.7.
+- Drop 0001-gnutls-Handle-new-GNUTLS_E_CERTIFICATE_REQUIRED.patch:
+ fixed upstream.
+
+-------------------------------------------------------------------
Old:
----
0001-gnutls-Handle-new-GNUTLS_E_CERTIFICATE_REQUIRED.patch
glib-networking-2.60.1.tar.xz
New:
----
glib-networking-2.60.2.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ glib-networking.spec ++++++
--- /var/tmp/diff_new_pack.lmQrAa/_old 2019-05-06 21:12:15.752217165 +0200
+++ /var/tmp/diff_new_pack.lmQrAa/_new 2019-05-06 21:12:15.756217185 +0200
@@ -18,7 +18,7 @@
%define gio_real_package %(rpm -q --qf '%%{name}' --whatprovides gio)
Name: glib-networking
-Version: 2.60.1
+Version: 2.60.2
Release: 0
Summary: Network-related GIO modules for glib
License: LGPL-2.1-or-later
@@ -26,7 +26,6 @@
URL: https://www.gnome.org
Source0: https://download.gnome.org/sources/glib-networking/2.60/%{name}-%{version}.…
Source99: baselibs.conf
-Patch: 0001-gnutls-Handle-new-GNUTLS_E_CERTIFICATE_REQUIRED.patch
BuildRequires: ca-certificates-mozilla
# For directory ownership
@@ -56,8 +55,7 @@
%lang_package
%prep
-%setup -q
-%patch -p1
+%autosetup -p1
translation-update-upstream
%build
++++++ glib-networking-2.60.1.tar.xz -> glib-networking-2.60.2.tar.xz ++++++
++++ 1634 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package 000product for openSUSE:Factory checked in at 2019-05-06 19:01:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000product (Old)
and /work/SRC/openSUSE:Factory/.000product.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000product"
Mon May 6 19:01:35 2019 rev:1175 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ openSUSE-Addon-NonOss-ftp-ftp-i586_x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.4tha1U/_old 2019-05-06 19:01:39.085632536 +0200
+++ /var/tmp/diff_new_pack.4tha1U/_new 2019-05-06 19:01:39.089632544 +0200
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE-Addon-NonOss___20190505" schemaversion="4.1">
+<image name="OBS__openSUSE-Addon-NonOss___20190506" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -36,11 +36,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20190505</productvar>
+ <productvar name="VERSION">20190506</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse-addon-nonoss:20190505,openSUSE NonOSS Addon</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse-addon-nonoss:20190506,openSUSE NonOSS Addon</productinfo>
<productinfo name="LINGUAS">af ar be_BY bg br ca cy el et ga gl gu_IN he hi_IN hr ka km ko lt mk nn pa_IN rw sk sl sr_CS ss st tg th tr uk ve vi xh zu </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE-Addon-NonOss/2019… obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE-Addon-NonOss/2019…</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE-Addon-NonOss/2019… obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE-Addon-NonOss/2019…</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/suse-tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/suse-tumbleweed</productoption>
++++++ openSUSE-MicroOS-dvd5-dvd-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.4tha1U/_old 2019-05-06 19:01:39.105632575 +0200
+++ /var/tmp/diff_new_pack.4tha1U/_new 2019-05-06 19:01:39.105632575 +0200
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE-MicroOS___20190505" schemaversion="4.1">
+<image name="OBS__openSUSE-MicroOS___20190506" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20190505</productvar>
+ <productvar name="VERSION">20190506</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse-microos:20190505,openSUSE MicroOS</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse-microos:20190506,openSUSE MicroOS</productinfo>
<productinfo name="LINGUAS">en_US </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE-MicroOS/20190505/…</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE-MicroOS/20190506/…</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/suse-tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/suse-tumbleweed</productoption>
@@ -74,6 +74,7 @@
<repopackage name="ca-certificates-mozilla" arch="x86_64"/>
<repopackage name="catatonit" arch="x86_64"/>
<repopackage name="checkpolicy" arch="x86_64"/>
+ <repopackage name="chkstat"/>
<repopackage name="chrony" arch="x86_64"/>
<repopackage name="cloud-init" arch="x86_64"/>
<repopackage name="cloud-init-config-caasp" arch="x86_64"/>
@@ -172,6 +173,7 @@
<repopackage name="libbasicobjects0" arch="x86_64"/>
<repopackage name="libbind9-160" arch="x86_64"/>
<repopackage name="libblkid1"/>
+ <repopackage name="libblogger2"/>
<repopackage name="libboost_thread1_69_0" arch="x86_64"/>
<repopackage name="libbtrfs0" arch="x86_64"/>
<repopackage name="libbz2-1"/>
@@ -381,6 +383,7 @@
<repopackage name="perl-XML-Parser" arch="x86_64"/>
<repopackage name="perl-XML-Twig" arch="x86_64"/>
<repopackage name="permissions"/>
+ <repopackage name="permissions-config"/>
<repopackage name="pigz"/>
<repopackage name="pinentry" arch="x86_64"/>
<repopackage name="pkg-config"/>
++++++ openSUSE-MicroOS-dvd5-kubic-dvd-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.4tha1U/_old 2019-05-06 19:01:39.125632613 +0200
+++ /var/tmp/diff_new_pack.4tha1U/_new 2019-05-06 19:01:39.125632613 +0200
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE-MicroOS___20190505" schemaversion="4.1">
+<image name="OBS__openSUSE-MicroOS___20190506" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20190505</productvar>
+ <productvar name="VERSION">20190506</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse-microos:20190505,openSUSE MicroOS</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse-microos:20190506,openSUSE MicroOS</productinfo>
<productinfo name="LINGUAS">en_US </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE-MicroOS/20190505/…</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE-MicroOS/20190506/…</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/suse-tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/suse-tumbleweed</productoption>
@@ -78,6 +78,7 @@
<repopackage name="catatonit" arch="x86_64"/>
<repopackage name="ceph-common" arch="x86_64"/>
<repopackage name="checkpolicy" arch="x86_64"/>
+ <repopackage name="chkstat"/>
<repopackage name="chrony" arch="x86_64"/>
<repopackage name="cloud-init" arch="x86_64"/>
<repopackage name="cloud-init-config-caasp" arch="x86_64"/>
@@ -189,6 +190,7 @@
<repopackage name="libbasicobjects0" arch="x86_64"/>
<repopackage name="libbind9-160" arch="x86_64"/>
<repopackage name="libblkid1"/>
+ <repopackage name="libblogger2"/>
<repopackage name="libboost_thread1_69_0" arch="x86_64"/>
<repopackage name="libbtrfs0" arch="x86_64"/>
<repopackage name="libbz2-1"/>
@@ -429,6 +431,7 @@
<repopackage name="perl-XML-Parser" arch="x86_64"/>
<repopackage name="perl-XML-Twig" arch="x86_64"/>
<repopackage name="permissions"/>
+ <repopackage name="permissions-config"/>
<repopackage name="pigz"/>
<repopackage name="pinentry" arch="x86_64"/>
<repopackage name="pkg-config"/>
++++++ openSUSE-cd-mini-i586.kiwi ++++++
--- /var/tmp/diff_new_pack.4tha1U/_old 2019-05-06 19:01:39.141632643 +0200
+++ /var/tmp/diff_new_pack.4tha1U/_new 2019-05-06 19:01:39.145632650 +0200
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20190505" schemaversion="4.1">
+<image name="OBS__openSUSE___20190506" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -32,11 +32,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20190505</productvar>
+ <productvar name="VERSION">20190506</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20190505,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20190506,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20190505/i586</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20190506/i586</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/suse-tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/suse-tumbleweed</productoption>
++++++ openSUSE-cd-mini-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.4tha1U/_old 2019-05-06 19:01:39.169632696 +0200
+++ /var/tmp/diff_new_pack.4tha1U/_new 2019-05-06 19:01:39.169632696 +0200
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20190505" schemaversion="4.1">
+<image name="OBS__openSUSE___20190506" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20190505</productvar>
+ <productvar name="VERSION">20190506</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20190505,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20190506,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20190505/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20190506/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/suse-tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/suse-tumbleweed</productoption>
++++++ openSUSE-dvd5-dvd-i586.kiwi ++++++
--- /var/tmp/diff_new_pack.4tha1U/_old 2019-05-06 19:01:39.193632741 +0200
+++ /var/tmp/diff_new_pack.4tha1U/_new 2019-05-06 19:01:39.193632741 +0200
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20190505" schemaversion="4.1">
+<image name="OBS__openSUSE___20190506" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -32,11 +32,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20190505</productvar>
+ <productvar name="VERSION">20190506</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20190505,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20190506,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20190505/i586</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20190506/i586</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/suse-tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/suse-tumbleweed</productoption>
@@ -316,6 +316,7 @@
<repopackage name="cheese-lang"/>
<repopackage name="chewing-data"/>
<repopackage name="chewing-utils"/>
+ <repopackage name="chkstat"/>
<repopackage name="chrony"/>
<repopackage name="cifs-utils"/>
<repopackage name="cim-schema"/>
@@ -1544,6 +1545,7 @@
<repopackage name="libblkid1"/>
<repopackage name="libblockdev"/>
<repopackage name="libblockdev2"/>
+ <repopackage name="libblogger2"/>
<repopackage name="libbluetooth3"/>
<repopackage name="libbluray2"/>
<repopackage name="libboost_date_time1_69_0"/>
@@ -3900,6 +3902,8 @@
<repopackage name="perl-YAML"/>
<repopackage name="perl-YAML-LibYAML"/>
<repopackage name="permissions"/>
+ <repopackage name="permissions-config"/>
+ <repopackage name="permissions-doc"/>
<repopackage name="pfscalibration"/>
<repopackage name="pfstmo"/>
<repopackage name="pfstools"/>
++++++ openSUSE-dvd5-dvd-x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.4tha1U/_old 2019-05-06 19:01:39.225632802 +0200
+++ /var/tmp/diff_new_pack.4tha1U/_new 2019-05-06 19:01:39.233632817 +0200
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20190505" schemaversion="4.1">
+<image name="OBS__openSUSE___20190506" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -35,11 +35,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20190505</productvar>
+ <productvar name="VERSION">20190506</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20190505,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20190506,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20190505/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20190506/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/suse-tumbleweed</productoption>
<productoption name="PLUGIN_DIR">/usr/share/kiwi/modules/plugins/suse-tumbleweed</productoption>
@@ -325,6 +325,7 @@
<repopackage name="cheese-lang"/>
<repopackage name="chewing-data"/>
<repopackage name="chewing-utils"/>
+ <repopackage name="chkstat"/>
<repopackage name="chrome-gnome-shell" arch="x86_64"/>
<repopackage name="chrony"/>
<repopackage name="cifs-utils"/>
@@ -1589,6 +1590,7 @@
<repopackage name="libblkid1-32bit" arch="x86_64"/>
<repopackage name="libblockdev"/>
<repopackage name="libblockdev2"/>
+ <repopackage name="libblogger2"/>
<repopackage name="libbluetooth3"/>
<repopackage name="libbluray2"/>
<repopackage name="libboost_date_time1_69_0"/>
@@ -4118,6 +4120,8 @@
<repopackage name="perl-YAML"/>
<repopackage name="perl-YAML-LibYAML"/>
<repopackage name="permissions"/>
+ <repopackage name="permissions-config"/>
+ <repopackage name="permissions-doc"/>
<repopackage name="pesign" arch="x86_64"/>
<repopackage name="pesign-obs-integration" arch="x86_64"/>
<repopackage name="pfscalibration"/>
++++++ openSUSE-ftp-ftp-i586_x86_64.kiwi ++++++
--- /var/tmp/diff_new_pack.4tha1U/_old 2019-05-06 19:01:39.253632855 +0200
+++ /var/tmp/diff_new_pack.4tha1U/_new 2019-05-06 19:01:39.253632855 +0200
@@ -1,4 +1,4 @@
-<image name="OBS__openSUSE___20190505" schemaversion="4.1">
+<image name="OBS__openSUSE___20190506" schemaversion="4.1">
<description type="system">
<author>The SUSE Team</author>
<contact>build(a)opensuse.org</contact>
@@ -24,7 +24,7 @@
<productvar name="DISTNAME">openSUSE</productvar>
<productvar name="FLAVOR">ftp</productvar>
<productvar name="MAKE_LISTINGS">true</productvar>
- <productvar name="MEDIUM_NAME">openSUSE-20190505-i586-x86_64</productvar>
+ <productvar name="MEDIUM_NAME">openSUSE-20190506-i586-x86_64</productvar>
<productvar name="MULTIPLE_MEDIA">true</productvar>
<productvar name="PRODUCT_DIR">/</productvar>
<productvar name="PRODUCT_NAME">$DISTNAME-$FLAVOR</productvar>
@@ -36,11 +36,11 @@
<productvar name="SEPARATE_MEDIA">true</productvar>
<productvar name="SHA1OPT">-x -2</productvar>
<productvar name="VENDOR">openSUSE</productvar>
- <productvar name="VERSION">20190505</productvar>
+ <productvar name="VERSION">20190506</productvar>
<productinfo name="CONTENTSTYLE">11</productinfo>
- <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20190505,openSUSE Tumbleweed</productinfo>
+ <productinfo name="DISTRO">cpe:/o:opensuse:opensuse:20190506,openSUSE Tumbleweed</productinfo>
<productinfo name="LINGUAS">cs da de el en en_GB en_US es fr hu it ja pl pt pt_BR ru zh zh_CN zh_TW </productinfo>
- <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20190505/i586 obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20190505/x86_64</productinfo>
+ <productinfo name="REPOID">obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20190506/i586 obsproduct://build.opensuse.org/openSUSE:Factory/openSUSE/20190506/x86_64</productinfo>
<productinfo name="VENDOR">openSUSE</productinfo>
<productoption name="DEBUGMEDIUM">2</productoption>
<productoption name="INI_DIR">/usr/share/kiwi/modules/plugins/suse-tumbleweed</productoption>
++++++ dvd.group ++++++
--- /var/tmp/diff_new_pack.4tha1U/_old 2019-05-06 19:01:39.365633068 +0200
+++ /var/tmp/diff_new_pack.4tha1U/_new 2019-05-06 19:01:39.369633076 +0200
@@ -318,6 +318,7 @@
<package name="cheese-lang" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
<package name="chewing-data" supportstatus="unsupported"/> <!-- reason: dvd:kernel-default -->
<package name="chewing-utils" supportstatus="unsupported"/> <!-- reason: dvd:kernel-default -->
+ <package name="chkstat" supportstatus="unsupported"/> <!-- reason: dvd:kernel-default -->
<package name="chrony" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
<package name="cifs-utils" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
<package name="cim-schema" supportstatus="unsupported"/> <!-- reason: dvd:expansion -->
@@ -1827,6 +1828,7 @@
<package name="libblkid1" supportstatus="unsupported"/> <!-- reason: dvd:kernel-default -->
<package name="libblockdev" supportstatus="unsupported"/> <!-- reason: dvd:kernel-default -->
<package name="libblockdev2" supportstatus="unsupported"/> <!-- reason: dvd:kernel-default -->
+ <package name="libblogger2" supportstatus="unsupported"/> <!-- reason: dvd:kernel-default -->
<package name="libbluetooth3" supportstatus="unsupported"/> <!-- reason: dvd:patterns-gnome-gnome -->
<package name="libbluray2" supportstatus="unsupported"/> <!-- reason: dvd:kernel-default -->
<package name="libboost_date_time1_69_0" supportstatus="unsupported"/> <!-- reason: dvd:kernel-default -->
@@ -3850,6 +3852,8 @@
<package name="perl-namespace-clean" supportstatus="unsupported"/> <!-- reason: dvd:expansion -->
<package name="perl-razor-agents" supportstatus="unsupported"/> <!-- reason: dvd:patterns-server-mail_server -->
<package name="permissions" supportstatus="unsupported"/> <!-- reason: dvd:kernel-default -->
+ <package name="permissions-config" supportstatus="unsupported"/> <!-- reason: dvd:kernel-default -->
+ <package name="permissions-doc" supportstatus="unsupported"/> <!-- reason: dvd:kernel-default -->
<package name="pfscalibration" supportstatus="unsupported"/> <!-- reason: dvd:expansion -->
<package name="pfstmo" supportstatus="unsupported"/> <!-- reason: dvd:expansion -->
<package name="pfstools" supportstatus="unsupported"/> <!-- reason: dvd:expansion -->
++++++ opensuse_kubic.group ++++++
--- /var/tmp/diff_new_pack.4tha1U/_old 2019-05-06 19:01:39.425633182 +0200
+++ /var/tmp/diff_new_pack.4tha1U/_new 2019-05-06 19:01:39.425633182 +0200
@@ -4,6 +4,7 @@
<package name="aaa_base" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="bash" supportstatus="unsupported"/> <!-- reason: opensuse_microos:openSUSE-MicroOS-release -->
<package name="blog" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
+ <package name="chkstat" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="coreutils" supportstatus="unsupported"/> <!-- reason: opensuse_microos:openSUSE-MicroOS-release -->
<package name="cpio" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="cracklib" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
@@ -37,6 +38,7 @@
<package name="libattr1" supportstatus="unsupported"/> <!-- reason: opensuse_microos:openSUSE-MicroOS-release -->
<package name="libaudit1" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="libblkid1" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
+ <package name="libblogger2" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="libbz2-1" supportstatus="unsupported"/> <!-- reason: opensuse_microos:openSUSE-MicroOS-release -->
<package name="libcap-ng0" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="libcap2" supportstatus="unsupported"/> <!-- reason: opensuse_microos:openSUSE-MicroOS-release -->
@@ -105,6 +107,7 @@
<package name="perl-Bootloader" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="perl-base" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="permissions" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
+ <package name="permissions-config" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="pigz" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="pkg-config" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="rpm" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
++++++ opensuse_microos.group ++++++
--- /var/tmp/diff_new_pack.4tha1U/_old 2019-05-06 19:01:39.449633227 +0200
+++ /var/tmp/diff_new_pack.4tha1U/_new 2019-05-06 19:01:39.449633227 +0200
@@ -4,6 +4,7 @@
<package name="aaa_base" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="bash" supportstatus="unsupported"/> <!-- reason: opensuse_microos:openSUSE-MicroOS-release -->
<package name="blog" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
+ <package name="chkstat" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="coreutils" supportstatus="unsupported"/> <!-- reason: opensuse_microos:openSUSE-MicroOS-release -->
<package name="cpio" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="cracklib" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
@@ -37,6 +38,7 @@
<package name="libattr1" supportstatus="unsupported"/> <!-- reason: opensuse_microos:openSUSE-MicroOS-release -->
<package name="libaudit1" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="libblkid1" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
+ <package name="libblogger2" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="libbz2-1" supportstatus="unsupported"/> <!-- reason: opensuse_microos:openSUSE-MicroOS-release -->
<package name="libcap-ng0" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="libcap2" supportstatus="unsupported"/> <!-- reason: opensuse_microos:openSUSE-MicroOS-release -->
@@ -105,6 +107,7 @@
<package name="perl-Bootloader" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="perl-base" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="permissions" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
+ <package name="permissions-config" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="pigz" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="pkg-config" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
<package name="rpm" supportstatus="unsupported"/> <!-- reason: opensuse_microos:kernel-default -->
++++++ unsorted.yml ++++++
--- /var/tmp/diff_new_pack.4tha1U/_old 2019-05-06 19:01:39.497633318 +0200
+++ /var/tmp/diff_new_pack.4tha1U/_new 2019-05-06 19:01:39.497633318 +0200
@@ -436,6 +436,8 @@
- antlr-devel
- antlr-java
- antlr-manual
+ - antlr-maven-plugin
+ - antlr-maven-plugin-javadoc
- antlr3c-devel
- aom-tools
- aop
@@ -1567,6 +1569,7 @@
- codec2
- codec2-devel
- codec2-examples
+ - codehaus-parent
- codelite
- codespell
- cogl-devel
@@ -2532,6 +2535,7 @@
- farsi-fonts
- farstream-devel
- fasd
+ - fasterxml-oss-parent
- fastjar
- fastjet-devel
- fastjet-plugin-siscone
@@ -5372,6 +5376,8 @@
- javapackages-gradle
- javapackages-ivy
- javapackages-local
+ - javapoet
+ - javapoet-javadoc
- javassist
- javassist-demo
- javassist-javadoc
@@ -6087,6 +6093,8 @@
- kwindowsystem-devel-32bit: [x86_64]
- kwrite
- kwrited5
+ - kxml
+ - kxml-javadoc
- kxmlgui-devel
- kxmlgui-devel-32bit: [x86_64]
- kxmlrpcclient5-devel
@@ -6412,7 +6420,7 @@
- libHYPRE_2_15_1-gnu-openmpi2-hpc
- libHYPRE_2_15_1-gnu-openmpi3-hpc
- libHalf24-32bit: [x86_64]
- - libHepMC-3_0_0
+ - libHepMC3-1
- libHepMC4
- libICE-devel-32bit: [x86_64]
- libIDL-2-0
@@ -6925,7 +6933,7 @@
- libXxf86vm-devel
- libXxf86vm-devel-32bit: [x86_64]
- libXxf86vm1-32bit: [x86_64]
- - libYODA-1_7_0
+ - libYODA-1_7_4
- liba52-0-32bit: [x86_64]
- liba52-devel
- libaa1-32bit: [x86_64]
@@ -12237,6 +12245,8 @@
- maven-file-management-javadoc
- maven-filtering
- maven-filtering-javadoc
+ - maven-install-plugin
+ - maven-install-plugin-javadoc
- maven-invoker
- maven-invoker-javadoc
- maven-invoker-plugin
@@ -12258,6 +12268,11 @@
- maven-mapping-javadoc
- maven-model
- maven-monitor
+ - maven-native
+ - maven-native-components
+ - maven-native-javadoc
+ - maven-osgi
+ - maven-osgi-javadoc
- maven-parent
- maven-plugin-annotations
- maven-plugin-build-helper
@@ -13150,6 +13165,7 @@
- nanum-gothic-coding-fonts
- nasc
- nast
+ - native-maven-plugin
- nautilus-deja-dup
- nautilus-devel
- nautilus-eiciel
@@ -13699,6 +13715,7 @@
- objectweb-anttask
- objectweb-asm
- objectweb-asm-javadoc
+ - objectweb-pom
- objenesis
- objenesis-javadoc
- obs-service-appimage
@@ -14257,6 +14274,7 @@
- openvswitch
- openvswitch-devel
- openvswitch-doc
+ - openvswitch-ipsec
- openvswitch-ovn-central
- openvswitch-ovn-common
- openvswitch-ovn-docker
@@ -16702,6 +16720,7 @@
- python2-Durus
- python2-EasyProcess
- python2-EditorConfig
+ - python2-ExifRead
- python2-Fabric
- python2-Fabric3
- python2-Faker
@@ -16750,6 +16769,7 @@
- python2-Keras-Preprocessing
- python2-Kivy
- python2-Kivy-devel
+ - python2-Lektor
- python2-Levenshtein
- python2-Logbook
- python2-M2Crypto
@@ -16901,6 +16921,7 @@
- python2-ansi2html
- python2-ansicolor
- python2-ansicolors
+ - python2-ansiwrap
- python2-antlr
- python2-anyjson
- python2-apache-libcloud
@@ -17368,6 +17389,7 @@
- python2-docutils-ast-writer
- python2-dogpile.cache
- python2-dominate
+ - python2-dparse
- python2-dpkt
- python2-drf-jwt-knox
- python2-dropbox
@@ -17474,6 +17496,8 @@
- python2-gTTS
- python2-gTTS-token
- python2-gabbi
+ - python2-gcsfs
+ - python2-gcsfs-fuse
- python2-gear
- python2-genty
- python2-geoip2
@@ -17504,6 +17528,7 @@
- python2-google-api-python-client
- python2-google-auth
- python2-google-auth-httplib2
+ - python2-google-auth-oauthlib
- python2-google-cloud-core
- python2-google-cloud-kms
- python2-google-cloud-speech
@@ -17581,6 +17606,7 @@
- python2-inflect
- python2-inflection
- python2-influxdb
+ - python2-inifile
- python2-inspektor
- python2-intervals
- python2-intervaltree
@@ -17892,6 +17918,7 @@
- python2-openstackdocstheme
- python2-openstacksdk
- python2-ordered-namespace
+ - python2-ordered-set
- python2-orderedmultidict
- python2-os-api-ref
- python2-os-client-config
@@ -18281,6 +18308,7 @@
- python2-python-vlc
- python2-python-whois
- python2-python-xlib
+ - python2-python3-saml
- python2-pythonfinder
- python2-pythonwhois
- python2-pytils
@@ -18559,11 +18587,13 @@
- python2-textfsm
- python2-textile
- python2-texttable
+ - python2-textwrap3
- python2-thLib
- python2-thrift
- python2-thriftpy
- python2-tinyrpc
- python2-titlecase
+ - python2-tkreadonly
- python2-tld
- python2-tldextract
- python2-tmx
@@ -18780,6 +18810,7 @@
- python3-Durus
- python3-EasyProcess
- python3-EditorConfig
+ - python3-ExifRead
- python3-Fabric
- python3-Fabric3
- python3-Faker
@@ -18829,6 +18860,7 @@
- python3-Keras-Preprocessing
- python3-Kivy
- python3-Kivy-devel
+ - python3-Lektor
- python3-Levenshtein
- python3-Logbook
- python3-Mako
@@ -18988,6 +19020,7 @@
- python3-ansi2html
- python3-ansicolor
- python3-ansicolors
+ - python3-ansiwrap
- python3-anyjson
- python3-apache-libcloud
- python3-apipkg
@@ -19326,6 +19359,7 @@
- python3-confusable-homoglyphs
- python3-construct
- python3-contextlib2
+ - python3-contextvars
- python3-cookies
- python3-cooldict
- python3-coreapi
@@ -19477,6 +19511,7 @@
- python3-docutils-ast-writer
- python3-dogpile.cache
- python3-dominate
+ - python3-dparse
- python3-dpcontracts
- python3-dpkt
- python3-drf-jwt-knox
@@ -19595,6 +19630,8 @@
- python3-gTTS-token
- python3-gabbi
- python3-gcemetadata
+ - python3-gcsfs
+ - python3-gcsfs-fuse
- python3-gear
- python3-geis
- python3-genty
@@ -19631,6 +19668,7 @@
- python3-google-api-python-client
- python3-google-auth
- python3-google-auth-httplib2
+ - python3-google-auth-oauthlib
- python3-google-cloud-core
- python3-google-cloud-kms
- python3-google-cloud-speech
@@ -19700,6 +19738,7 @@
- python3-imagesize
- python3-imbox
- python3-img2pdf
+ - python3-immutables
- python3-importlab
- python3-importlib-metadata
- python3-importlib_resources
@@ -19708,6 +19747,7 @@
- python3-inflect
- python3-inflection
- python3-influxdb
+ - python3-inifile
- python3-iniparse
- python3-injector
- python3-inspektor
@@ -19847,6 +19887,7 @@
- python3-leveldb
- python3-lexicon
- python3-lhafile
+ - python3-lib3to6
- python3-libaccounts
- python3-libarchive
- python3-libarchive-c
@@ -20061,6 +20102,7 @@
- python3-openstacksdk
- python3-openwsman
- python3-ordered-namespace
+ - python3-ordered-set
- python3-orderedmultidict
- python3-os-api-ref
- python3-os-client-config
@@ -20458,6 +20500,7 @@
- python3-python-whois
- python3-python-xlib
- python3-python3-openid
+ - python3-python3-saml
- python3-pythonfinder
- python3-pythonwhois
- python3-pytils
@@ -20742,6 +20785,7 @@
- python3-textfsm
- python3-textile
- python3-texttable
+ - python3-textwrap3
- python3-thLib
- python3-thrift
- python3-thriftpy
@@ -20749,6 +20793,7 @@
- python3-tinyrpc
- python3-titlecase
- python3-tk
+ - python3-tkreadonly
- python3-tld
- python3-tldextract
- python3-tmx
@@ -22766,6 +22811,8 @@
- startup-notification-devel
- statgrab
- statserial
+ - stax2-api
+ - stax2-api-javadoc
- stb-devel
- stdman
- steamtricks
1
0
Hello community,
here is the log from the commit of package 000release-packages for openSUSE:Factory checked in at 2019-05-06 19:01:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000release-packages (Old)
and /work/SRC/openSUSE:Factory/.000release-packages.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000release-packages"
Mon May 6 19:01:23 2019 rev:126 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ openSUSE-Addon-NonOss-release.spec ++++++
--- /var/tmp/diff_new_pack.HVqHZQ/_old 2019-05-06 19:01:25.721607178 +0200
+++ /var/tmp/diff_new_pack.HVqHZQ/_new 2019-05-06 19:01:25.721607178 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package openSUSE-Addon-NonOss-release (Version 20190505)
+# spec file for package openSUSE-Addon-NonOss-release (Version 20190506)
#
# Copyright (c) 2019 openSUSE.
#
@@ -16,16 +16,16 @@
Name: openSUSE-Addon-NonOss-release
%define product openSUSE-Addon-NonOss
Summary: openSUSE NonOSS Addon
-Version: 20190505
+Version: 20190506
Release: 0
License: BSD-3-Clause
Group: System/Fhs
Provides: %name-%version
Provides: product() = openSUSE-Addon-NonOss
-Provides: product(openSUSE-Addon-NonOss) = 20190505-0
+Provides: product(openSUSE-Addon-NonOss) = 20190506-0
Provides: product-label() = non%20oss%20addon
-Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%2Daddon%2Dnonoss%3A20190505
+Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%2Daddon%2Dnonoss%3A20190506
AutoReqProv: on
@@ -49,10 +49,10 @@
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>openSUSE-Addon-NonOss</name>
- <version>20190505</version>
+ <version>20190506</version>
<release>0</release>
<arch>%{_target_cpu}</arch>
- <cpeid>cpe:/o:opensuse:opensuse-addon-nonoss:20190505</cpeid>
+ <cpeid>cpe:/o:opensuse:opensuse-addon-nonoss:20190506</cpeid>
<register>
<pool>
</pool>
++++++ openSUSE-MicroOS-release.spec ++++++
--- /var/tmp/diff_new_pack.HVqHZQ/_old 2019-05-06 19:01:25.737607208 +0200
+++ /var/tmp/diff_new_pack.HVqHZQ/_new 2019-05-06 19:01:25.741607215 +0200
@@ -17,7 +17,7 @@
Name: openSUSE-MicroOS-release
-Version: 20190505
+Version: 20190506
Release: 0
Summary: openSUSE MicroOS
License: GPL-2.0-or-later
@@ -40,9 +40,9 @@
ExclusiveArch: %ix86 x86_64 ppc64le s390x aarch64
Provides: %name-%version
Provides: product() = openSUSE-MicroOS
-Provides: product(openSUSE-MicroOS) = 20190505-0
+Provides: product(openSUSE-MicroOS) = 20190506-0
Provides: product-label() = openSUSE%20MicroOS
-Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%2Dmicroos%3A20190505
+Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%2Dmicroos%3A20190506
Provides: product-url(releasenotes) = http%3A%2F%2Fdoc.opensuse.org%2Frelease%2Dnotes%2Fx86_64%2FopenSUSE%2FTumbleweed%2Frelease%2Dnotes%2DopenSUSE.rpm
Provides: product-endoflife()
Requires: product_flavor(openSUSE-MicroOS)
@@ -58,7 +58,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(dvd)
-Provides: product_flavor(openSUSE-MicroOS) = 20190505-0
+Provides: product_flavor(openSUSE-MicroOS) = 20190506-0
Summary: openSUSE MicroOS
%description dvd
@@ -74,7 +74,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(kubic-dvd)
-Provides: product_flavor(openSUSE-MicroOS) = 20190505-0
+Provides: product_flavor(openSUSE-MicroOS) = 20190506-0
Summary: openSUSE MicroOS
%description kubic-dvd
@@ -90,7 +90,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance)
-Provides: product_flavor(openSUSE-MicroOS) = 20190505-0
+Provides: product_flavor(openSUSE-MicroOS) = 20190506-0
Summary: openSUSE MicroOS
%description appliance
@@ -106,7 +106,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance-kubic)
-Provides: product_flavor(openSUSE-MicroOS) = 20190505-0
+Provides: product_flavor(openSUSE-MicroOS) = 20190506-0
Summary: openSUSE MicroOS
%description appliance-kubic
@@ -164,11 +164,11 @@
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>openSUSE-MicroOS</name>
- <version>20190505</version>
+ <version>20190506</version>
<release>0</release>
<endoflife></endoflife>
<arch>%{_target_cpu}</arch>
- <cpeid>cpe:/o:opensuse:opensuse-microos:20190505</cpeid>
+ <cpeid>cpe:/o:opensuse:opensuse-microos:20190506</cpeid>
<productline>openSUSE-MicroOS</productline>
<register>
<pool>
++++++ openSUSE-release.spec ++++++
--- /var/tmp/diff_new_pack.HVqHZQ/_old 2019-05-06 19:01:25.753607238 +0200
+++ /var/tmp/diff_new_pack.HVqHZQ/_new 2019-05-06 19:01:25.753607238 +0200
@@ -20,7 +20,7 @@
#define betaversion %{nil}
%define codename Tumbleweed
Name: openSUSE-release
-Version: 20190505
+Version: 20190506
Release: 0
# 0 is the product release, not the build release of this package
Summary: openSUSE Tumbleweed
@@ -55,7 +55,7 @@
Obsoletes: aaa_version
Obsoletes: openSUSE-Promo-release <= 11.1
Obsoletes: openSUSE-release-live <= 11.0
-Obsoletes: product_flavor(%{product}) < 20190505
+Obsoletes: product_flavor(%{product}) < 20190506
# bnc#826592
Provides: weakremover(kernel-default) < 3.11
Provides: weakremover(kernel-desktop) < 4.2
@@ -183,7 +183,7 @@
%include %{SOURCE100}
Provides: %name-%version
Provides: product() = openSUSE
-Provides: product(openSUSE) = 20190505-0
+Provides: product(openSUSE) = 20190506-0
%ifarch x86_64
Provides: product-register-target() = openSUSE%2DTumbleweed%2Dx86_64
%endif
@@ -197,7 +197,7 @@
Provides: product-register-target() = openSUSE%2DTumbleweed%2Daarch64
%endif
Provides: product-label() = openSUSE
-Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%3A20190505
+Provides: product-cpeid() = cpe%3A%2Fo%3Aopensuse%3Aopensuse%3A20190506
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
Requires: product_flavor(openSUSE)
@@ -211,7 +211,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(ftp)
-Provides: product_flavor(openSUSE) = 20190505-0
+Provides: product_flavor(openSUSE) = 20190506-0
Summary: openSUSE Tumbleweed
%description ftp
@@ -226,7 +226,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(mini)
-Provides: product_flavor(openSUSE) = 20190505-0
+Provides: product_flavor(openSUSE) = 20190506-0
Summary: openSUSE Tumbleweed
%description mini
@@ -241,7 +241,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(dvd)
-Provides: product_flavor(openSUSE) = 20190505-0
+Provides: product_flavor(openSUSE) = 20190506-0
Summary: openSUSE Tumbleweed
%description dvd
@@ -256,7 +256,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(livecd-kde)
-Provides: product_flavor(openSUSE) = 20190505-0
+Provides: product_flavor(openSUSE) = 20190506-0
Summary: openSUSE Tumbleweed
%description livecd-kde
@@ -271,7 +271,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(livecd-x11)
-Provides: product_flavor(openSUSE) = 20190505-0
+Provides: product_flavor(openSUSE) = 20190506-0
Summary: openSUSE Tumbleweed
%description livecd-x11
@@ -286,7 +286,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(livecd-gnome)
-Provides: product_flavor(openSUSE) = 20190505-0
+Provides: product_flavor(openSUSE) = 20190506-0
Summary: openSUSE Tumbleweed
%description livecd-gnome
@@ -301,7 +301,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(livecd-xfce)
-Provides: product_flavor(openSUSE) = 20190505-0
+Provides: product_flavor(openSUSE) = 20190506-0
Summary: openSUSE Tumbleweed
%description livecd-xfce
@@ -316,7 +316,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(usb-kde)
-Provides: product_flavor(openSUSE) = 20190505-0
+Provides: product_flavor(openSUSE) = 20190506-0
Summary: openSUSE Tumbleweed
%description usb-kde
@@ -331,7 +331,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(usb-gnome)
-Provides: product_flavor(openSUSE) = 20190505-0
+Provides: product_flavor(openSUSE) = 20190506-0
Summary: openSUSE Tumbleweed
%description usb-gnome
@@ -346,7 +346,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(usb-x11)
-Provides: product_flavor(openSUSE) = 20190505-0
+Provides: product_flavor(openSUSE) = 20190506-0
Summary: openSUSE Tumbleweed
%description usb-x11
@@ -361,7 +361,7 @@
Group: System/Fhs
Provides: product_flavor()
Provides: flavor(appliance)
-Provides: product_flavor(openSUSE) = 20190505-0
+Provides: product_flavor(openSUSE) = 20190506-0
Summary: openSUSE Tumbleweed
%description appliance
@@ -435,10 +435,10 @@
<product schemeversion="0">
<vendor>openSUSE</vendor>
<name>openSUSE</name>
- <version>20190505</version>
+ <version>20190506</version>
<release>0</release>
<arch>%{_target_cpu}</arch>
- <cpeid>cpe:/o:opensuse:opensuse:20190505</cpeid>
+ <cpeid>cpe:/o:opensuse:opensuse:20190506</cpeid>
<productline>openSUSE</productline>
<register>
<pool>
++++++ weakremovers.inc ++++++
--- /var/tmp/diff_new_pack.HVqHZQ/_old 2019-05-06 19:01:25.861607443 +0200
+++ /var/tmp/diff_new_pack.HVqHZQ/_new 2019-05-06 19:01:25.861607443 +0200
@@ -13061,6 +13061,7 @@
Provides: weakremover(libHACD2_83)
Provides: weakremover(libHalf12)
Provides: weakremover(libHalf23)
+Provides: weakremover(libHepMC-3_0_0)
Provides: weakremover(libIex-2_2-12)
Provides: weakremover(libIex-2_2-23)
Provides: weakremover(libIexMath-2_2-12)
@@ -13130,6 +13131,7 @@
Provides: weakremover(libTMCG9)
Provides: weakremover(libYODA-1_6_5)
Provides: weakremover(libYODA-1_6_7)
+Provides: weakremover(libYODA-1_7_0)
Provides: weakremover(libaal-1_0-6)
Provides: weakremover(libaal-devel-static)
Provides: weakremover(libaccounts-qt5-tools)
1
0
Hello community,
here is the log from the commit of package 000product for openSUSE:Factory checked in at 2019-05-06 13:29:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000product (Old)
and /work/SRC/openSUSE:Factory/.000product.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000product"
Mon May 6 13:29:43 2019 rev:1174 rq: version:unknown
Mon May 6 13:29:37 2019 rev:1173 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
openSUSE-MicroOS-dvd5-dvd-x86_64.kiwi: same change
openSUSE-MicroOS-dvd5-kubic-dvd-x86_64.kiwi: same change
openSUSE-cd-mini-i586.kiwi: same change
openSUSE-cd-mini-x86_64.kiwi: same change
openSUSE-dvd5-dvd-i586.kiwi: same change
openSUSE-dvd5-dvd-x86_64.kiwi: same change
openSUSE-ftp-ftp-i586_x86_64.kiwi: same change
stub.kiwi: same change
++++++ openSUSE-MicroOS.product ++++++
--- /var/tmp/diff_new_pack.BCLLmJ/_old 2019-05-06 13:29:53.605598497 +0200
+++ /var/tmp/diff_new_pack.BCLLmJ/_new 2019-05-06 13:29:53.605598497 +0200
@@ -6,7 +6,7 @@
<name>openSUSE-MicroOS</name>
<releasepkgname>openSUSE-MicroOS-release</releasepkgname>
<endoflife/>
- <version>20190505</version>
+ <version>20190506</version>
<!-- release is no longer optional -->
<release>0</release>
<productline>openSUSE-MicroOS</productline>
++++++ openSUSE.product ++++++
--- /var/tmp/diff_new_pack.BCLLmJ/_old 2019-05-06 13:29:53.617598523 +0200
+++ /var/tmp/diff_new_pack.BCLLmJ/_new 2019-05-06 13:29:53.617598523 +0200
@@ -4,7 +4,7 @@
<product>
<vendor>openSUSE</vendor>
<name>openSUSE</name>
- <version>20190505</version>
+ <version>20190506</version>
<release>0</release>
<productline>openSUSE</productline>
1
0
Hello community,
here is the log from the commit of package 000product for openSUSE:Factory checked in at 2019-05-06 13:29:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/000product (Old)
and /work/SRC/openSUSE:Factory/.000product.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "000product"
Mon May 6 13:29:33 2019 rev:1172 rq: version:unknown
Changes:
--------
New Changes file:
NO CHANGES FILE!!!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
openSUSE-MicroOS-dvd5-dvd-x86_64.kiwi: same change
openSUSE-MicroOS-dvd5-kubic-dvd-x86_64.kiwi: same change
openSUSE-cd-mini-i586.kiwi: same change
openSUSE-cd-mini-x86_64.kiwi: same change
openSUSE-dvd5-dvd-i586.kiwi: same change
openSUSE-dvd5-dvd-x86_64.kiwi: same change
openSUSE-ftp-ftp-i586_x86_64.kiwi: same change
stub.kiwi: same change
++++++ openSUSE-Addon-NonOss.product ++++++
--- /var/tmp/diff_new_pack.H4OktG/_old 2019-05-06 13:29:41.833573037 +0200
+++ /var/tmp/diff_new_pack.H4OktG/_new 2019-05-06 13:29:41.833573037 +0200
@@ -4,7 +4,7 @@
<product>
<vendor>openSUSE</vendor>
<name>openSUSE-Addon-NonOss</name>
- <version>20190505</version>
+ <version>20190506</version>
<release>0</release>
<summary>openSUSE NonOSS Addon</summary>
<shortsummary>non oss addon</shortsummary>
1
0
Hello community,
here is the log from the commit of package objectweb-pom for openSUSE:Factory checked in at 2019-05-06 13:29:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/objectweb-pom (Old)
and /work/SRC/openSUSE:Factory/.objectweb-pom.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "objectweb-pom"
Mon May 6 13:29:22 2019 rev:1 rq:701005 version:1.5
Changes:
--------
New Changes file:
--- /dev/null 2019-05-02 15:18:01.516169518 +0200
+++ /work/SRC/openSUSE:Factory/.objectweb-pom.new.5148/objectweb-pom.changes 2019-05-06 13:29:26.873540685 +0200
@@ -0,0 +1,4 @@
+-------------------------------------------------------------------
+Fri Dec 28 20:59:27 UTC 2018 - Fridrich Strba <fstrba(a)suse.com>
+
+- Initial package of objectweb parent pom
New:
----
LICENSE-2.0.txt
objectweb-pom.changes
objectweb-pom.spec
ow2-1.5.pom
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ objectweb-pom.spec ++++++
#
# spec file for package objectweb-pom
#
# Copyright (c) 2019 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
# 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 https://bugs.opensuse.org/
#
Name: objectweb-pom
Version: 1.5
Release: 0
Summary: Objectweb POM
License: Apache-2.0
Group: Development/Libraries/Java
URL: http://gitorious.ow2.org/ow2/pom/
Source0: http://repo.maven.apache.org/maven2/org/ow2/ow2/%{version}/ow2-%{version}.p…
Source1: http://www.apache.org/licenses/LICENSE-2.0.txt
BuildRequires: javapackages-local
BuildRequires: xmvn-resolve
BuildRequires: mvn(org.apache.maven.plugins:maven-enforcer-plugin)
BuildArch: noarch
%description
This package provides Objectweb parent POM used by different
Objectweb packages.
%prep
cp -p %{SOURCE0} pom.xml
cp -p %{SOURCE1} LICENSE
%build
%install
install -dm 0755 %{buildroot}%{_mavenpomdir}/%{name}
install -pm 0644 pom.xml %{buildroot}%{_mavenpomdir}/%{name}/ow2.pom
%add_maven_depmap %{name}/ow2.pom
%files -f .mfiles
%license LICENSE
%changelog
++++++ LICENSE-2.0.txt ++++++
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
++++++ ow2-1.5.pom ++++++
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright 2011-2012 Bull S.A.S.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.ow2</groupId>
<artifactId>ow2</artifactId>
<version>1.5</version>
<packaging>pom</packaging>
<name>OW2 Consortium</name>
<description>
The OW2 Consortium is an open source community committed to making available to everyone
the best and most reliable middleware technology, including generic enterprise applications
and cloud computing technologies. The mission of the OW2 Consortium is to
i) develop open source code for middleware, generic enterprise applications and cloud computing and
ii) to foster a vibrant community and business ecosystem.
</description>
<!-- License of this POM -->
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<!-- Consortium description -->
<organization>
<name>OW2 Consortium</name>
<url>http://www.ow2.org</url>
</organization>
<!-- TODO Needs to be changed in the future
with a reference to a page explaining how to do releases -->
<url>http://www.ow2.org</url>
<!-- Who worked on this project ? -->
<developers>
<developer>
<id>sauthieg</id>
<name>Guillaume Sauthier</name>
<email>guillaume.sauthier(a)ow2.org</email>
</developer>
</developers>
<properties>
<!-- OW2 Logo can be referred using the '${organization.logo}' property -->
<organization.logo>
http://www.ow2.org/xwiki/bin/download/NewsEvents/MarketingResources/ow2_log…
</organization.logo>
<!-- Avoid the annoying warning -->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<!-- Use properties so they could be overridden if needed -->
<ow2DistMgmtSnapshotsUrl>http://repository.ow2.org/nexus/content/repositories/snapshots</ow2DistMgmtSnapshotsUrl>
<ow2DistMgmtReleasesUrl>http://repository.ow2.org/nexus/service/local/staging/deploy/maven2</ow2DistMgmtReleasesUrl>
<ow2SourceAssemblyDescriptorRef>source-release</ow2SourceAssemblyDescriptorRef>
<ow2ReleaseProfiles>ow2-release</ow2ReleaseProfiles>
<maven-source-assemblies.version>1.0.1</maven-source-assemblies.version>
<!-- Used plugins default versions (make them overridable) -->
<maven-assembly-plugin.version>2.3</maven-assembly-plugin.version>
<maven-gpg-plugin.version>1.4</maven-gpg-plugin.version>
<maven-javadoc-plugin.version>2.8.1</maven-javadoc-plugin.version>
<maven-source-plugin.version>2.1.2</maven-source-plugin.version>
<maven-release-plugin.version>2.3.2</maven-release-plugin.version>
</properties>
<!-- Source Code Management -->
<scm>
<connection>scm:git:git@gitorious.ow2.org:ow2/pom.git</connection>
<developerConnection>scm:git:git@gitorious.ow2.org:ow2/pom.git</developerConnection>
<url>http://gitorious.ow2.org/ow2/pom</url>
<tag>ow2-1.5</tag>
</scm>
<!-- Distribution -->
<distributionManagement>
<!-- Site omitted - each project must provide their own -->
<!-- Release Repository (with staging):
Refer to this server in your settings.xml using the 'ow2.release' ID -->
<repository>
<id>ow2.release</id>
<name>OW2 Maven Releases Repository</name>
<url>${ow2DistMgmtReleasesUrl}</url>
</repository>
<!-- Snapshots Repository:
Refer to this server in your settings.xml using the 'ow2.snapshot' ID -->
<snapshotRepository>
<id>ow2.snapshot</id>
<name>OW2 Maven Snapshots Repository</name>
<url>${ow2DistMgmtSnapshotsUrl}</url>
</snapshotRepository>
</distributionManagement>
<!-- ============================================================================================
- TODO Remove the snapshots repositories from the super pom
- Explanation:
- http://www.sonatype.com/people/2010/03/why-external-repos-are-being-phased-…
============================================================================================ -->
<!-- Plugin Repositories -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- Used to search plugins, plugins dependencies and build extensions
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<pluginRepositories>
<!-- Only list the snapshot repository here since the
main repository is synchronized to central -->
<pluginRepository>
<id>ow2-plugin-snapshot</id>
<name>OW2 Snapshot Plugin Repository</name>
<url>http://repository.ow2.org/nexus/content/repositories/snapshots</url>
<releases>
<enabled>false</enabled>
</releases>
</pluginRepository>
</pluginRepositories>
<!-- Repositories -->
<repositories>
<!-- Only list the snapshot repository here since the
main repository is synchronized to central -->
<repository>
<id>ow2-snapshot</id>
<name>OW2 Snapshot Repository</name>
<url>http://repository.ow2.org/nexus/content/repositories/snapshots</url>
<releases>
<enabled>false</enabled>
</releases>
</repository>
</repositories>
<build>
<plugins>
<!-- Enforce Maven version usage: excludes some that are known with defects -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>1.0-beta-1</version>
<executions>
<execution>
<id>enforce-maven</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireMavenVersion>
<version>(,2.1.0),(2.1.0,2.2.0),(2.2.0,)</version>
<message>Maven 2.1.0 and 2.2.0 produce incorrect GPG signatures and checksums respectively.</message>
</requireMavenVersion>
</rules>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<!-- Default configuration of the maven-release-plugin:
* 'release' profile not used
* use 'ow2-release' profile
-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>${maven-release-plugin.version}</version>
<configuration>
<mavenExecutorId>forked-path</mavenExecutorId>
<!-- Do not use the default release profile, use our own instead -->
<useReleaseProfile>false</useReleaseProfile>
<!-- Our own release profile -->
<releaseProfiles>${ow2ReleaseProfiles}</releaseProfiles>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<profiles>
<profile>
<id>ow2-release</id>
<build>
<plugins>
<!-- - - - - - - - - - - - - - - - - - - - - -->
<!-- Attach the sources to the project -->
<!-- - - - - - - - - - - - - - - - - - - - - -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>${maven-source-plugin.version}</version>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- - - - - - - - - - - - - - - - - - - - - -->
<!-- Attach the javadoc to the project -->
<!-- - - - - - - - - - - - - - - - - - - - - -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>${maven-javadoc-plugin.version}</version>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- - - - - - - - - - - - - - - - - - - - - -->
<!-- Sign all the artifacts -->
<!-- - - - - - - - - - - - - - - - - - - - - -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>${maven-gpg-plugin.version}</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- - - - - - - - - - - - - - - - - - - - - -->
<!-- Generates a source assembly -->
<!-- - - - - - - - - - - - - - - - - - - - - -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>${maven-assembly-plugin.version}</version>
<executions>
<execution>
<id>source-release-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<!-- Do not execute that plugin for all modules -->
<runOnlyAtExecutionRoot>true</runOnlyAtExecutionRoot>
<descriptorRefs>
<descriptorRef>${ow2SourceAssemblyDescriptorRef}</descriptorRef>
</descriptorRefs>
<!-- Use GNU Tar -->
<tarLongFileMode>gnu</tarLongFileMode>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.ow2</groupId>
<artifactId>maven-source-assemblies</artifactId>
<version>${maven-source-assemblies.version}</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>
1
0
Hello community,
here is the log from the commit of package python-translation-finder for openSUSE:Factory checked in at 2019-05-06 13:29:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-translation-finder (Old)
and /work/SRC/openSUSE:Factory/.python-translation-finder.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-translation-finder"
Mon May 6 13:29:18 2019 rev:3 rq:700999 version:1.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-translation-finder/python-translation-finder.changes 2019-04-04 12:07:11.149452998 +0200
+++ /work/SRC/openSUSE:Factory/.python-translation-finder.new.5148/python-translation-finder.changes 2019-05-06 13:29:22.089530339 +0200
@@ -1,0 +2,13 @@
+Mon May 6 08:46:03 UTC 2019 - pgajdos(a)suse.com
+
+- version update to 1.4
+ * Improved detection in Perl code.
+ * Extended skip list for language codes.
+ * Improved detection of nested language codes with country suffix.
+ * Improved processing of Transifex .tx/config files.
+ * Include discovery metadata in API results.
+ * Improve detection of files in source directory.
+ * Fixed discovery of monolingual files in root.
+ * Improved detection of non language paths.
+
+-------------------------------------------------------------------
Old:
----
translation-finder-1.1.tar.gz
New:
----
1.4.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-translation-finder.spec ++++++
--- /var/tmp/diff_new_pack.um8itt/_old 2019-05-06 13:29:22.761531792 +0200
+++ /var/tmp/diff_new_pack.um8itt/_new 2019-05-06 13:29:22.761531792 +0200
@@ -20,13 +20,14 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%define modname translation-finder
Name: python-translation-finder
-Version: 1.1
+Version: 1.4
Release: 0
Summary: Translation Files Finder
License: GPL-3.0-or-later
Group: Development/Languages/Python
URL: https://github.com/WeblateOrg/translation-finder
-Source: https://files.pythonhosted.org/packages/source/t/translation-finder/%{modna…
+# test_data/linked has to be symlink, hance using github tar ball
+Source: https://github.com/WeblateOrg/translation-finder/archive/%{version}.tar.gz
BuildRequires: %{python_module chardet}
BuildRequires: %{python_module clint}
BuildRequires: %{python_module pytest-runner}
@@ -39,6 +40,7 @@
BuildRequires: python-pathlib2
BuildRequires: python-rpm-macros
Requires: python-chardet
+Requires: python-setuptools
Requires: python-six
Requires(post): update-alternatives
Requires(postun): update-alternatives
@@ -69,7 +71,7 @@
%python_uninstall_alternative weblate-discover
%check
-%python_expand py.test-%{$python_bin_suffix} -v translation_finder
+%pytest
%files %{python_files}
%doc CHANGES.rst README.rst
++++++ translation-finder-1.1.tar.gz -> 1.4.tar.gz ++++++
++++ 1935 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package guake for openSUSE:Factory checked in at 2019-05-06 13:29:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/guake (Old)
and /work/SRC/openSUSE:Factory/.guake.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "guake"
Mon May 6 13:29:14 2019 rev:9 rq:700996 version:3.6.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/guake/guake.changes 2019-04-28 20:15:40.958335357 +0200
+++ /work/SRC/openSUSE:Factory/.guake.new.5148/guake.changes 2019-05-06 13:29:18.353522259 +0200
@@ -1,0 +2,11 @@
+Mon Apr 29 05:59:22 UTC 2019 - Paolo Stivanin <info(a)paolostivanin.com>
+
+- Update to 3.6.1:
+ * new feature: search in current terminal
+ * new feature: session saving
+ * new feature: settings export and import
+ * various fixes to the core
+ * minor build system fixes
+ * translation updates
+
+-------------------------------------------------------------------
Old:
----
3.5.0.tar.gz
New:
----
3.6.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ guake.spec ++++++
--- /var/tmp/diff_new_pack.k93Ibg/_old 2019-05-06 13:29:19.021523704 +0200
+++ /var/tmp/diff_new_pack.k93Ibg/_new 2019-05-06 13:29:19.021523704 +0200
@@ -17,7 +17,7 @@
Name: guake
-Version: 3.5.0
+Version: 3.6.1
Release: 0
Summary: Drop-down terminal for GNOME
License: GPL-2.0-only
@@ -33,6 +33,7 @@
BuildRequires: python3-pip
BuildRequires: python3-setuptools
BuildRequires: update-desktop-files
+BuildRequires: pkgconfig(libwnck-3.0)
Requires: python3-cairo
Requires: python3-dbus-python
Requires: python3-gobject-Gdk
++++++ 3.5.0.tar.gz -> 3.6.1.tar.gz ++++++
++++ 7528 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package qbittorrent for openSUSE:Factory checked in at 2019-05-06 13:29:01
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/qbittorrent (Old)
and /work/SRC/openSUSE:Factory/.qbittorrent.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "qbittorrent"
Mon May 6 13:29:01 2019 rev:69 rq:700995 version:4.1.6
Changes:
--------
--- /work/SRC/openSUSE:Factory/qbittorrent/qbittorrent.changes 2018-12-28 12:34:47.903985414 +0100
+++ /work/SRC/openSUSE:Factory/.qbittorrent.new.5148/qbittorrent.changes 2019-05-06 13:29:13.373511489 +0200
@@ -1,0 +2,36 @@
+Mon May 6 07:58:32 UTC 2019 - Luigi Baldoni <aloisio(a)gmx.com>
+
+- Update to version 4.1.6
+ * BUGFIX: Force recheck multiple torrents one by one in all
+ possible cases. Closes #9120 (glassez)
+ * BUGFIX: Don't query Google for tracker favicons, for privacy
+ reasons (sledgehammer999)
+ * BUGFIX: Work around the crash occurred in QTimer. Closes
+ #9985 (Chocobo1)
+ * BUGFIX: Increase the .torrent file download size limit to
+ 100 MiB (thalieht)
+ * BUGFIX: Disable downloading tracker favicons by default.
+ Works around reported crashes in Linux. Closes #9667
+ (Chocobo1)
+ * WEBUI: Separate URL components before percent-decoding.
+ Allow special characters in query string parameters. Closes
+ #9116 (glass>
+ * WEBUI: Prevent login credential appearing in URL. Closes
+ #10221 (Chocobo1)
+ * WEBUI: Display warning when Javascript is disabled (Chocobo1)
+ * WEBUI: Fix translatable strings (Chocobo1)
+ * WEBUI: Correctly handle '+' sign in x-www-form-urlencoded
+ data. Closes #10451 (Chocobo1)
+ * WEBUI: Remove closed connections immediately. Closes #10487
+ (Chocobo1)
+ * WEBUI: Fix "Create subfolder" option is not working. Closes
+ ##10392 (Chocobo1)
+ * SEARCH: Make num enter key work the same as return in
+ searchjobwidget (thalieht)
+ * LINUX: Make window title bar icon work in Wayland (Peter
+ Eszlari)
+ * LINUX: Update appdata.xml file (Chocobo1)
+ * OTHER: Mention more translators in the about tab. Closes
+ #10043 (sledgehammer999)
+
+-------------------------------------------------------------------
Old:
----
qbittorrent-4.1.5.tar.xz
qbittorrent-4.1.5.tar.xz.asc
New:
----
qbittorrent-4.1.6.tar.xz
qbittorrent-4.1.6.tar.xz.asc
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ qbittorrent.spec ++++++
--- /var/tmp/diff_new_pack.wq1lPl/_old 2019-05-06 13:29:14.701514361 +0200
+++ /var/tmp/diff_new_pack.wq1lPl/_new 2019-05-06 13:29:14.705514370 +0200
@@ -1,7 +1,7 @@
#
# spec file for package qbittorrent
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2014 Mariusz Fik <fisiu(a)opensuse.org>.
#
# All modifications and additions to the file contributed by third parties
@@ -18,7 +18,7 @@
Name: qbittorrent
-Version: 4.1.5
+Version: 4.1.6
Release: 0
Summary: A BitTorrent client in Qt
License: GPL-2.0-or-later
@@ -125,12 +125,11 @@
%license COPYING
%doc AUTHORS Changelog README.md TODO
%{_bindir}/%{name}
-%{_datadir}/applications/%{name}.desktop
+%{_datadir}/applications/org.qbittorrent.qBittorrent.desktop
%{_datadir}/icons/hicolor/*/apps/%{name}.png
%{_datadir}/icons/hicolor/*/status/%{name}-tray.png
%{_datadir}/icons/hicolor/scalable/status/%{name}-tray*.svg
-%dir %{_datadir}/appdata/
-%{_datadir}/appdata/%{name}.appdata.xml
+%{_datadir}/metainfo/org.qbittorrent.qBittorrent.appdata.xml
%{_mandir}/man?/%{name}.?%{?ext_man}
%files nox
++++++ qbittorrent-4.1.5.tar.xz -> qbittorrent-4.1.6.tar.xz ++++++
++++ 123764 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package k3s for openSUSE:Factory checked in at 2019-05-06 13:28:55
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/k3s (Old)
and /work/SRC/openSUSE:Factory/.k3s.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "k3s"
Mon May 6 13:28:55 2019 rev:2 rq:700991 version:0.4.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/k3s/k3s.changes 2019-03-28 22:49:10.159049495 +0100
+++ /work/SRC/openSUSE:Factory/.k3s.new.5148/k3s.changes 2019-05-06 13:29:01.217485200 +0200
@@ -1,0 +2,65 @@
+Thu May 2 12:44:52 UTC 2019 - Duncan Mac-Vicar <dmacvicar(a)suse.de>
+
+- Update to version 0.4.0
+ * Features and Enhancements
+ - Update to kubernetes v1.14.1 - Upgraded from Kubernetes
+ v1.13.5.
+ This Kubernetes upgrade moves pid limiting to beta and is
+ enabled by default, which may not be supported by all kernels.
+ K3s will auto-detect cgroup pids support and add flags as
+ needed if the pids module is not available. [#335]
+ - Add --bind-address flag for API server [#214]
+ Support custom bind address for kubernetes API server to bind to.
+ - Add --cluster-domain flag for custom kubelet and DNS configuration [#267]
+ Support configuring custom DNS cluster domains.
+ - Add --flannel-iface flag for agent [#72]
+ Support custom flannel interface.
+ - Add passthrough args [#290]
+ Support for overriding k3s default arguments or passing custom
+ arguments to Kubernetes processes:
+ --kube-apiserver-arg value
+ Customized flag for kube-apiserver process
+ --kube-scheduler-arg value
+ Customized flag for kube-scheduler process
+ --kube-controller-arg value
+ Customized flag for kube-controller-manager process
+ --kubelet-arg value
+ (agent) Customized flag for kubelet process
+ --kube-proxy-arg value
+ (agent) Customized flag for kube-proxy process
+ - Initial metrics-server support [#252]
+ Configures aggregation layer so metrics server can be launched and
+ metrics scraped. Future enhancements will remove need for a
+ custom metrics server deployment.
+ - Add experimental rootless support
+ Provides --rootless flag for running k3s agent as a user.
+ * Bug fixes
+ - Fixed an issue where k3s may not connect to the API server when using
+ proxy settings [#325]
+- Changes from Release v0.3.0
+ * Features and Enhancements
+ - Airgap support with helm and preinstalled images [#166]
+ Support static helm charts through the API server and loading
+ container images on agents. See our documentation for details
+ on how to perform airgap installations.
+ - Add --tls-san flag for API server cert validation [#200]
+ Support alternate names for cert generation to avoid API cert issues.
+ - Add --resolv-conf flag for custom kubelet DNS configuration [#53]
+ - Support configuring custom DNS resolvers or using the host system's
+ resolv.conf configuration. If the host system's resolv.conf doesn't
+ supply any viable resolvers, intelligently fallback to 8.8.8.8
+ (Google Public DNS).
+ - Update to kubernetes v1.13.5
+ This upgrade from v1.13.4 addresses Kubernetes CVE-2019-9946
+ and CVE-2019-1002101.
+ * Bug fixes
+ - Fixed an issue where the k3s service load balancer will not be created
+ if the port name is longer than 15 characters #90
+ - Fixed an issue where k3s does not ignore empty yaml documents in a
+ manfest #222
+ - Fixed an issue where k3s may not run with selinux, the installer will now
+ add selinux permissions #227
+ - Fixed an issue where k3s deployment manifests are created even if
+ --no-deploy is specified #230
+
+-------------------------------------------------------------------
Old:
----
k3s-0.2.0.tar.gz
New:
----
k3s-0.4.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ k3s.spec ++++++
--- /var/tmp/diff_new_pack.pKb16T/_old 2019-05-06 13:29:02.629488254 +0200
+++ /var/tmp/diff_new_pack.pKb16T/_new 2019-05-06 13:29:02.629488254 +0200
@@ -15,11 +15,12 @@
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
+
# To workaround https://github.com/rancher/k3s/issues/231, build kubectl
%define build_kubectl 1
Name: k3s
-Version: 0.2.0
+Version: 0.4.0
Release: 0
Summary: A container orchestration system based on a reduced Kubernetes feature set
License: Apache-2.0
@@ -32,10 +33,10 @@
Source4: agent.conf
Patch0: cni-bin-dir.patch
BuildRequires: c_compiler
-BuildRequires: golang(API) >= 1.11
BuildRequires: golang-packaging
BuildRequires: pkgconfig
BuildRequires: systemd-rpm-macros
+BuildRequires: golang(API) >= 1.11
BuildRequires: pkgconfig(sqlite3)
Requires: cni-plugins
Requires: conntrack-tools
++++++ k3s-0.2.0.tar.gz -> k3s-0.4.0.tar.gz ++++++
/work/SRC/openSUSE:Factory/k3s/k3s-0.2.0.tar.gz /work/SRC/openSUSE:Factory/.k3s.new.5148/k3s-0.4.0.tar.gz differ: char 13, line 1
1
0
Hello community,
here is the log from the commit of package desktop-translations for openSUSE:Factory checked in at 2019-05-06 13:28:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/desktop-translations (Old)
and /work/SRC/openSUSE:Factory/.desktop-translations.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "desktop-translations"
Mon May 6 13:28:49 2019 rev:112 rq:700989 version:84.87.20190504.726deb37
Changes:
--------
--- /work/SRC/openSUSE:Factory/desktop-translations/desktop-translations.changes 2019-04-11 12:20:15.337017311 +0200
+++ /work/SRC/openSUSE:Factory/.desktop-translations.new.5148/desktop-translations.changes 2019-05-06 13:28:55.889473677 +0200
@@ -1,0 +2,13 @@
+Mon May 6 08:05:29 UTC 2019 - Karl Eichwalder <ke(a)suse.de>
+
+- Update to version 84.87.20190504.726deb37:
+ * Translated using Weblate (Catalan)
+ * Translated using Weblate (Czech)
+ * Translated using Weblate (Finnish)
+ * Translated using Weblate (Lithuanian)
+ * Translated using Weblate (Portuguese (Brazil))
+ * Translated using Weblate (Russian)
+ * Translated using Weblate (Slovak)
+ * update translations
+
+-------------------------------------------------------------------
Old:
----
desktop-file-translations-84.87.20190409.048e157e.tar.xz
New:
----
desktop-file-translations-84.87.20190504.726deb37.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ desktop-translations.spec ++++++
--- /var/tmp/diff_new_pack.CkRDI8/_old 2019-05-06 13:28:57.257476636 +0200
+++ /var/tmp/diff_new_pack.CkRDI8/_new 2019-05-06 13:28:57.285476697 +0200
@@ -17,7 +17,7 @@
Name: desktop-translations
-Version: 84.87.20190409.048e157e
+Version: 84.87.20190504.726deb37
Release: 0
Summary: Desktop Files Translations
License: MIT
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.CkRDI8/_old 2019-05-06 13:28:57.489477138 +0200
+++ /var/tmp/diff_new_pack.CkRDI8/_new 2019-05-06 13:28:57.489477138 +0200
@@ -1,4 +1,4 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/openSUSE/desktop-file-translations.git</param>
- <param name="changesrevision">048e157e578e935fc78ae97470eaa184775412bd</param></service></servicedata>
\ No newline at end of file
+ <param name="changesrevision">726deb37ba6169f1ddb500730b4e214b47f506bd</param></service></servicedata>
\ No newline at end of file
++++++ desktop-file-translations-84.87.20190409.048e157e.tar.xz -> desktop-file-translations-84.87.20190504.726deb37.tar.xz ++++++
/work/SRC/openSUSE:Factory/desktop-translations/desktop-file-translations-84.87.20190409.048e157e.tar.xz /work/SRC/openSUSE:Factory/.desktop-translations.new.5148/desktop-file-translations-84.87.20190504.726deb37.tar.xz differ: char 26, line 1
1
0
Hello community,
here is the log from the commit of package chessx for openSUSE:Factory checked in at 2019-05-06 13:28:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/chessx (Old)
and /work/SRC/openSUSE:Factory/.chessx.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "chessx"
Mon May 6 13:28:46 2019 rev:7 rq:700987 version:1.5.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/chessx/chessx.changes 2019-05-05 21:22:39.457479584 +0200
+++ /work/SRC/openSUSE:Factory/.chessx.new.5148/chessx.changes 2019-05-06 13:28:48.177456999 +0200
@@ -1,0 +2,5 @@
+Mon May 6 08:02:08 UTC 2019 - Luigi Baldoni <aloisio(a)gmx.com>
+
+- New tarball with Qt 5.9 fix (no version change)
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ chessx.spec ++++++
--- /var/tmp/diff_new_pack.JfkIu8/_old 2019-05-06 13:28:49.113459024 +0200
+++ /var/tmp/diff_new_pack.JfkIu8/_new 2019-05-06 13:28:49.113459024 +0200
@@ -28,7 +28,7 @@
BuildRequires: libqt5-linguist
BuildRequires: pkgconfig
BuildRequires: pkgconfig(Qt5Concurrent)
-BuildRequires: pkgconfig(Qt5Core) >= 5.10
+BuildRequires: pkgconfig(Qt5Core)
BuildRequires: pkgconfig(Qt5Multimedia)
BuildRequires: pkgconfig(Qt5PrintSupport)
BuildRequires: pkgconfig(Qt5Svg)
++++++ chessx-1.5.0.tgz ++++++
/work/SRC/openSUSE:Factory/chessx/chessx-1.5.0.tgz /work/SRC/openSUSE:Factory/.chessx.new.5148/chessx-1.5.0.tgz differ: char 5, line 1
1
0
Hello community,
here is the log from the commit of package yast2-slide-show for openSUSE:Factory checked in at 2019-05-06 13:28:41
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-slide-show (Old)
and /work/SRC/openSUSE:Factory/.yast2-slide-show.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-slide-show"
Mon May 6 13:28:41 2019 rev:129 rq:700979 version:84.87.20190314.3f822a8
Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2-slide-show/yast2-slide-show.changes 2019-02-13 10:04:30.517574390 +0100
+++ /work/SRC/openSUSE:Factory/.yast2-slide-show.new.5148/yast2-slide-show.changes 2019-05-06 13:28:45.013450156 +0200
@@ -1,0 +2,6 @@
+Mon May 6 07:55:39 UTC 2019 - Karl Eichwalder <ke(a)suse.de>
+
+- Update to version 84.87.20190314.3f822a8:
+ * Translated using Weblate (Kabyle)
+
+-------------------------------------------------------------------
Old:
----
yast2-slide-show-84.87.20190114.7a77166.tar.xz
New:
----
yast2-slide-show-84.87.20190314.3f822a8.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-slide-show.spec ++++++
--- /var/tmp/diff_new_pack.ZeF3NQ/_old 2019-05-06 13:28:45.477451160 +0200
+++ /var/tmp/diff_new_pack.ZeF3NQ/_new 2019-05-06 13:28:45.481451169 +0200
@@ -16,12 +16,12 @@
#
-%define version_unconverted 84.87.20190114.7a77166
+%define version_unconverted 84.87.20190314.3f822a8
# xml2po uses temporary files that do not like being called twice
# xml2po probably is not thread-safe.
%define jobs 1
Name: yast2-slide-show
-Version: 84.87.20190114.7a77166
+Version: 84.87.20190314.3f822a8
Release: 0
Summary: Slide show displayed during package installation with YaST
License: GPL-2.0-only
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.ZeF3NQ/_old 2019-05-06 13:28:45.513451238 +0200
+++ /var/tmp/diff_new_pack.ZeF3NQ/_new 2019-05-06 13:28:45.513451238 +0200
@@ -3,4 +3,4 @@
<param name="url">git://github.com/lnussel/yast-slide-show.git</param>
<param name="changesrevision">6f56730fc1760741bd3b6e95b3f02dad104347f0</param></service><service name="tar_scm">
<param name="url">git://github.com/openSUSE/yast-slide-show.git</param>
- <param name="changesrevision">7a771666a840efc821bac29da744494c53a6841b</param></service></servicedata>
\ No newline at end of file
+ <param name="changesrevision">3f822a8cfd9d5aa0045281e661277b3d43ff4fd7</param></service></servicedata>
\ No newline at end of file
++++++ yast2-slide-show-84.87.20190114.7a77166.tar.xz -> yast2-slide-show-84.87.20190314.3f822a8.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-slide-show-84.87.20190114.7a77166/po/kab.po new/yast2-slide-show-84.87.20190314.3f822a8/po/kab.po
--- old/yast2-slide-show-84.87.20190114.7a77166/po/kab.po 2019-01-14 17:46:08.000000000 +0100
+++ new/yast2-slide-show-84.87.20190314.3f822a8/po/kab.po 2019-03-14 20:12:13.000000000 +0100
@@ -2,21 +2,24 @@
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2017-06-12 13:27+0200\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: Automatically generated\n"
-"Language-Team: none\n"
+"PO-Revision-Date: 2019-03-14 19:12+0000\n"
+"Last-Translator: Belkacem Mohammed <belkacem77(a)gmail.com>\n"
+"Language-Team: Kabyle <https://l10n.opensuse.org/projects/yast-slide-show/"
+"master/kab/>\n"
"Language: kab\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n > 1;\n"
+"X-Generator: Weblate 3.3\n"
#: slideshow.xml:14(title)
msgid "Slide Show"
-msgstr ""
+msgstr "Ameskan n tigri"
#: slideshow.xml:17(title)
msgid "Welcome to openSUSE™!"
-msgstr ""
+msgstr "Anṣuf ɣer openSUSE™!"
#: slideshow.xml:19(para)
msgid "openSUSE is the makers' choice for sysadmins, developers and desktop users because it gives you more choices than other distributions. openSUSE Leap combines proven core packages from SUSE Linux Enterprise with community built packages, which creates synergies for the project's distribution. Get the Best of Both Worlds with openSUSE Leap. openSUSE releases provide users a feature-rich server environments and user-friendly desktop. Enthusiasts and professionals looking for a long-term, highly stable Linux system need to look no further than openSUSE Leap 42.3, which complements the latest SUSE Linux Enterprise due to the shared sources. Thank you for making the change to use the most dependable and stable Linux system - openSUSE Leap 42.3."
@@ -24,7 +27,7 @@
#: slideshow.xml:25(title)
msgid "openSUSE.org"
-msgstr ""
+msgstr "openSUSE.org"
#: slideshow.xml:27(para)
msgid "openSUSE is a community of projects and is sponsored by SUSE and other companies. The project has many people around the world who contribute to the openSUSE Project by packaging software, testing programs, writing documentation and translating it in languages used throughout the world. openSUSE has two distributions (Leap and Tumbleweed), tools (openQA, Kiwi and YaST), a software builder (Open Build Service) and projects (Portus and Machinery). Find out more at www.opensuse.org."
@@ -36,7 +39,7 @@
#: slideshow.xml:35(title)
msgid "openSUSE in Many Languages"
-msgstr ""
+msgstr "openSUSE deg ddeqs n tutlayin"
#: slideshow.xml:37(para)
msgid "Translating made easy - Are you interested in helping openSUSE be translated into your language? With https://l10n.opensuse.org/, you can get started right away. It is easy and you can contribute to this worldwide projects in a matter of minutes. All you need to do is login and start translating. Yes, it is that easy. Thank you to all of our contributors and especially to those contributors who bring the efforts of our hard-working community to people throughout the globe."
@@ -44,7 +47,7 @@
#: slideshow.xml:43(title)
msgid "Connect and Communicate"
-msgstr ""
+msgstr "Qqen & Mmeslay"
#: slideshow.xml:45(para)
msgid "You can communicate more effectively with openSUSE Leap 42.3 because it provides a complete set of tools for Web browsing and e-mail management – it even includes Voice over IP technology."
@@ -60,7 +63,7 @@
#: slideshow.xml:65(title)
msgid "Developers and Sysadmins"
-msgstr ""
+msgstr "Ineflayen d yinedbalen n unagraw"
#: slideshow.xml:66(para)
msgid "openSUSE Leap and openSUSE Tumbleweed are great distributions for development, testing and deployment. Whether you need the latest packages, which can be found on Tumbleweed, or more stable packages, which can be found on Leap, openSUSE gives you the tools, community and packages needed to be sucessful."
@@ -68,7 +71,7 @@
#: slideshow.xml:72(title)
msgid "Documents, Spreadsheets and More"
-msgstr ""
+msgstr "Arraten, tiferkiyin n usiḍen d wayen-nniḍen."
#: slideshow.xml:74(para)
msgid "The openSUSE Leap 42.3 distribution comes complete with the latest version of the leading Linux productivity suite, LibreOffice. It features a word processor, spreadsheet application, HTML editor, presentation designer, and database manager. It reads and writes multiple formats – including Microsoft Office formats – so you can move back and forth easily between openSUSE and popular non-Linux productivity software. LibreOffice is the perfect choice for reports, papers, home budgets, simple graphics and more."
@@ -76,7 +79,7 @@
#: slideshow.xml:85(title)
msgid "Graphics, Graphics, Graphics"
-msgstr ""
+msgstr "Udlifen, Udlifen, Udlifen"
#: slideshow.xml:87(para)
msgid "Using the tools in openSUSE Leap 42.3, you can create or edit almost any type of graphic. For advanced image manipulation and graphics creation, use The GIMP, a powerful tool for image retouching, composition, and authoring."
@@ -88,7 +91,7 @@
#: slideshow.xml:100(title)
msgid "Computing On-the-Go"
-msgstr ""
+msgstr "Tasenselkimt On-the-Go"
#: slideshow.xml:102(para)
msgid "openSUSE Leap 42.3 includes the most advanced mobility features. You can switch effortlessly between wireless and wired networks using NetworkManager. Connect with mobile devices like mobile phones and tablets via Bluetooth."
@@ -121,7 +124,7 @@
#: slideshow.xml:153(title)
msgid "Learn More"
-msgstr ""
+msgstr "Issin ugar"
#: slideshow.xml:154(para)
msgid "openSUSE Leap 42.3 provides extensive documentation for specific openSUSE questions as well as general Linux-related questions. The Help Center is accessible via the main menu. Manuals are also available in PDF and can be downloaded and printed (http://en.opensuse.org/Portal:Documentation)"
@@ -141,7 +144,7 @@
#: slideshow.xml:193(title)
msgid "SUSE and Linux"
-msgstr ""
+msgstr "SUSE d Linux"
#: slideshow.xml:194(para)
msgid "SUSE is committed to your success with Linux. In addition to openSUSE, SUSE also delivers an exciting suite of products designed to meet the needs of businesses large and small."
@@ -154,4 +157,4 @@
#. Put one translator per line, in the form of NAME <EMAIL>, YEAR1, YEAR2
#: slideshow.xml:0(None)
msgid "translator-credits"
-msgstr ""
+msgstr "Ismaden n umsuqel"
1
0
Hello community,
here is the log from the commit of package python-coverage-env-plugin for openSUSE:Factory checked in at 2019-05-06 13:28:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-coverage-env-plugin (Old)
and /work/SRC/openSUSE:Factory/.python-coverage-env-plugin.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-coverage-env-plugin"
Mon May 6 13:28:37 2019 rev:3 rq:700976 version:0.2.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-coverage-env-plugin/python-coverage-env-plugin.changes 2018-12-13 19:41:57.557207418 +0100
+++ /work/SRC/openSUSE:Factory/.python-coverage-env-plugin.new.5148/python-coverage-env-plugin.changes 2019-05-06 13:28:40.029439378 +0200
@@ -1,0 +2,8 @@
+Sat May 4 09:17:56 UTC 2019 - John Vandenberg <jayvdb(a)gmail.com>
+
+- Update to v0.2.0
+ * Tests for all coverage patch versions 4.0 - 5.0a,
+ CPython 2.7 and 3.4 - 3.7 and PyPy 6.0
+ * Add LICENSE to distributions
+
+-------------------------------------------------------------------
Old:
----
LICENSE
coverage_env_plugin-0.1-py2.py3-none-any.whl
New:
----
coverage-env-plugin-0.2.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-coverage-env-plugin.spec ++++++
--- /var/tmp/diff_new_pack.ggDwIF/_old 2019-05-06 13:28:41.685442959 +0200
+++ /var/tmp/diff_new_pack.ggDwIF/_new 2019-05-06 13:28:41.689442968 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-coverage-env-plugin
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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
@@ -18,21 +18,22 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-coverage-env-plugin
-Version: 0.1
+Version: 0.2.0
Release: 0
Summary: Coverage environment plugin
License: MIT
Group: Development/Languages/Python
Url: https://github.com/jayvdb/coverage_env_plugin
-Source0: https://files.pythonhosted.org/packages/any/c/coverage-env-plugin/coverage_…
-Source10: https://raw.githubusercontent.com/jayvdb/coverage_env_plugin/%{version}/LIC…
-BuildRequires: %{python_module pip}
-BuildRequires: fdupes
+Source: https://files.pythonhosted.org/packages/source/c/coverage-env-plugin/covera…
+BuildRequires: %{python_module setuptools}
BuildRequires: python-rpm-macros
# SECTION test requirements
BuildRequires: %{python_module coverage >= 4.0}
+BuildRequires: %{python_module coverage-config-reload-plugin}
BuildRequires: %{python_module packaging}
+BuildRequires: %{python_module unittest-mixins}
# /SECTION
+BuildRequires: fdupes
Requires: python-coverage >= 4.0
Requires: python-packaging
BuildArch: noarch
@@ -43,17 +44,20 @@
Environment plugin for the coverage package.
%prep
-%setup -T -c -n %{name}-%{version}
-cp %{SOURCE10} .
+%setup -q -n coverage-env-plugin-%{version}
%build
-# Not needed
+%python_build
%install
-%python_expand pip%{$python_bin_suffix} install --root %{buildroot} --prefix %{_prefix} --compile %{SOURCE0}
+%python_install
+%python_expand %fdupes %{buildroot}%{$python_sitelib}
+
+%check
+%python_exec setup.py test
%files %{python_files}
-%defattr(-,root,root,-)
+%doc CHANGELOG.md README.md
%license LICENSE
%{python_sitelib}/*
1
0
Hello community,
here is the log from the commit of package python-coverage-config-reload-plugin for openSUSE:Factory checked in at 2019-05-06 13:28:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-coverage-config-reload-plugin (Old)
and /work/SRC/openSUSE:Factory/.python-coverage-config-reload-plugin.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-coverage-config-reload-plugin"
Mon May 6 13:28:30 2019 rev:3 rq:700975 version:0.3.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-coverage-config-reload-plugin/python-coverage-config-reload-plugin.changes 2018-12-13 19:41:54.533211379 +0100
+++ /work/SRC/openSUSE:Factory/.python-coverage-config-reload-plugin.new.5148/python-coverage-config-reload-plugin.changes 2019-05-06 13:28:35.877430399 +0200
@@ -1,0 +2,12 @@
+Sat May 4 09:08:20 UTC 2019 - John Vandenberg <jayvdb(a)gmail.com>
+
+- Update to v0.3.0
+ * Support for coverage 4.4.1+
+ * All logic moved into PluginBase and ConfigReloadPlugin
+ which is registered as a plugin using either noop or
+ configurer plugin types
+ * Tests for all coverage patch versions 4.0 - 5.0a,
+ CPython 2.7 and 3.4 - 3.7 and PyPy 6.0
+ * Add LICENSE to distributions
+
+-------------------------------------------------------------------
Old:
----
LICENSE
coverage_config_reload_plugin-0.2.0-py2.py3-none-any.whl
New:
----
coverage-config-reload-plugin-0.3.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-coverage-config-reload-plugin.spec ++++++
--- /var/tmp/diff_new_pack.vqnocZ/_old 2019-05-06 13:28:36.589431938 +0200
+++ /var/tmp/diff_new_pack.vqnocZ/_new 2019-05-06 13:28:36.589431938 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-coverage-config-reload-plugin
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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
@@ -18,25 +18,22 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-coverage-config-reload-plugin
-Version: 0.2.0
+Version: 0.3.0
Release: 0
-# For license file
-%define tag 2abc0b1f930ee5b281e15e8fb7e3dfe7a456e414
Summary: Coverage hack plugin to reload the coverage configuration
License: MIT
Group: Development/Languages/Python
-Url: https://github.com/jayvdb/coverage_config_reload_plugin
-Source0: https://files.pythonhosted.org/packages/any/c/coverage-config-reload-plugin…
-Source10: https://raw.githubusercontent.com/jayvdb/coverage_config_reload_plugin/%{ta…
-BuildRequires: %{python_module pip}
+URL: https://github.com/jayvdb/coverage_config_reload_plugin
+Source: https://files.pythonhosted.org/packages/source/c/coverage-config-reload-plu…
+BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
+Requires: python-coverage >= 4.0
+BuildArch: noarch
# SECTION test requirements
BuildRequires: %{python_module coverage >= 4.0}
+BuildRequires: %{python_module unittest-mixins}
# /SECTION
-Requires: python-coverage >= 4.0
-BuildArch: noarch
-
%python_subpackages
%description
@@ -44,17 +41,20 @@
configuration files after other plugins have been loaded.
%prep
-%setup -T -c -n %{name}-%{version}
-cp %{SOURCE10} .
+%setup -q -n coverage-config-reload-plugin-%{version}
%build
-# Not needed
+%python_build
%install
-%python_expand pip%{$python_bin_suffix} install --root %{buildroot} --prefix %{_prefix} --compile %{SOURCE0}
+%python_install
+%python_expand %fdupes %{buildroot}%{$python_sitelib}
+
+%check
+%python_exec setup.py test
%files %{python_files}
-%defattr(-,root,root,-)
+%doc CHANGELOG.md README.md
%license LICENSE
%{python_sitelib}/*
1
0
Hello community,
here is the log from the commit of package python-alembic for openSUSE:Factory checked in at 2019-05-06 13:28:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-alembic (Old)
and /work/SRC/openSUSE:Factory/.python-alembic.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-alembic"
Mon May 6 13:28:26 2019 rev:43 rq:700974 version:1.0.10
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-alembic/python-alembic.changes 2019-04-23 14:39:12.749583704 +0200
+++ /work/SRC/openSUSE:Factory/.python-alembic.new.5148/python-alembic.changes 2019-05-06 13:28:29.969417622 +0200
@@ -1,0 +2,24 @@
+Sat May 4 19:56:42 UTC 2019 - Arun Persaud <arun(a)gmx.de>
+
+- update to version 1.0.10:
+ * bug
+ + [bug] [commands] Fixed bug introduced in release 0.9.0 where the
+ helptext for commands inadvertently got expanded to include
+ function docstrings from the command.py module. The logic has
+ been adjusted to only refer to the first line(s) preceding the
+ first line break within each docstring, as was the original
+ intent. References: #552
+ + [bug] [mysql] [operations] Added an assertion in
+ RevisionMap.get_revisions() and other methods which ensures
+ revision numbers are passed as strings or collections of
+ strings. Driver issues particularly on MySQL may inadvertently
+ be passing bytes here which leads to failures later on.
+ References: #551
+ + [bug] [autogenerate] [mysql] Fixed bug when using the
+ EnvironmentContext.configure.compare_server_default flag set to
+ True where a server default that is introduced in the table
+ metadata on an Integer column, where there is no existing server
+ default in the database, would raise a TypeError. References:
+ #553
+
+-------------------------------------------------------------------
Old:
----
alembic-1.0.9.tar.gz
New:
----
alembic-1.0.10.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-alembic.spec ++++++
--- /var/tmp/diff_new_pack.dA9ZLQ/_old 2019-05-06 13:28:30.689419179 +0200
+++ /var/tmp/diff_new_pack.dA9ZLQ/_new 2019-05-06 13:28:30.689419179 +0200
@@ -18,7 +18,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-alembic
-Version: 1.0.9
+Version: 1.0.10
Release: 0
Summary: A database migration tool for SQLAlchemy
License: MIT
++++++ alembic-1.0.9.tar.gz -> alembic-1.0.10.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/PKG-INFO new/alembic-1.0.10/PKG-INFO
--- old/alembic-1.0.9/PKG-INFO 2019-04-15 17:39:19.000000000 +0200
+++ new/alembic-1.0.10/PKG-INFO 2019-04-28 20:55:32.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.2
Name: alembic
-Version: 1.0.9
+Version: 1.0.10
Summary: A database migration tool for SQLAlchemy.
Home-page: https://alembic.sqlalchemy.org
Author: Mike Bayer
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/alembic/__init__.py new/alembic-1.0.10/alembic/__init__.py
--- old/alembic-1.0.9/alembic/__init__.py 2019-04-15 17:38:12.000000000 +0200
+++ new/alembic-1.0.10/alembic/__init__.py 2019-04-28 20:54:37.000000000 +0200
@@ -6,7 +6,7 @@
from .runtime import environment
from .runtime import migration
-__version__ = '1.0.9'
+__version__ = '1.0.10'
package_dir = path.abspath(path.dirname(__file__))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/alembic/command.py new/alembic-1.0.10/alembic/command.py
--- old/alembic-1.0.9/alembic/command.py 2019-04-15 17:38:12.000000000 +0200
+++ new/alembic-1.0.10/alembic/command.py 2019-04-28 20:54:37.000000000 +0200
@@ -7,7 +7,7 @@
def list_templates(config):
- """List available templates
+ """List available templates.
:param config: a :class:`.Config` object.
@@ -409,7 +409,7 @@
def heads(config, verbose=False, resolve_dependencies=False):
- """Show current available heads in the script directory
+ """Show current available heads in the script directory.
:param config: a :class:`.Config` instance.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/alembic/config.py new/alembic-1.0.10/alembic/config.py
--- old/alembic-1.0.9/alembic/config.py 2019-04-15 17:38:12.000000000 +0200
+++ new/alembic-1.0.10/alembic/config.py 2019-04-28 20:54:37.000000000 +0200
@@ -486,7 +486,20 @@
positional = spec[0][1:]
kwarg = []
- subparser = subparsers.add_parser(fn.__name__, help=fn.__doc__)
+ # parse first line(s) of helptext without a line break
+ help_ = fn.__doc__
+ if help_:
+ help_text = []
+ for line in help_.split("\n"):
+ if not line.strip():
+ break
+ else:
+ help_text.append(line.strip())
+ else:
+ help_text = ""
+ subparser = subparsers.add_parser(
+ fn.__name__, help=" ".join(help_text)
+ )
add_options(subparser, positional, kwarg)
subparser.set_defaults(cmd=(fn, positional, kwarg))
self.parser = parser
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/alembic/ddl/mysql.py new/alembic-1.0.10/alembic/ddl/mysql.py
--- old/alembic-1.0.9/alembic/ddl/mysql.py 2019-04-15 17:38:12.000000000 +0200
+++ new/alembic-1.0.10/alembic/ddl/mysql.py 2019-04-28 20:54:37.000000000 +0200
@@ -128,7 +128,7 @@
elif inspector_column.type._type_affinity is sqltypes.Integer:
rendered_inspector_default = re.sub(
r"^'|'$", "", rendered_inspector_default
- )
+ ) if rendered_inspector_default is not None else None
return rendered_inspector_default != rendered_metadata_default
elif rendered_inspector_default and rendered_metadata_default:
# adjust for "function()" vs. "FUNCTION"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/alembic/script/revision.py new/alembic-1.0.10/alembic/script/revision.py
--- old/alembic-1.0.9/alembic/script/revision.py 2019-04-15 17:38:12.000000000 +0200
+++ new/alembic-1.0.10/alembic/script/revision.py 2019-04-28 20:54:37.000000000 +0200
@@ -314,6 +314,7 @@
full revision.
"""
+
if isinstance(id_, (list, tuple, set, frozenset)):
return sum([self.get_revisions(id_elem) for id_elem in id_], ())
else:
@@ -469,6 +470,20 @@
def _resolve_revision_number(self, id_):
if isinstance(id_, compat.string_types) and "@" in id_:
branch_label, id_ = id_.split("@", 1)
+
+ elif id_ is not None and (
+ (
+ isinstance(id_, tuple)
+ and id_
+ and not isinstance(id_[0], compat.string_types)
+ )
+ or not isinstance(id_, compat.string_types + (tuple, ))
+ ):
+ raise RevisionError(
+ "revision identifier %r is not a string; ensure database "
+ "driver settings are correct" % (id_,)
+ )
+
else:
branch_label = None
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/alembic/testing/requirements.py new/alembic-1.0.10/alembic/testing/requirements.py
--- old/alembic-1.0.9/alembic/testing/requirements.py 2019-04-15 17:38:12.000000000 +0200
+++ new/alembic-1.0.10/alembic/testing/requirements.py 2019-04-28 20:54:37.000000000 +0200
@@ -1,3 +1,5 @@
+import sys
+
from alembic import util
from alembic.util import sqla_compat
from . import exclusions
@@ -154,6 +156,12 @@
)
@property
+ def python3(self):
+ return exclusions.skip_if(
+ lambda: sys.version_info < (3,), "Python version 3.xx is required."
+ )
+
+ @property
def pep3147(self):
return exclusions.only_if(lambda config: util.compat.has_pep3147())
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/alembic.egg-info/PKG-INFO new/alembic-1.0.10/alembic.egg-info/PKG-INFO
--- old/alembic-1.0.9/alembic.egg-info/PKG-INFO 2019-04-15 17:39:19.000000000 +0200
+++ new/alembic-1.0.10/alembic.egg-info/PKG-INFO 2019-04-28 20:55:31.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.2
Name: alembic
-Version: 1.0.9
+Version: 1.0.10
Summary: A database migration tool for SQLAlchemy.
Home-page: https://alembic.sqlalchemy.org
Author: Mike Bayer
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/_sources/changelog.rst.txt new/alembic-1.0.10/docs/_sources/changelog.rst.txt
--- old/alembic-1.0.9/docs/_sources/changelog.rst.txt 2019-04-15 17:38:59.000000000 +0200
+++ new/alembic-1.0.10/docs/_sources/changelog.rst.txt 2019-04-28 20:55:16.000000000 +0200
@@ -4,6 +4,39 @@
==========
.. changelog::
+ :version: 1.0.10
+ :released: April 28, 2019
+
+ .. change::
+ :tags: bug, commands
+ :tickets: 552
+
+ Fixed bug introduced in release 0.9.0 where the helptext for commands
+ inadvertently got expanded to include function docstrings from the
+ command.py module. The logic has been adjusted to only refer to the first
+ line(s) preceding the first line break within each docstring, as was the
+ original intent.
+
+ .. change::
+ :tags: bug, operations, mysql
+ :tickets: 551
+
+ Added an assertion in :meth:`.RevisionMap.get_revisions` and other methods
+ which ensures revision numbers are passed as strings or collections of
+ strings. Driver issues particularly on MySQL may inadvertently be passing
+ bytes here which leads to failures later on.
+
+ .. change::
+ :tags: bug, autogenerate, mysql
+ :tickets: 553
+
+ Fixed bug when using the
+ :paramref:`.EnvironmentContext.configure.compare_server_default` flag set
+ to ``True`` where a server default that is introduced in the table metadata
+ on an ``Integer`` column, where there is no existing server default in the
+ database, would raise a ``TypeError``.
+
+.. changelog::
:version: 1.0.9
:released: April 15, 2019
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/_static/documentation_options.js new/alembic-1.0.10/docs/_static/documentation_options.js
--- old/alembic-1.0.9/docs/_static/documentation_options.js 2019-04-15 17:39:18.000000000 +0200
+++ new/alembic-1.0.10/docs/_static/documentation_options.js 2019-04-28 20:55:31.000000000 +0200
@@ -1,6 +1,6 @@
var DOCUMENTATION_OPTIONS = {
URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'),
- VERSION: '1.0.9',
+ VERSION: '1.0.10',
LANGUAGE: 'None',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/api/autogenerate.html new/alembic-1.0.10/docs/api/autogenerate.html
--- old/alembic-1.0.9/docs/api/autogenerate.html 2019-04-15 17:39:14.000000000 +0200
+++ new/alembic-1.0.10/docs/api/autogenerate.html 2019-04-28 20:55:28.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>Autogeneration — Alembic 1.0.9 documentation</title>
+ <title>Autogeneration — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="../_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="../_static/changelog.css" />
@@ -34,7 +34,7 @@
<li class="right" >
<a href="operations.html" title="Operation Directives"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.10 documentation</a> »</li>
<li class="nav-item nav-item-1"><a href="index.html" accesskey="U">API Details</a> »</li>
</ul>
</div>
@@ -1008,7 +1008,7 @@
<li class="right" >
<a href="operations.html" title="Operation Directives"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.10 documentation</a> »</li>
<li class="nav-item nav-item-1"><a href="index.html" >API Details</a> »</li>
</ul>
</div>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/api/commands.html new/alembic-1.0.10/docs/api/commands.html
--- old/alembic-1.0.9/docs/api/commands.html 2019-04-15 17:39:14.000000000 +0200
+++ new/alembic-1.0.10/docs/api/commands.html 2019-04-28 20:55:28.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>Commands — Alembic 1.0.9 documentation</title>
+ <title>Commands — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="../_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="../_static/changelog.css" />
@@ -34,7 +34,7 @@
<li class="right" >
<a href="config.html" title="Configuration"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.10 documentation</a> »</li>
<li class="nav-item nav-item-1"><a href="index.html" accesskey="U">API Details</a> »</li>
</ul>
</div>
@@ -145,7 +145,7 @@
<dl class="function">
<dt id="alembic.command.heads">
<code class="descclassname">alembic.command.</code><code class="descname">heads</code><span class="sig-paren">(</span><em>config</em>, <em>verbose=False</em>, <em>resolve_dependencies=False</em><span class="sig-paren">)</span><a class="headerlink" href="#alembic.command.heads" title="Permalink to this definition">¶</a></dt>
-<dd><p>Show current available heads in the script directory</p>
+<dd><p>Show current available heads in the script directory.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><ul class="simple">
@@ -194,7 +194,7 @@
<dl class="function">
<dt id="alembic.command.list_templates">
<code class="descclassname">alembic.command.</code><code class="descname">list_templates</code><span class="sig-paren">(</span><em>config</em><span class="sig-paren">)</span><a class="headerlink" href="#alembic.command.list_templates" title="Permalink to this definition">¶</a></dt>
-<dd><p>List available templates</p>
+<dd><p>List available templates.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters</dt>
<dd class="field-odd"><p><span class="target" id="alembic.command.list_templates.params.config"></span><strong>config</strong><a class="paramlink headerlink reference internal" href="#alembic.command.list_templates.params.config">¶</a> – a <a class="reference internal" href="config.html#alembic.config.Config" title="alembic.config.Config"><code class="xref py py-class docutils literal notranslate"><span class="pre">Config</span></code></a> object.</p>
@@ -366,7 +366,7 @@
<li class="right" >
<a href="config.html" title="Configuration"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.10 documentation</a> »</li>
<li class="nav-item nav-item-1"><a href="index.html" >API Details</a> »</li>
</ul>
</div>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/api/config.html new/alembic-1.0.10/docs/api/config.html
--- old/alembic-1.0.9/docs/api/config.html 2019-04-15 17:39:15.000000000 +0200
+++ new/alembic-1.0.10/docs/api/config.html 2019-04-28 20:55:28.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>Configuration — Alembic 1.0.9 documentation</title>
+ <title>Configuration — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="../_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="../_static/changelog.css" />
@@ -34,7 +34,7 @@
<li class="right" >
<a href="runtime.html" title="Runtime Objects"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.10 documentation</a> »</li>
<li class="nav-item nav-item-1"><a href="index.html" accesskey="U">API Details</a> »</li>
</ul>
</div>
@@ -356,7 +356,7 @@
<li class="right" >
<a href="runtime.html" title="Runtime Objects"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.10 documentation</a> »</li>
<li class="nav-item nav-item-1"><a href="index.html" >API Details</a> »</li>
</ul>
</div>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/api/ddl.html new/alembic-1.0.10/docs/api/ddl.html
--- old/alembic-1.0.9/docs/api/ddl.html 2019-04-15 17:39:15.000000000 +0200
+++ new/alembic-1.0.10/docs/api/ddl.html 2019-04-28 20:55:28.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>DDL Internals — Alembic 1.0.9 documentation</title>
+ <title>DDL Internals — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="../_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="../_static/changelog.css" />
@@ -34,7 +34,7 @@
<li class="right" >
<a href="script.html" title="Script Directory"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.10 documentation</a> »</li>
<li class="nav-item nav-item-1"><a href="index.html" accesskey="U">API Details</a> »</li>
</ul>
</div>
@@ -738,7 +738,7 @@
<li class="right" >
<a href="script.html" title="Script Directory"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.10 documentation</a> »</li>
<li class="nav-item nav-item-1"><a href="index.html" >API Details</a> »</li>
</ul>
</div>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/api/index.html new/alembic-1.0.10/docs/api/index.html
--- old/alembic-1.0.9/docs/api/index.html 2019-04-15 17:39:15.000000000 +0200
+++ new/alembic-1.0.10/docs/api/index.html 2019-04-28 20:55:28.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>API Details — Alembic 1.0.9 documentation</title>
+ <title>API Details — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="../_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="../_static/changelog.css" />
@@ -34,7 +34,7 @@
<li class="right" >
<a href="../cookbook.html" title="Cookbook"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
@@ -134,7 +134,7 @@
<li class="right" >
<a href="../cookbook.html" title="Cookbook"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
<div class="footer" role="contentinfo">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/api/operations.html new/alembic-1.0.10/docs/api/operations.html
--- old/alembic-1.0.9/docs/api/operations.html 2019-04-15 17:39:15.000000000 +0200
+++ new/alembic-1.0.10/docs/api/operations.html 2019-04-28 20:55:29.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>Operation Directives — Alembic 1.0.9 documentation</title>
+ <title>Operation Directives — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="../_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="../_static/changelog.css" />
@@ -34,7 +34,7 @@
<li class="right" >
<a href="commands.html" title="Commands"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.10 documentation</a> »</li>
<li class="nav-item nav-item-1"><a href="index.html" accesskey="U">API Details</a> »</li>
</ul>
</div>
@@ -669,7 +669,7 @@
<li class="right" >
<a href="commands.html" title="Commands"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.10 documentation</a> »</li>
<li class="nav-item nav-item-1"><a href="index.html" >API Details</a> »</li>
</ul>
</div>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/api/overview.html new/alembic-1.0.10/docs/api/overview.html
--- old/alembic-1.0.9/docs/api/overview.html 2019-04-15 17:39:15.000000000 +0200
+++ new/alembic-1.0.10/docs/api/overview.html 2019-04-28 20:55:29.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>Overview — Alembic 1.0.9 documentation</title>
+ <title>Overview — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="../_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="../_static/changelog.css" />
@@ -34,7 +34,7 @@
<li class="right" >
<a href="index.html" title="API Details"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.10 documentation</a> »</li>
<li class="nav-item nav-item-1"><a href="index.html" accesskey="U">API Details</a> »</li>
</ul>
</div>
@@ -142,7 +142,7 @@
<li class="right" >
<a href="index.html" title="API Details"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.10 documentation</a> »</li>
<li class="nav-item nav-item-1"><a href="index.html" >API Details</a> »</li>
</ul>
</div>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/api/runtime.html new/alembic-1.0.10/docs/api/runtime.html
--- old/alembic-1.0.9/docs/api/runtime.html 2019-04-15 17:39:16.000000000 +0200
+++ new/alembic-1.0.10/docs/api/runtime.html 2019-04-28 20:55:29.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>Runtime Objects — Alembic 1.0.9 documentation</title>
+ <title>Runtime Objects — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="../_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="../_static/changelog.css" />
@@ -34,7 +34,7 @@
<li class="right" >
<a href="overview.html" title="Overview"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.10 documentation</a> »</li>
<li class="nav-item nav-item-1"><a href="index.html" accesskey="U">API Details</a> »</li>
</ul>
</div>
@@ -1229,7 +1229,7 @@
<li class="right" >
<a href="overview.html" title="Overview"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.10 documentation</a> »</li>
<li class="nav-item nav-item-1"><a href="index.html" >API Details</a> »</li>
</ul>
</div>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/api/script.html new/alembic-1.0.10/docs/api/script.html
--- old/alembic-1.0.9/docs/api/script.html 2019-04-15 17:39:16.000000000 +0200
+++ new/alembic-1.0.10/docs/api/script.html 2019-04-28 20:55:29.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>Script Directory — Alembic 1.0.9 documentation</title>
+ <title>Script Directory — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="../_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="../_static/changelog.css" />
@@ -34,7 +34,7 @@
<li class="right" >
<a href="autogenerate.html" title="Autogeneration"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.10 documentation</a> »</li>
<li class="nav-item nav-item-1"><a href="index.html" accesskey="U">API Details</a> »</li>
</ul>
</div>
@@ -539,7 +539,7 @@
<li class="right" >
<a href="autogenerate.html" title="Autogeneration"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="../index.html">Alembic 1.0.10 documentation</a> »</li>
<li class="nav-item nav-item-1"><a href="index.html" >API Details</a> »</li>
</ul>
</div>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/autogenerate.html new/alembic-1.0.10/docs/autogenerate.html
--- old/alembic-1.0.9/docs/autogenerate.html 2019-04-15 17:39:16.000000000 +0200
+++ new/alembic-1.0.10/docs/autogenerate.html 2019-04-28 20:55:29.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>Auto Generating Migrations — Alembic 1.0.9 documentation</title>
+ <title>Auto Generating Migrations — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="_static/changelog.css" />
@@ -34,7 +34,7 @@
<li class="right" >
<a href="tutorial.html" title="Tutorial"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
@@ -561,7 +561,7 @@
<li class="right" >
<a href="tutorial.html" title="Tutorial"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
<div class="footer" role="contentinfo">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/batch.html new/alembic-1.0.10/docs/batch.html
--- old/alembic-1.0.9/docs/batch.html 2019-04-15 17:39:16.000000000 +0200
+++ new/alembic-1.0.10/docs/batch.html 2019-04-28 20:55:29.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>Running “Batch” Migrations for SQLite and Other Databases — Alembic 1.0.9 documentation</title>
+ <title>Running “Batch” Migrations for SQLite and Other Databases — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="_static/changelog.css" />
@@ -34,7 +34,7 @@
<li class="right" >
<a href="naming.html" title="The Importance of Naming Constraints"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
@@ -445,7 +445,7 @@
<li class="right" >
<a href="naming.html" title="The Importance of Naming Constraints"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
<div class="footer" role="contentinfo">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/branches.html new/alembic-1.0.10/docs/branches.html
--- old/alembic-1.0.9/docs/branches.html 2019-04-15 17:39:16.000000000 +0200
+++ new/alembic-1.0.10/docs/branches.html 2019-04-28 20:55:29.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>Working with Branches — Alembic 1.0.9 documentation</title>
+ <title>Working with Branches — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="_static/changelog.css" />
@@ -34,7 +34,7 @@
<li class="right" >
<a href="batch.html" title="Running “Batch” Migrations for SQLite and Other Databases"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
@@ -907,7 +907,7 @@
<li class="right" >
<a href="batch.html" title="Running “Batch” Migrations for SQLite and Other Databases"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
<div class="footer" role="contentinfo">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/build/changelog.rst new/alembic-1.0.10/docs/build/changelog.rst
--- old/alembic-1.0.9/docs/build/changelog.rst 2019-04-15 17:38:59.000000000 +0200
+++ new/alembic-1.0.10/docs/build/changelog.rst 2019-04-28 20:55:16.000000000 +0200
@@ -4,6 +4,39 @@
==========
.. changelog::
+ :version: 1.0.10
+ :released: April 28, 2019
+
+ .. change::
+ :tags: bug, commands
+ :tickets: 552
+
+ Fixed bug introduced in release 0.9.0 where the helptext for commands
+ inadvertently got expanded to include function docstrings from the
+ command.py module. The logic has been adjusted to only refer to the first
+ line(s) preceding the first line break within each docstring, as was the
+ original intent.
+
+ .. change::
+ :tags: bug, operations, mysql
+ :tickets: 551
+
+ Added an assertion in :meth:`.RevisionMap.get_revisions` and other methods
+ which ensures revision numbers are passed as strings or collections of
+ strings. Driver issues particularly on MySQL may inadvertently be passing
+ bytes here which leads to failures later on.
+
+ .. change::
+ :tags: bug, autogenerate, mysql
+ :tickets: 553
+
+ Fixed bug when using the
+ :paramref:`.EnvironmentContext.configure.compare_server_default` flag set
+ to ``True`` where a server default that is introduced in the table metadata
+ on an ``Integer`` column, where there is no existing server default in the
+ database, would raise a ``TypeError``.
+
+.. changelog::
:version: 1.0.9
:released: April 15, 2019
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/changelog.html new/alembic-1.0.10/docs/changelog.html
--- old/alembic-1.0.9/docs/changelog.html 2019-04-15 17:39:17.000000000 +0200
+++ new/alembic-1.0.10/docs/changelog.html 2019-04-28 20:55:30.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>Changelog — Alembic 1.0.9 documentation</title>
+ <title>Changelog — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="_static/changelog.css" />
@@ -30,7 +30,7 @@
<li class="right" >
<a href="api/ddl.html" title="DDL Internals"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
@@ -41,6 +41,37 @@
<div class="section" id="changelog">
<h1>Changelog<a class="headerlink" href="#changelog" title="Permalink to this headline">¶</a></h1>
+<div class="section" id="change-1.0.10">
+<h2>1.0.10<a class="headerlink" href="#change-1.0.10" title="Permalink to this headline">¶</a></h2>
+Released: April 28, 2019<div class="section" id="change-1.0.10-bug">
+<h3>bug<a class="headerlink" href="#change-1.0.10-bug" title="Permalink to this headline">¶</a></h3>
+<ul class="simple">
+<li><p id="change-1.0.10-0"><span class="target" id="change-17d42e31c2d70b48061542a1fd695f89"><strong>[bug] [commands] </strong></span><p>Fixed bug introduced in release 0.9.0 where the helptext for commands
+inadvertently got expanded to include function docstrings from the
+command.py module. The logic has been adjusted to only refer to the first
+line(s) preceding the first line break within each docstring, as was the
+original intent.</p>
+<a class="changeset-link headerlink reference internal" href="#change-17d42e31c2d70b48061542a1fd695f89">¶</a><p>References: <a class="reference external" href="https://github.com/sqlalchemy/alembic/issues/552">#552</a></p>
+</p>
+</li>
+<li><p id="change-1.0.10-1"><span class="target" id="change-3232b20bfd0900b31a318f8df00feb0c"><strong>[bug] [mysql] [operations] </strong></span><p>Added an assertion in <a class="reference internal" href="api/script.html#alembic.script.revision.RevisionMap.get_revisions" title="alembic.script.revision.RevisionMap.get_revisions"><code class="xref py py-meth docutils literal notranslate"><span class="pre">RevisionMap.get_revisions()</span></code></a> and other methods
+which ensures revision numbers are passed as strings or collections of
+strings. Driver issues particularly on MySQL may inadvertently be passing
+bytes here which leads to failures later on.</p>
+<a class="changeset-link headerlink reference internal" href="#change-3232b20bfd0900b31a318f8df00feb0c">¶</a><p>References: <a class="reference external" href="https://github.com/sqlalchemy/alembic/issues/551">#551</a></p>
+</p>
+</li>
+<li><p id="change-1.0.10-2"><span class="target" id="change-00e879549915237a13e74a1dd339d09e"><strong>[bug] [autogenerate] [mysql] </strong></span><p>Fixed bug when using the
+<a class="reference internal" href="api/runtime.html#alembic.runtime.environment.EnvironmentContext.configure.params.compare_server_default" title="alembic.runtime.environment.EnvironmentContext.configure"><code class="xref py py-paramref docutils literal notranslate"><span class="pre">EnvironmentContext.configure.compare_server_default</span></code></a> flag set
+to <code class="docutils literal notranslate"><span class="pre">True</span></code> where a server default that is introduced in the table metadata
+on an <code class="docutils literal notranslate"><span class="pre">Integer</span></code> column, where there is no existing server default in the
+database, would raise a <code class="docutils literal notranslate"><span class="pre">TypeError</span></code>.</p>
+<a class="changeset-link headerlink reference internal" href="#change-00e879549915237a13e74a1dd339d09e">¶</a><p>References: <a class="reference external" href="https://github.com/sqlalchemy/alembic/issues/553">#553</a></p>
+</p>
+</li>
+</ul>
+</div>
+</div>
<div class="section" id="change-1.0.9">
<h2>1.0.9<a class="headerlink" href="#change-1.0.9" title="Permalink to this headline">¶</a></h2>
Released: April 15, 2019<div class="section" id="change-1.0.9-bug">
@@ -3476,6 +3507,10 @@
<h3><a href="index.html">Table of Contents</a></h3>
<ul>
<li><a class="reference internal" href="#">Changelog</a><ul>
+<li><a class="reference internal" href="#change-1.0.10">1.0.10</a><ul>
+<li><a class="reference internal" href="#change-1.0.10-bug">bug</a></li>
+</ul>
+</li>
<li><a class="reference internal" href="#change-1.0.9">1.0.9</a><ul>
<li><a class="reference internal" href="#change-1.0.9-bug">bug</a></li>
</ul>
@@ -3800,7 +3835,7 @@
<li class="right" >
<a href="api/ddl.html" title="DDL Internals"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
<div class="footer" role="contentinfo">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/cookbook.html new/alembic-1.0.10/docs/cookbook.html
--- old/alembic-1.0.9/docs/cookbook.html 2019-04-15 17:39:17.000000000 +0200
+++ new/alembic-1.0.10/docs/cookbook.html 2019-04-28 20:55:30.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>Cookbook — Alembic 1.0.9 documentation</title>
+ <title>Cookbook — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="_static/changelog.css" />
@@ -34,7 +34,7 @@
<li class="right" >
<a href="ops.html" title="Operation Reference"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
@@ -1117,7 +1117,7 @@
<li class="right" >
<a href="ops.html" title="Operation Reference"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
<div class="footer" role="contentinfo">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/front.html new/alembic-1.0.10/docs/front.html
--- old/alembic-1.0.9/docs/front.html 2019-04-15 17:39:17.000000000 +0200
+++ new/alembic-1.0.10/docs/front.html 2019-04-28 20:55:30.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>Front Matter — Alembic 1.0.9 documentation</title>
+ <title>Front Matter — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="_static/changelog.css" />
@@ -34,7 +34,7 @@
<li class="right" >
<a href="index.html" title="Welcome to Alembic’s documentation!"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
@@ -149,7 +149,7 @@
<li class="right" >
<a href="index.html" title="Welcome to Alembic’s documentation!"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
<div class="footer" role="contentinfo">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/genindex.html new/alembic-1.0.10/docs/genindex.html
--- old/alembic-1.0.9/docs/genindex.html 2019-04-15 17:39:18.000000000 +0200
+++ new/alembic-1.0.10/docs/genindex.html 2019-04-28 20:55:31.000000000 +0200
@@ -5,7 +5,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>Index — Alembic 1.0.9 documentation</title>
+ <title>Index — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="_static/changelog.css" />
@@ -27,7 +27,7 @@
<li class="right" >
<a href="py-modindex.html" title="Python Module Index"
>modules</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
@@ -1548,7 +1548,7 @@
<li class="right" >
<a href="py-modindex.html" title="Python Module Index"
>modules</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
<div class="footer" role="contentinfo">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/index.html new/alembic-1.0.10/docs/index.html
--- old/alembic-1.0.9/docs/index.html 2019-04-15 17:39:17.000000000 +0200
+++ new/alembic-1.0.10/docs/index.html 2019-04-28 20:55:30.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>Welcome to Alembic’s documentation! — Alembic 1.0.9 documentation</title>
+ <title>Welcome to Alembic’s documentation! — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="_static/changelog.css" />
@@ -30,7 +30,7 @@
<li class="right" >
<a href="front.html" title="Front Matter"
accesskey="N">next</a> |</li>
- <li class="nav-item nav-item-0"><a href="#">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="#">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
@@ -179,6 +179,10 @@
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="changelog.html">Changelog</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="changelog.html#change-1.0.10">1.0.10</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="changelog.html#change-1.0.10-bug">bug</a></li>
+</ul>
+</li>
<li class="toctree-l2"><a class="reference internal" href="changelog.html#change-1.0.9">1.0.9</a><ul>
<li class="toctree-l3"><a class="reference internal" href="changelog.html#change-1.0.9-bug">bug</a></li>
</ul>
@@ -527,7 +531,7 @@
<li class="right" >
<a href="front.html" title="Front Matter"
>next</a> |</li>
- <li class="nav-item nav-item-0"><a href="#">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="#">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
<div class="footer" role="contentinfo">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/naming.html new/alembic-1.0.10/docs/naming.html
--- old/alembic-1.0.9/docs/naming.html 2019-04-15 17:39:17.000000000 +0200
+++ new/alembic-1.0.10/docs/naming.html 2019-04-28 20:55:30.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>The Importance of Naming Constraints — Alembic 1.0.9 documentation</title>
+ <title>The Importance of Naming Constraints — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="_static/changelog.css" />
@@ -34,7 +34,7 @@
<li class="right" >
<a href="offline.html" title="Generating SQL Scripts (a.k.a. “Offline Mode”)"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
@@ -296,7 +296,7 @@
<li class="right" >
<a href="offline.html" title="Generating SQL Scripts (a.k.a. “Offline Mode”)"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
<div class="footer" role="contentinfo">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/offline.html new/alembic-1.0.10/docs/offline.html
--- old/alembic-1.0.9/docs/offline.html 2019-04-15 17:39:17.000000000 +0200
+++ new/alembic-1.0.10/docs/offline.html 2019-04-28 20:55:30.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>Generating SQL Scripts (a.k.a. “Offline Mode”) — Alembic 1.0.9 documentation</title>
+ <title>Generating SQL Scripts (a.k.a. “Offline Mode”) — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="_static/changelog.css" />
@@ -34,7 +34,7 @@
<li class="right" >
<a href="autogenerate.html" title="Auto Generating Migrations"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
@@ -227,7 +227,7 @@
<li class="right" >
<a href="autogenerate.html" title="Auto Generating Migrations"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
<div class="footer" role="contentinfo">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/ops.html new/alembic-1.0.10/docs/ops.html
--- old/alembic-1.0.9/docs/ops.html 2019-04-15 17:39:18.000000000 +0200
+++ new/alembic-1.0.10/docs/ops.html 2019-04-28 20:55:30.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>Operation Reference — Alembic 1.0.9 documentation</title>
+ <title>Operation Reference — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="_static/changelog.css" />
@@ -34,7 +34,7 @@
<li class="right" >
<a href="branches.html" title="Working with Branches"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
@@ -1676,7 +1676,7 @@
<li class="right" >
<a href="branches.html" title="Working with Branches"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
<div class="footer" role="contentinfo">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/py-modindex.html new/alembic-1.0.10/docs/py-modindex.html
--- old/alembic-1.0.9/docs/py-modindex.html 2019-04-15 17:39:18.000000000 +0200
+++ new/alembic-1.0.10/docs/py-modindex.html 2019-04-28 20:55:31.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>Python Module Index — Alembic 1.0.9 documentation</title>
+ <title>Python Module Index — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="_static/changelog.css" />
@@ -29,7 +29,7 @@
<li class="right" >
<a href="#" title="Python Module Index"
>modules</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
@@ -161,7 +161,7 @@
<li class="right" >
<a href="#" title="Python Module Index"
>modules</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
<div class="footer" role="contentinfo">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/search.html new/alembic-1.0.10/docs/search.html
--- old/alembic-1.0.9/docs/search.html 2019-04-15 17:39:18.000000000 +0200
+++ new/alembic-1.0.10/docs/search.html 2019-04-28 20:55:31.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>Search — Alembic 1.0.9 documentation</title>
+ <title>Search — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="_static/changelog.css" />
@@ -31,7 +31,7 @@
<li class="right" >
<a href="py-modindex.html" title="Python Module Index"
>modules</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
@@ -82,7 +82,7 @@
<li class="right" >
<a href="py-modindex.html" title="Python Module Index"
>modules</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
<div class="footer" role="contentinfo">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/searchindex.js new/alembic-1.0.10/docs/searchindex.js
--- old/alembic-1.0.9/docs/searchindex.js 2019-04-15 17:39:18.000000000 +0200
+++ new/alembic-1.0.10/docs/searchindex.js 2019-04-28 20:55:31.000000000 +0200
@@ -1 +1 @@
-Search.setIndex({docnames:["api/autogenerate","api/commands","api/config","api/ddl","api/index","api/operations","api/overview","api/runtime","api/script","autogenerate","batch","branches","changelog","cookbook","front","index","naming","offline","ops","tutorial"],envversion:{"sphinx.domains.c":1,"sphinx.domains.changeset":1,"sphinx.domains.cpp":1,"sphinx.domains.javascript":1,"sphinx.domains.math":2,"sphinx.domains.python":1,"sphinx.domains.rst":1,"sphinx.domains.std":1,"sphinx.ext.intersphinx":1,sphinx:56},filenames:["api/autogenerate.rst","api/commands.rst","api/config.rst","api/ddl.rst","api/index.rst","api/operations.rst","api/overview.rst","api/runtime.rst","api/script.rst","autogenerate.rst","batch.rst","branches.rst","changelog.rst","cookbook.rst","front.rst","index.rst","naming.rst","offline.rst","ops.rst","tutorial.rst"],objects:{"alembic.autogenerate":{compare_metadata:[0,3,1,""],produce_migrations:[0,3,1,""],render_python_code:[0,3,1,""]},"alembic.autogenerate.api":{AutogenContext:[0,0,1,""]},"alembic.autogenerate.api.AutogenContext":{connection:[0,1,1,""],dialect:[0,1,1,""],imports:[0,1,1,""],metadata:[0,1,1,""],migration_context:[0,1,1,""],run_filters:[0,2,1,""],sorted_tables:[0,1,1,""],table_key_to_table:[0,1,1,""]},"alembic.autogenerate.compare_metadata.params":{context:[0,4,1,""],metadata:[0,4,1,""]},"alembic.autogenerate.rewriter":{Rewriter:[0,0,1,""]},"alembic.autogenerate.rewriter.Rewriter":{chain:[0,2,1,""],rewrites:[0,2,1,""]},"alembic.autogenerate.rewriter.Rewriter.chain.params":{other:[0,4,1,""]},"alembic.command":{branches:[1,3,1,""],current:[1,3,1,""],downgrade:[1,3,1,""],edit:[1,3,1,""],heads:[1,3,1,""],history:[1,3,1,""],init:[1,3,1,""],list_templates:[1,3,1,""],merge:[1,3,1,""],revision:[1,3,1,""],show:[1,3,1,""],stamp:[1,3,1,""],upgrade:[1,3,1,""]},"alembic.command.branches.params":{config:[1,4,1,""],verbose:[1,4,1,""]},"alembic.command.current.params":{config:[1,4,1,""],head_only:[1,4,1,""],verbose:[1,4,1,""]},"alembic.command.downgrade.params":{config:[1,4,1,""],revision:[1,4,1,""],sql:[1,4,1,""],tag:[1,4,1,""]},"alembic.command.edit.params":{config:[1,4,1,""],rev:[1,4,1,""]},"alembic.command.heads.params":{config:[1,4,1,""],resolve_dependencies:[1,4,1,""],verbose:[1,4,1,""]},"alembic.command.history.params":{config:[1,4,1,""],indicate_current:[1,4,1,""],rev_range:[1,4,1,""],verbose:[1,4,1,""]},"alembic.command.init.params":{config:[1,4,1,""],directory:[1,4,1,""],template:[1,4,1,""]},"alembic.command.list_templates.params":{config:[1,4,1,""]},"alembic.command.merge.params":{branch_label:[1,4,1,""],config:[1,4,1,""],message:[1,4,1,""],rev_id:[1,4,1,""]},"alembic.command.revision.params":{autogenerate:[1,4,1,""],branch_label:[1,4,1,""],config:[1,4,1,""],depends_on:[1,4,1,""],head:[1,4,1,""],message:[1,4,1,""],process_revision_directives:[1,4,1,""],rev_id:[1,4,1,""],splice:[1,4,1,""],sql:[1,4,1,""],version_path:[1,4,1,""]},"alembic.command.show.params":{config:[1,4,1,""],revision:[1,4,1,""]},"alembic.command.stamp.params":{config:[1,4,1,""],revision:[1,4,1,""],sql:[1,4,1,""],tag:[1,4,1,""]},"alembic.command.upgrade.params":{config:[1,4,1,""],revision:[1,4,1,""],sql:[1,4,1,""],tag:[1,4,1,""]},"alembic.config":{Config:[2,0,1,""],main:[2,3,1,""]},"alembic.config.Config":{attributes:[2,1,1,""],cmd_opts:[2,1,1,""],config_file_name:[2,1,1,""],config_ini_section:[2,1,1,""],file_config:[2,1,1,""],get_main_option:[2,2,1,""],get_section:[2,2,1,""],get_section_option:[2,2,1,""],get_template_directory:[2,2,1,""],print_stdout:[2,2,1,""],set_main_option:[2,2,1,""],set_section_option:[2,2,1,""]},"alembic.config.Config.params":{attributes:[2,4,1,""],config_args:[2,4,1,""],file_:[2,4,1,""],ini_section:[2,4,1,""],output_buffer:[2,4,1,""],stdout:[2,4,1,""]},"alembic.config.Config.set_main_option.params":{name:[2,4,1,""],value:[2,4,1,""]},"alembic.config.Config.set_section_option.params":{name:[2,4,1,""],section:[2,4,1,""],value:[2,4,1,""]},"alembic.ddl":{base:[3,5,0,"-"],impl:[3,5,0,"-"],mssql:[3,5,0,"-"],mysql:[3,5,0,"-"],postgresql:[3,5,0,"-"],sqlite:[3,5,0,"-"]},"alembic.ddl.base":{AddColumn:[3,0,1,""],AlterColumn:[3,0,1,""],AlterTable:[3,0,1,""],ColumnComment:[3,0,1,""],ColumnDefault:[3,0,1,""],ColumnName:[3,0,1,""],ColumnNullable:[3,0,1,""],ColumnType:[3,0,1,""],DropColumn:[3,0,1,""],RenameTable:[3,0,1,""],add_column:[3,3,1,""],alter_column:[3,3,1,""],alter_table:[3,3,1,""],drop_column:[3,3,1,""],format_column_name:[3,3,1,""],format_server_default:[3,3,1,""],format_table_name:[3,3,1,""],format_type:[3,3,1,""],quote_dotted:[3,3,1,""],visit_add_column:[3,3,1,""],visit_column_default:[3,3,1,""],visit_column_name:[3,3,1,""],visit_column_nullable:[3,3,1,""],visit_column_type:[3,3,1,""],visit_drop_column:[3,3,1,""],visit_rename_table:[3,3,1,""]},"alembic.ddl.impl":{DefaultImpl:[3,0,1,""],ImplMeta:[3,0,1,""]},"alembic.ddl.impl.DefaultImpl":{add_column:[3,2,1,""],add_constraint:[3,2,1,""],alter_column:[3,2,1,""],autogen_column_reflect:[3,2,1,""],bind:[3,1,1,""],bulk_insert:[3,2,1,""],command_terminator:[3,1,1,""],compare_server_default:[3,2,1,""],compare_type:[3,2,1,""],correct_for_autogen_constraints:[3,2,1,""],correct_for_autogen_foreignkeys:[3,2,1,""],create_column_comment:[3,2,1,""],create_index:[3,2,1,""],create_table:[3,2,1,""],create_table_comment:[3,2,1,""],drop_column:[3,2,1,""],drop_constraint:[3,2,1,""],drop_index:[3,2,1,""],drop_table:[3,2,1,""],drop_table_comment:[3,2,1,""],emit_begin:[3,2,1,""],emit_commit:[3,2,1,""],execute:[3,2,1,""],get_by_dialect:[3,6,1,""],prep_table_for_batch:[3,2,1,""],rename_table:[3,2,1,""],render_type:[3,2,1,""],requires_recreate_in_batch:[3,2,1,""],start_migrations:[3,2,1,""],static_output:[3,2,1,""],transactional_ddl:[3,1,1,""]},"alembic.ddl.mssql":{MSSQLImpl:[3,0,1,""],mssql_add_column:[3,3,1,""],visit_add_column:[3,3,1,""],visit_column_default:[3,3,1,""],visit_column_nullable:[3,3,1,""],visit_column_type:[3,3,1,""],visit_rename_column:[3,3,1,""],visit_rename_table:[3,3,1,""]},"alembic.ddl.mssql.MSSQLImpl":{alter_column:[3,2,1,""],batch_separator:[3,1,1,""],bulk_insert:[3,2,1,""],create_index:[3,2,1,""],drop_column:[3,2,1,""],emit_begin:[3,2,1,""],emit_commit:[3,2,1,""],transactional_ddl:[3,1,1,""]},"alembic.ddl.mysql":{MySQLAlterDefault:[3,0,1,""],MySQLChangeColumn:[3,0,1,""],MySQLImpl:[3,0,1,""],MySQLModifyColumn:[3,0,1,""]},"alembic.ddl.mysql.MySQLImpl":{alter_column:[3,2,1,""],compare_server_default:[3,2,1,""],correct_for_autogen_constraints:[3,2,1,""],correct_for_autogen_foreignkeys:[3,2,1,""],drop_constraint:[3,2,1,""],transactional_ddl:[3,1,1,""]},"alembic.ddl.postgresql":{CreateExcludeConstraintOp:[3,0,1,""],PostgresqlColumnType:[3,0,1,""],PostgresqlImpl:[3,0,1,""],visit_column_comment:[3,3,1,""],visit_column_type:[3,3,1,""],visit_rename_table:[3,3,1,""]},"alembic.ddl.postgresql.CreateExcludeConstraintOp":{batch_create_exclude_constraint:[3,6,1,""],constraint_type:[3,1,1,""],create_exclude_constraint:[3,6,1,""],from_constraint:[3,6,1,""],to_constraint:[3,2,1,""]},"alembic.ddl.postgresql.PostgresqlImpl":{alter_column:[3,2,1,""],autogen_column_reflect:[3,2,1,""],compare_server_default:[3,2,1,""],correct_for_autogen_constraints:[3,2,1,""],prep_table_for_batch:[3,2,1,""],render_type:[3,2,1,""],transactional_ddl:[3,1,1,""]},"alembic.ddl.sqlite":{SQLiteImpl:[3,0,1,""]},"alembic.ddl.sqlite.SQLiteImpl":{add_constraint:[3,2,1,""],compare_server_default:[3,2,1,""],correct_for_autogen_constraints:[3,2,1,""],drop_constraint:[3,2,1,""],requires_recreate_in_batch:[3,2,1,""],transactional_ddl:[3,1,1,""]},"alembic.operations":{BatchOperations:[18,0,1,""],Operations:[18,0,1,""],ops:[5,5,0,"-"]},"alembic.operations.BatchOperations":{add_column:[18,2,1,""],alter_column:[18,2,1,""],create_check_constraint:[18,2,1,""],create_exclude_constraint:[18,2,1,""],create_foreign_key:[18,2,1,""],create_index:[18,2,1,""],create_primary_key:[18,2,1,""],create_unique_constraint:[18,2,1,""],drop_column:[18,2,1,""],drop_constraint:[18,2,1,""],drop_index:[18,2,1,""]},"alembic.operations.BatchOperations.params":{migration_context:[18,4,1,""]},"alembic.operations.Operations":{add_column:[18,2,1,""],alter_column:[18,2,1,""],batch_alter_table:[18,2,1,""],bulk_insert:[18,2,1,""],create_check_constraint:[18,2,1,""],create_exclude_constraint:[18,2,1,""],create_foreign_key:[18,2,1,""],create_index:[18,2,1,""],create_primary_key:[18,2,1,""],create_table:[18,2,1,""],create_table_comment:[18,2,1,""],create_unique_constraint:[18,2,1,""],drop_column:[18,2,1,""],drop_constraint:[18,2,1,""],drop_index:[18,2,1,""],drop_table:[18,2,1,""],drop_table_comment:[18,2,1,""],execute:[18,2,1,""],f:[18,2,1,""],get_bind:[18,2,1,""],get_context:[18,2,1,""],implementation_for:[18,6,1,""],inline_literal:[18,2,1,""],invoke:[18,2,1,""],register_operation:[18,6,1,""],rename_table:[18,2,1,""]},"alembic.operations.Operations.add_column.params":{column:[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.alter_column.params":{autoincrement:[18,4,1,""],column_name:[18,4,1,""],comment:[18,4,1,""],existing_autoincrement:[18,4,1,""],existing_comment:[18,4,1,""],existing_nullable:[18,4,1,""],existing_server_default:[18,4,1,""],existing_type:[18,4,1,""],new_column_name:[18,4,1,""],nullable:[18,4,1,""],postgresql_using:[18,4,1,""],schema:[18,4,1,""],server_default:[18,4,1,""],table_name:[18,4,1,""],type_:[18,4,1,""]},"alembic.operations.Operations.batch_alter_table.params":{copy_from:[18,4,1,""],naming_convention:[18,4,1,""],recreate:[18,4,1,""],reflect_args:[18,4,1,""],reflect_kwargs:[18,4,1,""],schema:[18,4,1,""],table_args:[18,4,1,""],table_kwargs:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.bulk_insert.params":{multiinsert:[18,4,1,""],rows:[18,4,1,""],table:[18,4,1,""]},"alembic.operations.Operations.create_check_constraint.params":{condition:[18,4,1,""],deferrable:[18,4,1,""],initially:[18,4,1,""],name:[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.create_exclude_constraint.params":{deferrable:[18,4,1,""],elements:[18,4,1,""],initially:[18,4,1,""],name:[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""],where:[18,4,1,""]},"alembic.operations.Operations.create_foreign_key.params":{deferrable:[18,4,1,""],local_cols:[18,4,1,""],name:[18,4,1,""],ondelete:[18,4,1,""],onupdate:[18,4,1,""],referent_schema:[18,4,1,""],referent_table:[18,4,1,""],remote_cols:[18,4,1,""],source_schema:[18,4,1,""],source_table:[18,4,1,""]},"alembic.operations.Operations.create_index.params":{"**kw":[18,4,1,""],columns:[18,4,1,""],index_name:[18,4,1,""],quote:[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""],unique:[18,4,1,""]},"alembic.operations.Operations.create_primary_key.params":{columns:[18,4,1,""],name:[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.create_table.params":{"**kw":[18,4,1,""],"*columns":[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.create_table_comment.params":{comment:[18,4,1,""],existing_comment:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.create_unique_constraint.params":{columns:[18,4,1,""],deferrable:[18,4,1,""],initially:[18,4,1,""],name:[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.drop_column.params":{column_name:[18,4,1,""],mssql_drop_check:[18,4,1,""],mssql_drop_default:[18,4,1,""],mssql_drop_foreign_key:[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.drop_constraint.params":{constraint_name:[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""],type_:[18,4,1,""]},"alembic.operations.Operations.drop_index.params":{"**kw":[18,4,1,""],index_name:[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.drop_table.params":{"**kw":[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.drop_table_comment.params":{existing_comment:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.execute.params":{execution_options:[18,4,1,""],sql:[18,4,1,""]},"alembic.operations.Operations.inline_literal.params":{type_:[18,4,1,""],value:[18,4,1,""]},"alembic.operations.Operations.params":{migration_context:[18,4,1,""]},"alembic.operations.Operations.rename_table.params":{new_table_name:[18,4,1,""],old_table_name:[18,4,1,""],schema:[18,4,1,""]},"alembic.operations.ops":{AddColumnOp:[5,0,1,""],AddConstraintOp:[5,0,1,""],AlterColumnOp:[5,0,1,""],AlterTableOp:[5,0,1,""],BulkInsertOp:[5,0,1,""],CreateCheckConstraintOp:[5,0,1,""],CreateForeignKeyOp:[5,0,1,""],CreateIndexOp:[5,0,1,""],CreatePrimaryKeyOp:[5,0,1,""],CreateTableCommentOp:[5,0,1,""],CreateTableOp:[5,0,1,""],CreateUniqueConstraintOp:[5,0,1,""],DowngradeOps:[5,0,1,""],DropColumnOp:[5,0,1,""],DropConstraintOp:[5,0,1,""],DropIndexOp:[5,0,1,""],DropTableCommentOp:[5,0,1,""],DropTableOp:[5,0,1,""],ExecuteSQLOp:[5,0,1,""],MigrateOperation:[5,0,1,""],MigrationScript:[5,0,1,""],ModifyTableOps:[5,0,1,""],OpContainer:[5,0,1,""],RenameTableOp:[5,0,1,""],UpgradeOps:[5,0,1,""]},"alembic.operations.ops.AddColumnOp":{add_column:[5,6,1,""],batch_add_column:[5,6,1,""]},"alembic.operations.ops.AlterColumnOp":{alter_column:[5,6,1,""],batch_alter_column:[5,6,1,""]},"alembic.operations.ops.BulkInsertOp":{bulk_insert:[5,6,1,""]},"alembic.operations.ops.CreateCheckConstraintOp":{batch_create_check_constraint:[5,6,1,""],create_check_constraint:[5,6,1,""]},"alembic.operations.ops.CreateForeignKeyOp":{batch_create_foreign_key:[5,6,1,""],create_foreign_key:[5,6,1,""]},"alembic.operations.ops.CreateIndexOp":{batch_create_index:[5,6,1,""],create_index:[5,6,1,""]},"alembic.operations.ops.CreatePrimaryKeyOp":{batch_create_primary_key:[5,6,1,""],create_primary_key:[5,6,1,""]},"alembic.operations.ops.CreateTableCommentOp":{create_table_comment:[5,6,1,""],reverse:[5,2,1,""]},"alembic.operations.ops.CreateTableOp":{create_table:[5,6,1,""]},"alembic.operations.ops.CreateUniqueConstraintOp":{batch_create_unique_constraint:[5,6,1,""],create_unique_constraint:[5,6,1,""]},"alembic.operations.ops.DropColumnOp":{batch_drop_column:[5,6,1,""],drop_column:[5,6,1,""]},"alembic.operations.ops.DropConstraintOp":{batch_drop_constraint:[5,6,1,""],drop_constraint:[5,6,1,""]},"alembic.operations.ops.DropIndexOp":{batch_drop_index:[5,6,1,""],drop_index:[5,6,1,""]},"alembic.operations.ops.DropTableCommentOp":{drop_table_comment:[5,6,1,""],reverse:[5,2,1,""]},"alembic.operations.ops.DropTableOp":{drop_table:[5,6,1,""]},"alembic.operations.ops.ExecuteSQLOp":{execute:[5,6,1,""]},"alembic.operations.ops.MigrateOperation":{info:[5,1,1,""]},"alembic.operations.ops.MigrationScript":{downgrade_ops:[5,1,1,""],downgrade_ops_list:[5,1,1,""],upgrade_ops:[5,1,1,""],upgrade_ops_list:[5,1,1,""]},"alembic.operations.ops.RenameTableOp":{rename_table:[5,6,1,""]},"alembic.runtime":{environment:[7,5,0,"-"],migration:[7,5,0,"-"]},"alembic.runtime.environment":{EnvironmentContext:[7,0,1,""]},"alembic.runtime.environment.EnvironmentContext":{begin_transaction:[7,2,1,""],config:[7,1,1,""],configure:[7,2,1,""],execute:[7,2,1,""],get_bind:[7,2,1,""],get_context:[7,2,1,""],get_head_revision:[7,2,1,""],get_head_revisions:[7,2,1,""],get_revision_argument:[7,2,1,""],get_starting_revision_argument:[7,2,1,""],get_tag_argument:[7,2,1,""],get_x_argument:[7,2,1,""],is_offline_mode:[7,2,1,""],is_transactional_ddl:[7,2,1,""],run_migrations:[7,2,1,""],script:[7,1,1,""],static_output:[7,2,1,""]},"alembic.runtime.environment.EnvironmentContext.configure.params":{alembic_module_prefix:[7,4,1,""],compare_server_default:[7,4,1,""],compare_type:[7,4,1,""],connection:[7,4,1,""],dialect_name:[7,4,1,""],downgrade_token:[7,4,1,""],include_object:[7,4,1,""],include_schemas:[7,4,1,""],include_symbol:[7,4,1,""],literal_binds:[7,4,1,""],mssql_batch_separator:[7,4,1,""],on_version_apply:[7,4,1,""],oracle_batch_separator:[7,4,1,""],output_buffer:[7,4,1,""],output_encoding:[7,4,1,""],process_revision_directives:[7,4,1,""],render_as_batch:[7,4,1,""],render_item:[7,4,1,""],sqlalchemy_module_prefix:[7,4,1,""],starting_rev:[7,4,1,""],tag:[7,4,1,""],target_metadata:[7,4,1,""],template_args:[7,4,1,""],transaction_per_migration:[7,4,1,""],transactional_ddl:[7,4,1,""],upgrade_token:[7,4,1,""],url:[7,4,1,""],user_module_prefix:[7,4,1,""],version_table:[7,4,1,""],version_table_pk:[7,4,1,""],version_table_schema:[7,4,1,""]},"alembic.runtime.environment.EnvironmentContext.params":{"**kw":[7,4,1,""],config:[7,4,1,""],script:[7,4,1,""]},"alembic.runtime.migration":{MigrationContext:[7,0,1,""],MigrationInfo:[7,0,1,""]},"alembic.runtime.migration.MigrationContext":{bind:[7,1,1,""],config:[7,1,1,""],configure:[7,6,1,""],execute:[7,2,1,""],get_current_heads:[7,2,1,""],get_current_revision:[7,2,1,""],run_migrations:[7,2,1,""],stamp:[7,2,1,""]},"alembic.runtime.migration.MigrationContext.configure.params":{connection:[7,4,1,""],dialect_name:[7,4,1,""],opts:[7,4,1,""],url:[7,4,1,""]},"alembic.runtime.migration.MigrationContext.run_migrations.params":{"**kw":[7,4,1,""]},"alembic.runtime.migration.MigrationInfo":{destination_revision_ids:[7,1,1,""],destination_revisions:[7,1,1,""],down_revision_ids:[7,1,1,""],down_revisions:[7,1,1,""],is_migration:[7,1,1,""],is_stamp:[7,1,1,""],is_upgrade:[7,1,1,""],revision_map:[7,1,1,""],source_revision_ids:[7,1,1,""],source_revisions:[7,1,1,""],up_revision:[7,1,1,""],up_revision_id:[7,1,1,""],up_revision_ids:[7,1,1,""],up_revisions:[7,1,1,""]},"alembic.script":{Script:[8,0,1,""],ScriptDirectory:[8,0,1,""],revision:[8,5,0,"-"]},"alembic.script.Script":{doc:[8,1,1,""],longdoc:[8,1,1,""],module:[8,1,1,""],path:[8,1,1,""]},"alembic.script.ScriptDirectory":{as_revision_number:[8,2,1,""],from_config:[8,6,1,""],generate_revision:[8,2,1,""],get_base:[8,2,1,""],get_bases:[8,2,1,""],get_current_head:[8,2,1,""],get_heads:[8,2,1,""],get_revision:[8,2,1,""],get_revisions:[8,2,1,""],iterate_revisions:[8,2,1,""],run_env:[8,2,1,""],walk_revisions:[8,2,1,""]},"alembic.script.ScriptDirectory.generate_revision.params":{head:[8,4,1,""],message:[8,4,1,""],refresh:[8,4,1,""],revid:[8,4,1,""],splice:[8,4,1,""]},"alembic.script.ScriptDirectory.walk_revisions.params":{base:[8,4,1,""],head:[8,4,1,""]},"alembic.script.revision":{MultipleHeads:[8,7,1,""],RangeNotAncestorError:[8,7,1,""],ResolutionError:[8,7,1,""],Revision:[8,0,1,""],RevisionError:[8,7,1,""],RevisionMap:[8,0,1,""]},"alembic.script.revision.Revision":{branch_labels:[8,1,1,""],dependencies:[8,1,1,""],down_revision:[8,1,1,""],is_base:[8,1,1,""],is_branch_point:[8,1,1,""],is_head:[8,1,1,""],is_merge_point:[8,1,1,""],nextrev:[8,1,1,""],revision:[8,1,1,""]},"alembic.script.revision.RevisionMap":{add_revision:[8,2,1,""],bases:[8,1,1,""],get_current_head:[8,2,1,""],get_revision:[8,2,1,""],get_revisions:[8,2,1,""],heads:[8,1,1,""],iterate_revisions:[8,2,1,""]},"alembic.script.revision.RevisionMap.get_current_head.params":{branch_label:[8,4,1,""]},"alembic.script.revision.RevisionMap.params":{generator:[8,4,1,""]},alembic:{command:[1,5,0,"-"],config:[2,5,0,"-"],ddl:[3,5,0,"-"],operations:[18,5,0,"-"],script:[8,5,0,"-"]}},objnames:{"0":["py","class","Python class"],"1":["py","attribute","Python attribute"],"2":["py","method","Python method"],"3":["py","function","Python function"],"4":["py","parameter","Python parameter"],"5":["py","module","Python module"],"6":["py","classmethod","Python class method"],"7":["py","exception","Python exception"]},objtypes:{"0":"py:class","1":"py:attribute","2":"py:method","3":"py:function","4":"py:parameter","5":"py:module","6":"py:classmethod","7":"py:exception"},terms:{"109e":11,"109ec7d132bf":11,"109ec7d132bf_add_ip_number_t":11,"10g":16,"191a2d20b025":13,"1975ea83b712":[11,17,19],"1975ea83b712_add_account_t":[11,19],"1975ea83b712_create_accoun":19,"1975ea83b712_create_account_t":19,"199028bf9856":13,"27c":11,"27c6":11,"27c6a":11,"27c6a30d7c24":[9,11],"27c6a30d7c24_add_shopping_cart_t":11,"28af9800143":13,"28af9800143f":13,"290696571ad2":13,"29f8":11,"29f859a13ea":11,"2a95":11,"2a95102259b":11,"2a95102259be_add_ip_account_t":11,"2b1ae634e5cd_add_order_id":19,"2to3":12,"34e094ad6ef1":11,"34e094ad6ef1_more_account_chang":11,"3512b954651e_add_account":19,"3ab8b2dfb055":13,"3adcc9a56557_rename_username_field":19,"3ba2b522d10d":13,"3cac04ae8714":11,"3cac04ae8714_create_networking_branch":11,"3rd":12,"53fffde5ad5":11,"53fffde5ad5_merge_ae1_and_27c":11,"55af":11,"55af2cb":11,"55af2cb1c267":11,"55af2cb1c267_add_another_account_column":11,"\u0142ukasz":12,"abstract":12,"bo\u0142di":12,"boolean":[7,9,12,15,16,18],"break":[11,12,18],"case":[0,1,2,5,7,8,9,10,11,12,13,16,18,19],"catch":12,"char":9,"class":[0,1,2,3,4,5,6,7,8,9,12,13,17,18,19],"const":3,"default":[0,2,3,5,7,8,9,10,11,12,13,16,17,18,19],"enum":[9,12,15,18],"final":[7,10,12,13],"float":12,"function":[1,2,3,4,5,6,7,8,9,11,12,13,16,17,18,19],"import":[0,1,2,5,7,8,9,10,11,12,13,15,17,18,19],"int":13,"long":[9,10,11,12,13,19],"new":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,16,18,19],"null":[0,10,12,13,17,18],"public":[0,4,8,12,18],"return":[0,2,3,5,7,8,9,10,12,13,18],"short":12,"static":12,"switch":13,"true":[0,1,3,5,7,8,9,10,12,13,16,18,19],"try":[11,12,17],"while":[0,3,8,10,11,12,13,16,17,18,19],AND:16,Added:[7,9,12,13],Adding:12,But:16,CRs:12,DNS:11,For:[0,1,2,3,5,7,9,10,11,12,13,16,17,18,19],INTO:[10,11,13,17,18],NOT:[10,13,17,18],One:17,That:[7,11,13],The:[0,2,3,4,5,6,8,9,10,11,12,14,15,17,18],Then:13,There:[10,13,16,18],These:[0,3,5,7,8,9,11,12,19],Tos:13,USING:[12,18],Use:2,Used:18,Using:[0,13,19],Will:[11,13,17,19],With:[2,5,11,12,13,19],__doc__:12,__future__:12,__init__:[5,12,13],__module__:[7,9,12],__pycache__:12,__repr__:9,_alembic_batch_temp:[10,12],_exec:12,_filter_drop_index:13,_get_object_from_vers:13,_io:2,_orig_column:5,_orig_constraint:[3,5],_orig_index:5,_orig_t:5,_replac:8,abc:12,abil:[0,19],abl:[0,4,8,13,16],about:[0,7,11,12,14,16,19],abov:[0,5,7,9,10,11,12,13,14,16,18,19],abramowitz:12,absenc:17,absens:10,absolut:[12,19],accept:[1,7,9,10,12,13,17,18,19],access:[0,2,5,6,7,8,9,10,12,13,17],accessor:12,accommod:[0,10,12],accomod:[9,12],accompani:[12,18],accomplish:17,accord:[12,18],account:[9,11,12,17,18,19],account_id:18,account_t:18,accounts_t:18,accur:9,accuraci:7,achiev:[1,9,11],across:[0,7,10,11,12,13,18],act:[7,12,13,18],action:[12,13,18],activ:[7,13],actual:[0,2,5,6,7,8,9,10,11,12,13,17,18],acycl:11,adapt:12,add:[0,5,7,8,9,10,11,12,13,14,16,17,18,19],add_column:[0,3,5,9,10,12,13,16,18,19],add_column_idx:0,add_column_nul:0,add_constraint:3,add_customer_sp:13,add_index:12,add_revis:8,add_sequence_to_model:0,add_tabl:0,addcolumn:[0,3],addcolumnop:[0,5],addconstraint:18,addconstraintop:[3,5],added:[0,2,7,8,9,10,11,12,13,18,19],adding:[0,9,12,13,16,18,19],addit:[0,1,2,7,8,9,11,12,13,14,18,19],addition:[5,7,9,12,18],address:[10,18],adjust:[0,9,10,12,13],advanc:18,advantag:[11,13],advis:7,ae1027:[11,19],ae1027a6acf:[11,17,19],ae1027a6acf_add_a_column:[11,19],ae102:11,ae10:[11,12,19],ae1:[11,19],affect:[0,7,10,11,12,13,15],affin:12,after:[0,7,11,12,13],after_parent_attach:[9,16],afterward:[10,12],again:[0,9,10,11,12,13,16,19],against:[0,2,5,7,8,9,10,11,12,13,17,18,19],aggreg:0,agnost:12,ago:19,ahead:12,aim:0,albeit:19,albert:12,alemb:[0,1,2,3,4,5,6,7,8,9,10,11,12,14,16,17,18,19],alembic_cfg:[1,2,13],alembic_module_prefix:[0,7,12],alembic_revis:12,alembic_vers:[7,11,12,13,17,19],alexand:12,algorithm:[11,12],alia:11,all:[0,1,2,5,6,7,8,9,10,12,13,14,15,16,17,18,19],all_conn_sequ:0,all_constraint:16,allow:[0,2,3,5,7,8,9,10,11,12,13,17,18,19],almo:12,almost:[10,11,12],alon:[10,11,12],along:[0,1,5,7,10,11,12,13,18,19],alongsid:12,alpha:12,alphanumer:16,alreadi:[0,2,3,9,10,11,12,13,16,18],also:[0,2,5,6,7,8,9,10,11,12,13,16,17,18,19],alter:[0,1,3,5,6,7,9,10,11,12,13,16,17,18],alter_column:[3,5,7,10,12,18],alter_column_op:0,alter_t:3,altercolumn:3,altercolumnop:[0,5,12],altern:[0,7,9,10,11,12,18],altert:3,altertableop:5,altogeth:13,alwai:[0,5,9,10,11,12,13,17,18],among:[11,12],ancestor:[11,12],andrea:12,andrei:12,ani:[0,1,2,3,7,8,9,10,11,12,13,16,17,18,19],ann:12,anonym:[9,18],anoth:[0,2,6,10,11,12,19],anscestor:11,anticip:12,antti:12,antukh:12,anyth:[0,2,18,19],anywai:[12,19],anywher:[13,19],api:[0,1,2,3,5,6,7,12,13,15,18],appar:12,appear:12,appeas:12,append:[0,7,12],append_constraint:12,appli:[1,5,7,8,9,10,11,12,13,16,18,19],applic:[1,4,6,7,9,10,11,12,13,16,18,19],appopri:16,approach:[0,10,12,13,19],appropri:[0,6,7,8,9,11,12,18],apr:12,april:12,arbitrari:[1,2,5,12],architectur:10,area:[0,9,19],aren:[9,10,11,12,18],arg:[2,3,8,12,19],argnam:18,argpars:[7,12],argument:[0,1,2,5,7,8,9,10,11,12,13,18,19],argv:2,aris:[10,12],arithmet:12,aros:12,around:12,arrai:12,as_dictionari:[7,13],as_revision_numb:[8,12],as_sql:[3,7],asc:12,ascend:[7,19],ascii:12,ask:[11,12],aspect:[7,12,13,18],assert:12,assert_relative_length:8,assign:[10,11,16],assist:[7,8,12,18],associ:[0,11,12,14,16,18],assum:[0,11,12,13,16,17,19],astext_typ:12,astimezon:19,atsushi:12,attach:[0,3,9,13],attempt:[10,11,12,18],attribut:[0,1,2,5,7,9,11,12,13],attributeerror:12,aug:12,august:12,author:12,auto:[0,7,10,12,13,15,18,19],auto_incr:[12,18],autodetect:12,autogen:[7,9,12],autogen_column_reflect:3,autogen_context:[0,3,7,9],autogencontext:[0,9,12],autogener:[1,3,4,5,6,7,12,15,18,19],autogenerer:9,autogenrendertest:12,autoincr:[3,12,13,18],autoload:[10,13],autoload_with:13,autom:[10,12,13,16,18],automat:[9,10,11,12,18,19],avail:[0,1,2,5,7,9,12,13,14,18,19],availbl:12,avoid:[0,12,18],awai:0,awkward:12,axel:12,back:[0,7,8,11,12,13,19],backend:[0,3,6,7,9,10,12,16,18],background:9,backslash:18,backward:[7,12],bad:9,badli:12,bagnoli:12,bar:[0,2,10,18,19],bartosz:12,base:[0,2,3,5,6,7,8,9,12,13,15,16,17,18,19],basemost:11,basi:[5,8,12],basic:[0,2,8,9,11,12,13,17,18,19],bat:[0,19],batch:[3,5,7,12,15,18],batch_add_column:5,batch_alter_column:5,batch_alter_t:[7,10,12,18],batch_create_check_constraint:5,batch_create_exclude_constraint:3,batch_create_foreign_kei:5,batch_create_index:5,batch_create_primary_kei:5,batch_create_unique_constraint:5,batch_drop_column:5,batch_drop_constraint:5,batch_drop_index:5,batch_op:[3,10,12,18],batch_separ:3,batchoper:[3,5,10,12,18],batchoperationsimpl:3,bayer:14,beafc7d709f:0,becaus:[0,9,10,11,12],becom:[11,13],been:[6,7,11,12,16,18],befor:[2,3,7,10,11,12,13,18,19],began:11,begin:[1,2,3,7,10,12,13,17,18,19],begin_transact:[0,3,7,9,13],behav:10,behavior:[0,3,5,6,7,9,10,12,18],behind:[12,16],being:[0,1,2,4,7,8,9,10,11,12,13,16,18],belong:12,below:[0,5,10,12,13,17,18],benefit:7,besid:11,best:[11,16],beta:[10,11,12],better:[12,16],between:[0,7,9,10,11,12,13,19],beyond:16,bflag:10,big:12,bigint:12,biginteg:12,bigseri:12,bind:[0,3,7,18],binet:12,bit:[7,12],blank:[0,12,13,19],block:[10,12,18],blown:[7,12],blume:12,board:10,bog:12,boilerpl:0,bolt:7,bool:18,both:[7,11,12,13,16,17],bottom:17,bound:[7,12,18],box:6,brackin:12,branch:[0,1,7,8,12,15,19],branch_label:[1,5,8,11,13,19],branchnam:11,branchpoint:[7,8,11,12],brief:18,bring:11,broken:[12,17],brokenpipeerror:12,bruno:12,brycelohr:12,buffer:[2,7],bug:[3,15],bugtrack:12,build:[0,1,3,5,9,11,12,15,19],built:[0,1,4,6,9,12,13,15],bulk:[3,5,12,18],bulk_insert:[3,5,12,13,18],bulkinsertop:5,burclaf:12,bypass:[10,18],calcul:[7,12,19],call:[1,2,3,5,6,7,8,9,10,11,12,13,16,18,19],callabl:[1,7,8,9,12],callback:[7,12],can:[0,1,2,3,4,5,7,8,9,10,11,12,13,16,17,18,19],candid:[7,9,12],cannot:[7,9,10,11,12,18],capabl:[0,1,2,5,6,7,12,13,17,19],care:0,carefulli:[11,19],carlo:12,cart:11,cascad:[13,18],cast:12,catalog:16,catalogu:13,categori:10,caus:[12,13],caveat:[7,10,18],center:9,certain:[0,7,13],certainli:16,cfg:13,chain:0,challeng:[9,10,11,17],chanc:[0,7],chang:[0,5,7,8,9,11,13,14,15,18,19],changelog:15,changeset:1,charact:[8,12,18,19],charl:12,charset:13,check:[5,7,9,11,12,13,15,16,18,19],check_constraint:18,checkconstraint:[10,12,16,18],choic:0,choos:11,chri:12,christian:12,chronolog:1,circumst:[12,18],ck1:10,ck_:16,ck_bool_:18,ck_bool_t_x:18,ck_sometable_q_bool:16,ck_user_name_len:18,classmethod:[3,5,7,8,13,18],classnam:3,claus:[12,18],clean:[11,12,19],clear:[11,12,13],clearer:12,client:17,close:[11,12,13],cls:[5,13],cmd_line_url:7,cmd_opt:[2,7,12,13],cname:0,code:[0,5,6,9,11,12,15,16,19],coerc:18,coerce:18,col1:9,col2:9,col:[7,13,18],collat:0,collect:[0,6,7,8,12,13,15,18],colon:[12,18,19],colon_valu:18,column:[0,3,5,7,9,10,11,12,13,16,17,18,19],column_0_label:16,column_0_nam:[10,16],column_info:[3,10],column_nam:[3,5,18],column_reflect:[3,9,10],columncom:3,columndefault:3,columnnam:3,columnnul:3,columntyp:3,com:[12,14],combin:[0,9,11,12,18],come:[8,9,12],command:[0,2,4,5,6,7,8,9,10,11,12,14,15,17,18,19],command_termin:3,commanderror:[7,12],commandlin:[12,13,19],comment:[3,5,7,9,12,18,19],commit:[3,7,12,13,17],common:[7,11,12,13],commonli:[0,10,12],commun:[5,6,15],compar:[0,7,12,15],compare_against_backend:[9,12],compare_column_level:0,compare_metadata:[0,12],compare_schema_level:0,compare_sequ:0,compare_server_default:[3,7,9],compare_table_level:0,compare_to:[0,7,13],compare_typ:[3,7,9],comparison:[6,7,9,12],compat:[2,7,9,10,12,18],compatib:12,compil:[3,5,7,12],complain:[12,13],complement:12,complet:[0,7,10,11,12,13,16],complex:12,complic:16,compon:[12,19],compos:19,composit:12,comprehens:[5,9],concaten:0,concept:[11,12],concern:10,condit:[5,12,15,18],config:[1,2,6,7,8,9,12,13,17,19],config_arg:[2,12],config_file_nam:[2,17],config_ini_sect:[2,7,9,13],configpars:[2,19],configur:[0,1,4,6,7,9,10,12,13,15,16,17,18,19],conflict:[10,12],confus:[11,12],conjunct:[6,9,12,18],conn:[7,13,18],conn_col:0,conn_fk:3,conn_index:3,conn_tabl:0,conn_typ:9,conn_uniqu:3,conn_unique_constraint:3,connam:16,connect:[0,1,2,3,6,7,9,10,12,15,16,17,18,19],conrelid:16,consid:[0,7,8,10,11,12,13,18],consider:[12,13],consist:[0,10,12,18],consol:[2,19],constraint:[0,3,5,7,9,12,13,15,18],constraint_nam:[3,5,10,12,16,18],constraint_typ:[3,16],construct:[0,1,2,3,5,7,8,9,12,13,18],constructor:[2,9],consult:[0,7,9],consum:[1,12,13,19],consumpt:7,contain:[0,5,6,7,8,9,11,12,13,18,19],content:[0,7],context:[0,2,3,4,9,10,11,12,13,15,16,17,18,19],context_opt:3,contextu:[7,12],continu:[9,11,12,13,19],control:[7,12,15,18,19],contyp:16,convei:6,conveni:[0,9,11,13,16],convent:[10,12,15,18],convert:[0,7,8,12,16,18],cookbook:[12,15],coomber:12,cooper:12,copi:[2,3,10,12,13,18],copy_from:[10,12,18],core:18,correct:[0,9,10,12,19],correct_for_autogen_constraint:3,correct_for_autogen_foreignkei:3,correctli:12,correspond:[0,5,7,10,12,13,18],could:[0,9,11,12,13,19],count:12,cours:[0,7,9,11,18],courtesi:12,cover:[11,12],crazi:11,creat:[1,2,3,4,5,6,7,8,9,10,12,15,16,17,18],create_al:[7,13],create_check_constraint:[5,12,18],create_column_com:3,create_constraint:10,create_d:[13,18],create_engin:[0,7,12,13],create_exclude_constraint:[3,12,18],create_foreign_kei:[0,5,12,18],create_index:[3,5,12,13,18],create_new:13,create_primary_kei:[5,12,18],create_sequ:[0,5],create_sp:13,create_t:[0,3,5,7,9,12,13,18,19],create_table_com:[3,5,12,18],create_unique_constraint:[5,12,16,18],create_view:13,createcheckconstraintop:5,createexcludeconstraintop:3,createforeignkeyop:[0,5],createindexop:[0,5,13],createprimarykeyop:5,createsequenceop:[0,5],createspop:13,createtablecommentop:5,createtableop:[0,5,13],createuniqueconstraintop:5,createviewop:13,creation:[5,12,13,19],critic:[9,12,17],cross:[11,12],crud:18,ctx:[7,18],cumbersom:9,current:[0,1,3,5,7,8,9,10,11,12,17,18,19],current_rev:7,current_timestamp:12,current_vers:17,cursor:18,custom:[1,3,4,5,7,9,12,13,15,18,19],customari:7,customer_view:13,customiz:[0,19],cycl:12,d747:11,d747a8a8879:11,d747a8a8879_add_a_shopping_cart_column:11,d747a:11,dai:[12,19],damien:12,danjou:12,dash:12,data:[0,9,10,12,13,18],data_downgrad:13,data_upgrad:13,databas:[0,1,3,5,6,7,8,9,11,12,15,16,17,18,19],datamemb:[9,18],datatyp:[0,7,9,12,15,18],date:[7,9,11,12,15,18,19],datefmt:19,datetim:[9,12,18,19],dateutil:[12,19],david:12,db1:17,db2:[13,17],db_1:17,db_2:17,dba:[12,17],dbapi:[12,18],dbname:[7,19],ddl:[0,4,5,6,7,10,11,12,13,15,16,17,18,19],ddlelement:3,ddlevent:9,deal:[0,5,11,12,13,15,18],debug:0,dec:12,decemb:12,decim:[12,19],decis:12,declar:9,declarative_bas:16,decod:12,decor:[0,5,12],dedic:12,dedup:12,dedupl:12,deep:12,deepli:12,def:[0,5,7,9,10,11,12,13,16,17,19],default_constraint:18,default_schema_nam:0,defaultclaus:18,defaultimpl:[3,6,7],defens:12,defer:12,deferr:[5,12,18],defin:[0,5,7,8,9,12,13,16,18],definit:[9,10,12,13,18],degre:[0,12,18],dein:12,delet:[11,12,13,18],deliv:[0,5,12],delta:[11,19],demarc:[6,7],demonstr:13,deni:12,denot:[1,7,16],depend:[1,7,8,9,12,15],depends_on:[1,5,8,11,12,13],deprec:[1,7,8,12],derek:12,deriv:[7,12,18,19],desc:12,descend:[5,7,11],describ:[1,5,7,10,11,12,13,17,18,19],descript:[9,12,17,18,19],design:[17,18,19],desir:[9,10,11,12,19],destin:[0,7,18],destination_rev:7,destination_revis:7,destination_revision_id:7,detail:[0,1,7,9,10,12,15,16,18],detect:[12,13,15,19],determin:[0,7,8,9,12,13,17,19],determinist:12,dev:12,develop:[0,1,2,5,6,11,14,19],devis:13,dhillon:12,dialect:[0,2,3,7,9,10,12,18],dialect_kw:[5,18],dialect_nam:[7,17],dialectnam:18,diamond:11,dict:[10,13],dict_:3,dictionari:[0,1,2,5,7,12,13,16,18],did:[9,11,12],didn:[11,12],diff:[4,12,15],differ:[0,2,3,5,7,9,10,11,12,13,17,19],differenti:12,difficult:12,digit:12,dimitri:12,dir:8,direct:[1,2,3,4,6,7,9,10,11,12,13,15,16,17,18,19],directli:[0,1,2,5,7,9,10,11,12,13,18,19],directori:[1,2,4,7,12,13,15,19],dirnam:17,disabl:[5,7,10,12],disadvantag:16,disambigu:18,discourag:18,discrep:11,discuss:[0,1,2,4,5,11,14],dispar:12,dispatch_for:0,displai:[1,11,19],display_width:13,distinct:[0,11,12,18],distinguish:12,distribut:[12,14],diverg:11,doc:[8,12],docstr:[8,12],document:[0,1,2,5,7,9,12,14,18,19],doe:[0,3,5,6,7,10,11,12,15,16,19],doesn:[2,7,9,10,11,12,13,16],doing:[7,12,16],domk:12,don:[0,1,11,12,15,18,19],done:[0,7,9,10,11,12,19],dot:[3,12,13],doubl:[0,12],down:[1,7,8,9,11,12,13,19],down_revis:[0,7,8,9,11,13,19],down_revision_id:7,downgrad:[0,1,5,6,7,9,11,12,13,15,17,18],downgrade_op:[0,5,7,12,13],downgrade_ops_list:[0,5],downgrade_token:[0,5,7,12],downgradeop:[0,5,7,12],downsid:12,downward:7,draw:19,driven:12,driver:[12,19],drop:[3,5,9,12,14,15,16,18],drop_column:[0,3,5,10,12,13,18,19],drop_constraint:[0,3,5,10,12,16,18],drop_index:[3,5,12,13,18],drop_old:13,drop_sequ:[0,5],drop_sp:13,drop_tabl:[0,3,5,9,12,13,18,19],drop_table_com:[3,5,12,18],drop_view:13,dropcolumn:3,dropcolumnop:[0,5],dropconstraintop:[0,5],dropindexop:[5,13],dropsequenceop:[0,5],dropspop:13,droptablecommentop:5,droptableop:[0,5,13],dropviewop:13,due:[8,12],dummi:12,dump:[1,12,17,19],duplic:[0,12],dure:[3,6,7,9,12,13,18,19],dynam:[5,12,18],each:[0,6,7,8,9,11,12,13,16,17,18,19],earli:12,earlier:11,earliest:13,easi:[0,13,16,17],easier:[0,19],easiest:3,easili:[12,13],eced083f5df:0,edit:[1,9,11,12,13,15,16],editor:[1,12],effect:[7,11,12,13,16,18],effort:[12,16],egg:19,either:[0,7,9,11,12,13,18,19],elad:12,elect:3,element:[0,3,5,6,7,12,15,18],elif:13,els:[0,2,5,7,8,9,12,13,17,18,19],emac:12,email:13,embed:12,emit:[3,7,10,11,12,15,16,18],emit_begin:[3,7],emit_commit:[3,7],emit_ev:12,emphasi:[10,11,12],empti:[0,7,8,9,12,15,19],enabl:[7,9,12,17,18],encapsul:8,enclos:[7,12],encod:[2,7,12,19],encount:[0,5,9,12],encourag:[12,17],encourgag:16,end:[0,4,5,6,7,8,9,11,12,13,17,18,19],end_vers:17,endpoint:[8,11],enforc:[10,12],engin:[1,2,6,7,9,12,13,17,18,19],engine1:0,engine1_downgrad:0,engine1_upgrad:0,engine2:0,engine2_downgrad:0,engine2_upgrad:0,engine_from_config:[7,9,13],engine_nam:0,enhanc:[12,14],enorm:[12,18],enough:[9,16],ensur:[0,9,11,12,14,16,18],enter:10,entir:[3,8,10,12,13,16,18,19],entireti:12,entri:[0,11,12],entrypoint:3,env:[0,1,2,4,5,6,7,8,9,10,12,13,16,17,18,19],environ:[0,1,2,4,6,8,9,11,12,14,15,18],environment_context:7,environmentcontext:[0,1,2,3,4,6,7,9,10,12,13,17,18],equal:[11,18],equival:[3,7,9,12],eras:0,erdfelt:12,err:12,erron:12,error:[8,9,10,11,12,17,19],escap:[2,12,18],especi:11,essenti:[0,10,12],est5edt:19,establish:[0,5,7,9,11,12],etc:[0,7,12,18,19],evalu:12,even:[10,11,12,13,16,18,19],event:[3,9,10,12,16,18],eventu:9,ever:0,everi:[0,12,13,16,19],everyth:[12,19],exact:[12,19],exactli:[8,18],examin:0,exampl:[0,1,5,7,9,10,11,13,16,17,18,19],exceedingli:12,except:[0,7,8,9,10,11,12,13,17,18],exclud:[3,9,12,13,18],excludeconstraint:[12,18],exclus:[6,7,8],exec:[12,18],execut:[0,3,5,7,12,13,17,18],executemani:18,executesqlop:[5,12],execution_opt:[3,5,7,12,18],exist:[0,2,7,8,10,11,12,13,17,18,19],existing_autoincr:[3,18],existing_com:[3,5,12,18],existing_nul:[3,5,18],existing_server_default:[0,3,5,12,18],existing_typ:[0,3,5,10,12,18],exit:12,expand:12,expect:[7,10,11,12],explcitli:[9,12],explicit:[0,12,15],explicitli:[0,9,10,11,12,18,19],expos:[4,7],express:[7,9,12,16,18],extend:[0,1,2,4,5,6,7,13],extens:[0,3,5,6,12,13,18],extern:[12,18],extra:[10,12,13],extract:12,fa4456a9201:11,fa445:11,fabric:10,facad:[6,7],face:8,facilit:[12,18],fact:[11,12,19],factori:7,fail:[10,11,12],failur:12,faithfulli:9,fals:[0,1,3,5,7,8,9,10,12,13,17,18,19],familiar:11,far:[10,12],fashion:12,favor:9,fcntl:12,feasibl:1,featur:[0,1,6,7,9,10,11,13,14,15,16,17,18,19],februari:12,few:[9,10,11,12,19],field:[12,13,19],figur:[6,16],file:[0,1,2,5,6,7,8,9,10,11,12,15,17,18],file_:[2,17],file_config:2,file_templ:[8,12,19],fileconfig:[2,19],filenam:[2,7,12,19],filesystem:[2,8,19],filter:[0,7,12,13],find:19,fine:[5,7,11,18],finish:[9,13],fire:18,firebird:12,first:[0,1,2,5,7,9,10,11,12,13,15,16,17,18],fit:0,fix:[7,9,12,18],fixabl:13,fk_:[10,16],fk_bar_foo_id_foo:10,fk_user_address:18,fk_user_order_id:16,flag:[0,2,6,7,10,12,13,16,17,18,19],flake8:12,flat:10,flexibl:12,floer:12,focu:12,folder:19,follow:[0,2,6,7,8,10,11,12,13,16,18,19],foo:[0,2,9,10,11,12,13,18],forc:[7,12,18],forego:16,foreign:[5,7,9,12,13,15,16,18],foreign_kei:[7,12,18],foreign_key_column:18,foreign_key_constraint:7,foreignkeconstraint:12,foreignkei:[10,12,16,18],foreignkeyconstraint:[7,10,12,13,18],forest:11,forgot:12,foriegn:12,form:[0,1,8,12,13,18],format:[0,2,7,11,12,13,19],format_column_nam:3,format_server_default:3,format_table_nam:3,format_typ:3,formatargspec:12,formatt:19,formatter_:19,formatter_gener:19,former:12,formula:12,forth:11,forward:[7,12],found:[2,7,12,13],four:12,fragment:0,frazer:12,free:[9,19],freeli:[7,11],fresh:[11,13],fri:12,from:[0,1,2,3,5,7,8,9,10,11,12,14,15,16,17,18,19],from_config:[7,8],from_constraint:3,from_index:13,from_tabl:13,front:[7,12,13,15],frozenbal:12,frozenset:8,frustratingli:10,full:[0,3,7,8,10,11,12,13,18,19],fulli:[8,9,10,11,12,13,18,19],func:[12,18],fundament:[0,12],further:[12,17,18],futur:[7,12],gain:0,garaud:12,gatewai:[6,10],gather:[3,12],gave:11,genener:12,gener:[1,2,3,4,5,6,7,8,10,11,12,15,16,18,19],generate_revis:[8,12],get:[4,7,8,9,11,12,13,15,16],get_bas:[8,12],get_bind:[7,18],get_by_dialect:3,get_column:7,get_context:[7,13,18],get_current_head:[7,8,12],get_current_revis:[7,12],get_head:[8,12],get_head_revis:[7,12],get_main_opt:2,get_revis:[8,13],get_revision_argu:[7,12,17],get_schema_nam:[7,12],get_sect:[2,7,9,13],get_section_opt:2,get_starting_revision_argu:[7,12],get_tag_argu:[1,7],get_template_directori:2,get_unique_constraint:12,get_x_argu:[2,7,12,13],getargspec:12,getattr:13,getfullargspec:12,gettz:19,giacomo:12,gilcreas:12,git:12,github:[12,14],give:[0,9,11,12,13,16],given:[0,1,2,3,7,8,9,10,11,12,13,16,18,19],glitch:12,global:[12,13,16,19],goe:12,going:[0,7,11,12],gone:10,good:[0,1,7,16,19],googl:14,grain:7,granular:12,graph:[11,12],great:[11,12],greater:[11,12,18],greatest:18,group:[7,14,18],grow:0,grown:4,guarante:11,guess:9,guid:19,guidanc:[5,9],guidelin:0,guilherm:12,haapala:12,hack:17,hackeri:12,had:[11,12,13,18,19],hand:[9,12,17,19],handl:[0,5,7,10,12,18],handler:[0,7,19],handler_:19,handler_consol:19,hardcod:[1,12],harland:12,has:[0,4,6,7,8,9,10,11,12,13,16,18],hash:12,hasn:[9,12],have:[0,1,7,8,9,10,11,12,13,16,17,18,19],head:[0,1,2,5,7,8,12,13,15,19],head_onli:[1,12],head_revis:8,header:19,heavi:[12,19],help:[9,12,13],helper:[0,7],henc:[11,12],here:[0,2,3,4,7,8,9,10,11,12,13,16,18,19],hex:7,hierarchi:12,high:18,higher:[3,12],highli:12,highlight:13,hint:[11,16],histori:[1,8,11,12,13,15],hoc:[7,12,18],hold:[12,19],hole:18,home:19,homepag:15,hong:12,honor:12,hook:[0,3,7,9,12,13],host:[7,12,14],hostnam:13,hour:[12,19],how:[0,5,6,7,9,10,12,13,16,19],howev:[0,4,5,7,8,9,10,11,12,13,14,16,18],hstore:12,http:[3,12,14],huge:12,hugo:12,hundr:13,hypothet:13,ibrahim:12,id_:8,idea:[1,9,13,16,19],ident:[3,12,13],identif:12,identifi:[0,1,7,8,9,10,11,12,13,15,18],idx:13,idx_op:0,ignor:[7,12],ijl:12,ik_test:18,illustr:[0,5,11,13,17,19],immedi:[12,18],impact:[11,12],impl:[3,11,12,13,18],implement:[0,3,5,6,7,9,10,12,13,18],implementation_for:[5,13,18],impli:[9,12],implicit:[12,13,15],implicit_bas:8,implicitli:12,implmeta:3,importantli:12,importlib:12,imposs:11,improv:12,in_nam:13,in_order_count:13,inadvert:12,inappropri:12,incept:12,includ:[0,2,3,5,7,8,9,11,12,13,15,18,19],include_object:[0,7,12,13],include_schema:[7,12],include_symbol:[0,7,12],inclus:8,incom:12,incompat:[11,12],inconsist:10,incorrect:12,incorrectli:[11,12],increment:13,incur:12,indent:[0,12],independ:[11,12,13],index:[3,5,7,9,12,14,15,16,18],index_nam:[5,18],indic:[0,1,2,7,8,9,12,18,19],indicate_curr:1,individu:[0,3,7,11,12,18,19],inevit:9,infer:7,info:[0,5,7,9,11,12,13,17,19],inform:[1,3,5,7,8,11,12,14,15],infrastructur:12,ini:[1,2,7,11,12,15],ini_sect:2,init:[1,2,9,12,19],initi:[1,5,11,12,15,18,19],inlin:[12,18],inline_liter:[7,12,18],inner:12,innodb:[10,13],input:[2,18],insert:[3,5,10,11,12,13,17,18],insid:[0,7,8,11,12,13,19],inspect:[0,7,12,13],inspected_column:[7,9],inspected_default:7,inspected_typ:9,inspector:[3,7,9,10,12],inspector_column:3,instal:[12,15,19],instanc:[0,1,5,6,7,8,9,12,13,18],instant:7,instanti:[2,6,7],instead:[1,5,6,7,9,10,11,12,13,17,19],instruct:[0,3,5,11,12,13,18,19],intact:12,integ:[0,7,9,10,12,13,16,18,19],integr:[0,4,10,12,13,15,18],intend:[0,6,7,9,10,11,12],intent:9,interact:18,intercept:[1,9,12,16],interfac:[2,6,18],interfer:12,intermediari:12,intern:[0,1,2,4,5,6,12,15,16,18],interpol:2,interpret:[12,19],interstingli:11,interv:[7,12],intervent:12,intric:[10,11,13],introduc:[0,11,12,13,18],introduct:[12,19],invalid:12,invari:11,invoc:[1,7,19],invok:[0,2,5,6,7,9,10,11,12,13,18,19],invoke_for_target:13,involv:[7,9,11,12,18],ioctl:12,ioerror:12,is_bas:8,is_branch_point:8,is_empti:13,is_head:8,is_merge_point:8,is_migr:7,is_offline_mod:[7,17],is_stamp:7,is_transactional_ddl:7,is_upgrad:7,is_view:13,isinst:[7,9,13],isn:[0,10,11,12,13],issu:[5,9,10,12,14,18],issue10740:3,item:[0,7,9,12],iter:[0,7,8,12,13],iterate_revis:[8,12],its:[0,1,4,5,7,9,10,11,12,13,18],itself:[1,7,8,9,10,11,12,13,18,19],ivan:12,ix_:16,ix_b_aid:13,ixc:0,jacob:12,jan:12,januari:12,javier:12,jess:12,jiri:12,job:[0,19],johann:12,john:[12,18],join:[0,11,13,16,17],jone:18,json:12,jsonb:12,jul:12,juli:12,julien:12,jun:12,june:12,just:[1,2,5,10,11,12,13,16,18,19],kahlert:12,kamyshnikova:12,kataev:12,kazutaka:12,keep:[12,13],kei:[0,2,5,7,8,9,11,12,13,15,16,17,18,19],kelli:12,keyerror:12,keyword:[7,12,13,18],kick:12,kind:[0,5,7,9,10,11,12,13,18],know:[0,6,10,11,16,19],knowledg:[0,16],known:[0,9,10,11,12,16,18,19],koizumi:12,kolov:12,konstantin:12,kuncar:12,kuzminski:12,kwarg:[2,7,12],label:[1,15],land:12,languag:[7,12,13,18],larg:17,larger:12,last:[0,11,17],last_transaction_d:[9,17,19],latenc:19,later:[0,1,9,11,12,17],latest:12,latin1:13,latter:[5,12],layer:12,layout:11,lead:[11,12],leak:12,learn:[0,13],least:[5,7,10,12,16,18,19],leav:19,lebedev:12,left:[7,11,18,19],legaci:[0,12],legacy_schema_alias:12,legal:18,len:18,length:[0,7,8,9,10,13,19],less:[11,12,18],lesser:0,let:[0,11,13,16,19],level:[0,3,5,7,10,12,13,18,19],levelnam:19,liber:12,librari:[12,18,19],lieu:[13,18],lift:12,lightli:11,lightweight:15,like:[0,2,7,9,10,11,12,13,16,17,18,19],limit:[7,8,9,11,12],line:[2,7,10,11,12,13,17],lineag:[11,12,13],link:[1,5,11,19],link_to_nam:12,list:[0,1,5,6,7,8,11,12,13,16,18,19],list_templ:[1,2,12,19],listen:[7,10,18],listen_for_reflect:10,liter:[5,7,12,18],literal_bind:[7,12,18],littl:12,live:[10,11,17,18,19],load:[7,9,10,11,12,13,19],load_dialect_impl:12,local:[0,2,7,9,12,17],local_col:[5,18],localhost:[11,13,19],localtim:19,locat:[0,7,11,12,13,19],log:[2,12,17,19],logger:[0,19],logger_:19,logger_alemb:19,logger_root:19,logger_sqlalchemi:19,logic:[8,9,10,12,13],longdoc:8,longer:[7,11,12,13,16,19],look:[0,9,11,12,13,16,19],lookup:12,loop:13,loos:14,lot:[9,11,16],lower:[8,12,18],luca:12,maarten:12,made:[1,7,9,10,11,12,18,19],magnusson:12,mai:[0,2,5,7,8,9,10,11,12,13,17,18,19],main:[2,6,11,12],maintain:[0,8,11,12,13,18,19],major:[3,4,7,9,12,17,19],make:[0,1,2,6,7,9,11,12,13,16,17,18,19],mako:[0,7,8,9,11,12,13,19],malt:12,manag:[7,8,11,12,18,19],mani:[1,4,7,8,10,11,12],manipul:[7,10,12],manner:12,mansur:12,manual:[7,9,10,11,12,16,18],map:[7,8],mar:12,marc:12,march:12,marcin:12,mariadb:12,marker:8,marku:12,marquard:12,martin:12,match:[5,8,9,10,12,18,19],matt:12,matter:15,max:19,mayb:16,mclean:12,mean:[0,7,9,10,11,12,17,18],meaning:7,meant:11,mechan:[7,8,12,19],mediumtext:13,member:[9,12],memori:17,mention:[11,16,18],mercuri:12,merg:[1,8,12,15,19],mergepoint:[11,12],messag:[0,1,2,5,8,9,12,13,19],meta:[10,16],metadata:[0,7,10,12,13,15,16,18,19],metadata_col:0,metadata_column:[3,7,9],metadata_default:7,metadata_fk:3,metadata_index:3,metadata_sequ:0,metadata_t:0,metadata_typ:9,metadata_unique_constraint:3,meth:12,method:[0,1,2,3,4,5,6,7,8,9,10,12,13,18,19],methodolog:9,michael:12,michal:12,michel:12,microsoft:18,might:[10,12,13,16],migrat:[0,1,2,3,4,5,6,8,11,12,15,16,18],migrateoper:[0,5,13,18],migration_context:[0,3,7,18],migration_script:0,migration_typ:9,migrationcontext:[0,1,2,5,6,7,12,13,18],migrationinfo:[7,12],migrationscontext:16,migrationscript:[0,5,7,12,13],mike:14,million:12,mind:16,minhe:12,minimalist:19,minimum:12,minut:[12,19],mis:12,misc:15,mise:12,misinterpret:12,miss:12,mistaken:12,mistakenli:12,mix:12,mmelnychuk:12,mock:7,mode:[1,2,3,6,7,11,12,15,18],model1bas:9,model2bas:9,model:[7,9,11,12,13,16,19],model_metadata:0,modif:12,modifi:[0,2,3,7,9,10,12,13,18,19],modify_:0,modify_com:5,modify_nam:5,modify_nul:[0,5],modify_op:0,modify_server_default:5,modify_typ:5,modifytableop:[0,5,13],modul:[0,2,5,6,7,8,11,12,13,15,18],modular:12,moment:[11,12,18],mon:12,month:[12,19],more:[0,1,4,5,7,8,9,10,12,13,14,15,16,18,19],moriyoshi:12,most:[0,5,7,8,9,10,11,12,13,14,16,18,19],mostli:[10,12],move:[7,9,10,12,18,19],movement:[7,12,13],mssql:[3,7,12],mssql_add_column:3,mssql_batch_separ:7,mssql_drop_check:[12,18],mssql_drop_default:[12,18],mssql_drop_foreign_kei:[12,18],mssql_includ:12,mssqlimpl:3,much:[10,11,12,13,16,18],multi:[0,8,19],multidb:[0,5,9,12,19],multiinsert:[3,5,12,18],multipl:[1,5,7,8,12,15,17,18,19],multiplehead:8,must:[0,2,8,9,10,11,12,17,18,19],mutat:[10,12],mutipl:0,my_column:9,my_compare_server_default:7,my_compare_typ:9,my_enum:10,my_funct:7,my_metadata:13,my_nam:9,my_render_column:7,my_seq:0,my_seq_1:0,my_sequ:[0,5],my_sequence_1:0,my_tabl:[13,18],my_view:13,myapp:[2,7,8,9,16,17],mybranch:0,mycolumn:9,mycustomtyp:9,mydatabas:[7,13],myengin:18,mymodel1:9,mymodel2:9,mymodel:[9,16],myotherdatabas:13,mypackag:9,myproject:13,mysect:2,myspecialcol:7,myspecialtyp:9,mysql:[4,10,12,13,15,18],mysql_com:13,mysql_default_charset:13,mysql_engin:[12,13],mysqlalterdefault:3,mysqlchangecolumn:3,mysqldb:12,mysqlimpl:3,mysqlmodifycolumn:3,mytabl:7,name:[0,1,2,3,5,7,8,9,11,12,13,15,17,18,19],namespac:[5,7,9,12,13,18],naming_convent:[10,12,16,18],narrow:11,nativ:[16,18],natur:[11,12],navig:8,necessari:[6,7,9,10,12,13,18],necessarili:[9,12],need:[0,2,3,4,5,7,8,9,10,11,12,13,16,17,18,19],neg:19,nest:[7,12,13],net:12,network:11,never:[12,18],new_column_nam:[5,10,12,18],new_table_nam:[3,5,18],newer:[7,11,12,14],newli:[12,18],newnam:3,next:[5,7,10,11,12,15],nextrev:8,nextval:12,nice:13,nil:12,no_paramet:12,node:[11,12],non:[0,2,8,9,12,18,19],none:[0,1,2,3,5,7,8,9,10,11,12,13,16,17,18,19],nonetyp:12,nonexist:12,nor:[10,12],normal:[0,3,4,5,7,8,9,10,11,12,13,16,18,19],nose:12,notabl:8,notat:12,note:[0,1,2,7,8,9,10,11,12,13,18,19],noth:[7,8,11,12,19],notic:[17,19],notimplementederror:[12,13],notion:12,notset:19,noufal:12,nov:12,novemb:12,now:[0,5,7,8,9,10,11,12,13,18,19],nspname:0,nullabl:[0,3,5,7,9,10,12,13,18,19],nullpool:[7,12,13],number:[0,7,8,9,11,12,13,19],numer:[12,18],nut:7,nvarchar:18,obj:[9,13],object:[1,2,3,4,6,8,9,10,12,15,16,18,19],object_:0,objnam:13,obscur:12,observ:12,obtain:0,obviou:9,occur:[0,5,7,9,10,11,12,19],occurr:12,oct:12,octob:12,odagiri:12,odd:[10,11],off:[3,7,9,10,11,12,17,18],offer:[11,12],offlin:[2,3,6,7,12,15,18],often:[1,9,11,12,13],oid:[0,13,16],old:[9,10,12,13,18,19],old_data:0,old_obj:13,old_table_nam:[3,5,18],older:[11,12,13,18],omit:[2,7,10,12,18],on_version_appli:[7,12],onc:[0,7,12,13,15,18,19],ondelet:[5,12,13,18],one:[0,1,2,3,4,5,7,8,9,10,11,12,15,16,18,19],ones:12,onli:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,17,18,19],onlin:[7,10,12,17,18],onto:[0,11,19],onupd:[5,12,18],op_cl:18,opcontain:5,open:[2,5,7,12,17],openstack:14,oper:[2,3,4,6,7,8,9,10,11,12,14,15,19],operar:13,opportun:0,oppos:12,opposit:9,ops:[0,3,5,12,13],opt:[0,7],option:[0,1,2,3,5,7,8,9,10,11,12,13,17,18,19],oracl:[7,12,16],oracle_batch_separ:7,order:[0,1,3,5,6,7,9,10,11,12,13,16,18,19],order_count:13,ordinarili:7,org:[3,12,14],org_fk:0,organ:[0,5,11,12,13,14,17,18],organization_id:0,orient:18,origin:[5,7,10,11,12,13],other:[0,1,3,6,7,8,9,11,12,13,14,15,16,18,19],otherwis:[2,7,8,12,13,16,18],our:[5,9,10,11,13,15,16,17,18],out:[1,2,5,6,9,11,12,13,16,19],outer:[12,13],output:[0,1,2,5,6,7,9,11,12,13,17,18,19],output_buff:[2,3,7,17],output_encod:[7,8,12,19],outright:12,outsid:[0,4,7,12,13,18],over:[7,9,10,11,12],overal:[0,12],overcom:10,overhaul:12,overkil:13,overrid:[2,7,9,10,18],overridden:[7,12],overview:[4,5,13,15,19],overwhelm:12,own:[1,9,11,12,13,16,18],packag:[1,9,12,14,19],page:15,pair:[9,12],paradigm:11,paradoxxxzero:12,parallel:12,paramet:[0,1,2,4,7,8,9,10,12,13,16,17,18],parameter:18,paramt:12,parent:[1,11,12,16,18,19],pars:[2,7,12],parse_encod:12,part:[0,2,5,6,9,10,11,12,13,18,19],parth:12,parths007:12,parti:[9,12],partial:[8,11,12,15],particular:[3,4,7,12,15,16,18,19],particularli:[7,9,12],pass:[0,2,4,5,6,7,8,9,10,11,12,13,16,17,18,19],passaro:12,patch:12,path:[0,1,2,8,9,11,13,17,19],pathnam:19,pattern:[10,12],paul:12,pedro:12,pep3149:12,pep488:12,pep8:12,pep:12,per:[3,6,9,12,18],percent:[2,12],perfect:9,perfectli:18,perform:[0,3,7,10,11,12],perhap:1,period:18,perman:11,perspect:[2,7,11],pertin:11,petrucha:12,pg_catalog:[12,13,16],pg_class:[0,13,16],pg_constraint:16,pg_namespac:[0,13,16],pg_table_is_vis:13,phase:12,philippsen:12,philosoph:10,philosophi:18,phrase:12,pick:12,pickl:9,pip:14,pipe:12,pk_:16,pk_my_tabl:18,pkg_resourc:12,place:[0,3,5,7,9,10,11,12,13,16,19],placehold:13,plai:[7,19],plain:[7,9,12,18],plan:0,platform:12,pleas:[0,1,2,5,7,9,10,11,12,13,19],plpgsql:13,plu:[12,19],plug:0,plugin:[0,4,12,13,15,18],podoliaka:12,point:[0,1,4,7,8,10,11,12,19],pool:[7,13],poolclass:[7,13],popul:[2,8,13,18,19],popular:13,portabl:12,posit:[7,12,18,19],possibl:[2,5,10,12,13,17,18,19],post:[12,14],poster:11,postgreql:12,postgresql:[0,2,4,7,9,10,11,12,13,15,16,18,19],postgresql_concurr:12,postgresql_us:[12,18],postgresqlcolumntyp:3,postgresqlcontext:[17,19],postgresqlimpl:[3,11,13],potenti:[12,14],pound:12,pprint:0,practic:[7,18,19],pragma:[10,12],pre:[10,12],preced:[0,9,10,11],precis:12,predict:10,prefer:[7,8,10,12],prefix:[0,7,12,13,15,19],prematur:12,prep_table_for_batch:3,presenc:[0,13],present:[0,3,5,6,7,8,9,10,11,12,13,17,18,19],preserv:12,pretti:[10,11,12,13,18],preval:12,prevent:[10,12],previou:[1,11,12,13,18],previous:[0,12,13],primari:[0,5,6,7,9,10,12,13,16,17,18],primarili:[0,12],primary_kei:[0,7,10,12,13,16,18,19],primarykeyconstraint:[0,9,12,16,18],print:[0,2,12,15],print_stdout:[2,12],prior:[7,10,11,12],probabl:[11,12,19],problem:[12,13],proce:[3,5,7,9,10,11,12,13,14,18],procedur:[10,13],proceed:[13,16,19],process:[0,1,3,9,10,11,12,13,14,18,19],process_revision_direct:[0,1,7,12,13],procur:19,produc:[0,6,7,8,9,10,12,13,18,19],produce_migr:0,product:[5,7,12,13,16],prog:2,program:[5,12],programat:2,programmat:[0,1,2,3,4,7,8,12],prohibit:12,project:[4,11,13,15,19],promin:6,prompt:16,proof:7,propag:12,properli:[10,12],properti:13,property_nam:13,property_name_users_id:13,property_valu:13,propos:[0,13],provid:[0,2,3,4,6,7,8,9,10,11,12,13,16,17,18,19],proxi:[3,5,7,18],prune:[13,19],pseudo:12,psycopg2:12,publish:14,pull:[11,12,17],purpos:[0,4,6,10,12,13,17],pursu:11,put:[0,11,13],py2k:12,py3:12,py3k:12,pyc:[12,19],pyformat:2,pylon:[12,14,19],pyo:[12,19],pypi:[12,14],pyramid:12,pysqlit:[3,12],pytest:12,python2:12,python3:12,python3x:12,python:[0,2,3,5,6,7,8,9,12,14,15,18,19],pythonoptim:12,q_bool:16,qualifi:12,qualnam:19,queri:[12,13],quirk:12,quit:[10,11,13,16],quot:[3,12,18],quote_dot:3,quoted_nam:[12,18],r1975ea:19,radic:12,rais:[0,7,8,9,10,12,13,17],ran:[0,11],rang:[1,12,15,17],rangenotancestorerror:8,rare:12,rather:[1,7,9,10,11,12,13,18,19],rational:10,raw:[2,12,18],rcurrent:12,reach:[11,12],read:[2,6,12,17,19],readm:[12,19],real:[4,7,11,12,18],realli:11,rearrang:12,reason:[5,7,9,10,11,12],rec:0,receiv:[0,7,11,12,18],recent:[7,8,12,13,14,18,19],recip:[1,13],recogn:12,recommend:[9,11,12,18],reconcil:11,reconcili:11,recreat:[3,10,12,13,18],recurs:13,redirect:[2,17],reduc:0,redund:12,refactor:[9,12],refer:[0,2,5,6,7,8,9,10,12,13,15,16,17,19],referenc:[12,15,18,19],referent_schema:[5,18],referent_t:[5,18],referenti:[10,12],referred_table_nam:[10,16],refin:12,reflect:[0,3,7,9,12,13,15,18],reflect_arg:[10,12,18],reflect_kwarg:[10,12,18],reflectt:9,refresh:8,regard:[0,1,2,5,9,12,18],regardless:[7,10,12,18,19],regexp:12,regist:[5,12,18],register_oper:[5,13,18],registr:[0,5],regress:12,regular:[6,7,8,10,11,12,18],rel:[9,11,12,15],relat:[10,12,16,19],relax:12,releas:[9,10,12,14,16],releg:13,reli:[10,12,17],reliabl:9,relianc:19,relkind:0,relnam:[0,13,16],relnamespac:[0,13,16],relnum:11,remain:[10,11,12,13,18],rememb:16,remot:[12,18],remote_col:[5,18],remov:[5,9,12,13,18],remove_column:0,remove_constraint:12,remove_index:12,remove_t:0,renam:[5,10,12,18],rename_t:[3,5,12,18],renamet:3,renametableop:5,render:[2,5,6,7,10,12,15,16,18,19],render_as_batch:[0,7,10,12],render_create_sequ:0,render_drop_sequ:0,render_item:[0,7,9,12],render_python_cod:[0,13],render_typ:3,rendered_inspector_default:3,rendered_metadata_default:[3,7],reorgan:[7,12],repair:12,replac:[0,2,3,9,10,12,15,19],replace_sp:13,replace_view:13,replace_with:13,replaceableobject:13,report:[12,14],repositori:[8,11,12],repr:[7,11,12,13],repres:[0,1,2,3,5,6,7,8,10,12,13,18,19],represent:[9,12],reproduc:9,repurpos:12,req:12,request:[8,12,13,19],requir:[1,3,7,8,10,11,12,13,16,18,19],requires_recreate_in_batch:3,resembl:12,reserv:18,resili:12,resolut:[11,12],resolutionerror:8,resolv:[8,11,12],resolve_depend:1,resourc:[12,19],resource_filenam:[12,19],respect:[0,7],respond:19,rest:7,restor:9,restrict:[12,17,18],result:[0,7,8,9,11,12,13,18,19],retriev:[9,12,17,18],reusabl:12,rev:[1,7,8,11,12,13,17,19],rev_id:[1,5,8],rev_rang:1,reveal:12,revers:[0,5,12,13,18],reversibleop:13,revert:[1,12],revid:8,review:[9,13],revis:[1,4,5,6,7,9,12,15,17],revision_environ:[7,12,19],revision_map:7,revisionerror:8,revisionmap:8,rework:12,rewrit:[7,12,13],right:[7,11,12,16,18],rivera:12,robbi:12,rock:19,role:12,roll:[7,13],rollback:[12,17],roman:12,romano:12,root:[7,8,11,19],rout:[3,7],routin:[0,7,12],row:[0,3,5,11,12,16,17,18],rudimentari:[0,4,9,19],rule:[6,9,12,18],run:[1,2,3,4,5,6,7,8,9,12,15,16,17,18],run_arg:7,run_env:[7,8],run_filt:0,run_migr:[3,5,7,9,12,13,17,18],run_migrations_offlin:17,run_migrations_onlin:[0,9,13,16,17],run_test:12,runner:[2,6,12,19],runnier:2,runtim:[4,5,12,13,15],ryan:12,s_downgrad:0,s_upgrad:0,safe:[10,12,18],safeconfigpars:[2,19],sai:[11,13],said:11,same:[0,1,3,5,7,9,10,11,12,13,16,17,18,19],sampl:[9,12],saniti:12,santacruz:12,sat:12,satisfi:11,scalar:7,scale:12,scan:[7,12],scenario:[8,10,11,12],scene:[12,16],sch:0,schaik:12,schema1:13,schema2:13,schema3:13,schema:[0,2,3,5,7,9,10,12,13,18],schema_downgrad:13,schema_upgrad:13,schemaitem:[0,7],schemanam:[0,13],scheme:[0,8,9,12,16,17,18,19],scope:[0,7,10,12,13],scott:[11,13,19],scratch:[12,15,19],screen:19,script:[0,1,2,4,5,6,7,9,10,11,12,13,14,15,16,18],script_directori:[7,12],script_loc:[2,7,8,12,13,19],scriptabl:19,scriptdirectori:[1,2,6,7,8,12],search:[9,15],second:[0,10,11,12,13,15,18],section:[0,1,2,4,5,6,7,9,10,11,12,13,17,18,19],secur:18,see:[0,1,2,3,5,7,9,10,11,12,13,16,18,19],seek:10,seem:16,seen:[10,11,12],segment:12,select:[0,8,9,10,11,12,13,16,17,18],select_for_downgrad:8,self:[5,9,10,12,13,18],semant:11,semi:11,semicolon:7,send:[10,12,13],sensit:[12,18],sent:[1,2,5,7,12],separ:[7,8,11,12,13,18],septemb:12,sequenc:[0,3,5,7,8,9,12,13,18,19],sequence_nam:[0,5],sequent:11,seri:[0,1,2,6,7,10,11,12,14,15,18],serial:[0,12,13,17],serv:[0,5,8,11,12],server:[0,3,7,9,12,17,18],server_default:[3,5,7,12,18],servic:[10,12,18],session:17,set:[0,2,3,5,6,7,8,9,10,12,13,15,17,18,19],set_main_opt:[2,7,8,12],set_section_opt:[2,12],setdefault:0,setup:[2,12,14,18],setuptool:12,sever:[10,11,12,19],shandilya:12,share:[1,2,11,12,15],shgoh:12,shop:[10,11],shopping_cart:11,shoppingcart:11,shorthand:11,shot:13,should:[0,1,5,7,8,9,10,11,12,13,14,18,19],shouldn:12,show:[0,1,7,11,12,19],sibl:[11,12],side:[7,11,12,18],sign:[2,12],signal:12,signatur:12,signific:12,significantli:12,similar:[10,11,12,14,16,18],similarli:12,simpl:[0,5,7,9,10,12,13,16,18,19],simpler:[2,11],simplest:[0,5],simpli:[2,12,13],simplifi:12,simplist:13,simultan:[8,11,19],sinc:[0,7,10,11,12,18],singl:[0,1,5,7,8,9,11,12,13,18,19],sit:11,size:12,skip:[7,12,13],skip_autogener:7,skip_table_on:7,skip_table_two:7,slice:[12,19],slightli:[10,12],slug:[8,12,19],small:[1,6,9,12],smallinteg:12,smith:18,softwar:12,sok:12,sole:13,solut:16,some:[0,2,3,7,9,10,11,12,13,16,17,18,19],some_oper:5,some_param:2,some_t:[10,16,18],some_valu:2,somecolumn:7,somefunct:12,somenam:7,somet:[9,16],sometag:7,someth:[7,9,11,12,13,16,19],sometim:13,somewher:[9,13],sort:[0,11,12],sorted_t:0,sourc:[9,11,12,13,14,18,19],source_revis:7,source_revision_id:7,source_schema:[5,12,18],source_t:[5,18],sourceless:[8,12,19],sourcenam:18,sp_renam:12,space:[7,12],special:[0,3,7,8,9,10,11,12,16,18,19],specif:[0,1,3,5,6,7,9,12,13,15,17,18,19],specifc:11,specifi:[0,1,7,9,10,11,12,18,19],specifii:12,spit:12,splice:[1,5,8,11,19],split:[12,13],sporad:12,spuriou:13,sql:[1,4,5,6,7,10,11,12,13,15,16,18,19],sqla:[9,12],sqlalchemi:[0,2,3,7,9,10,11,12,13,14,15,16,18,19],sqlalchemy_module_prefix:[0,7,9,12],sqlite:[0,4,7,12,15,18],sqliteimpl:3,sqllchemi:18,sqltext:[5,13,18],src:12,stack:12,stai:13,stamp:[1,7,12,13],stand:9,standalon:[12,18],standard:[2,5,7,10,12,17,18,19],standpoint:8,start:[6,7,8,9,10,11,12,13,15,19],start_migr:3,starting_rev:[7,17],startup:19,state:[0,2,3,5,7,10,11,12,18,19],statement:[3,7,10,12,15,16,17,18],static_output:[3,7],statu:[9,11,12,14],stderr:[17,19],stdout:[1,2,7,12],stem:10,step:[0,3,5,7,10,11,12,13,15,18],still:[7,10,11,12,13,18],stop:[11,19],stopiter:12,storag:2,store:[0,2,5,11,12,13],str:12,straight:[12,13,19],straightforward:[12,13],stream:[0,5,6,7,11,12,18,19],streamhandl:19,street:10,stress:11,strictli:8,string:[0,1,2,3,7,8,9,10,11,12,13,16,18,19],stringif:12,stringio:12,strongli:12,structur:[0,1,7,10,11,12,15,18,19],stub:[13,18],style:[1,5,10,12,13,18],sub:11,subclass:[0,5,6,8,12,18],subject:[11,12],subsect:4,subsequ:[11,12],subset:[7,12],substitut:[2,11,12,19],substr:12,succe:12,succeed:8,success:0,suffici:[5,10],suggest:11,suit:[12,17,19],suitabl:[7,12,18],summar:0,sun:12,superced:7,suppli:[6,12,19],support:[0,2,3,5,7,8,9,10,11,12,13,14,15,16,18,19],suppos:[0,9,13,16,19],suppress:12,sure:[2,9,11,19],surpris:12,surround:[12,18],sweep:7,sybas:12,symbol:[1,2,8,11,12,18,19],symlink:12,synonom:7,synonym:7,syntact:18,syntax:[10,13,15,17],sys:[2,7,12,17,18,19],sys_c0029334:16,system:[0,1,3,5,6,7,9,10,11,12,13,18],szotten:12,t_tabl:19,tabl:[0,1,3,5,6,7,9,11,12,16,17,18,19],table_arg:[10,18],table_key_to_t:0,table_kw:5,table_kwarg:18,table_nam:[0,3,5,10,12,13,16,18],tablenam:[0,7,12,13,16],tables_drop:13,tag:[1,7,12],tailor:[12,13],take:[1,3,7,9,10,12,13,16,18],taken:[0,12,18],talk:[0,16],target:[0,1,2,7,9,10,11,12,15,18,19],target_metadata:[0,7,9,10,12,13,16,18],task:[0,9],technic:6,techniqu:[0,5,12,13],tediou:[10,16],tell:[11,12,13,19],temp:10,templat:[0,1,2,5,7,8,9,12,13,19],template_arg:[7,12],temporari:[12,18],temporarili:10,temptabl:12,tend:12,term:[0,11,18,19],termin:12,termwidth:12,test:[0,8,9,11,12,13,16,19],test_autogener:12,test_render_fk_constraint_kwarg:12,text:[2,3,6,7,12,13,18],text_typ:12,textiowrapp:2,textual:[7,12,13],than:[1,3,7,8,9,11,12,13,15,18,19],thank:12,thei:[0,1,5,7,9,10,11,12,13,18,19],them:[0,7,10,11,12,13,16,17,18],themselv:[0,5,6,7,8,12,13,15,19],theodor:12,theoret:19,theori:[13,19],therefor:[2,10,12,18],thereof:0,thi:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,17,18,19],thing:[0,7,11,12,13,16,18,19],think:[11,13],third:[0,9,11],those:[2,3,7,8,9,10,11,12,13,16,18],though:[2,7,10,11,12,13,16,18,19],thoughtfulli:11,thousand:19,three:[0,12,13,19],through:[0,7,8,10,11,12,13,14,17],thu:[11,12],ticket:12,tiger:[13,19],time:[0,5,7,10,11,12,16,17,19],timestamp:[12,17,18,19],timezon:[8,12,19],tinyint:12,tname:0,to_constraint:3,todo:18,togeth:[1,11,18,19],token:[0,12,16,18,19],too:[11,12,13,16],tool:[10,14,15,19],toolkit:15,top:[9,11,12],topic:[9,16],topolog:11,tos:13,total:[8,19],tougher:13,toward:[7,11,13,18],tox:12,trace:12,track:12,tracker:[12,14],tradit:[12,18],transact:[1,3,6,7,10,11,12,13,17,19],transaction_per_migr:[7,12],transactional_ddl:[3,7,12,17],transfer:[10,12],translat:12,transpar:12,travers:[0,8,11,12],tread:11,treat:[1,7,11,12,13,17,18],treatment:12,tree:[7,11,13,19],trigger:[0,12,13],tripl:0,trivial:12,truncat:[12,19],truncate_slug_length:[8,12,19],tty:12,tue:12,tupl:[0,7,8,11,12,13],turn:[2,7,10,11,12,18],tutori:[1,2,7,15,18],twice:12,twist:11,two:[0,1,5,7,9,11,12,13,16,17,19],txt:17,type:[0,7,12,13,15,16,18],type_:[0,3,5,7,9,10,12,13,18],type_obj:3,typedecor:[9,12],typeengin:[0,7,18],typeerror:[12,13],typic:[3,6,7,8,10,11,12,13,16,18,19],tzinfo:19,tzutc:19,ultim:[6,7,12,13,18],unaffect:12,unambigu:11,unchang:12,uncommon:12,uncondition:[10,12,19],undefin:12,under:[7,12,14,18],underli:[2,7,18,19],underneath:11,underscor:12,understand:19,understood:[12,18],unfortun:13,unicod:[12,19],unimpl:12,union_upd:12,uniqu:[5,7,9,12,13,15,16,18,19],unique_constraint:[7,12],uniqueconstraint:[7,9,10,12,16,18],unit:[6,12],unittest:12,univers:12,unknown:12,unless:[2,8,19],unlik:[1,10],unmerg:[7,8,12],unnam:[12,15,16,18],unnecessari:12,unnecessarili:12,unpredict:16,unreport:12,until:[11,12],untrust:18,unusu:12,unvers:19,unwant:[9,12],up_or_down_op:0,up_revis:[7,11,13],up_revision_id:[7,12],upcom:12,updat:[0,7,11,12,13,18],upgrad:[0,1,2,5,6,7,9,10,11,12,13,16,17,18,19],upgrade_:12,upgrade_engine1:19,upgrade_engine2:19,upgrade_op:[0,5,7,12,13],upgrade_ops_list:[0,5],upgrade_token:[0,5,7,12],upgradeop:[0,5,7,12,13],upon:[0,1,6,7,8,9,10,11,12,13,17,19],upper:[8,18],uppercas:12,upward:11,uq_:16,uq_const_x:16,uq_user_account_nam:16,uq_user_nam:18,uri:[12,19],url:[2,7,12,13,17,19],usabl:[12,13],usag:[0,1,2,3,7,10,12,14,15,16,18,19],use:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,16,18,19],use_alt:12,used:[0,2,3,4,5,6,7,8,9,10,11,12,13,16,17,18,19],useful:[0,1,2,5,6,8,10,11,12],user:[0,4,5,6,7,9,12,13,14,17,18,19],user_account:16,user_account_id:16,user_excl:18,user_id:18,user_module_prefix:[7,9,12],user_ord:16,user_order_id:16,user_order_user_account_id_fkei:16,user_properti:13,user_properties_ibfk_1:13,user_property_t:13,user_t:13,usernam:10,users_id:13,uses:[3,8,9,12,13,16,18,19],using:[0,1,2,4,5,6,7,9,10,11,12,13,16,17,18,19],usual:[0,1,4,7,9,10,11,18],utc:19,utcnow:19,utf8:13,utf:[2,8,12,19],util:[2,7,8,9,12],utim:0,uuid4:12,uuid:[7,9,12],valid:12,valu:[0,2,7,9,11,12,13,16,17,18,19],van:12,varchar:[0,9,13,17,18],vari:7,variabl:[0,2,7,9,12,18,19],varianc:3,variant:12,varieti:[9,10,12,19],variou:[6,12,13,18,19],vast:[4,9,19],vendor:12,verbatim:2,verbos:[1,11,12,19],veri:[0,5,7,9,11,12,13,19],verifi:18,versa:12,version:[0,1,2,5,6,7,8,9,10,12,13,14,15,18,19],version_fil:17,version_loc:[8,11,12,19],version_num:[11,12,13,17],version_path:[1,5,8],version_t:[7,12],version_table_pk:[7,12],version_table_schema:[7,12],versionad:1,versionchang:12,versu:[11,18],via:[0,1,2,3,5,7,9,10,12,14,17,18,19],vice:12,view:[0,9,11,12,15],visit_add_column:3,visit_column_com:3,visit_column_default:3,visit_column_nam:3,visit_column_nul:3,visit_column_typ:3,visit_drop_column:3,visit_rename_column:3,visit_rename_t:3,visual:6,wai:[0,4,10,11,12,13,16,17,18,19],walk:13,walk_revis:8,want:[0,7,8,11,13,16,17,18,19],warn:[12,19],wasn:12,websit:12,wed:12,weed:12,week:12,welcom:12,well:[0,4,5,7,9,11,12,15,16,17,18,19],wendi:18,were:[2,7,9,10,11,12],weren:[11,12],what:[0,7,10,11,12,13,15,16,18,19],whatev:[0,2,9,19],wheel:12,when:[0,1,2,3,4,5,6,7,8,9,10,11,12,15,16,17,18,19],whenev:[10,19],where:[0,1,2,3,7,8,9,10,11,12,13,16,17,18,19],wherea:[7,9,12,13],wherebi:[10,12],whether:[0,1,7,8,10,12,18],which:[0,2,4,5,6,7,8,9,10,11,12,13,16,17,18,19],whichev:11,whitespac:12,who:[0,1,2,5,6],whole:[0,11,12,13,16,18],whose:[6,12],wide:[0,9,12],width:[0,12],wiki:12,wild:11,wilk:12,william:18,window:12,wish:[0,1,2,5,6,7,11,13,16],with_stat:12,within:[0,2,5,6,7,8,9,10,11,12,13,17,18,19],without:[0,2,7,10,11,12,13,17,18,19],won:12,word:[12,18],work:[0,1,2,7,9,12,13,14,15,16,17,18,19],workaround:[10,12,18],workflow:[10,11,12],world:4,wors:16,worth:16,would:[0,3,5,7,9,10,11,12,13,16,17,18,19],wouldn:12,wow:19,wrap:12,write:[1,12,15,16,19],writer1:0,writer2:0,writer:0,written:[7,12,13,19],wrong:[12,16],wrote:17,www:12,xdist:12,xmin:12,xxxxx:[11,19],xyz:[12,13],yap:12,year:[12,16,19],yet:[7,9,11,12,18,19],yield:[7,8,12,13],you:[2,7,8,9,11,12,13,16,19],your:[9,11,12,13,16,19],yourapp:[1,2,13,19],yourproject:19,yourself:12,zeidler:12,zero:[0,8,12],zone:17},titles:["Autogeneration","Commands","Configuration","DDL Internals","API Details","Operation Directives","Overview","Runtime Objects","Script Directory","Auto Generating Migrations","Running \u201cBatch\u201d Migrations for SQLite and Other Databases","Working with Branches","Changelog","Cookbook","Front Matter","Welcome to Alembic\u2019s documentation!","The Importance of Naming Constraints","Generating SQL Scripts (a.k.a. \u201cOffline Mode\u201d)","Operation Reference","Tutorial"],titleterms:{"boolean":10,"enum":10,"function":0,"import":16,The:[7,13,16,19],affect:9,alemb:[13,15],all:11,api:4,auto:9,autogener:[0,9,10,13,16],base:11,batch:10,branch:[11,13],bug:[12,14],build:13,built:5,call:0,chang:[10,12],changelog:12,check:10,code:13,collect:9,command:[1,13],commun:14,compar:9,comparison:0,condit:13,configur:2,connect:13,constraint:[10,16],context:7,control:[9,10],convent:16,cookbook:13,creat:[0,11,13,19],custom:[0,17],databas:[10,13],datatyp:10,date:13,ddl:3,deal:10,depend:[11,14],detail:4,detect:9,diff:0,direct:[0,5],directori:[8,11],document:15,doe:9,don:13,downgrad:19,drop:[10,13],edit:19,element:13,emit:13,empti:13,engin:0,environ:[7,13,17,19],explicit:11,featur:12,file:[13,19],fine:0,first:19,foreign:10,from:13,front:14,gener:[0,9,13,17],get:[0,17,19],grain:0,head:11,histori:19,homepag:14,identifi:19,implicit:10,includ:10,index:13,indic:15,inform:19,ini:[13,19],initi:13,instal:14,integr:16,intern:3,kei:10,label:11,matter:14,mechan:11,merg:11,metadata:9,migrat:[7,9,10,13,17,19],misc:12,mode:[10,17],model:0,modul:9,more:11,multipl:[0,9,11,13],mysql:3,name:[10,16],next:19,object:[0,5,7,13],offlin:[10,17],onc:11,one:13,oper:[0,5,13,16,18],other:10,our:[0,19],overview:6,partial:19,particular:13,plugin:5,postgresql:3,prefix:9,print:13,project:14,python:13,rang:19,refer:[11,18],referenc:10,reflect:10,regist:0,rel:19,render:[0,9],replac:13,revis:[0,8,11,13,19],rewrit:0,run:[0,10,11,13,19],run_migr:0,runtim:7,scratch:13,script:[8,17,19],second:19,seri:13,set:11,share:13,specif:11,sql:[3,17],sqlite:[3,10],start:17,statement:13,step:19,structur:13,support:17,syntax:11,tabl:[10,13,15],target:13,than:10,themselv:9,track:0,tutori:19,type:[9,10],uniqu:10,unnam:10,version:[11,17],view:[13,19],welcom:15,well:13,what:9,when:13,work:[10,11],write:17}})
\ No newline at end of file
+Search.setIndex({docnames:["api/autogenerate","api/commands","api/config","api/ddl","api/index","api/operations","api/overview","api/runtime","api/script","autogenerate","batch","branches","changelog","cookbook","front","index","naming","offline","ops","tutorial"],envversion:{"sphinx.domains.c":1,"sphinx.domains.changeset":1,"sphinx.domains.cpp":1,"sphinx.domains.javascript":1,"sphinx.domains.math":2,"sphinx.domains.python":1,"sphinx.domains.rst":1,"sphinx.domains.std":1,"sphinx.ext.intersphinx":1,sphinx:56},filenames:["api/autogenerate.rst","api/commands.rst","api/config.rst","api/ddl.rst","api/index.rst","api/operations.rst","api/overview.rst","api/runtime.rst","api/script.rst","autogenerate.rst","batch.rst","branches.rst","changelog.rst","cookbook.rst","front.rst","index.rst","naming.rst","offline.rst","ops.rst","tutorial.rst"],objects:{"alembic.autogenerate":{compare_metadata:[0,3,1,""],produce_migrations:[0,3,1,""],render_python_code:[0,3,1,""]},"alembic.autogenerate.api":{AutogenContext:[0,0,1,""]},"alembic.autogenerate.api.AutogenContext":{connection:[0,1,1,""],dialect:[0,1,1,""],imports:[0,1,1,""],metadata:[0,1,1,""],migration_context:[0,1,1,""],run_filters:[0,2,1,""],sorted_tables:[0,1,1,""],table_key_to_table:[0,1,1,""]},"alembic.autogenerate.compare_metadata.params":{context:[0,4,1,""],metadata:[0,4,1,""]},"alembic.autogenerate.rewriter":{Rewriter:[0,0,1,""]},"alembic.autogenerate.rewriter.Rewriter":{chain:[0,2,1,""],rewrites:[0,2,1,""]},"alembic.autogenerate.rewriter.Rewriter.chain.params":{other:[0,4,1,""]},"alembic.command":{branches:[1,3,1,""],current:[1,3,1,""],downgrade:[1,3,1,""],edit:[1,3,1,""],heads:[1,3,1,""],history:[1,3,1,""],init:[1,3,1,""],list_templates:[1,3,1,""],merge:[1,3,1,""],revision:[1,3,1,""],show:[1,3,1,""],stamp:[1,3,1,""],upgrade:[1,3,1,""]},"alembic.command.branches.params":{config:[1,4,1,""],verbose:[1,4,1,""]},"alembic.command.current.params":{config:[1,4,1,""],head_only:[1,4,1,""],verbose:[1,4,1,""]},"alembic.command.downgrade.params":{config:[1,4,1,""],revision:[1,4,1,""],sql:[1,4,1,""],tag:[1,4,1,""]},"alembic.command.edit.params":{config:[1,4,1,""],rev:[1,4,1,""]},"alembic.command.heads.params":{config:[1,4,1,""],resolve_dependencies:[1,4,1,""],verbose:[1,4,1,""]},"alembic.command.history.params":{config:[1,4,1,""],indicate_current:[1,4,1,""],rev_range:[1,4,1,""],verbose:[1,4,1,""]},"alembic.command.init.params":{config:[1,4,1,""],directory:[1,4,1,""],template:[1,4,1,""]},"alembic.command.list_templates.params":{config:[1,4,1,""]},"alembic.command.merge.params":{branch_label:[1,4,1,""],config:[1,4,1,""],message:[1,4,1,""],rev_id:[1,4,1,""]},"alembic.command.revision.params":{autogenerate:[1,4,1,""],branch_label:[1,4,1,""],config:[1,4,1,""],depends_on:[1,4,1,""],head:[1,4,1,""],message:[1,4,1,""],process_revision_directives:[1,4,1,""],rev_id:[1,4,1,""],splice:[1,4,1,""],sql:[1,4,1,""],version_path:[1,4,1,""]},"alembic.command.show.params":{config:[1,4,1,""],revision:[1,4,1,""]},"alembic.command.stamp.params":{config:[1,4,1,""],revision:[1,4,1,""],sql:[1,4,1,""],tag:[1,4,1,""]},"alembic.command.upgrade.params":{config:[1,4,1,""],revision:[1,4,1,""],sql:[1,4,1,""],tag:[1,4,1,""]},"alembic.config":{Config:[2,0,1,""],main:[2,3,1,""]},"alembic.config.Config":{attributes:[2,1,1,""],cmd_opts:[2,1,1,""],config_file_name:[2,1,1,""],config_ini_section:[2,1,1,""],file_config:[2,1,1,""],get_main_option:[2,2,1,""],get_section:[2,2,1,""],get_section_option:[2,2,1,""],get_template_directory:[2,2,1,""],print_stdout:[2,2,1,""],set_main_option:[2,2,1,""],set_section_option:[2,2,1,""]},"alembic.config.Config.params":{attributes:[2,4,1,""],config_args:[2,4,1,""],file_:[2,4,1,""],ini_section:[2,4,1,""],output_buffer:[2,4,1,""],stdout:[2,4,1,""]},"alembic.config.Config.set_main_option.params":{name:[2,4,1,""],value:[2,4,1,""]},"alembic.config.Config.set_section_option.params":{name:[2,4,1,""],section:[2,4,1,""],value:[2,4,1,""]},"alembic.ddl":{base:[3,5,0,"-"],impl:[3,5,0,"-"],mssql:[3,5,0,"-"],mysql:[3,5,0,"-"],postgresql:[3,5,0,"-"],sqlite:[3,5,0,"-"]},"alembic.ddl.base":{AddColumn:[3,0,1,""],AlterColumn:[3,0,1,""],AlterTable:[3,0,1,""],ColumnComment:[3,0,1,""],ColumnDefault:[3,0,1,""],ColumnName:[3,0,1,""],ColumnNullable:[3,0,1,""],ColumnType:[3,0,1,""],DropColumn:[3,0,1,""],RenameTable:[3,0,1,""],add_column:[3,3,1,""],alter_column:[3,3,1,""],alter_table:[3,3,1,""],drop_column:[3,3,1,""],format_column_name:[3,3,1,""],format_server_default:[3,3,1,""],format_table_name:[3,3,1,""],format_type:[3,3,1,""],quote_dotted:[3,3,1,""],visit_add_column:[3,3,1,""],visit_column_default:[3,3,1,""],visit_column_name:[3,3,1,""],visit_column_nullable:[3,3,1,""],visit_column_type:[3,3,1,""],visit_drop_column:[3,3,1,""],visit_rename_table:[3,3,1,""]},"alembic.ddl.impl":{DefaultImpl:[3,0,1,""],ImplMeta:[3,0,1,""]},"alembic.ddl.impl.DefaultImpl":{add_column:[3,2,1,""],add_constraint:[3,2,1,""],alter_column:[3,2,1,""],autogen_column_reflect:[3,2,1,""],bind:[3,1,1,""],bulk_insert:[3,2,1,""],command_terminator:[3,1,1,""],compare_server_default:[3,2,1,""],compare_type:[3,2,1,""],correct_for_autogen_constraints:[3,2,1,""],correct_for_autogen_foreignkeys:[3,2,1,""],create_column_comment:[3,2,1,""],create_index:[3,2,1,""],create_table:[3,2,1,""],create_table_comment:[3,2,1,""],drop_column:[3,2,1,""],drop_constraint:[3,2,1,""],drop_index:[3,2,1,""],drop_table:[3,2,1,""],drop_table_comment:[3,2,1,""],emit_begin:[3,2,1,""],emit_commit:[3,2,1,""],execute:[3,2,1,""],get_by_dialect:[3,6,1,""],prep_table_for_batch:[3,2,1,""],rename_table:[3,2,1,""],render_type:[3,2,1,""],requires_recreate_in_batch:[3,2,1,""],start_migrations:[3,2,1,""],static_output:[3,2,1,""],transactional_ddl:[3,1,1,""]},"alembic.ddl.mssql":{MSSQLImpl:[3,0,1,""],mssql_add_column:[3,3,1,""],visit_add_column:[3,3,1,""],visit_column_default:[3,3,1,""],visit_column_nullable:[3,3,1,""],visit_column_type:[3,3,1,""],visit_rename_column:[3,3,1,""],visit_rename_table:[3,3,1,""]},"alembic.ddl.mssql.MSSQLImpl":{alter_column:[3,2,1,""],batch_separator:[3,1,1,""],bulk_insert:[3,2,1,""],create_index:[3,2,1,""],drop_column:[3,2,1,""],emit_begin:[3,2,1,""],emit_commit:[3,2,1,""],transactional_ddl:[3,1,1,""]},"alembic.ddl.mysql":{MySQLAlterDefault:[3,0,1,""],MySQLChangeColumn:[3,0,1,""],MySQLImpl:[3,0,1,""],MySQLModifyColumn:[3,0,1,""]},"alembic.ddl.mysql.MySQLImpl":{alter_column:[3,2,1,""],compare_server_default:[3,2,1,""],correct_for_autogen_constraints:[3,2,1,""],correct_for_autogen_foreignkeys:[3,2,1,""],drop_constraint:[3,2,1,""],transactional_ddl:[3,1,1,""]},"alembic.ddl.postgresql":{CreateExcludeConstraintOp:[3,0,1,""],PostgresqlColumnType:[3,0,1,""],PostgresqlImpl:[3,0,1,""],visit_column_comment:[3,3,1,""],visit_column_type:[3,3,1,""],visit_rename_table:[3,3,1,""]},"alembic.ddl.postgresql.CreateExcludeConstraintOp":{batch_create_exclude_constraint:[3,6,1,""],constraint_type:[3,1,1,""],create_exclude_constraint:[3,6,1,""],from_constraint:[3,6,1,""],to_constraint:[3,2,1,""]},"alembic.ddl.postgresql.PostgresqlImpl":{alter_column:[3,2,1,""],autogen_column_reflect:[3,2,1,""],compare_server_default:[3,2,1,""],correct_for_autogen_constraints:[3,2,1,""],prep_table_for_batch:[3,2,1,""],render_type:[3,2,1,""],transactional_ddl:[3,1,1,""]},"alembic.ddl.sqlite":{SQLiteImpl:[3,0,1,""]},"alembic.ddl.sqlite.SQLiteImpl":{add_constraint:[3,2,1,""],compare_server_default:[3,2,1,""],correct_for_autogen_constraints:[3,2,1,""],drop_constraint:[3,2,1,""],requires_recreate_in_batch:[3,2,1,""],transactional_ddl:[3,1,1,""]},"alembic.operations":{BatchOperations:[18,0,1,""],Operations:[18,0,1,""],ops:[5,5,0,"-"]},"alembic.operations.BatchOperations":{add_column:[18,2,1,""],alter_column:[18,2,1,""],create_check_constraint:[18,2,1,""],create_exclude_constraint:[18,2,1,""],create_foreign_key:[18,2,1,""],create_index:[18,2,1,""],create_primary_key:[18,2,1,""],create_unique_constraint:[18,2,1,""],drop_column:[18,2,1,""],drop_constraint:[18,2,1,""],drop_index:[18,2,1,""]},"alembic.operations.BatchOperations.params":{migration_context:[18,4,1,""]},"alembic.operations.Operations":{add_column:[18,2,1,""],alter_column:[18,2,1,""],batch_alter_table:[18,2,1,""],bulk_insert:[18,2,1,""],create_check_constraint:[18,2,1,""],create_exclude_constraint:[18,2,1,""],create_foreign_key:[18,2,1,""],create_index:[18,2,1,""],create_primary_key:[18,2,1,""],create_table:[18,2,1,""],create_table_comment:[18,2,1,""],create_unique_constraint:[18,2,1,""],drop_column:[18,2,1,""],drop_constraint:[18,2,1,""],drop_index:[18,2,1,""],drop_table:[18,2,1,""],drop_table_comment:[18,2,1,""],execute:[18,2,1,""],f:[18,2,1,""],get_bind:[18,2,1,""],get_context:[18,2,1,""],implementation_for:[18,6,1,""],inline_literal:[18,2,1,""],invoke:[18,2,1,""],register_operation:[18,6,1,""],rename_table:[18,2,1,""]},"alembic.operations.Operations.add_column.params":{column:[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.alter_column.params":{autoincrement:[18,4,1,""],column_name:[18,4,1,""],comment:[18,4,1,""],existing_autoincrement:[18,4,1,""],existing_comment:[18,4,1,""],existing_nullable:[18,4,1,""],existing_server_default:[18,4,1,""],existing_type:[18,4,1,""],new_column_name:[18,4,1,""],nullable:[18,4,1,""],postgresql_using:[18,4,1,""],schema:[18,4,1,""],server_default:[18,4,1,""],table_name:[18,4,1,""],type_:[18,4,1,""]},"alembic.operations.Operations.batch_alter_table.params":{copy_from:[18,4,1,""],naming_convention:[18,4,1,""],recreate:[18,4,1,""],reflect_args:[18,4,1,""],reflect_kwargs:[18,4,1,""],schema:[18,4,1,""],table_args:[18,4,1,""],table_kwargs:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.bulk_insert.params":{multiinsert:[18,4,1,""],rows:[18,4,1,""],table:[18,4,1,""]},"alembic.operations.Operations.create_check_constraint.params":{condition:[18,4,1,""],deferrable:[18,4,1,""],initially:[18,4,1,""],name:[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.create_exclude_constraint.params":{deferrable:[18,4,1,""],elements:[18,4,1,""],initially:[18,4,1,""],name:[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""],where:[18,4,1,""]},"alembic.operations.Operations.create_foreign_key.params":{deferrable:[18,4,1,""],local_cols:[18,4,1,""],name:[18,4,1,""],ondelete:[18,4,1,""],onupdate:[18,4,1,""],referent_schema:[18,4,1,""],referent_table:[18,4,1,""],remote_cols:[18,4,1,""],source_schema:[18,4,1,""],source_table:[18,4,1,""]},"alembic.operations.Operations.create_index.params":{"**kw":[18,4,1,""],columns:[18,4,1,""],index_name:[18,4,1,""],quote:[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""],unique:[18,4,1,""]},"alembic.operations.Operations.create_primary_key.params":{columns:[18,4,1,""],name:[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.create_table.params":{"**kw":[18,4,1,""],"*columns":[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.create_table_comment.params":{comment:[18,4,1,""],existing_comment:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.create_unique_constraint.params":{columns:[18,4,1,""],deferrable:[18,4,1,""],initially:[18,4,1,""],name:[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.drop_column.params":{column_name:[18,4,1,""],mssql_drop_check:[18,4,1,""],mssql_drop_default:[18,4,1,""],mssql_drop_foreign_key:[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.drop_constraint.params":{constraint_name:[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""],type_:[18,4,1,""]},"alembic.operations.Operations.drop_index.params":{"**kw":[18,4,1,""],index_name:[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.drop_table.params":{"**kw":[18,4,1,""],schema:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.drop_table_comment.params":{existing_comment:[18,4,1,""],table_name:[18,4,1,""]},"alembic.operations.Operations.execute.params":{execution_options:[18,4,1,""],sql:[18,4,1,""]},"alembic.operations.Operations.inline_literal.params":{type_:[18,4,1,""],value:[18,4,1,""]},"alembic.operations.Operations.params":{migration_context:[18,4,1,""]},"alembic.operations.Operations.rename_table.params":{new_table_name:[18,4,1,""],old_table_name:[18,4,1,""],schema:[18,4,1,""]},"alembic.operations.ops":{AddColumnOp:[5,0,1,""],AddConstraintOp:[5,0,1,""],AlterColumnOp:[5,0,1,""],AlterTableOp:[5,0,1,""],BulkInsertOp:[5,0,1,""],CreateCheckConstraintOp:[5,0,1,""],CreateForeignKeyOp:[5,0,1,""],CreateIndexOp:[5,0,1,""],CreatePrimaryKeyOp:[5,0,1,""],CreateTableCommentOp:[5,0,1,""],CreateTableOp:[5,0,1,""],CreateUniqueConstraintOp:[5,0,1,""],DowngradeOps:[5,0,1,""],DropColumnOp:[5,0,1,""],DropConstraintOp:[5,0,1,""],DropIndexOp:[5,0,1,""],DropTableCommentOp:[5,0,1,""],DropTableOp:[5,0,1,""],ExecuteSQLOp:[5,0,1,""],MigrateOperation:[5,0,1,""],MigrationScript:[5,0,1,""],ModifyTableOps:[5,0,1,""],OpContainer:[5,0,1,""],RenameTableOp:[5,0,1,""],UpgradeOps:[5,0,1,""]},"alembic.operations.ops.AddColumnOp":{add_column:[5,6,1,""],batch_add_column:[5,6,1,""]},"alembic.operations.ops.AlterColumnOp":{alter_column:[5,6,1,""],batch_alter_column:[5,6,1,""]},"alembic.operations.ops.BulkInsertOp":{bulk_insert:[5,6,1,""]},"alembic.operations.ops.CreateCheckConstraintOp":{batch_create_check_constraint:[5,6,1,""],create_check_constraint:[5,6,1,""]},"alembic.operations.ops.CreateForeignKeyOp":{batch_create_foreign_key:[5,6,1,""],create_foreign_key:[5,6,1,""]},"alembic.operations.ops.CreateIndexOp":{batch_create_index:[5,6,1,""],create_index:[5,6,1,""]},"alembic.operations.ops.CreatePrimaryKeyOp":{batch_create_primary_key:[5,6,1,""],create_primary_key:[5,6,1,""]},"alembic.operations.ops.CreateTableCommentOp":{create_table_comment:[5,6,1,""],reverse:[5,2,1,""]},"alembic.operations.ops.CreateTableOp":{create_table:[5,6,1,""]},"alembic.operations.ops.CreateUniqueConstraintOp":{batch_create_unique_constraint:[5,6,1,""],create_unique_constraint:[5,6,1,""]},"alembic.operations.ops.DropColumnOp":{batch_drop_column:[5,6,1,""],drop_column:[5,6,1,""]},"alembic.operations.ops.DropConstraintOp":{batch_drop_constraint:[5,6,1,""],drop_constraint:[5,6,1,""]},"alembic.operations.ops.DropIndexOp":{batch_drop_index:[5,6,1,""],drop_index:[5,6,1,""]},"alembic.operations.ops.DropTableCommentOp":{drop_table_comment:[5,6,1,""],reverse:[5,2,1,""]},"alembic.operations.ops.DropTableOp":{drop_table:[5,6,1,""]},"alembic.operations.ops.ExecuteSQLOp":{execute:[5,6,1,""]},"alembic.operations.ops.MigrateOperation":{info:[5,1,1,""]},"alembic.operations.ops.MigrationScript":{downgrade_ops:[5,1,1,""],downgrade_ops_list:[5,1,1,""],upgrade_ops:[5,1,1,""],upgrade_ops_list:[5,1,1,""]},"alembic.operations.ops.RenameTableOp":{rename_table:[5,6,1,""]},"alembic.runtime":{environment:[7,5,0,"-"],migration:[7,5,0,"-"]},"alembic.runtime.environment":{EnvironmentContext:[7,0,1,""]},"alembic.runtime.environment.EnvironmentContext":{begin_transaction:[7,2,1,""],config:[7,1,1,""],configure:[7,2,1,""],execute:[7,2,1,""],get_bind:[7,2,1,""],get_context:[7,2,1,""],get_head_revision:[7,2,1,""],get_head_revisions:[7,2,1,""],get_revision_argument:[7,2,1,""],get_starting_revision_argument:[7,2,1,""],get_tag_argument:[7,2,1,""],get_x_argument:[7,2,1,""],is_offline_mode:[7,2,1,""],is_transactional_ddl:[7,2,1,""],run_migrations:[7,2,1,""],script:[7,1,1,""],static_output:[7,2,1,""]},"alembic.runtime.environment.EnvironmentContext.configure.params":{alembic_module_prefix:[7,4,1,""],compare_server_default:[7,4,1,""],compare_type:[7,4,1,""],connection:[7,4,1,""],dialect_name:[7,4,1,""],downgrade_token:[7,4,1,""],include_object:[7,4,1,""],include_schemas:[7,4,1,""],include_symbol:[7,4,1,""],literal_binds:[7,4,1,""],mssql_batch_separator:[7,4,1,""],on_version_apply:[7,4,1,""],oracle_batch_separator:[7,4,1,""],output_buffer:[7,4,1,""],output_encoding:[7,4,1,""],process_revision_directives:[7,4,1,""],render_as_batch:[7,4,1,""],render_item:[7,4,1,""],sqlalchemy_module_prefix:[7,4,1,""],starting_rev:[7,4,1,""],tag:[7,4,1,""],target_metadata:[7,4,1,""],template_args:[7,4,1,""],transaction_per_migration:[7,4,1,""],transactional_ddl:[7,4,1,""],upgrade_token:[7,4,1,""],url:[7,4,1,""],user_module_prefix:[7,4,1,""],version_table:[7,4,1,""],version_table_pk:[7,4,1,""],version_table_schema:[7,4,1,""]},"alembic.runtime.environment.EnvironmentContext.params":{"**kw":[7,4,1,""],config:[7,4,1,""],script:[7,4,1,""]},"alembic.runtime.migration":{MigrationContext:[7,0,1,""],MigrationInfo:[7,0,1,""]},"alembic.runtime.migration.MigrationContext":{bind:[7,1,1,""],config:[7,1,1,""],configure:[7,6,1,""],execute:[7,2,1,""],get_current_heads:[7,2,1,""],get_current_revision:[7,2,1,""],run_migrations:[7,2,1,""],stamp:[7,2,1,""]},"alembic.runtime.migration.MigrationContext.configure.params":{connection:[7,4,1,""],dialect_name:[7,4,1,""],opts:[7,4,1,""],url:[7,4,1,""]},"alembic.runtime.migration.MigrationContext.run_migrations.params":{"**kw":[7,4,1,""]},"alembic.runtime.migration.MigrationInfo":{destination_revision_ids:[7,1,1,""],destination_revisions:[7,1,1,""],down_revision_ids:[7,1,1,""],down_revisions:[7,1,1,""],is_migration:[7,1,1,""],is_stamp:[7,1,1,""],is_upgrade:[7,1,1,""],revision_map:[7,1,1,""],source_revision_ids:[7,1,1,""],source_revisions:[7,1,1,""],up_revision:[7,1,1,""],up_revision_id:[7,1,1,""],up_revision_ids:[7,1,1,""],up_revisions:[7,1,1,""]},"alembic.script":{Script:[8,0,1,""],ScriptDirectory:[8,0,1,""],revision:[8,5,0,"-"]},"alembic.script.Script":{doc:[8,1,1,""],longdoc:[8,1,1,""],module:[8,1,1,""],path:[8,1,1,""]},"alembic.script.ScriptDirectory":{as_revision_number:[8,2,1,""],from_config:[8,6,1,""],generate_revision:[8,2,1,""],get_base:[8,2,1,""],get_bases:[8,2,1,""],get_current_head:[8,2,1,""],get_heads:[8,2,1,""],get_revision:[8,2,1,""],get_revisions:[8,2,1,""],iterate_revisions:[8,2,1,""],run_env:[8,2,1,""],walk_revisions:[8,2,1,""]},"alembic.script.ScriptDirectory.generate_revision.params":{head:[8,4,1,""],message:[8,4,1,""],refresh:[8,4,1,""],revid:[8,4,1,""],splice:[8,4,1,""]},"alembic.script.ScriptDirectory.walk_revisions.params":{base:[8,4,1,""],head:[8,4,1,""]},"alembic.script.revision":{MultipleHeads:[8,7,1,""],RangeNotAncestorError:[8,7,1,""],ResolutionError:[8,7,1,""],Revision:[8,0,1,""],RevisionError:[8,7,1,""],RevisionMap:[8,0,1,""]},"alembic.script.revision.Revision":{branch_labels:[8,1,1,""],dependencies:[8,1,1,""],down_revision:[8,1,1,""],is_base:[8,1,1,""],is_branch_point:[8,1,1,""],is_head:[8,1,1,""],is_merge_point:[8,1,1,""],nextrev:[8,1,1,""],revision:[8,1,1,""]},"alembic.script.revision.RevisionMap":{add_revision:[8,2,1,""],bases:[8,1,1,""],get_current_head:[8,2,1,""],get_revision:[8,2,1,""],get_revisions:[8,2,1,""],heads:[8,1,1,""],iterate_revisions:[8,2,1,""]},"alembic.script.revision.RevisionMap.get_current_head.params":{branch_label:[8,4,1,""]},"alembic.script.revision.RevisionMap.params":{generator:[8,4,1,""]},alembic:{command:[1,5,0,"-"],config:[2,5,0,"-"],ddl:[3,5,0,"-"],operations:[18,5,0,"-"],script:[8,5,0,"-"]}},objnames:{"0":["py","class","Python class"],"1":["py","attribute","Python attribute"],"2":["py","method","Python method"],"3":["py","function","Python function"],"4":["py","parameter","Python parameter"],"5":["py","module","Python module"],"6":["py","classmethod","Python class method"],"7":["py","exception","Python exception"]},objtypes:{"0":"py:class","1":"py:attribute","2":"py:method","3":"py:function","4":"py:parameter","5":"py:module","6":"py:classmethod","7":"py:exception"},terms:{"109e":11,"109ec7d132bf":11,"109ec7d132bf_add_ip_number_t":11,"10g":16,"191a2d20b025":13,"1975ea83b712":[11,17,19],"1975ea83b712_add_account_t":[11,19],"1975ea83b712_create_accoun":19,"1975ea83b712_create_account_t":19,"199028bf9856":13,"27c":11,"27c6":11,"27c6a":11,"27c6a30d7c24":[9,11],"27c6a30d7c24_add_shopping_cart_t":11,"28af9800143":13,"28af9800143f":13,"290696571ad2":13,"29f8":11,"29f859a13ea":11,"2a95":11,"2a95102259b":11,"2a95102259be_add_ip_account_t":11,"2b1ae634e5cd_add_order_id":19,"2to3":12,"34e094ad6ef1":11,"34e094ad6ef1_more_account_chang":11,"3512b954651e_add_account":19,"3ab8b2dfb055":13,"3adcc9a56557_rename_username_field":19,"3ba2b522d10d":13,"3cac04ae8714":11,"3cac04ae8714_create_networking_branch":11,"3rd":12,"53fffde5ad5":11,"53fffde5ad5_merge_ae1_and_27c":11,"55af":11,"55af2cb":11,"55af2cb1c267":11,"55af2cb1c267_add_another_account_column":11,"\u0142ukasz":12,"abstract":12,"bo\u0142di":12,"boolean":[7,9,12,15,16,18],"break":[11,12,18],"byte":12,"case":[0,1,2,5,7,8,9,10,11,12,13,16,18,19],"catch":12,"char":9,"class":[0,1,2,3,4,5,6,7,8,9,12,13,17,18,19],"const":3,"default":[0,2,3,5,7,8,9,10,11,12,13,16,17,18,19],"enum":[9,12,15,18],"final":[7,10,12,13],"float":12,"function":[1,2,3,4,5,6,7,8,9,11,12,13,16,17,18,19],"import":[0,1,2,5,7,8,9,10,11,12,13,15,17,18,19],"int":13,"long":[9,10,11,12,13,19],"new":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,16,18,19],"null":[0,10,12,13,17,18],"public":[0,4,8,12,18],"return":[0,2,3,5,7,8,9,10,12,13,18],"short":12,"static":12,"switch":13,"true":[0,1,3,5,7,8,9,10,12,13,16,18,19],"try":[11,12,17],"while":[0,3,8,10,11,12,13,16,17,18,19],AND:16,Added:[7,9,12,13],Adding:12,But:16,CRs:12,DNS:11,For:[0,1,2,3,5,7,9,10,11,12,13,16,17,18,19],INTO:[10,11,13,17,18],NOT:[10,13,17,18],One:17,That:[7,11,13],The:[0,2,3,4,5,6,8,9,10,11,12,14,15,17,18],Then:13,There:[10,13,16,18],These:[0,3,5,7,8,9,11,12,19],Tos:13,USING:[12,18],Use:2,Used:18,Using:[0,13,19],Will:[11,13,17,19],With:[2,5,11,12,13,19],__doc__:12,__future__:12,__init__:[5,12,13],__module__:[7,9,12],__pycache__:12,__repr__:9,_alembic_batch_temp:[10,12],_exec:12,_filter_drop_index:13,_get_object_from_vers:13,_io:2,_orig_column:5,_orig_constraint:[3,5],_orig_index:5,_orig_t:5,_replac:8,abc:12,abil:[0,19],abl:[0,4,8,13,16],about:[0,7,11,12,14,16,19],abov:[0,5,7,9,10,11,12,13,14,16,18,19],abramowitz:12,absenc:17,absens:10,absolut:[12,19],accept:[1,7,9,10,12,13,17,18,19],access:[0,2,5,6,7,8,9,10,12,13,17],accessor:12,accommod:[0,10,12],accomod:[9,12],accompani:[12,18],accomplish:17,accord:[12,18],account:[9,11,12,17,18,19],account_id:18,account_t:18,accounts_t:18,accur:9,accuraci:7,achiev:[1,9,11],across:[0,7,10,11,12,13,18],act:[7,12,13,18],action:[12,13,18],activ:[7,13],actual:[0,2,5,6,7,8,9,10,11,12,13,17,18],acycl:11,adapt:12,add:[0,5,7,8,9,10,11,12,13,14,16,17,18,19],add_column:[0,3,5,9,10,12,13,16,18,19],add_column_idx:0,add_column_nul:0,add_constraint:3,add_customer_sp:13,add_index:12,add_revis:8,add_sequence_to_model:0,add_tabl:0,addcolumn:[0,3],addcolumnop:[0,5],addconstraint:18,addconstraintop:[3,5],added:[0,2,7,8,9,10,11,12,13,18,19],adding:[0,9,12,13,16,18,19],addit:[0,1,2,7,8,9,11,12,13,14,18,19],addition:[5,7,9,12,18],address:[10,18],adjust:[0,9,10,12,13],advanc:18,advantag:[11,13],advis:7,ae1027:[11,19],ae1027a6acf:[11,17,19],ae1027a6acf_add_a_column:[11,19],ae102:11,ae10:[11,12,19],ae1:[11,19],affect:[0,7,10,11,12,13,15],affin:12,after:[0,7,11,12,13],after_parent_attach:[9,16],afterward:[10,12],again:[0,9,10,11,12,13,16,19],against:[0,2,5,7,8,9,10,11,12,13,17,18,19],aggreg:0,agnost:12,ago:19,ahead:12,aim:0,albeit:19,albert:12,alemb:[0,1,2,3,4,5,6,7,8,9,10,11,12,14,16,17,18,19],alembic_cfg:[1,2,13],alembic_module_prefix:[0,7,12],alembic_revis:12,alembic_vers:[7,11,12,13,17,19],alexand:12,algorithm:[11,12],alia:11,all:[0,1,2,5,6,7,8,9,10,12,13,14,15,16,17,18,19],all_conn_sequ:0,all_constraint:16,allow:[0,2,3,5,7,8,9,10,11,12,13,17,18,19],almo:12,almost:[10,11,12],alon:[10,11,12],along:[0,1,5,7,10,11,12,13,18,19],alongsid:12,alpha:12,alphanumer:16,alreadi:[0,2,3,9,10,11,12,13,16,18],also:[0,2,5,6,7,8,9,10,11,12,13,16,17,18,19],alter:[0,1,3,5,6,7,9,10,11,12,13,16,17,18],alter_column:[3,5,7,10,12,18],alter_column_op:0,alter_t:3,altercolumn:3,altercolumnop:[0,5,12],altern:[0,7,9,10,11,12,18],altert:3,altertableop:5,altogeth:13,alwai:[0,5,9,10,11,12,13,17,18],among:[11,12],ancestor:[11,12],andrea:12,andrei:12,ani:[0,1,2,3,7,8,9,10,11,12,13,16,17,18,19],ann:12,anonym:[9,18],anoth:[0,2,6,10,11,12,19],anscestor:11,anticip:12,antti:12,antukh:12,anyth:[0,2,18,19],anywai:[12,19],anywher:[13,19],api:[0,1,2,3,5,6,7,12,13,15,18],appar:12,appear:12,appeas:12,append:[0,7,12],append_constraint:12,appli:[1,5,7,8,9,10,11,12,13,16,18,19],applic:[1,4,6,7,9,10,11,12,13,16,18,19],appopri:16,approach:[0,10,12,13,19],appropri:[0,6,7,8,9,11,12,18],apr:12,april:12,arbitrari:[1,2,5,12],architectur:10,area:[0,9,19],aren:[9,10,11,12,18],arg:[2,3,8,12,19],argnam:18,argpars:[7,12],argument:[0,1,2,5,7,8,9,10,11,12,13,18,19],argv:2,aris:[10,12],arithmet:12,aros:12,around:12,arrai:12,as_dictionari:[7,13],as_revision_numb:[8,12],as_sql:[3,7],asc:12,ascend:[7,19],ascii:12,ask:[11,12],aspect:[7,12,13,18],assert:12,assert_relative_length:8,assign:[10,11,16],assist:[7,8,12,18],associ:[0,11,12,14,16,18],assum:[0,11,12,13,16,17,19],astext_typ:12,astimezon:19,atsushi:12,attach:[0,3,9,13],attempt:[10,11,12,18],attribut:[0,1,2,5,7,9,11,12,13],attributeerror:12,aug:12,august:12,author:12,auto:[0,7,10,12,13,15,18,19],auto_incr:[12,18],autodetect:12,autogen:[7,9,12],autogen_column_reflect:3,autogen_context:[0,3,7,9],autogencontext:[0,9,12],autogener:[1,3,4,5,6,7,12,15,18,19],autogenerer:9,autogenrendertest:12,autoincr:[3,12,13,18],autoload:[10,13],autoload_with:13,autom:[10,12,13,16,18],automat:[9,10,11,12,18,19],avail:[0,1,2,5,7,9,12,13,14,18,19],availbl:12,avoid:[0,12,18],awai:0,awkward:12,axel:12,back:[0,7,8,11,12,13,19],backend:[0,3,6,7,9,10,12,16,18],background:9,backslash:18,backward:[7,12],bad:9,badli:12,bagnoli:12,bar:[0,2,10,18,19],bartosz:12,base:[0,2,3,5,6,7,8,9,12,13,15,16,17,18,19],basemost:11,basi:[5,8,12],basic:[0,2,8,9,11,12,13,17,18,19],bat:[0,19],batch:[3,5,7,12,15,18],batch_add_column:5,batch_alter_column:5,batch_alter_t:[7,10,12,18],batch_create_check_constraint:5,batch_create_exclude_constraint:3,batch_create_foreign_kei:5,batch_create_index:5,batch_create_primary_kei:5,batch_create_unique_constraint:5,batch_drop_column:5,batch_drop_constraint:5,batch_drop_index:5,batch_op:[3,10,12,18],batch_separ:3,batchoper:[3,5,10,12,18],batchoperationsimpl:3,bayer:14,beafc7d709f:0,becaus:[0,9,10,11,12],becom:[11,13],been:[6,7,11,12,16,18],befor:[2,3,7,10,11,12,13,18,19],began:11,begin:[1,2,3,7,10,12,13,17,18,19],begin_transact:[0,3,7,9,13],behav:10,behavior:[0,3,5,6,7,9,10,12,18],behind:[12,16],being:[0,1,2,4,7,8,9,10,11,12,13,16,18],belong:12,below:[0,5,10,12,13,17,18],benefit:7,besid:11,best:[11,16],beta:[10,11,12],better:[12,16],between:[0,7,9,10,11,12,13,19],beyond:16,bflag:10,big:12,bigint:12,biginteg:12,bigseri:12,bind:[0,3,7,18],binet:12,bit:[7,12],blank:[0,12,13,19],block:[10,12,18],blown:[7,12],blume:12,board:10,bog:12,boilerpl:0,bolt:7,bool:18,both:[7,11,12,13,16,17],bottom:17,bound:[7,12,18],box:6,brackin:12,branch:[0,1,7,8,12,15,19],branch_label:[1,5,8,11,13,19],branchnam:11,branchpoint:[7,8,11,12],brief:18,bring:11,broken:[12,17],brokenpipeerror:12,bruno:12,brycelohr:12,buffer:[2,7],bug:[3,15],bugtrack:12,build:[0,1,3,5,9,11,12,15,19],built:[0,1,4,6,9,12,13,15],bulk:[3,5,12,18],bulk_insert:[3,5,12,13,18],bulkinsertop:5,burclaf:12,bypass:[10,18],calcul:[7,12,19],call:[1,2,3,5,6,7,8,9,10,11,12,13,16,18,19],callabl:[1,7,8,9,12],callback:[7,12],can:[0,1,2,3,4,5,7,8,9,10,11,12,13,16,17,18,19],candid:[7,9,12],cannot:[7,9,10,11,12,18],capabl:[0,1,2,5,6,7,12,13,17,19],care:0,carefulli:[11,19],carlo:12,cart:11,cascad:[13,18],cast:12,catalog:16,catalogu:13,categori:10,caus:[12,13],caveat:[7,10,18],center:9,certain:[0,7,13],certainli:16,cfg:13,chain:0,challeng:[9,10,11,17],chanc:[0,7],chang:[0,5,7,8,9,11,13,14,15,18,19],changelog:15,changeset:1,charact:[8,12,18,19],charl:12,charset:13,check:[5,7,9,11,12,13,15,16,18,19],check_constraint:18,checkconstraint:[10,12,16,18],choic:0,choos:11,chri:12,christian:12,chronolog:1,circumst:[12,18],ck1:10,ck_:16,ck_bool_:18,ck_bool_t_x:18,ck_sometable_q_bool:16,ck_user_name_len:18,classmethod:[3,5,7,8,13,18],classnam:3,claus:[12,18],clean:[11,12,19],clear:[11,12,13],clearer:12,client:17,close:[11,12,13],cls:[5,13],cmd_line_url:7,cmd_opt:[2,7,12,13],cname:0,code:[0,5,6,9,11,12,15,16,19],coerc:18,coerce:18,col1:9,col2:9,col:[7,13,18],collat:0,collect:[0,6,7,8,12,13,15,18],colon:[12,18,19],colon_valu:18,column:[0,3,5,7,9,10,11,12,13,16,17,18,19],column_0_label:16,column_0_nam:[10,16],column_info:[3,10],column_nam:[3,5,18],column_reflect:[3,9,10],columncom:3,columndefault:3,columnnam:3,columnnul:3,columntyp:3,com:[12,14],combin:[0,9,11,12,18],come:[8,9,12],command:[0,2,4,5,6,7,8,9,10,11,12,14,15,17,18,19],command_termin:3,commanderror:[7,12],commandlin:[12,13,19],comment:[3,5,7,9,12,18,19],commit:[3,7,12,13,17],common:[7,11,12,13],commonli:[0,10,12],commun:[5,6,15],compar:[0,7,12,15],compare_against_backend:[9,12],compare_column_level:0,compare_metadata:[0,12],compare_schema_level:0,compare_sequ:0,compare_server_default:[3,7,9,12],compare_table_level:0,compare_to:[0,7,13],compare_typ:[3,7,9],comparison:[6,7,9,12],compat:[2,7,9,10,12,18],compatib:12,compil:[3,5,7,12],complain:[12,13],complement:12,complet:[0,7,10,11,12,13,16],complex:12,complic:16,compon:[12,19],compos:19,composit:12,comprehens:[5,9],concaten:0,concept:[11,12],concern:10,condit:[5,12,15,18],config:[1,2,6,7,8,9,12,13,17,19],config_arg:[2,12],config_file_nam:[2,17],config_ini_sect:[2,7,9,13],configpars:[2,19],configur:[0,1,4,6,7,9,10,12,13,15,16,17,18,19],conflict:[10,12],confus:[11,12],conjunct:[6,9,12,18],conn:[7,13,18],conn_col:0,conn_fk:3,conn_index:3,conn_tabl:0,conn_typ:9,conn_uniqu:3,conn_unique_constraint:3,connam:16,connect:[0,1,2,3,6,7,9,10,12,15,16,17,18,19],conrelid:16,consid:[0,7,8,10,11,12,13,18],consider:[12,13],consist:[0,10,12,18],consol:[2,19],constraint:[0,3,5,7,9,12,13,15,18],constraint_nam:[3,5,10,12,16,18],constraint_typ:[3,16],construct:[0,1,2,3,5,7,8,9,12,13,18],constructor:[2,9],consult:[0,7,9],consum:[1,12,13,19],consumpt:7,contain:[0,5,6,7,8,9,11,12,13,18,19],content:[0,7],context:[0,2,3,4,9,10,11,12,13,15,16,17,18,19],context_opt:3,contextu:[7,12],continu:[9,11,12,13,19],control:[7,12,15,18,19],contyp:16,convei:6,conveni:[0,9,11,13,16],convent:[10,12,15,18],convert:[0,7,8,12,16,18],cookbook:[12,15],coomber:12,cooper:12,copi:[2,3,10,12,13,18],copy_from:[10,12,18],core:18,correct:[0,9,10,12,19],correct_for_autogen_constraint:3,correct_for_autogen_foreignkei:3,correctli:12,correspond:[0,5,7,10,12,13,18],could:[0,9,11,12,13,19],count:12,cours:[0,7,9,11,18],courtesi:12,cover:[11,12],crazi:11,creat:[1,2,3,4,5,6,7,8,9,10,12,15,16,17,18],create_al:[7,13],create_check_constraint:[5,12,18],create_column_com:3,create_constraint:10,create_d:[13,18],create_engin:[0,7,12,13],create_exclude_constraint:[3,12,18],create_foreign_kei:[0,5,12,18],create_index:[3,5,12,13,18],create_new:13,create_primary_kei:[5,12,18],create_sequ:[0,5],create_sp:13,create_t:[0,3,5,7,9,12,13,18,19],create_table_com:[3,5,12,18],create_unique_constraint:[5,12,16,18],create_view:13,createcheckconstraintop:5,createexcludeconstraintop:3,createforeignkeyop:[0,5],createindexop:[0,5,13],createprimarykeyop:5,createsequenceop:[0,5],createspop:13,createtablecommentop:5,createtableop:[0,5,13],createuniqueconstraintop:5,createviewop:13,creation:[5,12,13,19],critic:[9,12,17],cross:[11,12],crud:18,ctx:[7,18],cumbersom:9,current:[0,1,3,5,7,8,9,10,11,12,17,18,19],current_rev:7,current_timestamp:12,current_vers:17,cursor:18,custom:[1,3,4,5,7,9,12,13,15,18,19],customari:7,customer_view:13,customiz:[0,19],cycl:12,d747:11,d747a8a8879:11,d747a8a8879_add_a_shopping_cart_column:11,d747a:11,dai:[12,19],damien:12,danjou:12,dash:12,data:[0,9,10,12,13,18],data_downgrad:13,data_upgrad:13,databas:[0,1,3,5,6,7,8,9,11,12,15,16,17,18,19],datamemb:[9,18],datatyp:[0,7,9,12,15,18],date:[7,9,11,12,15,18,19],datefmt:19,datetim:[9,12,18,19],dateutil:[12,19],david:12,db1:17,db2:[13,17],db_1:17,db_2:17,dba:[12,17],dbapi:[12,18],dbname:[7,19],ddl:[0,4,5,6,7,10,11,12,13,15,16,17,18,19],ddlelement:3,ddlevent:9,deal:[0,5,11,12,13,15,18],debug:0,dec:12,decemb:12,decim:[12,19],decis:12,declar:9,declarative_bas:16,decod:12,decor:[0,5,12],dedic:12,dedup:12,dedupl:12,deep:12,deepli:12,def:[0,5,7,9,10,11,12,13,16,17,19],default_constraint:18,default_schema_nam:0,defaultclaus:18,defaultimpl:[3,6,7],defens:12,defer:12,deferr:[5,12,18],defin:[0,5,7,8,9,12,13,16,18],definit:[9,10,12,13,18],degre:[0,12,18],dein:12,delet:[11,12,13,18],deliv:[0,5,12],delta:[11,19],demarc:[6,7],demonstr:13,deni:12,denot:[1,7,16],depend:[1,7,8,9,12,15],depends_on:[1,5,8,11,12,13],deprec:[1,7,8,12],derek:12,deriv:[7,12,18,19],desc:12,descend:[5,7,11],describ:[1,5,7,10,11,12,13,17,18,19],descript:[9,12,17,18,19],design:[17,18,19],desir:[9,10,11,12,19],destin:[0,7,18],destination_rev:7,destination_revis:7,destination_revision_id:7,detail:[0,1,7,9,10,12,15,16,18],detect:[12,13,15,19],determin:[0,7,8,9,12,13,17,19],determinist:12,dev:12,develop:[0,1,2,5,6,11,14,19],devis:13,dhillon:12,dialect:[0,2,3,7,9,10,12,18],dialect_kw:[5,18],dialect_nam:[7,17],dialectnam:18,diamond:11,dict:[10,13],dict_:3,dictionari:[0,1,2,5,7,12,13,16,18],did:[9,11,12],didn:[11,12],diff:[4,12,15],differ:[0,2,3,5,7,9,10,11,12,13,17,19],differenti:12,difficult:12,digit:12,dimitri:12,dir:8,direct:[1,2,3,4,6,7,9,10,11,12,13,15,16,17,18,19],directli:[0,1,2,5,7,9,10,11,12,13,18,19],directori:[1,2,4,7,12,13,15,19],dirnam:17,disabl:[5,7,10,12],disadvantag:16,disambigu:18,discourag:18,discrep:11,discuss:[0,1,2,4,5,11,14],dispar:12,dispatch_for:0,displai:[1,11,19],display_width:13,distinct:[0,11,12,18],distinguish:12,distribut:[12,14],diverg:11,doc:[8,12],docstr:[8,12],document:[0,1,2,5,7,9,12,14,18,19],doe:[0,3,5,6,7,10,11,12,15,16,19],doesn:[2,7,9,10,11,12,13,16],doing:[7,12,16],domk:12,don:[0,1,11,12,15,18,19],done:[0,7,9,10,11,12,19],dot:[3,12,13],doubl:[0,12],down:[1,7,8,9,11,12,13,19],down_revis:[0,7,8,9,11,13,19],down_revision_id:7,downgrad:[0,1,5,6,7,9,11,12,13,15,17,18],downgrade_op:[0,5,7,12,13],downgrade_ops_list:[0,5],downgrade_token:[0,5,7,12],downgradeop:[0,5,7,12],downsid:12,downward:7,draw:19,driven:12,driver:[12,19],drop:[3,5,9,12,14,15,16,18],drop_column:[0,3,5,10,12,13,18,19],drop_constraint:[0,3,5,10,12,16,18],drop_index:[3,5,12,13,18],drop_old:13,drop_sequ:[0,5],drop_sp:13,drop_tabl:[0,3,5,9,12,13,18,19],drop_table_com:[3,5,12,18],drop_view:13,dropcolumn:3,dropcolumnop:[0,5],dropconstraintop:[0,5],dropindexop:[5,13],dropsequenceop:[0,5],dropspop:13,droptablecommentop:5,droptableop:[0,5,13],dropviewop:13,due:[8,12],dummi:12,dump:[1,12,17,19],duplic:[0,12],dure:[3,6,7,9,12,13,18,19],dynam:[5,12,18],each:[0,6,7,8,9,11,12,13,16,17,18,19],earli:12,earlier:11,earliest:13,easi:[0,13,16,17],easier:[0,19],easiest:3,easili:[12,13],eced083f5df:0,edit:[1,9,11,12,13,15,16],editor:[1,12],effect:[7,11,12,13,16,18],effort:[12,16],egg:19,either:[0,7,9,11,12,13,18,19],elad:12,elect:3,element:[0,3,5,6,7,12,15,18],elif:13,els:[0,2,5,7,8,9,12,13,17,18,19],emac:12,email:13,embed:12,emit:[3,7,10,11,12,15,16,18],emit_begin:[3,7],emit_commit:[3,7],emit_ev:12,emphasi:[10,11,12],empti:[0,7,8,9,12,15,19],enabl:[7,9,12,17,18],encapsul:8,enclos:[7,12],encod:[2,7,12,19],encount:[0,5,9,12],encourag:[12,17],encourgag:16,end:[0,4,5,6,7,8,9,11,12,13,17,18,19],end_vers:17,endpoint:[8,11],enforc:[10,12],engin:[1,2,6,7,9,12,13,17,18,19],engine1:0,engine1_downgrad:0,engine1_upgrad:0,engine2:0,engine2_downgrad:0,engine2_upgrad:0,engine_from_config:[7,9,13],engine_nam:0,enhanc:[12,14],enorm:[12,18],enough:[9,16],ensur:[0,9,11,12,14,16,18],enter:10,entir:[3,8,10,12,13,16,18,19],entireti:12,entri:[0,11,12],entrypoint:3,env:[0,1,2,4,5,6,7,8,9,10,12,13,16,17,18,19],environ:[0,1,2,4,6,8,9,11,12,14,15,18],environment_context:7,environmentcontext:[0,1,2,3,4,6,7,9,10,12,13,17,18],equal:[11,18],equival:[3,7,9,12],eras:0,erdfelt:12,err:12,erron:12,error:[8,9,10,11,12,17,19],escap:[2,12,18],especi:11,essenti:[0,10,12],est5edt:19,establish:[0,5,7,9,11,12],etc:[0,7,12,18,19],evalu:12,even:[10,11,12,13,16,18,19],event:[3,9,10,12,16,18],eventu:9,ever:0,everi:[0,12,13,16,19],everyth:[12,19],exact:[12,19],exactli:[8,18],examin:0,exampl:[0,1,5,7,9,10,11,13,16,17,18,19],exceedingli:12,except:[0,7,8,9,10,11,12,13,17,18],exclud:[3,9,12,13,18],excludeconstraint:[12,18],exclus:[6,7,8],exec:[12,18],execut:[0,3,5,7,12,13,17,18],executemani:18,executesqlop:[5,12],execution_opt:[3,5,7,12,18],exist:[0,2,7,8,10,11,12,13,17,18,19],existing_autoincr:[3,18],existing_com:[3,5,12,18],existing_nul:[3,5,18],existing_server_default:[0,3,5,12,18],existing_typ:[0,3,5,10,12,18],exit:12,expand:12,expect:[7,10,11,12],explcitli:[9,12],explicit:[0,12,15],explicitli:[0,9,10,11,12,18,19],expos:[4,7],express:[7,9,12,16,18],extend:[0,1,2,4,5,6,7,13],extens:[0,3,5,6,12,13,18],extern:[12,18],extra:[10,12,13],extract:12,fa4456a9201:11,fa445:11,fabric:10,facad:[6,7],face:8,facilit:[12,18],fact:[11,12,19],factori:7,fail:[10,11,12],failur:12,faithfulli:9,fals:[0,1,3,5,7,8,9,10,12,13,17,18,19],familiar:11,far:[10,12],fashion:12,favor:9,fcntl:12,feasibl:1,featur:[0,1,6,7,9,10,11,13,14,15,16,17,18,19],februari:12,few:[9,10,11,12,19],field:[12,13,19],figur:[6,16],file:[0,1,2,5,6,7,8,9,10,11,12,15,17,18],file_:[2,17],file_config:2,file_templ:[8,12,19],fileconfig:[2,19],filenam:[2,7,12,19],filesystem:[2,8,19],filter:[0,7,12,13],find:19,fine:[5,7,11,18],finish:[9,13],fire:18,firebird:12,first:[0,1,2,5,7,9,10,11,12,13,15,16,17,18],fit:0,fix:[7,9,12,18],fixabl:13,fk_:[10,16],fk_bar_foo_id_foo:10,fk_user_address:18,fk_user_order_id:16,flag:[0,2,6,7,10,12,13,16,17,18,19],flake8:12,flat:10,flexibl:12,floer:12,focu:12,folder:19,follow:[0,2,6,7,8,10,11,12,13,16,18,19],foo:[0,2,9,10,11,12,13,18],forc:[7,12,18],forego:16,foreign:[5,7,9,12,13,15,16,18],foreign_kei:[7,12,18],foreign_key_column:18,foreign_key_constraint:7,foreignkeconstraint:12,foreignkei:[10,12,16,18],foreignkeyconstraint:[7,10,12,13,18],forest:11,forgot:12,foriegn:12,form:[0,1,8,12,13,18],format:[0,2,7,11,12,13,19],format_column_nam:3,format_server_default:3,format_table_nam:3,format_typ:3,formatargspec:12,formatt:19,formatter_:19,formatter_gener:19,former:12,formula:12,forth:11,forward:[7,12],found:[2,7,12,13],four:12,fragment:0,frazer:12,free:[9,19],freeli:[7,11],fresh:[11,13],fri:12,from:[0,1,2,3,5,7,8,9,10,11,12,14,15,16,17,18,19],from_config:[7,8],from_constraint:3,from_index:13,from_tabl:13,front:[7,12,13,15],frozenbal:12,frozenset:8,frustratingli:10,full:[0,3,7,8,10,11,12,13,18,19],fulli:[8,9,10,11,12,13,18,19],func:[12,18],fundament:[0,12],further:[12,17,18],futur:[7,12],gain:0,garaud:12,gatewai:[6,10],gather:[3,12],gave:11,genener:12,gener:[1,2,3,4,5,6,7,8,10,11,12,15,16,18,19],generate_revis:[8,12],get:[4,7,8,9,11,12,13,15,16],get_bas:[8,12],get_bind:[7,18],get_by_dialect:3,get_column:7,get_context:[7,13,18],get_current_head:[7,8,12],get_current_revis:[7,12],get_head:[8,12],get_head_revis:[7,12],get_main_opt:2,get_revis:[8,12,13],get_revision_argu:[7,12,17],get_schema_nam:[7,12],get_sect:[2,7,9,13],get_section_opt:2,get_starting_revision_argu:[7,12],get_tag_argu:[1,7],get_template_directori:2,get_unique_constraint:12,get_x_argu:[2,7,12,13],getargspec:12,getattr:13,getfullargspec:12,gettz:19,giacomo:12,gilcreas:12,git:12,github:[12,14],give:[0,9,11,12,13,16],given:[0,1,2,3,7,8,9,10,11,12,13,16,18,19],glitch:12,global:[12,13,16,19],goe:12,going:[0,7,11,12],gone:10,good:[0,1,7,16,19],googl:14,got:12,grain:7,granular:12,graph:[11,12],great:[11,12],greater:[11,12,18],greatest:18,group:[7,14,18],grow:0,grown:4,guarante:11,guess:9,guid:19,guidanc:[5,9],guidelin:0,guilherm:12,haapala:12,hack:17,hackeri:12,had:[11,12,13,18,19],hand:[9,12,17,19],handl:[0,5,7,10,12,18],handler:[0,7,19],handler_:19,handler_consol:19,hardcod:[1,12],harland:12,has:[0,4,6,7,8,9,10,11,12,13,16,18],hash:12,hasn:[9,12],have:[0,1,7,8,9,10,11,12,13,16,17,18,19],head:[0,1,2,5,7,8,12,13,15,19],head_onli:[1,12],head_revis:8,header:19,heavi:[12,19],help:[9,12,13],helper:[0,7],helptext:12,henc:[11,12],here:[0,2,3,4,7,8,9,10,11,12,13,16,18,19],hex:7,hierarchi:12,high:18,higher:[3,12],highli:12,highlight:13,hint:[11,16],histori:[1,8,11,12,13,15],hoc:[7,12,18],hold:[12,19],hole:18,home:19,homepag:15,hong:12,honor:12,hook:[0,3,7,9,12,13],host:[7,12,14],hostnam:13,hour:[12,19],how:[0,5,6,7,9,10,12,13,16,19],howev:[0,4,5,7,8,9,10,11,12,13,14,16,18],hstore:12,http:[3,12,14],huge:12,hugo:12,hundr:13,hypothet:13,ibrahim:12,id_:8,idea:[1,9,13,16,19],ident:[3,12,13],identif:12,identifi:[0,1,7,8,9,10,11,12,13,15,18],idx:13,idx_op:0,ignor:[7,12],ijl:12,ik_test:18,illustr:[0,5,11,13,17,19],immedi:[12,18],impact:[11,12],impl:[3,11,12,13,18],implement:[0,3,5,6,7,9,10,12,13,18],implementation_for:[5,13,18],impli:[9,12],implicit:[12,13,15],implicit_bas:8,implicitli:12,implmeta:3,importantli:12,importlib:12,imposs:11,improv:12,in_nam:13,in_order_count:13,inadvert:12,inappropri:12,incept:12,includ:[0,2,3,5,7,8,9,11,12,13,15,18,19],include_object:[0,7,12,13],include_schema:[7,12],include_symbol:[0,7,12],inclus:8,incom:12,incompat:[11,12],inconsist:10,incorrect:12,incorrectli:[11,12],increment:13,incur:12,indent:[0,12],independ:[11,12,13],index:[3,5,7,9,12,14,15,16,18],index_nam:[5,18],indic:[0,1,2,7,8,9,12,18,19],indicate_curr:1,individu:[0,3,7,11,12,18,19],inevit:9,infer:7,info:[0,5,7,9,11,12,13,17,19],inform:[1,3,5,7,8,11,12,14,15],infrastructur:12,ini:[1,2,7,11,12,15],ini_sect:2,init:[1,2,9,12,19],initi:[1,5,11,12,15,18,19],inlin:[12,18],inline_liter:[7,12,18],inner:12,innodb:[10,13],input:[2,18],insert:[3,5,10,11,12,13,17,18],insid:[0,7,8,11,12,13,19],inspect:[0,7,12,13],inspected_column:[7,9],inspected_default:7,inspected_typ:9,inspector:[3,7,9,10,12],inspector_column:3,instal:[12,15,19],instanc:[0,1,5,6,7,8,9,12,13,18],instant:7,instanti:[2,6,7],instead:[1,5,6,7,9,10,11,12,13,17,19],instruct:[0,3,5,11,12,13,18,19],intact:12,integ:[0,7,9,10,12,13,16,18,19],integr:[0,4,10,12,13,15,18],intend:[0,6,7,9,10,11,12],intent:[9,12],interact:18,intercept:[1,9,12,16],interfac:[2,6,18],interfer:12,intermediari:12,intern:[0,1,2,4,5,6,12,15,16,18],interpol:2,interpret:[12,19],interstingli:11,interv:[7,12],intervent:12,intric:[10,11,13],introduc:[0,11,12,13,18],introduct:[12,19],invalid:12,invari:11,invoc:[1,7,19],invok:[0,2,5,6,7,9,10,11,12,13,18,19],invoke_for_target:13,involv:[7,9,11,12,18],ioctl:12,ioerror:12,is_bas:8,is_branch_point:8,is_empti:13,is_head:8,is_merge_point:8,is_migr:7,is_offline_mod:[7,17],is_stamp:7,is_transactional_ddl:7,is_upgrad:7,is_view:13,isinst:[7,9,13],isn:[0,10,11,12,13],issu:[5,9,10,12,14,18],issue10740:3,item:[0,7,9,12],iter:[0,7,8,12,13],iterate_revis:[8,12],its:[0,1,4,5,7,9,10,11,12,13,18],itself:[1,7,8,9,10,11,12,13,18,19],ivan:12,ix_:16,ix_b_aid:13,ixc:0,jacob:12,jan:12,januari:12,javier:12,jess:12,jiri:12,job:[0,19],johann:12,john:[12,18],join:[0,11,13,16,17],jone:18,json:12,jsonb:12,jul:12,juli:12,julien:12,jun:12,june:12,just:[1,2,5,10,11,12,13,16,18,19],kahlert:12,kamyshnikova:12,kataev:12,kazutaka:12,keep:[12,13],kei:[0,2,5,7,8,9,11,12,13,15,16,17,18,19],kelli:12,keyerror:12,keyword:[7,12,13,18],kick:12,kind:[0,5,7,9,10,11,12,13,18],know:[0,6,10,11,16,19],knowledg:[0,16],known:[0,9,10,11,12,16,18,19],koizumi:12,kolov:12,konstantin:12,kuncar:12,kuzminski:12,kwarg:[2,7,12],label:[1,15],land:12,languag:[7,12,13,18],larg:17,larger:12,last:[0,11,17],last_transaction_d:[9,17,19],latenc:19,later:[0,1,9,11,12,17],latest:12,latin1:13,latter:[5,12],layer:12,layout:11,lead:[11,12],leak:12,learn:[0,13],least:[5,7,10,12,16,18,19],leav:19,lebedev:12,left:[7,11,18,19],legaci:[0,12],legacy_schema_alias:12,legal:18,len:18,length:[0,7,8,9,10,13,19],less:[11,12,18],lesser:0,let:[0,11,13,16,19],level:[0,3,5,7,10,12,13,18,19],levelnam:19,liber:12,librari:[12,18,19],lieu:[13,18],lift:12,lightli:11,lightweight:15,like:[0,2,7,9,10,11,12,13,16,17,18,19],limit:[7,8,9,11,12],line:[2,7,10,11,12,13,17],lineag:[11,12,13],link:[1,5,11,19],link_to_nam:12,list:[0,1,5,6,7,8,11,12,13,16,18,19],list_templ:[1,2,12,19],listen:[7,10,18],listen_for_reflect:10,liter:[5,7,12,18],literal_bind:[7,12,18],littl:12,live:[10,11,17,18,19],load:[7,9,10,11,12,13,19],load_dialect_impl:12,local:[0,2,7,9,12,17],local_col:[5,18],localhost:[11,13,19],localtim:19,locat:[0,7,11,12,13,19],log:[2,12,17,19],logger:[0,19],logger_:19,logger_alemb:19,logger_root:19,logger_sqlalchemi:19,logic:[8,9,10,12,13],longdoc:8,longer:[7,11,12,13,16,19],look:[0,9,11,12,13,16,19],lookup:12,loop:13,loos:14,lot:[9,11,16],lower:[8,12,18],luca:12,maarten:12,made:[1,7,9,10,11,12,18,19],magnusson:12,mai:[0,2,5,7,8,9,10,11,12,13,17,18,19],main:[2,6,11,12],maintain:[0,8,11,12,13,18,19],major:[3,4,7,9,12,17,19],make:[0,1,2,6,7,9,11,12,13,16,17,18,19],mako:[0,7,8,9,11,12,13,19],malt:12,manag:[7,8,11,12,18,19],mani:[1,4,7,8,10,11,12],manipul:[7,10,12],manner:12,mansur:12,manual:[7,9,10,11,12,16,18],map:[7,8],mar:12,marc:12,march:12,marcin:12,mariadb:12,marker:8,marku:12,marquard:12,martin:12,match:[5,8,9,10,12,18,19],matt:12,matter:15,max:19,mayb:16,mclean:12,mean:[0,7,9,10,11,12,17,18],meaning:7,meant:11,mechan:[7,8,12,19],mediumtext:13,member:[9,12],memori:17,mention:[11,16,18],mercuri:12,merg:[1,8,12,15,19],mergepoint:[11,12],messag:[0,1,2,5,8,9,12,13,19],meta:[10,16],metadata:[0,7,10,12,13,15,16,18,19],metadata_col:0,metadata_column:[3,7,9],metadata_default:7,metadata_fk:3,metadata_index:3,metadata_sequ:0,metadata_t:0,metadata_typ:9,metadata_unique_constraint:3,meth:12,method:[0,1,2,3,4,5,6,7,8,9,10,12,13,18,19],methodolog:9,michael:12,michal:12,michel:12,microsoft:18,might:[10,12,13,16],migrat:[0,1,2,3,4,5,6,8,11,12,15,16,18],migrateoper:[0,5,13,18],migration_context:[0,3,7,18],migration_script:0,migration_typ:9,migrationcontext:[0,1,2,5,6,7,12,13,18],migrationinfo:[7,12],migrationscontext:16,migrationscript:[0,5,7,12,13],mike:14,million:12,mind:16,minhe:12,minimalist:19,minimum:12,minut:[12,19],mis:12,misc:15,mise:12,misinterpret:12,miss:12,mistaken:12,mistakenli:12,mix:12,mmelnychuk:12,mock:7,mode:[1,2,3,6,7,11,12,15,18],model1bas:9,model2bas:9,model:[7,9,11,12,13,16,19],model_metadata:0,modif:12,modifi:[0,2,3,7,9,10,12,13,18,19],modify_:0,modify_com:5,modify_nam:5,modify_nul:[0,5],modify_op:0,modify_server_default:5,modify_typ:5,modifytableop:[0,5,13],modul:[0,2,5,6,7,8,11,12,13,15,18],modular:12,moment:[11,12,18],mon:12,month:[12,19],more:[0,1,4,5,7,8,9,10,12,13,14,15,16,18,19],moriyoshi:12,most:[0,5,7,8,9,10,11,12,13,14,16,18,19],mostli:[10,12],move:[7,9,10,12,18,19],movement:[7,12,13],mssql:[3,7,12],mssql_add_column:3,mssql_batch_separ:7,mssql_drop_check:[12,18],mssql_drop_default:[12,18],mssql_drop_foreign_kei:[12,18],mssql_includ:12,mssqlimpl:3,much:[10,11,12,13,16,18],multi:[0,8,19],multidb:[0,5,9,12,19],multiinsert:[3,5,12,18],multipl:[1,5,7,8,12,15,17,18,19],multiplehead:8,must:[0,2,8,9,10,11,12,17,18,19],mutat:[10,12],mutipl:0,my_column:9,my_compare_server_default:7,my_compare_typ:9,my_enum:10,my_funct:7,my_metadata:13,my_nam:9,my_render_column:7,my_seq:0,my_seq_1:0,my_sequ:[0,5],my_sequence_1:0,my_tabl:[13,18],my_view:13,myapp:[2,7,8,9,16,17],mybranch:0,mycolumn:9,mycustomtyp:9,mydatabas:[7,13],myengin:18,mymodel1:9,mymodel2:9,mymodel:[9,16],myotherdatabas:13,mypackag:9,myproject:13,mysect:2,myspecialcol:7,myspecialtyp:9,mysql:[4,10,12,13,15,18],mysql_com:13,mysql_default_charset:13,mysql_engin:[12,13],mysqlalterdefault:3,mysqlchangecolumn:3,mysqldb:12,mysqlimpl:3,mysqlmodifycolumn:3,mytabl:7,name:[0,1,2,3,5,7,8,9,11,12,13,15,17,18,19],namespac:[5,7,9,12,13,18],naming_convent:[10,12,16,18],narrow:11,nativ:[16,18],natur:[11,12],navig:8,necessari:[6,7,9,10,12,13,18],necessarili:[9,12],need:[0,2,3,4,5,7,8,9,10,11,12,13,16,17,18,19],neg:19,nest:[7,12,13],net:12,network:11,never:[12,18],new_column_nam:[5,10,12,18],new_table_nam:[3,5,18],newer:[7,11,12,14],newli:[12,18],newnam:3,next:[5,7,10,11,12,15],nextrev:8,nextval:12,nice:13,nil:12,no_paramet:12,node:[11,12],non:[0,2,8,9,12,18,19],none:[0,1,2,3,5,7,8,9,10,11,12,13,16,17,18,19],nonetyp:12,nonexist:12,nor:[10,12],normal:[0,3,4,5,7,8,9,10,11,12,13,16,18,19],nose:12,notabl:8,notat:12,note:[0,1,2,7,8,9,10,11,12,13,18,19],noth:[7,8,11,12,19],notic:[17,19],notimplementederror:[12,13],notion:12,notset:19,noufal:12,nov:12,novemb:12,now:[0,5,7,8,9,10,11,12,13,18,19],nspname:0,nullabl:[0,3,5,7,9,10,12,13,18,19],nullpool:[7,12,13],number:[0,7,8,9,11,12,13,19],numer:[12,18],nut:7,nvarchar:18,obj:[9,13],object:[1,2,3,4,6,8,9,10,12,15,16,18,19],object_:0,objnam:13,obscur:12,observ:12,obtain:0,obviou:9,occur:[0,5,7,9,10,11,12,19],occurr:12,oct:12,octob:12,odagiri:12,odd:[10,11],off:[3,7,9,10,11,12,17,18],offer:[11,12],offlin:[2,3,6,7,12,15,18],often:[1,9,11,12,13],oid:[0,13,16],old:[9,10,12,13,18,19],old_data:0,old_obj:13,old_table_nam:[3,5,18],older:[11,12,13,18],omit:[2,7,10,12,18],on_version_appli:[7,12],onc:[0,7,12,13,15,18,19],ondelet:[5,12,13,18],one:[0,1,2,3,4,5,7,8,9,10,11,12,15,16,18,19],ones:12,onli:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,17,18,19],onlin:[7,10,12,17,18],onto:[0,11,19],onupd:[5,12,18],op_cl:18,opcontain:5,open:[2,5,7,12,17],openstack:14,oper:[2,3,4,6,7,8,9,10,11,12,14,15,19],operar:13,opportun:0,oppos:12,opposit:9,ops:[0,3,5,12,13],opt:[0,7],option:[0,1,2,3,5,7,8,9,10,11,12,13,17,18,19],oracl:[7,12,16],oracle_batch_separ:7,order:[0,1,3,5,6,7,9,10,11,12,13,16,18,19],order_count:13,ordinarili:7,org:[3,12,14],org_fk:0,organ:[0,5,11,12,13,14,17,18],organization_id:0,orient:18,origin:[5,7,10,11,12,13],other:[0,1,3,6,7,8,9,11,12,13,14,15,16,18,19],otherwis:[2,7,8,12,13,16,18],our:[5,9,10,11,13,15,16,17,18],out:[1,2,5,6,9,11,12,13,16,19],outer:[12,13],output:[0,1,2,5,6,7,9,11,12,13,17,18,19],output_buff:[2,3,7,17],output_encod:[7,8,12,19],outright:12,outsid:[0,4,7,12,13,18],over:[7,9,10,11,12],overal:[0,12],overcom:10,overhaul:12,overkil:13,overrid:[2,7,9,10,18],overridden:[7,12],overview:[4,5,13,15,19],overwhelm:12,own:[1,9,11,12,13,16,18],packag:[1,9,12,14,19],page:15,pair:[9,12],paradigm:11,paradoxxxzero:12,parallel:12,paramet:[0,1,2,4,7,8,9,10,12,13,16,17,18],parameter:18,paramt:12,parent:[1,11,12,16,18,19],pars:[2,7,12],parse_encod:12,part:[0,2,5,6,9,10,11,12,13,18,19],parth:12,parths007:12,parti:[9,12],partial:[8,11,12,15],particular:[3,4,7,12,15,16,18,19],particularli:[7,9,12],pass:[0,2,4,5,6,7,8,9,10,11,12,13,16,17,18,19],passaro:12,patch:12,path:[0,1,2,8,9,11,13,17,19],pathnam:19,pattern:[10,12],paul:12,pedro:12,pep3149:12,pep488:12,pep8:12,pep:12,per:[3,6,9,12,18],percent:[2,12],perfect:9,perfectli:18,perform:[0,3,7,10,11,12],perhap:1,period:18,perman:11,perspect:[2,7,11],pertin:11,petrucha:12,pg_catalog:[12,13,16],pg_class:[0,13,16],pg_constraint:16,pg_namespac:[0,13,16],pg_table_is_vis:13,phase:12,philippsen:12,philosoph:10,philosophi:18,phrase:12,pick:12,pickl:9,pip:14,pipe:12,pk_:16,pk_my_tabl:18,pkg_resourc:12,place:[0,3,5,7,9,10,11,12,13,16,19],placehold:13,plai:[7,19],plain:[7,9,12,18],plan:0,platform:12,pleas:[0,1,2,5,7,9,10,11,12,13,19],plpgsql:13,plu:[12,19],plug:0,plugin:[0,4,12,13,15,18],podoliaka:12,point:[0,1,4,7,8,10,11,12,19],pool:[7,13],poolclass:[7,13],popul:[2,8,13,18,19],popular:13,portabl:12,posit:[7,12,18,19],possibl:[2,5,10,12,13,17,18,19],post:[12,14],poster:11,postgreql:12,postgresql:[0,2,4,7,9,10,11,12,13,15,16,18,19],postgresql_concurr:12,postgresql_us:[12,18],postgresqlcolumntyp:3,postgresqlcontext:[17,19],postgresqlimpl:[3,11,13],potenti:[12,14],pound:12,pprint:0,practic:[7,18,19],pragma:[10,12],pre:[10,12],preced:[0,9,10,11,12],precis:12,predict:10,prefer:[7,8,10,12],prefix:[0,7,12,13,15,19],prematur:12,prep_table_for_batch:3,presenc:[0,13],present:[0,3,5,6,7,8,9,10,11,12,13,17,18,19],preserv:12,pretti:[10,11,12,13,18],preval:12,prevent:[10,12],previou:[1,11,12,13,18],previous:[0,12,13],primari:[0,5,6,7,9,10,12,13,16,17,18],primarili:[0,12],primary_kei:[0,7,10,12,13,16,18,19],primarykeyconstraint:[0,9,12,16,18],print:[0,2,12,15],print_stdout:[2,12],prior:[7,10,11,12],probabl:[11,12,19],problem:[12,13],proce:[3,5,7,9,10,11,12,13,14,18],procedur:[10,13],proceed:[13,16,19],process:[0,1,3,9,10,11,12,13,14,18,19],process_revision_direct:[0,1,7,12,13],procur:19,produc:[0,6,7,8,9,10,12,13,18,19],produce_migr:0,product:[5,7,12,13,16],prog:2,program:[5,12],programat:2,programmat:[0,1,2,3,4,7,8,12],prohibit:12,project:[4,11,13,15,19],promin:6,prompt:16,proof:7,propag:12,properli:[10,12],properti:13,property_nam:13,property_name_users_id:13,property_valu:13,propos:[0,13],provid:[0,2,3,4,6,7,8,9,10,11,12,13,16,17,18,19],proxi:[3,5,7,18],prune:[13,19],pseudo:12,psycopg2:12,publish:14,pull:[11,12,17],purpos:[0,4,6,10,12,13,17],pursu:11,put:[0,11,13],py2k:12,py3:12,py3k:12,pyc:[12,19],pyformat:2,pylon:[12,14,19],pyo:[12,19],pypi:[12,14],pyramid:12,pysqlit:[3,12],pytest:12,python2:12,python3:12,python3x:12,python:[0,2,3,5,6,7,8,9,12,14,15,18,19],pythonoptim:12,q_bool:16,qualifi:12,qualnam:19,queri:[12,13],quirk:12,quit:[10,11,13,16],quot:[3,12,18],quote_dot:3,quoted_nam:[12,18],r1975ea:19,radic:12,rais:[0,7,8,9,10,12,13,17],ran:[0,11],rang:[1,12,15,17],rangenotancestorerror:8,rare:12,rather:[1,7,9,10,11,12,13,18,19],rational:10,raw:[2,12,18],rcurrent:12,reach:[11,12],read:[2,6,12,17,19],readm:[12,19],real:[4,7,11,12,18],realli:11,rearrang:12,reason:[5,7,9,10,11,12],rec:0,receiv:[0,7,11,12,18],recent:[7,8,12,13,14,18,19],recip:[1,13],recogn:12,recommend:[9,11,12,18],reconcil:11,reconcili:11,recreat:[3,10,12,13,18],recurs:13,redirect:[2,17],reduc:0,redund:12,refactor:[9,12],refer:[0,2,5,6,7,8,9,10,12,13,15,16,17,19],referenc:[12,15,18,19],referent_schema:[5,18],referent_t:[5,18],referenti:[10,12],referred_table_nam:[10,16],refin:12,reflect:[0,3,7,9,12,13,15,18],reflect_arg:[10,12,18],reflect_kwarg:[10,12,18],reflectt:9,refresh:8,regard:[0,1,2,5,9,12,18],regardless:[7,10,12,18,19],regexp:12,regist:[5,12,18],register_oper:[5,13,18],registr:[0,5],regress:12,regular:[6,7,8,10,11,12,18],rel:[9,11,12,15],relat:[10,12,16,19],relax:12,releas:[9,10,12,14,16],releg:13,reli:[10,12,17],reliabl:9,relianc:19,relkind:0,relnam:[0,13,16],relnamespac:[0,13,16],relnum:11,remain:[10,11,12,13,18],rememb:16,remot:[12,18],remote_col:[5,18],remov:[5,9,12,13,18],remove_column:0,remove_constraint:12,remove_index:12,remove_t:0,renam:[5,10,12,18],rename_t:[3,5,12,18],renamet:3,renametableop:5,render:[2,5,6,7,10,12,15,16,18,19],render_as_batch:[0,7,10,12],render_create_sequ:0,render_drop_sequ:0,render_item:[0,7,9,12],render_python_cod:[0,13],render_typ:3,rendered_inspector_default:3,rendered_metadata_default:[3,7],reorgan:[7,12],repair:12,replac:[0,2,3,9,10,12,15,19],replace_sp:13,replace_view:13,replace_with:13,replaceableobject:13,report:[12,14],repositori:[8,11,12],repr:[7,11,12,13],repres:[0,1,2,3,5,6,7,8,10,12,13,18,19],represent:[9,12],reproduc:9,repurpos:12,req:12,request:[8,12,13,19],requir:[1,3,7,8,10,11,12,13,16,18,19],requires_recreate_in_batch:3,resembl:12,reserv:18,resili:12,resolut:[11,12],resolutionerror:8,resolv:[8,11,12],resolve_depend:1,resourc:[12,19],resource_filenam:[12,19],respect:[0,7],respond:19,rest:7,restor:9,restrict:[12,17,18],result:[0,7,8,9,11,12,13,18,19],retriev:[9,12,17,18],reusabl:12,rev:[1,7,8,11,12,13,17,19],rev_id:[1,5,8],rev_rang:1,reveal:12,revers:[0,5,12,13,18],reversibleop:13,revert:[1,12],revid:8,review:[9,13],revis:[1,4,5,6,7,9,12,15,17],revision_environ:[7,12,19],revision_map:7,revisionerror:8,revisionmap:[8,12],rework:12,rewrit:[7,12,13],right:[7,11,12,16,18],rivera:12,robbi:12,rock:19,role:12,roll:[7,13],rollback:[12,17],roman:12,romano:12,root:[7,8,11,19],rout:[3,7],routin:[0,7,12],row:[0,3,5,11,12,16,17,18],rudimentari:[0,4,9,19],rule:[6,9,12,18],run:[1,2,3,4,5,6,7,8,9,12,15,16,17,18],run_arg:7,run_env:[7,8],run_filt:0,run_migr:[3,5,7,9,12,13,17,18],run_migrations_offlin:17,run_migrations_onlin:[0,9,13,16,17],run_test:12,runner:[2,6,12,19],runnier:2,runtim:[4,5,12,13,15],ryan:12,s_downgrad:0,s_upgrad:0,safe:[10,12,18],safeconfigpars:[2,19],sai:[11,13],said:11,same:[0,1,3,5,7,9,10,11,12,13,16,17,18,19],sampl:[9,12],saniti:12,santacruz:12,sat:12,satisfi:11,scalar:7,scale:12,scan:[7,12],scenario:[8,10,11,12],scene:[12,16],sch:0,schaik:12,schema1:13,schema2:13,schema3:13,schema:[0,2,3,5,7,9,10,12,13,18],schema_downgrad:13,schema_upgrad:13,schemaitem:[0,7],schemanam:[0,13],scheme:[0,8,9,12,16,17,18,19],scope:[0,7,10,12,13],scott:[11,13,19],scratch:[12,15,19],screen:19,script:[0,1,2,4,5,6,7,9,10,11,12,13,14,15,16,18],script_directori:[7,12],script_loc:[2,7,8,12,13,19],scriptabl:19,scriptdirectori:[1,2,6,7,8,12],search:[9,15],second:[0,10,11,12,13,15,18],section:[0,1,2,4,5,6,7,9,10,11,12,13,17,18,19],secur:18,see:[0,1,2,3,5,7,9,10,11,12,13,16,18,19],seek:10,seem:16,seen:[10,11,12],segment:12,select:[0,8,9,10,11,12,13,16,17,18],select_for_downgrad:8,self:[5,9,10,12,13,18],semant:11,semi:11,semicolon:7,send:[10,12,13],sensit:[12,18],sent:[1,2,5,7,12],separ:[7,8,11,12,13,18],septemb:12,sequenc:[0,3,5,7,8,9,12,13,18,19],sequence_nam:[0,5],sequent:11,seri:[0,1,2,6,7,10,11,12,14,15,18],serial:[0,12,13,17],serv:[0,5,8,11,12],server:[0,3,7,9,12,17,18],server_default:[3,5,7,12,18],servic:[10,12,18],session:17,set:[0,2,3,5,6,7,8,9,10,12,13,15,17,18,19],set_main_opt:[2,7,8,12],set_section_opt:[2,12],setdefault:0,setup:[2,12,14,18],setuptool:12,sever:[10,11,12,19],shandilya:12,share:[1,2,11,12,15],shgoh:12,shop:[10,11],shopping_cart:11,shoppingcart:11,shorthand:11,shot:13,should:[0,1,5,7,8,9,10,11,12,13,14,18,19],shouldn:12,show:[0,1,7,11,12,19],sibl:[11,12],side:[7,11,12,18],sign:[2,12],signal:12,signatur:12,signific:12,significantli:12,similar:[10,11,12,14,16,18],similarli:12,simpl:[0,5,7,9,10,12,13,16,18,19],simpler:[2,11],simplest:[0,5],simpli:[2,12,13],simplifi:12,simplist:13,simultan:[8,11,19],sinc:[0,7,10,11,12,18],singl:[0,1,5,7,8,9,11,12,13,18,19],sit:11,size:12,skip:[7,12,13],skip_autogener:7,skip_table_on:7,skip_table_two:7,slice:[12,19],slightli:[10,12],slug:[8,12,19],small:[1,6,9,12],smallinteg:12,smith:18,softwar:12,sok:12,sole:13,solut:16,some:[0,2,3,7,9,10,11,12,13,16,17,18,19],some_oper:5,some_param:2,some_t:[10,16,18],some_valu:2,somecolumn:7,somefunct:12,somenam:7,somet:[9,16],sometag:7,someth:[7,9,11,12,13,16,19],sometim:13,somewher:[9,13],sort:[0,11,12],sorted_t:0,sourc:[9,11,12,13,14,18,19],source_revis:7,source_revision_id:7,source_schema:[5,12,18],source_t:[5,18],sourceless:[8,12,19],sourcenam:18,sp_renam:12,space:[7,12],special:[0,3,7,8,9,10,11,12,16,18,19],specif:[0,1,3,5,6,7,9,12,13,15,17,18,19],specifc:11,specifi:[0,1,7,9,10,11,12,18,19],specifii:12,spit:12,splice:[1,5,8,11,19],split:[12,13],sporad:12,spuriou:13,sql:[1,4,5,6,7,10,11,12,13,15,16,18,19],sqla:[9,12],sqlalchemi:[0,2,3,7,9,10,11,12,13,14,15,16,18,19],sqlalchemy_module_prefix:[0,7,9,12],sqlite:[0,4,7,12,15,18],sqliteimpl:3,sqllchemi:18,sqltext:[5,13,18],src:12,stack:12,stai:13,stamp:[1,7,12,13],stand:9,standalon:[12,18],standard:[2,5,7,10,12,17,18,19],standpoint:8,start:[6,7,8,9,10,11,12,13,15,19],start_migr:3,starting_rev:[7,17],startup:19,state:[0,2,3,5,7,10,11,12,18,19],statement:[3,7,10,12,15,16,17,18],static_output:[3,7],statu:[9,11,12,14],stderr:[17,19],stdout:[1,2,7,12],stem:10,step:[0,3,5,7,10,11,12,13,15,18],still:[7,10,11,12,13,18],stop:[11,19],stopiter:12,storag:2,store:[0,2,5,11,12,13],str:12,straight:[12,13,19],straightforward:[12,13],stream:[0,5,6,7,11,12,18,19],streamhandl:19,street:10,stress:11,strictli:8,string:[0,1,2,3,7,8,9,10,11,12,13,16,18,19],stringif:12,stringio:12,strongli:12,structur:[0,1,7,10,11,12,15,18,19],stub:[13,18],style:[1,5,10,12,13,18],sub:11,subclass:[0,5,6,8,12,18],subject:[11,12],subsect:4,subsequ:[11,12],subset:[7,12],substitut:[2,11,12,19],substr:12,succe:12,succeed:8,success:0,suffici:[5,10],suggest:11,suit:[12,17,19],suitabl:[7,12,18],summar:0,sun:12,superced:7,suppli:[6,12,19],support:[0,2,3,5,7,8,9,10,11,12,13,14,15,16,18,19],suppos:[0,9,13,16,19],suppress:12,sure:[2,9,11,19],surpris:12,surround:[12,18],sweep:7,sybas:12,symbol:[1,2,8,11,12,18,19],symlink:12,synonom:7,synonym:7,syntact:18,syntax:[10,13,15,17],sys:[2,7,12,17,18,19],sys_c0029334:16,system:[0,1,3,5,6,7,9,10,11,12,13,18],szotten:12,t_tabl:19,tabl:[0,1,3,5,6,7,9,11,12,16,17,18,19],table_arg:[10,18],table_key_to_t:0,table_kw:5,table_kwarg:18,table_nam:[0,3,5,10,12,13,16,18],tablenam:[0,7,12,13,16],tables_drop:13,tag:[1,7,12],tailor:[12,13],take:[1,3,7,9,10,12,13,16,18],taken:[0,12,18],talk:[0,16],target:[0,1,2,7,9,10,11,12,15,18,19],target_metadata:[0,7,9,10,12,13,16,18],task:[0,9],technic:6,techniqu:[0,5,12,13],tediou:[10,16],tell:[11,12,13,19],temp:10,templat:[0,1,2,5,7,8,9,12,13,19],template_arg:[7,12],temporari:[12,18],temporarili:10,temptabl:12,tend:12,term:[0,11,18,19],termin:12,termwidth:12,test:[0,8,9,11,12,13,16,19],test_autogener:12,test_render_fk_constraint_kwarg:12,text:[2,3,6,7,12,13,18],text_typ:12,textiowrapp:2,textual:[7,12,13],than:[1,3,7,8,9,11,12,13,15,18,19],thank:12,thei:[0,1,5,7,9,10,11,12,13,18,19],them:[0,7,10,11,12,13,16,17,18],themselv:[0,5,6,7,8,12,13,15,19],theodor:12,theoret:19,theori:[13,19],therefor:[2,10,12,18],thereof:0,thi:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,17,18,19],thing:[0,7,11,12,13,16,18,19],think:[11,13],third:[0,9,11],those:[2,3,7,8,9,10,11,12,13,16,18],though:[2,7,10,11,12,13,16,18,19],thoughtfulli:11,thousand:19,three:[0,12,13,19],through:[0,7,8,10,11,12,13,14,17],thu:[11,12],ticket:12,tiger:[13,19],time:[0,5,7,10,11,12,16,17,19],timestamp:[12,17,18,19],timezon:[8,12,19],tinyint:12,tname:0,to_constraint:3,todo:18,togeth:[1,11,18,19],token:[0,12,16,18,19],too:[11,12,13,16],tool:[10,14,15,19],toolkit:15,top:[9,11,12],topic:[9,16],topolog:11,tos:13,total:[8,19],tougher:13,toward:[7,11,13,18],tox:12,trace:12,track:12,tracker:[12,14],tradit:[12,18],transact:[1,3,6,7,10,11,12,13,17,19],transaction_per_migr:[7,12],transactional_ddl:[3,7,12,17],transfer:[10,12],translat:12,transpar:12,travers:[0,8,11,12],tread:11,treat:[1,7,11,12,13,17,18],treatment:12,tree:[7,11,13,19],trigger:[0,12,13],tripl:0,trivial:12,truncat:[12,19],truncate_slug_length:[8,12,19],tty:12,tue:12,tupl:[0,7,8,11,12,13],turn:[2,7,10,11,12,18],tutori:[1,2,7,15,18],twice:12,twist:11,two:[0,1,5,7,9,11,12,13,16,17,19],txt:17,type:[0,7,12,13,15,16,18],type_:[0,3,5,7,9,10,12,13,18],type_obj:3,typedecor:[9,12],typeengin:[0,7,18],typeerror:[12,13],typic:[3,6,7,8,10,11,12,13,16,18,19],tzinfo:19,tzutc:19,ultim:[6,7,12,13,18],unaffect:12,unambigu:11,unchang:12,uncommon:12,uncondition:[10,12,19],undefin:12,under:[7,12,14,18],underli:[2,7,18,19],underneath:11,underscor:12,understand:19,understood:[12,18],unfortun:13,unicod:[12,19],unimpl:12,union_upd:12,uniqu:[5,7,9,12,13,15,16,18,19],unique_constraint:[7,12],uniqueconstraint:[7,9,10,12,16,18],unit:[6,12],unittest:12,univers:12,unknown:12,unless:[2,8,19],unlik:[1,10],unmerg:[7,8,12],unnam:[12,15,16,18],unnecessari:12,unnecessarili:12,unpredict:16,unreport:12,until:[11,12],untrust:18,unusu:12,unvers:19,unwant:[9,12],up_or_down_op:0,up_revis:[7,11,13],up_revision_id:[7,12],upcom:12,updat:[0,7,11,12,13,18],upgrad:[0,1,2,5,6,7,9,10,11,12,13,16,17,18,19],upgrade_:12,upgrade_engine1:19,upgrade_engine2:19,upgrade_op:[0,5,7,12,13],upgrade_ops_list:[0,5],upgrade_token:[0,5,7,12],upgradeop:[0,5,7,12,13],upon:[0,1,6,7,8,9,10,11,12,13,17,19],upper:[8,18],uppercas:12,upward:11,uq_:16,uq_const_x:16,uq_user_account_nam:16,uq_user_nam:18,uri:[12,19],url:[2,7,12,13,17,19],usabl:[12,13],usag:[0,1,2,3,7,10,12,14,15,16,18,19],use:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,16,18,19],use_alt:12,used:[0,2,3,4,5,6,7,8,9,10,11,12,13,16,17,18,19],useful:[0,1,2,5,6,8,10,11,12],user:[0,4,5,6,7,9,12,13,14,17,18,19],user_account:16,user_account_id:16,user_excl:18,user_id:18,user_module_prefix:[7,9,12],user_ord:16,user_order_id:16,user_order_user_account_id_fkei:16,user_properti:13,user_properties_ibfk_1:13,user_property_t:13,user_t:13,usernam:10,users_id:13,uses:[3,8,9,12,13,16,18,19],using:[0,1,2,4,5,6,7,9,10,11,12,13,16,17,18,19],usual:[0,1,4,7,9,10,11,18],utc:19,utcnow:19,utf8:13,utf:[2,8,12,19],util:[2,7,8,9,12],utim:0,uuid4:12,uuid:[7,9,12],valid:12,valu:[0,2,7,9,11,12,13,16,17,18,19],van:12,varchar:[0,9,13,17,18],vari:7,variabl:[0,2,7,9,12,18,19],varianc:3,variant:12,varieti:[9,10,12,19],variou:[6,12,13,18,19],vast:[4,9,19],vendor:12,verbatim:2,verbos:[1,11,12,19],veri:[0,5,7,9,11,12,13,19],verifi:18,versa:12,version:[0,1,2,5,6,7,8,9,10,12,13,14,15,18,19],version_fil:17,version_loc:[8,11,12,19],version_num:[11,12,13,17],version_path:[1,5,8],version_t:[7,12],version_table_pk:[7,12],version_table_schema:[7,12],versionad:1,versionchang:12,versu:[11,18],via:[0,1,2,3,5,7,9,10,12,14,17,18,19],vice:12,view:[0,9,11,12,15],visit_add_column:3,visit_column_com:3,visit_column_default:3,visit_column_nam:3,visit_column_nul:3,visit_column_typ:3,visit_drop_column:3,visit_rename_column:3,visit_rename_t:3,visual:6,wai:[0,4,10,11,12,13,16,17,18,19],walk:13,walk_revis:8,want:[0,7,8,11,13,16,17,18,19],warn:[12,19],wasn:12,websit:12,wed:12,weed:12,week:12,welcom:12,well:[0,4,5,7,9,11,12,15,16,17,18,19],wendi:18,were:[2,7,9,10,11,12],weren:[11,12],what:[0,7,10,11,12,13,15,16,18,19],whatev:[0,2,9,19],wheel:12,when:[0,1,2,3,4,5,6,7,8,9,10,11,12,15,16,17,18,19],whenev:[10,19],where:[0,1,2,3,7,8,9,10,11,12,13,16,17,18,19],wherea:[7,9,12,13],wherebi:[10,12],whether:[0,1,7,8,10,12,18],which:[0,2,4,5,6,7,8,9,10,11,12,13,16,17,18,19],whichev:11,whitespac:12,who:[0,1,2,5,6],whole:[0,11,12,13,16,18],whose:[6,12],wide:[0,9,12],width:[0,12],wiki:12,wild:11,wilk:12,william:18,window:12,wish:[0,1,2,5,6,7,11,13,16],with_stat:12,within:[0,2,5,6,7,8,9,10,11,12,13,17,18,19],without:[0,2,7,10,11,12,13,17,18,19],won:12,word:[12,18],work:[0,1,2,7,9,12,13,14,15,16,17,18,19],workaround:[10,12,18],workflow:[10,11,12],world:4,wors:16,worth:16,would:[0,3,5,7,9,10,11,12,13,16,17,18,19],wouldn:12,wow:19,wrap:12,write:[1,12,15,16,19],writer1:0,writer2:0,writer:0,written:[7,12,13,19],wrong:[12,16],wrote:17,www:12,xdist:12,xmin:12,xxxxx:[11,19],xyz:[12,13],yap:12,year:[12,16,19],yet:[7,9,11,12,18,19],yield:[7,8,12,13],you:[2,7,8,9,11,12,13,16,19],your:[9,11,12,13,16,19],yourapp:[1,2,13,19],yourproject:19,yourself:12,zeidler:12,zero:[0,8,12],zone:17},titles:["Autogeneration","Commands","Configuration","DDL Internals","API Details","Operation Directives","Overview","Runtime Objects","Script Directory","Auto Generating Migrations","Running \u201cBatch\u201d Migrations for SQLite and Other Databases","Working with Branches","Changelog","Cookbook","Front Matter","Welcome to Alembic\u2019s documentation!","The Importance of Naming Constraints","Generating SQL Scripts (a.k.a. \u201cOffline Mode\u201d)","Operation Reference","Tutorial"],titleterms:{"boolean":10,"enum":10,"function":0,"import":16,The:[7,13,16,19],affect:9,alemb:[13,15],all:11,api:4,auto:9,autogener:[0,9,10,13,16],base:11,batch:10,branch:[11,13],bug:[12,14],build:13,built:5,call:0,chang:[10,12],changelog:12,check:10,code:13,collect:9,command:[1,13],commun:14,compar:9,comparison:0,condit:13,configur:2,connect:13,constraint:[10,16],context:7,control:[9,10],convent:16,cookbook:13,creat:[0,11,13,19],custom:[0,17],databas:[10,13],datatyp:10,date:13,ddl:3,deal:10,depend:[11,14],detail:4,detect:9,diff:0,direct:[0,5],directori:[8,11],document:15,doe:9,don:13,downgrad:19,drop:[10,13],edit:19,element:13,emit:13,empti:13,engin:0,environ:[7,13,17,19],explicit:11,featur:12,file:[13,19],fine:0,first:19,foreign:10,from:13,front:14,gener:[0,9,13,17],get:[0,17,19],grain:0,head:11,histori:19,homepag:14,identifi:19,implicit:10,includ:10,index:13,indic:15,inform:19,ini:[13,19],initi:13,instal:14,integr:16,intern:3,kei:10,label:11,matter:14,mechan:11,merg:11,metadata:9,migrat:[7,9,10,13,17,19],misc:12,mode:[10,17],model:0,modul:9,more:11,multipl:[0,9,11,13],mysql:3,name:[10,16],next:19,object:[0,5,7,13],offlin:[10,17],onc:11,one:13,oper:[0,5,13,16,18],other:10,our:[0,19],overview:6,partial:19,particular:13,plugin:5,postgresql:3,prefix:9,print:13,project:14,python:13,rang:19,refer:[11,18],referenc:10,reflect:10,regist:0,rel:19,render:[0,9],replac:13,revis:[0,8,11,13,19],rewrit:0,run:[0,10,11,13,19],run_migr:0,runtim:7,scratch:13,script:[8,17,19],second:19,seri:13,set:11,share:13,specif:11,sql:[3,17],sqlite:[3,10],start:17,statement:13,step:19,structur:13,support:17,syntax:11,tabl:[10,13,15],target:13,than:10,themselv:9,track:0,tutori:19,type:[9,10],uniqu:10,unnam:10,version:[11,17],view:[13,19],welcom:15,well:13,what:9,when:13,work:[10,11],write:17}})
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/docs/tutorial.html new/alembic-1.0.10/docs/tutorial.html
--- old/alembic-1.0.9/docs/tutorial.html 2019-04-15 17:39:18.000000000 +0200
+++ new/alembic-1.0.10/docs/tutorial.html 2019-04-28 20:55:31.000000000 +0200
@@ -4,7 +4,7 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
- <title>Tutorial — Alembic 1.0.9 documentation</title>
+ <title>Tutorial — Alembic 1.0.10 documentation</title>
<link rel="stylesheet" href="_static/nature_override.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="stylesheet" type="text/css" href="_static/changelog.css" />
@@ -34,7 +34,7 @@
<li class="right" >
<a href="front.html" title="Front Matter"
accesskey="P">previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
@@ -651,7 +651,7 @@
<li class="right" >
<a href="front.html" title="Front Matter"
>previous</a> |</li>
- <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.9 documentation</a> »</li>
+ <li class="nav-item nav-item-0"><a href="index.html">Alembic 1.0.10 documentation</a> »</li>
</ul>
</div>
<div class="footer" role="contentinfo">
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/tests/test_command.py new/alembic-1.0.10/tests/test_command.py
--- old/alembic-1.0.9/tests/test_command.py 2019-04-15 17:38:12.000000000 +0200
+++ new/alembic-1.0.10/tests/test_command.py 2019-04-28 20:54:37.000000000 +0200
@@ -1,4 +1,5 @@
from contextlib import contextmanager
+import inspect
from io import BytesIO
from io import TextIOWrapper
import re
@@ -758,3 +759,42 @@
finally:
config.command.revision = orig_revision
eq_(canary.mock_calls, [mock.call(self.cfg, message="foo")])
+
+ def test_help_text(self):
+ commands = {
+ fn.__name__
+ for fn in [getattr(command, n) for n in dir(command)]
+ if inspect.isfunction(fn)
+ and fn.__name__[0] != "_"
+ and fn.__module__ == "alembic.command"
+ }
+ # make sure we found them
+ assert commands.intersection(
+ {"upgrade", "downgrade", "merge", "revision"}
+ )
+
+ # catch help text coming intersection
+ with mock.patch("alembic.config.ArgumentParser") as argparse:
+ config.CommandLine()
+ for kall in argparse().add_subparsers().mock_calls:
+ for sub_kall in kall.call_list():
+ if sub_kall[0] == "add_parser":
+ cmdname = sub_kall[1][0]
+ help_text = sub_kall[2]["help"]
+ if help_text:
+ commands.remove(cmdname)
+ # more than two spaces
+ assert not re.search(r" ", help_text)
+
+ # no markup stuff
+ assert ":" not in help_text
+
+ # no newlines
+ assert "\n" not in help_text
+
+ # ends with a period
+ assert help_text.endswith(".")
+
+ # not too long
+ assert len(help_text) < 80
+ assert not commands, "Commands without help text: %s" % commands
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/tests/test_mysql.py new/alembic-1.0.10/tests/test_mysql.py
--- old/alembic-1.0.9/tests/test_mysql.py 2019-04-15 17:38:12.000000000 +0200
+++ new/alembic-1.0.10/tests/test_mysql.py 2019-04-28 20:54:37.000000000 +0200
@@ -453,6 +453,9 @@
def test_compare_timestamp_current_timestamp_diff(self):
self._compare_default_roundtrip(TIMESTAMP(), None, "CURRENT_TIMESTAMP")
+ def test_compare_integer_from_none(self):
+ self._compare_default_roundtrip(Integer(), None, "0")
+
def test_compare_integer_same(self):
self._compare_default_roundtrip(Integer(), "5")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alembic-1.0.9/tests/test_revision.py new/alembic-1.0.10/tests/test_revision.py
--- old/alembic-1.0.9/tests/test_revision.py 2019-04-15 17:38:12.000000000 +0200
+++ new/alembic-1.0.10/tests/test_revision.py 2019-04-28 20:54:37.000000000 +0200
@@ -3,12 +3,46 @@
from alembic.script.revision import RevisionError
from alembic.script.revision import RevisionMap
from alembic.testing import assert_raises_message
+from alembic.testing import config
from alembic.testing import eq_
from alembic.testing.fixtures import TestBase
from . import _large_map
class APITest(TestBase):
+ @config.requirements.python3
+ def test_invalid_datatype(self):
+ map_ = RevisionMap(
+ lambda: [
+ Revision("a", ()),
+ Revision("b", ("a",)),
+ Revision("c", ("b",)),
+ ]
+ )
+ assert_raises_message(
+ RevisionError,
+ "revision identifier b'12345' is not a string; "
+ "ensure database driver settings are correct",
+ map_.get_revisions, b'12345'
+ )
+
+ assert_raises_message(
+ RevisionError,
+ "revision identifier b'12345' is not a string; "
+ "ensure database driver settings are correct",
+ map_.get_revision, b'12345'
+ )
+
+ assert_raises_message(
+ RevisionError,
+ r"revision identifier \(b'12345',\) is not a string; "
+ "ensure database driver settings are correct",
+ map_.get_revision, (b'12345', )
+ )
+
+ map_.get_revision(("a", ))
+ map_.get_revision("a")
+
def test_add_revision_one_head(self):
map_ = RevisionMap(
lambda: [
1
0
Hello community,
here is the log from the commit of package python-cassandra-driver for openSUSE:Factory checked in at 2019-05-06 13:28:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-cassandra-driver (Old)
and /work/SRC/openSUSE:Factory/.python-cassandra-driver.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-cassandra-driver"
Mon May 6 13:28:21 2019 rev:8 rq:700973 version:3.17.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-cassandra-driver/python-cassandra-driver.changes 2019-03-04 09:22:45.872575184 +0100
+++ /work/SRC/openSUSE:Factory/.python-cassandra-driver.new.5148/python-cassandra-driver.changes 2019-05-06 13:28:25.141407151 +0200
@@ -1,0 +2,8 @@
+Sat May 4 19:56:15 UTC 2019 - Arun Persaud <arun(a)gmx.de>
+
+- update to version 3.17.1:
+ * Bug Fixes
+ + Socket errors EAGAIN/EWOULDBLOCK are not handled properly and
+ cause timeouts (PYTHON-1089)
+
+-------------------------------------------------------------------
Old:
----
3.17.0.tar.gz
New:
----
3.17.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-cassandra-driver.spec ++++++
--- /var/tmp/diff_new_pack.whD4Ux/_old 2019-05-06 13:28:25.609408170 +0200
+++ /var/tmp/diff_new_pack.whD4Ux/_new 2019-05-06 13:28:25.609408170 +0200
@@ -18,7 +18,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-cassandra-driver
-Version: 3.17.0
+Version: 3.17.1
Release: 0
Summary: Python driver for Cassandra
License: Apache-2.0
++++++ 3.17.0.tar.gz -> 3.17.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-driver-3.17.0/CHANGELOG.rst new/python-driver-3.17.1/CHANGELOG.rst
--- old/python-driver-3.17.0/CHANGELOG.rst 2019-02-15 22:05:51.000000000 +0100
+++ new/python-driver-3.17.1/CHANGELOG.rst 2019-05-02 13:27:51.000000000 +0200
@@ -1,3 +1,11 @@
+3.17.1
+======
+May 2, 2019
+
+Bug Fixes
+---------
+* Socket errors EAGAIN/EWOULDBLOCK are not handled properly and cause timeouts (PYTHON-1089)
+
3.17.0
======
February 19, 2019
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-driver-3.17.0/build.yaml new/python-driver-3.17.1/build.yaml
--- old/python-driver-3.17.0/build.yaml 2019-02-15 22:05:51.000000000 +0100
+++ new/python-driver-3.17.1/build.yaml 2019-05-02 13:27:51.000000000 +0200
@@ -43,6 +43,17 @@
- python: [3.4, 3.6]
- cassandra: ['2.0', '2.1', '3.0']
+ commit_branches:
+ schedule: per_commit
+ branches:
+ include: [/.+release/]
+ env_vars: |
+ EVENT_LOOP_MANAGER='libev'
+ EXCLUDE_LONG=1
+ matrix:
+ exclude:
+ - python: [3.4, 3.6]
+
weekly_libev:
schedule: 0 10 * * 6
branches:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-driver-3.17.0/cassandra/__init__.py new/python-driver-3.17.1/cassandra/__init__.py
--- old/python-driver-3.17.0/cassandra/__init__.py 2019-02-15 22:05:51.000000000 +0100
+++ new/python-driver-3.17.1/cassandra/__init__.py 2019-05-02 13:27:51.000000000 +0200
@@ -22,7 +22,7 @@
logging.getLogger('cassandra').addHandler(NullHandler())
-__version_info__ = (3, 17, 0)
+__version_info__ = (3, 17, 1)
__version__ = '.'.join(map(str, __version_info__))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-driver-3.17.0/cassandra/io/asyncorereactor.py new/python-driver-3.17.1/cassandra/io/asyncorereactor.py
--- old/python-driver-3.17.0/cassandra/io/asyncorereactor.py 2019-02-15 22:05:51.000000000 +0100
+++ new/python-driver-3.17.1/cassandra/io/asyncorereactor.py 2019-05-02 13:27:51.000000000 +0200
@@ -426,12 +426,14 @@
except socket.error as err:
if ssl and isinstance(err, ssl.SSLError):
if err.args[0] in (ssl.SSL_ERROR_WANT_READ, ssl.SSL_ERROR_WANT_WRITE):
- return
+ if not self._iobuf.tell():
+ return
else:
self.defunct(err)
return
elif err.args[0] in NONBLOCKING:
- return
+ if not self._iobuf.tell():
+ return
else:
self.defunct(err)
return
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-driver-3.17.0/cassandra/io/libevreactor.py new/python-driver-3.17.1/cassandra/io/libevreactor.py
--- old/python-driver-3.17.0/cassandra/io/libevreactor.py 2019-02-15 22:05:51.000000000 +0100
+++ new/python-driver-3.17.1/cassandra/io/libevreactor.py 2019-05-02 13:27:51.000000000 +0200
@@ -346,12 +346,14 @@
except socket.error as err:
if ssl and isinstance(err, ssl.SSLError):
if err.args[0] in (ssl.SSL_ERROR_WANT_READ, ssl.SSL_ERROR_WANT_WRITE):
- return
+ if not self._iobuf.tell():
+ return
else:
self.defunct(err)
return
elif err.args[0] in NONBLOCKING:
- return
+ if not self._iobuf.tell():
+ return
else:
self.defunct(err)
return
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/python-driver-3.17.0/tests/unit/io/utils.py new/python-driver-3.17.1/tests/unit/io/utils.py
--- old/python-driver-3.17.0/tests/unit/io/utils.py 2019-02-15 22:05:51.000000000 +0100
+++ new/python-driver-3.17.1/tests/unit/io/utils.py 2019-05-02 13:27:51.000000000 +0200
@@ -19,7 +19,10 @@
SupportedMessage, ReadyMessage, ServerError)
from tests import is_monkey_patched
+import io
+import random
from functools import wraps
+from itertools import cycle
import six
from six import binary_type, BytesIO
from mock import Mock
@@ -258,42 +261,62 @@
self._check_error_recovery_on_buffer_size(errno.EWOULDBLOCK)
def test_sslwantread_on_buffer_size(self):
- self._check_error_recovery_on_buffer_size(ssl.SSL_ERROR_WANT_READ)
+ self._check_error_recovery_on_buffer_size(
+ ssl.SSL_ERROR_WANT_READ,
+ error_class=ssl.SSLError)
def test_sslwantwrite_on_buffer_size(self):
- self._check_error_recovery_on_buffer_size(ssl.SSL_ERROR_WANT_WRITE)
+ self._check_error_recovery_on_buffer_size(
+ ssl.SSL_ERROR_WANT_WRITE,
+ error_class=ssl.SSLError)
- def _check_error_recovery_on_buffer_size(self, error_code):
+ def _check_error_recovery_on_buffer_size(self, error_code, error_class=socket_error):
c = self.test_successful_connection()
- header = six.b('\x00\x00\x00\x00') + int32_pack(20000)
- responses = [
- header + (six.b('a') * (4096 - len(header))),
- six.b('a') * 4096,
- socket_error(error_code),
- six.b('a') * 100,
- socket_error(error_code)]
-
- def side_effect(*args):
- response = responses.pop(0)
- log.debug('about to mock return {}'.format(response))
- if isinstance(response, socket_error):
+ # current data, used by the recv side_effect
+ message_chunks = None
+
+ def recv_side_effect(*args):
+ response = message_chunks.pop(0)
+ if isinstance(response, error_class):
raise response
else:
return response
- self.get_socket(c).recv.side_effect = side_effect
- c.handle_read(*self.null_handle_function_args)
- # the EAGAIN prevents it from reading the last 100 bytes
- c._iobuf.seek(0, os.SEEK_END)
- pos = c._iobuf.tell()
- self.assertEqual(pos, 4096 + 4096)
-
- # now tell it to read the last 100 bytes
- c.handle_read(*self.null_handle_function_args)
- c._iobuf.seek(0, os.SEEK_END)
- pos = c._iobuf.tell()
- self.assertEqual(pos, 4096 + 4096 + 100)
+ # setup
+ self.get_socket(c).recv.side_effect = recv_side_effect
+ c.process_io_buffer = Mock()
+
+ def chunk(size):
+ return six.b('a') * size
+
+ buf_size = c.in_buffer_size
+
+ # List of messages to test. A message = (chunks, expected_read_size)
+ messages = [
+ ([chunk(200)], 200),
+ ([chunk(200), chunk(200)], 200), # first chunk < in_buffer_size, process the message
+ ([chunk(buf_size), error_class(error_code)], buf_size),
+ ([chunk(buf_size), chunk(buf_size), error_class(error_code)], buf_size*2),
+ ([chunk(buf_size), chunk(buf_size), chunk(10)], (buf_size*2) + 10),
+ ([chunk(buf_size), chunk(buf_size), error_class(error_code), chunk(10)], buf_size*2),
+ ([error_class(error_code), chunk(buf_size)], 0)
+ ]
+
+ for message, expected_size in messages:
+ message_chunks = message
+ c._iobuf = io.BytesIO()
+ c.process_io_buffer.reset_mock()
+ c.handle_read(*self.null_handle_function_args)
+ c._iobuf.seek(0, os.SEEK_END)
+
+ # Ensure the message size is the good one and that the
+ # message has been processed if it is non-empty
+ self.assertEqual(c._iobuf.tell(), expected_size)
+ if expected_size == 0:
+ c.process_io_buffer.assert_not_called()
+ else:
+ c.process_io_buffer.assert_called_once_with()
def test_protocol_error(self):
c = self.make_connection()
@@ -450,3 +473,41 @@
self.assertTrue(c.connected_event.is_set())
self.assertFalse(c.is_defunct)
+
+ def test_mixed_message_and_buffer_sizes(self):
+ """
+ Validate that all messages are processed with different scenarios:
+
+ - various message sizes
+ - various socket buffer sizes
+ - random non-fatal errors raised
+ """
+ c = self.make_connection()
+ c.process_io_buffer = Mock()
+
+ errors = cycle([
+ ssl.SSLError(ssl.SSL_ERROR_WANT_READ),
+ ssl.SSLError(ssl.SSL_ERROR_WANT_WRITE),
+ socket_error(errno.EWOULDBLOCK),
+ socket_error(errno.EAGAIN)
+ ])
+
+ for buffer_size in [512, 1024, 2048, 4096, 8192]:
+ c.in_buffer_size = buffer_size
+
+ for i in range(1, 15):
+ c.process_io_buffer.reset_mock()
+ c._iobuf = io.BytesIO()
+ message = io.BytesIO(six.b('a') * (2**i))
+
+ def recv_side_effect(*args):
+ if random.randint(1,10) % 3 == 0:
+ raise next(errors)
+ return message.read(args[0])
+
+ self.get_socket(c).recv.side_effect = recv_side_effect
+ c.handle_read(*self.null_handle_function_args)
+ if c._iobuf.tell():
+ c.process_io_buffer.assert_called_once()
+ else:
+ c.process_io_buffer.assert_not_called()
1
0
Hello community,
here is the log from the commit of package python-sybil for openSUSE:Factory checked in at 2019-05-06 13:28:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-sybil (Old)
and /work/SRC/openSUSE:Factory/.python-sybil.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-sybil"
Mon May 6 13:28:19 2019 rev:7 rq:700972 version:1.2.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-sybil/python-sybil.changes 2019-03-29 20:42:34.754678409 +0100
+++ /work/SRC/openSUSE:Factory/.python-sybil.new.5148/python-sybil.changes 2019-05-06 13:28:21.781399836 +0200
@@ -1,0 +2,15 @@
+Fri May 3 11:20:28 UTC 2019 - pgajdos(a)suse.com
+
+- version update to 1.2.0
+ * Only compile code in :ref:`codeblocks <codeblock-parser>` at evaluation time,
+ giving :ref:`skip <skip-parser>` a chance to skip code blocks that won't
+ compile on a particular version of Python.
+ * Add warning about the limitations of
+ :attr:`~sybil.parsers.doctest.FIX_BYTE_UNICODE_REPR`.
+ * Support explicit filenames to include and patterns to exclude
+ when instantiating a :class:`~sybil.Sybil`.
+ * Add the :ref:`skip <skip-parser>` parser.
+- deleted patches
+ - sybil-pytest4.patch (upstreamed)
+
+-------------------------------------------------------------------
Old:
----
sybil-1.0.9.tar.gz
sybil-pytest4.patch
New:
----
sybil-1.2.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-sybil.spec ++++++
--- /var/tmp/diff_new_pack.l9HO7S/_old 2019-05-06 13:28:23.209402945 +0200
+++ /var/tmp/diff_new_pack.l9HO7S/_new 2019-05-06 13:28:23.249403032 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-sybil
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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
@@ -18,14 +18,13 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-sybil
-Version: 1.0.9
+Version: 1.2.0
Release: 0
Summary: Automated testing of examples in documentation
License: MIT
Group: Development/Languages/Python
Url: https://github.com/cjw296/sybil
Source: https://files.pythonhosted.org/packages/source/s/sybil/sybil-%{version}.tar…
-Patch0: sybil-pytest4.patch
BuildRequires: %{python_module nose}
BuildRequires: %{python_module pytest >= 3.5.0}
BuildRequires: %{python_module setuptools-git}
@@ -46,7 +45,6 @@
%prep
%setup -q -n sybil-%{version}
-%patch0 -p1
sed -i '/build=/d;/coveralls/d' setup.py
%build
++++++ sybil-1.0.9.tar.gz -> sybil-1.2.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/.carthorse.yml new/sybil-1.2.0/.carthorse.yml
--- old/sybil-1.0.9/.carthorse.yml 1970-01-01 01:00:00.000000000 +0100
+++ new/sybil-1.2.0/.carthorse.yml 2019-04-28 08:57:09.000000000 +0200
@@ -0,0 +1,10 @@
+carthorse:
+ version-from: setup.py
+ tag-format: "{version}"
+ when:
+ - version-not-tagged
+ actions:
+ - run: "sudo pip install -e .[build]"
+ - run: "sudo python setup.py sdist bdist_wheel"
+ - run: "twine upload -u chrisw -p $PYPI_PASS dist/*"
+ - create-tag
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/.circleci/config.yml new/sybil-1.2.0/.circleci/config.yml
--- old/sybil-1.0.9/.circleci/config.yml 1970-01-01 01:00:00.000000000 +0100
+++ new/sybil-1.2.0/.circleci/config.yml 2019-04-28 08:57:09.000000000 +0200
@@ -0,0 +1,41 @@
+version: 2.1
+
+orbs:
+ python: cjw296/python-ci(a)1.2
+
+common: &common
+ jobs:
+
+ - python/pip-run-tests:
+ name: python27
+ image: circleci/python:2.7
+ - python/pip-run-tests:
+ name: python37
+ image: circleci/python:3.7
+
+ - python/coverage:
+ name: coverage
+ requires:
+ - python27
+ - python37
+
+ - python/release:
+ name: release
+ config: .carthorse.yml
+ requires:
+ - coverage
+ filters:
+ branches:
+ only: master
+
+workflows:
+ push:
+ <<: *common
+ periodic:
+ <<: *common
+ triggers:
+ - schedule:
+ cron: "0 0 * * 2"
+ filters:
+ branches:
+ only: master
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/.readthedocs.yml new/sybil-1.2.0/.readthedocs.yml
--- old/sybil-1.0.9/.readthedocs.yml 1970-01-01 01:00:00.000000000 +0100
+++ new/sybil-1.2.0/.readthedocs.yml 2019-04-28 08:57:09.000000000 +0200
@@ -0,0 +1,8 @@
+version: 2
+python:
+ version: 3.7
+ install:
+ - method: pip
+ path: .
+ extra_requirements:
+ - build
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/.travis.yml new/sybil-1.2.0/.travis.yml
--- old/sybil-1.0.9/.travis.yml 2018-08-01 08:42:42.000000000 +0200
+++ new/sybil-1.2.0/.travis.yml 1970-01-01 01:00:00.000000000 +0100
@@ -1,30 +0,0 @@
-language: python
-
-# for container-y goodness:
-sudo: false
-
-python:
- - "2.7"
- - "3.6"
-
-install:
- - "pip install --upgrade pip setuptools"
- - "pip install -Ue .[test,build]"
-
-# command to run tests, e.g. python setup.py test
-script: coverage run --timid --source sybil,tests -m py.test
-
-after_success:
- - coveralls
-
-deploy:
- provider: pypi
- user: chrisw
- password:
- secure: p6Cl2uxMjdZRAz8VX+TMSFymCTVnFSA9LycOH9ZUEnbzDtqwnDV8lzZR48NXrMO1xDZ5Q4/qJm2UDh5ulMd60hotXM7IvUBCTQN1z1FwIJwig0xUrz3qKavuYehSsJ0ow+fdFKN1W4Y1wWl9pltuQ9OUUVKFR4AGZ1pdvT56O8+/cwHA/CbEO8LrRnLjoj3xfVoo+v8mUF6Z1ETQ28TV6HbROM6jKCcQ3Ol5IVpxqgbGH5GLeY9zE1Kua9wfkuBKYyIG0wm6iOU4OaXdVOg4X1G1mdECKx6ZCB71kVy6JeimNMBjzbs45zNj/IRxC5cFXNDDKn19HqBC+aQNsMh1+dgwC3LgJXyysVlY+M/Uic4ZsFvsZ3AbDQRVEneivfqh+KMLzY8PoJOgqcx4MNTU4brxuzfiu/KS3IF69xBfXSmsu2UOi/ePFidDHfNhdsa8+NBbYQrJYJIxbIm/YPE/prDVqR3eAsQZBtyE+6yTecvmqu1mmyYjvzcrQ27/n1NS/L1g6I8BZjRFws4WlSiMlVbVV9QBl/AhICwpJZHxateM7/kf+bbEGVacV/VWn9sIDOl6jMAE0IeN2gLdTO+Dj2z8tyV6c8tMFH1JeZ31CGN67oO4kb397kfDN14o7KNfFb+wxOHOzOZYwfvMYjLoPD5AdMsPbm4inpVooN5irhU=
- on:
- tags: true
- repo: cjw296/sybil
- python: "3.6"
- skip_cleanup: true
- distributions: "sdist bdist_wheel"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/PKG-INFO new/sybil-1.2.0/PKG-INFO
--- old/sybil-1.0.9/PKG-INFO 2018-08-01 08:43:23.000000000 +0200
+++ new/sybil-1.2.0/PKG-INFO 2019-04-28 08:57:30.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: sybil
-Version: 1.0.9
+Version: 1.2.0
Summary: Automated testing for the examples in your documentation.
Home-page: https://github.com/cjw296/sybil
Author: Chris Withers
@@ -25,5 +25,6 @@
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
+Classifier: Programming Language :: Python :: 3.7
Provides-Extra: build
Provides-Extra: test
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/docs/api.rst new/sybil-1.2.0/docs/api.rst
--- old/sybil-1.0.9/docs/api.rst 2018-08-01 08:42:42.000000000 +0200
+++ new/sybil-1.2.0/docs/api.rst 2019-04-28 08:57:09.000000000 +0200
@@ -18,3 +18,6 @@
.. automodule:: sybil.parsers.capture
:members:
+
+.. automodule:: sybil.parsers.skip
+ :members:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/docs/changes.rst new/sybil-1.2.0/docs/changes.rst
--- old/sybil-1.0.9/docs/changes.rst 2018-08-01 08:42:42.000000000 +0200
+++ new/sybil-1.2.0/docs/changes.rst 2019-04-28 08:57:09.000000000 +0200
@@ -1,6 +1,29 @@
Changes
=======
+1.2.0 (28 Apr 2019)
+-------------------
+
+- Only compile code in :ref:`codeblocks <codeblock-parser>` at evaluation time,
+ giving :ref:`skip <skip-parser>` a chance to skip code blocks that won't
+ compile on a particular version of Python.
+
+1.1.0 (25 Apr 2019)
+-------------------
+
+- Move to CircleCI__ and Carthorse__.
+
+ __ https://circleci.com/gh/cjw296/sybil
+ __ https://github.com/cjw296/carthorse
+
+- Add warning about the limitations of
+ :attr:`~sybil.parsers.doctest.FIX_BYTE_UNICODE_REPR`.
+
+- Support explicit filenames to include and patterns to exclude
+ when instantiating a :class:`~sybil.Sybil`.
+
+- Add the :ref:`skip <skip-parser>` parser.
+
1.0.9 (1 Aug 2018)
------------------
@@ -16,7 +39,7 @@
- Literal tabs may no longer be included in text that is parsed by the
:class:`~sybil.parsers.doctest.DocTestParser`. Previously, tabs were
- expanded which could unpleasant problems.
+ expanded which could cause unpleasant problems.
1.0.6 (30 November 2017)
------------------------
@@ -54,7 +77,7 @@
-------------------
- Fix bug where unicode and byte literals weren't corrected in doctest
- tracebacks, event when :attr:`sybil.parsers.doctest.FIX_BYTE_UNICODE_REPR`
+ tracebacks, even when :attr:`sybil.parsers.doctest.FIX_BYTE_UNICODE_REPR`
was specified.
1.0.0 (26 May 2017)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/docs/conf.py new/sybil-1.2.0/docs/conf.py
--- old/sybil-1.0.9/docs/conf.py 2018-08-01 08:42:42.000000000 +0200
+++ new/sybil-1.2.0/docs/conf.py 2019-04-28 08:57:09.000000000 +0200
@@ -1,8 +1,7 @@
# -*- coding: utf-8 -*-
-import sys, os, pkginfo, datetime
+import os, pkg_resources, datetime
on_rtd = os.environ.get('READTHEDOCS', None) == 'True'
-pkg_info = pkginfo.Develop(os.path.join(os.path.dirname(__file__),'..'))
intersphinx_mapping = {
'https://docs.python.org/3/': None,
@@ -17,14 +16,13 @@
# General
source_suffix = '.rst'
master_doc = 'index'
-project = pkg_info.name
+project = 'sybil'
copyright = '2017 - %s Chris Withers' % datetime.datetime.now().year
-version = release = pkg_info.version
+version = release = pkg_resources.get_distribution(project).version
exclude_patterns = [
'description.rst',
'_build',
- 'example.rst',
- 'example',
+ 'example*',
]
pygments_style = 'sphinx'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/docs/conftest.py new/sybil-1.2.0/docs/conftest.py
--- old/sybil-1.0.9/docs/conftest.py 2018-08-01 08:42:42.000000000 +0200
+++ new/sybil-1.2.0/docs/conftest.py 2019-04-28 08:57:09.000000000 +0200
@@ -3,12 +3,14 @@
from sybil.parsers.capture import parse_captures
from sybil.parsers.codeblock import CodeBlockParser
from sybil.parsers.doctest import DocTestParser, FIX_BYTE_UNICODE_REPR
+from sybil.parsers.skip import skip
pytest_collect_file = Sybil(
parsers=[
DocTestParser(optionflags=ELLIPSIS|FIX_BYTE_UNICODE_REPR),
CodeBlockParser(future_imports=['print_function']),
parse_captures,
+ skip,
],
pattern='*.rst',
).pytest()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/docs/example-skip.rst new/sybil-1.2.0/docs/example-skip.rst
--- old/sybil-1.0.9/docs/example-skip.rst 1970-01-01 01:00:00.000000000 +0100
+++ new/sybil-1.2.0/docs/example-skip.rst 2019-04-28 08:57:09.000000000 +0200
@@ -0,0 +1,26 @@
+.. skip: next
+
+This would be wrong:
+
+>>> 1 == 2
+True
+
+This is pseudo-code:
+
+.. skip: start
+
+>>> foo = ...
+>>> foo(..)
+
+.. skip: end
+
+.. invisible-code-block: python
+
+ import sys
+
+This will only work on Python 3:
+
+.. skip: next if(sys.version_info < (3, 0), reason="python 3 only")
+
+>>> repr(b'foo')
+"b'foo'"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/docs/parsers.rst new/sybil-1.2.0/docs/parsers.rst
--- old/sybil-1.0.9/docs/parsers.rst 2018-08-01 08:42:42.000000000 +0200
+++ new/sybil-1.2.0/docs/parsers.rst 2019-04-28 08:57:09.000000000 +0200
@@ -6,7 +6,7 @@
are as expected. A number of parsers are included, and it's simple enough to
write your own. The included parsers are as follows:
-.. _capture-doctest:
+.. _doctest-parser:
doctest
-------
@@ -27,7 +27,15 @@
with the required options and passing it as an element in the list passed as the
``parsers`` parameter to :class:`~sybil.Sybil`.
-.. _capture-codeblock:
+.. warning::
+
+ :attr:`~sybil.parsers.doctest.FIX_BYTE_UNICODE_REPR` is quite simplistic. It will catch
+ examples but you may hit problems where, for example, ``['b', '']`` in expected
+ output will be rewritten as ``['', '']`` on Python 2 and ``['u', '']`` as ``['', '']``.
+ on Python 3. To work around this, either only run Sybil on Python 3 and do not
+ use this option, or pick different example output.
+
+.. _codeblock-parser:
codeblock
---------
@@ -122,6 +130,47 @@
as an element in the list passed as the
``parsers`` parameter to :class:`~sybil.Sybil`.
+.. _skip-parser:
+
+skip
+----
+
+This parser takes advantage of Sphinx `comment`__ syntax to introduce
+special comments that allow other examples in the document to be skipped.
+This can be useful if they include pseudo code or examples that can only be
+evaluated on a particular version of Python.
+
+__ http://www.sphinx-doc.org/en/stable/rest.html#comments
+
+For example:
+
+.. literalinclude:: example-skip.rst
+ :language: rest
+ :lines: 1-6
+
+If you need to skip a collection of examples, this can be done as follows:
+
+.. literalinclude:: example-skip.rst
+ :language: rest
+ :lines: 8-15
+
+You can also add conditions to either ``next`` or ``start`` as shown below:
+
+.. literalinclude:: example-skip.rst
+ :language: rest
+ :lines: 17-
+
+As you can see, any names used in the expression passed to ``if`` must be
+present in the document's :attr:`~sybil.document.Document.namespace`.
+:ref:`invisible code blocks <codeblock-parser>`, :class:`setup <sybil.Sybil>`
+methods or :ref:`fixtures <pytest_integration>` are good ways to provide these.
+
+The parser is used by including :func:`sybil.parsers.skip.skip`
+as an element in the list passed as the
+``parsers`` parameter to :class:`~sybil.Sybil`.
+
+.. _developing-parsers:
+
Developing your own parsers
---------------------------
@@ -135,7 +184,8 @@
:class:`~sybil.document.Document` and the :class:`~sybil.Region`
and should either raise an exception or return a textual description in the
event of the example not being as expected. Evaluators may also
-modify the document's :attr:`~sybil.document.Document.namespace`.
+modify the document's :attr:`~sybil.document.Document.namespace`
+or :attr:`~sybil.document.Document.evaluator`.
As an example, let's look at a parser suitable for evaluating bash commands
in a subprocess and checking the output is as expected::
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/requirements.txt new/sybil-1.2.0/requirements.txt
--- old/sybil-1.0.9/requirements.txt 2018-08-01 08:42:42.000000000 +0200
+++ new/sybil-1.2.0/requirements.txt 1970-01-01 01:00:00.000000000 +0100
@@ -1 +0,0 @@
--e .[build]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/setup.py new/sybil-1.2.0/setup.py
--- old/sybil-1.0.9/setup.py 2018-08-01 08:42:42.000000000 +0200
+++ new/sybil-1.2.0/setup.py 2019-04-28 08:57:09.000000000 +0200
@@ -9,7 +9,7 @@
setup(
name='sybil',
- version='1.0.9',
+ version='1.2.0',
author='Chris Withers',
author_email='chris(a)withers.org',
license='MIT',
@@ -24,15 +24,16 @@
'Programming Language :: Python :: 2.7',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.6',
+ 'Programming Language :: Python :: 3.7',
],
packages=find_packages(exclude=['tests', 'functional_tests']),
zip_safe=False,
include_package_data=True,
extras_require=dict(
test=[
- 'coveralls',
'nose',
'pytest>=3.5.0',
+ 'pytest-cov',
],
build=['sphinx', 'pkginfo', 'setuptools-git', 'twine', 'wheel']
),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/sybil/document.py new/sybil-1.2.0/sybil/document.py
--- old/sybil-1.0.9/sybil/document.py 2018-08-01 08:42:42.000000000 +0200
+++ new/sybil-1.2.0/sybil/document.py 2019-04-28 08:57:09.000000000 +0200
@@ -10,6 +10,14 @@
It will be instantiated by Sybil and provided to each parser in turn.
"""
+ #: This can be set by :ref:`evaluators <developing-parsers>` to affect the evaluation
+ #: of future examples. It can be set to a callable that takes an
+ #: :class:`~sybil.example.Example`. This callable can then do whatever it needs to do,
+ #: including not executing the example at all, modifying it, or the
+ #: :class:`~sybil.document.Document` or calling the original evaluator on the example.
+ #: This last case should always take the form of ``example.region.evaluator(example)``.
+ evaluator = None
+
def __init__(self, text, path):
#: This is the text of the documentation source file.
self.text = text
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/sybil/example.py new/sybil-1.2.0/sybil/example.py
--- old/sybil-1.0.9/sybil/example.py 2018-08-01 08:42:42.000000000 +0200
+++ new/sybil-1.2.0/sybil/example.py 2019-04-28 08:57:09.000000000 +0200
@@ -49,6 +49,7 @@
)
def evaluate(self):
- result = self.region.evaluator(self)
+ evaluator = self.document.evaluator or self.region.evaluator
+ result = evaluator(self)
if result:
raise SybilFailure(self, result)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/sybil/integration/pytest.py new/sybil-1.2.0/sybil/integration/pytest.py
--- old/sybil-1.0.9/sybil/integration/pytest.py 2018-08-01 08:42:42.000000000 +0200
+++ new/sybil-1.2.0/sybil/integration/pytest.py 2019-04-28 08:57:09.000000000 +0200
@@ -45,7 +45,7 @@
closure = fm.getfixtureclosure(names, self)
try:
initialnames, names_closure, arg2fixturedefs = closure
- except ValueError:
+ except ValueError: # pragma: no cover
# pytest < 3.7
names_closure, arg2fixturedefs = closure
fixtureinfo = FuncFixtureInfo(names, names_closure, arg2fixturedefs)
@@ -80,10 +80,7 @@
# Messier than it could be because slicing a list subclass in
# Python 2 returns a list, not an instance of the subclass.
tb = excinfo.traceback.cut(path=example_module_path)
- try:
- tb = tb[1]
- except IndexError:
- pass
+ tb = tb[1]
if getattr(tb, '_rawentry', None) is not None:
excinfo.traceback = Traceback(tb._rawentry, excinfo)
@@ -116,7 +113,7 @@
def pytest_integration(sybil):
def pytest_collect_file(parent, path):
- if path.fnmatch(sybil.pattern):
+ if sybil.should_test_filename(path.basename):
return SybilFile(path, parent, sybil)
return pytest_collect_file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/sybil/parsers/codeblock.py new/sybil-1.2.0/sybil/parsers/codeblock.py
--- old/sybil-1.0.9/sybil/parsers/codeblock.py 2018-08-01 08:42:42.000000000 +0200
+++ new/sybil-1.2.0/sybil/parsers/codeblock.py 2019-04-28 08:57:09.000000000 +0200
@@ -10,8 +10,13 @@
re.MULTILINE)
+def compile_codeblock(source, path):
+ return compile(source, path, 'exec', dont_inherit=True)
+
+
def evaluate_code_block(example):
- exec(example.parsed, example.namespace)
+ code = compile_codeblock(example.parsed, example.document.path)
+ exec(code, example.namespace)
# exec adds __builtins__, we don't want it:
del example.namespace['__builtins__']
@@ -19,7 +24,7 @@
class CodeBlockParser(object):
"""
A class to instantiate and include when your documentation makes use of
- :ref:`capture-codeblock` examples.
+ :ref:`codeblock-parser` examples.
:param future_imports:
An optional list of strings that will be turned into
@@ -48,10 +53,9 @@
)
line_prefix = '\n' * line_count
source = line_prefix + source
- code = compile(source, document.path, 'exec', dont_inherit=True)
yield Region(
start_match.start(),
source_end,
- code,
+ source,
evaluate_code_block
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/sybil/parsers/doctest.py new/sybil-1.2.0/sybil/parsers/doctest.py
--- old/sybil-1.0.9/sybil/parsers/doctest.py 2018-08-01 08:42:42.000000000 +0200
+++ new/sybil-1.2.0/sybil/parsers/doctest.py 2019-04-28 08:57:09.000000000 +0200
@@ -13,8 +13,14 @@
from ..compat import PY3
from ..region import Region
-BYTE_LITERAL = re.compile(r"b((['\"])[^\2]*\2)", re.MULTILINE)
-UNICODE_LITERAL = re.compile(r"u((['\"])[^\2]*\2)", re.MULTILINE)
+
+def make_literal(literal):
+ return re.compile(literal+r"((['\"])[^\2]*\2)", re.MULTILINE)
+
+
+BYTE_LITERAL = make_literal('b')
+UNICODE_LITERAL = make_literal('u')
+
#: A :ref:`doctest option flag<option-flags-and-directives>` that
#: causes byte and unicode literals in doctest expected
@@ -52,7 +58,7 @@
class DocTestParser(BaseDocTestParser):
"""
A class to instantiate and include when your documentation makes use of
- :ref:`capture-doctest` examples.
+ :ref:`doctest-parser` examples.
:param optionflags:
:ref:`doctest option flags<option-flags-and-directives>` to use
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/sybil/parsers/skip.py new/sybil-1.2.0/sybil/parsers/skip.py
--- old/sybil-1.0.9/sybil/parsers/skip.py 1970-01-01 01:00:00.000000000 +0100
+++ new/sybil-1.2.0/sybil/parsers/skip.py 2019-04-28 08:57:09.000000000 +0200
@@ -0,0 +1,76 @@
+from unittest import SkipTest
+import re
+
+from sybil import Region
+
+SKIP = re.compile(r'^[ \t]*\.\.\s*skip:\s*(\w+)(?:\s+if(.+)$)?', re.MULTILINE)
+
+
+class If:
+
+ def __init__(self, default_reason):
+ self.default_reason = default_reason
+
+ def __call__(self, condition, reason=None):
+ if condition:
+ return reason or self.default_reason
+
+
+class Skip(object):
+
+ def __init__(self, original_evaluator):
+ self.original_evaluator = original_evaluator
+ self.restore_next = False
+ self.reason = None
+
+ def __call__(self, example):
+ document = example.document
+
+ if self.restore_next:
+ document.evaluator = self.original_evaluator
+
+ if example.region.evaluator is evaluate_skip:
+
+ action, condition = example.parsed
+
+ if condition:
+
+ if action == 'end':
+ raise ValueError('Cannot have condition on end')
+
+ namespace = document.namespace.copy()
+ namespace['If'] = If(condition)
+ reason = eval('If'+condition, namespace)
+ if reason:
+ self.reason = SkipTest(reason)
+ else:
+ document.evaluator = self.original_evaluator
+ return
+
+ if action == 'next':
+ self.restore_next = True
+ elif action == 'start':
+ pass
+ elif action == 'end':
+ document.evaluator = self.original_evaluator
+ else:
+ raise ValueError('Bad skip action: '+action)
+
+ elif self.reason:
+ raise self.reason
+
+
+def evaluate_skip(example):
+ evaluator = example.document.evaluator
+ if not isinstance(evaluator, Skip):
+ example.document.evaluator = evaluator = Skip(evaluator)
+ evaluator(example)
+
+
+def skip(document):
+ """
+ A parser function to be included when your documentation makes use of
+ :ref:`skipping <skip-parser>` examples in a document.
+ """
+ for match in re.finditer(SKIP, document.text):
+ yield Region(match.start(), match.end(), match.groups(), evaluate_skip)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/sybil/sybil.py new/sybil-1.2.0/sybil/sybil.py
--- old/sybil-1.0.9/sybil/sybil.py 2018-08-01 08:42:42.000000000 +0200
+++ new/sybil-1.2.0/sybil/sybil.py 2019-04-28 08:57:09.000000000 +0200
@@ -1,10 +1,26 @@
import sys
+from fnmatch import fnmatch
from glob import glob
+from os import listdir
from os.path import join, dirname, abspath
from .document import Document
+class FilenameFilter(object):
+
+ def __init__(self, pattern, filenames, excludes):
+ self.pattern = pattern
+ self.filenames = filenames
+ self.excludes = excludes
+
+ def __call__(self, filename):
+ return (
+ (fnmatch(filename, self.pattern) or filename in self.filenames)
+ and not any(fnmatch(filename, e) for e in self.excludes)
+ )
+
+
class Sybil(object):
"""
An object to provide test runner integration for discovering examples
@@ -16,11 +32,22 @@
:param path:
The path in which documentation source files are found, relative
to the path of the Python source file in which this class is instantiated.
+
+ .. note::
+
+ This is ignored when using the :ref:`pytest integration <pytest_integration>`.
:param pattern:
- A :mod:`glob` used to match files found in the ``path``. Matching files
- will be parsed for examples.
+ An optional :func:`pattern <fnmatch.fnmatch>` used to match documentation source
+ files that will be parsed for examples.
+ :param filenames:
+ An optional :class:`set` of source file names that will be parsed for examples.
+
+ :param excludes:
+ An optional sequence of :func:`patterns <fnmatch.fnmatch>` of source file names
+ that will excluded when looking for examples.
+
:param setup:
An optional callable that will be called once before any examples from
a :class:`~sybil.document.Document` are evaluated. If provided, it is
@@ -39,8 +66,9 @@
inserted into the document's :attr:`~sybil.document.Document.namespace`.
All scopes of fixture are supported.
"""
- def __init__(self, parsers, pattern, path='.',
- setup=None, teardown=None, fixtures=()):
+ def __init__(self, parsers, pattern='', path='.',
+ setup=None, teardown=None, fixtures=(),
+ filenames=(), excludes=()):
self.parsers = parsers
calling_filename = sys._getframe(1).f_globals.get('__file__')
if calling_filename:
@@ -48,7 +76,7 @@
else:
start_path = path
self.path = abspath(start_path)
- self.pattern = pattern
+ self.should_test_filename = FilenameFilter(pattern, filenames, excludes)
self.setup = setup
self.teardown = teardown
self.fixtures = fixtures
@@ -57,8 +85,9 @@
return Document.parse(path, *self.parsers)
def all_documents(self):
- for path in sorted(glob(join(self.path, self.pattern))):
- yield self.parse(path)
+ for filename in sorted(listdir(self.path)):
+ if self.should_test_filename(filename):
+ yield self.parse(join(self.path, filename))
def pytest(self):
"""
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/sybil.egg-info/PKG-INFO new/sybil-1.2.0/sybil.egg-info/PKG-INFO
--- old/sybil-1.0.9/sybil.egg-info/PKG-INFO 2018-08-01 08:43:23.000000000 +0200
+++ new/sybil-1.2.0/sybil.egg-info/PKG-INFO 2019-04-28 08:57:30.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: sybil
-Version: 1.0.9
+Version: 1.2.0
Summary: Automated testing for the examples in your documentation.
Home-page: https://github.com/cjw296/sybil
Author: Chris Withers
@@ -25,5 +25,6 @@
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
+Classifier: Programming Language :: Python :: 3.7
Provides-Extra: build
Provides-Extra: test
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/sybil.egg-info/SOURCES.txt new/sybil-1.2.0/sybil.egg-info/SOURCES.txt
--- old/sybil-1.0.9/sybil.egg-info/SOURCES.txt 2018-08-01 08:43:23.000000000 +0200
+++ new/sybil-1.2.0/sybil.egg-info/SOURCES.txt 2019-04-28 08:57:30.000000000 +0200
@@ -1,9 +1,10 @@
+.carthorse.yml
.gitignore
-.travis.yml
+.readthedocs.yml
README.rst
-requirements.txt
setup.cfg
setup.py
+.circleci/config.yml
docs/Makefile
docs/api.rst
docs/changes.rst
@@ -11,6 +12,7 @@
docs/conftest.py
docs/description.rst
docs/development.rst
+docs/example-skip.rst
docs/example.rst
docs/index.rst
docs/license.rst
@@ -44,6 +46,7 @@
sybil/parsers/capture.py
sybil/parsers/codeblock.py
sybil/parsers/doctest.py
+sybil/parsers/skip.py
tests/__init__.py
tests/helpers.py
tests/test_capture.py
@@ -51,6 +54,7 @@
tests/test_doc_example.py
tests/test_doctest.py
tests/test_functional.py
+tests/test_skip.py
tests/test_sybil.py
tests/functional/functional_unittest/__init__.py
tests/functional/functional_unittest/test_unittest.py
@@ -72,4 +76,8 @@
tests/samples/doctest_min_indent.txt
tests/samples/doctest_tabs.txt
tests/samples/sample1.txt
-tests/samples/sample2.txt
\ No newline at end of file
+tests/samples/sample2.txt
+tests/samples/skip-conditional-bad.txt
+tests/samples/skip-conditional-edges.txt
+tests/samples/skip-conditional.txt
+tests/samples/skip.txt
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/sybil.egg-info/requires.txt new/sybil-1.2.0/sybil.egg-info/requires.txt
--- old/sybil-1.0.9/sybil.egg-info/requires.txt 2018-08-01 08:43:23.000000000 +0200
+++ new/sybil-1.2.0/sybil.egg-info/requires.txt 2019-04-28 08:57:30.000000000 +0200
@@ -7,6 +7,6 @@
wheel
[test]
-coveralls
nose
pytest>=3.5.0
+pytest-cov
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/tests/functional/functional_unittest/test_unittest.py new/sybil-1.2.0/tests/functional/functional_unittest/test_unittest.py
--- old/sybil-1.0.9/tests/functional/functional_unittest/test_unittest.py 2018-08-01 08:42:42.000000000 +0200
+++ new/sybil-1.2.0/tests/functional/functional_unittest/test_unittest.py 2019-04-28 08:57:09.000000000 +0200
@@ -21,7 +21,7 @@
def parse_for(letter, document):
- for m in re.finditer('(%s+) (\d+) check' % letter, document.text):
+ for m in re.finditer(r'(%s+) (\d+) check' % letter, document.text):
yield Region(m.start(), m.end(),
(m.group(1), int(m.group(2))),
partial(check, letter))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/tests/functional/nose/test_nose.py new/sybil-1.2.0/tests/functional/nose/test_nose.py
--- old/sybil-1.0.9/tests/functional/nose/test_nose.py 2018-08-01 08:42:42.000000000 +0200
+++ new/sybil-1.2.0/tests/functional/nose/test_nose.py 2019-04-28 08:57:09.000000000 +0200
@@ -21,7 +21,7 @@
def parse_for(letter, document):
- for m in re.finditer('(%s+) (\d+) check' % letter, document.text):
+ for m in re.finditer(r'(%s+) (\d+) check' % letter, document.text):
yield Region(m.start(), m.end(),
(m.group(1), int(m.group(2))),
partial(check, letter))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/tests/functional/pytest/conftest.py new/sybil-1.2.0/tests/functional/pytest/conftest.py
--- old/sybil-1.0.9/tests/functional/pytest/conftest.py 2018-08-01 08:42:42.000000000 +0200
+++ new/sybil-1.2.0/tests/functional/pytest/conftest.py 2019-04-28 08:57:09.000000000 +0200
@@ -57,7 +57,7 @@
def parse_for(letter, document):
- for m in re.finditer('(%s+) (\d+) check' % letter, document.text):
+ for m in re.finditer(r'(%s+) (\d+) check' % letter, document.text):
yield Region(m.start(), m.end(),
(m.group(1), int(m.group(2))),
partial(check, letter))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/tests/samples/skip-conditional-bad.txt new/sybil-1.2.0/tests/samples/skip-conditional-bad.txt
--- old/sybil-1.0.9/tests/samples/skip-conditional-bad.txt 1970-01-01 01:00:00.000000000 +0100
+++ new/sybil-1.2.0/tests/samples/skip-conditional-bad.txt 2019-04-28 08:57:09.000000000 +0200
@@ -0,0 +1,11 @@
+Bad action:
+
+.. skip: lolwut
+
+Condition on end:
+
+.. skip: end if(1 > 2)
+
+Malformed if:
+
+.. skip: next if(sys.version_info < (3, 0), reason="only true on python 3"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/tests/samples/skip-conditional-edges.txt new/sybil-1.2.0/tests/samples/skip-conditional-edges.txt
--- old/sybil-1.0.9/tests/samples/skip-conditional-edges.txt 1970-01-01 01:00:00.000000000 +0100
+++ new/sybil-1.2.0/tests/samples/skip-conditional-edges.txt 2019-04-28 08:57:09.000000000 +0200
@@ -0,0 +1,31 @@
+This will only work on Python 2:
+
+.. skip: next if(sys.version_info >= (3, 0), reason="only true on python 2")
+
+>>> repr(u'foo')
+"u'foo'"
+
+This should run:
+
+>>> run.append(1)
+
+This will only parse on Python 3:
+
+.. skip: start if(sys.version_info < (3, 0), reason="only true on python 3")
+
+.. code-block:: python
+
+ def myfunc(*, keyword_only):
+ return keyword_only
+
+>>> myfunc(keyword_only='hello')
+'hello'
+
+>>> def myfunc2(*, keyword_only): pass
+
+.. skip: end
+
+This should also run:
+
+>>> run.append(2)
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/tests/samples/skip-conditional.txt new/sybil-1.2.0/tests/samples/skip-conditional.txt
--- old/sybil-1.0.9/tests/samples/skip-conditional.txt 1970-01-01 01:00:00.000000000 +0100
+++ new/sybil-1.2.0/tests/samples/skip-conditional.txt 2019-04-28 08:57:09.000000000 +0200
@@ -0,0 +1,19 @@
+>>> result.append('start')
+
+Default reason:
+
+.. skip: next if(2 > 1)
+
+Should not run:
+
+>>> result.append('bad 1')
+>>> result.append('good 1')
+
+.. skip: start if(2 > 1, reason='foo')
+
+>>> result.append('bad 2')
+>>> result.append('bad 3')
+
+.. skip: end
+
+>>> result.append('good 2')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/tests/samples/skip.txt new/sybil-1.2.0/tests/samples/skip.txt
--- old/sybil-1.0.9/tests/samples/skip.txt 1970-01-01 01:00:00.000000000 +0100
+++ new/sybil-1.2.0/tests/samples/skip.txt 2019-04-28 08:57:09.000000000 +0200
@@ -0,0 +1,41 @@
+.. invisible-code-block: python
+
+ run = []
+
+Let's skips some stuff:
+
+.. skip: next
+
+After this text is a code block that goes boom, it should be skipped:
+
+.. code-block:: python
+
+ run.append(1)
+
+This one should run:
+
+.. invisible-code-block: python
+
+ run.append(2)
+
+.. skip: start
+
+These should not:
+
+.. code-block:: python
+
+ run.append(3)
+
+Nor this one:
+
+.. code-block:: python
+
+ run.append(4)
+
+.. skip: end
+
+But this one should:
+
+.. code-block:: python
+
+ run.append(5)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/tests/test_codeblock.py new/sybil-1.2.0/tests/test_codeblock.py
--- old/sybil-1.0.9/tests/test_codeblock.py 2018-08-01 08:42:42.000000000 +0200
+++ new/sybil-1.2.0/tests/test_codeblock.py 2019-04-28 08:57:09.000000000 +0200
@@ -1,6 +1,6 @@
import pytest
from sybil.compat import StringIO
-from sybil.parsers.codeblock import CodeBlockParser
+from sybil.parsers.codeblock import CodeBlockParser, compile_codeblock
from tests.helpers import document_from_sample, evaluate_region
@@ -42,11 +42,13 @@
'pathalogical worst case for line numbers\n'
)
# the future import line drops the firstlineno by 1
- assert regions[0].parsed.co_firstlineno == 2
+ code = compile_codeblock(regions[0].parsed, document.path)
+ assert code.co_firstlineno == 2
assert evaluate_region(regions[1], namespace) is None
assert buffer.getvalue() == (
'pathalogical worst case for line numbers\n'
'still should work and have good line numbers\n'
)
# the future import line drops the firstlineno by 1
- assert regions[1].parsed.co_firstlineno == 8
+ code = compile_codeblock(regions[1].parsed, document.path)
+ assert code.co_firstlineno == 8
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/tests/test_doctest.py new/sybil-1.2.0/tests/test_doctest.py
--- old/sybil-1.0.9/tests/test_doctest.py 2018-08-01 08:42:42.000000000 +0200
+++ new/sybil-1.2.0/tests/test_doctest.py 2019-04-28 08:57:09.000000000 +0200
@@ -54,11 +54,8 @@
document = document_from_sample('doctest_literals.txt')
regions = list(DocTestParser(FIX_BYTE_UNICODE_REPR)(document))
assert len(regions) == 5
- assert evaluate_region(regions[0], {}) == ''
- assert evaluate_region(regions[1], {}) == ''
- assert evaluate_region(regions[2], {}) == ''
- assert evaluate_region(regions[3], {}) == ''
- assert evaluate_region(regions[4], {}) == ''
+ for region in regions:
+ assert evaluate_region(region, {}) == ''
def test_min_indent():
@@ -68,6 +65,7 @@
namespace = document.namespace
assert evaluate_region(regions[0], namespace) == ''
+
def test_tabs():
path = sample_path('doctest_tabs.txt')
parser = DocTestParser(optionflags=REPORT_NDIFF|ELLIPSIS)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/tests/test_functional.py new/sybil-1.2.0/tests/test_functional.py
--- old/sybil-1.0.9/tests/test_functional.py 2018-08-01 08:42:42.000000000 +0200
+++ new/sybil-1.2.0/tests/test_functional.py 2019-04-28 08:57:09.000000000 +0200
@@ -27,7 +27,7 @@
self.session = session
results = CollectResults()
- return_code = pytest_main(['-vs', join(functional_test_dir, 'pytest')],
+ return_code = pytest_main(['-vvs', join(functional_test_dir, 'pytest')],
plugins=[results])
assert return_code == 1
assert results.session.testsfailed == 4
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/tests/test_skip.py new/sybil-1.2.0/tests/test_skip.py
--- old/sybil-1.0.9/tests/test_skip.py 1970-01-01 01:00:00.000000000 +0100
+++ new/sybil-1.2.0/tests/test_skip.py 2019-04-28 08:57:09.000000000 +0200
@@ -0,0 +1,77 @@
+import sys
+from unittest import SkipTest
+
+import pytest
+
+from sybil.compat import PY3
+from sybil.document import Document
+from sybil.parsers.codeblock import CodeBlockParser
+from sybil.parsers.doctest import DocTestParser
+from sybil.parsers.skip import skip
+
+from .helpers import sample_path, document_from_sample, evaluate_region
+
+
+def test_basic():
+ document = Document.parse(sample_path('skip.txt'), CodeBlockParser(), skip)
+ for example in document:
+ example.evaluate()
+ assert document.namespace['run'] == [2, 5]
+
+
+def test_conditional_edge_cases():
+ document = Document.parse(
+ sample_path('skip-conditional-edges.txt'),
+ CodeBlockParser(), DocTestParser(), skip
+ )
+ document.namespace['sys'] = sys
+ document.namespace['run'] = []
+ skipped = []
+ for example in document:
+ try:
+ example.evaluate()
+ except SkipTest as e:
+ skipped.append(str(e))
+ assert document.namespace['run'] == [1, 2]
+ # we should always have one and only one skip from this document.
+ if PY3:
+ assert skipped == ['only true on python 2']
+ else:
+ assert skipped == ['only true on python 3'] * 3
+
+
+def test_conditional_full():
+ document = Document.parse(
+ sample_path('skip-conditional.txt'), DocTestParser(), skip
+ )
+ document.namespace['result'] = result = []
+ for example in document:
+ try:
+ example.evaluate()
+ except SkipTest as e:
+ result.append('skip:'+str(e))
+ assert result == [
+ 'start',
+ 'skip:(2 > 1)',
+ 'good 1',
+ 'skip:foo',
+ 'skip:foo',
+ 'good 2',
+ ]
+
+
+def test_bad():
+ document = document_from_sample('skip-conditional-bad.txt')
+ regions = list(skip(document))
+ namespace = document.namespace
+
+ with pytest.raises(ValueError) as excinfo:
+ evaluate_region(regions[0], namespace)
+ assert str(excinfo.value) == 'Bad skip action: lolwut'
+
+ with pytest.raises(ValueError) as excinfo:
+ evaluate_region(regions[1], namespace)
+ assert str(excinfo.value) == 'Cannot have condition on end'
+
+ with pytest.raises(SyntaxError):
+ evaluate_region(regions[2], namespace)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sybil-1.0.9/tests/test_sybil.py new/sybil-1.2.0/tests/test_sybil.py
--- old/sybil-1.0.9/tests/test_sybil.py 2018-08-01 08:42:42.000000000 +0200
+++ new/sybil-1.2.0/tests/test_sybil.py 2019-04-28 08:57:09.000000000 +0200
@@ -174,14 +174,14 @@
def parse_for_x(document):
- for m in re.finditer('(X+) (\d+) check', document.text):
+ for m in re.finditer(r'(X+) (\d+) check', document.text):
yield Region(m.start(), m.end(),
(m.group(1), int(m.group(2))),
partial(check, 'X'))
def parse_for_y(document):
- for m in re.finditer('(Y+) (\d+) check', document.text):
+ for m in re.finditer(r'(Y+) (\d+) check', document.text):
yield Region(m.start(), m.end(),
(m.group(1), int(m.group(2))),
partial(check, 'Y'))
@@ -225,6 +225,24 @@
'Y count was 3, as expected'])
+class TestFiltering(object):
+
+ def check(self, sybil, expected):
+ assert expected == [split(d.path)[-1] for d in sybil.all_documents()]
+
+ def test_excludes(self, tmp_path):
+ (tmp_path / 'foo.txt').write_text(u'')
+ (tmp_path / 'bar.txt').write_text(u'')
+ sybil = Sybil([], path=str(tmp_path), pattern='*.txt', excludes=['bar.txt'])
+ self.check(sybil, expected=['foo.txt'])
+
+ def test_filenames(self, tmp_path):
+ (tmp_path / 'foo.txt').write_text(u'')
+ (tmp_path / 'bar.txt').write_text(u'')
+ sybil = Sybil([], path=str(tmp_path), filenames=['bar.txt'])
+ self.check(sybil, expected=['bar.txt'])
+
+
def check_into_namespace(example):
parsed, namespace = example.region.parsed, example.namespace
if 'parsed' not in namespace:
@@ -234,7 +252,7 @@
def parse(document):
- for m in re.finditer('([XY]+) (\d+) check', document.text):
+ for m in re.finditer(r'([XY]+) (\d+) check', document.text):
yield Region(m.start(), m.end(), m.start(), check_into_namespace)
1
0
Hello community,
here is the log from the commit of package openvswitch for openSUSE:Factory checked in at 2019-05-06 13:28:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openvswitch (Old)
and /work/SRC/openSUSE:Factory/.openvswitch.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openvswitch"
Mon May 6 13:28:11 2019 rev:40 rq:700964 version:2.11.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/openvswitch/openvswitch.changes 2019-03-26 15:45:40.848074513 +0100
+++ /work/SRC/openSUSE:Factory/.openvswitch.new.5148/openvswitch.changes 2019-05-06 13:28:18.705393139 +0200
@@ -1,0 +2,59 @@
+Mon Apr 29 14:12:36 UTC 2019 - <jcaamano(a)suse.com>
+
+- Fix problem preventing new installs to run as non root (bsc#1132029),
+ including:
+ * Align with upstream so that no running configuration is changed on
+ upgrades, specifically to avoid changes on the user Open vSwitch runs
+ under.
+ * hugetblfs groups is created as system group.
+- Add missing opnvswitch-ipsec package and systemd service.
+- Add patch to use strongswan instead of libreswan for openvswitch-ipsec.
+ libreswan package not available currently.
+ * 0001-Use-strongswan-for-openvswitch-ipsec-service.patch
+- Add missing ovs-delete-transient-ports systemd service.
+- Align installed headers with upstream.
+- Fix problem preventing rpm build '--with check'.
+- Fix python environment that had directories pointing to /usr/local.
+- Version bump to 2.11.1. Some of the changes are:
+ * netdev-tc-offloads: Fix probe tc block support
+ * rhel: Include all header files in the Fedora's devel package
+ * reconnect.c: Don't transition back to ACTIVE when forced to RECONNECT.
+ * OVN: Make periodic RAs consistent with RA responder.
+ * OVN: Always send prefix option in RAs
+ * OVN: Use offset instead of pointer into ofpbuf
+ * ofproto: fix the bug of bucket counter is not updated
+ * netdev-dpdk: Print netdev name for txq mapping.
+ * dpif-netdev-perf: Fix millisecond stats precision with slower TSC.
+ * ifupdown.sh: Add missing "--may-exist" option
+ * dpif-netdev-perf: Fix double update of perf histograms.
+ * dpdk: Stop dumping memzones to stdout.
+ * dpctl: Drop parser debug information.
+ * netdev-tc-offloads: Properly get the block id on flow del/get
+ * netdev-tc-offloads: Improve log message for icmpv6 offload not supported
+ * conntrack: Replace structure copy by memcpy().
+ * conntrack: Lookup only 'UNNAT conns' in 'nat_clean()'.
+ * conntrack: Fix race for NAT cleanup.
+ * ovn-nbctl: Don't segfault when ovn-northd doesn't configure dynamic addresses.
+ * datapath-windows: Add annotations to find vport functions
+ * datapath-windows: Guard vport usage in user.c
+ * datapath-windows: Fix potential deadlock in event subscription
+ * datapath-windows: Fix race condition during port creation
+ * datapath-windows: Fix nbl cleanup when memory allocation fails
+ * netdev-linux: Remove ingress qdisc before trying to add shared block
+ * netdev-tc-offloads: Remove ingress qdisc on tc init flow api
+ * ovsdb-idl: Fix memory leak of idl->remote.
+ * travis: Remove 'sudo' configuration.
+ * OVN: Add port addresses to IPAM after all ports are joined.
+ * dpif-netlink: Free leaked ofpbuf by using ofpbuf_delete
+ * OVN: update RA next_announce according to {min, max}_interval
+ * rconn: Avoid occasional immediate connection failures.
+ * dpdk: Fix case-sensitivity of dpdk-init knob.
+ * NEWS: Clean up the 2.11.0 release notes a bit.
+ * conntrack: Fix L4 csum for V6 extension hdr pkts.
+ * packets: Change return type for 'packet_csum_upperlayer6()'.
+ * ovsdb-client: Fix typo.
+ * ovn-nbctl: Daemon mode should retry when IDL connection lost.
+ * ofctl: break the loop if ovs_pcap_read returns error
+ * netlink: added check to prevent netlink attribute overflow
+
+-------------------------------------------------------------------
Old:
----
openvswitch-2.11.0.tar.gz
New:
----
0001-Use-strongswan-for-openvswitch-ipsec-service.patch
openvswitch-2.11.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ openvswitch.spec ++++++
--- /var/tmp/diff_new_pack.pBS9LU/_old 2019-05-06 13:28:20.405396840 +0200
+++ /var/tmp/diff_new_pack.pBS9LU/_new 2019-05-06 13:28:20.445396927 +0200
@@ -41,7 +41,7 @@
# Disable building the external kernel datapath by default
%bcond_with kmp
Name: openvswitch
-Version: 2.11.0
+Version: 2.11.1
Release: 0
Summary: A multilayer virtual network switch
# All code is Apache-2.0 except
@@ -53,6 +53,8 @@
Source0: http://openvswitch.org/releases/openvswitch-%{version}.tar.gz
Source1: preamble
Source89: Module.supported.updates
+# PATCH-FIX-OPENSUSE: Use-strongswan-for-openvswitch-ipsec-service.patch
+Patch0: 0001-Use-strongswan-for-openvswitch-ipsec-service.patch
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: graphviz
@@ -270,6 +272,17 @@
Open vSwitch is a full-featured software-based Ethernet switch.
+%package ipsec
+Summary: Open vSwitch IPsec tunneling support
+License: Apache-2.0
+Group: Productivity/Networking/System
+Requires: %{name} = %{version}
+Requires: python-openvswitch = %{version}
+Requires: strongswan
+
+%description ipsec
+This package provides IPsec tunneling support for OVS tunnels.
+
%package -n python2-ovs
Summary: Python2 bindings for Open vSwitch
License: Apache-2.0
@@ -322,6 +335,7 @@
%prep
%setup -q -n openvswitch-%{version}
+%patch0 -p1
%build
set -- * .travis* .mailmap .cirrus.yml
@@ -383,6 +397,13 @@
%check
%if %{with check}
pushd source
+touch resolv.conf
+export OVS_RESOLV_CONF=$(pwd)/resolv.conf
+
+# Python build macros have moved out of the build directory some
+# extra_dist files that are required for check, put them back.
+cp python/_build.tmp/*.py python/build/
+
# Recheck tests before we declare them broken. If that fails, dump
# the log and exit. >2.5.0 uses the RECHECK env variable so this
# needs to be taken into consideration for future releases.
@@ -412,13 +433,21 @@
%make_install
# Install extra headers not included with 'make install'
-for header in $(find lib -type f -name "*.h"); do
- install -d -m 755 %{buildroot}%{_includedir}/%{name}/"$(dirname $header)"
- install -m 644 "$header" %{buildroot}%{_includedir}/%{name}/"$(dirname $header)"
-done
+copy_headers() {
+ src=$1
+ dst=$RPM_BUILD_ROOT/$2
+ install -d -m 0755 $dst
+ install -m 0644 $src/*.h $dst
+}
+copy_headers include/sparse %{_includedir}/openvswitch/sparse
+copy_headers include/sparse/arpa %{_includedir}/openvswitch/sparse/arpa
+copy_headers include/sparse/netinet %{_includedir}/openvswitch/sparse/netinet
+copy_headers include/sparse/sys %{_includedir}/openvswitch/sparse/sys
+copy_headers lib %{_includedir}/openvswitch/lib
for service in openvswitch ovn-controller ovn-controller-vtep \
- ovn-northd ovsdb-server ovs-vswitchd; do
+ ovn-northd ovsdb-server ovs-vswitchd ovs-delete-transient-ports \
+ openvswitch-ipsec; do
install -D -m 644 rhel/usr_lib_systemd_system_${service}.service \
%{buildroot}%{_unitdir}/${service}.service
ln -sf %{_sbindir}/service %{buildroot}%{_sbindir}/rc${service}
@@ -485,6 +514,18 @@
export LDFLAGS="${LDFLAGS} -L %{buildroot}%{_libdir}"
export CPPFLAGS="-I ../include"
+# Set python environment
+sed \
+ -e '/^##/d' \
+ -e 's,[@]pkgdatadir[@],%{_datadir}/%{name},g' \
+ -e 's,[@]RUNDIR[@],%{_rundir},g' \
+ -e 's,[@]LOGDIR[@],%{_localstatedir}/log,g' \
+ -e 's,[@]bindir[@],%{_bindir},g' \
+ -e 's,[@]sysconfdir[@],%{_sysconfdir},g' \
+ -e 's,[@]DBDIR[@],%{_sysconfdir}/%{name},g' \
+ < ovs/dirs.py.template \
+ > ovs/dirs.py
+
%if 0%{?suse_version}
# SLES
%{python_build}
@@ -509,24 +550,29 @@
%post
/sbin/ldconfig
-%{fillup_only -n openvswitch}
if [ $1 -eq 1 ]; then
- sed -i 's:^#OVS_USER_ID=:OVS_USER_ID=:' %{_sysconfdir}/sysconfig/openvswitch
- sed -i 's:\(.*su\).*:\1 openvswitch openvswitch:' %{_sysconfdir}/logrotate.d/openvswitch
+ # Follow the upstream strategy that no running openvswitch
+ # configuration is changed on upgrade so use fillup only for new installs.
+ %{?suse_version: %fillup_only -n openvswitch}
%if %{with dpdk}
+ %define rgroup hugetlbfs
+%else
+ %define rgroup openvswitch
+%endif
+
sed -i \
- 's@OVS_USER_ID="openvswitch:openvswitch"@OVS_USER_ID="openvswitch:hugetlbfs"@'\
+ 's@^#OVS_USER_ID="openvswitch:openvswitch"@OVS_USER_ID="openvswitch:%{rgroup}"@'\
%{_sysconfdir}/sysconfig/openvswitch
-%endif
+ sed -i 's:\(.*su\).*:\1 openvswitch %{rgroup}:' %{_sysconfdir}/logrotate.d/openvswitch
+
# In the case of upgrade, this is not needed
chown -R openvswitch:openvswitch %{_sysconfdir}/openvswitch
- chown -R openvswitch:openvswitch %{_localstatedir}/log/openvswitch
+ chown -R openvswitch:%{rgroup} %{_localstatedir}/log/openvswitch
fi
%if 0%{?suse_version}
- %service_add_post ovsdb-server.service ovs-vswitchd.service openvswitch.service
- %{fillup_only -n openvswitch}
+ %service_add_post ovsdb-server.service ovs-vswitchd.service openvswitch.service ovs-delete-transient-ports.service
%else
%if 0%{?systemd_post:1}
%systemd_post %{name}.service
@@ -538,6 +584,11 @@
%endif
%endif
+%post ipsec
+%if 0%{?suse_version}
+ %service_add_post openvswitch-ipsec.service
+%endif
+
%posttrans
# Save the "enabled" state across the transition of ownership
# of openvswitch.service from openvswitch-switch to
@@ -557,7 +608,7 @@
# admin decide when it's the best time for an OvS restart.
# 5771f476573445710834234a6a9f7bd999a027e7 ("fedora: do not restart the service on a pkg upgrade")
%if 0%{?suse_version}
- %service_del_postun -n ovsdb-server.service -n ovs-vswitchd.service -n openvswitch.service
+ %service_del_postun -n ovsdb-server.service -n ovs-vswitchd.service -n openvswitch.service -n ovs-delete-transient-ports.service
%else
%if 0%{?systemd_postun:1}
%systemd_postun %{name}.service
@@ -566,9 +617,14 @@
%endif
%endif
+%postun ipsec
+%if 0%{?suse_version}
+ %service_del_postun -n openvswitch-ipsec.service
+%endif
+
%pre
%if 0%{?suse_version}
-%service_add_pre ovsdb-server.service ovs-vswitchd.service openvswitch.service
+%service_add_pre ovsdb-server.service ovs-vswitchd.service openvswitch.service ovs-delete-transient-ports.service
%endif
# Save the "enabled" state across the transition of
# ownership of openvswitch.service from openvswitch-switch to
@@ -586,14 +642,19 @@
%if %{with dpdk}
getent group hugetlbfs >/dev/null || \
- groupadd hugetlbfs
+ groupadd -r hugetlbfs
usermod -a -G hugetlbfs openvswitch
%endif
exit 0
+%pre ipsec
+%if 0%{?suse_version}
+ %service_add_pre openvswitch-ipsec.service
+%endif
+
%preun
%if 0%{?suse_version}
- %service_del_preun ovsdb-server.service ovs-vswitchd.service openvswitch.service
+ %service_del_preun ovsdb-server.service ovs-vswitchd.service openvswitch.service ovs-delete-transient-ports.service
%else
%if 0%{?systemd_preun:1}
%systemd_preun %{name}.service
@@ -606,6 +667,11 @@
%endif
%endif
+%preun ipsec
+%if 0%{?suse_version}
+ %service_del_preun openvswitch-ipsec.service
+%endif
+
%post -n %{lname} -p /sbin/ldconfig
%postun -n %{lname} -p /sbin/ldconfig
@@ -804,7 +870,6 @@
%{_datadir}/openvswitch/scripts/ovs-ctl
%{_datadir}/openvswitch/scripts/ovs-kmod-ctl
%{_datadir}/openvswitch/scripts/ovs-lib
-%{_datadir}/openvswitch/scripts/ovs-monitor-ipsec
%{_datadir}/openvswitch/scripts/ovs-save
%{_datadir}/openvswitch/vswitch.ovsschema
%{_mandir}/man1/ovsdb-client.1%{?ext_man}
@@ -829,9 +894,11 @@
%{_sbindir}/rcovsdb-server
%{_sbindir}/rcovs-vswitchd
%{_sbindir}/rcopenvswitch
+%{_sbindir}/rcovs-delete-transient-ports
%{_unitdir}/openvswitch.service
%{_unitdir}/ovs-vswitchd.service
%{_unitdir}/ovsdb-server.service
+%{_unitdir}/ovs-delete-transient-ports.service
%if 0%{?suse_version}
%{_fillupdir}/sysconfig.openvswitch
%{_datadir}/bash-completion/completions/ovs-appctl-bashcomp.bash
@@ -878,6 +945,11 @@
%{_datadir}/openvswitch/scripts/ovs-vtep
%{_datadir}/openvswitch/vtep.ovsschema
+%files ipsec
+%{_datadir}/openvswitch/scripts/ovs-monitor-ipsec
+%{_sbindir}/rcopenvswitch-ipsec
+%{_unitdir}/openvswitch-ipsec.service
+
%files -n python2-ovs
%{python2_sitearch}/ovs/
%{python2_sitearch}/ovs-*.egg-info
++++++ 0001-Use-strongswan-for-openvswitch-ipsec-service.patch ++++++
>From 6aca005f17aecf003da9a85f8dd099baef771572 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jaime=20Caama=C3=B1o=20Ruiz?= <jcaamano(a)suse.com>
Date: Fri, 26 Apr 2019 15:27:05 +0200
Subject: [PATCH 1/6] Use strongswan for openvswitch-ipsec service
Since libreswan is not packaged for Leap/SLES, use strongswan for the
time being.
---
rhel/usr_lib_systemd_system_openvswitch-ipsec.service | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/rhel/usr_lib_systemd_system_openvswitch-ipsec.service b/rhel/usr_lib_systemd_system_openvswitch-ipsec.service
index 6e309aa57..34e3f4c90 100644
--- a/rhel/usr_lib_systemd_system_openvswitch-ipsec.service
+++ b/rhel/usr_lib_systemd_system_openvswitch-ipsec.service
@@ -6,7 +6,7 @@ After=openvswitch.service
[Service]
Type=forking
ExecStart=/usr/share/openvswitch/scripts/ovs-ctl \
- --ike-daemon=libreswan start-ovs-ipsec
+ --ike-daemon=strongswan start-ovs-ipsec
ExecStop=/usr/share/openvswitch/scripts/ovs-ctl stop-ovs-ipsec
[Install]
--
2.16.4
++++++ openvswitch-2.11.0.tar.gz -> openvswitch-2.11.1.tar.gz ++++++
/work/SRC/openSUSE:Factory/openvswitch/openvswitch-2.11.0.tar.gz /work/SRC/openSUSE:Factory/.openvswitch.new.5148/openvswitch-2.11.1.tar.gz differ: char 5, line 1
1
0
Hello community,
here is the log from the commit of package nulloy for openSUSE:Factory checked in at 2019-05-06 13:28:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/nulloy (Old)
and /work/SRC/openSUSE:Factory/.nulloy.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "nulloy"
Mon May 6 13:28:02 2019 rev:5 rq:700959 version:0.8.2.pre61qt5
Changes:
--------
--- /work/SRC/openSUSE:Factory/nulloy/nulloy.changes 2019-05-05 21:22:30.549455316 +0200
+++ /work/SRC/openSUSE:Factory/.nulloy.new.5148/nulloy.changes 2019-05-06 13:28:07.753369295 +0200
@@ -1,0 +2,5 @@
+Sun May 5 18:57:07 UTC 2019 - Jan Engelhardt <jengelh(a)inai.de>
+
+- Remove %if..%endif guards that do not affect the build result.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ nulloy.spec ++++++
--- /var/tmp/diff_new_pack.nPH1pj/_old 2019-05-06 13:28:09.517373136 +0200
+++ /var/tmp/diff_new_pack.nPH1pj/_new 2019-05-06 13:28:09.521373144 +0200
@@ -12,7 +12,7 @@
# 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/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
@@ -78,7 +78,6 @@
This package contains the gstreamer playback plugin for %{name} - a lightweight
music player with a Waveform Progressbar.
-%if %{with phonon}
%package phonon
Summary: Phonon plugin for %{name}
Group: Productivity/Multimedia/Sound/Players
@@ -87,9 +86,7 @@
%description phonon
This package contains the phonon playback plugin for %{name} - a lightweight
music player with a Waveform Progressbar.
-%endif
-%if %{with libvlc}
%package vlc
Summary: VLC plugin for %{name}
Group: Productivity/Multimedia/Sound/Players
@@ -98,7 +95,6 @@
%description vlc
This package contains the vlc playback plugin for %{name} - a lightweight
music player with a Waveform Progressbar.
-%endif
%prep
%setup -qn %{name}-%{rev}
1
0
Hello community,
here is the log from the commit of package hibiscus for openSUSE:Factory checked in at 2019-05-06 13:27:57
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/hibiscus (Old)
and /work/SRC/openSUSE:Factory/.hibiscus.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "hibiscus"
Mon May 6 13:27:57 2019 rev:5 rq:700917 version:2.8.12
Changes:
--------
--- /work/SRC/openSUSE:Factory/hibiscus/hibiscus.changes 2018-12-11 15:48:45.706144910 +0100
+++ /work/SRC/openSUSE:Factory/.hibiscus.new.5148/hibiscus.changes 2019-05-06 13:28:01.285355213 +0200
@@ -1,0 +2,138 @@
+Sun May 5 10:36:40 UTC 2019 - ecsos(a)opensuse.org
+
+- Update to 2.8.12
+ - BUG: 0767 Neue HBCI4Java-Version - Fehler bei Erkennung des
+ AES-Passport-Formats unter Java 8
+- Changes from 2.8.11
+ - NEW: 0766 Neue HBCI4Java-Version
+ - NEW: 0765 Fenstergröße des Kategorie-Auswahl-Dialogs speichern
+ - siehe https://homebanking-hilfe.de/forum/topic.php?p=143616#real143616
+ - NEW: 0764 Fehlermeldungen bei HBCI-Synchronisierung am Ende
+ noch etwas deutlicher hervorheben
+ - CHG: 0763 Default-Limit für PINs auf 50 Zeichen erhöht
+ - NEW: 0762 Fenstergröße des Adressauswahl-Dialogs speichern
+ - siehe https://homebanking-hilfe.de/forum/topic.php?p=143572#real143572
+ - NEW: 0761 Einnahmen/Ausgaben: Deaktivierte Konten ausblendbar
+ - siehe https://homebanking-hilfe.de/forum/topic.php?t=22649
+ - NEW: 0760 HASPA: Bei Anlage eines neuen Bankzugangs automatisch
+ die neue URL vorschlagen, wenn das Systemdatum der
+ Umstellungstag 20.04.2019 ist
+ - BUG: 0759 Nachtrag zu BUGZILLA 1860 - Bei langen Banknachricht
+ wurde der Scrollbalken u.U. nicht angezeigt, weil die Höhe des
+ Textes vom Control scheinbar falsch berechnet wurde
+ - NEW: 0758 Neue obantoo-Version mit aktualisierter BLZ-Datei
+ gültig ab 04.03.2019
+ - BUG: 0757 Code 3290 ebenfalls tolerieren (keine Dauerauftraege
+ beim Abruf)
+ - BUG: 0756 Wertebereich für PmtInfId noch etwas eingeschränkt
+ (RestrictedIdentificationSEPA1)
+ - BUG: 0755 Neues Feld mit der Mandatsreferenz wurde in der
+ globalen Suche noch nicht berücksichtigt
+ - NEW: 0754 Neues CSV-Exportformat für „Einnahmen/Ausgaben“
+ - BUG: 0753 In Export „PDF-Format: Summen aller Kategorien mit
+ Einnahmen und Ausgaben“ war die Summenzeile nicht korrekt
+ - NEW: 0752 Feature #170 - Beim MT940-Export „pro Buchung eine
+ logische Datei“ ebenfalls immer chronologisch sortieren
+ - NEW: 0751 Feature #169 - Beim MT940-Export von CAMT-Umsätzen
+ die Tags EREF, KREF und MREF mit berücksichtigen
+ - BUG: 0750 Bug #168 - Beim MT940-Export von CAMT-Umsätzen muss
+ der Verwendungszweck pro 65 Zeichen umgebrochen werden.
+ Mehr ist in MT940 nicht erlaubt, CAMT hat jedoch 140 Zeichen
+ - NEW: 0749 Feature #162 - neues dediziertes Feld für die
+ Mandatsreferenz in Umsatzbuchungen
+ - BUG: 0748 Neue HBCI4Java-Version - Verbindung zum Kartenleser
+ nur im Fehlerfall schliessen
+ - NEW: 0747 Sicherheitsabfrage beim Löschen eines Kontos stark
+ erweitert. Zeigt jetzt auch die Anzahl der ebenfalls zu
+ löschenden zugeordneten Daten an sowie eine extra Checkbox
+ - BUG: 0746 Neue HBCI4Java-Version - automatisches Korrigieren
+ von Passport-Dateinamen bei Chipkarten
+ - BUG: 0745 Neue HBCI4Java-Version - smsTAN in HHD-Version 1.3
+ wurde falsch als QR-TAN erkannt.
+ - NEW: 0744 Neue HBCI4Java-Version - mit neuem PassportStorage
+- Changes from 2.8.10
+ - BUG: 0743 Nachtrag zu 0739 - einschränkenden Text
+ „liegen keine“ bzw. „keine Umsätze“ entfernt, da noch weitere
+ Textkombinationen existieren
+- Changes from 2.8.9
+ - NEW: 0742 „Umsätze nach Kategorien“ - Export: Bei Format
+ „PDF-Format: Summen aller Kategorien mit Einnahmen und
+ Ausgaben“ neue Option zur Anzeige einer Gesamtsumme über alle
+ Kategorien
+ - NEW: 0741 Support für End-to-End ID bei Import und Export im
+ CSV-Format
+ - BUG: 0740 Elektr. Kontoauszüge, die sich genau am Anfang oder
+ Ende des in „Anzeige einschränken“ angegebenen Zeitraumes
+ befinden, wurden u.U. nicht angezeigt
+ - NEW: 0741 Geldbeträge in Tabellen fett gedruckt anzeigen.
+ Konfigurierbar mit der neuen Option „Geld-Beträgen fett
+ gedruckt anzeigen“ unter
+ Hibiscus→Einstellungen→Benutzeroberfläche
+ - NEW: 0740 Neue HBCI4Java-Version
+ - NEW: 0739 Wenn keine Umsaetze vorliegen, senden manche Banken
+ nicht „0020 - Es sind keine Umsätze vorhanden.“ sondern nur
+ „3010 - Für Konto <nr> liegen keine Daten vor.“.
+ Siehe https://homebanking-hilfe.de/forum/topic.php?t=22461&page=fst_unread
+ - NEW: 0738 Auf der Startseite in „Hibiscus: Konten-Übersicht“
+ die deaktivierten Konten nicht anzeigen #
+ - siehe https://homebanking-hilfe.de/forum/topic.php?p=142089#real142089
+ - NEW: 0737 Anzeige von Tooltips in den Line-Charts
+ (siehe https://github.com/willuhn/hibiscus/pull/49)
+ - NEW: 0736 Inkrementielles Update des UPD- und BPD-Cache in der
+ Datenbank. Sollte den den Abruf bei Verwendung von MySQL
+ deutlich beschleunigen, da nur noch die geänderten Parameter
+ gespeichert werden
+ - NEW: 0735 Unterstützung für chipTAN QR-Code
+ - BUG: 0734 Kam es im TAN-Dialog zu einem Fehler, konnte es u.U.
+ passieren, dass eine Überweisung fälschlicherweise als
+ ausgeführt markiert wurde
+ - NEW: 0733 Manuelles Anlegen von elektronischen Kontoauszügen
+ - siehe https://homebanking-hilfe.de/forum/topic.php?p=141868#real141868
+- Changes from 2.8.8
+ - BUG: 0732 Neue obantoo-Version, die gegen iText 5.5.2
+ compiliert wurde
+ - NEW: 0731 Upgrade von Guava von Version 18.0 auf Version 25.1
+ wegen Abhängigkeit zu Selenium
+ - NEW: 0730 Abruf elektronischer Kontoauszüge: Jahr basierend auf
+ Start-Datum, End-Datum oder Erstell-Datum vervollständigen,
+ wenn von Bank nicht übertragen. Nummer basierend auf vorherigen
+ Kontoauszug vervollständigen, wenn von Bank nicht übertragen.
+ - BUG: 0729 Nachtrag zu 0717: Menüpunkt zur Neuberechnung der
+ Salden war versehentlich nur noch bei Online-Konten auswählbar
+- Changes from 2.8.7
+ - NEW: 0728 Neue Vorgabezeitäume „Woche: Vorletzte“,
+ „Quartal: Vorletztes“ und „Jahr: Vorletztes“ in der Auswahl des
+ Zeitraumes
+ - BUG: 0727 Sparquote: Beim Export im CSV-Format wurde die Spalte
+ „Monat“ nicht korrekt befüllt
+ - NEW: 0726 Support für den Import von PDF-Rechnungen im
+ ZUGFeRD-Format (Rechtsklick in der Liste der Überweisungen und
+ „Importieren…“ im Contextmenü wählen)
+ - BUG: 0725 Neue HBCI4Java-Version mit NPE-Fix wenn die Bank in
+ CAMT-Umsätzen die eigene BIC nicht mitsendet -
+ - NEW: 0724 Funktion „Konten aus Bank-Zugang importieren…“ in
+ Kontoliste auch dann ermöglichen, wenn kein Konto ausgewählt
+ ist, an dem das HBCI-Verfahren festgemacht werden kann
+ - NEW: 0723 Adressauswahldialog etwas höher gestaltet und Button
+ „Neue Adresse“ entfernt
+ - NEW: 0722 EndToEnd-ID auch in globaler und Kategorie-Suche
+ prüfen
+ - NEW: 0721 BUGZILLA 1872: Auch bei deaktivierter
+ Checksummenprüfung von IBANs zumindest bei deutschen IBANs die
+ Länge von 22 Zeichen prüfen
+ - BUG: 0720 Nachtrag zu 0717: Freigabe des Kontextmenüeintrages
+ fehlte noch
+ - BUG: 0719 Einnahmen/Ausgaben: In den Spalten „Einnahmen“ und
+ „Ausgaben“ wurden Vormerkbuchungen fälschlicherweise mit
+ berücksichtigt
+ - CHG: 0718 Spaltenbreiten beim Druck der Umsatzliste angepasst.
+ Durch die langen CAMT-Verwendungszwecke wurde die Zweck-Spalte
+ zu breit
+ - https://homebanking-hilfe.de/forum/topic.php?p=140955#real140955
+ - NEW: 0717 Neuberechnung der Zwischensummen bei allen Konten
+ erlauben - nicht nur bei Offline-Konten
+ - NEW: 0716 Farbe Grün und Rot beim PDF-Export etwas dunkler
+ gestaltet, damit es beim Ausdruck in Schwarz/Weiss besser
+ lesbar is
+
+-------------------------------------------------------------------
Old:
----
V_2_8_6_BUILD_369.tar.gz
New:
----
V_2_8_12_BUILD_376.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ hibiscus.spec ++++++
--- /var/tmp/diff_new_pack.9yxyrz/_old 2019-05-06 13:28:01.933356624 +0200
+++ /var/tmp/diff_new_pack.9yxyrz/_new 2019-05-06 13:28:01.933356624 +0200
@@ -1,7 +1,7 @@
#
# spec file for package hibiscus
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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,14 +16,14 @@
#
-%define _build 369
-%define tag V_2_8_6_BUILD_%{_build}
+%define _build 376
+%define tag V_2_8_12_BUILD_%{_build}
Name: hibiscus
Summary: Java online banking client using the HBCI standard
License: GPL-2.0-only AND LGPL-2.0-only AND Apache-2.0 AND CPL-1.0 AND Zlib AND MPL-1.0 AND EPL-1.0
Group: Productivity/Office/Finance
-Version: 2.8.6
+Version: 2.8.12
Release: 0
Url: https://www.willuhn.de/products/hibiscus/
Source: https://github.com/willuhn/hibiscus/archive/%{tag}.tar.gz
++++++ V_2_8_6_BUILD_369.tar.gz -> V_2_8_12_BUILD_376.tar.gz ++++++
/work/SRC/openSUSE:Factory/hibiscus/V_2_8_6_BUILD_369.tar.gz /work/SRC/openSUSE:Factory/.hibiscus.new.5148/V_2_8_12_BUILD_376.tar.gz differ: char 13, line 1
1
0
Hello community,
here is the log from the commit of package jameica for openSUSE:Factory checked in at 2019-05-06 13:27:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/jameica (Old)
and /work/SRC/openSUSE:Factory/.jameica.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "jameica"
Mon May 6 13:27:50 2019 rev:6 rq:700916 version:2.8.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/jameica/jameica.changes 2019-02-24 17:12:55.992476921 +0100
+++ /work/SRC/openSUSE:Factory/.jameica.new.5148/jameica.changes 2019-05-06 13:27:52.989337152 +0200
@@ -1,0 +2,40 @@
+Sun May 5 10:21:53 UTC 2019 - ecsos(a)opensuse.org
+
+- Update to 2.8.4
+ - BUG: In der Liste der verfügbaren Plugins kam es zu einem
+ Fehler, wenn dort Scripting-Plugins enthalten waren -
+ Proxy.newProxyInstance hat scheinbar in Java das Verhalten
+ geändert, wenn der Classloader NULL ist
+- Changes from 2.8.3
+ - CHG: Popups verwenden jetzt als Fallback eigene Farben für
+ Vorder- und Hintergrund, wenn keine Systemfarben vorgegeben
+ sind oder Vorder- und Hintergrund identisch wären
+ - CHG: Jameica verwendet jetzt unter Linux per Default GTK3
+ (siehe „SWT_GTK3=1“ in jameica.sh)
+ - NEW: Update auf SWT 4.9 (in 4.10 gibt es keine
+ 32Bit-Unterstützung mehr)
+ - NEW: Hostname für das beim ersten Start zu erstellende
+ System-Zertifikat kann jetzt per Konfigurationsdatei vorgegeben
+ werden (Parameter „jameica.hostname“ in
+ „de.willuhn.jameica.system.ApplicationCallback.properties“)
+ - siehe https://homebanking-hilfe.de/forum/topic.php?p=141994#real141994
+ - CHG: JVM-Parameter „-Dswt.autoScale=quarter“ bei den
+ Windows-Launchern hinzugefuegt
+ - siehe https://github.com/willuhn/jameica/commit/82d253c0e1aec918b98eb378027ebf2d2…
+ - BUG: Kleiner Darstellungsfehler: Beim mehrfachen Überfahren der
+ Panelbuttons mit der Maus oben rechts wurde unter dem Button
+ eine 1 Pixel schmale dunkle Linie angezeigt
+ - BUG: Die Bibliothek „oro“ fehlte im Ordner „lib/velocity“.
+ Dadurch kam es zu einer ClassNotFoundException in SynTAX beim
+ Erstellen der IDEA-Auswertung
+ - BUG: Zoom-Faktor bei HiDPI-Displays wurde beim Druck von
+ Dokumenten via de.willuhn.jameica.gui.internal.action.Print
+ nicht deaktiviert, sodass Dokumente zu gross gedruckt wurden
+ - NEW: MySQL-Treiber von 5.1.41 auf 5.1.47 aktualisiert
+ - CHG: Settings nur noch maximal 1 mal pro Sekunde neu laden
+ - NEW: Annotation „@Resource“ unterstützt jetzt auch Services des
+ Typs „Bootable“.
+ - NEW: 0102 BUGZILLA 1867 - HTTP-Redirects (für Wechsel von
+ HTTP auf HTTPS) berücksichtigen
+
+-------------------------------------------------------------------
Old:
----
V_2_8_2_BUILD_450.tar.gz
New:
----
V_2_8_4_BUILD_453.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ jameica.spec ++++++
--- /var/tmp/diff_new_pack.nR6fwO/_old 2019-05-06 13:27:54.777341045 +0200
+++ /var/tmp/diff_new_pack.nR6fwO/_new 2019-05-06 13:27:54.777341045 +0200
@@ -16,10 +16,11 @@
#
-%define _build 450
-%define _tag V_2_8_2_BUILD_%{_build}
+%define _build 453
+%define _buildreleases 452
+%define _tag V_2_8_4_BUILD_%{_build}
Name: jameica
-Version: 2.8.2
+Version: 2.8.4
Release: 0
Summary: Runtime environment for Java applications like Hibiscus
License: GPL-2.0-only AND LGPL-2.0-only AND Apache-2.0 AND CPL-1.0 AND Zlib AND MPL-1.0 AND EPL-1.0
@@ -103,7 +104,7 @@
%install
mkdir -p %{buildroot}%{_prefix}/lib/jameica/plugins
-cp -r releases/%{version}-%{_build}/%{name} %{buildroot}%{_prefix}/lib
+cp -r releases/%{version}-%{_buildreleases}/%{name} %{buildroot}%{_prefix}/lib
chmod +x %{buildroot}%{_prefix}/lib/%{name}/rcjameica
chmod +x %{buildroot}%{_prefix}/lib/%{name}/jameicaserver.sh
chmod +x %{buildroot}%{_prefix}/lib/%{name}/jameica.sh
@@ -131,7 +132,7 @@
cp -r src %{buildroot}%{_prefix}/lib/jameica
mkdir -p %{buildroot}%{_javadocdir}/%{name}-%{version}
-cp -r releases/%{version}-%{_build}/javadoc/* %{buildroot}%{_javadocdir}/%{name}-%{version}
+cp -r releases/%{version}-%{_buildreleases}/javadoc/* %{buildroot}%{_javadocdir}/%{name}-%{version}
%fdupes %{buildroot}%{_prefix}/lib/%{name}
++++++ V_2_8_2_BUILD_450.tar.gz -> V_2_8_4_BUILD_453.tar.gz ++++++
/work/SRC/openSUSE:Factory/jameica/V_2_8_2_BUILD_450.tar.gz /work/SRC/openSUSE:Factory/.jameica.new.5148/V_2_8_4_BUILD_453.tar.gz differ: char 14, line 1
1
0
Hello community,
here is the log from the commit of package maven-reporting-exec for openSUSE:Factory checked in at 2019-05-06 13:27:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/maven-reporting-exec (Old)
and /work/SRC/openSUSE:Factory/.maven-reporting-exec.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "maven-reporting-exec"
Mon May 6 13:27:46 2019 rev:2 rq:700915 version:1.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/maven-reporting-exec/maven-reporting-exec.changes 2019-05-05 21:22:15.173413429 +0200
+++ /work/SRC/openSUSE:Factory/.maven-reporting-exec.new.5148/maven-reporting-exec.changes 2019-05-06 13:27:49.397329331 +0200
@@ -1,0 +2,5 @@
+Sun May 5 20:30:17 UTC 2019 - Jan Engelhardt <jengelh(a)inai.de>
+
+- Add Group: field.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ maven-reporting-exec.spec ++++++
--- /var/tmp/diff_new_pack.mLSLeB/_old 2019-05-06 13:27:50.145330960 +0200
+++ /var/tmp/diff_new_pack.mLSLeB/_new 2019-05-06 13:27:50.145330960 +0200
@@ -1,7 +1,7 @@
#
# spec file for package maven-reporting-exec
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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
@@ -27,6 +27,7 @@
Patch0001: 0001-Port-to-Eclipse-Aether-and-Eclipse-Sisu.patch
BuildRequires: fdupes
BuildRequires: maven-local
+BuildRequires: unzip
BuildRequires: mvn(org.apache.maven.plugins:maven-invoker-plugin)
BuildRequires: mvn(org.apache.maven.reporting:maven-reporting-api)
BuildRequires: mvn(org.apache.maven.shared:maven-shared-components:pom:)
@@ -42,7 +43,6 @@
BuildRequires: mvn(org.eclipse.aether:aether-api)
BuildRequires: mvn(org.eclipse.aether:aether-util)
BuildRequires: mvn(org.eclipse.sisu:org.eclipse.sisu.plexus)
-BuildRequires: unzip
Requires: java-headless
BuildArch: noarch
@@ -52,6 +52,7 @@
%package javadoc
Summary: API documentation for %{name}
+Group: Documentation/HTML
%description javadoc
The API documentation of %{name}.
1
0
Hello community,
here is the log from the commit of package perl-CPAN-Perl-Releases for openSUSE:Factory checked in at 2019-05-06 13:27:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-CPAN-Perl-Releases (Old)
and /work/SRC/openSUSE:Factory/.perl-CPAN-Perl-Releases.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-CPAN-Perl-Releases"
Mon May 6 13:27:43 2019 rev:73 rq:700740 version:3.98
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-CPAN-Perl-Releases/perl-CPAN-Perl-Releases.changes 2019-04-28 20:14:45.442369857 +0200
+++ /work/SRC/openSUSE:Factory/.perl-CPAN-Perl-Releases.new.5148/perl-CPAN-Perl-Releases.changes 2019-05-06 13:27:45.285320379 +0200
@@ -1,0 +2,6 @@
+Sun Apr 28 05:03:43 UTC 2019 - Stephan Kulow <coolo(a)suse.com>
+
+- updated to 3.98
+ see /usr/share/doc/packages/perl-CPAN-Perl-Releases/Changes
+
+-------------------------------------------------------------------
Old:
----
CPAN-Perl-Releases-3.96.tar.gz
New:
----
CPAN-Perl-Releases-3.98.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-CPAN-Perl-Releases.spec ++++++
--- /var/tmp/diff_new_pack.vXbWae/_old 2019-05-06 13:27:46.721323505 +0200
+++ /var/tmp/diff_new_pack.vXbWae/_new 2019-05-06 13:27:46.745323558 +0200
@@ -17,7 +17,7 @@
Name: perl-CPAN-Perl-Releases
-Version: 3.96
+Version: 3.98
Release: 0
%define cpan_name CPAN-Perl-Releases
Summary: Mapping Perl releases on CPAN to the location of the tarballs
++++++ CPAN-Perl-Releases-3.96.tar.gz -> CPAN-Perl-Releases-3.98.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CPAN-Perl-Releases-3.96/Changes new/CPAN-Perl-Releases-3.98/Changes
--- old/CPAN-Perl-Releases-3.96/Changes 2019-04-19 23:57:16.000000000 +0200
+++ new/CPAN-Perl-Releases-3.98/Changes 2019-04-20 22:25:30.000000000 +0200
@@ -1,8 +1,18 @@
==================================================
-Changes from 2014-04-20 00:00:00 +0000 to present.
+Changes from 2014-04-21 00:00:00 +0000 to present.
==================================================
-----------------------------------------
+version 3.98 at 2019-04-20 20:23:20 +0000
+-----------------------------------------
+
+ Change: 410e74dbd253fa35ca64cea19d546e1c94f44b41
+ Author: Chris 'BinGOs' Williams <chris(a)bingosnet.co.uk>
+ Date : 2019-04-20 21:23:20 +0000
+
+ Updated for v5.29.10
+
+-----------------------------------------
version 3.96 at 2019-04-19 21:36:20 +0000
-----------------------------------------
@@ -1172,16 +1182,6 @@
Updated for v5.20.0-RC1
------------------------------------------
-version 1.68 at 2014-04-20 15:22:59 +0000
------------------------------------------
-
- Change: 32e9b6ef2ecc64e1b8cbc541582a206b68c08ffb
- Author: Chris 'BinGOs' Williams <chris(a)bingosnet.co.uk>
- Date : 2014-04-20 16:22:59 +0000
-
- Updated for v5.19.11
-
=================================================
-Plus 82 releases after 2014-04-20 00:00:00 +0000.
+Plus 83 releases after 2014-04-21 00:00:00 +0000.
=================================================
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CPAN-Perl-Releases-3.96/META.json new/CPAN-Perl-Releases-3.98/META.json
--- old/CPAN-Perl-Releases-3.96/META.json 2019-04-19 23:57:16.000000000 +0200
+++ new/CPAN-Perl-Releases-3.98/META.json 2019-04-20 22:25:30.000000000 +0200
@@ -54,7 +54,7 @@
"web" : "https://github.com/bingos/cpan-perl-releases"
}
},
- "version" : "3.96",
+ "version" : "3.98",
"x_generated_by_perl" : "v5.26.3",
"x_serialization_backend" : "Cpanel::JSON::XS version 4.11"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CPAN-Perl-Releases-3.96/META.yml new/CPAN-Perl-Releases-3.98/META.yml
--- old/CPAN-Perl-Releases-3.96/META.yml 2019-04-19 23:57:16.000000000 +0200
+++ new/CPAN-Perl-Releases-3.98/META.yml 2019-04-20 22:25:30.000000000 +0200
@@ -21,6 +21,6 @@
resources:
homepage: https://github.com/bingos/cpan-perl-releases
repository: https://github.com/bingos/cpan-perl-releases.git
-version: '3.96'
+version: '3.98'
x_generated_by_perl: v5.26.3
x_serialization_backend: 'YAML::Tiny version 1.73'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CPAN-Perl-Releases-3.96/Makefile.PL new/CPAN-Perl-Releases-3.98/Makefile.PL
--- old/CPAN-Perl-Releases-3.96/Makefile.PL 2019-04-19 23:57:16.000000000 +0200
+++ new/CPAN-Perl-Releases-3.98/Makefile.PL 2019-04-20 22:25:30.000000000 +0200
@@ -26,7 +26,7 @@
"IPC::Open3" => 0,
"Test::More" => "0.47"
},
- "VERSION" => "3.96",
+ "VERSION" => "3.98",
"test" => {
"TESTS" => "t/*.t"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CPAN-Perl-Releases-3.96/README new/CPAN-Perl-Releases-3.98/README
--- old/CPAN-Perl-Releases-3.96/README 2019-04-19 23:57:16.000000000 +0200
+++ new/CPAN-Perl-Releases-3.98/README 2019-04-20 22:25:30.000000000 +0200
@@ -5,7 +5,7 @@
VERSION
- version 3.96
+ version 3.98
SYNOPSIS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CPAN-Perl-Releases-3.96/dist.ini new/CPAN-Perl-Releases-3.98/dist.ini
--- old/CPAN-Perl-Releases-3.96/dist.ini 2019-04-19 23:57:16.000000000 +0200
+++ new/CPAN-Perl-Releases-3.98/dist.ini 2019-04-20 22:25:30.000000000 +0200
@@ -1,5 +1,5 @@
name = CPAN-Perl-Releases
-version = 3.96
+version = 3.98
author = Chris Williams <chris(a)bingosnet.co.uk>
license = Perl_5
copyright_holder = Chris Williams
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CPAN-Perl-Releases-3.96/lib/CPAN/Perl/Releases.pm new/CPAN-Perl-Releases-3.98/lib/CPAN/Perl/Releases.pm
--- old/CPAN-Perl-Releases-3.96/lib/CPAN/Perl/Releases.pm 2019-04-19 23:57:16.000000000 +0200
+++ new/CPAN-Perl-Releases-3.98/lib/CPAN/Perl/Releases.pm 2019-04-20 22:25:30.000000000 +0200
@@ -1,5 +1,5 @@
package CPAN::Perl::Releases;
-$CPAN::Perl::Releases::VERSION = '3.96';
+$CPAN::Perl::Releases::VERSION = '3.98';
#ABSTRACT: Mapping Perl releases on CPAN to the location of the tarballs
use strict;
@@ -236,6 +236,7 @@
"5.29.9" => { id => 'ZAKAME' },
"5.28.2-RC1" => { id => 'SHAY' },
"5.28.2" => { id => 'SHAY' },
+"5.29.10" => { id => 'XSAWYERX' },
};
sub perl_tarballs {
@@ -304,7 +305,7 @@
=head1 VERSION
-version 3.96
+version 3.98
=head1 SYNOPSIS
1
0
Hello community,
here is the log from the commit of package perl-Catalyst-Manual for openSUSE:Factory checked in at 2019-05-06 13:27:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Catalyst-Manual (Old)
and /work/SRC/openSUSE:Factory/.perl-Catalyst-Manual.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Catalyst-Manual"
Mon May 6 13:27:38 2019 rev:15 rq:700738 version:5.9010
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Catalyst-Manual/perl-Catalyst-Manual.changes 2015-02-10 20:22:40.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.perl-Catalyst-Manual.new.5148/perl-Catalyst-Manual.changes 2019-05-06 13:27:41.961313142 +0200
@@ -1,0 +2,13 @@
+Sat Apr 27 05:04:09 UTC 2019 - Stephan Kulow <coolo(a)suse.com>
+
+- updated to 5.9010
+ see /usr/share/doc/packages/perl-Catalyst-Manual/Changes
+
+ 5.9010 - 2019-04-25
+ - updated stale urls
+ - numerous typo fixes
+ - many pod syntax fixes
+ - other pod syntax cleanup
+ - added references to the RT issues queue, mailing list, and irc channel
+
+-------------------------------------------------------------------
Old:
----
Catalyst-Manual-5.9009.tar.gz
New:
----
Catalyst-Manual-5.9010.tar.gz
cpanspec.yml
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Catalyst-Manual.spec ++++++
--- /var/tmp/diff_new_pack.YZyPNu/_old 2019-05-06 13:27:43.453316390 +0200
+++ /var/tmp/diff_new_pack.YZyPNu/_new 2019-05-06 13:27:43.497316486 +0200
@@ -1,7 +1,7 @@
#
# spec file for package perl-Catalyst-Manual
#
-# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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
@@ -12,24 +12,24 @@
# 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/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: perl-Catalyst-Manual
-Version: 5.9009
+Version: 5.9010
Release: 0
%define cpan_name Catalyst-Manual
Summary: The Catalyst developer's manual
-License: Artistic-1.0 or GPL-1.0+
+License: Artistic-1.0 OR GPL-1.0-or-later
Group: Development/Libraries/Perl
-Url: http://search.cpan.org/dist/Catalyst-Manual/
-Source: http://www.cpan.org/authors/id/E/ET/ETHER/%{cpan_name}-%{version}.tar.gz
+Url: https://metacpan.org/release/%{cpan_name}
+Source0: https://cpan.metacpan.org/authors/id/H/HA/HAARG/%{cpan_name}-%{version}.tar…
+Source1: cpanspec.yml
BuildArch: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: perl
BuildRequires: perl-macros
-BuildRequires: perl(Test::More) >= 0.88
%{perl_requires}
%description
@@ -37,14 +37,13 @@
%prep
%setup -q -n %{cpan_name}-%{version}
-find . -type f -print0 | xargs -0 chmod 644
%build
-%{__perl} Makefile.PL INSTALLDIRS=vendor
-%{__make} %{?_smp_mflags}
+perl Makefile.PL INSTALLDIRS=vendor
+make %{?_smp_mflags}
%check
-%{__make} test
+make test
%install
%perl_make_install
@@ -54,5 +53,6 @@
%files -f %{name}.files
%defattr(-,root,root,755)
%doc Changes README
+%license LICENSE
%changelog
++++++ Catalyst-Manual-5.9009.tar.gz -> Catalyst-Manual-5.9010.tar.gz ++++++
++++ 7836 lines of diff (skipped)
++++++ cpanspec.yml ++++++
---
#description_paragraphs: 3
#description: |-
# override description from CPAN
#summary: override summary from CPAN
#no_testing: broken upstream
#sources:
# - source1
# - source2
#patches:
# foo.patch: -p1
# bar.patch:
#preamble: |-
# BuildRequires: gcc-c++
#post_prep: |-
# hunspell=`pkg-config --libs hunspell | sed -e 's,-l,,; s, *,,g'`
# sed -i -e "s,hunspell-X,$hunspell," t/00-prereq.t Makefile.PL
#post_build: |-
# rm unused.files
#post_install: |-
# sed on %{name}.files
#license: SUSE-NonFree
#skip_noarch: 1
#custom_build: |-
#./Build build flags=%{?_smp_mflags} --myflag
#custom_test: |-
#startserver && make test
#ignore_requires: Bizarre::Module
1
0
Hello community,
here is the log from the commit of package perl-Devel-PatchPerl for openSUSE:Factory checked in at 2019-05-06 13:27:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Devel-PatchPerl (Old)
and /work/SRC/openSUSE:Factory/.perl-Devel-PatchPerl.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Devel-PatchPerl"
Mon May 6 13:27:33 2019 rev:24 rq:700737 version:1.58
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Devel-PatchPerl/perl-Devel-PatchPerl.changes 2019-03-20 13:19:00.653347932 +0100
+++ /work/SRC/openSUSE:Factory/.perl-Devel-PatchPerl.new.5148/perl-Devel-PatchPerl.changes 2019-05-06 13:27:37.349303100 +0200
@@ -1,0 +2,6 @@
+Sun Apr 28 05:08:15 UTC 2019 - Stephan Kulow <coolo(a)suse.com>
+
+- updated to 1.58
+ see /usr/share/doc/packages/perl-Devel-PatchPerl/Changes
+
+-------------------------------------------------------------------
Old:
----
Devel-PatchPerl-1.56.tar.gz
New:
----
Devel-PatchPerl-1.58.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Devel-PatchPerl.spec ++++++
--- /var/tmp/diff_new_pack.y17kN5/_old 2019-05-06 13:27:38.809306279 +0200
+++ /var/tmp/diff_new_pack.y17kN5/_new 2019-05-06 13:27:38.829306323 +0200
@@ -17,7 +17,7 @@
Name: perl-Devel-PatchPerl
-Version: 1.56
+Version: 1.58
Release: 0
%define cpan_name Devel-PatchPerl
Summary: Patch perl source a la Devel::PPPort's buildperl.pl
++++++ Devel-PatchPerl-1.56.tar.gz -> Devel-PatchPerl-1.58.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-1.56/Changes new/Devel-PatchPerl-1.58/Changes
--- old/Devel-PatchPerl-1.56/Changes 2019-02-26 15:02:37.000000000 +0100
+++ new/Devel-PatchPerl-1.58/Changes 2019-04-26 17:52:07.000000000 +0200
@@ -1,8 +1,54 @@
==================================================
-Changes from 2014-02-27 00:00:00 +0000 to present.
+Changes from 2014-04-27 00:00:00 +0000 to present.
==================================================
-----------------------------------------
+version 1.58 at 2019-04-26 15:51:27 +0000
+-----------------------------------------
+
+ Change: 1be25996c64d8e3b9ed9997facc4e07f66722f59
+ Author: Chris 'BinGOs' Williams <chris(a)bingosnet.co.uk>
+ Date : 2019-04-26 16:51:27 +0000
+
+ Release engineering for 1.58
+
+ Change: 9acd33780d61b675239cb812777a172eb0ae4492
+ Author: Chris 'BinGOs' Williams <chris(a)bingosnet.co.uk>
+ Date : 2019-04-26 16:50:42 +0000
+
+ Merge hints from blead v5.29.10
+
+ Change: 7753eb224020419fc199bf5bc207cce0bef93d18
+ Author: Chris 'BinGOs' Williams <chris(a)bingosnet.co.uk>
+ Date : 2019-04-26 16:46:44 +0000
+
+ Add patch to fix lib/h2ph.t
+
+ Change: 3f58aa0bda494f4a7ff8e8d178bce25e0928efd2
+ Author: Chris 'BinGOs' Williams <chris(a)bingosnet.co.uk>
+ Date : 2019-04-26 15:34:00 +0000
+
+ Added patch to fix utils/h2ph.PL
+
+ Change: 86165ca94b2bc35ac49e99c91371e0bb269d2d72
+ Author: Chris 'BinGOs' Williams <chris(a)bingosnet.co.uk>
+ Date : 2019-04-26 14:18:44 +0000
+
+ Patch Configure for -fwrapv
+
+ Change: 9eabda784544256a9fe1879bef9b0a0c043546f3
+ Author: Chris 'BinGOs' Williams <chris(a)bingosnet.co.uk>
+ Date : 2019-04-26 10:58:03 +0000
+
+ Test hints() function as well
+
+ Change: e1d4c88a89f3809432479113de2370a31cb68fb4
+ Author: Chris 'BinGOs' Williams <chris(a)bingosnet.co.uk>
+ Date : 2019-04-26 10:01:03 +0000
+
+ Added test for non-existant plugin
+
+-----------------------------------------
version 1.56 at 2019-02-26 14:01:17 +0000
-----------------------------------------
@@ -316,26 +362,6 @@
http://perl5.git.perl.org/perl.git/commit/ce861ea79
------------------------------------------
-version 1.22 at 2014-04-23 21:15:10 +0000
------------------------------------------
-
- Change: 7c1a27bdbab0089738942aaae5cf0a741bc5b377
- Author: Chris 'BinGOs' Williams <chris(a)bingosnet.co.uk>
- Date : 2014-04-23 22:15:10 +0000
-
- Look for gpatch if patch is not found
-
------------------------------------------
-version 1.20 at 2014-03-21 14:16:30 +0000
------------------------------------------
-
- Change: 664f16a3e9c1b27b711dbd424a209d985b7801e4
- Author: Chris 'BinGOs' Williams <chris(a)bingosnet.co.uk>
- Date : 2014-03-21 14:16:30 +0000
-
- Update included hints files
-
=================================================
-Plus 59 releases after 2014-02-27 00:00:00 +0000.
+Plus 61 releases after 2014-04-27 00:00:00 +0000.
=================================================
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-1.56/MANIFEST new/Devel-PatchPerl-1.58/MANIFEST
--- old/Devel-PatchPerl-1.56/MANIFEST 2019-02-26 15:02:37.000000000 +0100
+++ new/Devel-PatchPerl-1.58/MANIFEST 2019-04-26 17:52:07.000000000 +0200
@@ -14,6 +14,7 @@
t/01-hints.t
t/02_vers.t
t/03_plugin.t
+t/04_noplugin.t
t/author-pod-coverage.t
t/author-pod-syntax.t
t/borken/patchlevel.h
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-1.56/META.json new/Devel-PatchPerl-1.58/META.json
--- old/Devel-PatchPerl-1.56/META.json 2019-02-26 15:02:37.000000000 +0100
+++ new/Devel-PatchPerl-1.58/META.json 2019-04-26 17:52:07.000000000 +0200
@@ -45,8 +45,8 @@
"web" : "https://github.com/bingos/devel-patchperl"
}
},
- "version" : "1.56",
+ "version" : "1.58",
"x_generated_by_perl" : "v5.26.3",
- "x_serialization_backend" : "Cpanel::JSON::XS version 4.09"
+ "x_serialization_backend" : "Cpanel::JSON::XS version 4.11"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-1.56/META.yml new/Devel-PatchPerl-1.58/META.yml
--- old/Devel-PatchPerl-1.56/META.yml 2019-02-26 15:02:37.000000000 +0100
+++ new/Devel-PatchPerl-1.58/META.yml 2019-04-26 17:52:07.000000000 +0200
@@ -21,6 +21,6 @@
resources:
homepage: https://github.com/bingos/devel-patchperl
repository: https://github.com/bingos/devel-patchperl.git
-version: '1.56'
+version: '1.58'
x_generated_by_perl: v5.26.3
x_serialization_backend: 'YAML::Tiny version 1.73'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-1.56/Makefile.PL new/Devel-PatchPerl-1.58/Makefile.PL
--- old/Devel-PatchPerl-1.56/Makefile.PL 2019-02-26 15:02:37.000000000 +0100
+++ new/Devel-PatchPerl-1.58/Makefile.PL 2019-04-26 17:52:07.000000000 +0200
@@ -25,7 +25,7 @@
"MIME::Base64" => 0,
"Module::Pluggable" => 0
},
- "VERSION" => "1.56",
+ "VERSION" => "1.58",
"test" => {
"TESTS" => "t/*.t"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-1.56/README new/Devel-PatchPerl-1.58/README
--- old/Devel-PatchPerl-1.56/README 2019-02-26 15:02:37.000000000 +0100
+++ new/Devel-PatchPerl-1.58/README 2019-04-26 17:52:07.000000000 +0200
@@ -4,7 +4,7 @@
VERSION
- version 1.56
+ version 1.58
SYNOPSIS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-1.56/bin/patchperl new/Devel-PatchPerl-1.58/bin/patchperl
--- old/Devel-PatchPerl-1.56/bin/patchperl 2019-02-26 15:02:37.000000000 +0100
+++ new/Devel-PatchPerl-1.58/bin/patchperl 2019-04-26 17:52:07.000000000 +0200
@@ -22,7 +22,7 @@
=head1 VERSION
-version 1.56
+version 1.58
=head1 AUTHOR
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-1.56/dist.ini new/Devel-PatchPerl-1.58/dist.ini
--- old/Devel-PatchPerl-1.56/dist.ini 2019-02-26 15:02:37.000000000 +0100
+++ new/Devel-PatchPerl-1.58/dist.ini 2019-04-26 17:52:07.000000000 +0200
@@ -1,5 +1,5 @@
name = Devel-PatchPerl
-version = 1.56
+version = 1.58
author = Chris Williams <chris(a)bingosnet.co.uk>
license = Perl_5
copyright_holder = Chris Williams and Marcus Holland-Moritz
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-1.56/lib/Devel/PatchPerl/Hints.pm new/Devel-PatchPerl-1.58/lib/Devel/PatchPerl/Hints.pm
--- old/Devel-PatchPerl-1.56/lib/Devel/PatchPerl/Hints.pm 2019-02-26 15:02:37.000000000 +0100
+++ new/Devel-PatchPerl-1.58/lib/Devel/PatchPerl/Hints.pm 2019-04-26 17:52:07.000000000 +0200
@@ -1,5 +1,5 @@
package Devel::PatchPerl::Hints;
-$Devel::PatchPerl::Hints::VERSION = '1.56';
+$Devel::PatchPerl::Hints::VERSION = '1.58';
#ABSTRACT: replacement 'hints' files
use strict;
@@ -1580,7 +1580,10 @@
bCB3aXRoIHNoYXJlZCBsaWJwZXJsCglpZiBbICIkdXNlZGwiID0gIiRkZWZpbmUiIC1hIC1yIHNo
bGliX3ZlcnNpb24gXTsgdGhlbgoJCXVzZXNocnBsaWI9dHJ1ZQoJCWxpYnBlcmw9YC4gLi9zaGxp
Yl92ZXJzaW9uOyBlY2hvIGxpYnBlcmwuc28uJHttYWpvcn0uJHttaW5vcn1gCglmaQoJOzsKZXNh
-YwoKIyBlbmQK',
+YwoKIyBvcGVuYnNkIGhhcyBhIHByb2JsZW0gcmVnYXJkaW5nIG5ld2xvY2FsZSgpCiMgaHR0cHM6
+Ly9tYXJjLmluZm8vP2w9b3BlbmJzZC1idWdzJm09MTU1MzY0NTY4NjA4NzU5Jnc9MgojIHdoaWNo
+IGlzIGJlaW5nIGZpeGVkLiAgSW4gdGhlIG1lYW50aW1lLCBmb3JiaWQgUE9TSVggMjAwOCBsb2Nh
+bGVzCmRfbmV3bG9jYWxlPSIkdW5kZWYiCgojIGVuZAo=',
'solaris' =>
'IyBoaW50cy9zb2xhcmlzXzIuc2gKIyBDb250cmlidXRpb25zIGJ5IChpbiBhbHBoYWJldGljYWwg
b3JkZXIpIEFsYW4gQnVybGlzb24sIEFuZHkgRG91Z2hlcnR5LAojIERlYW4gUm9laHJpY2gsIEph
@@ -2035,7 +2038,7 @@
=head1 VERSION
-version 1.56
+version 1.58
=head1 SYNOPSIS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-1.56/lib/Devel/PatchPerl/Plugin.pm new/Devel-PatchPerl-1.58/lib/Devel/PatchPerl/Plugin.pm
--- old/Devel-PatchPerl-1.56/lib/Devel/PatchPerl/Plugin.pm 2019-02-26 15:02:37.000000000 +0100
+++ new/Devel-PatchPerl-1.58/lib/Devel/PatchPerl/Plugin.pm 2019-04-26 17:52:07.000000000 +0200
@@ -1,5 +1,5 @@
package Devel::PatchPerl::Plugin;
-$Devel::PatchPerl::Plugin::VERSION = '1.56';
+$Devel::PatchPerl::Plugin::VERSION = '1.58';
#ABSTRACT: Devel::PatchPerl plugins explained
use strict;
@@ -19,7 +19,7 @@
=head1 VERSION
-version 1.56
+version 1.58
=head1 DESCRIPTION
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-1.56/lib/Devel/PatchPerl.pm new/Devel-PatchPerl-1.58/lib/Devel/PatchPerl.pm
--- old/Devel-PatchPerl-1.56/lib/Devel/PatchPerl.pm 2019-02-26 15:02:37.000000000 +0100
+++ new/Devel-PatchPerl-1.58/lib/Devel/PatchPerl.pm 2019-04-26 17:52:07.000000000 +0200
@@ -1,5 +1,5 @@
package Devel::PatchPerl;
-$Devel::PatchPerl::VERSION = '1.56';
+$Devel::PatchPerl::VERSION = '1.58';
# ABSTRACT: Patch perl source a la Devel::PPPort's buildperl.pl
use strict;
@@ -11,7 +11,7 @@
use Module::Pluggable search_path => ['Devel::PatchPerl::Plugin'];
use vars qw[@ISA @EXPORT_OK];
-use constant CERTIFIED => 5.029008; # Anything less than this
+use constant CERTIFIED => 5.029010; # Anything less than this
@ISA = qw(Exporter);
@EXPORT_OK = qw(patch_source);
@@ -187,6 +187,9 @@
[ \&_patch_patchlevel ],
[ \&_patch_develpatchperlversion ],
[ \&_patch_errno_gcc5 ],
+ [ \&_patch_conf_fwrapv ],
+ [ \&_patch_utils_h2ph ],
+ [ \&_patch_lib_h2ph ],
],
},
{
@@ -7748,6 +7751,133 @@
END
}
+sub _patch_conf_fwrapv {
+ my $perlver = shift;
+ my $num = _norm_ver( $perlver );
+ return unless $num < 5.019011;
+ _patch(<<'FWRAPV');
+diff --git a/Configure b/Configure
+index 15b3da1769..791889a2ab 100755
+--- a/Configure
++++ b/Configure
+@@ -4643,6 +4643,22 @@ case "$gccversion" in
+ $rm -f try try.*
+ esac
+
++# gcc 4.9 by default does some optimizations that break perl.
++# see ticket 121505.
++#
++# The -fwrapv disables those optimizations (and probably others,) so
++# for gcc 4.9 (and later, since the optimizations probably won't go
++# away), add -fwrapv unless the user requests -fno-wrapv, which
++# disables -fwrapv, or if the user requests -fsanitize=undefined,
++# which turns the overflows -fwrapv ignores into runtime errors.
++case "$gccversion" in
++4.[3-9].*|4.[1-9][0-9]*|[5-9].*|[1-9][0-9]*)
++ case "$ccflags" in
++ *-fno-wrapv*|*-fsanitize=undefined*|*-fwrapv*) ;;
++ *) ccflags="$ccflags -fwrapv" ;;
++ esac
++esac
++
+ : What should the include directory be ?
+ : Use sysroot if set, so findhdr looks in the right place.
+ echo " "
+FWRAPV
+}
+
+sub _patch_utils_h2ph {
+ my $perlver = shift;
+ my $num = _norm_ver( $perlver );
+ return unless $num < 5.021010;
+ _patch(<<'UH2PH');
+--- utils/h2ph.PL
++++ utils/h2ph.PL
+@@ -788,6 +788,11 @@ sub build_preamble_if_necessary
+
+ open PREAMBLE, ">$preamble" or die "Cannot open $preamble: $!";
+ print PREAMBLE "# This file was created by h2ph version $VERSION\n";
++ # Prevent non-portable hex constants from warning.
++ #
++ # We still produce an overflow warning if we can't represent
++ # a hex constant as an integer.
++ print PREAMBLE "no warnings qw(portable);\n";
+
+ foreach (sort keys %define) {
+ if ($opt_D) {
+@@ -814,6 +819,18 @@ DEFINE
+ # integer:
+ print PREAMBLE
+ "unless (defined &$_) { sub $_() { $1 } }\n\n";
++ } elsif ($define{$_} =~ /^([+-]?0x[\da-f]+)U?L{0,2}$/i) {
++ # hex integer
++ # Special cased, since perl warns on hex integers
++ # that can't be represented in a UV.
++ #
++ # This way we get the warning at time of use, so the user
++ # only gets the warning if they happen to use this
++ # platform-specific definition.
++ my $code = $1;
++ $code = "hex('$code')" if length $code > 10;
++ print PREAMBLE
++ "unless (defined &$_) { sub $_() { $code } }\n\n";
+ } elsif ($define{$_} =~ /^\w+$/) {
+ my $def = $define{$_};
+ if ($isatype{$def}) {
+UH2PH
+}
+
+sub _patch_lib_h2ph {
+ my $perlver = shift;
+ my $num = _norm_ver( $perlver );
+ return unless $num < 5.021010;
+ if ( $num >= 5.013005 ) {
+ _patch(<<'LH2PH1');
+--- lib/h2ph.t
++++ lib/h2ph.t
+@@ -48,7 +48,7 @@ $result = runperl( progfile => '_h2ph_pre.ph',
+ stderr => 1 );
+ like( $result, qr/syntax OK$/, "preamble compiles");
+
+-$result = runperl( switches => ["-w"],
++$result = runperl( switches => ['-I.', "-w"],
+ stderr => 1,
+ prog => <<'PROG' );
+ $SIG{__WARN__} = sub { die $_[0] }; require q(lib/h2ph.pht);
+LH2PH1
+ }
+ elsif ( $num >= 5.013001 ) {
+ _patch(<<'LH2PH2');
+--- lib/h2ph.t
++++ lib/h2ph.t
+@@ -48,7 +48,7 @@ $result = runperl( progfile => '_h2ph_pre.ph',
+ stderr => 1 );
+ like( $result, qr/syntax OK$/, "preamble compiles");
+
+-$result = runperl( switches => ["-w"],
++$result = runperl( switches => ['-I.', "-w"],
+ stderr => 1,
+ prog => <<'PROG' );
+ $SIG{__WARN__} = sub { die $_[0] }; require q(lib/h2ph.pht);
+LH2PH2
+ }
+ elsif ( $num >= 5.010001 ) {
+ _patch(<<'LH2PH3');
+--- lib/h2ph.t
++++ lib/h2ph.t
+@@ -41,7 +41,7 @@ $result = runperl( progfile => 'lib/h2ph.pht',
+ stderr => 1 );
+ like( $result, qr/syntax OK$/, "output compiles");
+
+-$result = runperl( switches => ["-w"],
++$result = runperl( switches => ['-I.',"-w"],
+ prog => '$SIG{__WARN__} = sub { die $_[0] }; require q(lib/h2ph.pht);');
+ is( $result, '', "output free of warnings" );
+
+LH2PH3
+ }
+}
+
qq[patchin'];
__END__
@@ -7762,7 +7892,7 @@
=head1 VERSION
-version 1.56
+version 1.58
=head1 SYNOPSIS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-1.56/t/01-hints.t new/Devel-PatchPerl-1.58/t/01-hints.t
--- old/Devel-PatchPerl-1.56/t/01-hints.t 2019-02-26 15:02:37.000000000 +0100
+++ new/Devel-PatchPerl-1.58/t/01-hints.t 2019-04-26 17:52:07.000000000 +0200
@@ -1,7 +1,7 @@
use strict;
use warnings;
use Test::More qw[no_plan];
-use Devel::PatchPerl::Hints qw[hint_file];
+use Devel::PatchPerl::Hints qw[hint_file hints];
{
my $content = hint_file('freebsd');
@@ -32,3 +32,7 @@
{
ok( $_, 'We got content' ) for map { scalar hint_file( $_ ) } qw(freebsd netbsd linux darwin hpux);
}
+
+{
+ ok( $_, 'We got content' ) for map { scalar hint_file( $_ ) } hints();
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Devel-PatchPerl-1.56/t/04_noplugin.t new/Devel-PatchPerl-1.58/t/04_noplugin.t
--- old/Devel-PatchPerl-1.56/t/04_noplugin.t 1970-01-01 01:00:00.000000000 +0100
+++ new/Devel-PatchPerl-1.58/t/04_noplugin.t 2019-04-26 17:52:07.000000000 +0200
@@ -0,0 +1,11 @@
+use strict;
+use warnings;
+use lib 't/lib';
+BEGIN {
+ $ENV{PERL5_PATCHPERL_PLUGIN} = 'BOLLUCKS';
+}
+use Test::More qq'no_plan';
+use File::Spec;
+use Devel::PatchPerl;
+my $result = Devel::PatchPerl::_process_plugin(version => '5.14.2');
+ok( !$result, 'The result was okay' );
1
0
Hello community,
here is the log from the commit of package perl-Getopt-Long-Descriptive for openSUSE:Factory checked in at 2019-05-06 13:27:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Getopt-Long-Descriptive (Old)
and /work/SRC/openSUSE:Factory/.perl-Getopt-Long-Descriptive.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Getopt-Long-Descriptive"
Mon May 6 13:27:30 2019 rev:20 rq:700735 version:0.104
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Getopt-Long-Descriptive/perl-Getopt-Long-Descriptive.changes 2018-08-31 10:43:58.691169126 +0200
+++ /work/SRC/openSUSE:Factory/.perl-Getopt-Long-Descriptive.new.5148/perl-Getopt-Long-Descriptive.changes 2019-05-06 13:27:32.189293134 +0200
@@ -1,0 +2,9 @@
+Sun Apr 28 05:13:41 UTC 2019 - Stephan Kulow <coolo(a)suse.com>
+
+- updated to 0.104
+ see /usr/share/doc/packages/perl-Getopt-Long-Descriptive/Changes
+
+ 0.104 2019-04-27 10:50:50+01:00 Europe/London
+ - allow for verbatim text in descripition options
+
+-------------------------------------------------------------------
Old:
----
Getopt-Long-Descriptive-0.103.tar.gz
New:
----
Getopt-Long-Descriptive-0.104.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Getopt-Long-Descriptive.spec ++++++
--- /var/tmp/diff_new_pack.aDTm5u/_old 2019-05-06 13:27:32.921294441 +0200
+++ /var/tmp/diff_new_pack.aDTm5u/_new 2019-05-06 13:27:32.921294441 +0200
@@ -1,7 +1,7 @@
#
# spec file for package perl-Getopt-Long-Descriptive
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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
@@ -12,18 +12,18 @@
# 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/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: perl-Getopt-Long-Descriptive
-Version: 0.103
+Version: 0.104
Release: 0
%define cpan_name Getopt-Long-Descriptive
Summary: Getopt::Long, but simpler and more powerful
License: Artistic-1.0 OR GPL-1.0-or-later
Group: Development/Libraries/Perl
-Url: http://search.cpan.org/dist/Getopt-Long-Descriptive/
+Url: https://metacpan.org/release/%{cpan_name}
Source0: https://cpan.metacpan.org/authors/id/R/RJ/RJBS/%{cpan_name}-%{version}.tar.…
Source1: cpanspec.yml
BuildArch: noarch
@@ -55,11 +55,11 @@
%setup -q -n %{cpan_name}-%{version}
%build
-%{__perl} Makefile.PL INSTALLDIRS=vendor
-%{__make} %{?_smp_mflags}
+perl Makefile.PL INSTALLDIRS=vendor
+make %{?_smp_mflags}
%check
-%{__make} test
+make test
%install
%perl_make_install
++++++ Getopt-Long-Descriptive-0.103.tar.gz -> Getopt-Long-Descriptive-0.104.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Getopt-Long-Descriptive-0.103/Changes new/Getopt-Long-Descriptive-0.104/Changes
--- old/Getopt-Long-Descriptive-0.103/Changes 2018-08-02 17:11:35.000000000 +0200
+++ new/Getopt-Long-Descriptive-0.104/Changes 2019-04-27 11:50:53.000000000 +0200
@@ -1,5 +1,8 @@
Revision history for Getopt-Long-Descriptive
+0.104 2019-04-27 10:50:50+01:00 Europe/London
+ - allow for verbatim text in descripition options
+
0.103 2018-08-02 11:11:30-04:00 America/New_York
- show --[no-]option for boolean toggle options
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Getopt-Long-Descriptive-0.103/META.json new/Getopt-Long-Descriptive-0.104/META.json
--- old/Getopt-Long-Descriptive-0.103/META.json 2018-08-02 17:11:35.000000000 +0200
+++ new/Getopt-Long-Descriptive-0.104/META.json 2019-04-27 11:50:53.000000000 +0200
@@ -69,10 +69,10 @@
"web" : "https://github.com/rjbs/Getopt-Long-Descriptive"
}
},
- "version" : "0.103",
+ "version" : "0.104",
"x_Dist_Zilla" : {
"perl" : {
- "version" : "5.026001"
+ "version" : "5.026003"
},
"plugins" : [
{
@@ -92,7 +92,7 @@
}
},
"name" : "@RJBS/Git::GatherDir",
- "version" : "2.045"
+ "version" : "2.046"
},
{
"class" : "Dist::Zilla::Plugin::CheckPrereqsIndexed",
@@ -211,16 +211,16 @@
"config" : {
"Dist::Zilla::Plugin::Git::NextVersion" : {
"first_version" : "0.001",
- "version_by_branch" : 1,
+ "version_by_branch" : 0,
"version_regexp" : "(?^:^([0-9]+\\.[0-9]+)$)"
},
"Dist::Zilla::Role::Git::Repo" : {
- "git_version" : "2.18.0",
+ "git_version" : "2.20.1",
"repo_root" : "."
}
},
"name" : "@RJBS/Git::NextVersion",
- "version" : "2.045"
+ "version" : "2.046"
},
{
"class" : "Dist::Zilla::Plugin::PkgVersion",
@@ -379,7 +379,7 @@
}
},
"name" : "@RJBS/PodWeaver",
- "version" : "4.009"
+ "version" : "4.008"
},
{
"class" : "Dist::Zilla::Plugin::GithubMeta",
@@ -401,19 +401,19 @@
"changelog" : "Changes"
},
"Dist::Zilla::Role::Git::Repo" : {
- "git_version" : "2.18.0",
+ "git_version" : "2.20.1",
"repo_root" : "."
}
},
"name" : "@RJBS/@Git/Check",
- "version" : "2.045"
+ "version" : "2.046"
},
{
"class" : "Dist::Zilla::Plugin::Git::Commit",
"config" : {
"Dist::Zilla::Plugin::Git::Commit" : {
"add_files_in" : [],
- "commit_msg" : "v%v%n%n%c"
+ "commit_msg" : "v%V%n%n%c"
},
"Dist::Zilla::Role::Git::DirtyFiles" : {
"allow_dirty" : [
@@ -424,7 +424,7 @@
"changelog" : "Changes"
},
"Dist::Zilla::Role::Git::Repo" : {
- "git_version" : "2.18.0",
+ "git_version" : "2.20.1",
"repo_root" : "."
},
"Dist::Zilla::Role::Git::StringFormatter" : {
@@ -432,7 +432,7 @@
}
},
"name" : "@RJBS/@Git/Commit",
- "version" : "2.045"
+ "version" : "2.046"
},
{
"class" : "Dist::Zilla::Plugin::Git::Tag",
@@ -441,12 +441,12 @@
"branch" : null,
"changelog" : "Changes",
"signed" : 0,
- "tag" : "0.103",
+ "tag" : "0.104",
"tag_format" : "%v",
- "tag_message" : "v%v"
+ "tag_message" : "v%V"
},
"Dist::Zilla::Role::Git::Repo" : {
- "git_version" : "2.18.0",
+ "git_version" : "2.20.1",
"repo_root" : "."
},
"Dist::Zilla::Role::Git::StringFormatter" : {
@@ -454,31 +454,31 @@
}
},
"name" : "@RJBS/@Git/Tag",
- "version" : "2.045"
+ "version" : "2.046"
},
{
"class" : "Dist::Zilla::Plugin::Git::Push",
"config" : {
"Dist::Zilla::Plugin::Git::Push" : {
"push_to" : [
- "rjbs :",
+ "origin :",
"github :"
],
"remotes_must_exist" : 0
},
"Dist::Zilla::Role::Git::Repo" : {
- "git_version" : "2.18.0",
+ "git_version" : "2.20.1",
"repo_root" : "."
}
},
"name" : "@RJBS/@Git/Push",
- "version" : "2.045"
+ "version" : "2.046"
},
{
"class" : "Dist::Zilla::Plugin::Git::Contributors",
"config" : {
"Dist::Zilla::Plugin::Git::Contributors" : {
- "git_version" : "2.18.0",
+ "git_version" : "2.20.1",
"include_authors" : 0,
"include_releaser" : 1,
"order_by" : "name",
@@ -486,7 +486,7 @@
}
},
"name" : "@RJBS/Git::Contributors",
- "version" : "0.034"
+ "version" : "0.035"
},
{
"class" : "Dist::Zilla::Plugin::Breaks",
@@ -588,7 +588,7 @@
"Thomas Neumann <blacky+perl(a)fluffbunny.de>",
"zhouzhen1 <zhouzhen1(a)gmail.com>"
],
- "x_generated_by_perl" : "v5.26.1",
- "x_serialization_backend" : "Cpanel::JSON::XS version 4.02"
+ "x_generated_by_perl" : "v5.26.3",
+ "x_serialization_backend" : "Cpanel::JSON::XS version 4.09"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Getopt-Long-Descriptive-0.103/META.yml new/Getopt-Long-Descriptive-0.104/META.yml
--- old/Getopt-Long-Descriptive-0.103/META.yml 2018-08-02 17:11:35.000000000 +0200
+++ new/Getopt-Long-Descriptive-0.104/META.yml 2019-04-27 11:50:53.000000000 +0200
@@ -36,10 +36,10 @@
bugtracker: https://github.com/rjbs/Getopt-Long-Descriptive/issues
homepage: https://github.com/rjbs/Getopt-Long-Descriptive
repository: https://github.com/rjbs/Getopt-Long-Descriptive.git
-version: '0.103'
+version: '0.104'
x_Dist_Zilla:
perl:
- version: '5.026001'
+ version: '5.026003'
plugins:
-
class: Dist::Zilla::Plugin::Git::GatherDir
@@ -55,7 +55,7 @@
Dist::Zilla::Plugin::Git::GatherDir:
include_untracked: 0
name: '@RJBS/Git::GatherDir'
- version: '2.045'
+ version: '2.046'
-
class: Dist::Zilla::Plugin::CheckPrereqsIndexed
name: '@RJBS/CheckPrereqsIndexed'
@@ -149,13 +149,13 @@
config:
Dist::Zilla::Plugin::Git::NextVersion:
first_version: '0.001'
- version_by_branch: 1
+ version_by_branch: 0
version_regexp: (?^:^([0-9]+\.[0-9]+)$)
Dist::Zilla::Role::Git::Repo:
- git_version: 2.18.0
+ git_version: 2.20.1
repo_root: .
name: '@RJBS/Git::NextVersion'
- version: '2.045'
+ version: '2.046'
-
class: Dist::Zilla::Plugin::PkgVersion
name: '@RJBS/PkgVersion'
@@ -279,7 +279,7 @@
name: '@RJBS/List'
version: '4.015'
name: '@RJBS/PodWeaver'
- version: '4.009'
+ version: '4.008'
-
class: Dist::Zilla::Plugin::GithubMeta
name: '@RJBS/GithubMeta'
@@ -296,16 +296,16 @@
allow_dirty_match: []
changelog: Changes
Dist::Zilla::Role::Git::Repo:
- git_version: 2.18.0
+ git_version: 2.20.1
repo_root: .
name: '@RJBS/@Git/Check'
- version: '2.045'
+ version: '2.046'
-
class: Dist::Zilla::Plugin::Git::Commit
config:
Dist::Zilla::Plugin::Git::Commit:
add_files_in: []
- commit_msg: v%v%n%n%c
+ commit_msg: v%V%n%n%c
Dist::Zilla::Role::Git::DirtyFiles:
allow_dirty:
- Changes
@@ -313,12 +313,12 @@
allow_dirty_match: []
changelog: Changes
Dist::Zilla::Role::Git::Repo:
- git_version: 2.18.0
+ git_version: 2.20.1
repo_root: .
Dist::Zilla::Role::Git::StringFormatter:
time_zone: local
name: '@RJBS/@Git/Commit'
- version: '2.045'
+ version: '2.046'
-
class: Dist::Zilla::Plugin::Git::Tag
config:
@@ -326,40 +326,40 @@
branch: ~
changelog: Changes
signed: 0
- tag: '0.103'
+ tag: '0.104'
tag_format: '%v'
- tag_message: v%v
+ tag_message: v%V
Dist::Zilla::Role::Git::Repo:
- git_version: 2.18.0
+ git_version: 2.20.1
repo_root: .
Dist::Zilla::Role::Git::StringFormatter:
time_zone: local
name: '@RJBS/@Git/Tag'
- version: '2.045'
+ version: '2.046'
-
class: Dist::Zilla::Plugin::Git::Push
config:
Dist::Zilla::Plugin::Git::Push:
push_to:
- - 'rjbs :'
+ - 'origin :'
- 'github :'
remotes_must_exist: 0
Dist::Zilla::Role::Git::Repo:
- git_version: 2.18.0
+ git_version: 2.20.1
repo_root: .
name: '@RJBS/@Git/Push'
- version: '2.045'
+ version: '2.046'
-
class: Dist::Zilla::Plugin::Git::Contributors
config:
Dist::Zilla::Plugin::Git::Contributors:
- git_version: 2.18.0
+ git_version: 2.20.1
include_authors: 0
include_releaser: 1
order_by: name
paths: []
name: '@RJBS/Git::Contributors'
- version: '0.034'
+ version: '0.035'
-
class: Dist::Zilla::Plugin::Breaks
name: Breaks
@@ -438,5 +438,5 @@
- 'Smylers <SMYLERS(a)cpan.fsck.com>'
- 'Thomas Neumann <blacky+perl(a)fluffbunny.de>'
- 'zhouzhen1 <zhouzhen1(a)gmail.com>'
-x_generated_by_perl: v5.26.1
+x_generated_by_perl: v5.26.3
x_serialization_backend: 'YAML::Tiny version 1.73'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Getopt-Long-Descriptive-0.103/Makefile.PL new/Getopt-Long-Descriptive-0.104/Makefile.PL
--- old/Getopt-Long-Descriptive-0.103/Makefile.PL 2018-08-02 17:11:35.000000000 +0200
+++ new/Getopt-Long-Descriptive-0.104/Makefile.PL 2019-04-27 11:50:53.000000000 +0200
@@ -37,7 +37,7 @@
"Test::More" => "0.96",
"Test::Warnings" => "0.005"
},
- "VERSION" => "0.103",
+ "VERSION" => "0.104",
"test" => {
"TESTS" => "t/*.t"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Getopt-Long-Descriptive-0.103/README new/Getopt-Long-Descriptive-0.104/README
--- old/Getopt-Long-Descriptive-0.103/README 2018-08-02 17:11:35.000000000 +0200
+++ new/Getopt-Long-Descriptive-0.104/README 2019-04-27 11:50:53.000000000 +0200
@@ -1,5 +1,5 @@
This archive contains the distribution Getopt-Long-Descriptive,
-version 0.103:
+version 0.104:
Getopt::Long, but simpler and more powerful
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Getopt-Long-Descriptive-0.103/lib/Getopt/Long/Descriptive/Opts.pm new/Getopt-Long-Descriptive-0.104/lib/Getopt/Long/Descriptive/Opts.pm
--- old/Getopt-Long-Descriptive-0.103/lib/Getopt/Long/Descriptive/Opts.pm 2018-08-02 17:11:35.000000000 +0200
+++ new/Getopt-Long-Descriptive-0.104/lib/Getopt/Long/Descriptive/Opts.pm 2019-04-27 11:50:53.000000000 +0200
@@ -2,7 +2,7 @@
use warnings;
package Getopt::Long::Descriptive::Opts;
# ABSTRACT: object representing command line switches
-$Getopt::Long::Descriptive::Opts::VERSION = '0.103';
+$Getopt::Long::Descriptive::Opts::VERSION = '0.104';
use Scalar::Util qw(blessed weaken);
#pod =head1 DESCRIPTION
@@ -145,7 +145,7 @@
=head1 VERSION
-version 0.103
+version 0.104
=head1 DESCRIPTION
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Getopt-Long-Descriptive-0.103/lib/Getopt/Long/Descriptive/Usage.pm new/Getopt-Long-Descriptive-0.104/lib/Getopt/Long/Descriptive/Usage.pm
--- old/Getopt-Long-Descriptive-0.103/lib/Getopt/Long/Descriptive/Usage.pm 2018-08-02 17:11:35.000000000 +0200
+++ new/Getopt-Long-Descriptive-0.104/lib/Getopt/Long/Descriptive/Usage.pm 2019-04-27 11:50:53.000000000 +0200
@@ -2,7 +2,7 @@
use warnings;
package Getopt::Long::Descriptive::Usage;
# ABSTRACT: the usage description for GLD
-$Getopt::Long::Descriptive::Usage::VERSION = '0.103';
+$Getopt::Long::Descriptive::Usage::VERSION = '0.104';
use List::Util qw(max);
#pod =head1 SYNOPSIS
@@ -86,10 +86,15 @@
my $desc = $opt->{desc};
my $assign;
if ($desc eq 'spacer') {
- my @lines = $self->_split_description($length, $opt->{spec});
-
- $string .= length($_) ? sprintf("$spec_fmt\n", $_) : "\n" for @lines;
- next;
+ if (ref $opt->{spec}) {
+ $string .= "${ $opt->{spec} }\n";
+ next;
+ } else {
+ my @lines = $self->_split_description($length, $opt->{spec});
+
+ $string .= length($_) ? sprintf("$spec_fmt\n", $_) : "\n" for @lines;
+ next;
+ }
}
($spec, $assign) = Getopt::Long::Descriptive->_strip_assignment($spec);
@@ -285,7 +290,7 @@
=head1 VERSION
-version 0.103
+version 0.104
=head1 SYNOPSIS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Getopt-Long-Descriptive-0.103/lib/Getopt/Long/Descriptive.pm new/Getopt-Long-Descriptive-0.104/lib/Getopt/Long/Descriptive.pm
--- old/Getopt-Long-Descriptive-0.103/lib/Getopt/Long/Descriptive.pm 2018-08-02 17:11:35.000000000 +0200
+++ new/Getopt-Long-Descriptive-0.104/lib/Getopt/Long/Descriptive.pm 2019-04-27 11:50:53.000000000 +0200
@@ -2,7 +2,7 @@
use warnings;
package Getopt::Long::Descriptive;
# ABSTRACT: Getopt::Long, but simpler and more powerful
-$Getopt::Long::Descriptive::VERSION = '0.103';
+$Getopt::Long::Descriptive::VERSION = '0.104';
use Carp qw(carp croak);
use File::Basename ();
use Getopt::Long 2.33;
@@ -131,7 +131,9 @@
#pod than causing a blank line to appear in the usage message.
#pod
#pod If the option specification contains only one element, it will be printed in
-#pod the usage message with no other effect.
+#pod the usage message with no other effect. If the element is a reference, its
+#pod referent will be printed as-is. Otherwise, it will be reformatted like other
+#pod text in the usage message.
#pod
#pod If the option specification contains a third element, it adds extra constraints
#pod or modifiers to the interpretation and validation of the value. These are the
@@ -696,7 +698,7 @@
=head1 VERSION
-version 0.103
+version 0.104
=head1 SYNOPSIS
@@ -816,7 +818,9 @@
than causing a blank line to appear in the usage message.
If the option specification contains only one element, it will be printed in
-the usage message with no other effect.
+the usage message with no other effect. If the element is a reference, its
+referent will be printed as-is. Otherwise, it will be reformatted like other
+text in the usage message.
If the option specification contains a third element, it adds extra constraints
or modifiers to the interpretation and validation of the value. These are the
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Getopt-Long-Descriptive-0.103/t/descriptive.t new/Getopt-Long-Descriptive-0.104/t/descriptive.t
--- old/Getopt-Long-Descriptive-0.103/t/descriptive.t 2018-08-02 17:11:35.000000000 +0200
+++ new/Getopt-Long-Descriptive-0.104/t/descriptive.t 2019-04-27 11:50:53.000000000 +0200
@@ -209,6 +209,30 @@
local @ARGV;
my ($opt, $usage) = describe_options(
"%c %o",
+ [ foo => "a foo option" ],
+ [],
+ [\"bar options:\n -> they are cool"],
+ [ bar => "a bar option" ],
+ );
+
+ like(
+ $usage->text,
+ qr/foo option\n[\t\x20]*\nbar options:\n -> they are cool\n\s+--bar/,
+ "verbatim spacer found",
+ );
+
+ local $SIG{__WARN__} = sub {}; # we know that this will warn; don't care
+ like(
+ $usage->(1),
+ qr/foo option\n[\t\x20]*\nbar options:\n -> they are cool\n\s+--bar/,
+ "CODEISH: spacer and non-option description found",
+ );
+}
+
+{
+ local @ARGV;
+ my ($opt, $usage) = describe_options(
+ "%c %o",
[ 'foo' => "foo option" ],
[ 'bar|b' => "bar option" ],
[ 'string|s=s' => "string value" ],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Getopt-Long-Descriptive-0.103/xt/release/changes_has_content.t new/Getopt-Long-Descriptive-0.104/xt/release/changes_has_content.t
--- old/Getopt-Long-Descriptive-0.103/xt/release/changes_has_content.t 2018-08-02 17:11:35.000000000 +0200
+++ new/Getopt-Long-Descriptive-0.104/xt/release/changes_has_content.t 2019-04-27 11:50:53.000000000 +0200
@@ -2,7 +2,7 @@
note 'Checking Changes';
my $changes_file = 'Changes';
-my $newver = '0.103';
+my $newver = '0.104';
my $trial_token = '-TRIAL';
my $encoding = 'UTF-8';
1
0
Hello community,
here is the log from the commit of package perl-Future for openSUSE:Factory checked in at 2019-05-06 13:27:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Future (Old)
and /work/SRC/openSUSE:Factory/.perl-Future.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Future"
Mon May 6 13:27:26 2019 rev:8 rq:700695 version:0.40
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Future/perl-Future.changes 2018-09-26 14:23:23.497924674 +0200
+++ /work/SRC/openSUSE:Factory/.perl-Future.new.5148/perl-Future.changes 2019-05-06 13:27:28.101285835 +0200
@@ -1,0 +2,13 @@
+Sat May 4 05:24:27 UTC 2019 - Stephan Kulow <coolo(a)suse.com>
+
+- updated to 0.40
+ see /usr/share/doc/packages/perl-Future/Changes
+
+ 0.40 2019-05-03
+ [CHANGES]
+ * Added Future::Exception (RT129373)
+ * Make ->get throw a Future::Exception and ->fail recognise one
+ * Better documentation of the failure category parameter
+ * Added a properly-documented ->block_until_ready
+
+-------------------------------------------------------------------
Old:
----
Future-0.39.tar.gz
New:
----
Future-0.40.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Future.spec ++++++
--- /var/tmp/diff_new_pack.o8hR6O/_old 2019-05-06 13:27:28.533286606 +0200
+++ /var/tmp/diff_new_pack.o8hR6O/_new 2019-05-06 13:27:28.537286613 +0200
@@ -1,7 +1,7 @@
#
# spec file for package perl-Future
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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,10 +17,10 @@
Name: perl-Future
-Version: 0.39
+Version: 0.40
Release: 0
%define cpan_name Future
-Summary: Represent an Operation Awaiting Completion
+Summary: Represent an operation awaiting completion
License: Artistic-1.0 OR GPL-1.0-or-later
Group: Development/Libraries/Perl
Url: https://metacpan.org/release/%{cpan_name}
@@ -71,11 +71,14 @@
See also Future::Utils which contains useful loop-constructing functions,
to run a future-returning function repeatedly in a loop.
+Unless otherwise noted, the following methods require at least version
+_0.08_.
+
%prep
%setup -q -n %{cpan_name}-%{version}
%build
-%{__perl} Build.PL installdirs=vendor
+perl Build.PL installdirs=vendor
./Build build flags=%{?_smp_mflags}
%check
@@ -87,7 +90,7 @@
%files -f %{name}.files
%defattr(-,root,root,755)
-%doc Changes examples README
+%doc Changes README
%license LICENSE
%changelog
++++++ Future-0.39.tar.gz -> Future-0.40.tar.gz ++++++
++++ 2123 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package perl-JSON-Validator for openSUSE:Factory checked in at 2019-05-06 13:27:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-JSON-Validator (Old)
and /work/SRC/openSUSE:Factory/.perl-JSON-Validator.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-JSON-Validator"
Mon May 6 13:27:21 2019 rev:4 rq:700693 version:3.09
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-JSON-Validator/perl-JSON-Validator.changes 2019-04-08 10:40:44.219301283 +0200
+++ /work/SRC/openSUSE:Factory/.perl-JSON-Validator.new.5148/perl-JSON-Validator.changes 2019-05-06 13:27:25.065280413 +0200
@@ -1,0 +2,12 @@
+Sun May 5 05:13:01 UTC 2019 - Stephan Kulow <coolo(a)suse.com>
+
+- updated to 3.09
+ see /usr/share/doc/packages/perl-JSON-Validator/Changes
+
+ 3.09 2019-05-04T22:28:55+0700
+ - Prettier definition names from bundle().
+ - Changed default bundle() definitions location from "x-bundle" to "definitions".
+ - Deprecated bundle({ref_ref => ...})
+ - Deprecated bundle({replace => ...})
+
+-------------------------------------------------------------------
Old:
----
JSON-Validator-3.08.tar.gz
New:
----
JSON-Validator-3.09.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-JSON-Validator.spec ++++++
--- /var/tmp/diff_new_pack.M8orLL/_old 2019-05-06 13:27:25.917281934 +0200
+++ /var/tmp/diff_new_pack.M8orLL/_new 2019-05-06 13:27:25.917281934 +0200
@@ -17,7 +17,7 @@
Name: perl-JSON-Validator
-Version: 3.08
+Version: 3.09
Release: 0
%define cpan_name JSON-Validator
Summary: Validate data against a JSON schema
++++++ JSON-Validator-3.08.tar.gz -> JSON-Validator-3.09.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/JSON-Validator-3.08/.vstags new/JSON-Validator-3.09/.vstags
--- old/JSON-Validator-3.08/.vstags 2019-04-06 10:02:22.000000000 +0200
+++ new/JSON-Validator-3.09/.vstags 2019-04-09 04:16:28.000000000 +0200
@@ -4,157 +4,311 @@
!_TAG_PROGRAM_NAME Exuberant Ctags //
!_TAG_PROGRAM_URL http://ctags.sourceforge.net /official site/
!_TAG_PROGRAM_VERSION 5.8 //
+CASE_TOLERANT blib/lib/JSON/Validator.pm 20;" c
CASE_TOLERANT lib/JSON/Validator.pm 20;" c
+COLORS blib/lib/JSON/Validator.pm 21;" c
COLORS lib/JSON/Validator.pm 21;" c
-D lib/JSON/Validator.pm 36;" s
+D blib/lib/JSON/Validator.pm 35;" s
+D lib/JSON/Validator.pm 35;" s
+DATA_VALIDATE_DOMAIN blib/lib/JSON/Validator/Formats.pm 4;" c
DATA_VALIDATE_DOMAIN lib/JSON/Validator/Formats.pm 4;" c
+DATA_VALIDATE_IP blib/lib/JSON/Validator/Formats.pm 5;" c
DATA_VALIDATE_IP lib/JSON/Validator/Formats.pm 5;" c
+DEBUG blib/lib/JSON/Validator.pm 22;" c
DEBUG lib/JSON/Validator.pm 22;" c
-E lib/JSON/Validator.pm 41;" s
+E blib/lib/JSON/Validator.pm 40;" s
+E lib/JSON/Validator.pm 40;" s
+EXISTS blib/lib/JSON/Validator/Ref.pm 14;" s
EXISTS lib/JSON/Validator/Ref.pm 14;" s
+FETCH blib/lib/JSON/Validator/Ref.pm 18;" s
FETCH lib/JSON/Validator/Ref.pm 18;" s
+FIRSTKEY blib/lib/JSON/Validator/Ref.pm 21;" s
FIRSTKEY lib/JSON/Validator/Ref.pm 21;" s
+JSON::Validator blib/lib/JSON/Validator.pm 1;" p
JSON::Validator lib/JSON/Validator.pm 1;" p
+JSON::Validator::CASE_TOLERANT blib/lib/JSON/Validator.pm 20;" c
JSON::Validator::CASE_TOLERANT lib/JSON/Validator.pm 20;" c
+JSON::Validator::COLORS blib/lib/JSON/Validator.pm 21;" c
JSON::Validator::COLORS lib/JSON/Validator.pm 21;" c
-JSON::Validator::D lib/JSON/Validator.pm 36;" s
+JSON::Validator::D blib/lib/JSON/Validator.pm 35;" s
+JSON::Validator::D lib/JSON/Validator.pm 35;" s
+JSON::Validator::DEBUG blib/lib/JSON/Validator.pm 22;" c
JSON::Validator::DEBUG lib/JSON/Validator.pm 22;" c
-JSON::Validator::E lib/JSON/Validator.pm 41;" s
+JSON::Validator::E blib/lib/JSON/Validator.pm 40;" s
+JSON::Validator::E lib/JSON/Validator.pm 40;" s
+JSON::Validator::Error blib/lib/JSON/Validator/Error.pm 1;" p
JSON::Validator::Error lib/JSON/Validator/Error.pm 1;" p
+JSON::Validator::Error::TO_JSON blib/lib/JSON/Validator/Error.pm 15;" s
JSON::Validator::Error::TO_JSON lib/JSON/Validator/Error.pm 15;" s
+JSON::Validator::Error::message blib/lib/JSON/Validator/Error.pm 12;" s
JSON::Validator::Error::message lib/JSON/Validator/Error.pm 12;" s
+JSON::Validator::Error::new blib/lib/JSON/Validator/Error.pm 6;" s
JSON::Validator::Error::new lib/JSON/Validator/Error.pm 6;" s
+JSON::Validator::Error::path blib/lib/JSON/Validator/Error.pm 13;" s
JSON::Validator::Error::path lib/JSON/Validator/Error.pm 13;" s
+JSON::Validator::Error::to_string blib/lib/JSON/Validator/Error.pm 14;" s
JSON::Validator::Error::to_string lib/JSON/Validator/Error.pm 14;" s
+JSON::Validator::Formats blib/lib/JSON/Validator/Formats.pm 1;" p
JSON::Validator::Formats lib/JSON/Validator/Formats.pm 1;" p
+JSON::Validator::Formats::DATA_VALIDATE_DOMAIN blib/lib/JSON/Validator/Formats.pm 4;" c
JSON::Validator::Formats::DATA_VALIDATE_DOMAIN lib/JSON/Validator/Formats.pm 4;" c
+JSON::Validator::Formats::DATA_VALIDATE_IP blib/lib/JSON/Validator/Formats.pm 5;" c
JSON::Validator::Formats::DATA_VALIDATE_IP lib/JSON/Validator/Formats.pm 5;" c
+JSON::Validator::Formats::NET_IDN_ENCODE blib/lib/JSON/Validator/Formats.pm 6;" c
JSON::Validator::Formats::NET_IDN_ENCODE lib/JSON/Validator/Formats.pm 6;" c
+JSON::Validator::Formats::WARN_MISSING_MODULE blib/lib/JSON/Validator/Formats.pm 7;" c
JSON::Validator::Formats::WARN_MISSING_MODULE lib/JSON/Validator/Formats.pm 7;" c
+JSON::Validator::Formats::_module_missing blib/lib/JSON/Validator/Formats.pm 184;" s
JSON::Validator::Formats::_module_missing lib/JSON/Validator/Formats.pm 184;" s
+JSON::Validator::Formats::check_date blib/lib/JSON/Validator/Formats.pm 11;" s
JSON::Validator::Formats::check_date lib/JSON/Validator/Formats.pm 11;" s
+JSON::Validator::Formats::check_date_time blib/lib/JSON/Validator/Formats.pm 24;" s
JSON::Validator::Formats::check_date_time lib/JSON/Validator/Formats.pm 24;" s
+JSON::Validator::Formats::check_email blib/lib/JSON/Validator/Formats.pm 38;" s
JSON::Validator::Formats::check_email lib/JSON/Validator/Formats.pm 38;" s
+JSON::Validator::Formats::check_hostname blib/lib/JSON/Validator/Formats.pm 54;" s
JSON::Validator::Formats::check_hostname lib/JSON/Validator/Formats.pm 54;" s
+JSON::Validator::Formats::check_idn_email blib/lib/JSON/Validator/Formats.pm 61;" s
JSON::Validator::Formats::check_idn_email lib/JSON/Validator/Formats.pm 61;" s
+JSON::Validator::Formats::check_idn_hostname blib/lib/JSON/Validator/Formats.pm 78;" s
JSON::Validator::Formats::check_idn_hostname lib/JSON/Validator/Formats.pm 78;" s
+JSON::Validator::Formats::check_ipv4 blib/lib/JSON/Validator/Formats.pm 126;" s
JSON::Validator::Formats::check_ipv4 lib/JSON/Validator/Formats.pm 126;" s
+JSON::Validator::Formats::check_ipv6 blib/lib/JSON/Validator/Formats.pm 134;" s
JSON::Validator::Formats::check_ipv6 lib/JSON/Validator/Formats.pm 134;" s
+JSON::Validator::Formats::check_iri blib/lib/JSON/Validator/Formats.pm 87;" s
JSON::Validator::Formats::check_iri lib/JSON/Validator/Formats.pm 87;" s
+JSON::Validator::Formats::check_iri_reference blib/lib/JSON/Validator/Formats.pm 93;" s
JSON::Validator::Formats::check_iri_reference lib/JSON/Validator/Formats.pm 93;" s
+JSON::Validator::Formats::check_json_pointer blib/lib/JSON/Validator/Formats.pm 121;" s
JSON::Validator::Formats::check_json_pointer lib/JSON/Validator/Formats.pm 121;" s
+JSON::Validator::Formats::check_regex blib/lib/JSON/Validator/Formats.pm 151;" s
JSON::Validator::Formats::check_regex lib/JSON/Validator/Formats.pm 151;" s
+JSON::Validator::Formats::check_relative_json_pointer blib/lib/JSON/Validator/Formats.pm 140;" s
JSON::Validator::Formats::check_relative_json_pointer lib/JSON/Validator/Formats.pm 140;" s
+JSON::Validator::Formats::check_time blib/lib/JSON/Validator/Formats.pm 155;" s
JSON::Validator::Formats::check_time lib/JSON/Validator/Formats.pm 155;" s
+JSON::Validator::Formats::check_uri blib/lib/JSON/Validator/Formats.pm 168;" s
JSON::Validator::Formats::check_uri lib/JSON/Validator/Formats.pm 168;" s
+JSON::Validator::Formats::check_uri_reference blib/lib/JSON/Validator/Formats.pm 175;" s
JSON::Validator::Formats::check_uri_reference lib/JSON/Validator/Formats.pm 175;" s
+JSON::Validator::Formats::check_uri_template blib/lib/JSON/Validator/Formats.pm 180;" s
JSON::Validator::Formats::check_uri_template lib/JSON/Validator/Formats.pm 180;" s
+JSON::Validator::Joi blib/lib/JSON/Validator/Joi.pm 1;" p
JSON::Validator::Joi lib/JSON/Validator/Joi.pm 1;" p
+JSON::Validator::Joi::TO_JSON blib/lib/JSON/Validator/Joi.pm 152;" s
JSON::Validator::Joi::TO_JSON lib/JSON/Validator/Joi.pm 152;" s
+JSON::Validator::Joi::_compile_array blib/lib/JSON/Validator/Joi.pm 88;" s
JSON::Validator::Joi::_compile_array lib/JSON/Validator/Joi.pm 88;" s
+JSON::Validator::Joi::_compile_boolean blib/lib/JSON/Validator/Joi.pm 101;" s
JSON::Validator::Joi::_compile_boolean lib/JSON/Validator/Joi.pm 101;" s
+JSON::Validator::Joi::_compile_integer blib/lib/JSON/Validator/Joi.pm 103;" s
JSON::Validator::Joi::_compile_integer lib/JSON/Validator/Joi.pm 103;" s
+JSON::Validator::Joi::_compile_null blib/lib/JSON/Validator/Joi.pm 105;" s
JSON::Validator::Joi::_compile_null lib/JSON/Validator/Joi.pm 105;" s
+JSON::Validator::Joi::_compile_number blib/lib/JSON/Validator/Joi.pm 107;" s
JSON::Validator::Joi::_compile_number lib/JSON/Validator/Joi.pm 107;" s
+JSON::Validator::Joi::_compile_object blib/lib/JSON/Validator/Joi.pm 119;" s
JSON::Validator::Joi::_compile_object lib/JSON/Validator/Joi.pm 119;" s
+JSON::Validator::Joi::_compile_string blib/lib/JSON/Validator/Joi.pm 134;" s
JSON::Validator::Joi::_compile_string lib/JSON/Validator/Joi.pm 134;" s
+JSON::Validator::Joi::_type blib/lib/JSON/Validator/Joi.pm 147;" s
JSON::Validator::Joi::_type lib/JSON/Validator/Joi.pm 147;" s
+JSON::Validator::Joi::alphanum blib/lib/JSON/Validator/Joi.pm 19;" s
JSON::Validator::Joi::alphanum lib/JSON/Validator/Joi.pm 19;" s
+JSON::Validator::Joi::array blib/lib/JSON/Validator/Joi.pm 53;" s
JSON::Validator::Joi::array lib/JSON/Validator/Joi.pm 53;" s
+JSON::Validator::Joi::boolean blib/lib/JSON/Validator/Joi.pm 20;" s
JSON::Validator::Joi::boolean lib/JSON/Validator/Joi.pm 20;" s
+JSON::Validator::Joi::compile blib/lib/JSON/Validator/Joi.pm 22;" s
JSON::Validator::Joi::compile lib/JSON/Validator/Joi.pm 22;" s
+JSON::Validator::Joi::date_time blib/lib/JSON/Validator/Joi.pm 35;" s
JSON::Validator::Joi::date_time lib/JSON/Validator/Joi.pm 35;" s
+JSON::Validator::Joi::email blib/lib/JSON/Validator/Joi.pm 36;" s
JSON::Validator::Joi::email lib/JSON/Validator/Joi.pm 36;" s
+JSON::Validator::Joi::extend blib/lib/JSON/Validator/Joi.pm 38;" s
JSON::Validator::Joi::extend lib/JSON/Validator/Joi.pm 38;" s
+JSON::Validator::Joi::integer blib/lib/JSON/Validator/Joi.pm 54;" s
JSON::Validator::Joi::integer lib/JSON/Validator/Joi.pm 54;" s
+JSON::Validator::Joi::iso_date blib/lib/JSON/Validator/Joi.pm 55;" s
JSON::Validator::Joi::iso_date lib/JSON/Validator/Joi.pm 55;" s
+JSON::Validator::Joi::items blib/lib/JSON/Validator/Joi.pm 56;" s
JSON::Validator::Joi::items lib/JSON/Validator/Joi.pm 56;" s
+JSON::Validator::Joi::length blib/lib/JSON/Validator/Joi.pm 57;" s
JSON::Validator::Joi::length lib/JSON/Validator/Joi.pm 57;" s
+JSON::Validator::Joi::lowercase blib/lib/JSON/Validator/Joi.pm 58;" s
JSON::Validator::Joi::lowercase lib/JSON/Validator/Joi.pm 58;" s
+JSON::Validator::Joi::negative blib/lib/JSON/Validator/Joi.pm 59;" s
JSON::Validator::Joi::negative lib/JSON/Validator/Joi.pm 59;" s
+JSON::Validator::Joi::number blib/lib/JSON/Validator/Joi.pm 60;" s
JSON::Validator::Joi::number lib/JSON/Validator/Joi.pm 60;" s
+JSON::Validator::Joi::object blib/lib/JSON/Validator/Joi.pm 61;" s
JSON::Validator::Joi::object lib/JSON/Validator/Joi.pm 61;" s
+JSON::Validator::Joi::pattern blib/lib/JSON/Validator/Joi.pm 62;" s
JSON::Validator::Joi::pattern lib/JSON/Validator/Joi.pm 62;" s
+JSON::Validator::Joi::positive blib/lib/JSON/Validator/Joi.pm 63;" s
JSON::Validator::Joi::positive lib/JSON/Validator/Joi.pm 63;" s
+JSON::Validator::Joi::props blib/lib/JSON/Validator/Joi.pm 65;" s
JSON::Validator::Joi::props lib/JSON/Validator/Joi.pm 65;" s
+JSON::Validator::Joi::string blib/lib/JSON/Validator/Joi.pm 77;" s
JSON::Validator::Joi::string lib/JSON/Validator/Joi.pm 77;" s
+JSON::Validator::Joi::token blib/lib/JSON/Validator/Joi.pm 78;" s
JSON::Validator::Joi::token lib/JSON/Validator/Joi.pm 78;" s
+JSON::Validator::Joi::uppercase blib/lib/JSON/Validator/Joi.pm 79;" s
JSON::Validator::Joi::uppercase lib/JSON/Validator/Joi.pm 79;" s
+JSON::Validator::Joi::uri blib/lib/JSON/Validator/Joi.pm 80;" s
JSON::Validator::Joi::uri lib/JSON/Validator/Joi.pm 80;" s
+JSON::Validator::Joi::validate blib/lib/JSON/Validator/Joi.pm 82;" s
JSON::Validator::Joi::validate lib/JSON/Validator/Joi.pm 82;" s
+JSON::Validator::RECURSION_LIMIT blib/lib/JSON/Validator.pm 24;" c
JSON::Validator::RECURSION_LIMIT lib/JSON/Validator.pm 24;" c
+JSON::Validator::REPORT blib/lib/JSON/Validator.pm 23;" c
JSON::Validator::REPORT lib/JSON/Validator.pm 23;" c
+JSON::Validator::Ref blib/lib/JSON/Validator/Ref.pm 1;" p
JSON::Validator::Ref lib/JSON/Validator/Ref.pm 1;" p
+JSON::Validator::Ref::EXISTS blib/lib/JSON/Validator/Ref.pm 14;" s
JSON::Validator::Ref::EXISTS lib/JSON/Validator/Ref.pm 14;" s
+JSON::Validator::Ref::FETCH blib/lib/JSON/Validator/Ref.pm 18;" s
JSON::Validator::Ref::FETCH lib/JSON/Validator/Ref.pm 18;" s
+JSON::Validator::Ref::FIRSTKEY blib/lib/JSON/Validator/Ref.pm 21;" s
JSON::Validator::Ref::FIRSTKEY lib/JSON/Validator/Ref.pm 21;" s
+JSON::Validator::Ref::KEYS blib/lib/JSON/Validator/Ref.pm 22;" s
JSON::Validator::Ref::KEYS lib/JSON/Validator/Ref.pm 22;" s
+JSON::Validator::Ref::NEXTKEY blib/lib/JSON/Validator/Ref.pm 23;" s
JSON::Validator::Ref::NEXTKEY lib/JSON/Validator/Ref.pm 23;" s
+JSON::Validator::Ref::SCALAR blib/lib/JSON/Validator/Ref.pm 24;" s
JSON::Validator::Ref::SCALAR lib/JSON/Validator/Ref.pm 24;" s
+JSON::Validator::Ref::TIEHASH blib/lib/JSON/Validator/Ref.pm 26;" s
JSON::Validator::Ref::TIEHASH lib/JSON/Validator/Ref.pm 26;" s
+JSON::Validator::Ref::TO_JSON blib/lib/JSON/Validator/Ref.pm 36;" s
JSON::Validator::Ref::TO_JSON lib/JSON/Validator/Ref.pm 36;" s
+JSON::Validator::Ref::fqn blib/lib/JSON/Validator/Ref.pm 9;" s
JSON::Validator::Ref::fqn lib/JSON/Validator/Ref.pm 9;" s
+JSON::Validator::Ref::ref blib/lib/JSON/Validator/Ref.pm 10;" s
JSON::Validator::Ref::ref lib/JSON/Validator/Ref.pm 10;" s
+JSON::Validator::Ref::schema blib/lib/JSON/Validator/Ref.pm 11;" s
JSON::Validator::Ref::schema lib/JSON/Validator/Ref.pm 11;" s
-JSON::Validator::S lib/JSON/Validator.pm 43;" s
+JSON::Validator::S blib/lib/JSON/Validator.pm 42;" s
+JSON::Validator::S lib/JSON/Validator.pm 42;" s
+JSON::Validator::SPECIFICATION_URL blib/lib/JSON/Validator.pm 25;" c
JSON::Validator::SPECIFICATION_URL lib/JSON/Validator.pm 25;" c
-JSON::Validator::_add_path_to_error_messages lib/JSON/Validator.pm 995;" s
-JSON::Validator::_build_formats lib/JSON/Validator.pm 208;" s
-JSON::Validator::_cmp lib/JSON/Validator.pm 1011;" s
-JSON::Validator::_expected lib/JSON/Validator.pm 1018;" s
-JSON::Validator::_get lib/JSON/Validator.pm 232;" s
-JSON::Validator::_guess_data_type lib/JSON/Validator.pm 1025;" s
-JSON::Validator::_guess_schema_type lib/JSON/Validator.pm 1042;" s
-JSON::Validator::_guessed_right lib/JSON/Validator.pm 1072;" s
-JSON::Validator::_id_key lib/JSON/Validator.pm 269;" s
-JSON::Validator::_is_number lib/JSON/Validator.pm 1078;" s
-JSON::Validator::_load_schema lib/JSON/Validator.pm 271;" s
-JSON::Validator::_load_schema_from_text lib/JSON/Validator.pm 315;" s
-JSON::Validator::_load_schema_from_url lib/JSON/Validator.pm 342;" s
-JSON::Validator::_location_to_abs lib/JSON/Validator.pm 491;" s
-JSON::Validator::_path lib/JSON/Validator.pm 1084;" s
-JSON::Validator::_ref_to_schema lib/JSON/Validator.pm 374;" s
-JSON::Validator::_register_schema lib/JSON/Validator.pm 388;" s
-JSON::Validator::_report lib/JSON/Validator.pm 394;" s
-JSON::Validator::_report_colored lib/JSON/Validator.pm 400;" s
-JSON::Validator::_report_errors lib/JSON/Validator.pm 407;" s
-JSON::Validator::_report_schema lib/JSON/Validator.pm 417;" s
-JSON::Validator::_resolve lib/JSON/Validator.pm 425;" s
-JSON::Validator::_resolve_ref lib/JSON/Validator.pm 504;" s
-JSON::Validator::_stack lib/JSON/Validator.pm 535;" s
-JSON::Validator::_uniq lib/JSON/Validator.pm 1091;" s
-JSON::Validator::_validate lib/JSON/Validator.pm 547;" s
-JSON::Validator::_validate_all_of lib/JSON/Validator.pm 614;" s
-JSON::Validator::_validate_any_of lib/JSON/Validator.pm 640;" s
-JSON::Validator::_validate_format lib/JSON/Validator.pm 724;" s
-JSON::Validator::_validate_one_of lib/JSON/Validator.pm 666;" s
-JSON::Validator::_validate_type_any lib/JSON/Validator.pm 733;" s
-JSON::Validator::_validate_type_array lib/JSON/Validator.pm 735;" s
-JSON::Validator::_validate_type_boolean lib/JSON/Validator.pm 794;" s
-JSON::Validator::_validate_type_const lib/JSON/Validator.pm 714;" s
-JSON::Validator::_validate_type_enum lib/JSON/Validator.pm 700;" s
-JSON::Validator::_validate_type_integer lib/JSON/Validator.pm 819;" s
-JSON::Validator::_validate_type_null lib/JSON/Validator.pm 828;" s
-JSON::Validator::_validate_type_number lib/JSON/Validator.pm 835;" s
-JSON::Validator::_validate_type_object lib/JSON/Validator.pm 873;" s
-JSON::Validator::_validate_type_string lib/JSON/Validator.pm 953;" s
-JSON::Validator::bundle lib/JSON/Validator.pm 63;" s
-JSON::Validator::coerce lib/JSON/Validator.pm 130;" s
-JSON::Validator::get lib/JSON/Validator.pm 149;" s
-JSON::Validator::joi lib/JSON/Validator.pm 156;" s
-JSON::Validator::load_and_validate_schema lib/JSON/Validator.pm 162;" s
-JSON::Validator::new lib/JSON/Validator.pm 174;" s
-JSON::Validator::schema lib/JSON/Validator.pm 180;" s
-JSON::Validator::singleton lib/JSON/Validator.pm 187;" s
-JSON::Validator::validate lib/JSON/Validator.pm 189;" s
-JSON::Validator::validate_json lib/JSON/Validator.pm 204;" s
+JSON::Validator::_add_path_to_error_messages blib/lib/JSON/Validator.pm 1014;" s
+JSON::Validator::_add_path_to_error_messages lib/JSON/Validator.pm 1016;" s
+JSON::Validator::_build_formats blib/lib/JSON/Validator.pm 206;" s
+JSON::Validator::_build_formats lib/JSON/Validator.pm 206;" s
+JSON::Validator::_cmp blib/lib/JSON/Validator.pm 1030;" s
+JSON::Validator::_cmp lib/JSON/Validator.pm 1032;" s
+JSON::Validator::_definitions_key blib/lib/JSON/Validator.pm 230;" s
+JSON::Validator::_definitions_key lib/JSON/Validator.pm 230;" s
+JSON::Validator::_expected blib/lib/JSON/Validator.pm 1037;" s
+JSON::Validator::_expected lib/JSON/Validator.pm 1039;" s
+JSON::Validator::_get blib/lib/JSON/Validator.pm 251;" s
+JSON::Validator::_get lib/JSON/Validator.pm 251;" s
+JSON::Validator::_guess_data_type blib/lib/JSON/Validator.pm 1044;" s
+JSON::Validator::_guess_data_type lib/JSON/Validator.pm 1046;" s
+JSON::Validator::_guess_schema_type blib/lib/JSON/Validator.pm 1061;" s
+JSON::Validator::_guess_schema_type lib/JSON/Validator.pm 1063;" s
+JSON::Validator::_guessed_right blib/lib/JSON/Validator.pm 1091;" s
+JSON::Validator::_guessed_right lib/JSON/Validator.pm 1093;" s
+JSON::Validator::_id_key blib/lib/JSON/Validator.pm 288;" s
+JSON::Validator::_id_key lib/JSON/Validator.pm 288;" s
+JSON::Validator::_is_number blib/lib/JSON/Validator.pm 1097;" s
+JSON::Validator::_is_number lib/JSON/Validator.pm 1099;" s
+JSON::Validator::_load_schema blib/lib/JSON/Validator.pm 290;" s
+JSON::Validator::_load_schema lib/JSON/Validator.pm 290;" s
+JSON::Validator::_load_schema_from_text blib/lib/JSON/Validator.pm 334;" s
+JSON::Validator::_load_schema_from_text lib/JSON/Validator.pm 334;" s
+JSON::Validator::_load_schema_from_url blib/lib/JSON/Validator.pm 361;" s
+JSON::Validator::_load_schema_from_url lib/JSON/Validator.pm 361;" s
+JSON::Validator::_location_to_abs blib/lib/JSON/Validator.pm 510;" s
+JSON::Validator::_location_to_abs lib/JSON/Validator.pm 510;" s
+JSON::Validator::_path blib/lib/JSON/Validator.pm 1103;" s
+JSON::Validator::_path lib/JSON/Validator.pm 1105;" s
+JSON::Validator::_ref_to_schema blib/lib/JSON/Validator.pm 393;" s
+JSON::Validator::_ref_to_schema lib/JSON/Validator.pm 393;" s
+JSON::Validator::_register_schema blib/lib/JSON/Validator.pm 407;" s
+JSON::Validator::_register_schema lib/JSON/Validator.pm 407;" s
+JSON::Validator::_report blib/lib/JSON/Validator.pm 413;" s
+JSON::Validator::_report lib/JSON/Validator.pm 413;" s
+JSON::Validator::_report_colored blib/lib/JSON/Validator.pm 419;" s
+JSON::Validator::_report_colored lib/JSON/Validator.pm 419;" s
+JSON::Validator::_report_errors blib/lib/JSON/Validator.pm 426;" s
+JSON::Validator::_report_errors lib/JSON/Validator.pm 426;" s
+JSON::Validator::_report_schema blib/lib/JSON/Validator.pm 436;" s
+JSON::Validator::_report_schema lib/JSON/Validator.pm 436;" s
+JSON::Validator::_resolve blib/lib/JSON/Validator.pm 444;" s
+JSON::Validator::_resolve lib/JSON/Validator.pm 444;" s
+JSON::Validator::_resolve_ref blib/lib/JSON/Validator.pm 523;" s
+JSON::Validator::_resolve_ref lib/JSON/Validator.pm 523;" s
+JSON::Validator::_stack blib/lib/JSON/Validator.pm 554;" s
+JSON::Validator::_stack lib/JSON/Validator.pm 554;" s
+JSON::Validator::_uniq blib/lib/JSON/Validator.pm 1110;" s
+JSON::Validator::_uniq lib/JSON/Validator.pm 1112;" s
+JSON::Validator::_validate blib/lib/JSON/Validator.pm 566;" s
+JSON::Validator::_validate lib/JSON/Validator.pm 566;" s
+JSON::Validator::_validate_all_of blib/lib/JSON/Validator.pm 633;" s
+JSON::Validator::_validate_all_of lib/JSON/Validator.pm 633;" s
+JSON::Validator::_validate_any_of blib/lib/JSON/Validator.pm 659;" s
+JSON::Validator::_validate_any_of lib/JSON/Validator.pm 659;" s
+JSON::Validator::_validate_format blib/lib/JSON/Validator.pm 743;" s
+JSON::Validator::_validate_format lib/JSON/Validator.pm 745;" s
+JSON::Validator::_validate_one_of blib/lib/JSON/Validator.pm 685;" s
+JSON::Validator::_validate_one_of lib/JSON/Validator.pm 686;" s
+JSON::Validator::_validate_type_any blib/lib/JSON/Validator.pm 752;" s
+JSON::Validator::_validate_type_any lib/JSON/Validator.pm 754;" s
+JSON::Validator::_validate_type_array blib/lib/JSON/Validator.pm 754;" s
+JSON::Validator::_validate_type_array lib/JSON/Validator.pm 756;" s
+JSON::Validator::_validate_type_boolean blib/lib/JSON/Validator.pm 813;" s
+JSON::Validator::_validate_type_boolean lib/JSON/Validator.pm 815;" s
+JSON::Validator::_validate_type_const blib/lib/JSON/Validator.pm 733;" s
+JSON::Validator::_validate_type_const lib/JSON/Validator.pm 735;" s
+JSON::Validator::_validate_type_enum blib/lib/JSON/Validator.pm 719;" s
+JSON::Validator::_validate_type_enum lib/JSON/Validator.pm 721;" s
+JSON::Validator::_validate_type_integer blib/lib/JSON/Validator.pm 838;" s
+JSON::Validator::_validate_type_integer lib/JSON/Validator.pm 840;" s
+JSON::Validator::_validate_type_null blib/lib/JSON/Validator.pm 847;" s
+JSON::Validator::_validate_type_null lib/JSON/Validator.pm 849;" s
+JSON::Validator::_validate_type_number blib/lib/JSON/Validator.pm 854;" s
+JSON::Validator::_validate_type_number lib/JSON/Validator.pm 856;" s
+JSON::Validator::_validate_type_object blib/lib/JSON/Validator.pm 892;" s
+JSON::Validator::_validate_type_object lib/JSON/Validator.pm 894;" s
+JSON::Validator::_validate_type_string blib/lib/JSON/Validator.pm 972;" s
+JSON::Validator::_validate_type_string lib/JSON/Validator.pm 974;" s
+JSON::Validator::bundle blib/lib/JSON/Validator.pm 62;" s
+JSON::Validator::bundle lib/JSON/Validator.pm 62;" s
+JSON::Validator::coerce blib/lib/JSON/Validator.pm 128;" s
+JSON::Validator::coerce lib/JSON/Validator.pm 128;" s
+JSON::Validator::get blib/lib/JSON/Validator.pm 147;" s
+JSON::Validator::get lib/JSON/Validator.pm 147;" s
+JSON::Validator::joi blib/lib/JSON/Validator.pm 154;" s
+JSON::Validator::joi lib/JSON/Validator.pm 154;" s
+JSON::Validator::load_and_validate_schema blib/lib/JSON/Validator.pm 160;" s
+JSON::Validator::load_and_validate_schema lib/JSON/Validator.pm 160;" s
+JSON::Validator::new blib/lib/JSON/Validator.pm 172;" s
+JSON::Validator::new lib/JSON/Validator.pm 172;" s
+JSON::Validator::schema blib/lib/JSON/Validator.pm 178;" s
+JSON::Validator::schema lib/JSON/Validator.pm 178;" s
+JSON::Validator::singleton blib/lib/JSON/Validator.pm 185;" s
+JSON::Validator::singleton lib/JSON/Validator.pm 185;" s
+JSON::Validator::validate blib/lib/JSON/Validator.pm 187;" s
+JSON::Validator::validate lib/JSON/Validator.pm 187;" s
+JSON::Validator::validate_json blib/lib/JSON/Validator.pm 202;" s
+JSON::Validator::validate_json lib/JSON/Validator.pm 202;" s
+KEYS blib/lib/JSON/Validator/Ref.pm 22;" s
KEYS lib/JSON/Validator/Ref.pm 22;" s
+NET_IDN_ENCODE blib/lib/JSON/Validator/Formats.pm 6;" c
NET_IDN_ENCODE lib/JSON/Validator/Formats.pm 6;" c
+NEXTKEY blib/lib/JSON/Validator/Ref.pm 23;" s
NEXTKEY lib/JSON/Validator/Ref.pm 23;" s
+RECURSION_LIMIT blib/lib/JSON/Validator.pm 24;" c
RECURSION_LIMIT lib/JSON/Validator.pm 24;" c
+REPORT blib/lib/JSON/Validator.pm 23;" c
REPORT lib/JSON/Validator.pm 23;" c
-S lib/JSON/Validator.pm 43;" s
+S blib/lib/JSON/Validator.pm 42;" s
+S lib/JSON/Validator.pm 42;" s
+SCALAR blib/lib/JSON/Validator/Ref.pm 24;" s
SCALAR lib/JSON/Validator/Ref.pm 24;" s
+SPECIFICATION_URL blib/lib/JSON/Validator.pm 25;" c
SPECIFICATION_URL lib/JSON/Validator.pm 25;" c
Some t/stack/Some.pm 1;" p
Some::Module t/stack/Some/Module.pm 1;" p
@@ -163,114 +317,220 @@
Some::j t/stack/Some.pm 4;" s
Some::validate_age0 t/stack/Some.pm 5;" s
Some::validate_age1 t/stack/Some.pm 6;" s
+TIEHASH blib/lib/JSON/Validator/Ref.pm 26;" s
TIEHASH lib/JSON/Validator/Ref.pm 26;" s
+TO_JSON blib/lib/JSON/Validator/Error.pm 15;" s
+TO_JSON blib/lib/JSON/Validator/Joi.pm 152;" s
+TO_JSON blib/lib/JSON/Validator/Ref.pm 36;" s
TO_JSON lib/JSON/Validator/Error.pm 15;" s
TO_JSON lib/JSON/Validator/Joi.pm 152;" s
TO_JSON lib/JSON/Validator/Ref.pm 36;" s
+WARN_MISSING_MODULE blib/lib/JSON/Validator/Formats.pm 7;" c
WARN_MISSING_MODULE lib/JSON/Validator/Formats.pm 7;" c
-_add_path_to_error_messages lib/JSON/Validator.pm 995;" s
-_build_formats lib/JSON/Validator.pm 208;" s
-_cmp lib/JSON/Validator.pm 1011;" s
+_add_path_to_error_messages blib/lib/JSON/Validator.pm 1014;" s
+_add_path_to_error_messages lib/JSON/Validator.pm 1016;" s
+_build_formats blib/lib/JSON/Validator.pm 206;" s
+_build_formats lib/JSON/Validator.pm 206;" s
+_cmp blib/lib/JSON/Validator.pm 1030;" s
+_cmp lib/JSON/Validator.pm 1032;" s
+_compile_array blib/lib/JSON/Validator/Joi.pm 88;" s
_compile_array lib/JSON/Validator/Joi.pm 88;" s
+_compile_boolean blib/lib/JSON/Validator/Joi.pm 101;" s
_compile_boolean lib/JSON/Validator/Joi.pm 101;" s
+_compile_integer blib/lib/JSON/Validator/Joi.pm 103;" s
_compile_integer lib/JSON/Validator/Joi.pm 103;" s
+_compile_null blib/lib/JSON/Validator/Joi.pm 105;" s
_compile_null lib/JSON/Validator/Joi.pm 105;" s
+_compile_number blib/lib/JSON/Validator/Joi.pm 107;" s
_compile_number lib/JSON/Validator/Joi.pm 107;" s
+_compile_object blib/lib/JSON/Validator/Joi.pm 119;" s
_compile_object lib/JSON/Validator/Joi.pm 119;" s
+_compile_string blib/lib/JSON/Validator/Joi.pm 134;" s
_compile_string lib/JSON/Validator/Joi.pm 134;" s
-_expected lib/JSON/Validator.pm 1018;" s
-_get lib/JSON/Validator.pm 232;" s
-_guess_data_type lib/JSON/Validator.pm 1025;" s
-_guess_schema_type lib/JSON/Validator.pm 1042;" s
-_guessed_right lib/JSON/Validator.pm 1072;" s
-_id_key lib/JSON/Validator.pm 269;" s
-_is_number lib/JSON/Validator.pm 1078;" s
-_load_schema lib/JSON/Validator.pm 271;" s
-_load_schema_from_text lib/JSON/Validator.pm 315;" s
-_load_schema_from_url lib/JSON/Validator.pm 342;" s
-_location_to_abs lib/JSON/Validator.pm 491;" s
+_definitions_key blib/lib/JSON/Validator.pm 230;" s
+_definitions_key lib/JSON/Validator.pm 230;" s
+_expected blib/lib/JSON/Validator.pm 1037;" s
+_expected lib/JSON/Validator.pm 1039;" s
+_get blib/lib/JSON/Validator.pm 251;" s
+_get lib/JSON/Validator.pm 251;" s
+_guess_data_type blib/lib/JSON/Validator.pm 1044;" s
+_guess_data_type lib/JSON/Validator.pm 1046;" s
+_guess_schema_type blib/lib/JSON/Validator.pm 1061;" s
+_guess_schema_type lib/JSON/Validator.pm 1063;" s
+_guessed_right blib/lib/JSON/Validator.pm 1091;" s
+_guessed_right lib/JSON/Validator.pm 1093;" s
+_id_key blib/lib/JSON/Validator.pm 288;" s
+_id_key lib/JSON/Validator.pm 288;" s
+_is_number blib/lib/JSON/Validator.pm 1097;" s
+_is_number lib/JSON/Validator.pm 1099;" s
+_load_schema blib/lib/JSON/Validator.pm 290;" s
+_load_schema lib/JSON/Validator.pm 290;" s
+_load_schema_from_text blib/lib/JSON/Validator.pm 334;" s
+_load_schema_from_text lib/JSON/Validator.pm 334;" s
+_load_schema_from_url blib/lib/JSON/Validator.pm 361;" s
+_load_schema_from_url lib/JSON/Validator.pm 361;" s
+_location_to_abs blib/lib/JSON/Validator.pm 510;" s
+_location_to_abs lib/JSON/Validator.pm 510;" s
+_module_missing blib/lib/JSON/Validator/Formats.pm 184;" s
_module_missing lib/JSON/Validator/Formats.pm 184;" s
-_path lib/JSON/Validator.pm 1084;" s
-_ref_to_schema lib/JSON/Validator.pm 374;" s
-_register_schema lib/JSON/Validator.pm 388;" s
-_report lib/JSON/Validator.pm 394;" s
-_report_colored lib/JSON/Validator.pm 400;" s
-_report_errors lib/JSON/Validator.pm 407;" s
-_report_schema lib/JSON/Validator.pm 417;" s
-_resolve lib/JSON/Validator.pm 425;" s
-_resolve_ref lib/JSON/Validator.pm 504;" s
-_stack lib/JSON/Validator.pm 535;" s
+_path blib/lib/JSON/Validator.pm 1103;" s
+_path lib/JSON/Validator.pm 1105;" s
+_ref_to_schema blib/lib/JSON/Validator.pm 393;" s
+_ref_to_schema lib/JSON/Validator.pm 393;" s
+_register_schema blib/lib/JSON/Validator.pm 407;" s
+_register_schema lib/JSON/Validator.pm 407;" s
+_report blib/lib/JSON/Validator.pm 413;" s
+_report lib/JSON/Validator.pm 413;" s
+_report_colored blib/lib/JSON/Validator.pm 419;" s
+_report_colored lib/JSON/Validator.pm 419;" s
+_report_errors blib/lib/JSON/Validator.pm 426;" s
+_report_errors lib/JSON/Validator.pm 426;" s
+_report_schema blib/lib/JSON/Validator.pm 436;" s
+_report_schema lib/JSON/Validator.pm 436;" s
+_resolve blib/lib/JSON/Validator.pm 444;" s
+_resolve lib/JSON/Validator.pm 444;" s
+_resolve_ref blib/lib/JSON/Validator.pm 523;" s
+_resolve_ref lib/JSON/Validator.pm 523;" s
+_stack blib/lib/JSON/Validator.pm 554;" s
+_stack lib/JSON/Validator.pm 554;" s
+_type blib/lib/JSON/Validator/Joi.pm 147;" s
_type lib/JSON/Validator/Joi.pm 147;" s
-_uniq lib/JSON/Validator.pm 1091;" s
-_validate lib/JSON/Validator.pm 547;" s
-_validate_all_of lib/JSON/Validator.pm 614;" s
-_validate_any_of lib/JSON/Validator.pm 640;" s
-_validate_format lib/JSON/Validator.pm 724;" s
-_validate_one_of lib/JSON/Validator.pm 666;" s
-_validate_type_any lib/JSON/Validator.pm 733;" s
-_validate_type_array lib/JSON/Validator.pm 735;" s
-_validate_type_boolean lib/JSON/Validator.pm 794;" s
-_validate_type_const lib/JSON/Validator.pm 714;" s
-_validate_type_enum lib/JSON/Validator.pm 700;" s
-_validate_type_integer lib/JSON/Validator.pm 819;" s
-_validate_type_null lib/JSON/Validator.pm 828;" s
-_validate_type_number lib/JSON/Validator.pm 835;" s
-_validate_type_object lib/JSON/Validator.pm 873;" s
-_validate_type_string lib/JSON/Validator.pm 953;" s
+_uniq blib/lib/JSON/Validator.pm 1110;" s
+_uniq lib/JSON/Validator.pm 1112;" s
+_validate blib/lib/JSON/Validator.pm 566;" s
+_validate lib/JSON/Validator.pm 566;" s
+_validate_all_of blib/lib/JSON/Validator.pm 633;" s
+_validate_all_of lib/JSON/Validator.pm 633;" s
+_validate_any_of blib/lib/JSON/Validator.pm 659;" s
+_validate_any_of lib/JSON/Validator.pm 659;" s
+_validate_format blib/lib/JSON/Validator.pm 743;" s
+_validate_format lib/JSON/Validator.pm 745;" s
+_validate_one_of blib/lib/JSON/Validator.pm 685;" s
+_validate_one_of lib/JSON/Validator.pm 686;" s
+_validate_type_any blib/lib/JSON/Validator.pm 752;" s
+_validate_type_any lib/JSON/Validator.pm 754;" s
+_validate_type_array blib/lib/JSON/Validator.pm 754;" s
+_validate_type_array lib/JSON/Validator.pm 756;" s
+_validate_type_boolean blib/lib/JSON/Validator.pm 813;" s
+_validate_type_boolean lib/JSON/Validator.pm 815;" s
+_validate_type_const blib/lib/JSON/Validator.pm 733;" s
+_validate_type_const lib/JSON/Validator.pm 735;" s
+_validate_type_enum blib/lib/JSON/Validator.pm 719;" s
+_validate_type_enum lib/JSON/Validator.pm 721;" s
+_validate_type_integer blib/lib/JSON/Validator.pm 838;" s
+_validate_type_integer lib/JSON/Validator.pm 840;" s
+_validate_type_null blib/lib/JSON/Validator.pm 847;" s
+_validate_type_null lib/JSON/Validator.pm 849;" s
+_validate_type_number blib/lib/JSON/Validator.pm 854;" s
+_validate_type_number lib/JSON/Validator.pm 856;" s
+_validate_type_object blib/lib/JSON/Validator.pm 892;" s
+_validate_type_object lib/JSON/Validator.pm 894;" s
+_validate_type_string blib/lib/JSON/Validator.pm 972;" s
+_validate_type_string lib/JSON/Validator.pm 974;" s
+alphanum blib/lib/JSON/Validator/Joi.pm 19;" s
alphanum lib/JSON/Validator/Joi.pm 19;" s
+array blib/lib/JSON/Validator/Joi.pm 53;" s
array lib/JSON/Validator/Joi.pm 53;" s
+boolean blib/lib/JSON/Validator/Joi.pm 20;" s
boolean lib/JSON/Validator/Joi.pm 20;" s
-bundle lib/JSON/Validator.pm 63;" s
+bundle blib/lib/JSON/Validator.pm 62;" s
+bundle lib/JSON/Validator.pm 62;" s
+check_date blib/lib/JSON/Validator/Formats.pm 11;" s
check_date lib/JSON/Validator/Formats.pm 11;" s
+check_date_time blib/lib/JSON/Validator/Formats.pm 24;" s
check_date_time lib/JSON/Validator/Formats.pm 24;" s
+check_email blib/lib/JSON/Validator/Formats.pm 38;" s
check_email lib/JSON/Validator/Formats.pm 38;" s
+check_hostname blib/lib/JSON/Validator/Formats.pm 54;" s
check_hostname lib/JSON/Validator/Formats.pm 54;" s
+check_idn_email blib/lib/JSON/Validator/Formats.pm 61;" s
check_idn_email lib/JSON/Validator/Formats.pm 61;" s
+check_idn_hostname blib/lib/JSON/Validator/Formats.pm 78;" s
check_idn_hostname lib/JSON/Validator/Formats.pm 78;" s
+check_ipv4 blib/lib/JSON/Validator/Formats.pm 126;" s
check_ipv4 lib/JSON/Validator/Formats.pm 126;" s
+check_ipv6 blib/lib/JSON/Validator/Formats.pm 134;" s
check_ipv6 lib/JSON/Validator/Formats.pm 134;" s
+check_iri blib/lib/JSON/Validator/Formats.pm 87;" s
check_iri lib/JSON/Validator/Formats.pm 87;" s
+check_iri_reference blib/lib/JSON/Validator/Formats.pm 93;" s
check_iri_reference lib/JSON/Validator/Formats.pm 93;" s
+check_json_pointer blib/lib/JSON/Validator/Formats.pm 121;" s
check_json_pointer lib/JSON/Validator/Formats.pm 121;" s
+check_regex blib/lib/JSON/Validator/Formats.pm 151;" s
check_regex lib/JSON/Validator/Formats.pm 151;" s
+check_relative_json_pointer blib/lib/JSON/Validator/Formats.pm 140;" s
check_relative_json_pointer lib/JSON/Validator/Formats.pm 140;" s
+check_time blib/lib/JSON/Validator/Formats.pm 155;" s
check_time lib/JSON/Validator/Formats.pm 155;" s
+check_uri blib/lib/JSON/Validator/Formats.pm 168;" s
check_uri lib/JSON/Validator/Formats.pm 168;" s
+check_uri_reference blib/lib/JSON/Validator/Formats.pm 175;" s
check_uri_reference lib/JSON/Validator/Formats.pm 175;" s
+check_uri_template blib/lib/JSON/Validator/Formats.pm 180;" s
check_uri_template lib/JSON/Validator/Formats.pm 180;" s
-coerce lib/JSON/Validator.pm 130;" s
+coerce blib/lib/JSON/Validator.pm 128;" s
+coerce lib/JSON/Validator.pm 128;" s
+compile blib/lib/JSON/Validator/Joi.pm 22;" s
compile lib/JSON/Validator/Joi.pm 22;" s
+date_time blib/lib/JSON/Validator/Joi.pm 35;" s
date_time lib/JSON/Validator/Joi.pm 35;" s
edj t/Helper.pm 11;" s
+email blib/lib/JSON/Validator/Joi.pm 36;" s
email lib/JSON/Validator/Joi.pm 36;" s
+extend blib/lib/JSON/Validator/Joi.pm 38;" s
extend lib/JSON/Validator/Joi.pm 38;" s
+fqn blib/lib/JSON/Validator/Ref.pm 9;" s
fqn lib/JSON/Validator/Ref.pm 9;" s
-get lib/JSON/Validator.pm 149;" s
+get blib/lib/JSON/Validator.pm 147;" s
+get lib/JSON/Validator.pm 147;" s
import t/Helper.pm 41;" s
+integer blib/lib/JSON/Validator/Joi.pm 54;" s
integer lib/JSON/Validator/Joi.pm 54;" s
+iso_date blib/lib/JSON/Validator/Joi.pm 55;" s
iso_date lib/JSON/Validator/Joi.pm 55;" s
+items blib/lib/JSON/Validator/Joi.pm 56;" s
items lib/JSON/Validator/Joi.pm 56;" s
j t/stack/Some.pm 4;" s
-joi lib/JSON/Validator.pm 156;" s
+joi blib/lib/JSON/Validator.pm 154;" s
+joi lib/JSON/Validator.pm 154;" s
joi_ok t/Helper.pm 15;" s
jv t/Helper.pm 27;" s
+length blib/lib/JSON/Validator/Joi.pm 57;" s
length lib/JSON/Validator/Joi.pm 57;" s
-load_and_validate_schema lib/JSON/Validator.pm 162;" s
+load_and_validate_schema blib/lib/JSON/Validator.pm 160;" s
+load_and_validate_schema lib/JSON/Validator.pm 160;" s
+lowercase blib/lib/JSON/Validator/Joi.pm 58;" s
lowercase lib/JSON/Validator/Joi.pm 58;" s
+message blib/lib/JSON/Validator/Error.pm 12;" s
message lib/JSON/Validator/Error.pm 12;" s
+negative blib/lib/JSON/Validator/Joi.pm 59;" s
negative lib/JSON/Validator/Joi.pm 59;" s
-new lib/JSON/Validator.pm 174;" s
+new blib/lib/JSON/Validator.pm 172;" s
+new blib/lib/JSON/Validator/Error.pm 6;" s
+new lib/JSON/Validator.pm 172;" s
new lib/JSON/Validator/Error.pm 6;" s
+number blib/lib/JSON/Validator/Joi.pm 60;" s
number lib/JSON/Validator/Joi.pm 60;" s
+object blib/lib/JSON/Validator/Joi.pm 61;" s
object lib/JSON/Validator/Joi.pm 61;" s
+path blib/lib/JSON/Validator/Error.pm 13;" s
path lib/JSON/Validator/Error.pm 13;" s
+pattern blib/lib/JSON/Validator/Joi.pm 62;" s
pattern lib/JSON/Validator/Joi.pm 62;" s
+positive blib/lib/JSON/Validator/Joi.pm 63;" s
positive lib/JSON/Validator/Joi.pm 63;" s
+props blib/lib/JSON/Validator/Joi.pm 65;" s
props lib/JSON/Validator/Joi.pm 65;" s
+ref blib/lib/JSON/Validator/Ref.pm 10;" s
ref lib/JSON/Validator/Ref.pm 10;" s
-schema lib/JSON/Validator.pm 180;" s
+schema blib/lib/JSON/Validator.pm 178;" s
+schema blib/lib/JSON/Validator/Ref.pm 11;" s
+schema lib/JSON/Validator.pm 178;" s
schema lib/JSON/Validator/Ref.pm 11;" s
-singleton lib/JSON/Validator.pm 187;" s
+singleton blib/lib/JSON/Validator.pm 185;" s
+singleton lib/JSON/Validator.pm 185;" s
+string blib/lib/JSON/Validator/Joi.pm 77;" s
string lib/JSON/Validator/Joi.pm 77;" s
t::Helper t/Helper.pm 1;" p
t::Helper::edj t/Helper.pm 11;" s
@@ -278,15 +538,22 @@
t::Helper::joi_ok t/Helper.pm 15;" s
t::Helper::jv t/Helper.pm 27;" s
t::Helper::validate_ok t/Helper.pm 29;" s
+to_string blib/lib/JSON/Validator/Error.pm 14;" s
to_string lib/JSON/Validator/Error.pm 14;" s
+token blib/lib/JSON/Validator/Joi.pm 78;" s
token lib/JSON/Validator/Joi.pm 78;" s
+uppercase blib/lib/JSON/Validator/Joi.pm 79;" s
uppercase lib/JSON/Validator/Joi.pm 79;" s
+uri blib/lib/JSON/Validator/Joi.pm 80;" s
uri lib/JSON/Validator/Joi.pm 80;" s
-validate lib/JSON/Validator.pm 189;" s
+validate blib/lib/JSON/Validator.pm 187;" s
+validate blib/lib/JSON/Validator/Joi.pm 82;" s
+validate lib/JSON/Validator.pm 187;" s
validate lib/JSON/Validator/Joi.pm 82;" s
validate_age0 t/stack/Some.pm 5;" s
validate_age0 t/stack/Some/Module.pm 4;" s
validate_age1 t/stack/Some.pm 6;" s
validate_age1 t/stack/Some/Module.pm 5;" s
-validate_json lib/JSON/Validator.pm 204;" s
+validate_json blib/lib/JSON/Validator.pm 202;" s
+validate_json lib/JSON/Validator.pm 202;" s
validate_ok t/Helper.pm 29;" s
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/JSON-Validator-3.08/Changes new/JSON-Validator-3.09/Changes
--- old/JSON-Validator-3.08/Changes 2019-04-06 10:07:11.000000000 +0200
+++ new/JSON-Validator-3.09/Changes 2019-05-04 17:28:55.000000000 +0200
@@ -1,5 +1,11 @@
Revision history for perl distribution JSON-Validator
+3.09 2019-05-04T22:28:55+0700
+ - Prettier definition names from bundle().
+ - Changed default bundle() definitions location from "x-bundle" to "definitions".
+ - Deprecated bundle({ref_ref => ...})
+ - Deprecated bundle({replace => ...})
+
3.08 2019-04-06T15:07:11+0700
- Add support for "default" in object definitions #155
- Add support for coerce("bool,def,num,str") as alternative to hash
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/JSON-Validator-3.08/META.json new/JSON-Validator-3.09/META.json
--- old/JSON-Validator-3.08/META.json 2019-04-06 10:07:12.000000000 +0200
+++ new/JSON-Validator-3.09/META.json 2019-05-04 17:28:56.000000000 +0200
@@ -60,6 +60,6 @@
},
"x_IRC" : "irc://irc.freenode.net/#mojo"
},
- "version" : "3.08",
+ "version" : "3.09",
"x_serialization_backend" : "JSON::PP version 2.97001"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/JSON-Validator-3.08/META.yml new/JSON-Validator-3.09/META.yml
--- old/JSON-Validator-3.08/META.yml 2019-04-06 10:07:12.000000000 +0200
+++ new/JSON-Validator-3.09/META.yml 2019-05-04 17:28:56.000000000 +0200
@@ -29,5 +29,5 @@
homepage: https://mojolicious.org
license: http://www.opensource.org/licenses/artistic-license-2.0
repository: https://github.com/mojolicious/json-validator.git
-version: '3.08'
+version: '3.09'
x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/JSON-Validator-3.08/lib/JSON/Validator.pm new/JSON-Validator-3.09/lib/JSON/Validator.pm
--- old/JSON-Validator-3.08/lib/JSON/Validator.pm 2019-04-06 10:07:11.000000000 +0200
+++ new/JSON-Validator-3.09/lib/JSON/Validator.pm 2019-05-04 17:28:55.000000000 +0200
@@ -24,11 +24,10 @@
use constant RECURSION_LIMIT => $ENV{JSON_VALIDATOR_RECURSION_LIMIT} || 100;
use constant SPECIFICATION_URL => 'http://json-schema.org/draft-04/schema#';
-our $VERSION = '3.08';
-our @EXPORT_OK = qw(joi validate_json);
-
-# $YAML_LOADER should be considered internal
-our $YAML_LOADER = eval q[use YAML::XS 0.67; YAML::XS->can('Load')];
+our $DEFINITIONS = 'definitions';
+our $VERSION = '3.09';
+our $YAML_LOADER = eval q[use YAML::XS 0.67; YAML::XS->can('Load')]; # internal
+our @EXPORT_OK = qw(joi validate_json);
my $BUNDLED_CACHE_DIR = path(path(__FILE__)->dirname, qw(Validator cache));
my $HTTP_SCHEME_RE = qr{^https?:};
@@ -68,6 +67,12 @@
$topics[0][0]
= $args->{schema} ? $self->_resolve($args->{schema}) : $self->schema->data;
+ local $DEFINITIONS = $args->{ref_key} || $DEFINITIONS;
+ Mojo::Util::deprecated('bundle({ref_key => "..."}) will be removed.')
+ if $args->{ref_key};
+ Mojo::Util::deprecated('bundle({replace => 1}) will be removed.')
+ if $args->{replace};
+
if ($args->{replace}) {
$cloner = sub {
my $from = shift;
@@ -79,33 +84,26 @@
};
}
else {
- my $ref_key = $args->{ref_key} || 'x-bundled';
- $bundle->{$ref_key} = $topics[0][0]{$ref_key} || {};
+ my %seen;
+ $bundle->{$DEFINITIONS} = $topics[0][0]{$DEFINITIONS} || {};
$cloner = sub {
- my $from = shift;
- my $ref = ref $from;
+ my $from = shift;
+ my $from_type = ref $from;
- if ($ref eq 'HASH' and my $tied = tied %$from) {
- my $ref_name = $tied->fqn;
- my $file_name = (split '#', $ref_name)[0];
- return $from if $ref_name =~ m!^\Q$self->{root_schema_url}\E\#!;
-
- if (-e $file_name) {
- $ref_name = sprintf '%s-%s', substr(sha1_sum($ref_name), 0, 10),
- path($file_name)->basename;
- }
- else {
- $ref_name =~ s![^\w-]!_!g;
- }
-
- push @topics, [$tied->schema, $bundle->{$ref_key}{$ref_name} = {}];
- tie my %ref, 'JSON::Validator::Ref', $tied->schema,
- "#/$ref_key/$ref_name";
+ if ($from_type eq 'HASH' and my $ref = tied %$from) {
+ return $from
+ if !$args->{schema}
+ and $ref->fqn =~ m!^\Q$self->{root_schema_url}\E\#!;
+
+ my $k = $self->_definitions_key($bundle, $ref, \%seen);
+ push @topics, [$ref->schema, $bundle->{$DEFINITIONS}{$k} ||= {}]
+ unless $seen{$ref->fqn}++;
+ tie my %ref, 'JSON::Validator::Ref', $ref->schema, "#/$DEFINITIONS/$k";
return \%ref;
}
- my $to = $ref eq 'ARRAY' ? [] : $ref eq 'HASH' ? {} : $from;
- push @topics, [$from, $to] if $ref;
+ my $to = $from_type eq 'ARRAY' ? [] : $from_type eq 'HASH' ? {} : $from;
+ push @topics, [$from, $to] if $from_type;
return $to;
};
}
@@ -229,6 +227,29 @@
};
}
+sub _definitions_key {
+ my ($self, $bundle, $ref, $seen) = @_;
+
+ # No need to rewrite, when it already has a nice name
+ return $1
+ if $ref->fqn =~ m!#/$DEFINITIONS/([^/]+)$!
+ and ($seen->{$ref->fqn}
+ or !$bundle->{$DEFINITIONS}{$1}
+ or D($ref->schema) eq D($bundle->{$DEFINITIONS}{$1}));
+
+ # Must mask path to file on disk
+ my $key = $ref->fqn;
+ my $spec_path = (split '#', $key)[0];
+ if (-e $spec_path) {
+ $key = sprintf '%s-%s', substr(sha1_sum($key), 0, 10),
+ path($spec_path)->basename;
+ }
+
+ # Fallback or nicer path name
+ $key =~ s![^\w-]!_!g;
+ $key;
+}
+
sub _get {
my ($self, $data, $path, $pos, $cb) = @_;
my $tied;
@@ -1301,30 +1322,16 @@
=head2 bundle
- my $schema = $jv->bundle(\%args);
-
-Used to create a new schema, where the C<$ref> are resolved. C<%args> can have:
-
-=over 2
-
-=item * C<< {replace => 1} >>
-
-Used if you want to replace the C<$ref> inline in the schema. This currently
-does not work if you have circular references. The default is to move all the
-C<$ref> definitions into the main schema with custom names. Here is an example
-on how a C<$ref> looks before and after:
-
- {"$ref":"../some/place.json#/foo/bar"}
- => {"$ref":"#/definitions/____some_place_json-_foo_bar"}
-
- {"$ref":"http://example.com#/foo/bar"}
- => {"$ref":"#/definitions/_http___example_com-_foo_bar"}
-
-=item * C<< {schema => {...}} >>
-
-Default is to use the value from the L</schema> attribute.
-
-=back
+ # These two lines does the same
+ my $schema = $jv->bundle({schema => $self->schema->data});
+ my $schema = $jv->bundle;
+
+ # Will only bundle a section of the schema
+ my $schema = $jv->bundle({schema => $self->schema->get("/properties/person/age")});
+
+Used to create a new schema, where there are no "$ref" pointing to external
+resources. This means that all the "$ref" that are found, will be moved into
+the "definitions" key, in the returning C<$schema>.
=head2 coerce
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/JSON-Validator-3.08/t/bundle.t new/JSON-Validator-3.09/t/bundle.t
--- old/JSON-Validator-3.08/t/bundle.t 2019-04-06 05:26:28.000000000 +0200
+++ new/JSON-Validator-3.09/t/bundle.t 2019-05-04 17:27:59.000000000 +0200
@@ -19,7 +19,6 @@
for my $n (1 .. 3) {
note "[$n] replace=1";
$bundled = $jv->bundle({
- ref_key => 'definitions',
replace => 1,
schema => {
name => {'$ref' => '#/definitions/name'},
@@ -35,15 +34,14 @@
age => {'$ref' => 'b.json#/definitions/age'},
definitions => {name => {type => 'string'}},
B => {id => 'b.json', definitions => {age => {type => 'integer'}}},
- })->bundle({ref_key => 'definitions'});
+ })->bundle;
is $bundled->{definitions}{name}{type}, 'string',
"[$n] name still in definitions";
- is $bundled->{definitions}{b_json__definitions_age}{type}, 'integer',
- "[$n] added to definitions";
+ is $bundled->{definitions}{age}{type}, 'integer', "[$n] added to definitions";
isnt $bundled->{age}, $jv->schema->get('/age'), "[$n] new age ref";
is $bundled->{name}, $jv->schema->get('/name'), "[$n] same name ref";
- is $bundled->{age}{'$ref'}, '#/definitions/b_json__definitions_age',
- "[$n] age \$ref point to /definitions/b_json__definitions_age";
+ is $bundled->{age}{'$ref'}, '#/definitions/age',
+ "[$n] age \$ref point to /definitions/age";
is $bundled->{name}{'$ref'}, '#/definitions/name',
"[$n] name \$ref point to /definitions/name";
}
@@ -55,8 +53,7 @@
is $jv->schema->get('/name/$ref'), '#/definitions/name',
'schema get /name/$ref';
-$bundled
- = $jv->schema('data://main/api.json')->bundle({ref_key => 'definitions'});
+$bundled = $jv->schema('data://main/bundled.json')->bundle;
is_deeply [sort keys %{$bundled->{definitions}}], ['objtype'],
'no dup definitions';
@@ -66,13 +63,13 @@
);
for my $pathlist (@pathlists) {
my $file = path $workdir, @$pathlist;
- $bundled = $jv->schema($file)->bundle({ref_key => 'definitions'});
+ $bundled = $jv->schema($file)->bundle;
is_deeply [sort map { s!^[a-z0-9]{10}!SHA!; $_ }
keys %{$bundled->{definitions}}],
[qw(
- SHA-age.json
- SHA-unit.json
- SHA-weight.json
+ SHA-age_json
+ SHA-unit_json
+ SHA-weight_json
height
)],
'right definitions in disk spec'
@@ -88,23 +85,16 @@
or diag explain $bundled;
note 'extract subset of schema';
-$bundled = $jv->bundle({
- ref_key => 'definitions',
- schema => $jv->schema('data://main/api.json')->get([qw(paths /withdots get)])
-});
+$jv->schema('data://main/bundled.json');
+$bundled = $jv->bundle({schema => $jv->get([qw(paths /withdots get)])});
is_deeply(
$bundled,
{
definitions => {
- data___main_api_json__definitions_objtype =>
+ objtype =>
{properties => {propname => {type => 'string'}}, type => 'object'}
},
- responses => {
- 200 => {
- schema =>
- {'$ref' => '#/definitions/data___main_api_json__definitions_objtype'}
- }
- }
+ responses => {200 => {schema => {'$ref' => '#/definitions/objtype'}}}
},
'subset of schema was bundled'
) or diag explain $bundled;
@@ -114,27 +104,29 @@
$ref_name_prefix =~ s![^\w-]!_!g;
$jv->schema(path $workdir, 'spec', 'bundle-no-leaking-filename.json');
$bundled = $jv->bundle({ref_key => 'xyz'});
-is_deeply [grep { 0 == index $_, $ref_name_prefix } keys %{$bundled->{xyz}}],
- [], 'no leaking of path';
+my @definitions = keys %{$bundled->{xyz}};
+ok @definitions, 'definitions are present';
+is_deeply [grep { 0 == index $_, $ref_name_prefix } @definitions], [],
+ 'no leaking of path';
done_testing;
__DATA__
-@@ api.json
+@@ bundled.json
{
- "definitions" : {
- "objtype" : {
- "type" : "object",
- "properties" : { "propname" : { "type" : "string" } }
- }
- },
- "paths" : {
- "/withdots" : {
- "get" : {
- "responses" : {
- "200" : { "schema" : { "$ref" : "#/definitions/objtype" } }
- }
- }
+ "definitions": {
+ "objtype": {
+ "type": "object",
+ "properties": {"propname": {"type": "string"}}
+ }
+ },
+ "paths": {
+ "/withdots": {
+ "get": {
+ "responses": {
+ "200": {"schema": {"$ref": "#/definitions/objtype"}}
+ }
}
- }
+ }
+ }
}
1
0
Hello community,
here is the log from the commit of package perl-Mojolicious-Plugin-AssetPack for openSUSE:Factory checked in at 2019-05-06 13:27:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Mojolicious-Plugin-AssetPack (Old)
and /work/SRC/openSUSE:Factory/.perl-Mojolicious-Plugin-AssetPack.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Mojolicious-Plugin-AssetPack"
Mon May 6 13:27:18 2019 rev:42 rq:700691 version:2.07
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Mojolicious-Plugin-AssetPack/perl-Mojolicious-Plugin-AssetPack.changes 2018-09-20 11:42:35.788816551 +0200
+++ /work/SRC/openSUSE:Factory/.perl-Mojolicious-Plugin-AssetPack.new.5148/perl-Mojolicious-Plugin-AssetPack.changes 2019-05-06 13:27:19.653270749 +0200
@@ -1,0 +2,10 @@
+Sun May 5 05:18:28 UTC 2019 - Stephan Kulow <coolo(a)suse.com>
+
+- updated to 2.07
+ see /usr/share/doc/packages/perl-Mojolicious-Plugin-AssetPack/Changes
+
+ 2.07 2019-05-04T23:54:32+0700
+ - Add RollupJs->add_global();
+ - Add note about Mojolicious::Plugin::AssetPack::Webpack
+
+-------------------------------------------------------------------
Old:
----
Mojolicious-Plugin-AssetPack-2.06.tar.gz
New:
----
Mojolicious-Plugin-AssetPack-2.07.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Mojolicious-Plugin-AssetPack.spec ++++++
--- /var/tmp/diff_new_pack.q4DeAa/_old 2019-05-06 13:27:20.329271956 +0200
+++ /var/tmp/diff_new_pack.q4DeAa/_new 2019-05-06 13:27:20.333271963 +0200
@@ -1,7 +1,7 @@
#
# spec file for package perl-Mojolicious-Plugin-AssetPack
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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,13 +17,13 @@
Name: perl-Mojolicious-Plugin-AssetPack
-Version: 2.06
+Version: 2.07
Release: 0
%define cpan_name Mojolicious-Plugin-AssetPack
Summary: Compress and convert css, less, sass, javascript and coffeescript files
License: Artistic-2.0
Group: Development/Libraries/Perl
-Url: http://search.cpan.org/dist/Mojolicious-Plugin-AssetPack/
+Url: https://metacpan.org/release/%{cpan_name}
Source0: https://cpan.metacpan.org/authors/id/J/JH/JHTHORSEN/%{cpan_name}-%{version}…
Source1: cpanspec.yml
BuildArch: noarch
@@ -44,6 +44,14 @@
assets. The idea is that JavaScript and CSS files should be served as one
minified file to save bandwidth and roundtrip time to the server.
+Note that the main author have moved on to using
+Mojolicious::Plugin::AssetPack::Webpack instead, which uses
+https://webpack.js.org/ under the hood, but is just as convenient to use as
+this plugin. It is very easy to try out
+Mojolicious::Plugin::AssetPack::Webpack, since it will detect your
+AssetPack based project automatically, and migrate them over to webpack
+once the plugin is loaded.
+
There are many external tools for doing this, but integrating them with
Mojolicious can be a struggle: You want to serve the source files directly
while developing, but a minified version in production. This assetpack
@@ -59,11 +67,11 @@
find . -type f ! -name \*.pl -print0 | xargs -0 chmod 644
%build
-%{__perl} Makefile.PL INSTALLDIRS=vendor
-%{__make} %{?_smp_mflags}
+perl Makefile.PL INSTALLDIRS=vendor
+make %{?_smp_mflags}
%check
-%{__make} test
+make test
%install
%perl_make_install
@@ -72,6 +80,6 @@
%files -f %{name}.files
%defattr(-,root,root,755)
-%doc Changes examples
+%doc Changes examples README.md
%changelog
++++++ Mojolicious-Plugin-AssetPack-2.06.tar.gz -> Mojolicious-Plugin-AssetPack-2.07.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Mojolicious-Plugin-AssetPack-2.06/Changes new/Mojolicious-Plugin-AssetPack-2.07/Changes
--- old/Mojolicious-Plugin-AssetPack-2.06/Changes 2018-09-02 22:25:13.000000000 +0200
+++ new/Mojolicious-Plugin-AssetPack-2.07/Changes 2019-05-04 18:54:32.000000000 +0200
@@ -1,5 +1,9 @@
Revision history for perl distribution Mojolicious-Plugin-AssetPack
+2.07 2019-05-04T23:54:32+0700
+ - Add RollupJs->add_global();
+ - Add note about Mojolicious::Plugin::AssetPack::Webpack
+
2.06 2018-09-02T22:25:13+0200
- Fix deprecated coffee-script(a)1.12.7: CoffeeScript on NPM has moved to coffeescript
- Fix RollupJs pipe compatible with new rollupjs #138
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Mojolicious-Plugin-AssetPack-2.06/MANIFEST new/Mojolicious-Plugin-AssetPack-2.07/MANIFEST
--- old/Mojolicious-Plugin-AssetPack-2.06/MANIFEST 2018-09-02 22:25:15.000000000 +0200
+++ new/Mojolicious-Plugin-AssetPack-2.07/MANIFEST 2019-05-04 18:54:33.000000000 +0200
@@ -35,6 +35,7 @@
lib/Mojolicious/Plugin/AssetPack/Util.pm
Makefile.PL
MANIFEST This list of files
+README.md
t/00-basic.t
t/assets/css-0-one.css
t/assets/css-0-two.css
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Mojolicious-Plugin-AssetPack-2.06/META.json new/Mojolicious-Plugin-AssetPack-2.07/META.json
--- old/Mojolicious-Plugin-AssetPack-2.06/META.json 2018-09-02 22:25:15.000000000 +0200
+++ new/Mojolicious-Plugin-AssetPack-2.07/META.json 2019-05-04 18:54:33.000000000 +0200
@@ -53,6 +53,13 @@
"web" : "https://github.com/jhthorsen/mojolicious-plugin-assetpack"
}
},
- "version" : "2.06",
+ "version" : "2.07",
+ "x_contributors" : [
+ "Jan Henning Thorsen <jhthorsen(a)cpan.org>",
+ "Alexander Rymasheusky",
+ "Mark Grimes <mgrimes(a)cpan.org>",
+ "Per Edin <info(a)peredin.com>",
+ "Viktor Turskyi"
+ ],
"x_serialization_backend" : "JSON::PP version 2.97001"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Mojolicious-Plugin-AssetPack-2.06/META.yml new/Mojolicious-Plugin-AssetPack-2.07/META.yml
--- old/Mojolicious-Plugin-AssetPack-2.06/META.yml 2018-09-02 22:25:14.000000000 +0200
+++ new/Mojolicious-Plugin-AssetPack-2.07/META.yml 2019-05-04 18:54:32.000000000 +0200
@@ -25,5 +25,11 @@
bugtracker: https://github.com/jhthorsen/mojolicious-plugin-assetpack/issues
homepage: https://github.com/jhthorsen/mojolicious-plugin-assetpack
repository: https://github.com/jhthorsen/mojolicious-plugin-assetpack.git
-version: '2.06'
+version: '2.07'
+x_contributors:
+ - 'Jan Henning Thorsen <jhthorsen(a)cpan.org>'
+ - 'Alexander Rymasheusky'
+ - 'Mark Grimes <mgrimes(a)cpan.org>'
+ - 'Per Edin <info(a)peredin.com>'
+ - 'Viktor Turskyi'
x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Mojolicious-Plugin-AssetPack-2.06/Makefile.PL new/Mojolicious-Plugin-AssetPack-2.07/Makefile.PL
--- old/Mojolicious-Plugin-AssetPack-2.06/Makefile.PL 2018-09-02 22:25:13.000000000 +0200
+++ new/Mojolicious-Plugin-AssetPack-2.07/Makefile.PL 2019-05-04 18:54:31.000000000 +0200
@@ -1,4 +1,5 @@
# Generated by git-ship. See 'git-ship --man' for help or https://github.com/jhthorsen/app-git-ship
+use utf8;
use ExtUtils::MakeMaker;
my %WriteMakefileArgs = (
NAME => 'Mojolicious::Plugin::AssetPack',
@@ -31,6 +32,14 @@
web => 'https://github.com/jhthorsen/mojolicious-plugin-assetpack',
},
},
+ 'x_contributors' => [
+ 'Jan Henning Thorsen <jhthorsen(a)cpan.org>',
+ 'Alexander Rymasheusky',
+ 'Mark Grimes <mgrimes(a)cpan.org>',
+ 'Per Edin <info(a)peredin.com>',
+ 'Viktor Turskyi'
+]
+,
},
test => {TESTS => (-e 'META.yml' ? 't/*.t' : 't/*.t xt/*.t')},
);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Mojolicious-Plugin-AssetPack-2.06/README.md new/Mojolicious-Plugin-AssetPack-2.07/README.md
--- old/Mojolicious-Plugin-AssetPack-2.06/README.md 1970-01-01 01:00:00.000000000 +0100
+++ new/Mojolicious-Plugin-AssetPack-2.07/README.md 2019-05-04 18:54:32.000000000 +0200
@@ -0,0 +1,239 @@
+# NAME
+
+Mojolicious::Plugin::AssetPack - Compress and convert css, less, sass, javascript and coffeescript files
+
+# VERSION
+
+2.07
+
+# SYNOPSIS
+
+## Application
+
+ use Mojolicious::Lite;
+
+ # Load plugin and pipes in the right order
+ plugin AssetPack => {
+ pipes => [qw(Less Sass Css CoffeeScript Riotjs JavaScript Combine)]
+ };
+
+ # define asset
+ app->asset->process(
+ # virtual name of the asset
+ "app.css" => (
+
+ # source files used to create the asset
+ "sass/bar.scss",
+ "https://github.com/Dogfalo/materialize/blob/master/sass/materialize.scss",
+ )
+ );
+
+## Template
+
+ <html>
+ <head>
+ %= asset "app.css"
+ </head>
+ <body><%= content %></body>
+ </html>
+
+# DESCRIPTION
+
+[Mojolicious::Plugin::AssetPack](https://metacpan.org/pod/Mojolicious::Plugin::AssetPack) is [Mojolicious plugin](https://metacpan.org/pod/Mojolicious::Plugin)
+for processing static assets. The idea is that JavaScript and CSS files should
+be served as one minified file to save bandwidth and roundtrip time to the
+server.
+
+Note that the main author have moved on to using
+[Mojolicious::Plugin::AssetPack::Webpack](https://metacpan.org/pod/Mojolicious::Plugin::AssetPack::Webpack) instead, which uses
+[https://webpack.js.org/](https://webpack.js.org/) under the hood, but is just as convenient to use as
+this plugin. It is very easy to try out
+[Mojolicious::Plugin::AssetPack::Webpack](https://metacpan.org/pod/Mojolicious::Plugin::AssetPack::Webpack), since it will detect your AssetPack
+based project automatically, and migrate them over to webpack once the plugin
+is loaded.
+
+There are many external tools for doing this, but integrating them with
+[Mojolicious](https://metacpan.org/pod/Mojolicious) can be a struggle: You want to serve the source files directly
+while developing, but a minified version in production. This assetpack plugin
+will handle all of that automatically for you.
+
+Your application creates and refers to an asset by its topic (virtual asset
+name). The process of building actual assets from their components is
+delegated to "pipe objects". Please see
+["Pipes" in Mojolicious::Plugin::AssetPack::Guides::Tutorial](https://metacpan.org/pod/… for a complete list.
+
+# BREAKING CHANGES
+
+## assetpack.db (v1.47)
+
+`assetpack.db` no longer track files downloaded from the internet. It will
+mostly "just work", but in some cases version 1.47 might download assets that
+have already been downloaded with AssetPack version 1.46 and earlier.
+
+The goal is to remove `assetpack.db` completely.
+
+# GUIDES
+
+- [Mojolicious::Plugin::AssetPack::Guides::Tutorial](https://metacpan.org/pod/…
+
+ The tutorial will give an introduction to how AssetPack can be used.
+
+- [Mojolicious::Plugin::AssetPack::Guides::Developing](https://metacpan.org/po…
+
+ The "developing" guide will give insight on how to do effective development with
+ AssetPack and more details about the internals in this plugin.
+
+- [Mojolicious::Plugin::AssetPack::Guides::Cookbook](https://metacpan.org/pod/…
+
+ The cookbook has various receipes on how to cook with AssetPack.
+
+# HELPERS
+
+## asset
+
+ $self = $app->asset;
+ $self = $c->asset;
+ $bytestream = $c->asset($topic, @args);
+ $bytestream = $c->asset("app.css", media => "print");
+
+`asset()` is the main entry point to this plugin. It can either be used to
+access the [Mojolicious::Plugin::AssetPack](https://metacpan.org/pod/Mojolicious::Plugi… instance or as a tag helper.
+
+The helper name "asset" can be customized by specifying "helper" when
+[registering](#register) the plugin.
+
+See [Mojolicious::Plugin::AssetPack::Guides::Tutorial](https://metacpan.org/pod/… for more details.
+
+# ATTRIBUTES
+
+## minify
+
+ $bool = $self->minify;
+ $self = $self->minify($bool);
+
+Set this to true to combine and minify the assets. Defaults to false if
+["mode" in Mojolicious](https://metacpan.org/pod/Mojolicious#mode) is "development" and true otherwise.
+
+See ["Application mode" in Mojolicious::Plugin::AssetPack::Guides::Tutorial](https://metacpan.org/pod/…
+for more details.
+
+## route
+
+ $route = $self->route;
+ $self = $self->route($route);
+
+A [Mojolicious::Routes::Route](https://metacpan.org/pod/Mojolicious::Routes::R… object used to serve assets. The default route
+responds to HEAD and GET requests and calls
+[serve\_asset()](https://metacpan.org/pod/Mojolicious::Plugin::AssetPack::Store#serve_asset) on ["store"](#store)
+to serve the asset.
+
+The default route will be built and added to the [application](https://metacpan.org/pod/Mojolicious)
+when ["process"](#process) is called the first time.
+
+See ["ASSETS FROM CUSTOM DOMAIN" in Mojolicious::Plugin::AssetPack::Guides::Cookbook](https://metacpan.org/pod/…
+for an example on how to customize this route.
+
+## store
+
+ $obj = $self->store;
+ $self = $self->store(Mojolicious::Plugin::AssetPack::Store->new);
+
+Holds a [Mojolicious::Plugin::AssetPack::Store](https://metacpan.org/pod/Mojolicious… object used to locate, store
+and serve assets.
+
+## tag\_for
+
+Deprecated. Use ["renderer" in Mojolicious::Plugin::AssetPack::Asset](https://metacpan.org/pod/Mojolicious… instead.
+
+## ua
+
+ $ua = $self->ua;
+
+Holds a [Mojo::UserAgent](https://metacpan.org/pod/Mojo::UserAgent) which can be used to fetch assets either from local
+application or from remote web servers.
+
+# METHODS
+
+## pipe
+
+ $obj = $self->pipe($name);
+ $obj = $self->pipe("Css");
+
+Will return a registered pipe by `$name` or `undef` if none could be found.
+
+## process
+
+ $self = $self->process($topic => @assets);
+ $self = $self->process($definition_file);
+
+Used to process assets. A `$definition_file` can be used to define `$topic`
+and `@assets` in a separate file. See
+["Process assets" in Mojolicious::Plugin::AssetPack::Guides::Tutorial](https://metacpan.org/pod/… for more
+details.
+
+`$definition_file` defaults to "assetpack.def".
+
+## processed
+
+ $collection = $self->processed($topic);
+
+Can be used to retrieve a [Mojo::Collection](https://metacpan.org/pod/Mojo::Collection) object, with zero or more
+[Mojolicious::Plugin::AssetPack::Asset](https://metacpan.org/pod/Mojolicious::Plugin::AssetPack::Asset) objects. Returns undef if `$topic` is
+not defined with ["process"](#process).
+
+## register
+
+ $self->register($app, \%config);
+
+Used to register the plugin in the application. `%config` can contain:
+
+- helper
+
+ Name of the helper to add to the application. Default is "asset".
+
+- pipes
+
+ This argument is mandatory and need to contain a complete list of pipes that is
+ needed. Example:
+
+ $app->plugin(AssetPack => {pipes => [qw(Sass Css Combine)]);
+
+ See ["Pipes" in Mojolicious::Plugin::AssetPack::Guides::Tutorial](https://metacpan.org/pod/… for a complete
+ list of available pipes.
+
+- proxy
+
+ A hash of proxy settings. Set this to `0` to disable proxy detection.
+ Currently only "no\_proxy" is supported, which will set which requests that
+ should bypass the proxy (if any proxy is detected). Default is to bypass all
+ requests to localhost.
+
+ See ["detect" in Mojo::UserAgent::Proxy](https://metacpan.org/pod/Mojo::UserAgent::Proxy#det… for more information.
+
+# SEE ALSO
+
+[Mojolicious::Plugin::AssetPack::Webpack](https://metacpan.org/pod/Mojolicious::Plugin::AssetPack::Webpack).
+
+["GUIDES"](#guides),
+[Mojolicious::Plugin::AssetPack::Asset](https://metacpan.org/pod/Mojolicious::Plugin::AssetPack::Asset),
+[Mojolicious::Plugin::AssetPack::Pipe](https://metacpan.org/pod/Mojolicious::Plugin::AssetPack::Pipe) and
+[Mojolicious::Plugin::AssetPack::Store](https://metacpan.org/pod/Mojolicious::Plugin::AssetPack::Store).
+
+# COPYRIGHT AND LICENSE
+
+Copyright (C) 2014, Jan Henning Thorsen
+
+This program is free software, you can redistribute it and/or modify it under
+the terms of the Artistic License version 2.0.
+
+# AUTHOR
+
+Jan Henning Thorsen - `jhthorsen(a)cpan.org`
+
+Alexander Rymasheusky
+
+Mark Grimes - `mgrimes(a)cpan.org`
+
+Per Edin - `info(a)peredin.com`
+
+Viktor Turskyi
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Mojolicious-Plugin-AssetPack-2.06/examples/rollup.pl new/Mojolicious-Plugin-AssetPack-2.07/examples/rollup.pl
--- old/Mojolicious-Plugin-AssetPack-2.06/examples/rollup.pl 2017-10-14 17:14:31.000000000 +0200
+++ new/Mojolicious-Plugin-AssetPack-2.07/examples/rollup.pl 2018-09-08 16:19:25.000000000 +0200
@@ -2,13 +2,15 @@
die "Run $0 from ./mojolicious-plugin-assetpack/ root" unless -d 't/assets';
use lib 'lib';
use Mojolicious::Lite;
+use Mojo::File 'path';
plugin 'AssetPack' => {pipes => ['RollupJs']};
-app->asset->store->paths(['t/assets']);
+app->asset->store->paths([path('t/assets')->to_abs]);
# Add Vuejs as dependencies
-push @{app->asset->pipe('RollupJs')->modules}, 'vue';
-unshift @{app->asset->pipe('RollupJs')->plugins}, 'rollup-plugin-vue';
+app->asset->pipe('RollupJs')->add_global(vue => 'Vue');
+push @{app->asset->pipe('RollupJs')->modules}, 'vue-template-compiler';
+push @{app->asset->pipe('RollupJs')->plugins}, ['rollup-plugin-vue', 'vue'];
# Process js/vue-app.js
app->asset->process('app.js' => 'js/vue-app.js');
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Mojolicious-Plugin-AssetPack-2.06/lib/Mojolicious/Plugin/AssetPack/Pipe/RollupJs.pm new/Mojolicious-Plugin-AssetPack-2.07/lib/Mojolicious/Plugin/AssetPack/Pipe/RollupJs.pm
--- old/Mojolicious-Plugin-AssetPack-2.06/lib/Mojolicious/Plugin/AssetPack/Pipe/RollupJs.pm 2018-09-02 22:24:41.000000000 +0200
+++ new/Mojolicious-Plugin-AssetPack-2.07/lib/Mojolicious/Plugin/AssetPack/Pipe/RollupJs.pm 2018-11-01 02:31:50.000000000 +0100
@@ -51,6 +51,11 @@
return [$self->_find_app([qw(nodejs node)]), $self->{_rollupjs_src}->realpath];
};
+sub add_global {
+ $_[0]->globals->{$_[1]} = $_[2];
+ $_[0];
+}
+
sub process {
my ($self, $assets) = @_;
my $minify = $self->assetpack->minify;
@@ -142,6 +147,13 @@
=head1 METHODS
+=head2 add_global
+
+ $self = $self->add_global($key => $value);
+ $self = $self->add_global(qw(vue Vue));
+
+Used to add a key/value pair to L</globals>.
+
=head2 process
See L<Mojolicious::Plugin::AssetPack::Pipe/process>.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Mojolicious-Plugin-AssetPack-2.06/lib/Mojolicious/Plugin/AssetPack.pm new/Mojolicious-Plugin-AssetPack-2.07/lib/Mojolicious/Plugin/AssetPack.pm
--- old/Mojolicious-Plugin-AssetPack-2.06/lib/Mojolicious/Plugin/AssetPack.pm 2018-09-02 22:25:13.000000000 +0200
+++ new/Mojolicious-Plugin-AssetPack-2.07/lib/Mojolicious/Plugin/AssetPack.pm 2019-05-04 18:54:32.000000000 +0200
@@ -6,7 +6,7 @@
use Mojolicious::Plugin::AssetPack::Store;
use Mojolicious::Plugin::AssetPack::Util qw(diag has_ro load_module DEBUG);
-our $VERSION = '2.06';
+our $VERSION = '2.07';
has minify => sub { shift->_app->mode eq 'development' ? 0 : 1 };
@@ -218,7 +218,7 @@
sub _static_asset {
my ($self, $topic) = @_;
- my $asset = $self->store->asset($topic) or die qq(No assets registered by topic "$topic".);
+ my $asset = $self->store->asset($topic) or die qq(No assets registered by topic "$topic".);
my $assets = Mojo::Collection->new($asset);
$self->{by_checksum}{$_->checksum} = $_ for @$assets;
return $assets;
@@ -234,7 +234,7 @@
=head1 VERSION
-2.06
+2.07
=head1 SYNOPSIS
@@ -274,6 +274,14 @@
be served as one minified file to save bandwidth and roundtrip time to the
server.
+Note that the main author have moved on to using
+L<Mojolicious::Plugin::AssetPack::Webpack> instead, which uses
+L<https://webpack.js.org/> under the hood, but is just as convenient to use as
+this plugin. It is very easy to try out
+L<Mojolicious::Plugin::AssetPack::Webpack>, since it will detect your AssetPack
+based project automatically, and migrate them over to webpack once the plugin
+is loaded.
+
There are many external tools for doing this, but integrating them with
L<Mojolicious> can be a struggle: You want to serve the source files directly
while developing, but a minified version in production. This assetpack plugin
@@ -442,6 +450,8 @@
=head1 SEE ALSO
+L<Mojolicious::Plugin::AssetPack::Webpack>.
+
L</GUIDES>,
L<Mojolicious::Plugin::AssetPack::Asset>,
L<Mojolicious::Plugin::AssetPack::Pipe> and
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Mojolicious-Plugin-AssetPack-2.06/t/rollup.t new/Mojolicious-Plugin-AssetPack-2.07/t/rollup.t
--- old/Mojolicious-Plugin-AssetPack-2.06/t/rollup.t 2018-09-02 22:22:30.000000000 +0200
+++ new/Mojolicious-Plugin-AssetPack-2.07/t/rollup.t 2018-11-01 02:35:58.000000000 +0100
@@ -17,7 +17,7 @@
# With modules and plugins
$t = t::Helper->t(pipes => [qw(RollupJs Combine)]);
-$t->app->asset->pipe('RollupJs')->globals->{vue} = 'Vue';
+$t->app->asset->pipe('RollupJs')->add_global(vue => 'Vue');
push @{$t->app->asset->pipe('RollupJs')->modules}, 'vue-template-compiler';
push @{$t->app->asset->pipe('RollupJs')->plugins}, ['rollup-plugin-vue', 'vue'];
$t->app->asset->process('app.js' => 'js/vue-app.js');
1
0
Hello community,
here is the log from the commit of package kaffeine for openSUSE:Factory checked in at 2019-05-06 13:27:13
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/kaffeine (Old)
and /work/SRC/openSUSE:Factory/.kaffeine.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kaffeine"
Mon May 6 13:27:13 2019 rev:76 rq:700624 version:2.0.17
Changes:
--------
--- /work/SRC/openSUSE:Factory/kaffeine/kaffeine.changes 2019-05-02 19:22:13.393895144 +0200
+++ /work/SRC/openSUSE:Factory/.kaffeine.new.5148/kaffeine.changes 2019-05-06 13:27:16.605265306 +0200
@@ -1,0 +2,8 @@
+Sat May 4 17:01:52 UTC 2019 - wbauer(a)tmo.at
+
+- Add upstream patches to make it build (and work) with vlc 2.2 on
+ Leap 42.3 (kde#407153):
+ * fix-support-for-vlc-2.x.patch
+ * with-vlc-2.x-use-vlcMedia-for-libvlc_MediaMetaChanged-event.patch
+
+-------------------------------------------------------------------
New:
----
fix-support-for-vlc-2.x.patch
with-vlc-2.x-use-vlcMedia-for-libvlc_MediaMetaChanged-event.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ kaffeine.spec ++++++
--- /var/tmp/diff_new_pack.0UVdOq/_old 2019-05-06 13:27:17.597267077 +0200
+++ /var/tmp/diff_new_pack.0UVdOq/_new 2019-05-06 13:27:17.597267077 +0200
@@ -26,6 +26,9 @@
Source0: https://download.kde.org/stable/%{name}/%{name}-%{version}.tar.xz
# PATCH-FEATURE-OPENSUSE kaffeine-fixsplitter.patch -- GUI improvement (allow more flexibly set splitters)
Patch0: kaffeine-fixsplitter.patch
+# PATCH-FIX-UPSTREAM
+Patch1: fix-support-for-vlc-2.x.patch
+Patch2: with-vlc-2.x-use-vlcMedia-for-libvlc_MediaMetaChanged-event.patch
BuildRequires: extra-cmake-modules
BuildRequires: pkgconfig
BuildRequires: cmake(KF5CoreAddons)
@@ -42,7 +45,7 @@
BuildRequires: pkgconfig(Qt5Sql)
BuildRequires: pkgconfig(Qt5Widgets)
BuildRequires: pkgconfig(Qt5X11Extras)
-BuildRequires: pkgconfig(libvlc) >= 3.0
+BuildRequires: pkgconfig(libvlc)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xscrnsaver)
Requires: libQt5Sql5-sqlite
++++++ fix-support-for-vlc-2.x.patch ++++++
>From 402cbee5e675cf795b619b834f92aac086972afc Mon Sep 17 00:00:00 2001
From: Mauro Carvalho Chehab <mchehab+samsung(a)kernel.org>
Date: Fri, 3 May 2019 08:41:36 -0300
Subject: vlc: fix support for vlc 2.x
As reported by Wolfgang, the changes made on Kaffeine 2.0.16 to
solve issues with audio CDs broke Kaffeine when building it with
legacy vlc 2.2.x.
The fix here is simple: just place two libVlc 3.0 events at the
print logic inside the Vlc3 block is enough to make it build
again.
The libvlc_MediaMetaChanged is used to report when a new media is
playing.
With vlc 2.0, such event should be enabled only inside mediaPlay()
routine. Doing it early causes the play to not work.
So, re-add such logic, with got removed on changeset d03abc77ad40
("backend-vlc: simplify events handling logic").
BUG: 407153
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung(a)kernel.org>
---
src/backend-vlc/vlcmediawidget.cpp | 26 ++++++++++++++++++++------
1 file changed, 20 insertions(+), 6 deletions(-)
diff --git a/src/backend-vlc/vlcmediawidget.cpp b/src/backend-vlc/vlcmediawidget.cpp
index e47a44d..7917417 100644
--- a/src/backend-vlc/vlcmediawidget.cpp
+++ b/src/backend-vlc/vlcmediawidget.cpp
@@ -113,10 +113,6 @@ const char *vlcEventName(int event)
return "MediaListPlayerNextItemSet";
case libvlc_MediaListPlayerStopped:
return "MediaListPlayerStopped";
- case libvlc_RendererDiscovererItemAdded:
- return "RendererDiscovererItemAdded";
- case libvlc_RendererDiscovererItemDeleted:
- return "RendererDiscovererItemDeleted";
case libvlc_VlmMediaAdded:
return "VlmMediaAdded";
case libvlc_VlmMediaRemoved:
@@ -140,6 +136,10 @@ const char *vlcEventName(int event)
case libvlc_VlmMediaInstanceStatusError:
return "VlmMediaInstanceStatusError";
#if LIBVLC_VERSION_MAJOR > 2
+ case libvlc_RendererDiscovererItemAdded:
+ return "RendererDiscovererItemAdded";
+ case libvlc_RendererDiscovererItemDeleted:
+ return "RendererDiscovererItemDeleted";
case libvlc_MediaPlayerAudioVolume:
return "MediaPlayerAudioVolume";
case libvlc_MediaPlayerAudioDevice:
@@ -171,17 +171,17 @@ VlcMediaWidget::VlcMediaWidget(QWidget *parent) : AbstractMediaWidget(parent),
typeOfDevice(""), trackNumber(1), numTracks(1)
{
libvlc_event_e events[] = {
- libvlc_MediaMetaChanged,
libvlc_MediaPlayerEncounteredError,
libvlc_MediaPlayerEndReached,
libvlc_MediaPlayerLengthChanged,
libvlc_MediaPlayerSeekableChanged,
libvlc_MediaPlayerStopped,
+ libvlc_MediaPlayerTimeChanged,
#if LIBVLC_VERSION_MAJOR > 2
+ libvlc_MediaMetaChanged,
libvlc_MediaPlayerESAdded,
libvlc_MediaPlayerESDeleted,
#endif
- libvlc_MediaPlayerTimeChanged,
#if 0 // all other possible events
libvlc_MediaSubItemAdded,
libvlc_MediaDurationChanged,
@@ -558,6 +558,10 @@ void VlcMediaWidget::unregisterEvents()
for (int i = 0; i < eventType.size(); ++i)
libvlc_event_detach(eventManager, eventType.at(i),
vlcEventHandler, this);
+#if LIBVLC_VERSION_MAJOR <= 2
+ libvlc_event_detach(eventManager, libvlc_MediaMetaChanged,
+ vlcEventHandler, this);
+#endif
}
bool VlcMediaWidget::registerEvents()
@@ -578,6 +582,16 @@ int VlcMediaWidget::makePlay()
return -1;
}
+#if LIBVLC_VERSION_MAJOR <= 2
+ // For libVlc 2.x to work, we need to add the
+ // MediaMetaChanged event only here
+ if (libvlc_event_attach(eventManager, libvlc_MediaMetaChanged,
+ vlcEventHandler, this) != 0) {
+ qCWarning(logMediaWidget, "Cannot attach event handler %d",
+ libvlc_MediaMetaChanged);
+ }
+#endif
+
libvlc_media_player_set_media(vlcMediaPlayer, vlcMedia);
/*
--
cgit v1.1
++++++ with-vlc-2.x-use-vlcMedia-for-libvlc_MediaMetaChanged-event.patch ++++++
>From 2644cbf02ed39bb6b194bc6b7935b069b5769364 Mon Sep 17 00:00:00 2001
From: Mauro Carvalho Chehab <mchehab+samsung(a)kernel.org>
Date: Sat, 4 May 2019 09:28:23 -0300
Subject: vlc: with vlc 2.x, use vlcMedia for libvlc_MediaMetaChanged event
As reported by Wolfgang, the libVlc 2.x fix applied at
402cbee5e675 ("vlc: fix support for vlc 2.x") still have issues,
causing some troubles at least on audio CDs.
The root cause seems to be that, on vlc 2.x, the event
libvlc_MediaMetaChanged should be registered against the
vlcMedia instance, instead of vlcMediaPlayer instance.
Document that inside the code, as this is not obvious.
While the old way is still supported on vlc 3.x, I opted to
keep the code inside #ifs, as some day we'll drop support for
vlc 2.x, making the code simpler.
Also, since this event is registered aganst a vlcMedia object
and behaves different than when applied against a vlcMediaPlayer
object, I'm also using a different name there, in order to avoid
confusion.
BUG: 407153
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung(a)kernel.org>
---
src/backend-vlc/vlcmediawidget.cpp | 20 ++++++++++++++++----
1 file changed, 16 insertions(+), 4 deletions(-)
diff --git a/src/backend-vlc/vlcmediawidget.cpp b/src/backend-vlc/vlcmediawidget.cpp
index 7917417..6f5e50f 100644
--- a/src/backend-vlc/vlcmediawidget.cpp
+++ b/src/backend-vlc/vlcmediawidget.cpp
@@ -559,7 +559,10 @@ void VlcMediaWidget::unregisterEvents()
libvlc_event_detach(eventManager, eventType.at(i),
vlcEventHandler, this);
#if LIBVLC_VERSION_MAJOR <= 2
- libvlc_event_detach(eventManager, libvlc_MediaMetaChanged,
+ if (!vlcMedia)
+ return;
+ libvlc_event_manager_t *mediaEvent = libvlc_media_event_manager(vlcMedia);
+ libvlc_event_detach(mediaEvent, libvlc_MediaMetaChanged,
vlcEventHandler, this);
#endif
}
@@ -583,9 +586,18 @@ int VlcMediaWidget::makePlay()
}
#if LIBVLC_VERSION_MAJOR <= 2
- // For libVlc 2.x to work, we need to add the
- // MediaMetaChanged event only here
- if (libvlc_event_attach(eventManager, libvlc_MediaMetaChanged,
+ /*
+ * There is a difference between libVlc 2.x and 3.x:
+ * With version 2.x, the event needs to be registered at the
+ * vlcMedia object, just before calling libvlc_media_player_set_media()
+ *
+ * On version 3.x, while this still works, you can simply register the
+ * event directly at vlcMediaPlayer, together with all other events,
+ * with simplifies the code.
+ */
+ libvlc_event_manager_t *mediaEvent = libvlc_media_event_manager(vlcMedia);
+
+ if (libvlc_event_attach(mediaEvent, libvlc_MediaMetaChanged,
vlcEventHandler, this) != 0) {
qCWarning(logMediaWidget, "Cannot attach event handler %d",
libvlc_MediaMetaChanged);
--
cgit v1.1
1
0
Hello community,
here is the log from the commit of package python-gcsfs for openSUSE:Factory checked in at 2019-05-06 13:26:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-gcsfs (Old)
and /work/SRC/openSUSE:Factory/.python-gcsfs.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-gcsfs"
Mon May 6 13:26:58 2019 rev:1 rq:700456 version:0.2.1
Changes:
--------
New Changes file:
--- /dev/null 2019-05-02 15:18:01.516169518 +0200
+++ /work/SRC/openSUSE:Factory/.python-gcsfs.new.5148/python-gcsfs.changes 2019-05-06 13:26:58.713233356 +0200
@@ -0,0 +1,4 @@
+-------------------------------------------------------------------
+Thu May 2 17:17:18 UTC 2019 - Todd R <toddrme2178(a)gmail.com>
+
+- Initial version
New:
----
gcsfs-0.2.1.tar.gz
python-gcsfs.changes
python-gcsfs.spec
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-gcsfs.spec ++++++
#
# spec file for package python-gcsfs
#
# Copyright (c) 2019 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
# 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/
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-gcsfs
Version: 0.2.1
Release: 0
License: BSD-3-Clause
Summary: Filesystem interface over GCS
Url: https://github.com/dask/gcsfs
Group: Development/Languages/Python
Source: https://files.pythonhosted.org/packages/source/g/gcsfs/gcsfs-%{version}.tar…
BuildRequires: python-rpm-macros
BuildRequires: %{python_module setuptools}
# SECTION test requirements
BuildRequires: %{python_module click}
BuildRequires: %{python_module decorator}
BuildRequires: %{python_module fusepy}
BuildRequires: %{python_module google-auth >= 1.2}
BuildRequires: %{python_module google-auth-oauthlib}
BuildRequires: %{python_module pandas}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module requests}
BuildRequires: %{python_module vcrpy}
BuildRequires: libfuse2
# /SECTION
BuildRequires: fdupes
Requires: python-decorator
Requires: python-google-auth >= 1.2
Requires: python-google-auth-oauthlib
Requires: python-requests
Recommends: python-gcsfs-fuse = %{version}
Recommends: dask
BuildArch: noarch
%python_subpackages
%description
File-system interface for Google Cloud Storage.
%package fuse
Summary: Filesystem interface over GCS - FUSE interface
Requires: libfuse2
Requires: python-click
Requires: python-fusepy
Requires: python-pandas
%description fuse
File-system interface for Google Cloud Storage.
This package provides the optional FUSE interface.
%prep
%setup -q -n gcsfs-%{version}
%build
%python_build
%install
%python_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
# Tests require a network connection
# %%check
# %%python_expand pytest-%%{$python_bin_suffix} -vv -x gcsfs
%files %{python_files}
%doc README.rst
%license LICENSE.txt
%{python_sitelib}/gcsfs-%{version}-py*.egg-info
%{python_sitelib}/gcsfs/
%exclude %{python_sitelib}/gcsfs/cli/
%exclude %{python_sitelib}/gcsfs/gcsfuse.py*
%pycache_only %exclude %{python_sitelib}/gcsfs/__pycache__/gcsfuse*
%files %{python_files fuse}
%license LICENSE.txt
%python3_only %{_bindir}/gcsfuse
%{python_sitelib}/gcsfs/cli/
%{python_sitelib}/gcsfs/gcsfuse.py*
%pycache_only %{python_sitelib}/gcsfs/__pycache__/gcsfuse*
%changelog
1
0
Hello community,
here is the log from the commit of package Herwig for openSUSE:Factory checked in at 2019-05-06 13:26:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/Herwig (Old)
and /work/SRC/openSUSE:Factory/.Herwig.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "Herwig"
Mon May 6 13:26:46 2019 rev:9 rq:700427 version:7.1.5
Changes:
--------
--- /work/SRC/openSUSE:Factory/Herwig/Herwig.changes 2018-05-15 10:31:04.005334422 +0200
+++ /work/SRC/openSUSE:Factory/.Herwig.new.5148/Herwig.changes 2019-05-06 13:26:48.221214620 +0200
@@ -1,0 +2,26 @@
+Thu May 2 05:21:07 UTC 2019 - Atri Bhattacharya <badshah400(a)gmail.com>
+
+- Update to version 7.1.5:
+ * Add option of producing partons on physically mass shell after
+ the parton shower to allow the string model to be used to
+ hadronize events
+ * Fixes for template issues and compiler warnings for gcc8,9,
+ icc and clang
+ * Fixes to the calculation of W, Z and h widths if decay modes
+ removed
+ * Fix typo in FI g to gg dipole.
+ * Fix to allow 1 parameter to specify the mass of more than one
+ particle in the UFO converter
+ * Fix to partial width calculation of VSS decays
+ * Fix the PDF assignment for DIS processes with Matchbox
+ * Fix for undecayed W bosons in internal POWHEG gauge boson pair
+ code
+ * Update boost detection in configure script
+- Changes from version 7.1.4:
+ * More matrix elements and better handling of BSM physics
+ * Fix for spin correlations in angular-ordered shower, effects
+ top decays
+ * Allow fixed target collisions
+ * various minor fixes
+
+-------------------------------------------------------------------
Old:
----
Herwig-7.1.3.tar.bz2
New:
----
Herwig-7.1.5.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ Herwig.spec ++++++
--- /var/tmp/diff_new_pack.sVtyfG/_old 2019-05-06 13:26:49.545216984 +0200
+++ /var/tmp/diff_new_pack.sVtyfG/_new 2019-05-06 13:26:49.549216992 +0200
@@ -1,7 +1,7 @@
#
# spec file for package Herwig
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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
@@ -12,13 +12,13 @@
# 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/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define so_name Herwig-libs
Name: Herwig
-Version: 7.1.3
+Version: 7.1.5
Release: 0
Summary: Multi-purpose event generator for high-energy physics
License: GPL-2.0-only
@@ -137,7 +137,8 @@
%files -n %{so_name}
%defattr(-,root,root)
-%doc AUTHORS GUIDELINES ChangeLog README COPYING
+%doc AUTHORS GUIDELINES ChangeLog README
+%license COPYING
%config %{_sysconfdir}/ld.so.conf.d/%{name}.conf
%dir %{_libdir}/%{name}
%{_libdir}/%{name}/*.so.*
++++++ Herwig-7.1.3.tar.bz2 -> Herwig-7.1.5.tar.bz2 ++++++
++++ 28060 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package ThePEG for openSUSE:Factory checked in at 2019-05-06 13:26:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ThePEG (Old)
and /work/SRC/openSUSE:Factory/.ThePEG.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ThePEG"
Mon May 6 13:26:42 2019 rev:13 rq:700426 version:2.1.5
Changes:
--------
--- /work/SRC/openSUSE:Factory/ThePEG/ThePEG.changes 2018-05-15 10:31:01.993408320 +0200
+++ /work/SRC/openSUSE:Factory/.ThePEG.new.5148/ThePEG.changes 2019-05-06 13:26:45.865210413 +0200
@@ -1,0 +2,13 @@
+Thu May 2 05:17:14 UTC 2019 - Atri Bhattacharya <badshah400(a)gmail.com>
+
+- Update to version 2.1.5
+ * Improvements to template instantation of templates with gcc9
+ and icc T23
+ * Change in assignment operator definition, add delete, to avoid
+ warnings with gcc9
+ * Minor changes for compilation with gcc8,9, icc and clang
+- Changes from version 2.1.4:
+ * Improvements to helicity libraries to support more BSM models
+ * Added FixedTargetLuminosity for fixed target collisions
+
+-------------------------------------------------------------------
Old:
----
ThePEG-2.1.3.tar.bz2
New:
----
ThePEG-2.1.5.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ ThePEG.spec ++++++
--- /var/tmp/diff_new_pack.J4eec4/_old 2019-05-06 13:26:46.517211577 +0200
+++ /var/tmp/diff_new_pack.J4eec4/_new 2019-05-06 13:26:46.521211584 +0200
@@ -23,7 +23,7 @@
#
Name: ThePEG
-Version: 2.1.3
+Version: 2.1.5
Release: 0
Summary: Toolkit providing a common platform for event generators in C++
License: GPL-2.0-only
++++++ ThePEG-2.1.3.tar.bz2 -> ThePEG-2.1.5.tar.bz2 ++++++
++++ 12931 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package YODA for openSUSE:Factory checked in at 2019-05-06 13:26:39
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/YODA (Old)
and /work/SRC/openSUSE:Factory/.YODA.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "YODA"
Mon May 6 13:26:39 2019 rev:12 rq:700425 version:1.7.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/YODA/YODA.changes 2018-05-30 13:07:58.455770873 +0200
+++ /work/SRC/openSUSE:Factory/.YODA.new.5148/YODA.changes 2019-05-06 13:26:42.161203798 +0200
@@ -1,0 +2,14 @@
+Wed May 1 11:31:10 UTC 2019 - Atri Bhattacharya <badshah400(a)gmail.com>
+
+- Update to version 1.7.4:
+ * Roll out sameBinning methods for Profile1D and Profile2D.
+ * Add sameBinning methods for Histo1D and Histo2D.
+ * Remove debug couts from single-AO Writer::write() function.
+ * Add --ignore-missing and --ignore-new flags to yodadiff.
+ * Tidy up point-comparison output of yodadiff.
+ * Fix additional weighting in yodamerge
+- See %{_docdir}/YODA-devel/ChangeLog for changes between version
+ 1.7.1 through 1.7.3.
+- Rebase sover.diff to apply cleanly.
+
+-------------------------------------------------------------------
Old:
----
YODA-1.7.0.tar.bz2
New:
----
YODA-1.7.4.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ YODA.spec ++++++
--- /var/tmp/diff_new_pack.ZaLpls/_old 2019-05-06 13:26:42.861205049 +0200
+++ /var/tmp/diff_new_pack.ZaLpls/_new 2019-05-06 13:26:42.865205056 +0200
@@ -1,7 +1,7 @@
#
# spec file for package YODA
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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,10 +16,10 @@
#
-%define so_name lib%{name}-1_7_0
+%define so_name lib%{name}-1_7_4
Name: YODA
-Version: 1.7.0
+Version: 1.7.4
Release: 0
Summary: A small set of data analysis classes for MC event generator validation analyses
License: GPL-2.0-only
++++++ YODA-1.7.0.tar.bz2 -> YODA-1.7.4.tar.bz2 ++++++
++++ 71511 lines of diff (skipped)
++++++ sover.diff ++++++
--- /var/tmp/diff_new_pack.ZaLpls/_old 2019-05-06 13:26:44.005207091 +0200
+++ /var/tmp/diff_new_pack.ZaLpls/_new 2019-05-06 13:26:44.005207091 +0200
@@ -2,10 +2,10 @@
src/Makefile.am | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-Index: YODA-1.7.0/src/Makefile.am
+Index: YODA-1.7.4/src/Makefile.am
===================================================================
---- YODA-1.7.0.orig/src/Makefile.am
-+++ YODA-1.7.0/src/Makefile.am
+--- YODA-1.7.4.orig/src/Makefile.am
++++ YODA-1.7.4/src/Makefile.am
@@ -23,7 +23,7 @@ libYODA_la_SOURCES = \
Scatter2D.cc \
Scatter3D.cc
@@ -13,5 +13,5 @@
-libYODA_la_LDFLAGS = -avoid-version
+libYODA_la_LDFLAGS = -release ${PACKAGE_VERSION}
libYODA_la_LIBADD = $(builddir)/tinyxml/libyoda-tinyxml.la $(builddir)/yamlcpp/libyoda-yaml-cpp.la
- libYODA_la_CPPFLAGS = $(AM_CPPFLAGS) -DTIXML_USE_STL -I$(srcdir)/yamlcpp -I$(srcdir) -DYAMLCPP_API=3 -DYAML_NAMESPACE=YODA_YAML
+ libYODA_la_CPPFLAGS = $(AM_CPPFLAGS) -DTIXML_USE_STL -I$(srcdir)/yamlcpp -I$(srcdir) -DYAML_NAMESPACE=YODA_YAML
1
0
Hello community,
here is the log from the commit of package HepMC for openSUSE:Factory checked in at 2019-05-06 13:26:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/HepMC (Old)
and /work/SRC/openSUSE:Factory/.HepMC.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "HepMC"
Mon May 6 13:26:35 2019 rev:4 rq:700424 version:3.1.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/HepMC/HepMC.changes 2017-08-24 18:49:13.276266118 +0200
+++ /work/SRC/openSUSE:Factory/.HepMC.new.5148/HepMC.changes 2019-05-06 13:26:36.965194520 +0200
@@ -1,0 +2,31 @@
+Wed May 1 12:35:00 UTC 2019 - Atri Bhattacharya <badshah400(a)gmail.com>
+
+- Update to version 3.1.1:
+ * Improved treatment of events with cycles.
+ * Improved documentation and examples.
+- Changes from version 3.1.0:
+ * Renaming the namespace, header directory and library name to
+ HepMC3
+ * SmartPointer is repaced with shared_ptr from C++11, so C++11
+ is always required now
+ * Split library into HepMC3(core) and HepMC3search (search
+ engine)
+ * New Search engine with highly abstract search capabilities
+ * New readers and writers: WriterAsciiHepMC2, ReaderLHEF
+ * Ascii files now have own string in header: Asciiv3
+ * Deduction of input file format in ReaderFactory
+ * Improved consistency of interface
+ * Removal of most deprecated functions and multiple bugfixes
+ * Implemented test suite
+ * Improved examples and documentation
+- Drop sover.diff: so versioning added by upstream.
+- Update Source url in keeping with upstream name changes.
+- Adapt to name changes (HepMC -> HepMC3) in spec file wherever
+ appropriate.
+- Use %%cmake_build for building and parallel jobs when building
+ documentation.
+- Package new library libHepMC3search.
+- New BuildRequires: graphviz-gd and ghostscript-fonts-std needed
+ to generate docs, gcc-fortran needed for library.
+
+-------------------------------------------------------------------
Old:
----
hepmc3.0.0.tgz
sover.diff
New:
----
HepMC3-3.1.1.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ HepMC.spec ++++++
--- /var/tmp/diff_new_pack.l5fyG7/_old 2019-05-06 13:26:41.913203355 +0200
+++ /var/tmp/diff_new_pack.l5fyG7/_new 2019-05-06 13:26:41.917203363 +0200
@@ -1,7 +1,7 @@
#
# spec file for package HepMC
#
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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,19 +17,21 @@
Name: HepMC
-%define lname libHepMC-3_0_0
-Version: 3.0.0
+%define lname libHepMC3-1
+Version: 3.1.1
Release: 0
Summary: An event record for High Energy Physics Monte Carlo Generators in C++
-License: GPL-2.0
+License: GPL-2.0-only
Group: Development/Libraries/C and C++
Url: http://hepmc.web.cern.ch/hepmc/
-Source: http://hepmc.web.cern.ch/hepmc/releases/hepmc%{version}.tgz
-Patch1: sover.diff
+Source: http://hepmc.web.cern.ch/hepmc/releases/%{name}3-%{version}.tar.gz
BuildRequires: cmake
BuildRequires: doxygen
BuildRequires: fdupes
BuildRequires: gcc-c++
+BuildRequires: gcc-fortran
+BuildRequires: graphviz-gd
+BuildRequires: ghostscript-fonts-std
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -68,17 +70,17 @@
developing with HepMC.
%prep
-%setup -q -n hepmc%{version}
-%patch -P 1 -p1
+%setup -q -n %{name}3-%{version}
%build
-%cmake -DCMAKE_INSTALL_PREFIX=%{_prefix} \
- -DHEPMC_ENABLE_ROOTIO:BOOL=OFF \
- -DCONFIG_INSTALL_DIR:PATH=%{_libdir}/HepMC/
-
-%make_jobs
-cd ../doc/doxygen
-make
+%cmake -DHEPMC3_ENABLE_ROOTIO:BOOL=OFF \
+ -DCONFIG_INSTALL_DIR:PATH=%{_libdir}/HepMC/ \
+ -DHEPMC3_BUILD_EXAMPLES:BOOL=OFF
+
+%cmake_build
+pushd ../doc/doxygen
+make %{?_smp_mflags}
+popd
%install
%cmake_install
@@ -88,7 +90,7 @@
# Weird duplicated installation dir
rm -fr %{buildroot}%{_builddir}
-chmod +x %{buildroot}%{_bindir}/HepMC-config
+chmod +x %{buildroot}%{_bindir}/HepMC3-config
#Install examples manually so that fdupes can be run on them
mkdir -p %{buildroot}%{_docdir}/%{name}
@@ -99,16 +101,17 @@
%postun -n %{lname} -p /sbin/ldconfig
%files -n %{lname}
-%defattr(-,root,root)
-%{_libdir}/libHepMC-3.0.0.so
+%{_libdir}/libHepMC3.so.*
+%{_libdir}/libHepMC3search.so.*
%files devel
-%defattr(-,root,root)
%doc README* ChangeLog DESIGN doc/doxygen/html
%dir %{_docdir}/%{name}
%doc %{_docdir}/%{name}/examples
-%{_bindir}/HepMC-config
-%{_includedir}/%{name}/
-%{_datadir}/%{name}/
+%{_bindir}/HepMC3-config
+%{_libdir}/libHepMC3.so
+%{_libdir}/libHepMC3search.so
+%{_includedir}/%{name}3/
+%{_datadir}/%{name}3/
%changelog
1
0
Hello community,
here is the log from the commit of package nextcloud-client for openSUSE:Factory checked in at 2019-05-06 13:25:58
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/nextcloud-client (Old)
and /work/SRC/openSUSE:Factory/.nextcloud-client.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "nextcloud-client"
Mon May 6 13:25:58 2019 rev:17 rq:699635 version:2.5.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/nextcloud-client/nextcloud-client.changes 2019-01-21 10:57:05.015530782 +0100
+++ /work/SRC/openSUSE:Factory/.nextcloud-client.new.5148/nextcloud-client.changes 2019-05-06 13:26:02.265128393 +0200
@@ -1,0 +2,24 @@
+Tue Apr 30 11:21:02 UTC 2019 - Bjoern Voigt <bjoernv(a)arcor.de>
+
+- Update to version 2.5.2
+ * desktop#1001 Handle spaces in username properly in login flow
+ * desktop#1006 Wizard: show an error message if there is no enough free space in the local folder
+ * desktop#1050 Removed whitespace from string
+ * desktop#1054 Do not add double slash to login flow url
+ * desktop#1057 Fix login flow with system proxy
+ * desktop#1060 Start with easier theming
+ * desktop#1062 Do not display dismissed notifications
+ * desktop#1069 Fixed l18n issue. Added space for separating string
+ * desktop#1071 Add invalid certiticate messagebox
+ * desktop#1087 Correct app passwords link
+ * desktop#1092 Be less verbose with logging
+ * desktop#1119 Fix typo in translation string
+ * desktop#778 Add a command line option to launch the client in the background
+ * desktop#923 Support Ubuntu Disco Dingo
+ * desktop#946 Added missing Include
+ * desktop#959 Make sure _profile and _page are deleted in the correct order
+ * desktop#981 Fix KDEInstallDirs deprecation warnings
+ * desktop#993 Removed Stylesheet
+- Removed nextcloud-client-fix-qt-5.12.patch
+
+-------------------------------------------------------------------
Old:
----
nextcloud-client-2.5.1.tar.gz
nextcloud-client-fix-qt-5.12.patch
New:
----
nextcloud-client-2.5.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ nextcloud-client.spec ++++++
--- /var/tmp/diff_new_pack.zXUlJM/_old 2019-05-06 13:26:04.161132302 +0200
+++ /var/tmp/diff_new_pack.zXUlJM/_new 2019-05-06 13:26:04.197132376 +0200
@@ -19,7 +19,7 @@
%define soname libnextcloudsync
%define sover 0
Name: nextcloud-client
-Version: 2.5.1
+Version: 2.5.2
Release: 0
Summary: Nextcloud desktop synchronisation client
License: GPL-2.0-or-later AND LGPL-3.0-or-later
@@ -31,8 +31,6 @@
Patch0: nextcloud-client-fix-rpath.patch
# PATCH-FIX-OPENSUSE nextcloud-client-remove-datetime.patch sor.alexei(a)meowr.ru -- Remove __TIME__ and __DATE__.
Patch1: nextcloud-client-remove-datetime.patch
-# PATCH-FIX-UPSTREAM nextcloud-client-fix-qt-5.12.patch -- Fix issues with Qt 5.12 (commits 1295884, 09b0055).
-Patch2: nextcloud-client-fix-qt-5.12.patch
BuildRequires: AppStream
BuildRequires: cmake >= 3.2
BuildRequires: fdupes
@@ -164,7 +162,6 @@
%setup -q -n desktop-%{version}
%patch0 -p1
%patch1 -p1
-%patch2 -p1
cp -a %{SOURCE1} sysctl-sync-inotify.conf
%build
++++++ nextcloud-client-2.5.1.tar.gz -> nextcloud-client-2.5.2.tar.gz ++++++
/work/SRC/openSUSE:Factory/nextcloud-client/nextcloud-client-2.5.1.tar.gz /work/SRC/openSUSE:Factory/.nextcloud-client.new.5148/nextcloud-client-2.5.2.tar.gz differ: char 13, line 1
1
0
Hello community,
here is the log from the commit of package vnstat for openSUSE:Factory checked in at 2019-05-06 13:25:51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/vnstat (Old)
and /work/SRC/openSUSE:Factory/.vnstat.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "vnstat"
Mon May 6 13:25:51 2019 rev:6 rq:698642 version:2.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/vnstat/vnstat.changes 2019-04-12 09:15:31.169718269 +0200
+++ /work/SRC/openSUSE:Factory/.vnstat.new.5148/vnstat.changes 2019-05-06 13:25:57.577118726 +0200
@@ -1,0 +2,55 @@
+Fri Apr 26 18:48:41 UTC 2019 - Martin Hauke <mardnh(a)gmx.de>
+
+- Verify source signature
+- Update to version 2.1
+ Fixed:
+ * --oneline could segmentation fault if database had total traffic values
+ set but didn't have any daily or monthly traffic (Arch bug #60588)
+ * No proper error message was produced when querying interface which didn't
+ exist in the database
+ * Daemon:waittimesync_does_not_wait_with_new_interfaces test was failing if
+ the system used a time zone with a negative numeric value
+ * Traffic estimate and average rate for ongoing month was not being
+ calculated correctly when MonthRotate had a value greater than 1
+ * Accuracy of traffic estimate and average rate for the ongoing month could
+ be slightly skewed depending on the used time zone
+ New:
+ * Remove possible PollInterval and UpdateInterval drift over time
+ * Sync SaveInterval to full minutes
+
+- Update to version 2.0
+ Fixed:
+ * Data rate calculations when using SI decimal prefixes
+ * Workaround for filled arcs not drawn correctly with some versions
+ of libgd (libgd/libgd#351)
+ New
+ * C struct dump database has been replaced with sqlite database,
+ * full data import included from legacy databases of versions 1.3 - 1.18
+ * User configurable data retention durations for all resolutions with
+ following changed defaults:
+ v1.18 v2.0
+ 5 minutes n/a 576 (48 hours)
+ hours 24 96 (4 days)
+ days 30 62 (2 full months)
+ months 12 25 (2 full years)
+ years n/a all
+ top days 10 20
+ * Option to select units to use SI decimal prefixes using calculations
+ with powers of 1000 (IEC and JEDEC prefixes use powers of 1024)
+ * Yearly and 5 minute resolution statistics
+ * Pebibyte and exbibyte support
+ * Options the configure the length of each list output
+ * Option to limit the length of --json and --xml outputs
+ * Hourly list output replaces the hourly graph when the -h parameter is used
+ * Hourly graph is accessible with -hg / --hoursgraph parameter
+ * Options -b / --begin and -e / --end for specifying query time range
+ * Configuration comes with ISO 8601 date formats as new defaults
+ Removed
+ * Weekly output
+ * Merge of data from multiple interfaces to one output
+ * --testkernel
+ * --exportdb, use --oneline, --json or --xml instead
+ * --importdb, -u / --update and related options using vnstat command
+ * Old style (default in versions up to 1.7) summary layout in image output
+
+-------------------------------------------------------------------
Old:
----
vnstat-1.18.tar.gz
New:
----
vnstat-2.1.tar.gz
vnstat-2.1.tar.gz.sig
vnstat.keyring
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ vnstat.spec ++++++
--- /var/tmp/diff_new_pack.j4R4BQ/_old 2019-05-06 13:25:59.241122157 +0200
+++ /var/tmp/diff_new_pack.j4R4BQ/_new 2019-05-06 13:25:59.269122214 +0200
@@ -22,13 +22,15 @@
%bcond_with systemd
%endif
Name: vnstat
-Version: 1.18
+Version: 2.1
Release: 0
Summary: Network Traffic Monitor
License: GPL-2.0-only
Group: Productivity/Networking/Diagnostic
Url: http://humdi.net/vnstat
Source: http://humdi.net/vnstat/vnstat-%{version}.tar.gz
+Source98: http://humdi.net/vnstat/vnstat-%{version}.tar.gz.asc#/%{name}-%{version}.ta…
+Source99: %{name}.keyring
Source1: vnstat-if.sh
Source2: vnstat-cgi.conf
Source3: vnstat-create-db.sh
@@ -38,6 +40,7 @@
BuildRequires: automake
BuildRequires: gd-devel
BuildRequires: glibc-devel
+BuildRequires: sqlite3-devel
Requires: %{_bindir}/killall
Requires: /bin/ls
Requires: /bin/su
++++++ vnstat-1.18.tar.gz -> vnstat-2.1.tar.gz ++++++
++++ 25280 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package fatrace for openSUSE:Factory checked in at 2019-05-06 13:25:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/fatrace (Old)
and /work/SRC/openSUSE:Factory/.fatrace.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "fatrace"
Mon May 6 13:25:46 2019 rev:6 rq:698636 version:0.13
Changes:
--------
--- /work/SRC/openSUSE:Factory/fatrace/fatrace.changes 2019-04-17 10:08:05.418760722 +0200
+++ /work/SRC/openSUSE:Factory/.fatrace.new.5148/fatrace.changes 2019-05-06 13:25:48.597100209 +0200
@@ -1,0 +2,5 @@
+Mon Apr 15 18:49:11 UTC 2019 - Jan Engelhardt <jengelh(a)inai.de>
+
+- Trim storytelling from description.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ fatrace.spec ++++++
--- /var/tmp/diff_new_pack.W3Qp8O/_old 2019-05-06 13:25:49.197101447 +0200
+++ /var/tmp/diff_new_pack.W3Qp8O/_new 2019-05-06 13:25:49.201101455 +0200
@@ -20,7 +20,7 @@
Name: fatrace
Version: 0.13
Release: 0
-Summary: Report system wide file access events
+Summary: System wide file access event reporting utility
License: GPL-3.0-or-later
Group: System/Monitoring
URL: https://launchpad.net/fatrace
@@ -28,26 +28,16 @@
BuildRequires: glibc-devel
%description
-Part of the efforts to reduce power consumption is to identify processes
-which keep waking up the disk even when the computer is idle.
-
-Unfortunately there is no really good tool to trace file access events
-system-wide. powertop claims to, but its output is both very incomplete,
-and also wrong (e. g. it claims that read accesses are writes). strace
-gives you everything you do and don’t want to know about what’s going on,
-but is per-process, and attaching strace to all running and new processes
-is cumbersome. blktrace is system-wide, but operates at a way too low
-level for this task: its output has nothing to do any more with files or
-even inodes, just raw block numbers which are impossible to convert back
-to an inode and file path.
-
-So I created a little tool called fatrace (“file access trace”, not “fat
-race” :-) ) which uses fanotify, a couple of /proc lookups and some glue
-to provide this. By default it monitors the whole system, i. e. all mounts
-(except the virtual ones like /proc, tmpfs, etc.), but you can also tell
-it to just consider the mount of the current directory. You can write the
-log into a file (stdout by default), and run it for a specified number of
-seconds. Optional time stamps and PID filters are also provided.
+The fatrace trace uses fanotify, a couple of /proc lookups and some
+glue to trace file access events system-wide, in an effort to
+identify processes which keep waking up the disk even when the
+computer is idle.
+
+By default, it monitors the whole system, i.e. all mounts except
+virtual ones like /proc, tmpfs, etc. It can be told to monitor just
+the mount of the current directory. The log can be written to a file
+and runtime be capped. Optional time stamps and PID filters are also
+provided.
%prep
%setup -q
@@ -56,7 +46,7 @@
make %{?_smp_mflags} CFLAGS="%{optflags}" PREFIX="%{_prefix}"
%install
-make install DESTDIR=%{buildroot} CFLAGS="%{optflags}" PREFIX="%{_prefix}"
+%make_install CFLAGS="%{optflags}" PREFIX="%{_prefix}"
%files
%license COPYING
1
0
Hello community,
here is the log from the commit of package nextcloud for openSUSE:Factory checked in at 2019-05-06 13:25:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/nextcloud (Old)
and /work/SRC/openSUSE:Factory/.nextcloud.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "nextcloud"
Mon May 6 13:25:37 2019 rev:29 rq:698167 version:16.0.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/nextcloud/nextcloud.changes 2019-04-09 20:19:42.561926124 +0200
+++ /work/SRC/openSUSE:Factory/.nextcloud.new.5148/nextcloud.changes 2019-05-06 13:25:42.905088473 +0200
@@ -1,0 +2,36 @@
+Fri Apr 26 10:17:16 UTC 2019 - ecsos(a)opensuse.org
+
+- Added some missing require and recommend packages.
+
+-------------------------------------------------------------------
+Fri Apr 26 09:28:26 UTC 2019 - ecsos(a)opensuse.org
+
+- gh#10655 Added php-intl as required package for avoiding upstream
+
+-------------------------------------------------------------------
+Thu Apr 25 15:02:44 UTC 2019 - ecsos(a)opensuse.org
+
+- Update to 16.0.0
+ Nextcloud 16 is smarter than ever, with machine learning to
+ detect suspicious logins and offering clever recommendations.
+ Group Folders now sport access control lists so system
+ administrators can easily manage who has access to what in
+ organization-wide shares. We also introduce Projects, a way to
+ easily relate and find related information like files,
+ chats or tasks.
+
+ As this is a major release, the changelog is very long.
+ Find an overview of what has been improved in this series of blog
+ posts:
+
+ - Nextcloud 16 becomes smarter with Machine Learning for security
+ and productivity
+ - ACL permissions for Groupfolders
+ - Nextcloud 16 allows you to link resources to keep track of your
+ projects
+ - Talk 6.0 brings commands, improved user experience and more
+
+ - Coming soon, seems the github API can't deal with the size of
+ our changelog.
+
+-------------------------------------------------------------------
Old:
----
nextcloud-15.0.7.tar.bz2
New:
----
nextcloud-16.0.0.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ nextcloud.spec ++++++
--- /var/tmp/diff_new_pack.L54sIK/_old 2019-05-06 13:25:45.321093454 +0200
+++ /var/tmp/diff_new_pack.L54sIK/_new 2019-05-06 13:25:45.325093463 +0200
@@ -49,7 +49,7 @@
%endif
Name: nextcloud
-Version: 15.0.7
+Version: 16.0.0
Release: 0
Summary: File hosting service
License: AGPL-3.0-only
@@ -73,8 +73,12 @@
%endif
#
Requires: curl
+Requires: libxml2-2
Requires: mysql
+Requires: php-bz2
+Requires: php-dom
Requires: php-gd
+Requires: php-intl
Requires: php-json
Requires: php-mbstring
Requires: php-mysql
@@ -104,12 +108,25 @@
Requires: php-xmlreader
Requires: php-xmlwriter
Requires: php-zlib
-#
Recommends: sqlite3
%endif
-#
-Recommends: php-imagick
+# Database connectors:
Recommends: php-sqlite
+#Recommends: php-pgsql
+# For preview generation:
+Recommends: php-imagick
+Recommends: php-ffmpeg
+#Recommends: libreoffice
+# Require for specific apps:
+Recommends: php-ldap
+Recommends: php-ftp
+#Recommends: php-smbclient
+#Recommends: php-imap
+# Recommend for specific apps:
+Recommends: php-exif
+Recommends: php-gmp
+# For enhanced server performance:
+Recommends: php-APCu
%description
Nextcloud is a suite of client-server software for creating file
++++++ nextcloud-15.0.7.tar.bz2 -> nextcloud-16.0.0.tar.bz2 ++++++
/work/SRC/openSUSE:Factory/nextcloud/nextcloud-15.0.7.tar.bz2 /work/SRC/openSUSE:Factory/.nextcloud.new.5148/nextcloud-16.0.0.tar.bz2 differ: char 11, line 1
1
0
Hello community,
here is the log from the commit of package python-redbaron for openSUSE:Factory checked in at 2019-05-06 13:25:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-redbaron (Old)
and /work/SRC/openSUSE:Factory/.python-redbaron.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-redbaron"
Mon May 6 13:25:35 2019 rev:2 rq:697842 version:0.9.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-redbaron/python-redbaron.changes 2018-12-19 13:50:33.387189923 +0100
+++ /work/SRC/openSUSE:Factory/.python-redbaron.new.5148/python-redbaron.changes 2019-05-06 13:25:36.629075532 +0200
@@ -1,0 +2,19 @@
+Thu Apr 25 11:16:40 UTC 2019 - pgajdos(a)suse.com
+
+- version update to 0.9.2
+ * fix a situation in .help() where some code where colorized
+ twice by Hanaasagi https://github.com/PyCQA/redbaron/pull/182
+ * fix .names() and variations that didn't handle the case where
+ there was "()" on FromImport nodes
+ * full python 3.7 syntax support
+ * BREAKING CHANGE: annotations are now member of
+ {Def,List,Dict}Argument to flatten the data structure,
+ TypedNameNode doesn't exist anymore
+ * add support for return annotation by bram
+ * add support for variable annotation
+ https://github.com/PyCQA/redbaron/pull/177 by scottbelden
+ and additional work by bram
+ * add support for raise from by bram
+- run tests
+
+-------------------------------------------------------------------
Old:
----
redbaron-0.8.tar.gz
New:
----
redbaron-0.9.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-redbaron.spec ++++++
--- /var/tmp/diff_new_pack.Aeok8U/_old 2019-05-06 13:25:37.273076860 +0200
+++ /var/tmp/diff_new_pack.Aeok8U/_new 2019-05-06 13:25:37.273076860 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-redbaron
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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
@@ -18,7 +18,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-redbaron
-Version: 0.8
+Version: 0.9.2
Release: 0
Summary: Python module for writing code that modifies source code
License: LGPL-3.0-or-later
@@ -33,6 +33,7 @@
BuildArch: noarch
# SECTION test requirements
BuildRequires: %{python_module baron >= 0.7}
+BuildRequires: %{python_module pytest}
# /SECTION
%python_subpackages
@@ -52,6 +53,10 @@
%python_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
+%check
+rm -r tests/__pycache__
+%pytest
+
%files %{python_files}
%doc CHANGELOG README.md
%{python_sitelib}/*
++++++ redbaron-0.8.tar.gz -> redbaron-0.9.2.tar.gz ++++++
++++ 39726 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package python-rfc3986 for openSUSE:Factory checked in at 2019-05-06 13:25:29
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-rfc3986 (Old)
and /work/SRC/openSUSE:Factory/.python-rfc3986.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-rfc3986"
Mon May 6 13:25:29 2019 rev:7 rq:697841 version:1.3.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-rfc3986/python-rfc3986.changes 2019-03-07 10:50:29.573852662 +0100
+++ /work/SRC/openSUSE:Factory/.python-rfc3986.new.5148/python-rfc3986.changes 2019-05-06 13:25:34.633071417 +0200
@@ -1,0 +2,9 @@
+Thu Apr 25 10:34:17 UTC 2019 - pgajdos(a)suse.com
+
+- version update to 1.3.0
+ * Add the ``IRIReference`` class which parses data according
+ to RFC 3987 and encodes into an ``URIReference``.
+ See also `GitHub #50`_
+- run tests
+
+-------------------------------------------------------------------
Old:
----
rfc3986-1.2.0.tar.gz
New:
----
rfc3986-1.3.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-rfc3986.spec ++++++
--- /var/tmp/diff_new_pack.2N1uFE/_old 2019-05-06 13:25:35.137072455 +0200
+++ /var/tmp/diff_new_pack.2N1uFE/_new 2019-05-06 13:25:35.141072464 +0200
@@ -18,7 +18,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-rfc3986
-Version: 1.2.0
+Version: 1.3.0
Release: 0
Summary: Python module for validating URI references per RFC 3986
License: Apache-2.0
@@ -26,7 +26,11 @@
URL: https://rfc3986.rtfd.org
Source: https://files.pythonhosted.org/packages/source/r/rfc3986/rfc3986-%{version}…
BuildRequires: %{python_module setuptools}
+BuildRequires: fdupes
BuildRequires: python-rpm-macros
+# SECTION test requirements
+BuildRequires: %{python_module pytest}
+# /SECTION
BuildArch: noarch
%python_subpackages
@@ -42,6 +46,10 @@
%install
%python_install
+%python_expand %fdupes %{buildroot}%{$python_sitelib}
+
+%check
+%pytest
%files %{python_files}
%license LICENSE
++++++ rfc3986-1.2.0.tar.gz -> rfc3986-1.3.0.tar.gz ++++++
++++ 1655 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package python-multipledispatch for openSUSE:Factory checked in at 2019-05-06 13:25:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-multipledispatch (Old)
and /work/SRC/openSUSE:Factory/.python-multipledispatch.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-multipledispatch"
Mon May 6 13:25:21 2019 rev:4 rq:694224 version:0.6.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-multipledispatch/python-multipledispatch.changes 2018-12-24 11:39:59.309526830 +0100
+++ /work/SRC/openSUSE:Factory/.python-multipledispatch.new.5148/python-multipledispatch.changes 2019-05-06 13:25:23.445048348 +0200
@@ -1,0 +2,9 @@
+Fri Apr 12 14:24:40 UTC 2019 - pgajdos(a)suse.com
+
+- version update to 0.6.0
+ * no upstream changelog
+- turn testsuite on
+- deleted sources
+ - LICENSE.txt (not needed)
+
+-------------------------------------------------------------------
Old:
----
LICENSE.txt
multipledispatch-0.5.0.tar.gz
New:
----
0.6.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-multipledispatch.spec ++++++
--- /var/tmp/diff_new_pack.MyHX8S/_old 2019-05-06 13:25:24.769051078 +0200
+++ /var/tmp/diff_new_pack.MyHX8S/_new 2019-05-06 13:25:24.797051135 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-multipledispatch
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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
@@ -18,14 +18,15 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-multipledispatch
-Version: 0.5.0
+Version: 0.6.0
Release: 0
Summary: Multiple dispatch in Python
License: BSD-3-Clause
Group: Development/Languages/Python
Url: http://github.com/mrocklin/multipledispatch/
-Source: https://files.pythonhosted.org/packages/source/m/multipledispatch/multipled…
-Source10: https://raw.githubusercontent.com/mrocklin/multipledispatch/%{version}/LICE…
+Source: https://github.com/mrocklin/multipledispatch/archive/0.6.0.tar.gz
+BuildRequires: %{python_module pytest-benchmark}
+BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
@@ -42,7 +43,7 @@
%prep
%setup -q -n multipledispatch-%{version}
-cp %{SOURCE10} .
+rm multipledispatch/tests/test_dispatcher_3only.py
%build
%python_build
@@ -51,6 +52,9 @@
%python_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
+%check
+%pytest
+
%files %{python_files}
%defattr(-,root,root,-)
%doc README.rst
++++++ multipledispatch-0.5.0.tar.gz -> 0.6.0.tar.gz ++++++
++++ 3118 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package python-padatious for openSUSE:Factory checked in at 2019-05-06 13:25:13
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-padatious (Old)
and /work/SRC/openSUSE:Factory/.python-padatious.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-padatious"
Mon May 6 13:25:13 2019 rev:7 rq:694217 version:0.4.7
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-padatious/python-padatious.changes 2019-02-25 17:52:02.594730706 +0100
+++ /work/SRC/openSUSE:Factory/.python-padatious.new.5148/python-padatious.changes 2019-05-06 13:25:15.217031382 +0200
@@ -1,0 +2,12 @@
+Thu Apr 11 19:05:09 UTC 2019 - pgajdos(a)suse.com
+
+- version update to 0.4.7
+ * Fix bug with loaded intents not training
+ * Add train_subprocess for more stable training
+ * Skip training if already trained, even if failed
+ * Train in a thread so it can be aborted if it takes too long
+- run testsuite
+- deleted sources
+ - LICENSE (not needed)
+
+-------------------------------------------------------------------
Old:
----
LICENSE
padatious-0.4.6.tar.gz
New:
----
v0.4.7.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-padatious.spec ++++++
--- /var/tmp/diff_new_pack.r4ST2d/_old 2019-05-06 13:25:18.941039060 +0200
+++ /var/tmp/diff_new_pack.r4ST2d/_new 2019-05-06 13:25:18.981039143 +0200
@@ -20,18 +20,26 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-padatious
-Version: 0.4.6
+Version: 0.4.7
Release: 0
Summary: A neural network intent parser
License: Apache-2.0
Group: Development/Languages/Python
Url: http://github.com/MycroftAI/padatious
-Source: https://files.pythonhosted.org/packages/source/p/padatious/padatious-%{vers…
-Source99: https://raw.githubusercontent.com/MycroftAI/padatious/dev/LICENSE
+# https://github.com/MycroftAI/padatious/issues/14
+Source: https://github.com/MycroftAI/padatious/archive/v%{version}.tar.gz
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
+# SECTION test requirements
+BuildRequires: %{python_module fann2}
+BuildRequires: %{python_module padaos}
+BuildRequires: %{python_module pytest}
+BuildRequires: %{python_module xxhash}
+# /SECTION
Requires: python-fann2
+Requires: python-padaos
+Requires: python-setuptools
Requires: python-xxhash
BuildArch: noarch
@@ -42,7 +50,7 @@
%prep
%setup -q -n padatious-%{version}
-cp %{SOURCE99} .
+chmod 644 LICENSE
%build
%python_build
@@ -51,9 +59,15 @@
%python_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
+%check
+# https://github.com/MycroftAI/padatious/issues/15
+%python_exec -m pytest -k 'not test_train_timeout_subprocess'
+
%files %{python_files}
%defattr(-,root,root,-)
%license LICENSE
+%doc README.md
%{python_sitelib}/*
+%python3_only %{_bindir}/padatious
%changelog
1
0
Hello community,
here is the log from the commit of package python-knack for openSUSE:Factory checked in at 2019-05-06 13:25:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-knack (Old)
and /work/SRC/openSUSE:Factory/.python-knack.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-knack"
Mon May 6 13:25:08 2019 rev:6 rq:694216 version:0.5.4
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-knack/python-knack.changes 2019-03-28 22:50:17.931035821 +0100
+++ /work/SRC/openSUSE:Factory/.python-knack.new.5148/python-knack.changes 2019-05-06 13:25:09.841020349 +0200
@@ -1,0 +2,9 @@
+Fri Apr 12 12:24:44 UTC 2019 - pgajdos(a)suse.com
+
+- version update to 0.5.4
+ * Allows the loading of text files using @filename syntax.
+ * Adds the argument kwarg configured_default to support setting
+ argument defaults via the config file's [defaults] section or
+ an environment variable.
+
+-------------------------------------------------------------------
Old:
----
v0.5.3.tar.gz
New:
----
v0.5.4.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-knack.spec ++++++
--- /var/tmp/diff_new_pack.iamgMo/_old 2019-05-06 13:25:11.125022974 +0200
+++ /var/tmp/diff_new_pack.iamgMo/_new 2019-05-06 13:25:11.125022974 +0200
@@ -18,7 +18,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-knack
-Version: 0.5.3
+Version: 0.5.4
Release: 0
Summary: A Command-Line Interface framework
License: MIT
++++++ v0.5.3.tar.gz -> v0.5.4.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knack-0.5.3/knack/cli.py new/knack-0.5.4/knack/cli.py
--- old/knack-0.5.3/knack/cli.py 2019-03-06 00:03:37.000000000 +0100
+++ new/knack-0.5.4/knack/cli.py 2019-03-29 20:11:28.000000000 +0100
@@ -81,7 +81,7 @@
self._event_handlers = defaultdict(lambda: [])
# Data that's typically backed to persistent storage
self.config = config_cls(
- config_dir=config_dir or os.path.join('~', '.{}'.format(cli_name)),
+ config_dir=config_dir or os.path.expanduser(os.path.join('~', '.{}'.format(cli_name))),
config_env_var_prefix=config_env_var_prefix or cli_name.upper()
)
# In memory collection of key-value data for this current cli. This persists between invocations.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knack-0.5.3/knack/commands.py new/knack-0.5.4/knack/commands.py
--- old/knack-0.5.3/knack/commands.py 2019-03-06 00:03:37.000000000 +0100
+++ new/knack-0.5.4/knack/commands.py 2019-03-29 20:11:28.000000000 +0100
@@ -17,6 +17,7 @@
from .events import (EVENT_CMDLOADER_LOAD_COMMAND_TABLE, EVENT_CMDLOADER_LOAD_ARGUMENTS,
EVENT_COMMAND_CANCELLED)
from .log import get_logger
+from .validators import DefaultInt, DefaultStr
logger = get_logger(__name__)
@@ -71,6 +72,18 @@
def should_load_description(self):
return not self.cli_ctx.data['completer_active']
+ def _resolve_default_value_from_config_file(self, arg, overrides):
+ default_key = overrides.settings.get('configured_default', None)
+ if not default_key:
+ return
+
+ defaults_section = self.cli_ctx.config.defaults_section_name
+ config_value = self.cli_ctx.config.get(defaults_section, default_key, None)
+ if config_value:
+ logger.info("Configured default '%s' for arg %s", config_value, arg.name)
+ overrides.settings['default'] = DefaultStr(config_value)
+ overrides.settings['required'] = False
+
def load_arguments(self):
if self.arguments_loader:
cmd_args = self.arguments_loader()
@@ -87,7 +100,20 @@
def update_argument(self, param_name, argtype):
arg = self.arguments[param_name]
+ # resolve defaults from either environment variable or config file
+ self._resolve_default_value_from_config_file(arg, argtype)
arg.type.update(other=argtype)
+ arg_default = arg.type.settings.get('default', None)
+ # apply DefaultStr and DefaultInt to allow distinguishing between
+ # when a default was applied or when the user specified a value
+ # that coincides with the default
+ if isinstance(arg_default, str):
+ arg_default = DefaultStr(arg_default)
+ elif isinstance(arg_default, int):
+ arg_default = DefaultInt(arg_default)
+ # update the default
+ if arg_default:
+ arg.type.settings['default'] = arg_default
def execute(self, **kwargs):
return self(**kwargs)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knack-0.5.3/knack/config.py new/knack-0.5.4/knack/config.py
--- old/knack-0.5.3/knack/config.py 2019-03-06 00:03:37.000000000 +0100
+++ new/knack-0.5.4/knack/config.py 2019-03-29 20:11:28.000000000 +0100
@@ -23,6 +23,7 @@
_DEFAULT_CONFIG_ENV_VAR_PREFIX = 'CLI'
_DEFAULT_CONFIG_DIR = os.path.join('~', '.{}'.format('cli'))
_DEFAULT_CONFIG_FILE_NAME = 'config'
+ _CONFIG_DEFAULTS_SECTION = 'defaults'
def __init__(self, config_dir=None, config_env_var_prefix=None, config_file_name=None):
""" Manages configuration options available in the CLI
@@ -44,6 +45,7 @@
configuration_file_name = config_file_name or CLIConfig._DEFAULT_CONFIG_FILE_NAME
self.config_path = os.path.join(self.config_dir, configuration_file_name)
self._env_var_format = '{}{}'.format(env_var_prefix, '{section}_{option}')
+ self.defaults_section_name = CLIConfig._CONFIG_DEFAULTS_SECTION
self.config_parser.read(self.config_path)
def env_var_name(self, section, option):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knack-0.5.3/knack/parser.py new/knack-0.5.4/knack/parser.py
--- old/knack-0.5.3/knack/parser.py 2019-03-06 00:03:37.000000000 +0100
+++ new/knack-0.5.4/knack/parser.py 2019-03-29 20:11:28.000000000 +0100
@@ -7,8 +7,10 @@
from .deprecation import Deprecated
from .events import EVENT_PARSER_GLOBAL_CREATE
+from .log import get_logger
from .util import CtxTypeError
+logger = get_logger(__name__)
# List of keyword arguments supported in argparse
# from https://github.com/python/cpython/blob/master/Lib/argparse.py#L748
@@ -66,6 +68,25 @@
argparse_options['metavar'] = '<{}>'.format(argparse_options['dest'].upper())
return obj.add_argument(**argparse_options)
+ @staticmethod
+ def _expand_prefixed_files(args):
+ """ Load arguments prefixed with '@' from file as string
+
+ :param args: Arguments passed from command line
+ :type args: list
+ """
+ for arg, _ in enumerate(args):
+ if args[arg].startswith('@'):
+ try:
+ logger.debug('Attempting to read file %s', args[arg][1:])
+ with open(args[arg][1:], 'r') as f:
+ content = f.read()
+ args[arg] = content
+ except IOError:
+ # Leave arg unmodified
+ logger.debug('File Error: Failed to open %s, assume not a file', args[arg][1:])
+ return args
+
def __init__(self, cli_ctx=None, cli_help=None, **kwargs):
""" Create the argument parser
@@ -224,3 +245,12 @@
self._actions[-1] if is_group else self,
is_group)
self.exit()
+
+ def parse_args(self, args=None, namespace=None):
+ """ Overrides argparse.ArgumentParser.parse_args
+
+ Enables '@'-prefixed files to be expanded before arguments are processed
+ by ArgumentParser.parse_args as usual
+ """
+ self._expand_prefixed_files(args)
+ return super(CLICommandParser, self).parse_args(args)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knack-0.5.3/knack/testsdk/patches.py new/knack-0.5.4/knack/testsdk/patches.py
--- old/knack-0.5.3/knack/testsdk/patches.py 2019-03-06 00:03:37.000000000 +0100
+++ new/knack-0.5.4/knack/testsdk/patches.py 2019-03-29 20:11:28.000000000 +0100
@@ -4,7 +4,10 @@
# --------------------------------------------------------------------------------------------
import unittest
-import mock
+try:
+ import mock
+except ImportError:
+ from unittest import mock
from .exceptions import CliTestError
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knack-0.5.3/knack/validators.py new/knack-0.5.4/knack/validators.py
--- old/knack-0.5.3/knack/validators.py 1970-01-01 01:00:00.000000000 +0100
+++ new/knack-0.5.4/knack/validators.py 2019-03-29 20:11:28.000000000 +0100
@@ -0,0 +1,20 @@
+# --------------------------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# --------------------------------------------------------------------------------------------
+
+
+class DefaultStr(str):
+
+ def __new__(cls, *args, **kwargs):
+ instance = str.__new__(cls, *args, **kwargs)
+ instance.is_default = True
+ return instance
+
+
+class DefaultInt(int):
+
+ def __new__(cls, *args, **kwargs):
+ instance = int.__new__(cls, *args, **kwargs)
+ instance.is_default = True
+ return instance
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knack-0.5.3/setup.py new/knack-0.5.4/setup.py
--- old/knack-0.5.3/setup.py 2019-03-06 00:03:37.000000000 +0100
+++ new/knack-0.5.4/setup.py 2019-03-29 20:11:28.000000000 +0100
@@ -9,7 +9,7 @@
from codecs import open
from setuptools import setup, find_packages
-VERSION = '0.5.3'
+VERSION = '0.5.4'
DEPENDENCIES = [
'argcomplete',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knack-0.5.3/tests/test_cli_scenarios.py new/knack-0.5.4/tests/test_cli_scenarios.py
--- old/knack-0.5.3/tests/test_cli_scenarios.py 2019-03-06 00:03:37.000000000 +0100
+++ new/knack-0.5.4/tests/test_cli_scenarios.py 2019-03-29 20:11:28.000000000 +0100
@@ -5,6 +5,10 @@
import os
import unittest
+try:
+ import mock
+except ImportError:
+ from unittest import mock
import mock
from collections import OrderedDict
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knack-0.5.3/tests/test_command_with_configured_defaults.py new/knack-0.5.4/tests/test_command_with_configured_defaults.py
--- old/knack-0.5.3/tests/test_command_with_configured_defaults.py 1970-01-01 01:00:00.000000000 +0100
+++ new/knack-0.5.4/tests/test_command_with_configured_defaults.py 2019-03-29 20:11:28.000000000 +0100
@@ -0,0 +1,90 @@
+# --------------------------------------------------------------------------------------------
+# Copyright (c) Microsoft Corporation. All rights reserved.
+# Licensed under the MIT License. See License.txt in the project root for license information.
+# --------------------------------------------------------------------------------------------
+from __future__ import print_function
+import os
+import logging
+import unittest
+try:
+ import mock
+except ImportError:
+ from unittest import mock
+from six import StringIO
+import sys
+
+from knack.arguments import ArgumentsContext
+from knack.commands import CLICommandsLoader, CLICommand, CommandGroup
+from knack.config import CLIConfig
+from tests.util import DummyCLI, redirect_io
+
+
+# a dummy callback for arg-parse
+def load_params(_):
+ pass
+
+
+def list_foo(my_param):
+ print(str(my_param), end='')
+
+
+class TestCommandWithConfiguredDefaults(unittest.TestCase):
+
+ @classmethod
+ def setUpClass(cls):
+ # Ensure initialization has occurred correctly
+ logging.basicConfig(level=logging.DEBUG)
+
+ @classmethod
+ def tearDownClass(cls):
+ logging.shutdown()
+
+ def _set_up_command_table(self, required):
+
+ class TestCommandsLoader(CLICommandsLoader):
+
+ def load_command_table(self, args):
+ super(TestCommandsLoader, self).load_command_table(args)
+ with CommandGroup(self, 'foo', '{}#{{}}'.format(__name__)) as g:
+ g.command('list', 'list_foo')
+ return self.command_table
+
+ def load_arguments(self, command):
+ with ArgumentsContext(self, 'foo') as c:
+ c.argument('my_param', options_list='--my-param',
+ configured_default='param', required=required)
+ super(TestCommandsLoader, self).load_arguments(command)
+ self.cli_ctx = DummyCLI(commands_loader_cls=TestCommandsLoader)
+
+ @mock.patch.dict(os.environ, {'CLI_DEFAULTS_PARAM': 'myVal'})
+ @redirect_io
+ def test_apply_configured_defaults_on_required_arg(self):
+ self._set_up_command_table(required=True)
+ self.cli_ctx.invoke('foo list'.split())
+ actual = self.io.getvalue()
+ expected = 'myVal'
+ self.assertEqual(expected, actual)
+
+ @redirect_io
+ def test_no_configured_default_on_required_arg(self):
+ self._set_up_command_table(required=True)
+ with self.assertRaises(SystemExit):
+ self.cli_ctx.invoke('foo list'.split())
+ actual = self.io.getvalue()
+ expected = 'required: --my-param'
+ if sys.version_info[0] == 2:
+ expected = 'argument --my-param is required'
+ self.assertEqual(expected in actual, True)
+
+ @mock.patch.dict(os.environ, {'CLI_DEFAULTS_PARAM': 'myVal'})
+ @redirect_io
+ def test_apply_configured_defaults_on_optional_arg(self):
+ self._set_up_command_table(required=False)
+ self.cli_ctx.invoke('foo list'.split())
+ actual = self.io.getvalue()
+ expected = 'myVal'
+ self.assertEqual(expected, actual)
+
+
+if __name__ == '__main__':
+ unittest.main()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knack-0.5.3/tests/test_completion.py new/knack-0.5.4/tests/test_completion.py
--- old/knack-0.5.3/tests/test_completion.py 2019-03-06 00:03:37.000000000 +0100
+++ new/knack-0.5.4/tests/test_completion.py 2019-03-29 20:11:28.000000000 +0100
@@ -5,7 +5,10 @@
import os
import unittest
-import mock
+try:
+ import mock
+except ImportError:
+ from unittest import mock
from knack.completion import CLICompletion, CaseInsensitiveChoicesCompleter, ARGCOMPLETE_ENV_NAME
from tests.util import MockContext
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knack-0.5.3/tests/test_config.py new/knack-0.5.4/tests/test_config.py
--- old/knack-0.5.3/tests/test_config.py 2019-03-06 00:03:37.000000000 +0100
+++ new/knack-0.5.4/tests/test_config.py 2019-03-29 20:11:28.000000000 +0100
@@ -7,7 +7,10 @@
import stat
import unittest
import tempfile
-import mock
+try:
+ import mock
+except ImportError:
+ from unittest import mock
from six.moves import configparser
from knack.config import CLIConfig, get_config_parser
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knack-0.5.3/tests/test_deprecation.py new/knack-0.5.4/tests/test_deprecation.py
--- old/knack-0.5.3/tests/test_deprecation.py 2019-03-06 00:03:37.000000000 +0100
+++ new/knack-0.5.4/tests/test_deprecation.py 2019-03-29 20:11:28.000000000 +0100
@@ -5,16 +5,17 @@
from __future__ import unicode_literals
-import sys
import unittest
-import mock
+try:
+ import mock
+except ImportError:
+ from unittest import mock
from threading import Lock
-from six import StringIO
from knack.arguments import ArgumentsContext
from knack.commands import CLICommand, CLICommandsLoader, CommandGroup
-from tests.util import DummyCLI
+from tests.util import DummyCLI, redirect_io
def example_handler(arg1, arg2=None, arg3=None):
@@ -27,20 +28,6 @@
pass
-original_stdout = sys.stdout
-original_stderr = sys.stderr
-
-
-def redirect_io(func):
- def wrapper(self):
- sys.stdout = sys.stderr = self.io = StringIO()
- func(self)
- self.io.close()
- sys.stdout = original_stderr
- sys.stderr = original_stderr
- return wrapper
-
-
class TestCommandDeprecation(unittest.TestCase):
def setUp(self):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knack-0.5.3/tests/test_log.py new/knack-0.5.4/tests/test_log.py
--- old/knack-0.5.3/tests/test_log.py 2019-03-06 00:03:37.000000000 +0100
+++ new/knack-0.5.4/tests/test_log.py 2019-03-29 20:11:28.000000000 +0100
@@ -4,7 +4,10 @@
# --------------------------------------------------------------------------------------------
import unittest
-import mock
+try:
+ import mock
+except ImportError:
+ from unittest import mock
import logging
import colorama
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knack-0.5.3/tests/test_parser.py new/knack-0.5.4/tests/test_parser.py
--- old/knack-0.5.3/tests/test_parser.py 2019-03-06 00:03:37.000000000 +0100
+++ new/knack-0.5.4/tests/test_parser.py 2019-03-29 20:11:28.000000000 +0100
@@ -133,6 +133,34 @@
parser = CLICommandParser()
parser.load_command_table(self.mock_ctx.commands_loader)
+ def test_prefix_file_expansion(self):
+ import json, os
+
+ def test_handler():
+ pass
+
+ def create_test_file(file, contents):
+ with open(file, 'w') as f:
+ f.write(contents)
+
+ def remove_test_file(file):
+ os.remove(file)
+
+ json_test_data = json.dumps({'one': 1, 'two': 2, 'three': 3})
+ create_test_file('test.json', json_test_data)
+
+ command = CLICommand(self.mock_ctx, 'test command', test_handler)
+ command.add_argument('json_data', '--param')
+ cmd_table = {'test command': command}
+ self.mock_ctx.commands_loader.command_table = cmd_table
+ parser = CLICommandParser()
+ parser.load_command_table(self.mock_ctx.commands_loader)
+
+ args = parser.parse_args('test command --param @test.json'.split())
+ self.assertEqual(json_test_data, args.json_data)
+
+ remove_test_file('test.json')
+
class VerifyError(object): # pylint: disable=too-few-public-methods
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knack-0.5.3/tests/test_prompting.py new/knack-0.5.4/tests/test_prompting.py
--- old/knack-0.5.3/tests/test_prompting.py 2019-03-06 00:03:37.000000000 +0100
+++ new/knack-0.5.4/tests/test_prompting.py 2019-03-29 20:11:28.000000000 +0100
@@ -5,7 +5,10 @@
import sys
import unittest
-import mock
+try:
+ import mock
+except ImportError:
+ from unittest import mock
from six import StringIO
from knack.prompting import (verify_is_a_tty, NoTTYException, _INVALID_PASSWORD_MSG, prompt,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/knack-0.5.3/tests/util.py new/knack-0.5.4/tests/util.py
--- old/knack-0.5.3/tests/util.py 2019-03-06 00:03:37.000000000 +0100
+++ new/knack-0.5.4/tests/util.py 2019-03-29 20:11:28.000000000 +0100
@@ -3,11 +3,29 @@
# Licensed under the MIT License. See License.txt in the project root for license information.
# --------------------------------------------------------------------------------------------
-import mock
+try:
+ import mock
+except ImportError:
+ from unittest import mock
+import sys
import tempfile
+from six import StringIO
from knack.cli import CLI, CLICommandsLoader, CommandInvoker
+def redirect_io(func):
+
+ original_stderr = sys.stderr
+ original_stdout = sys.stdout
+
+ def wrapper(self):
+ sys.stdout = sys.stderr = self.io = StringIO()
+ func(self)
+ self.io.close()
+ sys.stdout = original_stderr
+ sys.stderr = original_stderr
+ return wrapper
+
class MockContext(CLI):
1
0
Hello community,
here is the log from the commit of package python-num2words for openSUSE:Factory checked in at 2019-05-06 13:25:03
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-num2words (Old)
and /work/SRC/openSUSE:Factory/.python-num2words.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-num2words"
Mon May 6 13:25:03 2019 rev:3 rq:694215 version:0.5.9
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-num2words/python-num2words.changes 2018-12-24 11:46:36.793174854 +0100
+++ /work/SRC/openSUSE:Factory/.python-num2words.new.5148/python-num2words.changes 2019-05-06 13:25:06.293013097 +0200
@@ -1,0 +2,30 @@
+Fri Apr 12 12:49:38 UTC 2019 - pgajdos(a)suse.com
+
+- version update to 0.5.9
+ * Fix encoding issue on release 0.5.8 (#229)
+ * Improve Polish localization (#228)
+ * Add Portuguese (Portugal) localization (#198)
+ * Add a command line tool to use num2words
+ * Use language iso code for Vietnamese
+ * Improve Korean localization (#219)
+ * Improve Serbian (Latin) localization (#207)
+ * Improve testing setup (#220)
+ * Improve German localization (#214) (#222)
+ * Improve Romanian localization (#215)
+ * Improve Spanish localization (#187) (#200)
+ * Improve Russian localization (#211) (#212)
+ * Improve French localization (23902ab)
+ * Improve Arabic localization (#176)
+ * Improve Lithuanian and Latvian localization (#185)
+ * Improve Ukrainian localization (#183)
+ * Add Finnish localization. (#170)
+ * Add Japanese localization. (#171)
+ * Add belgian-french localization. (#151)
+ * Add Czech localization. (#154)
+ * Add Thai localization. (#139)
+ * Improve English localization. (#144)
+ * Improve Spanish localization. (#167)
+ * Improve Italian localization. (#143)
+ * Improve documentation. (#155, #145, #174)
+
+-------------------------------------------------------------------
Old:
----
num2words-0.5.6.tar.gz
New:
----
num2words-0.5.9.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-num2words.spec ++++++
--- /var/tmp/diff_new_pack.NQR2Vh/_old 2019-05-06 13:25:07.485015534 +0200
+++ /var/tmp/diff_new_pack.NQR2Vh/_new 2019-05-06 13:25:07.489015542 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-num2words
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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
@@ -18,7 +18,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-num2words
-Version: 0.5.6
+Version: 0.5.9
Release: 0
Summary: Modules to convert numbers to words
License: LGPL-2.1-only
@@ -28,6 +28,11 @@
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
+# SECTION test requirements
+BuildRequires: %{python_module delegator.py}
+BuildRequires: %{python_module docopt >= 0.6.2}
+# /SECTION
+Requires: python-docopt >= 0.6.2
BuildArch: noarch
%python_subpackages
@@ -54,5 +59,6 @@
%doc CHANGES.rst README.rst
%license COPYING
%{python_sitelib}/*
+%python3_only %{_bindir}/num2words
%changelog
++++++ num2words-0.5.6.tar.gz -> num2words-0.5.9.tar.gz ++++++
++++ 12013 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package python-pyroute2 for openSUSE:Factory checked in at 2019-05-06 13:24:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pyroute2 (Old)
and /work/SRC/openSUSE:Factory/.python-pyroute2.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-pyroute2"
Mon May 6 13:24:56 2019 rev:11 rq:694214 version:0.5.5
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pyroute2/python-pyroute2.changes 2019-03-05 12:22:52.160886306 +0100
+++ /work/SRC/openSUSE:Factory/.python-pyroute2.new.5148/python-pyroute2.changes 2019-05-06 13:25:00.561001382 +0200
@@ -1,0 +2,15 @@
+Fri Apr 12 13:10:15 UTC 2019 - pgajdos(a)suse.com
+
+- version update to 0.5.5
+ * nftables: rules expressions
+ * <https://github.com/svinota/pyroute2/pull/592>
+ * netns: ns_pids
+ * <https://github.com/svinota/pyroute2/pull/593>
+ * ndb: wait() method
+ * ndb: add extra logging, log state transitions
+ * ndb: nested views, e.g. `ndb.interfaces['br0'].ports
+ * cli: port pyroute2-cli to use NDB instead of IPDB
+ * iproute: basic Windows support (proof of concept only)
+ * remote: support mitogen proxy chains, support remote netns
+
+-------------------------------------------------------------------
Old:
----
pyroute2-0.5.4.tar.gz
New:
----
pyroute2-0.5.5.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-pyroute2.spec ++++++
--- /var/tmp/diff_new_pack.lWtVp0/_old 2019-05-06 13:25:01.593003492 +0200
+++ /var/tmp/diff_new_pack.lWtVp0/_new 2019-05-06 13:25:01.597003500 +0200
@@ -18,7 +18,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-pyroute2
-Version: 0.5.4
+Version: 0.5.5
Release: 0
Summary: Python Netlink library
License: GPL-2.0-or-later OR Apache-2.0
@@ -69,5 +69,6 @@
%license LICENSE.Apache.v2 LICENSE.GPL.v2
%{python_sitelib}/*
%python3_only %{_bindir}/ss2
+%python3_only %{_bindir}/pyroute2-cli
%changelog
++++++ pyroute2-0.5.4.tar.gz -> pyroute2-0.5.5.tar.gz ++++++
++++ 5468 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package python-inifile for openSUSE:Factory checked in at 2019-05-06 13:24:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-inifile (Old)
and /work/SRC/openSUSE:Factory/.python-inifile.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-inifile"
Mon May 6 13:24:49 2019 rev:1 rq:694209 version:0.4
Changes:
--------
New Changes file:
--- /dev/null 2019-05-02 15:18:01.516169518 +0200
+++ /work/SRC/openSUSE:Factory/.python-inifile.new.5148/python-inifile.changes 2019-05-06 13:24:52.416984737 +0200
@@ -0,0 +1,12 @@
+-------------------------------------------------------------------
+Fri Apr 12 16:26:52 UTC 2019 - John Vandenberg <jayvdb(a)gmail.com>
+
+- Update to v0.4
+- Tidy spec
+- Activate test suite
+
+-------------------------------------------------------------------
+Tue Jun 7 19:19:45 UTC 2016 - sbahling(a)suse.com
+
+- Initial package. Version 0.3.
+
New:
----
LICENSE
hello.ini
inifile-0.4.zip
python-inifile.changes
python-inifile.spec
test.py
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-inifile.spec ++++++
#
# spec file for package python-inifile
#
# Copyright (c) 2019 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
# 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/
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-inifile
Version: 0.4
Release: 0
License: BSD-3-Clause
Summary: A small INI library for Python
Url: https://github.com/mitsuhiko/python-inifile
Group: Development/Languages/Python
Source: https://files.pythonhosted.org/packages/source/i/inifile/inifile-%{version}…
Source1: https://raw.githubusercontent.com/mitsuhiko/python-inifile/master/LICENSE
Source2: https://raw.githubusercontent.com/mitsuhiko/python-inifile/master/hello.ini
Source3: https://raw.githubusercontent.com/mitsuhiko/python-inifile/master/test.py
BuildRequires: python-rpm-macros
BuildRequires: %{python_module setuptools}
BuildRequires: unzip
BuildRequires: fdupes
BuildArch: noarch
%python_subpackages
%description
A small INI library for Python.
%prep
%setup -q -n inifile-%{version}
cp %{SOURCE1} %{SOURCE2} %{SOURCE3} .
python3 -m lib2to3 -w -n --no-diffs test.py
%build
%python_build
%install
%python_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
%python_exec test.py
%files %{python_files}
%license LICENSE
%{python_sitelib}/*
%changelog
++++++ LICENSE ++++++
Copyright (c) 2015 by Armin Ronacher.
Some rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials provided
with the distribution.
* The names of the contributors may not be used to endorse or
promote products derived from this software without specific
prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"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 DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
++++++ hello.ini ++++++
[foo]
value = 42
bar = "testing more stuff"
mep = aha!
mup = aha!
[bar]
x = 23
++++++ test.py ++++++
from inifile import IniFile
i = IniFile('hello.ini')
i['foo.bar'] = 'testing more stuff'
i['foo.mup'] = 'aha!'
print i.get_updated_lines()
i.save()
1
0
Hello community,
here is the log from the commit of package python-twitter.common.lang for openSUSE:Factory checked in at 2019-05-06 13:22:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-twitter.common.lang (Old)
and /work/SRC/openSUSE:Factory/.python-twitter.common.lang.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-twitter.common.lang"
Mon May 6 13:22:31 2019 rev:3 rq:694189 version:0.3.11
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-twitter.common.lang/python-twitter.common.lang.changes 2019-03-05 12:23:08.956881184 +0100
+++ /work/SRC/openSUSE:Factory/.python-twitter.common.lang.new.5148/python-twitter.common.lang.changes 2019-05-06 13:22:44.504716926 +0200
@@ -1,0 +2,6 @@
+Mon Apr 15 08:24:45 UTC 2019 - Marketa Calabkova <mcalabkova(a)suse.com>
+
+- update to version 0.3.11
+ * no changelog available (nothing has changed)
+
+-------------------------------------------------------------------
Old:
----
twitter.common.lang-0.3.10.tar.gz
New:
----
twitter.common.lang-0.3.11.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-twitter.common.lang.spec ++++++
--- /var/tmp/diff_new_pack.PPUkWq/_old 2019-05-06 13:22:47.884724380 +0200
+++ /var/tmp/diff_new_pack.PPUkWq/_new 2019-05-06 13:22:47.884724380 +0200
@@ -17,7 +17,7 @@
Name: python-twitter.common.lang
-Version: 0.3.10
+Version: 0.3.11
Release: 0
Summary: Python language and compatibility facilities
License: Apache-2.0
++++++ twitter.common.lang-0.3.10.tar.gz -> twitter.common.lang-0.3.11.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/twitter.common.lang-0.3.10/PKG-INFO new/twitter.common.lang-0.3.11/PKG-INFO
--- old/twitter.common.lang-0.3.10/PKG-INFO 2019-01-17 23:06:06.000000000 +0100
+++ new/twitter.common.lang-0.3.11/PKG-INFO 2019-03-28 23:49:57.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: twitter.common.lang
-Version: 0.3.10
+Version: 0.3.11
Summary: twitter.common python language and compatibility facilities.
Home-page: https://github.com/twitter/commons
Author: UNKNOWN
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/twitter.common.lang-0.3.10/setup.py new/twitter.common.lang-0.3.11/setup.py
--- old/twitter.common.lang-0.3.10/setup.py 2019-01-17 23:06:05.000000000 +0100
+++ new/twitter.common.lang-0.3.11/setup.py 2019-03-28 23:49:56.000000000 +0100
@@ -18,6 +18,6 @@
'package_dir': { '': 'src'},
'packages': ['twitter', 'twitter.common', 'twitter.common.lang'],
'url': 'https://github.com/twitter/commons',
- 'version': '0.3.10',
+ 'version': '0.3.11',
'zip_safe': True}
)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/twitter.common.lang-0.3.10/src/twitter.common.lang.egg-info/PKG-INFO new/twitter.common.lang-0.3.11/src/twitter.common.lang.egg-info/PKG-INFO
--- old/twitter.common.lang-0.3.10/src/twitter.common.lang.egg-info/PKG-INFO 2019-01-17 23:06:06.000000000 +0100
+++ new/twitter.common.lang-0.3.11/src/twitter.common.lang.egg-info/PKG-INFO 2019-03-28 23:49:57.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: twitter.common.lang
-Version: 0.3.10
+Version: 0.3.11
Summary: twitter.common python language and compatibility facilities.
Home-page: https://github.com/twitter/commons
Author: UNKNOWN
1
0
Hello community,
here is the log from the commit of package python-transip for openSUSE:Factory checked in at 2019-05-06 13:22:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-transip (Old)
and /work/SRC/openSUSE:Factory/.python-transip.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-transip"
Mon May 6 13:22:21 2019 rev:3 rq:694188 version:2.0.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-transip/python-transip.changes 2018-05-04 11:30:04.806488614 +0200
+++ /work/SRC/openSUSE:Factory/.python-transip.new.5148/python-transip.changes 2019-05-06 13:22:29.688684257 +0200
@@ -1,0 +2,10 @@
+Mon Apr 15 08:53:36 UTC 2019 - Marketa Calabkova <mcalabkova(a)suse.com>
+
+- update to version 2.0.0
+ * Fixed ordering VPS
+ * Added option to clone VPS
+ * Added availability zones for VPS
+ * Added option to specify private key directly
+ * Changed default cryptography library from rsa to cryptography
+
+-------------------------------------------------------------------
Old:
----
0.3.0.tar.gz
New:
----
v2.0.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-transip.spec ++++++
--- /var/tmp/diff_new_pack.MmWERv/_old 2019-05-06 13:22:32.616690713 +0200
+++ /var/tmp/diff_new_pack.MmWERv/_new 2019-05-06 13:22:32.644690774 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-transip
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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
@@ -12,29 +12,29 @@
# 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/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-transip
-Version: 0.3.0
+Version: 2.0.0
Release: 0
Summary: TransIP API Connector
License: MIT
Group: Development/Languages/Python
URL: https://github.com/benkonrath/transip-api
-Source: https://github.com/benkonrath/transip-api/archive/%{version}.tar.gz
+Source: https://github.com/benkonrath/transip-api/archive/v%{version}.tar.gz
+BuildRequires: %{python_module cryptography}
BuildRequires: %{python_module mock}
BuildRequires: %{python_module nose}
BuildRequires: %{python_module requests}
-BuildRequires: %{python_module rsa}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module suds-jurko}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
+Requires: python-cryptography
Requires: python-requests
-Requires: python-rsa
Requires: python-suds-jurko
BuildArch: noarch
%python_subpackages
@@ -54,7 +54,7 @@
%check
# testConstructor needs network connection
-%python_expand nosetests-%{$python_bin_suffix} -e "testConstructor"
+%python_expand nosetests-%{$python_bin_suffix} -e "test_constructor" -e "testConstructor"
%files %{python_files}
%license LICENSE
1
0
Hello community,
here is the log from the commit of package libcthreads for openSUSE:Factory checked in at 2019-05-06 13:22:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libcthreads (Old)
and /work/SRC/openSUSE:Factory/.libcthreads.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libcthreads"
Mon May 6 13:22:16 2019 rev:6 rq:693957 version:0~20180724
Changes:
--------
--- /work/SRC/openSUSE:Factory/libcthreads/libcthreads.changes 2017-02-21 13:47:51.561387819 +0100
+++ /work/SRC/openSUSE:Factory/.libcthreads.new.5148/libcthreads.changes 2019-05-06 13:22:19.364661492 +0200
@@ -1,0 +2,8 @@
+Sat Apr 13 19:43:51 UTC 2019 - Greg Freemyer <Greg.Freemyer(a)gmail.com>
+
+- update to v0~20180724
+ * Changes to represent EAGAIN in error messages
+ * Changes to represent EDEADLK in error messages
+ * Code clean up
+
+-------------------------------------------------------------------
Old:
----
libcthreads-alpha-20170101.tar.gz
New:
----
libcthreads-alpha-20180724.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libcthreads.spec ++++++
--- /var/tmp/diff_new_pack.HFVq1R/_old 2019-05-06 13:22:20.480663953 +0200
+++ /var/tmp/diff_new_pack.HFVq1R/_new 2019-05-06 13:22:20.484663961 +0200
@@ -1,7 +1,7 @@
#
# spec file for package libcthreads
#
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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
@@ -12,17 +12,17 @@
# 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/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: libcthreads
%define lname libcthreads1
-%define timestamp 20170101
+%define timestamp 20180724
Version: 0~%timestamp
Release: 0
Summary: Library for cross-platform C threads functions
-License: LGPL-3.0+
+License: LGPL-3.0-or-later
Group: Development/Libraries/C and C++
Url: https://github.com/libyal/libcthreads/wiki
Source: https://github.com/libyal/libcthreads/releases/download/%timestamp/%name-al…
++++++ libcthreads-alpha-20170101.tar.gz -> libcthreads-alpha-20180724.tar.gz ++++++
++++ 15271 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package libcaes for openSUSE:Factory checked in at 2019-05-06 13:22:13
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libcaes (Old)
and /work/SRC/openSUSE:Factory/.libcaes.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libcaes"
Mon May 6 13:22:13 2019 rev:8 rq:693955 version:0~20190102
Changes:
--------
--- /work/SRC/openSUSE:Factory/libcaes/libcaes.changes 2017-10-05 11:56:47.305456259 +0200
+++ /work/SRC/openSUSE:Factory/.libcaes.new.5148/libcaes.changes 2019-05-06 13:22:15.668653341 +0200
@@ -1,0 +2,7 @@
+Tue Apr 2 18:30:58 UTC 2019 - Greg Freemyer <Greg.Freemyer(a)gmail.com>
+
+- update to v0~20190102
+ * Added OpenSSL EVP AES-XTS support
+ * Removed WinCrypt support (deprecated)
+
+-------------------------------------------------------------------
Old:
----
libcaes-alpha-20170110.tar.gz
New:
----
libcaes-alpha-20190102.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libcaes.spec ++++++
--- /var/tmp/diff_new_pack.CzLng2/_old 2019-05-06 13:22:16.212654541 +0200
+++ /var/tmp/diff_new_pack.CzLng2/_new 2019-05-06 13:22:16.216654550 +0200
@@ -1,7 +1,7 @@
#
# spec file for package libcaes
#
-# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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
@@ -12,17 +12,17 @@
# 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/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: libcaes
%define lname libcaes1
-%define timestamp 20170110
+%define timestamp 20190102
Version: 0~%timestamp
Release: 0
Summary: Library for cross-platform AES encryption
-License: LGPL-3.0+
+License: LGPL-3.0-or-later
Group: Development/Libraries/C and C++
Url: https://github.com/libyal/libcaes/wiki
Source: https://github.com/libyal/libcaes/releases/download/%timestamp/%name-alpha-…
@@ -69,7 +69,8 @@
%files -n %lname
%defattr(-,root,root)
-%doc AUTHORS COPYING ChangeLog
+%doc AUTHORS ChangeLog
+%license COPYING
%_libdir/libcaes.so.1*
%files devel
++++++ libcaes-alpha-20170110.tar.gz -> libcaes-alpha-20190102.tar.gz ++++++
++++ 26995 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package libcerror for openSUSE:Factory checked in at 2019-05-06 13:22:09
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libcerror (Old)
and /work/SRC/openSUSE:Factory/.libcerror.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libcerror"
Mon May 6 13:22:09 2019 rev:14 rq:693954 version:0~20181117
Changes:
--------
--- /work/SRC/openSUSE:Factory/libcerror/libcerror.changes 2017-10-05 11:57:18.081126173 +0200
+++ /work/SRC/openSUSE:Factory/.libcerror.new.5148/libcerror.changes 2019-05-06 13:22:12.804647026 +0200
@@ -1,0 +2,6 @@
+Mon Mar 25 02:15:21 UTC 2019 - Greg Freemyer <Greg.Freemyer(a)gmail.com>
+
+- update to v0~20181117
+ * worked on tests and minor updates
+
+-------------------------------------------------------------------
Old:
----
libcerror-beta-20170824.tar.gz
New:
----
libcerror-beta-20181117.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libcerror.spec ++++++
--- /var/tmp/diff_new_pack.yMxqq2/_old 2019-05-06 13:22:13.624648835 +0200
+++ /var/tmp/diff_new_pack.yMxqq2/_new 2019-05-06 13:22:13.628648843 +0200
@@ -18,7 +18,7 @@
Name: libcerror
%define lname libcerror1
-%define timestamp 20170824
+%define timestamp 20181117
Version: 0~%timestamp
Release: 0
Summary: Library for cross-platform C error functions
++++++ libcerror-beta-20170824.tar.gz -> libcerror-beta-20181117.tar.gz ++++++
++++ 13105 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package libcfile for openSUSE:Factory checked in at 2019-05-06 13:22:03
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libcfile (Old)
and /work/SRC/openSUSE:Factory/.libcfile.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libcfile"
Mon May 6 13:22:03 2019 rev:10 rq:693953 version:0~20190314
Changes:
--------
--- /work/SRC/openSUSE:Factory/libcfile/libcfile.changes 2017-02-21 13:47:35.239684692 +0100
+++ /work/SRC/openSUSE:Factory/.libcfile.new.5148/libcfile.changes 2019-05-06 13:22:11.292643692 +0200
@@ -1,0 +2,7 @@
+Sat Apr 13 19:50:25 UTC 2019 - Greg Freemyer <Greg.Freemyer(a)gmail.com>
+
+- update to v0~20190314
+ * Added O_CLOEXEC to open file IO flags
+ * Code cleanup
+
+-------------------------------------------------------------------
Old:
----
libcfile-alpha-20170105.tar.gz
New:
----
libcfile-alpha-20190314.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libcfile.spec ++++++
--- /var/tmp/diff_new_pack.wIhrAs/_old 2019-05-06 13:22:12.260645826 +0200
+++ /var/tmp/diff_new_pack.wIhrAs/_new 2019-05-06 13:22:12.260645826 +0200
@@ -18,7 +18,7 @@
Name: libcfile
%define lname libcfile1
-%define timestamp 20170105
+%define timestamp 20190314
Version: 0~%timestamp
Release: 0
Summary: Library for cross-platform C file functions
++++++ libcfile-alpha-20170105.tar.gz -> libcfile-alpha-20190314.tar.gz ++++++
++++ 41796 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package libcnotify for openSUSE:Factory checked in at 2019-05-06 13:21:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libcnotify (Old)
and /work/SRC/openSUSE:Factory/.libcnotify.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libcnotify"
Mon May 6 13:21:54 2019 rev:9 rq:693952 version:0~20180102
Changes:
--------
--- /work/SRC/openSUSE:Factory/libcnotify/libcnotify.changes 2017-10-05 11:57:20.756749718 +0200
+++ /work/SRC/openSUSE:Factory/.libcnotify.new.5148/libcnotify.changes 2019-05-06 13:22:04.668629086 +0200
@@ -1,0 +2,6 @@
+Sat Apr 13 19:55:22 UTC 2019 - Greg Freemyer <Greg.Freemyer(a)gmail.com>
+
+- update to v0~20180102
+ * worked on tests
+
+-------------------------------------------------------------------
Old:
----
libcnotify-beta-20170311.tar.gz
New:
----
libcnotify-beta-20180102.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libcnotify.spec ++++++
--- /var/tmp/diff_new_pack.IeIZj2/_old 2019-05-06 13:22:06.060632155 +0200
+++ /var/tmp/diff_new_pack.IeIZj2/_new 2019-05-06 13:22:06.060632155 +0200
@@ -18,7 +18,7 @@
Name: libcnotify
%define lname libcnotify1
-%define timestamp 20170311
+%define timestamp 20180102
Version: 0~%timestamp
Release: 0
Summary: Library for cross-platform C notify functions
++++++ libcnotify-beta-20170311.tar.gz -> libcnotify-beta-20180102.tar.gz ++++++
++++ 7448 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package libcpath for openSUSE:Factory checked in at 2019-05-06 13:21:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libcpath (Old)
and /work/SRC/openSUSE:Factory/.libcpath.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libcpath"
Mon May 6 13:21:47 2019 rev:9 rq:693950 version:0~20181228
Changes:
--------
--- /work/SRC/openSUSE:Factory/libcpath/libcpath.changes 2017-02-21 13:47:40.822898997 +0100
+++ /work/SRC/openSUSE:Factory/.libcpath.new.5148/libcpath.changes 2019-05-06 13:21:53.212603533 +0200
@@ -1,0 +2,6 @@
+Sat Apr 13 19:58:31 UTC 2019 - Greg Freemyer <Greg.Freemyer(a)gmail.com>
+
+- update to v0~20181228
+ * Worked on libcpath_path_get_sanitized_path_wide
+
+-------------------------------------------------------------------
Old:
----
libcpath-alpha-20170108.tar.gz
New:
----
libcpath-alpha-20181228.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libcpath.spec ++++++
--- /var/tmp/diff_new_pack.es7Rfu/_old 2019-05-06 13:21:54.428606272 +0200
+++ /var/tmp/diff_new_pack.es7Rfu/_new 2019-05-06 13:21:54.452606326 +0200
@@ -18,7 +18,7 @@
Name: libcpath
%define lname libcpath1
-%define timestamp 20170108
+%define timestamp 20181228
Version: 0~%timestamp
Release: 0
Summary: Library for cross-platform C path functions
@@ -71,7 +71,8 @@
%files -n %lname
%defattr(-,root,root)
-%doc AUTHORS COPYING ChangeLog
+%doc AUTHORS ChangeLog
+%license COPYING
%_libdir/libcpath.so.1*
%files devel
++++++ libcpath-alpha-20170108.tar.gz -> libcpath-alpha-20181228.tar.gz ++++++
++++ 43468 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package libcsplit for openSUSE:Factory checked in at 2019-05-06 13:21:42
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libcsplit (Old)
and /work/SRC/openSUSE:Factory/.libcsplit.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libcsplit"
Mon May 6 13:21:42 2019 rev:10 rq:693949 version:0~20190102
Changes:
--------
--- /work/SRC/openSUSE:Factory/libcsplit/libcsplit.changes 2017-10-05 11:57:11.414064215 +0200
+++ /work/SRC/openSUSE:Factory/.libcsplit.new.5148/libcsplit.changes 2019-05-06 13:21:47.584590857 +0200
@@ -1,0 +2,8 @@
+Wed Mar 27 22:43:36 UTC 2019 - Greg Freemyer <Greg.Freemyer(a)gmail.com>
+
+- update to v0~20190102
+ * worked on tests
+ * code clean-up
+ * fixed a typo
+
+-------------------------------------------------------------------
Old:
----
libcsplit-beta-20170311.tar.gz
New:
----
libcsplit-beta-20190102.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libcsplit.spec ++++++
--- /var/tmp/diff_new_pack.fxGQ4u/_old 2019-05-06 13:21:48.496592911 +0200
+++ /var/tmp/diff_new_pack.fxGQ4u/_new 2019-05-06 13:21:48.496592911 +0200
@@ -18,7 +18,7 @@
Name: libcsplit
%define lname libcsplit1
-%define timestamp 20170311
+%define timestamp 20190102
Version: 0~%timestamp
Release: 0
Summary: Library for cross-platform C split string functions
++++++ libcsplit-beta-20170311.tar.gz -> libcsplit-beta-20190102.tar.gz ++++++
++++ 14291 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package python-social-auth-core for openSUSE:Factory checked in at 2019-05-06 13:21:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-social-auth-core (Old)
and /work/SRC/openSUSE:Factory/.python-social-auth-core.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-social-auth-core"
Mon May 6 13:21:36 2019 rev:6 rq:693141 version:3.1.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-social-auth-core/python-social-auth-core.changes 2019-04-04 12:07:06.789457132 +0200
+++ /work/SRC/openSUSE:Factory/.python-social-auth-core.new.5148/python-social-auth-core.changes 2019-05-06 13:21:40.240574315 +0200
@@ -1,0 +2,14 @@
+Thu Apr 11 04:22:39 UTC 2019 - John Vandenberg <jayvdb(a)gmail.com>
+
+- Remove build dependency on unittest2, as this was also a missing
+ runtime dependency on both Python 2 and 3 as the tests are
+ distributed in the runtime package, and are used by the test suite
+ of other packages.
+ * Add patch remove-unittest2.patch
+- Suggest python3-saml dependency for both Python 2 & 3, and
+ activate the SAML tests, adding missing saml_config.json for tests.
+ Not recommended due to dependency chain including libxmlsec,
+ which at the moment is unsupported v1.2.20
+- Add README.md to %doc
+
+-------------------------------------------------------------------
New:
----
remove-unittest2.patch
saml_config.json
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-social-auth-core.spec ++++++
--- /var/tmp/diff_new_pack.GYucG6/_old 2019-05-06 13:21:41.148576360 +0200
+++ /var/tmp/diff_new_pack.GYucG6/_new 2019-05-06 13:21:41.152576369 +0200
@@ -26,6 +26,9 @@
Group: Development/Languages/Python
URL: https://github.com/python-social-auth/social-core
Source: https://files.pythonhosted.org/packages/source/s/social-auth-core/social-au…
+# Missing test data https://github.com/python-social-auth/social-core/pull/351
+Source1: https://raw.githubusercontent.com/python-social-auth/social-core/master/soc…
+Patch0: remove-unittest2.patch
BuildRequires: %{python_module PyJWT >= 1.4.0}
BuildRequires: %{python_module coverage >= 3.6}
BuildRequires: %{python_module cryptography >= 2.1.1}
@@ -34,12 +37,12 @@
BuildRequires: %{python_module nose >= 1.2.1}
BuildRequires: %{python_module oauthlib >= 1.0.3}
BuildRequires: %{python_module python-jose >= 3.0.0}
+BuildRequires: %{python_module python3-saml}
BuildRequires: %{python_module rednose >= 0.4.1}
BuildRequires: %{python_module requests >= 2.9.1}
BuildRequires: %{python_module requests-oauthlib >= 0.6.1}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module six >= 1.10.0}
-BuildRequires: %{python_module unittest2}
BuildRequires: ca-certificates
BuildRequires: fdupes
BuildRequires: python-rpm-macros
@@ -54,6 +57,7 @@
Requires: python-requests >= 2.9.1
Requires: python-requests-oauthlib >= 0.6.1
Requires: python-six >= 1.10.0
+Suggests: python-python3-saml
BuildArch: noarch
%ifpython2
Requires: python2-python-openid >= 2.2.5
@@ -76,6 +80,8 @@
%prep
%setup -q -n social-auth-core-%{version}
+%patch0 -p1
+cp %{SOURCE1} social_core/tests/backends/data/
%build
%python_build
@@ -85,10 +91,10 @@
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
-%python_expand %{_bindir}/nosetests-%{$python_bin_suffix} --ignore-files test_saml.py
+%python_expand %{_bindir}/nosetests-%{$python_bin_suffix}
%files %{python_files}
-%doc CHANGELOG.md
+%doc CHANGELOG.md README.md
%license LICENSE
%{python_sitelib}/*
++++++ remove-unittest2.patch ++++++
Index: social-auth-core-3.1.0/social_core/tests/__init__.py
===================================================================
--- /dev/null
+++ social-auth-core-3.1.0/social_core/tests/__init__.py
@@ -0,0 +1,6 @@
+try:
+ import unittest2
+ import sys
+ sys.modules['unittest'] = unittest2
+except ImportError:
+ pass
Index: social-auth-core-3.1.0/social_core/tests/actions/actions.py
===================================================================
--- social-auth-core-3.1.0.orig/social_core/tests/actions/actions.py
+++ social-auth-core-3.1.0/social_core/tests/actions/actions.py
@@ -1,6 +1,6 @@
import json
import requests
-import unittest2 as unittest
+import unittest
from httpretty import HTTPretty
Index: social-auth-core-3.1.0/social_core/tests/backends/base.py
===================================================================
--- social-auth-core-3.1.0.orig/social_core/tests/backends/base.py
+++ social-auth-core-3.1.0/social_core/tests/backends/base.py
@@ -1,4 +1,4 @@
-import unittest2 as unittest
+import unittest
import requests
from httpretty import HTTPretty
Index: social-auth-core-3.1.0/social_core/tests/backends/open_id_connect.py
===================================================================
--- social-auth-core-3.1.0.orig/social_core/tests/backends/open_id_connect.py
+++ social-auth-core-3.1.0/social_core/tests/backends/open_id_connect.py
@@ -3,7 +3,7 @@ import os
import sys
import json
import datetime
-import unittest2
+import unittest
import base64
from calendar import timegm
Index: social-auth-core-3.1.0/social_core/tests/backends/test_broken.py
===================================================================
--- social-auth-core-3.1.0.orig/social_core/tests/backends/test_broken.py
+++ social-auth-core-3.1.0/social_core/tests/backends/test_broken.py
@@ -1,4 +1,4 @@
-import unittest2 as unittest
+import unittest
from ...backends.base import BaseAuth
from ..strategy import TestStrategy
Index: social-auth-core-3.1.0/social_core/tests/backends/test_elixir.py
===================================================================
--- social-auth-core-3.1.0.orig/social_core/tests/backends/test_elixir.py
+++ social-auth-core-3.1.0/social_core/tests/backends/test_elixir.py
@@ -1,4 +1,4 @@
-import unittest2
+import unittest
from .oauth import OAuth1Test, OAuth2Test
from .open_id_connect import OpenIdConnectTestMixin
Index: social-auth-core-3.1.0/social_core/tests/backends/test_globus.py
===================================================================
--- social-auth-core-3.1.0.orig/social_core/tests/backends/test_globus.py
+++ social-auth-core-3.1.0/social_core/tests/backends/test_globus.py
@@ -1,5 +1,5 @@
import json
-import unittest2
+import unittest
from .oauth import OAuth1Test, OAuth2Test
from .open_id_connect import OpenIdConnectTestMixin
Index: social-auth-core-3.1.0/social_core/tests/backends/test_google.py
===================================================================
--- social-auth-core-3.1.0.orig/social_core/tests/backends/test_google.py
+++ social-auth-core-3.1.0/social_core/tests/backends/test_google.py
@@ -1,6 +1,6 @@
import datetime
import json
-import unittest2
+import unittest
from httpretty import HTTPretty
Index: social-auth-core-3.1.0/social_core/tests/backends/test_saml.py
===================================================================
--- social-auth-core-3.1.0.orig/social_core/tests/backends/test_saml.py
+++ social-auth-core-3.1.0/social_core/tests/backends/test_saml.py
@@ -1,7 +1,7 @@
import re
import json
import sys
-import unittest2
+import unittest
import requests
import os
from os import path
@@ -28,11 +28,11 @@ from ...exceptions import AuthMissingPar
DATA_DIR = path.join(path.dirname(__file__), 'data')
-(a)unittest2.skipIf('TRAVIS' in os.environ,
- 'Travis-ci segfaults probably due to a bad '
- 'dependencies build')
-(a)unittest2.skipIf('__pypy__' in sys.builtin_module_names,
- 'dm.xmlsec not compatible with pypy')
+(a)unittest.skipIf('TRAVIS' in os.environ,
+ 'Travis-ci segfaults probably due to a bad '
+ 'dependencies build')
+(a)unittest.skipIf('__pypy__' in sys.builtin_module_names,
+ 'dm.xmlsec not compatible with pypy')
class SAMLTest(BaseBackendTest):
backend_path = 'social_core.backends.saml.SAMLAuth'
expected_username = 'myself'
Index: social-auth-core-3.1.0/social_core/tests/backends/test_utils.py
===================================================================
--- social-auth-core-3.1.0.orig/social_core/tests/backends/test_utils.py
+++ social-auth-core-3.1.0/social_core/tests/backends/test_utils.py
@@ -1,4 +1,4 @@
-import unittest2 as unittest
+import unittest
from ..models import TestStorage
from ..strategy import TestStrategy
Index: social-auth-core-3.1.0/social_core/tests/test_exceptions.py
===================================================================
--- social-auth-core-3.1.0.orig/social_core/tests/test_exceptions.py
+++ social-auth-core-3.1.0/social_core/tests/test_exceptions.py
@@ -1,4 +1,4 @@
-import unittest2 as unittest
+import unittest
from ..exceptions import SocialAuthBaseException, WrongBackend, \
AuthFailed, AuthTokenError, \
Index: social-auth-core-3.1.0/social_core/tests/test_partial.py
===================================================================
--- social-auth-core-3.1.0.orig/social_core/tests/test_partial.py
+++ social-auth-core-3.1.0/social_core/tests/test_partial.py
@@ -1,4 +1,4 @@
-import unittest2 as unittest
+import unittest
try:
from mock import Mock, patch
except ImportError:
Index: social-auth-core-3.1.0/social_core/tests/test_storage.py
===================================================================
--- social-auth-core-3.1.0.orig/social_core/tests/test_storage.py
+++ social-auth-core-3.1.0/social_core/tests/test_storage.py
@@ -1,6 +1,6 @@
import six
import random
-import unittest2 as unittest
+import unittest
from ..strategy import BaseStrategy
from ..storage import UserMixin, NonceMixin, AssociationMixin, \
Index: social-auth-core-3.1.0/social_core/tests/test_utils.py
===================================================================
--- social-auth-core-3.1.0.orig/social_core/tests/test_utils.py
+++ social-auth-core-3.1.0/social_core/tests/test_utils.py
@@ -1,5 +1,5 @@
import sys
-import unittest2 as unittest
+import unittest
try:
from unittest.mock import Mock
++++++ saml_config.json ++++++
{
"SOCIAL_AUTH_SAML_SP_ENTITY_ID": "https://github.com/omab/python-social-auth/saml-test",
"SOCIAL_AUTH_SAML_SP_PUBLIC_CERT": "MIICsDCCAhmgAwIBAgIJAO7BwdjDZcUWMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNVBAYTAkNBMRkwFwYDVQQIExBCcml0aXNoIENvbHVtYmlhMRswGQYDVQQKExJweXRob24tc29jaWFsLWF1dGgwHhcNMTUwNTA4MDc1ODQ2WhcNMjUwNTA3MDc1ODQ2WjBFMQswCQYDVQQGEwJDQTEZMBcGA1UECBMQQnJpdGlzaCBDb2x1bWJpYTEbMBkGA1UEChMScHl0aG9uLXNvY2lhbC1hdXRoMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCq3g1Cl+3uR5vCnN4HbgjTg+m3nHhteEMyb++ycZYre2bxUfsshER6x33l23tHckRYwm7MdBbrp3LrVoiOCdPblTml1IhEPTCwKMhBKvvWqTvgfcSSnRzAWkLlQYSusayyZK4n9qcYkV5MFni1rbjx+Mr5aOEmb5u33amMKLwSTwIDAQABo4GnMIGkMB0GA1UdDgQWBBRRiBR6zS66fKVokp0yJHbgv3RYmjB1BgNVHSMEbjBsgBRRiBR6zS66fKVokp0yJHbgv3RYmqFJpEcwRTELMAkGA1UEBhMCQ0ExGTAXBgNVBAgTEEJyaXRpc2ggQ29sdW1iaWExGzAZBgNVBAoTEnB5dGhvbi1zb2NpYWwtYXV0aIIJAO7BwdjDZcUWMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAJwsMU3YSaybVjuJ8US0fUhlPOlM40QFCGL4vB3TEbb24Mq8HrjUwrU0JFPGls9a2OYzN2B3e35NorMuxs+grGtr2yP6LvuX+nV6A93wb4ooGHoGfC7VLlyxSSns937SS5R1pzQ4gWzZma2KGWKICWph5zQ0ARVhL63967mGLmoI=",
"SOCIAL_AUTH_SAML_SP_PRIVATE_KEY": "MIICXgIBAAKBgQCq3g1Cl+3uR5vCnN4HbgjTg+m3nHhteEMyb++ycZYre2bxUfsshER6x33l23tHckRYwm7MdBbrp3LrVoiOCdPblTml1IhEPTCwKMhBKvvWqTvgfcSSnRzAWkLlQYSusayyZK4n9qcYkV5MFni1rbjx+Mr5aOEmb5u33amMKLwSTwIDAQABAoGBAIHAg6NJSiYC/NYpVzWfKlasuoNy78R5adXYSNZiCR5V5FNm5OzmODZgXUt6g0A7FomshIT/txQWoV7y5FmwPs8n13JY3Hdt4tJ6MHw2feLo710+OEp9VBQus3JsB2F8ONYrGvs00hPPL7h5av/rzTdE8F67YM1mSgeg7xEF6BghAkEA12OOqSzp2MLTNY7PqOaLDzy4aAMVNN3Ntv2jBN0jq7s1b5ilQ2PGkLwdtkicq/VZcRyUqVbZbMwz05II3nqx3wJBAMsVhRQ5sdFCRBzEbSAm2YEJaFh5u6QT3+zWHMFpPJRnaBAWz3RXKEnleJ+DS2Xz1Jm6ZrmLdZiwMx/8dK5rDZECQQC7GTdWi7ZC3dIcpwaKIGHRhZxmda8ZMkc9Wwwd8H7I8aFUZFPCu0xEc7SXoHHACit8zyfwBYpvMN8gPK3JnOkfAkEAsUSpk0wBMT38one7IZOHzCDgGkq4RbKrhdon45Pus0PIDDM9BrqFimtpbSN4DxhVfZK91DwtfAhhuAvv9cewYQJAPMhpAqv3PBGYmtRDUlWXJQv2JRJJkrvbbqgBed2OX5RRgj5V3SR6PBhLbcTZ+q+1tdPkMFzZo5U6MN5m/6oXvQ==",
"SOCIAL_AUTH_SAML_ORG_INFO": {
"en-US": {"name": "psa", "displayname": "PSA", "url": "https://github.com/omab/python-social-auth/"}
},
"SOCIAL_AUTH_SAML_TECHNICAL_CONTACT":
{"givenName": "Tech Gal", "emailAddress": "technical(a)example.com"},
"SOCIAL_AUTH_SAML_SUPPORT_CONTACT":
{"givenName": "Support Guy", "emailAddress": "support(a)example.com"},
"SOCIAL_AUTH_SAML_ENABLED_IDPS": {
"testshib": {
"entity_id": "https://idp.testshib.org/idp/shibboleth",
"url": "https://idp.testshib.org/idp/profile/SAML2/Redirect/SSO",
"x509cert": "MIIEDjCCAvagAwIBAgIBADANBgkqhkiG9w0BAQUFADBnMQswCQYDVQQGEwJVUzEVMBMGA1UECBMMUGVubnN5bHZhbmlhMRMwEQYDVQQHEwpQaXR0c2J1cmdoMREwDwYDVQQKEwhUZXN0U2hpYjEZMBcGA1UEAxMQaWRwLnRlc3RzaGliLm9yZzAeFw0wNjA4MzAyMTEyMjVaFw0xNjA4MjcyMTEyMjVaMGcxCzAJBgNVBAYTAlVTMRUwEwYDVQQIEwxQZW5uc3lsdmFuaWExEzARBgNVBAcTClBpdHRzYnVyZ2gxETAPBgNVBAoTCFRlc3RTaGliMRkwFwYDVQQDExBpZHAudGVzdHNoaWIub3JnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArYkCGuTmJp9eAOSGHwRJo1SNatB5ZOKqDM9ysg7CyVTDClcpu93gSP10nH4gkCZOlnESNgttg0r+MqL8tfJC6ybddEFB3YBo8PZajKSe3OQ01Ow3yT4I+Wdg1tsTpSge9gEz7SrC07EkYmHuPtd71CHiUaCWDv+xVfUQX0aTNPFmDixzUjoYzbGDrtAyCqA8f9CN2txIfJnpHE6q6CmKcoLADS4UrNPlhHSzd614kR/JYiks0K4kbRqCQF0Dv0P5Di+rEfefC6glV8ysC8dB5/9nb0yh/ojRuJGmgMWHgWk6h0ihjihqiu4jACovUZ7vVOCgSE5Ipn7OIwqd93zp2wIDAQABo4HEMIHBMB0GA1UdDgQWBBSsBQ869nh83KqZr5jArr4/7b+QazCBkQYDVR0jBIGJMIGGgBSsBQ869nh83KqZr5jArr4/7b+Qa6FrpGkwZzELMAkGA1UEBhMCVVMxFTATBgNVBAgTDFBlbm5zeWx2YW5pYTETMBEGA1UEBxMKUGl0dHNidXJnaDERMA8GA1UEChMIVGVzdFNoaWIxGTAXBgNVBAMTEGlkcC50ZXN0c2hpYi5vcmeCAQAwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAjR29PhrCbk8qLN5MFfSVk98t3CT9jHZoYxd8QMRLI4j7iYQxXiGJTT1FXs1nd4Rha9un+LqTfeMMYqISdDDI6tv8iNpkOAvZZUosVkUo93pv1T0RPz35hcHHYq2yee59HJOco2bFlcsH8JBXRSRrJ3Q7Eut+z9uo80JdGNJ4/SJy5UorZ8KazGj16lfJhOBXldgrhppQBb0Nq6HKHguqmwRfJ+WkxemZXzhediAjGeka8nz8JjwxpUjAiSWYKLtJhGEaTqCYxCCX2Dw+dOTqUzHOZ7WKv4JXPK5G/Uhr8K/qhmFT2nIQi538n6rVYLeWj8Bbnl+ev0peYzxFyF5sQA=="
},
"other": {
"entity_id": "https://unused.saml.example.com",
"url": "https://unused.saml.example.com/SAML2/Redirect/SSO"
}
}
}
1
0
Hello community,
here is the log from the commit of package python-pkgconfig for openSUSE:Factory checked in at 2019-05-06 13:21:29
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pkgconfig (Old)
and /work/SRC/openSUSE:Factory/.python-pkgconfig.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-pkgconfig"
Mon May 6 13:21:29 2019 rev:6 rq:693127 version:1.3.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pkgconfig/python-pkgconfig.changes 2018-12-24 11:41:17.361457592 +0100
+++ /work/SRC/openSUSE:Factory/.python-pkgconfig.new.5148/python-pkgconfig.changes 2019-05-06 13:21:31.288554152 +0200
@@ -1,0 +2,7 @@
+Thu Apr 11 02:38:27 UTC 2019 - John Vandenberg <jayvdb(a)gmail.com>
+
+- Remove unnecessary bcond tests
+- Add missing test dependency pkgconfig
+- Fix the test suite which was running 0 tests
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-pkgconfig.spec ++++++
--- /var/tmp/diff_new_pack.X8Wbzz/_old 2019-05-06 13:21:31.808555323 +0200
+++ /var/tmp/diff_new_pack.X8Wbzz/_new 2019-05-06 13:21:31.808555323 +0200
@@ -17,7 +17,6 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
-%bcond_without tests
Name: python-pkgconfig
Version: 1.3.1
Release: 0
@@ -26,15 +25,13 @@
Group: Development/Languages/Python
URL: http://github.com/matze/pkgconfig
Source: https://files.pythonhosted.org/packages/source/p/pkgconfig/pkgconfig-%{vers…
+BuildRequires: %{python_module nose}
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
+BuildRequires: pkgconfig
BuildRequires: python-rpm-macros
Requires: pkgconfig
BuildArch: noarch
-%if %{with tests}
-# Test requirements
-BuildRequires: %{python_module nose}
-%endif
%python_subpackages
%description
@@ -51,10 +48,8 @@
%python_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
-%if %{with tests}
%check
-%python_exec setup.py test
-%endif
+%python_exec -m nose test.py
%files %{python_files}
%license LICENSE
1
0
Hello community,
here is the log from the commit of package python-bpython for openSUSE:Factory checked in at 2019-05-06 13:21:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-bpython (Old)
and /work/SRC/openSUSE:Factory/.python-bpython.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-bpython"
Mon May 6 13:21:26 2019 rev:5 rq:693126 version:0.18
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-bpython/python-bpython.changes 2018-12-13 19:40:51.297280042 +0100
+++ /work/SRC/openSUSE:Factory/.python-bpython.new.5148/python-bpython.changes 2019-05-06 13:21:27.572545782 +0200
@@ -1,0 +2,21 @@
+Wed Apr 10 15:39:43 UTC 2019 - Arun Persaud <arun(a)gmx.de>
+
+- specfile:
+ * be more specific in %files section
+ * changes appdata to appinfo directory for bpython.appdata.xml
+ * for appdata and desktop add org.bpython-interpreter. to file name
+ * added files for bpdb
+
+- update to version 0.18:
+ * New features:
+ + #713 expose globals in bpdb debugging. Thanks to toejough.
+ * Fixes:
+ + Fix file locking on Windows.
+ + Exit gracefully if config file fails to be loaded due to
+ encoding errors.
+ + #744: Fix newline handling. Thanks to Attila Szöllősi.
+ + #731: Fix exit code. Thanks to benkrig.
+ + #767: Fix crash when matching certain lines in history.
+ * Support for Python 3.3 has been dropped.
+
+-------------------------------------------------------------------
Old:
----
bpython-0.17.1.tar.gz
New:
----
bpython-0.18.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-bpython.spec ++++++
--- /var/tmp/diff_new_pack.GnYaZh/_old 2019-05-06 13:21:28.300547422 +0200
+++ /var/tmp/diff_new_pack.GnYaZh/_new 2019-05-06 13:21:28.300547422 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-bpython
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -19,7 +19,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%bcond_with test
Name: python-bpython
-Version: 0.17.1
+Version: 0.18
Release: 0
Summary: Fancy Interface to the Python Interpreter
License: MIT
@@ -115,23 +115,23 @@
%{python_expand %fdupes %{buildroot}%{$python_sitelib}
-cp %{buildroot}%{_datadir}/appdata/bpython.appdata.xml %{buildroot}%{_datadir}/appdata/bpython-%{$python_bin_suffix}.appdata.xml
-cp %{buildroot}%{_datadir}/applications/bpython.desktop %{buildroot}%{_datadir}/applications/bpython-%{$python_bin_suffix}.desktop
+cp %{buildroot}%{_datadir}/appinfo/org.bpython-interpreter.bpython.appdata.xml %{buildroot}%{_datadir}/appinfo/org.bpython-interpreter.bpython-%{$python_bin_suffix}.appdata.xml
+cp %{buildroot}%{_datadir}/applications/org.bpython-interpreter.bpython.desktop %{buildroot}%{_datadir}/applications/org.bpython-interpreter.bpython-%{$python_bin_suffix}.desktop
-sed -i 's|bpython.desktop|bpython-%{$python_bin_suffix}.desktop|' %{buildroot}%{_datadir}/appdata/bpython-%{$python_bin_suffix}.appdata.xml
-sed -i 's|bpython interpreter|bpython %{$python_prefix} interpreter|' %{buildroot}%{_datadir}/appdata/bpython-%{$python_bin_suffix}.appdata.xml
-sed -i 's|Python interpreter|A %{$python_prefix} interpreter|' %{buildroot}%{_datadir}/appdata/bpython-%{$python_bin_suffix}.appdata.xml
+sed -i 's|bpython.desktop|bpython-%{$python_bin_suffix}.desktop|' %{buildroot}%{_datadir}/appinfo/org.bpython-interpreter.bpython-%{$python_bin_suffix}.appdata.xml
+sed -i 's|bpython interpreter|bpython %{$python_prefix} interpreter|' %{buildroot}%{_datadir}/appinfo/org.bpython-interpreter.bpython-%{$python_bin_suffix}.appdata.xml
+sed -i 's|Python interpreter|A %{$python_prefix} interpreter|' %{buildroot}%{_datadir}/appinfo/org.bpython-interpreter.bpython-%{$python_bin_suffix}.appdata.xml
desktop-file-edit --set-name=bpython-%{$python_bin_suffix} \
--copy-name-to-generic-name \
--remove-key=Categories \
--add-category=System --add-category=TerminalEmulator \
--set-comment="A fancy interface to the %{$python_prefix} interpreter" \
--set-key=Exec --set-value="%{_bindir}/bpython-%{$python_bin_suffix}" \
- %{buildroot}%{_datadir}/applications/bpython-%{$python_bin_suffix}.desktop
+ %{buildroot}%{_datadir}/applications/org.bpython-interpreter.bpython-%{$python_bin_suffix}.desktop
}
-rm %{buildroot}%{_datadir}/appdata/bpython.appdata.xml
-rm %{buildroot}%{_datadir}/applications/bpython.desktop
+rm %{buildroot}%{_datadir}/appinfo/org.bpython-interpreter.bpython.appdata.xml
+rm %{buildroot}%{_datadir}/applications/org.bpython-interpreter.bpython.desktop
%if %{with test}
%check
@@ -147,16 +147,21 @@
%files %{python_files}
%license LICENSE
%doc AUTHORS CHANGELOG README.rst
-%{python_sitelib}/*
+%dir %{python_sitelib}/bpython
+%{python_sitelib}/bpython/*
+%dir %{python_sitelib}/bpdb
+%{python_sitelib}/bpdb/*
+%dir %{python_sitelib}/bpython-%{version}-py*.egg-info
+%{python_sitelib}/bpython-%{version}-py*.egg-info/*
%python_alternative %{_bindir}/bpython
%python_alternative %{_bindir}/bpython-curses
%python_alternative %{_bindir}/bpython-urwid
%python_alternative %{_bindir}/bpdb
%python_alternative %{_mandir}/man1/bpython.1%{ext_man}
%python_alternative %{_mandir}/man5/bpython-config.5%{ext_man}
-%dir %{_datadir}/appdata/
-%{_datadir}/appdata/bpython-%{python_bin_suffix}.appdata.xml
-%{_datadir}/applications/bpython-%{python_bin_suffix}.desktop
+%dir %{_datadir}/appinfo/
+%{_datadir}/appinfo/org.bpython-interpreter.bpython-%{python_bin_suffix}.appdata.xml
+%{_datadir}/applications/org.bpython-interpreter.bpython-%{python_bin_suffix}.desktop
%files -n %{name}-common
%license LICENSE
++++++ bpython-0.17.1.tar.gz -> bpython-0.18.tar.gz ++++++
++++ 2194 lines of diff (skipped)
1
0
Hello community,
here is the log from the commit of package python-autobahn for openSUSE:Factory checked in at 2019-05-06 13:21:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-autobahn (Old)
and /work/SRC/openSUSE:Factory/.python-autobahn.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-autobahn"
Mon May 6 13:21:23 2019 rev:5 rq:692232 version:19.3.3
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-autobahn/python-autobahn.changes 2019-04-05 12:07:15.294587057 +0200
+++ /work/SRC/openSUSE:Factory/.python-autobahn.new.5148/python-autobahn.changes 2019-05-06 13:21:25.052540105 +0200
@@ -1,0 +2,12 @@
+Mon Apr 8 08:41:35 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Rename reproducible.patch to respect-cflags.patch and really make
+ sure we respect all the cflags
+
+-------------------------------------------------------------------
+Mon Apr 8 07:32:05 UTC 2019 - Bernhard Wiedemann <bwiedemann(a)suse.com>
+
+- Add reproducible.patch to make package build reproducible (boo#1100677)
+ and to not use SSE4.1 instructions
+
+-------------------------------------------------------------------
New:
----
respect-cflags.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-autobahn.spec ++++++
--- /var/tmp/diff_new_pack.qS9Lw3/_old 2019-05-06 13:21:26.344543015 +0200
+++ /var/tmp/diff_new_pack.qS9Lw3/_new 2019-05-06 13:21:26.376543087 +0200
@@ -25,6 +25,7 @@
Group: Development/Languages/Python
URL: https://github.com/crossbario/autobahn-python
Source: https://files.pythonhosted.org/packages/source/a/autobahn/autobahn-%{versio…
+Patch0: respect-cflags.patch
BuildRequires: %{python_module PyNaCl >= 1.0.1}
BuildRequires: %{python_module PyQRCode >= 1.1}
BuildRequires: %{python_module Twisted >= 12.1.0}
@@ -87,9 +88,11 @@
%prep
%setup -q -n autobahn-%{version}
+%patch0 -p1
%build
export AUTOBAHN_USE_NVX=true
+export CFLAGS="%{optflags}"
%python_build
%install
@@ -100,6 +103,7 @@
%check
export USE_ASYNCIO=true
export AUTOBAHN_USE_NVX=true
+export PYTHONDONTWRITEBYTECODE=1
%pytest_arch %{buildroot}%{$python_sitearch}/autobahn/
%files %{python_files}
++++++ respect-cflags.patch ++++++
Author: Bernhard M. Wiedemann <bwiedemann suse de>
Date: 2019-04-08
This bug was found while working on reproducible builds for openSUSE.
Without this patch, binaries would use SSE4.1 instructions if the build
machine's CPU had it available.
This could cause 'invalid instruction' faults on older user machines.
https://bugzilla.opensuse.org/show_bug.cgi?id=1100677
Index: autobahn-19.3.3/autobahn/nvx/_utf8validator.py
===================================================================
--- autobahn-19.3.3.orig/autobahn/nvx/_utf8validator.py
+++ autobahn-19.3.3/autobahn/nvx/_utf8validator.py
@@ -52,7 +52,7 @@ with open(os.path.join(os.path.dirname(_
"_nvx_utf8validator",
c_source,
libraries=[],
- extra_compile_args=['-std=c99', '-Wall', '-Wno-strict-prototypes', '-O3', '-march=native']
+ extra_compile_args=['-std=c99', '-Wall', '-Wno-strict-prototypes']
)
1
0
Hello community,
here is the log from the commit of package python-pygit2 for openSUSE:Factory checked in at 2019-05-06 13:21:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-pygit2 (Old)
and /work/SRC/openSUSE:Factory/.python-pygit2.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-pygit2"
Mon May 6 13:21:18 2019 rev:19 rq:692230 version:0.28.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-pygit2/python-pygit2.changes 2019-03-28 22:48:23.371057971 +0100
+++ /work/SRC/openSUSE:Factory/.python-pygit2.new.5148/python-pygit2.changes 2019-05-06 13:21:21.924533061 +0200
@@ -1,0 +2,6 @@
+Mon Apr 8 08:15:54 UTC 2019 - Tomáš Chvátal <tchvatal(a)suse.com>
+
+- Add patch to fix the pycparser issues as per bellow:
+ * pycparser.patch
+
+-------------------------------------------------------------------
New:
----
pycparser.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-pygit2.spec ++++++
--- /var/tmp/diff_new_pack.hdMs9Q/_old 2019-05-06 13:21:22.868535186 +0200
+++ /var/tmp/diff_new_pack.hdMs9Q/_new 2019-05-06 13:21:22.868535186 +0200
@@ -26,6 +26,7 @@
Group: Development/Languages/Python
URL: https://github.com/libgit2/pygit2
Source: https://files.pythonhosted.org/packages/source/p/pygit2/pygit2-%{version}.t…
+Patch0: pycparser.patch
BuildRequires: %{python_module cffi}
BuildRequires: %{python_module devel}
BuildRequires: %{python_module pycparser}
@@ -48,8 +49,7 @@
%prep
%setup -q -n pygit2-%{version}
-# do not hardcode version
-sed -i -e 's:pycparser<2.18:pycparser:g' setup.py
+%patch0 -p1
# do not add options to pytest
rm pytest.ini
@@ -62,9 +62,7 @@
%python_expand %fdupes %{buildroot}%{$python_sitearch}
%check
-# disable tests for now until https://github.com/libgit2/pygit2/issues/846
-# gets fixed; upstream https://github.com/eliben/pycparser/issues/305
-#%%pytest_arch
+%pytest_arch
%files %{python_files}
%license COPYING
++++++ pycparser.patch ++++++
>From 01b69f31b613a99f2a5d47c96fde12b2d0c497d5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=2E=20David=20Ib=C3=A1=C3=B1ez?= <jdavid.ibp(a)gmail.com>
Date: Sat, 6 Apr 2019 13:14:51 +0200
Subject: [PATCH] Work with pycparser 2.18 and 2.19
Fixes #846
---
pygit2/__init__.py | 5 ++---
pygit2/remote.py | 5 ++---
setup.py | 2 +-
3 files changed, 5 insertions(+), 7 deletions(-)
Index: pygit2-0.28.0/pygit2/__init__.py
===================================================================
--- pygit2-0.28.0.orig/pygit2/__init__.py
+++ pygit2-0.28.0/pygit2/__init__.py
@@ -153,8 +153,7 @@ def init_repository(path, bare=False,
# Ok
return Repository(to_str(path))
-(a)ffi.callback('int (*git_repository_create_cb)(git_repository **out,'
- 'const char *path, int bare, void *payload)')
+(a)ffi.callback('int (*cb)(git_repository **out, const char *path, int bare, void *payload)')
def _repository_create_cb(repo_out, path, bare, data):
d = ffi.from_handle(data)
try:
@@ -168,7 +167,7 @@ def _repository_create_cb(repo_out, path
return 0
-(a)ffi.callback('int (*git_remote_create_cb)(git_remote **out, git_repository *repo,'
+(a)ffi.callback('int (*cb)(git_remote **out, git_repository *repo,'
'const char *name, const char *url, void *payload)')
def _remote_create_cb(remote_out, repo, name, url, data):
d = ffi.from_handle(data)
Index: pygit2-0.28.0/pygit2/remote.py
===================================================================
--- pygit2-0.28.0.orig/pygit2/remote.py
+++ pygit2-0.28.0/pygit2/remote.py
@@ -291,7 +291,7 @@ class RemoteCallbacks(object):
return 0
- @ffi.callback('int (*credentials)(git_cred **cred, const char *url,'
+ @ffi.callback('int (*cb)(git_cred **cred, const char *url,'
'const char *username_from_url, unsigned int allowed_types,'
'void *data)')
def _credentials_cb(cred_out, url, username, allowed, data):
@@ -312,8 +312,7 @@ class RemoteCallbacks(object):
return 0
- @ffi.callback('int (*git_transport_certificate_check_cb)'
- '(git_cert *cert, int valid, const char *host, void *payload)')
+ @ffi.callback('int (*cb)(git_cert *cert, int valid, const char *host, void *payload)')
def _certificate_cb(cert_i, valid, host, data):
self = ffi.from_handle(data)
Index: pygit2-0.28.0/setup.py
===================================================================
--- pygit2-0.28.0.orig/setup.py
+++ pygit2-0.28.0/setup.py
@@ -154,7 +154,7 @@ setup(name='pygit2',
packages=['pygit2'],
package_data={'pygit2': ['decl.h']},
setup_requires=['cffi'],
- install_requires=['cffi', 'six', 'pycparser<2.18'],
+ install_requires=['cffi', 'six', 'pycparser'],
zip_safe=False,
cmdclass=cmdclass,
**extra_args)
1
0
Hello community,
here is the log from the commit of package python-python-barcode for openSUSE:Factory checked in at 2019-05-06 13:21:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-python-barcode (Old)
and /work/SRC/openSUSE:Factory/.python-python-barcode.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-python-barcode"
Mon May 6 13:21:15 2019 rev:2 rq:692224 version:0.9.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-python-barcode/python-python-barcode.changes 2019-04-05 12:05:34.566583951 +0200
+++ /work/SRC/openSUSE:Factory/.python-python-barcode.new.5148/python-python-barcode.changes 2019-05-06 13:21:16.808521536 +0200
@@ -1,0 +2,5 @@
+Sat Apr 6 22:21:01 UTC 2019 - Jan Engelhardt <jengelh(a)inai.de>
+
+- Unbundle DejaVu font and reuse the one from the system.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-python-barcode.spec ++++++
--- /var/tmp/diff_new_pack.QO4gmn/_old 2019-05-06 13:21:18.452525239 +0200
+++ /var/tmp/diff_new_pack.QO4gmn/_new 2019-05-06 13:21:18.480525302 +0200
@@ -32,8 +32,10 @@
BuildRequires: %{python_module pathlib}
BuildRequires: %{python_module setuptools_scm}
BuildRequires: %{python_module setuptools}
+BuildRequires: dejavu-fonts
BuildRequires: fdupes
BuildRequires: python-rpm-macros
+Requires: dejavu-fonts
Provides: python-pyBarcode
Obsoletes: python-pyBarcode
BuildArch: noarch
@@ -44,6 +46,8 @@
%prep
%setup -q -n %{base_name}-%{version}
+# Fix rpmlint warning about too many +x perms when these files get installed later.
+find . -type f -exec chmod a-x {} +
%build
%python_build
@@ -51,6 +55,9 @@
%install
%python_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
+find "%{buildroot}" -type f -name "*.ttf" | while read i; do
+ ln -fs "%{_datadir}/fonts/truetype/${i##*/}" "$i"
+done
%check
%python_exec test.py
1
0
Hello community,
here is the log from the commit of package python-tablib for openSUSE:Factory checked in at 2019-05-06 13:21:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-tablib (Old)
and /work/SRC/openSUSE:Factory/.python-tablib.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-tablib"
Mon May 6 13:21:11 2019 rev:3 rq:692222 version:0.13.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-tablib/python-tablib.changes 2019-03-26 22:34:55.873667215 +0100
+++ /work/SRC/openSUSE:Factory/.python-tablib.new.5148/python-tablib.changes 2019-05-06 13:21:13.512514112 +0200
@@ -1,0 +2,8 @@
+Sat Apr 6 15:07:34 UTC 2019 - John Vandenberg <jayvdb(a)gmail.com>
+
+- Remove egg-info requires.txt entry for backports.csv as it isnt
+ a dependency on Python 3.
+- Remove build and runtime dependency on unicodecsv, which was
+ replaced with backports.csv in the last release.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-tablib.spec ++++++
--- /var/tmp/diff_new_pack.cm14g1/_old 2019-05-06 13:21:14.192515644 +0200
+++ /var/tmp/diff_new_pack.cm14g1/_new 2019-05-06 13:21:14.192515644 +0200
@@ -34,7 +34,6 @@
BuildRequires: %{python_module openpyxl >= 2.4.8}
BuildRequires: %{python_module pandas >= 0.20.3}
BuildRequires: %{python_module setuptools}
-BuildRequires: %{python_module unicodecsv >= 0.14.1}
BuildRequires: %{python_module xlrd >= 1.1.0}
BuildRequires: %{python_module xlwt >= 1.3.0}
BuildRequires: %{python_module xml}
@@ -44,7 +43,6 @@
Requires: python-PyYAML >= 3.12
Requires: python-odfpy >= 1.3.5
Requires: python-openpyxl >= 2.4.8
-Requires: python-unicodecsv >= 0.14.1
Requires: python-xlrd >= 1.1.0
Requires: python-xlwt >= 1.3.0
Requires: python-xml
@@ -77,6 +75,9 @@
%install
%python_install
+# Remove dependency on backports.csv from egg-info, as it isnt
+# installed on Python 3, breaking pkg_resources resolver.
+sed -i '/backports.csv/d' %{buildroot}%{python3_sitelib}/tablib*egg-info/requires.txt
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
1
0
Hello community,
here is the log from the commit of package polkit-default-privs for openSUSE:Factory checked in at 2019-05-06 13:19:56
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/polkit-default-privs (Old)
and /work/SRC/openSUSE:Factory/.polkit-default-privs.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "polkit-default-privs"
Mon May 6 13:19:56 2019 rev:163 rq:700385 version:13.2+20190503.00651e7
Changes:
--------
--- /work/SRC/openSUSE:Factory/polkit-default-privs/polkit-default-privs.changes 2019-04-17 10:04:33.946514723 +0200
+++ /work/SRC/openSUSE:Factory/.polkit-default-privs.new.5148/polkit-default-privs.changes 2019-05-06 13:19:58.864346768 +0200
@@ -1,0 +2,19 @@
+Fri May 03 12:55:41 UTC 2019 - opensuse-packaging(a)opensuse.org
+
+- Update to version 13.2+20190503.00651e7:
+ * tuned: add new plugin doc actions (bsc#1131858)
+
+-------------------------------------------------------------------
+Thu May 02 13:35:27 UTC 2019 - opensuse-packaging(a)opensuse.org
+
+- Update to version 13.2+20190502.37ad64c:
+ * fwupd: add incrementally added polkit actions (bsc#1133082)
+
+-------------------------------------------------------------------
+Tue Apr 30 10:18:46 UTC 2019 - opensuse-packaging(a)opensuse.org
+
+- Update to version 13.2+20190430.a4836d6:
+ * backintime: add renamed gui pkexec action (bsc#1133680)
+ * backintime: add restrictive config, too
+
+-------------------------------------------------------------------
Old:
----
polkit-default-privs-13.2+20190411.5775d58.tar.xz
New:
----
polkit-default-privs-13.2+20190503.00651e7.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ polkit-default-privs.spec ++++++
--- /var/tmp/diff_new_pack.JmOKBD/_old 2019-05-06 13:19:59.632348488 +0200
+++ /var/tmp/diff_new_pack.JmOKBD/_new 2019-05-06 13:19:59.636348497 +0200
@@ -23,7 +23,7 @@
%endif
Name: polkit-default-privs
-Version: 13.2+20190411.5775d58
+Version: 13.2+20190503.00651e7
Release: 0
Summary: SUSE PolicyKit default permissions
License: GPL-2.0-or-later
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.JmOKBD/_old 2019-05-06 13:19:59.668348568 +0200
+++ /var/tmp/diff_new_pack.JmOKBD/_new 2019-05-06 13:19:59.668348568 +0200
@@ -1,4 +1,4 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/openSUSE/polkit-default-privs.git</param>
- <param name="changesrevision">5775d58bc839ed8d147808be3383a1377e5382e8</param></service></servicedata>
\ No newline at end of file
+ <param name="changesrevision">00651e7f17135501dcca9ee266f8127fe97f89ff</param></service></servicedata>
\ No newline at end of file
++++++ polkit-default-privs-13.2+20190411.5775d58.tar.xz -> polkit-default-privs-13.2+20190503.00651e7.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/polkit-default-privs-13.2+20190411.5775d58/profiles/polkit-default-privs.easy new/polkit-default-privs-13.2+20190503.00651e7/profiles/polkit-default-privs.easy
--- old/polkit-default-privs-13.2+20190411.5775d58/profiles/polkit-default-privs.easy 2019-04-11 09:56:54.000000000 +0200
+++ new/polkit-default-privs-13.2+20190503.00651e7/profiles/polkit-default-privs.easy 2019-05-03 14:54:22.000000000 +0200
@@ -876,11 +876,17 @@
# tuned (bsc#1118117)
com.redhat.tuned.log_capture_finish auth_admin:auth_admin:yes
com.redhat.tuned.log_capture_start auth_admin:auth_admin:yes
+# tuned (bsc#1131858)
+com.redhat.tuned.get_all_plugins yes:yes:yes
+com.redhat.tuned.get_plugin_documentation yes:yes:yes
+com.redhat.tuned.get_plugin_hints yes:yes:yes
# backintime (bsc#1007723)
net.launchpad.backintime.qt4gui auth_admin:auth_admin:auth_admin
net.launchpad.backintime.UdevRuleSave auth_admin:auth_admin:auth_admin
net.launchpad.backintime.UdevRuleDelete auth_admin:auth_admin:auth_admin
+# backintime changed name in qt5 (bsc#1133680)
+net.launchpad.backintime.qtgui auth_admin:auth_admin:auth_admin
# fwupd (bsc#932807)
org.freedesktop.fwupd.update-internal auth_admin:no:auth_admin_keep
@@ -891,9 +897,12 @@
org.freedesktop.fwupd.verify-update auth_admin:no:auth_admin_keep
org.freedesktop.fwupd.update-internal-trusted auth_admin:no:yes
org.freedesktop.fwupd.update-hotplug-trusted auth_admin:no:yes
-
# fwupd (bsc#1083022)
org.freedesktop.fwupd.modify-remote auth_admin:no:auth_admin_keep
+# fwupd (bsc#1133082)
+org.freedesktop.fwupd.device-activate auth_admin:auth_admin:auth_admin_keep
+org.freedesktop.fwupd.self-sign auth_admin:auth_admin:auth_admin_keep
+org.freedesktop.fwupd.set-approved-firmware auth_admin:auth_admin:auth_admin_keep
# deja-dup (bsc#1058935)
org.gnome.DejaDup.duplicity no:no:auth_admin
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/polkit-default-privs-13.2+20190411.5775d58/profiles/polkit-default-privs.restrictive new/polkit-default-privs-13.2+20190503.00651e7/profiles/polkit-default-privs.restrictive
--- old/polkit-default-privs-13.2+20190411.5775d58/profiles/polkit-default-privs.restrictive 2019-04-11 09:56:54.000000000 +0200
+++ new/polkit-default-privs-13.2+20190503.00651e7/profiles/polkit-default-privs.restrictive 2019-05-03 14:54:22.000000000 +0200
@@ -814,6 +814,17 @@
# tuned (bsc#1118117)
com.redhat.tuned.log_capture_finish auth_admin:auth_admin:yes
com.redhat.tuned.log_capture_start auth_admin:auth_admin:yes
+# tuned (bsc#1131858)
+com.redhat.tuned.get_all_plugins auth_admin:auth_admin:yes
+com.redhat.tuned.get_plugin_documentation auth_admin:auth_admin:yes
+com.redhat.tuned.get_plugin_hints auth_admin:auth_admin:yes
+
+# backintime (bsc#1007723)
+net.launchpad.backintime.qt4gui auth_admin:auth_admin:auth_admin
+net.launchpad.backintime.UdevRuleSave auth_admin:auth_admin:auth_admin
+net.launchpad.backintime.UdevRuleDelete auth_admin:auth_admin:auth_admin
+# backintime changed name in qt5 (bsc#1133680)
+net.launchpad.backintime.qtgui auth_admin:auth_admin:auth_admin
# fwupd (bsc#932807)
org.freedesktop.fwupd.update-internal auth_admin:no:auth_admin_keep
@@ -824,9 +835,12 @@
org.freedesktop.fwupd.verify-update auth_admin:no:auth_admin_keep
org.freedesktop.fwupd.update-internal-trusted auth_admin:no:auth_admin_keep
org.freedesktop.fwupd.update-hotplug-trusted auth_admin:no:auth_admin_keep
-
# fwupd (bsc#1083022)
org.freedesktop.fwupd.modify-remote auth_admin:no:auth_admin_keep
+# fwupd (bsc#1133082)
+org.freedesktop.fwupd.device-activate auth_admin:no:auth_admin_keep
+org.freedesktop.fwupd.self-sign auth_admin:no:auth_admin_keep
+org.freedesktop.fwupd.set-approved-firmware auth_admin:no:auth_admin_keep
# deja-dup (bsc#1058935)
org.gnome.DejaDup.duplicity no:no:auth_admin
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/polkit-default-privs-13.2+20190411.5775d58/profiles/polkit-default-privs.standard new/polkit-default-privs-13.2+20190503.00651e7/profiles/polkit-default-privs.standard
--- old/polkit-default-privs-13.2+20190411.5775d58/profiles/polkit-default-privs.standard 2019-04-11 09:56:54.000000000 +0200
+++ new/polkit-default-privs-13.2+20190503.00651e7/profiles/polkit-default-privs.standard 2019-05-03 14:54:22.000000000 +0200
@@ -877,11 +877,17 @@
# tuned (bsc#1118117)
com.redhat.tuned.log_capture_finish auth_admin:auth_admin:yes
com.redhat.tuned.log_capture_start auth_admin:auth_admin:yes
+# tuned (bsc#1131858)
+com.redhat.tuned.get_all_plugins auth_admin:auth_self:yes
+com.redhat.tuned.get_plugin_documentation auth_admin:auth_self:yes
+com.redhat.tuned.get_plugin_hints auth_admin:auth_self:yes
# backintime (bsc#1007723)
net.launchpad.backintime.qt4gui auth_admin:auth_admin:auth_admin
net.launchpad.backintime.UdevRuleSave auth_admin:auth_admin:auth_admin
net.launchpad.backintime.UdevRuleDelete auth_admin:auth_admin:auth_admin
+# backintime changed name in qt5 (bsc#1133680)
+net.launchpad.backintime.qtgui auth_admin:auth_admin:auth_admin
# fwupd (bsc#932807)
org.freedesktop.fwupd.update-internal auth_admin:no:auth_admin_keep
@@ -892,9 +898,12 @@
org.freedesktop.fwupd.verify-update auth_admin:no:auth_admin_keep
org.freedesktop.fwupd.update-internal-trusted auth_admin:no:yes
org.freedesktop.fwupd.update-hotplug-trusted auth_admin:no:yes
-
# fwupd (bsc#1083022)
org.freedesktop.fwupd.modify-remote auth_admin:no:auth_admin_keep
+# fwupd (bsc#1133082)
+org.freedesktop.fwupd.device-activate auth_admin:no:auth_admin_keep
+org.freedesktop.fwupd.self-sign auth_admin:no:auth_admin_keep
+org.freedesktop.fwupd.set-approved-firmware auth_admin:no:auth_admin_keep
# deja-dup (bsc#1058935)
org.gnome.DejaDup.duplicity no:no:auth_admin
1
0
Hello community,
here is the log from the commit of package blog for openSUSE:Factory checked in at 2019-05-06 13:19:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/blog (Old)
and /work/SRC/openSUSE:Factory/.blog.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "blog"
Mon May 6 13:19:49 2019 rev:10 rq:700250 version:2.19
Changes:
--------
--- /work/SRC/openSUSE:Factory/blog/blog.changes 2018-08-06 11:52:33.313064973 +0200
+++ /work/SRC/openSUSE:Factory/.blog.new.5148/blog.changes 2019-05-06 13:19:51.208329390 +0200
@@ -1,0 +2,5 @@
+Sat Apr 20 12:09:49 UTC 2019 - Jan Engelhardt <jengelh(a)inai.de>
+
+- Implement shared library packaging guideline.
+
+-------------------------------------------------------------------
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ blog.spec ++++++
--- /var/tmp/diff_new_pack.h37vBf/_old 2019-05-06 13:19:51.744330611 +0200
+++ /var/tmp/diff_new_pack.h37vBf/_new 2019-05-06 13:19:51.744330611 +0200
@@ -1,7 +1,7 @@
#
# spec file for package blog
#
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 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
@@ -12,7 +12,7 @@
# 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/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
@@ -38,6 +38,13 @@
buffer is used to hold the information for writing it to an existing
logging file.
+%package -n libblogger2
+Summary: FIFO interface used by startproc
+Group: System/Libraries
+
+%description -n libblogger2
+The libaray for the FIFO interface used by the LSB startproc command.
+
%package plymouth
Summary: Replaces plymouth by blogd
Group: System/Base
@@ -58,7 +65,7 @@
%package devel
Summary: Provides library and header for boot logging
Group: Development/Libraries/C and C++
-Requires: blog = %{version}
+Requires: libblogger2 = %{version}
%description devel
The libaray and the header file for the FIFO interface used to build
@@ -76,24 +83,24 @@
BOOT_OLDLOGFILE=%{_localstatedir}/log/boot.old
%install
-make %{?_smp_mflags} install \
+%make_install \
MANPATH=%{_mandir} \
INSTBINFLAGS="-m 0744" \
LIBDIR=%{_libdir} \
INCDIR=%{_includedir} \
SYSDUNITS=%{_unitdir} \
BOOT_LOGFILE=%{_localstatedir}/log/boot.log \
- BOOT_OLDLOGFILE=%{_localstatedir}/log/boot.old \
- DESTDIR=%{buildroot}
+ BOOT_OLDLOGFILE=%{_localstatedir}/log/boot.old
%post
%{?regenerate_initrd_post}
test -x /bin/systemctl && /bin/systemctl daemon-reload >/dev/null 2>&1 || :
-test -x /sbin/ldconfig && /sbin/ldconfig || :
%postun
test -x /bin/systemctl && /bin/systemctl daemon-reload >/dev/null 2>&1 || :
-test -x /sbin/ldconfig && /sbin/ldconfig || :
+
+%post -n libblogger2 -p /sbin/ldconfig
+%postun -n libblogger2 -p /sbin/ldconfig
%posttrans
%{?regenerate_initrd_posttrans}
@@ -108,7 +115,6 @@
/sbin/isserial
/sbin/setconsole
/sbin/showconsole
-%{_libdir}/libblogger.so.*
%doc %{_mandir}/man8/blogctl.8.gz
%doc %{_mandir}/man8/blogd.8.gz
%doc %{_mandir}/man8/blogger.8.gz
@@ -116,6 +122,9 @@
%doc %{_mandir}/man8/setconsole.8.gz
%doc %{_mandir}/man8/showconsole.8.gz
+%files -n libblogger2
+%{_libdir}/libblogger.so.*
+
%files devel
%defattr(-,root,root)
%{_includedir}/libblogger.h
1
0
Hello community,
here is the log from the commit of package permissions for openSUSE:Factory checked in at 2019-05-06 13:19:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/permissions (Old)
and /work/SRC/openSUSE:Factory/.permissions.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "permissions"
Mon May 6 13:19:38 2019 rev:122 rq:700154 version:unknown
Changes:
--------
--- /work/SRC/openSUSE:Factory/permissions/permissions.changes 2019-02-19 13:54:52.508726137 +0100
+++ /work/SRC/openSUSE:Factory/.permissions.new.5148/permissions.changes 2019-05-06 13:19:43.108310935 +0200
@@ -1,0 +2,30 @@
+Thu May 2 09:46:05 UTC 2019 - jsegitz(a)suse.com
+
+- Fixed versions. Removed set_version from _service file, doesn't
+ work with the new packaging. Call fix_version.sh to set current
+ date as version instead
+- Fixed requires for -config and -zypp-plugin
+
+-------------------------------------------------------------------
+Tue Apr 30 08:57:37 UTC 2019 - opensuse-packaging(a)opensuse.org
+
+- Update to version 20190429:
+ * removed entry for /var/cache/man. Conflicts with packaging and man:man is
+ the better setting anyway (bsc#1133678)
+ * fixed error in description of permissions.paranoid. Make it clear that this
+ is not a usable profile, but intended as a base for own developments
+
+-------------------------------------------------------------------
+Sat Apr 13 17:12:12 UTC 2019 - Jan Engelhardt <jengelh(a)inai.de>
+
+- Fix RPM group, fix hard requirement on documentation.
+ Update description typography.
+
+-------------------------------------------------------------------
+Thu Apr 11 11:18:36 UTC 2019 - jsegitz(a)suse.com
+
+- Created new subpackages -config, -doc and standalone package chkstat
+ where we can start a better versioning scheme and require it from the
+ original package
+
+-------------------------------------------------------------------
Old:
----
permissions-20190212.tar.xz
New:
----
fix_version.sh
permissions-20190429.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ permissions.spec ++++++
--- /var/tmp/diff_new_pack.W95Pli/_old 2019-05-06 13:19:43.568311983 +0200
+++ /var/tmp/diff_new_pack.W95Pli/_new 2019-05-06 13:19:43.572311992 +0200
@@ -16,8 +16,10 @@
#
+%define VERSION 20190429
+
Name: permissions
-Version: 20190212
+Version: %{VERSION}
Release: 0
Summary: SUSE Linux Default Permissions
# Maintained in github by the security team.
@@ -25,17 +27,16 @@
Group: Productivity/Security
Url: http://github.com/openSUSE/permissions
Source: permissions-%{version}.tar.xz
+Source1: fix_version.sh
BuildRequires: libcap-devel
#!BuildIgnore: group(trusted)
Requires(post): %fillup_prereq
Requires(pre): group(trusted)
+Requires: chkstat
+Requires: permissions-config
+Recommends: permissions-doc
Provides: aaa_base:%{_sysconfdir}/permissions
-%description
-Permission settings of files and directories depending on the local
-security settings. The local security setting (easy, secure, or paranoid)
-can be configured in /etc/sysconfig/security.
-
%prep
%setup -q
@@ -45,25 +46,66 @@
%install
%make_install fillupdir=%{_fillupdir}
-%post
-%{fillup_only -n security}
-# apply all potentially changed permissions
-%{_bindir}/chkstat --system
+%description
+Permission settings of files and directories depending on the local
+security settings. The local security setting ("easy", "secure", or "paranoid")
+can be configured in /etc/sysconfig/security.
+
+This package does not contain files, it just requires the necessary packages.
%files
+
+%package doc
+Summary: SUSE Linux Default Permissions documentation
+Group: Documentation/Man
+Version: %{suse_version}_%{VERSION}
+Release: 0
+
+%description doc
+Documentation for the permission files /etc/permissions*.
+
+%files doc
+%{_mandir}/man5/permissions.5%{ext_man}
+
+%package config
+Summary: SUSE Linux Default Permissions config files
+Group: Productivity/Security
+Version: %{suse_version}_%{VERSION}
+Release: 0
+Requires(post): chkstat
+
+%description config
+The actual permissions configuration files, /etc/permission.*.
+
+%files config
%config %{_sysconfdir}/permissions
%config %{_sysconfdir}/permissions.easy
%config %{_sysconfdir}/permissions.secure
%config %{_sysconfdir}/permissions.paranoid
%config(noreplace) %{_sysconfdir}/permissions.local
+%{_fillupdir}/sysconfig.security
+
+%post config
+%{fillup_only -n security}
+# apply all potentially changed permissions
+%{_bindir}/chkstat --system
+
+%package -n chkstat
+Summary: SUSE Linux Default Permissions tool
+Group: Productivity/Security
+Version: %{suse_version}_%{VERSION}
+Release: 0
+
+%description -n chkstat
+Tool to check and set file permissions.
+
+%files -n chkstat
%{_bindir}/chkstat
-%{_mandir}/man5/permissions.5%{ext_man}
%{_mandir}/man8/chkstat.8%{ext_man}
-%{_fillupdir}/sysconfig.security
%package -n permissions-zypp-plugin
BuildArch: noarch
-Requires: permissions = %version
+Requires: permissions = %{VERSION}
Requires: python3-zypp-plugin
Requires: libzypp(plugin:commit) = 1
Summary: A zypper commit plugin for calling chkstat
++++++ _service ++++++
--- /var/tmp/diff_new_pack.W95Pli/_old 2019-05-06 13:19:43.592312037 +0200
+++ /var/tmp/diff_new_pack.W95Pli/_new 2019-05-06 13:19:43.592312037 +0200
@@ -9,5 +9,4 @@
<param name="file">*.tar</param>
<param name="compression">xz</param>
</service>
- <service name="set_version" mode="disabled"/>
</services>
++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.W95Pli/_old 2019-05-06 13:19:43.604312065 +0200
+++ /var/tmp/diff_new_pack.W95Pli/_new 2019-05-06 13:19:43.604312065 +0200
@@ -1,4 +1,4 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/openSUSE/permissions.git</param>
- <param name="changesrevision">b3af647ecf37350b62e774e798e2ce4b7f0bff60</param></service></servicedata>
\ No newline at end of file
+ <param name="changesrevision">938c49d3c1b0820d2a301a8018709efed9a6ce61</param></service></servicedata>
\ No newline at end of file
++++++ fix_version.sh ++++++
#!/bin/sh
version=`date '+%Y%m%d'`
echo "setting version to ${version}"
sed -E -i -e "s/^%define VERSION [0-9]+/%define VERSION ${version}/" permissions.spec
++++++ permissions-20190212.tar.xz -> permissions-20190429.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/permissions-20190212/permissions new/permissions-20190429/permissions
--- old/permissions-20190212/permissions 2019-02-12 15:17:25.000000000 +0100
+++ new/permissions-20190429/permissions 2019-04-29 17:10:17.000000000 +0200
@@ -67,7 +67,6 @@
/var/adm/ root:root 755
/var/adm/backup/ root:root 700
/var/cache/ root:root 755
-/var/cache/man/ man:root 755
/var/run/nscd/socket root:root 666
/run/nscd/socket root:root 666
/var/run/sudo/ root:root 700
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/permissions-20190212/permissions.paranoid new/permissions-20190429/permissions.paranoid
--- old/permissions-20190212/permissions.paranoid 2019-02-12 15:17:25.000000000 +0100
+++ new/permissions-20190429/permissions.paranoid 2019-04-29 17:10:17.000000000 +0200
@@ -9,9 +9,10 @@
#
# /etc/permissions.paranoid is NOT designed to be used in a single-user as
# well as a multi-user installation, be it networked or not.
+#
# Derived from /etc/permissions.secure, it has _all_ sgid and suid bits
-# cleared - therefore, the system might be useable for non-privileged users
-# except for simple tasks like changing passwords and such. In addition,
+# cleared - therefore, the system is probably not useable for non-privileged
+# users except for simple tasks like changing passwords and such. In addition,
# some of the configuration files are not readable for world any more.
#
# Feel free to use this file as a basis of a system configuration that meets
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/permissions-20190212/permissions.secure new/permissions-20190429/permissions.secure
--- old/permissions-20190212/permissions.secure 2019-02-12 15:17:25.000000000 +0100
+++ new/permissions-20190429/permissions.secure 2019-04-29 17:10:17.000000000 +0200
@@ -27,7 +27,7 @@
# file is of no use since the data used can be obtained from the /proc file
# system or interface configuration as well. Also, system programs such as
# /sbin/ifconfig or /sbin/route are not changed because nosey users can
-# bring their own. "Security by obscurity" will add any significant
+# bring their own. "Security by obscurity" will not add any significant
# security-related advantage to the system. Keep in mind that curiosity
# is a major motivation for your users to try to see behind the curtain.
#
@@ -81,7 +81,7 @@
# suid system programs that need the suid bit to work:
#
/bin/su root:root 4755
-# disable at and cron for users that do not belnong to the group "trusted"
+# disable at and cron for users that do not belong to the group "trusted"
/usr/bin/at root:trusted 4750
/usr/bin/crontab root:trusted 4750
/usr/bin/gpasswd root:shadow 4755
1
0