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
October 2016
- 1 participants
- 1583 discussions
Hello community,
here is the log from the commit of package evolution-data-server for openSUSE:Factory checked in at 2016-10-01 23:44:11
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/evolution-data-server (Old)
and /work/SRC/openSUSE:Factory/.evolution-data-server.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "evolution-data-server"
Changes:
--------
--- /work/SRC/openSUSE:Factory/evolution-data-server/evolution-data-server.changes 2016-09-21 18:33:57.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.evolution-data-server.new/evolution-data-server.changes 2016-10-01 23:44:12.000000000 +0200
@@ -1,0 +2,10 @@
+Sat Sep 24 23:21:51 UTC 2016 - zaitor(a)opensuse.org
+
+- Add eds-Internal_Google_OAuth2_authentication.patch: Internal
+ Google OAuth2 authentication fails with expired token
+ (bgo#771547).
+- Conditionally apply translations-update-upstream BuildRequires
+ and macro for non-openSUSE only.
+- Stop passing V=1 to make, we do debugging locally.
+
+-------------------------------------------------------------------
New:
----
eds-Internal_Google_OAuth2_authentication.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ evolution-data-server.spec ++++++
--- /var/tmp/diff_new_pack.npD6TG/_old 2016-10-01 23:44:13.000000000 +0200
+++ /var/tmp/diff_new_pack.npD6TG/_new 2016-10-01 23:44:13.000000000 +0200
@@ -41,6 +41,8 @@
Url: http://www.gnome.org
Source0: http://download.gnome.org/sources/evolution-data-server/3.22/%{name}-%{vers…
Source99: baselibs.conf
+# PATCH-FIX-UPSTREAM eds-Internal_Google_OAuth2_authentication.patch bgo#771547 zaitor(a)opensuse.org -- Internal Google OAuth2 authentication fails with expired token
+Patch0: eds-Internal_Google_OAuth2_authentication.patch
BuildRequires: db-devel
%if %USE_EVOLDAP
BuildRequires: evoldap2-devel
@@ -63,7 +65,9 @@
BuildRequires: nss-shared-helper-devel
BuildRequires: python-devel
BuildRequires: sqlite3-devel >= 3.7.17
+%if !0%{?is_opensuse}
BuildRequires: translation-update-upstream
+%endif
BuildRequires: vala >= 0.22.0
BuildRequires: pkgconfig(gcr-base-3) >= 3.4
BuildRequires: pkgconfig(goa-1.0) >= 3.8
@@ -268,7 +272,10 @@
%lang_package
%prep
%setup -q
+%patch0 -p1
+%if !0%{?is_opensuse}
translation-update-upstream
+%endif
%build
%{configure} \
@@ -291,7 +298,7 @@
--disable-vala-bindings \
--disable-introspection
%endif
-make %{?_smp_mflags} V=1
+make %{?_smp_mflags}
%install
%{makeinstall}
++++++ eds-Internal_Google_OAuth2_authentication.patch ++++++
>From eaf719213b7f0e052b1e535e87b00eea8b6c5719 Mon Sep 17 00:00:00 2001
From: Milan Crha <mcrha(a)redhat.com>
Date: Tue, 20 Sep 2016 12:29:48 +0200
Subject: Bug 771547 - Internal Google OAuth2 authentication fails with expired
token
---
calendar/backends/caldav/e-cal-backend-caldav.c | 2 +-
libedataserver/e-data-server-util.c | 16 +++++++++----
.../e-source-credentials-provider-impl-google.c | 2 +-
.../e-credentials-prompter-impl-google.c | 27 ++++++++++++++++++++--
libedataserverui/e-credentials-prompter.c | 16 ++++++++++---
5 files changed, 52 insertions(+), 11 deletions(-)
diff --git a/calendar/backends/caldav/e-cal-backend-caldav.c b/calendar/backends/caldav/e-cal-backend-caldav.c
index 53f7d0e..bebd87e 100644
--- a/calendar/backends/caldav/e-cal-backend-caldav.c
+++ b/calendar/backends/caldav/e-cal-backend-caldav.c
@@ -697,7 +697,7 @@ status_code_to_result (SoupMessage *message,
gchar *body = g_strndup (message->response_body->data, message->response_body->length);
/* Do not localize this string, it is returned by the server. */
- if (body && (e_util_strstrcase (body, "Daily Limit Exceeded") ||
+ if (body && (e_util_strstrcase (body, "Daily Limit") ||
e_util_strstrcase (body, "https://console.developers.google.com/"))) {
/* Special-case this condition and provide this error up to the UI. */
g_propagate_error (perror,
diff --git a/libedataserver/e-data-server-util.c b/libedataserver/e-data-server-util.c
index 60bb63d..63dc300 100644
--- a/libedataserver/e-data-server-util.c
+++ b/libedataserver/e-data-server-util.c
@@ -2915,10 +2915,18 @@ e_util_get_source_oauth2_access_token_sync (ESource *source,
source, cancellable, out_access_token,
out_expires_in_seconds, error);
} else if (g_strcmp0 (auth_method, "Google") == 0) {
- success = TRUE;
-
- e_source_credentials_google_util_extract_from_credentials (
- credentials, out_access_token, out_expires_in_seconds);
+ gint expires_in_seconds = -1;
+
+ success = e_source_credentials_google_util_extract_from_credentials (
+ credentials, out_access_token, &expires_in_seconds);
+ if (!success || expires_in_seconds <= 0) {
+ /* Ask to refresh the token, if it's expired */
+ e_source_invoke_credentials_required_sync (source,
+ expires_in_seconds < 0 ? E_SOURCE_AUTHENTICATION_REQUIRED : E_SOURCE_AUTHENTICATION_REJECTED,
+ NULL, 0, NULL, cancellable, error);
+ } else if (out_expires_in_seconds) {
+ *out_expires_in_seconds = expires_in_seconds;
+ }
}
g_free (auth_method);
diff --git a/libedataserver/e-source-credentials-provider-impl-google.c b/libedataserver/e-source-credentials-provider-impl-google.c
index 5761a17..7aecf47 100644
--- a/libedataserver/e-source-credentials-provider-impl-google.c
+++ b/libedataserver/e-source-credentials-provider-impl-google.c
@@ -465,7 +465,7 @@ e_source_credentials_google_util_extract_from_credentials (const ENamedParameter
if (out_expires_in_seconds) {
now = g_get_real_time () / G_USEC_PER_SEC;
- if (now < expires_after_tm)
+ if (now > expires_after_tm)
now = expires_after_tm;
*out_expires_in_seconds = (gint) (expires_after_tm - now);
diff --git a/libedataserverui/e-credentials-prompter-impl-google.c b/libedataserverui/e-credentials-prompter-impl-google.c
index 2acfeb2..f968d7a 100644
--- a/libedataserverui/e-credentials-prompter-impl-google.c
+++ b/libedataserverui/e-credentials-prompter-impl-google.c
@@ -291,9 +291,9 @@ cpi_google_update_prompter_credentials (GWeakRef *prompter_google_wr,
success = TRUE;
}
- g_object_unref (prompter_google);
g_free (secret);
}
+ g_clear_object (&prompter_google);
g_free (expires_after);
@@ -332,8 +332,10 @@ e_credentials_prompter_impl_google_finish_dialog_idle_cb (gpointer user_data)
g_return_val_if_fail (E_IS_CREDENTIALS_PROMPTER_IMPL_GOOGLE (prompter_google), FALSE);
+ g_mutex_lock (&prompter_google->priv->property_lock);
if (g_source_get_id (g_main_current_source ()) == prompter_google->priv->show_dialog_idle_id) {
prompter_google->priv->show_dialog_idle_id = 0;
+ g_mutex_unlock (&prompter_google->priv->property_lock);
g_warn_if_fail (prompter_google->priv->dialog != NULL);
@@ -343,6 +345,8 @@ e_credentials_prompter_impl_google_finish_dialog_idle_cb (gpointer user_data)
e_credentials_prompter_impl_google_show_html (prompter_google->priv->web_view,
"Finished with error", prompter_google->priv->error_text);
}
+ } else {
+ g_mutex_unlock (&prompter_google->priv->property_lock);
}
return FALSE;
@@ -442,9 +446,11 @@ cpi_google_get_access_token_thread (gpointer user_data)
GOOGLE_TOKEN_URI, soup_status, soup_status_get_phrase (soup_status));
}
+ g_mutex_lock (&prompter_google->priv->property_lock);
prompter_google->priv->show_dialog_idle_id = g_idle_add (
e_credentials_prompter_impl_google_finish_dialog_idle_cb,
prompter_google);
+ g_mutex_unlock (&prompter_google->priv->property_lock);
}
g_clear_object (&prompter_google);
@@ -843,10 +849,12 @@ e_credentials_prompter_impl_google_manage_dialog_idle_cb (gpointer user_data)
g_return_val_if_fail (E_IS_CREDENTIALS_PROMPTER_IMPL_GOOGLE (prompter_google), FALSE);
+ g_mutex_lock (&prompter_google->priv->property_lock);
if (g_source_get_id (g_main_current_source ()) == prompter_google->priv->show_dialog_idle_id) {
gboolean success;
prompter_google->priv->show_dialog_idle_id = 0;
+ g_mutex_unlock (&prompter_google->priv->property_lock);
g_warn_if_fail (prompter_google->priv->dialog == NULL);
@@ -861,6 +869,8 @@ e_credentials_prompter_impl_google_manage_dialog_idle_cb (gpointer user_data)
success ? prompter_google->priv->credentials : NULL);
e_credentials_prompter_impl_google_free_prompt_data (prompter_google);
+ } else {
+ g_mutex_unlock (&prompter_google->priv->property_lock);
}
return FALSE;
@@ -942,9 +952,11 @@ cpi_google_check_existing_token_thread (gpointer user_data)
exit:
prompter_google = g_weak_ref_get (td->prompter_google);
if (prompter_google && !g_cancellable_is_cancelled (cancellable)) {
+ g_mutex_lock (&prompter_google->priv->property_lock);
prompter_google->priv->show_dialog_idle_id = g_idle_add (
e_credentials_prompter_impl_google_manage_dialog_idle_cb,
prompter_google);
+ g_mutex_unlock (&prompter_google->priv->property_lock);
}
g_clear_object (&prompter_google);
@@ -970,7 +982,14 @@ e_credentials_prompter_impl_google_process_prompt (ECredentialsPrompterImpl *pro
prompter_google = E_CREDENTIALS_PROMPTER_IMPL_GOOGLE (prompter_impl);
g_return_if_fail (prompter_google->priv->prompt_id == NULL);
- g_return_if_fail (prompter_google->priv->show_dialog_idle_id == 0);
+
+ g_mutex_lock (&prompter_google->priv->property_lock);
+ if (prompter_google->priv->show_dialog_idle_id != 0) {
+ g_mutex_unlock (&prompter_google->priv->property_lock);
+ g_warning ("%s: Already processing other prompt", G_STRFUNC);
+ return;
+ }
+ g_mutex_unlock (&prompter_google->priv->property_lock);
prompter_google->priv->prompt_id = prompt_id;
prompter_google->priv->auth_source = g_object_ref (auth_source);
@@ -1021,9 +1040,11 @@ e_credentials_prompter_impl_google_process_prompt (ECredentialsPrompterImpl *pro
g_thread_unref (thread);
} else {
#endif /* ENABLE_GOOGLE_AUTH */
+ g_mutex_lock (&prompter_google->priv->property_lock);
prompter_google->priv->show_dialog_idle_id = g_idle_add (
e_credentials_prompter_impl_google_manage_dialog_idle_cb,
prompter_google);
+ g_mutex_unlock (&prompter_google->priv->property_lock);
#ifdef ENABLE_GOOGLE_AUTH
}
#endif /* ENABLE_GOOGLE_AUTH */
@@ -1053,10 +1074,12 @@ e_credentials_prompter_impl_google_dispose (GObject *object)
{
ECredentialsPrompterImplGoogle *prompter_google = E_CREDENTIALS_PROMPTER_IMPL_GOOGLE (object);
+ g_mutex_lock (&prompter_google->priv->property_lock);
if (prompter_google->priv->show_dialog_idle_id) {
g_source_remove (prompter_google->priv->show_dialog_idle_id);
prompter_google->priv->show_dialog_idle_id = 0;
}
+ g_mutex_unlock (&prompter_google->priv->property_lock);
if (prompter_google->priv->cancellable) {
g_cancellable_cancel (prompter_google->priv->cancellable);
diff --git a/libedataserverui/e-credentials-prompter.c b/libedataserverui/e-credentials-prompter.c
index 40c39a7..1e0458e 100644
--- a/libedataserverui/e-credentials-prompter.c
+++ b/libedataserverui/e-credentials-prompter.c
@@ -152,7 +152,7 @@ credentials_prompter_lookup_source_details_thread (GTask *task,
provider = e_credentials_prompter_get_provider (prompter);
cred_source = e_source_credentials_provider_ref_credentials_source (provider, source);
- e_source_credentials_provider_lookup_sync (prompter->priv->provider, cred_source ? cred_source : source, cancellable, &credentials, &local_error);
+ e_source_credentials_provider_lookup_sync (provider, cred_source ? cred_source : source, cancellable, &credentials, &local_error);
/* Interested only in the cancelled error, which means the prompter is freed. */
if (local_error != NULL && g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_CANCELLED)) {
@@ -760,19 +760,29 @@ credentials_prompter_credentials_required_cb (ESourceRegistry *registry,
const GError *op_error,
ECredentialsPrompter *prompter)
{
+ ESource *cred_source;
+
g_return_if_fail (E_IS_SOURCE_REGISTRY (registry));
g_return_if_fail (E_IS_SOURCE (source));
g_return_if_fail (E_IS_CREDENTIALS_PROMPTER (prompter));
/* Only these two reasons are meant to be used to prompt the user for credentials. */
if (reason != E_SOURCE_CREDENTIALS_REASON_REQUIRED &&
- reason != E_SOURCE_CREDENTIALS_REASON_REJECTED)
+ reason != E_SOURCE_CREDENTIALS_REASON_REJECTED) {
return;
+ }
+
+ cred_source = e_source_credentials_provider_ref_credentials_source (e_credentials_prompter_get_provider (prompter), source);
/* Global auto-prompt or the source's auto-prompt is disabled. */
if (!e_credentials_prompter_get_auto_prompt (prompter) ||
- e_credentials_prompter_get_auto_prompt_disabled_for (prompter, source))
+ (e_credentials_prompter_get_auto_prompt_disabled_for (prompter, source) &&
+ (!cred_source || e_credentials_prompter_get_auto_prompt_disabled_for (prompter, cred_source)))) {
+ g_clear_object (&cred_source);
return;
+ }
+
+ g_clear_object (&cred_source);
/* This is a re-prompt, but the source cannot be prompted for credentials. */
if (reason == E_SOURCE_CREDENTIALS_REASON_REJECTED &&
--
cgit v0.12
1
0
Hello community,
here is the log from the commit of package perl-Business-ISBN for openSUSE:Factory checked in at 2016-10-01 23:43:59
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Business-ISBN (Old)
and /work/SRC/openSUSE:Factory/.perl-Business-ISBN.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Business-ISBN"
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Business-ISBN/perl-Business-ISBN.changes 2016-08-17 11:56:52.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.perl-Business-ISBN.new/perl-Business-ISBN.changes 2016-10-01 23:44:00.000000000 +0200
@@ -1,0 +2,9 @@
+Wed Sep 21 05:06:15 UTC 2016 - coolo(a)suse.com
+
+- updated to 3.003
+ see /usr/share/doc/packages/perl-Business-ISBN/Changes
+
+ 3.003 2016-09-19T22:03:24Z
+ * Clarify everywhere that I'm using Artistic License 2.0
+
+-------------------------------------------------------------------
Old:
----
Business-ISBN-3.002.tar.gz
New:
----
Business-ISBN-3.003.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Business-ISBN.spec ++++++
--- /var/tmp/diff_new_pack.bPa6D7/_old 2016-10-01 23:44:01.000000000 +0200
+++ /var/tmp/diff_new_pack.bPa6D7/_new 2016-10-01 23:44:01.000000000 +0200
@@ -17,11 +17,11 @@
Name: perl-Business-ISBN
-Version: 3.002
+Version: 3.003
Release: 0
%define cpan_name Business-ISBN
Summary: Work with International Standard Book Numbers
-License: Artistic-1.0 or GPL-1.0+
+License: Artistic-2.0
Group: Development/Libraries/Perl
Url: http://search.cpan.org/dist/Business-ISBN/
Source0: http://www.cpan.org/authors/id/B/BD/BDFOY/%{cpan_name}-%{version}.tar.gz
++++++ Business-ISBN-3.002.tar.gz -> Business-ISBN-3.003.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Business-ISBN-3.002/Changes new/Business-ISBN-3.003/Changes
--- old/Business-ISBN-3.002/Changes 2016-08-10 11:30:52.000000000 +0200
+++ new/Business-ISBN-3.003/Changes 2016-09-20 00:03:45.000000000 +0200
@@ -1,5 +1,8 @@
Revision history for Perl module Business::ISBN
+3.003 2016-09-19T22:03:24Z
+ * Clarify everywhere that I'm using Artistic License 2.0
+
3.002 2016-08-10T09:30:21Z
* Bump to stable versions
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Business-ISBN-3.002/META.json new/Business-ISBN-3.003/META.json
--- old/Business-ISBN-3.002/META.json 2016-08-10 11:30:54.000000000 +0200
+++ new/Business-ISBN-3.003/META.json 2016-09-20 00:04:36.000000000 +0200
@@ -4,9 +4,9 @@
"brian d foy <bdfoy(a)cpan.org>"
],
"dynamic_config" : 1,
- "generated_by" : "ExtUtils::MakeMaker version 7.04, CPAN::Meta::Converter version 2.140640",
+ "generated_by" : "ExtUtils::MakeMaker version 7.1001, CPAN::Meta::Converter version 2.150005",
"license" : [
- "perl_5"
+ "artistic_2"
],
"meta-spec" : {
"url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
@@ -55,5 +55,6 @@
"web" : "https://github.com/briandfoy/business-isbn"
}
},
- "version" : "3.002"
+ "version" : "3.003",
+ "x_serialization_backend" : "JSON::PP version 2.27300"
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Business-ISBN-3.002/META.yml new/Business-ISBN-3.003/META.yml
--- old/Business-ISBN-3.002/META.yml 2016-08-10 11:30:54.000000000 +0200
+++ new/Business-ISBN-3.003/META.yml 2016-09-20 00:04:34.000000000 +0200
@@ -8,8 +8,8 @@
ExtUtils::MakeMaker: '6.64'
File::Spec::Functions: '0'
dynamic_config: 1
-generated_by: 'ExtUtils::MakeMaker version 7.04, CPAN::Meta::Converter version 2.140640'
-license: perl
+generated_by: 'ExtUtils::MakeMaker version 7.1001, CPAN::Meta::Converter version 2.150005'
+license: artistic_2
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
version: '1.4'
@@ -27,4 +27,5 @@
bugtracker: https://github.com/briandfoy/business-isbn/issues
homepage: https://github.com/briandfoy/business-isbn
repository: https://github.com/briandfoy/business-isbn.git
-version: '3.002'
+version: '3.003'
+x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Business-ISBN-3.002/Makefile.PL new/Business-ISBN-3.003/Makefile.PL
--- old/Business-ISBN-3.002/Makefile.PL 2016-08-10 11:30:52.000000000 +0200
+++ new/Business-ISBN-3.003/Makefile.PL 2016-09-20 00:03:45.000000000 +0200
@@ -49,7 +49,7 @@
'NAME' => $module,
'ABSTRACT_FROM' => $main_file,
'VERSION_FROM' => $main_file,
- 'LICENSE' => 'perl',
+ 'LICENSE' => 'artistic_2',
'AUTHOR' => 'brian d foy <bdfoy(a)cpan.org>',
'CONFIGURE_REQUIRES' => {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Business-ISBN-3.002/lib/Business/ISBN.pm new/Business-ISBN-3.003/lib/Business/ISBN.pm
--- old/Business-ISBN-3.002/lib/Business/ISBN.pm 2016-08-10 11:30:52.000000000 +0200
+++ new/Business-ISBN-3.003/lib/Business/ISBN.pm 2016-09-20 00:03:45.000000000 +0200
@@ -110,7 +110,7 @@
);
};
-$VERSION = '3.002';
+$VERSION = '3.003';
sub ARTICLE_CODE_OUT_OF_RANGE () { -5 }
sub INVALID_PREFIX () { -4 };
@@ -887,7 +887,8 @@
Copyright © 2001-2016, brian d foy <bdfoy(a)cpan.org>. All rights reserved.
-You may redistribute this under the same terms as Perl itself.
+This module is licensed under the Artistic License 2.0. See the LICENSE
+file in the distribution, or https://opensource.org/licenses/Artistic-2.0
=head1 CREDITS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Business-ISBN-3.002/lib/Business/ISBN10.pm new/Business-ISBN-3.003/lib/Business/ISBN10.pm
--- old/Business-ISBN-3.002/lib/Business/ISBN10.pm 2016-08-10 11:30:52.000000000 +0200
+++ new/Business-ISBN-3.003/lib/Business/ISBN10.pm 2016-09-20 00:03:45.000000000 +0200
@@ -15,7 +15,7 @@
my $debug = 0;
-$VERSION = '3.002';
+$VERSION = '3.003';
sub _max_length { 10 }
@@ -108,6 +108,7 @@
Copyright © 2001-2016, brian d foy <bdfoy(a)cpan.org>. All rights reserved.
-You may redistribute this under the same terms as Perl itself.
+This module is licensed under the Artistic License 2.0. See the LICENSE
+file in the distribution, or https://opensource.org/licenses/Artistic-2.0
=cut
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Business-ISBN-3.002/lib/Business/ISBN13.pm new/Business-ISBN-3.003/lib/Business/ISBN13.pm
--- old/Business-ISBN-3.002/lib/Business/ISBN13.pm 2016-08-10 11:30:52.000000000 +0200
+++ new/Business-ISBN-3.003/lib/Business/ISBN13.pm 2016-09-20 00:03:45.000000000 +0200
@@ -14,7 +14,7 @@
my $debug = 0;
-$VERSION = '3.002';
+$VERSION = '3.003';
sub _max_length { 13 }
@@ -120,6 +120,7 @@
Copyright © 2001-2016, brian d foy <bdfoy(a)cpan.org>. All rights reserved.
-You may redistribute this under the same terms as Perl itself.
+This module is licensed under the Artistic License 2.0. See the LICENSE
+file in the distribution, or https://opensource.org/licenses/Artistic-2.0
=cut
1
0
Hello community,
here is the log from the commit of package perl-Text-Glob for openSUSE:Factory checked in at 2016-10-01 23:43:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Text-Glob (Old)
and /work/SRC/openSUSE:Factory/.perl-Text-Glob.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "perl-Text-Glob"
Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Text-Glob/perl-Text-Glob.changes 2011-11-21 12:48:49.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.perl-Text-Glob.new/perl-Text-Glob.changes 2016-10-01 23:43:45.000000000 +0200
@@ -1,0 +2,10 @@
+Thu Sep 15 06:28:20 UTC 2016 - coolo(a)suse.com
+
+- updated to 0.10
+ see /usr/share/doc/packages/perl-Text-Glob/Changes
+
+ 0.10 Wednesday 14th September, 2016
+ Added ability to alter regex seperator (patch from Mark Fowler)
+ Switch distribution packaging back to ExtUtils::MakeMaker (RT#104876)
+
+-------------------------------------------------------------------
Old:
----
Text-Glob-0.09.tar.gz
New:
----
Text-Glob-0.10.tar.gz
cpanspec.yml
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-Text-Glob.spec ++++++
--- /var/tmp/diff_new_pack.1Odt4o/_old 2016-10-01 23:43:46.000000000 +0200
+++ /var/tmp/diff_new_pack.1Odt4o/_new 2016-10-01 23:43:46.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package perl-Text-Glob
#
-# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# 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
@@ -16,48 +16,44 @@
#
+Name: perl-Text-Glob
+Version: 0.10
+Release: 0
%define cpan_name Text-Glob
-
-Name: perl-%cpan_name
-Version: 0.09
-Release: 1
-Provides: %cpan_name
+Summary: Match Globbing Patterns Against Text
+License: Artistic-1.0 or GPL-1.0+
Group: Development/Libraries/Perl
-License: Artistic-1.0
Url: http://search.cpan.org/dist/Text-Glob/
-Summary: Tools for working with paths and file specs across platforms
-Source: %cpan_name-%{version}.tar.gz
+Source0: http://www.cpan.org/authors/id/R/RC/RCLAMP/%{cpan_name}-%{version}.tar.gz
+Source1: cpanspec.yml
+BuildArch: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
-%{perl_requires}
BuildRequires: perl
BuildRequires: perl-macros
+%{perl_requires}
%description
-Text::Glob implements glob(3) style matching that can be used to match against text, rather than fetching names from a filesystem. If you want to do full file globbing use the File::Glob module instead.
+Text::Glob implements glob(3) style matching that can be used to match
+against text, rather than fetching names from a filesystem. If you want to
+do full file globbing use the File::Glob module instead.
%prep
-%setup -q -n %cpan_name-%{version}
+%setup -q -n %{cpan_name}-%{version}
%build
-perl Makefile.PL OPTIMIZE="$RPM_OPT_FLAGS -Wall"
-make
+%{__perl} Makefile.PL INSTALLDIRS=vendor
+%{__make} %{?_smp_mflags}
%check
-make test
+%{__make} test
%install
-make DESTDIR=$RPM_BUILD_ROOT install_vendor
+%perl_make_install
%perl_process_packlist
+%perl_gen_filelist
-%clean
-# clean up the hard disc after build
-rm -rf $RPM_BUILD_ROOT
-
-%files
-%defattr(-,root,root)
-%doc %{_mandir}/man?/*
-%{perl_vendorlib}/Text
-%{perl_vendorarch}/auto/Text
-%doc Changes MANIFEST
+%files -f %{name}.files
+%defattr(-,root,root,755)
+%doc Changes
%changelog
++++++ Text-Glob-0.09.tar.gz -> Text-Glob-0.10.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Text-Glob-0.09/Build.PL new/Text-Glob-0.10/Build.PL
--- old/Text-Glob-0.09/Build.PL 2011-02-22 16:08:30.000000000 +0100
+++ new/Text-Glob-0.10/Build.PL 1970-01-01 01:00:00.000000000 +0100
@@ -1,12 +0,0 @@
-use strict;
-use Module::Build;
-
-Module::Build
- ->new( module_name => "Text::Glob",
- license => 'perl',
- build_requires => {
- 'Test::More' => 0,
- },
- create_makefile_pl => 'traditional',
- )
- ->create_build_script;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Text-Glob-0.09/Changes new/Text-Glob-0.10/Changes
--- old/Text-Glob-0.09/Changes 2011-02-22 16:08:30.000000000 +0100
+++ new/Text-Glob-0.10/Changes 2016-09-14 11:44:08.000000000 +0200
@@ -1,3 +1,7 @@
+0.10 Wednesday 14th September, 2016
+ Added ability to alter regex seperator (patch from Mark Fowler)
+ Switch distribution packaging back to ExtUtils::MakeMaker (RT#104876)
+
0.09 Tuesday 22nd February, 2010
Compiled documentation fixes (collected by Tom Hukins from fixes on rt.cpan)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Text-Glob-0.09/MANIFEST new/Text-Glob-0.10/MANIFEST
--- old/Text-Glob-0.09/MANIFEST 2011-02-22 16:08:30.000000000 +0100
+++ new/Text-Glob-0.10/MANIFEST 2016-09-14 11:44:16.000000000 +0200
@@ -1,7 +1,8 @@
Changes
-MANIFEST
lib/Text/Glob.pm
Makefile.PL
-Build.PL
-META.yml
+MANIFEST This list of files
t/Text-Glob.t
+t/Text-Glob_Sep.t
+META.yml Module YAML meta-data (added by MakeMaker)
+META.json Module JSON meta-data (added by MakeMaker)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Text-Glob-0.09/META.json new/Text-Glob-0.10/META.json
--- old/Text-Glob-0.09/META.json 1970-01-01 01:00:00.000000000 +0100
+++ new/Text-Glob-0.10/META.json 2016-09-14 11:44:16.000000000 +0200
@@ -0,0 +1,54 @@
+{
+ "abstract" : "match globbing patterns against text",
+ "author" : [
+ "Richard Clamp <richardc(a)unixbeard.net>"
+ ],
+ "dynamic_config" : 0,
+ "generated_by" : "ExtUtils::MakeMaker version 7.1001, CPAN::Meta::Converter version 2.150005",
+ "license" : [
+ "perl_5"
+ ],
+ "meta-spec" : {
+ "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
+ "version" : "2"
+ },
+ "name" : "Text-Glob",
+ "no_index" : {
+ "directory" : [
+ "t",
+ "inc"
+ ]
+ },
+ "prereqs" : {
+ "build" : {
+ "requires" : {
+ "ExtUtils::MakeMaker" : "0"
+ }
+ },
+ "configure" : {
+ "requires" : {
+ "ExtUtils::MakeMaker" : "0"
+ }
+ },
+ "runtime" : {
+ "requires" : {
+ "Exporter" : "0",
+ "constant" : "0",
+ "perl" : "5.00503"
+ }
+ },
+ "test" : {
+ "requires" : {
+ "Test::More" : "0"
+ }
+ }
+ },
+ "release_status" : "stable",
+ "resources" : {
+ "bugtracker" : {
+ "mailto" : "richardc(a)unixbeard.net"
+ }
+ },
+ "version" : "0.10",
+ "x_serialization_backend" : "JSON::PP version 2.27300"
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Text-Glob-0.09/META.yml new/Text-Glob-0.10/META.yml
--- old/Text-Glob-0.09/META.yml 2011-02-22 16:08:30.000000000 +0100
+++ new/Text-Glob-0.10/META.yml 2016-09-14 11:44:15.000000000 +0200
@@ -3,19 +3,25 @@
author:
- 'Richard Clamp <richardc(a)unixbeard.net>'
build_requires:
- Test::More: 0
+ ExtUtils::MakeMaker: '0'
+ Test::More: '0'
configure_requires:
- Module::Build: 0.36
-generated_by: 'Module::Build version 0.3603'
+ ExtUtils::MakeMaker: '0'
+dynamic_config: 0
+generated_by: 'ExtUtils::MakeMaker version 7.1001, CPAN::Meta::Converter version 2.150005'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
- version: 1.4
+ version: '1.4'
name: Text-Glob
-provides:
- Text::Glob:
- file: lib/Text/Glob.pm
- version: 0.09
-resources:
- license: http://dev.perl.org/licenses/
-version: 0.09
+no_index:
+ directory:
+ - t
+ - inc
+requires:
+ Exporter: '0'
+ constant: '0'
+ perl: '5.00503'
+resources: {}
+version: '0.10'
+x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Text-Glob-0.09/Makefile.PL new/Text-Glob-0.10/Makefile.PL
--- old/Text-Glob-0.09/Makefile.PL 2011-02-22 16:08:30.000000000 +0100
+++ new/Text-Glob-0.10/Makefile.PL 2016-09-14 11:14:25.000000000 +0200
@@ -1,14 +1,51 @@
-# Note: this file was auto-generated by Module::Build::Compat version 0.3603
+use strict;
+use warnings;
use ExtUtils::MakeMaker;
-WriteMakefile
-(
- 'PL_FILES' => {},
- 'INSTALLDIRS' => 'site',
- 'NAME' => 'Text::Glob',
- 'EXE_FILES' => [],
- 'VERSION_FROM' => 'lib/Text/Glob.pm',
- 'PREREQ_PM' => {
- 'Test::More' => 0
- }
- )
-;
+
+ExtUtils::MakeMaker->VERSION(6.98) if -f '.gitignore';
+
+my %WriteMakefileArgs = (
+ NAME => 'Text::Glob',
+ VERSION_FROM => 'lib/Text/Glob.pm',
+ ABSTRACT_FROM => 'lib/Text/Glob.pm',
+ AUTHOR => 'Richard Clamp <richardc(a)unixbeard.net>',
+ LICENSE => 'perl_5',
+ MIN_PERL_VERSION => '5.00503',
+
+ CONFIGURE_REQUIRES => {
+ 'ExtUtils::MakeMaker' => '0',
+ },
+ PREREQ_PM => {
+ 'Exporter' => '0',
+ 'constant' => '0',
+ },
+ TEST_REQUIRES => {
+ 'Test::More' => '0',
+ },
+
+ META_MERGE => {
+ 'meta-spec' => { version => 2 },
+ dynamic_config => 0,
+ resources => {
+ bugtracker => {
+ mailto => 'richardc(a)unixbeard.net',
+ },
+ },
+ },
+);
+
+# degrade gracefully for older EUMM/older perls
+
+if (!eval { ExtUtils::MakeMaker->VERSION('6.6303') }) {
+ $WriteMakefileArgs{BUILD_REQUIRES} = $WriteMakefileArgs{TEST_REQUIRES};
+ delete $WriteMakefileArgs{TEST_REQUIRES};
+}
+
+if (!eval { ExtUtils::MakeMaker->VERSION('6.5501') }) {
+ @{$WriteMakefileArgs{PREREQ_PM}}{ keys %{$WriteMakefileArgs{BUILD_REQUIRES}} } =
+ @{$WriteMakefileArgs{BUILD_REQUIRES}}{ keys %{$WriteMakefileArgs{BUILD_REQUIRES}} };
+
+ delete $WriteMakefileArgs{BUILD_REQUIRES};
+}
+
+WriteMakefile(%WriteMakefileArgs);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Text-Glob-0.09/lib/Text/Glob.pm new/Text-Glob-0.10/lib/Text/Glob.pm
--- old/Text-Glob-0.09/lib/Text/Glob.pm 2011-02-22 16:08:30.000000000 +0100
+++ new/Text-Glob-0.10/lib/Text/Glob.pm 2016-09-14 11:44:08.000000000 +0200
@@ -3,7 +3,7 @@
use Exporter;
use vars qw/$VERSION @ISA @EXPORT_OK
$strict_leading_dot $strict_wildcard_slash/;
-$VERSION = '0.09';
+$VERSION = '0.10';
@ISA = 'Exporter';
@EXPORT_OK = qw( glob_to_regex glob_to_regex_string match_glob );
@@ -21,6 +21,11 @@
sub glob_to_regex_string
{
my $glob = shift;
+
+ my $seperator = $Text::Glob::seperator;
+ $seperator = "/" unless defined $seperator;
+ $seperator = quotemeta($seperator);
+
my ($regex, $in_curlies, $escaping);
local $_;
my $first_byte = 1;
@@ -40,11 +45,11 @@
}
elsif ($_ eq '*') {
$regex .= $escaping ? "\\*" :
- $strict_wildcard_slash ? "[^/]*" : ".*";
+ $strict_wildcard_slash ? "(?:(?!$seperator).)*" : ".*";
}
elsif ($_ eq '?') {
$regex .= $escaping ? "\\?" :
- $strict_wildcard_slash ? "[^/]" : ".";
+ $strict_wildcard_slash ? "(?!$seperator)." : ".";
}
elsif ($_ eq '{') {
$regex .= $escaping ? "\\{" : "(";
@@ -156,18 +161,20 @@
C<example.{foo,bar,baz}> matches C<example.foo>, C<example.bar>, and
C<example.baz>
-=item leading . must be explictly matched
+=item leading . must be explicitly matched
C<*.foo> does not match C<.bar.foo>. For this you must either specify
the leading . in the glob pattern (C<.*.foo>), or set
C<$Text::Glob::strict_leading_dot> to a false value while compiling
the regex.
-=item C<*> and C<?> do not match /
+=item C<*> and C<?> do not match the seperator (i.e. do not match C</>)
C<*.foo> does not match C<bar/baz.foo>. For this you must either
explicitly match the / in the glob (C<*/*.foo>), or set
-C<$Text::Glob::strict_wildcard_slash> to a false value with compiling
+C<$Text::Glob::strict_wildcard_slash> to a false value while compiling
+the regex, or change the seperator that Text::Glob uses by setting
+C<$Text::Glob::seperator> to an alternative value while compiling the
the regex.
=back
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/Text-Glob-0.09/t/Text-Glob_Sep.t new/Text-Glob-0.10/t/Text-Glob_Sep.t
--- old/Text-Glob-0.09/t/Text-Glob_Sep.t 1970-01-01 01:00:00.000000000 +0100
+++ new/Text-Glob-0.10/t/Text-Glob_Sep.t 2016-09-14 11:14:25.000000000 +0200
@@ -0,0 +1,82 @@
+#!perl -w
+use strict;
+use Test::More tests => 30;
+
+BEGIN { use_ok('Text::Glob', qw( glob_to_regex ) ) }
+
+{
+ my $regex = glob_to_regex( 'foo', "::" );
+ is( ref $regex, 'Regexp', "glob_to_regex hands back a regex" );
+ ok( 'foo' =~ $regex, "matched foo" );
+ ok( 'foobar' !~ $regex, "didn't match foobar" );
+}
+
+########################################################################
+# Test '*'
+########################################################################
+
+# single char seperator
+{
+ local $Text::Glob::seperator = ":";
+ my $regex = glob_to_regex( 'foo*:bar' );
+ is( ref $regex, 'Regexp', "glob_to_regex hands back a regex" );
+ ok( 'foo:bar' =~ $regex, "matched foo::bar" );
+ ok( 'foowibble:bar' =~ $regex, "matched foowibble::bar" );
+ ok( 'foo/wibble:bar' =~ $regex, "matched foo/wibble::bar" );
+ ok( 'foo::wibble:bar' !~ $regex, "didn't match foo::wibble::bar" );
+}
+
+# multi char seperator
+{
+ local $Text::Glob::seperator = "::";
+ my $regex = glob_to_regex( 'foo*::bar' );
+ is( ref $regex, 'Regexp', "glob_to_regex hands back a regex" );
+ ok( 'foo::bar' =~ $regex, "matched foo::bar" );
+ ok( 'foowibble::bar' =~ $regex, "matched foowibble::bar" );
+ ok( 'foo/wibble::bar' =~ $regex, "matched foo/wibble::bar" );
+ ok( 'foo::wibble::bar' !~ $regex, "didn't match foo::wibble::bar" );
+}
+
+# meta char seperator
+{
+ local $Text::Glob::seperator = "(";
+ my $regex = glob_to_regex( 'foo*(bar' );
+ is( ref $regex, 'Regexp', "glob_to_regex hands back a regex" );
+ ok( 'foo(bar' =~ $regex, "matched foo(bar" );
+ ok( 'foowibble(bar' =~ $regex, "matched foowibble(bar" );
+ ok( 'foo/wibble(bar' =~ $regex, "matched foo/wibble(bar" );
+ ok( 'foo(wibble(bar' !~ $regex, "didn't match foo(wibble(bar" );
+}
+
+########################################################################
+# Test '?'
+########################################################################
+
+# single char seperator
+{
+ local $Text::Glob::seperator = ":";
+ my $regex = glob_to_regex( 'fo?:bar' );
+ is( ref $regex, 'Regexp', "glob_to_regex hands back a regex" );
+ ok( 'foo:bar' =~ $regex, "matched foo:bar" );
+ ok( 'fo::bar' !~ $regex, "didn't match fo::bar" );
+}
+
+# multi char seperator
+{
+ local $Text::Glob::seperator = "::";
+ my $regex = glob_to_regex( 'f??::bar' );
+ is( ref $regex, 'Regexp', "glob_to_regex hands back a regex" );
+ ok( 'foo::bar' =~ $regex, "matched foo:bar" );
+ ok( 'f::::bar' !~ $regex, "didn't match f::::bar" );
+ ok( 'fo:::bar' !~ $regex, "didn't match fo:::bar" );
+}
+
+# meta char seperator
+{
+ local $Text::Glob::seperator = "((";
+ my $regex = glob_to_regex( 'f??((bar' );
+ is( ref $regex, 'Regexp', "glob_to_regex hands back a regex" );
+ ok( 'foo((bar' =~ $regex, "matched foo((bar" );
+ ok( 'f((((bar' !~ $regex, "didn't match f((((bar" );
+ ok( 'fo(((bar' !~ $regex, "didn't match fo((((bar" );
+}
++++++ 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