diff --git a/.fmf/version b/.fmf/version new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/.fmf/version @@ -0,0 +1 @@ +1 diff --git a/changelog b/changelog new file mode 100644 index 0000000..a9c4410 --- /dev/null +++ b/changelog @@ -0,0 +1,386 @@ +* Fri Jan 17 2025 Fedora Release Engineering - 0.51.0-29 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Tue Aug 6 2024 Manish Tiwari - 0.51.0-28 +- CI gating tests migration to tmt + +* Thu Jul 18 2024 Fedora Release Engineering - 0.51.0-27 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Wed Jan 24 2024 Fedora Release Engineering - 0.51.0-26 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Sat Jan 20 2024 Fedora Release Engineering - 0.51.0-25 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Thu Sep 21 2023 Jens Petersen - 0.51.0-24 +- SPDX migration of license tag + +* Thu Jul 20 2023 Fedora Release Engineering - 0.51.0-23 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Thu Jan 19 2023 Fedora Release Engineering - 0.51.0-22 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Thu Jul 21 2022 Fedora Release Engineering - 0.51.0-21 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Thu Jan 20 2022 Fedora Release Engineering - 0.51.0-20 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Thu Jul 22 2021 Fedora Release Engineering - 0.51.0-19 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Tue Jan 26 2021 Fedora Release Engineering - 0.51.0-18 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Tue Jul 28 2020 Fedora Release Engineering - 0.51.0-17 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Wed Jan 29 2020 Fedora Release Engineering - 0.51.0-16 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Thu Jul 25 2019 Fedora Release Engineering - 0.51.0-15 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Fri Feb 01 2019 Fedora Release Engineering - 0.51.0-14 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Jul 13 2018 Fedora Release Engineering - 0.51.0-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Fri Jun 29 2018 Jitka Plesnikova - 0.51.0-12 +- Perl 5.28 rebuild + +* Wed Feb 07 2018 Fedora Release Engineering - 0.51.0-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Tue Aug 08 2017 Kalev Lember - 0.51.0-10 +- Fix intltool-update to work with perl 5.26 (#1462217) + +* Wed Jul 26 2017 Fedora Release Engineering - 0.51.0-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Fri Feb 10 2017 Fedora Release Engineering - 0.51.0-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Fri Jul 29 2016 Wolfgang Ulbrich - 0.51.0-7 +- fix usage of distcheck for some packages rhbz (#1318674) + +* Tue Feb 16 2016 Yaakov Selkowitz - 0.51.0-6 +- Depend on perl(Getopt::Long) (#1307638) + +* Thu Feb 04 2016 Fedora Release Engineering - 0.51.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Mon Oct 12 2015 Colin Walters - 0.51.0-4 +- Add patch to hopefully close race condition in systemd builds +- Related to https://bugzilla.redhat.com/show_bug.cgi?id=1249051 +- And the test suite is failing but the logs are hidden under + test-suite.log, so copy some code I had in dbus.spec to cat them. + +* Mon Jul 13 2015 Ralf Corsépius - 0.51.0-3 +- Add intltool-0.51.0-perl-5.22.patch (Address RHBZ#1233444) +- Remove unnecessary %%debug_package. + +* Wed Jun 17 2015 Fedora Release Engineering - 0.51.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Mon Mar 09 2015 David King - 0.51.0-1 +- Update to 0.51.0 +- Use license macro for COPYING +- Preserve timestamps during install +- Use parallel make flags +- Update man page glob in files section + +* Sat Jun 07 2014 Fedora Release Engineering - 0.50.2-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Sat Aug 03 2013 Fedora Release Engineering - 0.50.2-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Wed Jul 24 2013 Petr Pisar - 0.50.2-6 +- Perl 5.18 rebuild + +* Fri Feb 8 2013 Matthias Clasen - 0.50.2-5 +- Update url (#908562) + +* Sun Oct 21 2012 Matthias Clasen - 0.50.2-3 +- Rebuild + +* Thu Jul 19 2012 Fedora Release Engineering - 0.50.2-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Tue Apr 17 2012 Kalev Lember - 0.50.2-2 +- Clean up previous change and fix Requires/BuildRequires (#225902) + +* Fri Apr 06 2012 Jon Ciesla - 0.50.2-1 +- Latest stable release. +- Merge review BZ 225902 fixes: +- Removed Obsoletes/Provides for xml-i18n-tools. +- Swapped gettext/gettext-devel Requires, BuildRequires. +- Added %%check section. + +* Fri Jan 13 2012 Fedora Release Engineering - 0.50.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Tue Dec 20 2011 Alon Levy +- Update to 0.50.0 +- Drop patch carried for bz#568845 (schemas-merge) per last comment + in that bug. + +* Wed Feb 09 2011 Fedora Release Engineering - 0.41.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Sun Mar 28 2010 Matthias Clasen - 0.41.1-1 +- Update to 0.41.1 + +* Wed Aug 12 2009 Matthias Clasen - 0.41.0-1 +- Update to 0.41.0 + +* Mon Aug 10 2009 Ville Skyttä - 0.40.6-4 +- Convert specfile to UTF-8. + +* Fri Jul 24 2009 Fedora Release Engineering - 0.40.6-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Mon Apr 27 2009 Matthias Clasen - 0.40.6-2 +- Don't merge translations back into GConf schemas + +* Mon Mar 16 2009 Matthias Clasen - 0.40.6-1 +- Update to 0.40.6 + +* Tue Feb 24 2009 Fedora Release Engineering - 0.40.5-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Thu Feb 12 2009 Matthias Clasen - 0.40.5-2 +- turn noarch + +* Sun Oct 19 2008 Matthias Clasen - 0.40.5-1 +- Update to 0.40.5 + +* Sun Sep 21 2008 Matthias Clasen - 0.40.4-1 +- Update to 0.40.4 + +* Wed Aug 6 2008 Matthias Clasen - 0.40.3-3 +- Require gettext-devel + +* Thu Jul 31 2008 Tom "spot" Callaway - 0.40.3-2 +- fix license tag + +* Fri Jul 25 2008 Matthias Clasen - 0.40.3-1 +- Update to 0.40.3 + +* Mon Jul 21 2008 Matthias Clasen - 0.40.1-1 +- Update to 0.40.1 + +* Tue Jun 3 2008 Matthias Clasen - 0.40.0-1 +- Update to 0.40.0 + +* Mon Feb 25 2008 Matthias Clasen - 0.37.1-1 +- Update to 0.37.1 + +* Tue Feb 19 2008 Fedora Release Engineering - 0.37.0-3 +- Autorebuild for GCC 4.3 + +* Tue Jan 15 2008 Matthias Clasen - 0.37.0-2 +- Require gettext + +* Mon Dec 17 2007 Matthias Clasen - 0.37.0-1 +- Update to 0.37.0 + +* Thu Dec 13 2007 Matthias Clasen - 0.36.3-1 +- Update to 0.36.3 + +* Sun Sep 16 2007 Matthias Clasen - 0.36.2-1 +- Update to 0.36.2 + +* Mon Aug 13 2007 Matthias Clasen - 0.36.1-1 +- Update to 0.36.1 + +* Fri Aug 3 2007 Matthias Clasen - 0.36.0-1 +- Update to 0.36.0 +- Update license field +- Drop patch rejected, obsolete and upstreamed patches +- Some spec file cleanups +- Require automake + +* Tue Jul 31 2007 David Zeuthen - 0.35.5-5 +- Add support for PolicyKit .policy files (b.g.o #462312) + +* Sat Jul 28 2007 Matthias Clasen - 0.35.5-4 +- Don't produce useless debuginfo (#249969) + +* Wed Mar 21 2007 Ray Strode - 0.35.5-3 +- don't store a translation if it is equal to the original + string + +* Mon Mar 19 2007 Bill Nottingham - 0.35.5-2 +- add upstream changeset 674 (GNOME bz#413461 - fix intltool-extract path) + +* Sat Feb 24 2007 Matthias Clasen - 0.35.5-1 +- Update to 0.35.5 + +* Wed Jan 10 2007 Matthias Clasen - 0.35.4-1 +- Update to 0.35.4 + +* Thu Dec 21 2006 Matthias Clasen - 0.35.2-1 +- Update to 0.35.2 + +* Tue Aug 1 2006 Matthias Clasen - 0.35.0-2 +- Add a missing BuildRequires: gettext + +* Wed Jul 12 2006 Jesse Keating - 0.35.0-1.1 +- rebuild + +* Tue May 16 2006 Matthias Clasen 0.35.0-1 +- Update to 0.35.1 + +* Tue May 9 2006 Matthias Clasen 0.34.90.cvs20060509-1 +- Update to a cvs snapshot to allow building gnome 2.15 + +* Fri Feb 10 2006 Jesse Keating - 0.34.2-1.1 +- bump again for double-long bug on ppc(64) + +* Mon Feb 6 2006 Matthias Clasen 0.34.2-1 +- Update to 0.34.2 + +* Fri Dec 09 2005 Jesse Keating +- rebuilt + +* Thu Aug 4 2005 Matthias Clasen - 0.34.1-1 +- New upstream version + +* Wed Mar 2 2005 Matthias Clasen - 0.33-2 +- Rebuild with gcc4 + +* Wed Jan 26 2005 Matthias Clasen - 0.33-1 +- Upgrade to 0.33 + +* Thu Jan 13 2005 Jeremy Katz - 0.31.2-3 +- fix intltool local mode (upstream 163981) + +* Wed Nov 3 2004 - 0.31.2-1 +- add BuildRequires on perl-XML-Parser, #132622 + +* Thu Sep 23 2004 Jonathan Blandford 0.31.2-1 +- bump version + +* Tue Aug 3 2004 Owen Taylor - 0.31.1-1 +- Upgrade to 0.31.1 + +* Tue Jun 15 2004 Elliot Lee +- rebuilt + +* Fri Mar 12 2004 Alex Larsson 0.30-1 +- update to 0.30 + +* Fri Feb 13 2004 Elliot Lee +- rebuilt + +* Mon Jan 19 2004 Jonathan Blandford 0.29-1 +- new version + +* Mon Aug 25 2003 Alexander Larsson 0.27.2-1 +- update + +* Mon Aug 11 2003 Havoc Pennington 0.27-1 +- 0.27 + +* Wed Jul 30 2003 Havoc Pennington 0.26-1 +- rebuild + +* Wed Jul 9 2003 Havoc Pennington 0.26-1 +- 0.26 + +* Wed Jun 04 2003 Elliot Lee +- rebuilt + +* Wed Jan 22 2003 Tim Powers +- rebuilt + +* Mon Jan 6 2003 Havoc Pennington +- 0.25 + +* Fri Nov 8 2002 Havoc Pennington +- 0.23 + +* Fri Jun 21 2002 Tim Powers +- automated rebuild + +* Sun Jun 09 2002 Havoc Pennington +- rebuild in different environment + +* Sun Jun 9 2002 Havoc Pennington +- 0.22 +- remove perl patch, perl is fixed + +* Thu Jun 6 2002 Nalin Dahyabhai +- tweak the perl5 check to not bomb with perl 5.8 + +* Thu May 23 2002 Tim Powers +- automated rebuild + +* Thu Apr 25 2002 Havoc Pennington +- rebuild in different environment + +* Thu Apr 4 2002 Jeremy Katz +- update to 0.18 + +* Thu Mar 14 2002 Jeremy Katz +- update to 0.17 + +* Thu Feb 21 2002 Jeremy Katz +- rebuild in new environment + +* Tue Feb 12 2002 Havoc Pennington +- 0.15 +- remove dbm patch, dbm no longer used upstream +- shorten summary line, #56739 + +* Wed Jan 30 2002 Owen Taylor +- Version 0.14 +- Try again on DBM fix +- Patch to use AnyDBM_File rather than NDBM_File for caching +- Version 0.14 + +* Wed Jan 09 2002 Tim Powers +- automated rebuild + +* Wed Jan 2 2002 Havoc Pennington +- 0.12.90 cvs snap + +* Mon Nov 26 2001 Havoc Pennington +- 0.12 tarball + +* Sun Oct 28 2001 Havoc Pennington +- new cvs snap, no longer noarch + +* Fri Oct 5 2001 Havoc Pennington +- intltool specfile, based on xml-i18n-tools (but fixed up) +- obsolete/provide xml-i18n-tools + +* Tue Aug 14 2001 Alexander Larsson 0.9-2 +- Require patch + +* Wed Aug 8 2001 Jonathan Blandford +- Fix bug #45699 and #50634 by upgrading version. + +* Mon Jul 16 2001 Trond Eivind Glomsrød +- s/Copyright/License/ +- Shorter summary +- Remove empty post/postun scripts +- Don't define name and ver on the top and use this in the headers later + +* Tue Jul 10 2001 Tim Powers +- cleaned up files list so that there aren't non-standard dirs and so + that it owns the xml-i18n-tools dir + +* Tue Apr 17 2001 Jonathan Blandford +- Cleaned up spec file a little for Red Hat. + +* Thu Mar 01 2001 Maciej Stachowiak +- removed devel subpackage + +* Tue Jan 04 2000 Robin * Slomkowski +- created this thing diff --git a/intltool-cache-race.patch b/intltool-cache-race.patch new file mode 100644 index 0000000..e77abde --- /dev/null +++ b/intltool-cache-race.patch @@ -0,0 +1,46 @@ +From 7355bdbca18c95a2b99cb254434ad2c2248d6747 Mon Sep 17 00:00:00 2001 +From: Gianfranco Costamagna +Date: Wed, 2 Dec 2020 16:52:53 +0100 +Subject: [PATCH] [PATCH] Avoid a race where some processes try to use a + partial cache + +Gbp-Pq: 0001-Avoid-a-race-where-some-processes-try-to-use-a-parti.patch. +--- + intltool-merge.in | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/intltool-merge.in b/intltool-merge.in +index 05db7cf930..89923a7da1 100644 +--- a/intltool-merge.in ++++ b/intltool-merge.in +@@ -43,6 +43,7 @@ use Getopt::Long; + use Text::Wrap; + use File::Basename; + use Encode; ++use Fcntl qw(:flock); + + my $must_end_tag = -1; + my $last_depth = -1; +@@ -392,11 +393,14 @@ sub load_cache + + sub get_cached_translation_database + { ++ open(my $lockfh, ">", "$cache_file.lock") or die $!; ++ flock($lockfh, LOCK_EX) or die "Could not lock '$cache_file.lock' - $!"; + my $cache_file_age = -M $cache_file; + if (defined $cache_file_age) + { + if ($cache_file_age <= &get_newest_po_age) + { ++ close($lockfh); + &load_cache; + return; + } +@@ -404,6 +408,7 @@ sub get_cached_translation_database + } + + &create_cache; ++ close($lockfh); + } + + sub add_translation diff --git a/intltool.spec b/intltool.spec index c48ac3d..36f5fc4 100644 --- a/intltool.spec +++ b/intltool.spec @@ -1,7 +1,7 @@ Name: intltool Summary: Utility for internationalizing various kinds of data files Version: 0.51.0 -Release: 26%{?dist} +Release: %autorelease License: GPL-2.0-or-later WITH Autoconf-exception-generic #VCS: bzr:https://code.edge.launchpad.net/~intltool/intltool/trunk Source: https://edge.launchpad.net/intltool/trunk/%{version}/+download/intltool-%{version}.tar.gz @@ -18,19 +18,18 @@ BuildRequires: perl(Getopt::Long) BuildRequires: perl(XML::Parser) BuildRequires: gettext BuildRequires: make -# http://bugzilla.gnome.org/show_bug.cgi?id=568845 -# Dropping this patch per the last comment on that thread: -# Martin Pitt: As the reporter of the bug I close this, as the new API du jour is gsettings, -# which has a sensible gettext integration. -#Patch0: schemas-merge.patch + # Fix intltool-update to work with perl 5.26. Patch taken from # Debian's intltool_0.51.0-4.debian.tar.xz -Patch1: intltool-perl5.26-regex-fixes.patch +Patch: intltool-perl5.26-regex-fixes.patch # https://bugs.launchpad.net/intltool/+bug/1505260 # https://bugzilla.redhat.com/show_bug.cgi?id=1249051 -Patch2: intltool-merge-Create-cache-file-atomically.patch +Patch: intltool-merge-Create-cache-file-atomically.patch # https://bugzilla.redhat.com/show_bug.cgi?id=1318674 -Patch3: intltool_distcheck-fix.patch +Patch: intltool_distcheck-fix.patch +# https://bugzilla.redhat.com/show_bug.cgi?id=2268342 +# https://bugs.launchpad.net/intltool/+bug/1687644 +Patch: intltool-cache-race.patch %description This tool automatically extracts translatable strings from oaf, glade, @@ -38,10 +37,7 @@ bonobo ui, nautilus theme, .desktop, and other data files and puts them in the po files. %prep -%setup -q -%patch 1 -p1 -%patch 2 -p1 -%patch 3 -p1 +%autosetup -p1 %build %configure @@ -69,380 +65,4 @@ fi %{_mandir}/man8/intltool*.8* %changelog -* Wed Jan 24 2024 Fedora Release Engineering - 0.51.0-26 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Sat Jan 20 2024 Fedora Release Engineering - 0.51.0-25 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Thu Sep 21 2023 Jens Petersen - 0.51.0-24 -- SPDX migration of license tag - -* Thu Jul 20 2023 Fedora Release Engineering - 0.51.0-23 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Thu Jan 19 2023 Fedora Release Engineering - 0.51.0-22 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Thu Jul 21 2022 Fedora Release Engineering - 0.51.0-21 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Thu Jan 20 2022 Fedora Release Engineering - 0.51.0-20 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Thu Jul 22 2021 Fedora Release Engineering - 0.51.0-19 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Tue Jan 26 2021 Fedora Release Engineering - 0.51.0-18 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Tue Jul 28 2020 Fedora Release Engineering - 0.51.0-17 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Wed Jan 29 2020 Fedora Release Engineering - 0.51.0-16 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Thu Jul 25 2019 Fedora Release Engineering - 0.51.0-15 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Fri Feb 01 2019 Fedora Release Engineering - 0.51.0-14 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Fri Jul 13 2018 Fedora Release Engineering - 0.51.0-13 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Fri Jun 29 2018 Jitka Plesnikova - 0.51.0-12 -- Perl 5.28 rebuild - -* Wed Feb 07 2018 Fedora Release Engineering - 0.51.0-11 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Tue Aug 08 2017 Kalev Lember - 0.51.0-10 -- Fix intltool-update to work with perl 5.26 (#1462217) - -* Wed Jul 26 2017 Fedora Release Engineering - 0.51.0-9 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Fri Feb 10 2017 Fedora Release Engineering - 0.51.0-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Fri Jul 29 2016 Wolfgang Ulbrich - 0.51.0-7 -- fix usage of distcheck for some packages rhbz (#1318674) - -* Tue Feb 16 2016 Yaakov Selkowitz - 0.51.0-6 -- Depend on perl(Getopt::Long) (#1307638) - -* Thu Feb 04 2016 Fedora Release Engineering - 0.51.0-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Mon Oct 12 2015 Colin Walters - 0.51.0-4 -- Add patch to hopefully close race condition in systemd builds -- Related to https://bugzilla.redhat.com/show_bug.cgi?id=1249051 -- And the test suite is failing but the logs are hidden under - test-suite.log, so copy some code I had in dbus.spec to cat them. - -* Mon Jul 13 2015 Ralf Corsépius - 0.51.0-3 -- Add intltool-0.51.0-perl-5.22.patch (Address RHBZ#1233444) -- Remove unnecessary %%debug_package. - -* Wed Jun 17 2015 Fedora Release Engineering - 0.51.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Mon Mar 09 2015 David King - 0.51.0-1 -- Update to 0.51.0 -- Use license macro for COPYING -- Preserve timestamps during install -- Use parallel make flags -- Update man page glob in files section - -* Sat Jun 07 2014 Fedora Release Engineering - 0.50.2-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Sat Aug 03 2013 Fedora Release Engineering - 0.50.2-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Wed Jul 24 2013 Petr Pisar - 0.50.2-6 -- Perl 5.18 rebuild - -* Fri Feb 8 2013 Matthias Clasen - 0.50.2-5 -- Update url (#908562) - -* Sun Oct 21 2012 Matthias Clasen - 0.50.2-3 -- Rebuild - -* Thu Jul 19 2012 Fedora Release Engineering - 0.50.2-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Tue Apr 17 2012 Kalev Lember - 0.50.2-2 -- Clean up previous change and fix Requires/BuildRequires (#225902) - -* Fri Apr 06 2012 Jon Ciesla - 0.50.2-1 -- Latest stable release. -- Merge review BZ 225902 fixes: -- Removed Obsoletes/Provides for xml-i18n-tools. -- Swapped gettext/gettext-devel Requires, BuildRequires. -- Added %%check section. - -* Fri Jan 13 2012 Fedora Release Engineering - 0.50.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild - -* Tue Dec 20 2011 Alon Levy -- Update to 0.50.0 -- Drop patch carried for bz#568845 (schemas-merge) per last comment - in that bug. - -* Wed Feb 09 2011 Fedora Release Engineering - 0.41.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild - -* Sun Mar 28 2010 Matthias Clasen - 0.41.1-1 -- Update to 0.41.1 - -* Wed Aug 12 2009 Matthias Clasen - 0.41.0-1 -- Update to 0.41.0 - -* Mon Aug 10 2009 Ville Skyttä - 0.40.6-4 -- Convert specfile to UTF-8. - -* Fri Jul 24 2009 Fedora Release Engineering - 0.40.6-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild - -* Mon Apr 27 2009 Matthias Clasen - 0.40.6-2 -- Don't merge translations back into GConf schemas - -* Mon Mar 16 2009 Matthias Clasen - 0.40.6-1 -- Update to 0.40.6 - -* Tue Feb 24 2009 Fedora Release Engineering - 0.40.5-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild - -* Thu Feb 12 2009 Matthias Clasen - 0.40.5-2 -- turn noarch - -* Sun Oct 19 2008 Matthias Clasen - 0.40.5-1 -- Update to 0.40.5 - -* Sun Sep 21 2008 Matthias Clasen - 0.40.4-1 -- Update to 0.40.4 - -* Wed Aug 6 2008 Matthias Clasen - 0.40.3-3 -- Require gettext-devel - -* Thu Jul 31 2008 Tom "spot" Callaway - 0.40.3-2 -- fix license tag - -* Fri Jul 25 2008 Matthias Clasen - 0.40.3-1 -- Update to 0.40.3 - -* Mon Jul 21 2008 Matthias Clasen - 0.40.1-1 -- Update to 0.40.1 - -* Tue Jun 3 2008 Matthias Clasen - 0.40.0-1 -- Update to 0.40.0 - -* Mon Feb 25 2008 Matthias Clasen - 0.37.1-1 -- Update to 0.37.1 - -* Tue Feb 19 2008 Fedora Release Engineering - 0.37.0-3 -- Autorebuild for GCC 4.3 - -* Tue Jan 15 2008 Matthias Clasen - 0.37.0-2 -- Require gettext - -* Mon Dec 17 2007 Matthias Clasen - 0.37.0-1 -- Update to 0.37.0 - -* Thu Dec 13 2007 Matthias Clasen - 0.36.3-1 -- Update to 0.36.3 - -* Sun Sep 16 2007 Matthias Clasen - 0.36.2-1 -- Update to 0.36.2 - -* Mon Aug 13 2007 Matthias Clasen - 0.36.1-1 -- Update to 0.36.1 - -* Fri Aug 3 2007 Matthias Clasen - 0.36.0-1 -- Update to 0.36.0 -- Update license field -- Drop patch rejected, obsolete and upstreamed patches -- Some spec file cleanups -- Require automake - -* Tue Jul 31 2007 David Zeuthen - 0.35.5-5 -- Add support for PolicyKit .policy files (b.g.o #462312) - -* Sat Jul 28 2007 Matthias Clasen - 0.35.5-4 -- Don't produce useless debuginfo (#249969) - -* Wed Mar 21 2007 Ray Strode - 0.35.5-3 -- don't store a translation if it is equal to the original - string - -* Mon Mar 19 2007 Bill Nottingham - 0.35.5-2 -- add upstream changeset 674 (GNOME bz#413461 - fix intltool-extract path) - -* Sat Feb 24 2007 Matthias Clasen - 0.35.5-1 -- Update to 0.35.5 - -* Wed Jan 10 2007 Matthias Clasen - 0.35.4-1 -- Update to 0.35.4 - -* Thu Dec 21 2006 Matthias Clasen - 0.35.2-1 -- Update to 0.35.2 - -* Tue Aug 1 2006 Matthias Clasen - 0.35.0-2 -- Add a missing BuildRequires: gettext - -* Wed Jul 12 2006 Jesse Keating - 0.35.0-1.1 -- rebuild - -* Tue May 16 2006 Matthias Clasen 0.35.0-1 -- Update to 0.35.1 - -* Tue May 9 2006 Matthias Clasen 0.34.90.cvs20060509-1 -- Update to a cvs snapshot to allow building gnome 2.15 - -* Fri Feb 10 2006 Jesse Keating - 0.34.2-1.1 -- bump again for double-long bug on ppc(64) - -* Mon Feb 6 2006 Matthias Clasen 0.34.2-1 -- Update to 0.34.2 - -* Fri Dec 09 2005 Jesse Keating -- rebuilt - -* Thu Aug 4 2005 Matthias Clasen - 0.34.1-1 -- New upstream version - -* Wed Mar 2 2005 Matthias Clasen - 0.33-2 -- Rebuild with gcc4 - -* Wed Jan 26 2005 Matthias Clasen - 0.33-1 -- Upgrade to 0.33 - -* Thu Jan 13 2005 Jeremy Katz - 0.31.2-3 -- fix intltool local mode (upstream 163981) - -* Wed Nov 3 2004 - 0.31.2-1 -- add BuildRequires on perl-XML-Parser, #132622 - -* Thu Sep 23 2004 Jonathan Blandford 0.31.2-1 -- bump version - -* Tue Aug 3 2004 Owen Taylor - 0.31.1-1 -- Upgrade to 0.31.1 - -* Tue Jun 15 2004 Elliot Lee -- rebuilt - -* Fri Mar 12 2004 Alex Larsson 0.30-1 -- update to 0.30 - -* Fri Feb 13 2004 Elliot Lee -- rebuilt - -* Mon Jan 19 2004 Jonathan Blandford 0.29-1 -- new version - -* Mon Aug 25 2003 Alexander Larsson 0.27.2-1 -- update - -* Mon Aug 11 2003 Havoc Pennington 0.27-1 -- 0.27 - -* Wed Jul 30 2003 Havoc Pennington 0.26-1 -- rebuild - -* Wed Jul 9 2003 Havoc Pennington 0.26-1 -- 0.26 - -* Wed Jun 04 2003 Elliot Lee -- rebuilt - -* Wed Jan 22 2003 Tim Powers -- rebuilt - -* Mon Jan 6 2003 Havoc Pennington -- 0.25 - -* Fri Nov 8 2002 Havoc Pennington -- 0.23 - -* Fri Jun 21 2002 Tim Powers -- automated rebuild - -* Sun Jun 09 2002 Havoc Pennington -- rebuild in different environment - -* Sun Jun 9 2002 Havoc Pennington -- 0.22 -- remove perl patch, perl is fixed - -* Thu Jun 6 2002 Nalin Dahyabhai -- tweak the perl5 check to not bomb with perl 5.8 - -* Thu May 23 2002 Tim Powers -- automated rebuild - -* Thu Apr 25 2002 Havoc Pennington -- rebuild in different environment - -* Thu Apr 4 2002 Jeremy Katz -- update to 0.18 - -* Thu Mar 14 2002 Jeremy Katz -- update to 0.17 - -* Thu Feb 21 2002 Jeremy Katz -- rebuild in new environment - -* Tue Feb 12 2002 Havoc Pennington -- 0.15 -- remove dbm patch, dbm no longer used upstream -- shorten summary line, #56739 - -* Wed Jan 30 2002 Owen Taylor -- Version 0.14 -- Try again on DBM fix -- Patch to use AnyDBM_File rather than NDBM_File for caching -- Version 0.14 - -* Wed Jan 09 2002 Tim Powers -- automated rebuild - -* Wed Jan 2 2002 Havoc Pennington -- 0.12.90 cvs snap - -* Mon Nov 26 2001 Havoc Pennington -- 0.12 tarball - -* Sun Oct 28 2001 Havoc Pennington -- new cvs snap, no longer noarch - -* Fri Oct 5 2001 Havoc Pennington -- intltool specfile, based on xml-i18n-tools (but fixed up) -- obsolete/provide xml-i18n-tools - -* Tue Aug 14 2001 Alexander Larsson 0.9-2 -- Require patch - -* Wed Aug 8 2001 Jonathan Blandford -- Fix bug #45699 and #50634 by upgrading version. - -* Mon Jul 16 2001 Trond Eivind Glomsrød -- s/Copyright/License/ -- Shorter summary -- Remove empty post/postun scripts -- Don't define name and ver on the top and use this in the headers later - -* Tue Jul 10 2001 Tim Powers -- cleaned up files list so that there aren't non-standard dirs and so - that it owns the xml-i18n-tools dir - -* Tue Apr 17 2001 Jonathan Blandford -- Cleaned up spec file a little for Red Hat. - -* Thu Mar 01 2001 Maciej Stachowiak -- removed devel subpackage - -* Tue Jan 04 2000 Robin * Slomkowski -- created this thing +%autochangelog diff --git a/plans/basic.fmf b/plans/basic.fmf new file mode 100644 index 0000000..c1627f9 --- /dev/null +++ b/plans/basic.fmf @@ -0,0 +1,5 @@ +summary: Basic smoke test +discover: + how: fmf +execute: + how: tmt diff --git a/schemas-merge.patch b/schemas-merge.patch deleted file mode 100644 index caa1e3c..0000000 --- a/schemas-merge.patch +++ /dev/null @@ -1,153 +0,0 @@ -diff -up intltool-0.40.6/intltool-merge.in.schemas intltool-0.40.6/intltool-merge.in ---- intltool-0.40.6/intltool-merge.in.schemas 2009-02-14 17:12:28.000000000 -0500 -+++ intltool-0.40.6/intltool-merge.in 2009-04-27 01:41:11.099450891 -0400 -@@ -38,8 +38,9 @@ my $PACKAGE = "@PACKAGE@"; - my $VERSION = "@VERSION@"; - - ## Loaded modules --use strict; -+use strict; - use Getopt::Long; -+use Cwd; - use Text::Wrap; - use File::Basename; - use Encode; -@@ -68,6 +69,9 @@ my $PASS_THROUGH_ARG = 0; - my $UTF8_ARG = 0; - my $MULTIPLE_OUTPUT = 0; - my $cache_file; -+my $GETTEXT_PACKAGE = ""; -+my %varhash = (); -+my $SRCDIR = $ENV{"srcdir"} || "."; - - ## Handle options - GetOptions -@@ -87,7 +91,8 @@ GetOptions - "pass-through|p" => \$PASS_THROUGH_ARG, - "utf8|u" => \$UTF8_ARG, - "multiple-output|m" => \$MULTIPLE_OUTPUT, -- "cache|c=s" => \$cache_file -+ "cache|c=s" => \$cache_file, -+ "gettext-package|g=s" => \$GETTEXT_PACKAGE - ) or &error; - - my $PO_DIR; -@@ -103,6 +108,8 @@ my $w = "[-A-Za-z0-9._:]"; - # XML quoted string contents - my $q = "[^\\\"]*"; - -+my $MODULE = $GETTEXT_PACKAGE || FindPackageName() || "unknown"; -+ - ## Check for options. - - if ($VERSION_ARG) -@@ -216,6 +223,8 @@ Other options: - a single file containing all localized elements - -c, --cache=FILE specify cache file name - (usually \$top_builddir/po/.intltool-merge-cache) -+ -g, --gettext-package=NAME -+ specify gettext domain, needed for --schemas-style - -q, --quiet suppress most messages - --help display this help and exit - --version output version information and exit -@@ -241,6 +250,25 @@ sub print_message - } - - -+sub FindPackageName -+{ -+ my $name = ""; -+ -+ my $conf_source; { -+ local (*IN); -+ open (IN, "; -+ close IN; -+ } -+ -+ $name = $1 if $conf_source =~ /^GETTEXT_PACKAGE = \[?([^\n\]]+)/m; -+ -+ return $name if $name; -+} -+ -+ - sub preparation - { - $PO_DIR = $ARGV[0]; -@@ -1246,50 +1274,41 @@ sub schemas_merge_translations - my $short_string = $9 ? $9 : ''; - my $long_string = $12 ? $12 : ''; - -- print OUTPUT "$locale_start_spaces$c_default_block"; -- - $default_string =~ s/\s+/ /g; -- $default_string = entity_decode($default_string); - $short_string =~ s/\s+/ /g; -- $short_string = entity_decode($short_string); - $long_string =~ s/\s+/ /g; -- $long_string = entity_decode($long_string); - -- for my $lang (sort keys %po_files_by_lang) -- { -- my $default_translation = $translations{$lang, $default_string}; -- my $short_translation = $translations{$lang, $short_string}; -- my $long_translation = $translations{$lang, $long_string}; -- -- next if (!$default_translation && !$short_translation && -- !$long_translation); -- -- print OUTPUT "\n$locale_start_spaces"; -+ print OUTPUT "$locale_start_spaces$MODULE"; - -+ print OUTPUT "$locale_start_spaces"; - print OUTPUT "$default_spaces"; -- -- if ($default_translation) -- { -- $default_translation = entity_encode($default_translation); -- print OUTPUT "$default_translation"; -+ if ($default_string) { -+ print OUTPUT "$default_string"; - } -+ print OUTPUT "$short_spaces"; -+ if ($short_string) { -+ print OUTPUT "$short_string"; -+ } -+ print OUTPUT "$long_spaces"; -+ if ($long_string) { -+ print OUTPUT "$long_string"; -+ } -+ print OUTPUT "$locale_end_spaces"; - -- print OUTPUT "$short_spaces"; -+ $default_string = entity_decode($default_string); -+ $short_string = entity_decode($short_string); -+ $long_string = entity_decode($long_string); - -- if ($short_translation) -- { -- $short_translation = entity_encode($short_translation); -- print OUTPUT "$short_translation"; -- } -+ for my $lang (sort keys %po_files_by_lang) -+ { -+ my $default_translation = $translations{$lang, $default_string}; - -- print OUTPUT "$long_spaces"; -+ next if (!$default_translation || ($default_translation eq $default_string)); - -- if ($long_translation) -- { -- $long_translation = entity_encode($long_translation); -- print OUTPUT "$long_translation"; -- } -+ $default_translation = entity_encode($default_translation); - -+ print OUTPUT "\n$locale_start_spaces"; -+ print OUTPUT "$default_spaces$default_translation"; - print OUTPUT "$locale_end_spaces"; - } - } -diff -up intltool-0.40.6/tests/results/test.schemas intltool-0.40.6/tests/results/test diff --git a/tests/cases/context.xml b/tests/cases/context.xml new file mode 100644 index 0000000..e21ad0e --- /dev/null +++ b/tests/cases/context.xml @@ -0,0 +1,19 @@ + + + <_name>Foo + + + + <_name msgctxt="1"> +Bar + + + + <_name msgctxt="2"> +Bar + + + + <_name>Baz + + diff --git a/tests/cases/context.xml.in b/tests/cases/context.xml.in new file mode 100644 index 0000000..4b58d97 --- /dev/null +++ b/tests/cases/context.xml.in @@ -0,0 +1,17 @@ + + + <_name>Foo + + + + <_name msgctxt="1">Bar + + + + <_name msgctxt="2">Bar + + + + <_name>Baz + + diff --git a/tests/cases/context.xml.in.h b/tests/cases/context.xml.in.h new file mode 100644 index 0000000..161a65b --- /dev/null +++ b/tests/cases/context.xml.in.h @@ -0,0 +1,7 @@ +char *s = N_("Foo"); +/* This is the comment on the first Bar */ +char *s = C_("1", "Bar"); +/* This is the comment on the second Bar */ +char *s = C_("2", "Bar"); +/* This is the comment on Baz */ +char *s = N_("Baz"); diff --git a/tests/intltool_tests.py b/tests/intltool_tests.py new file mode 100644 index 0000000..4a0ffa2 --- /dev/null +++ b/tests/intltool_tests.py @@ -0,0 +1,109 @@ +#!/usr/bin/python3 + +import logging +import subprocess +from difflib import Differ + +logging.basicConfig(level=logging.INFO) + + +COMMANDS = [ + "intltool-extract", + "intltool-merge" + ] +INPUT_FILE = "cases/context.xml.in" + + +def test_intltool_installation(cmd: str): + """ + Check if intltool is installed correctly + """ + try: + intltool_cmd = subprocess.Popen([cmd], stdout=subprocess.PIPE) + intltool_cmd_execution_response = intltool_cmd.communicate() + assert "Usage" in str(intltool_cmd_execution_response) + except FileNotFoundError: + logging.error(f"Either {cmd} is not installed or not accessible.") + except OSError: + logging.error(f"Some OSError occurred while executing {cmd}") + except AssertionError: + logging.error(f"[CMD] output does not include text: Usage.") + else: + logging.info(f"Execution of {cmd} succeed. Test Passed.") + + +def test_intltool_extract(cmd, input_file): + """ + Check intltool extract behavior + """ + try: + intltool_extract = subprocess.Popen( + [cmd, "--type=gettext/xml", input_file, "--update"], + stdout=subprocess.PIPE) + intltool_extract_execution_response = intltool_extract.communicate() + assert "Wrote" in str(intltool_extract_execution_response) + except AssertionError: + logging.error(f"Writing output file for {input_file} file failed.") + except Exception as e: + logging.error(e) + else: + logging.info(f"Writing output file for {input_file} succeed.") + + comparison_test_pass = True + with open("{}.h".format(input_file)) as output_file, open("results/{}.h".format("context.xml.in")) as refer_file: + differ = Differ() + for line in differ.compare(output_file.readlines(), refer_file.readlines()): + if line.startswith("+") or line.startswith("-"): + comparison_test_pass = False + + try: + assert comparison_test_pass + except AssertionError: + logging.error("Extracted file does NOT match with the result. Test failed.") + else: + logging.info("Extracted file does match with the result. Test passed.") + + +def test_intltool_merge(cmd, input_file): + """ + Check intltool merge behavior + """ + merged_file = "context.xml" + try: + intltool_merge = subprocess.Popen( + [cmd, "-o", "cases", input_file, "cases/{}".format(merged_file)], + stdout=subprocess.PIPE) + intltool_merge_execution_response = intltool_merge.communicate() + assert "Merging" in str(intltool_merge_execution_response) + except AssertionError: + logging.error(f"Writing output file for {input_file} file failed.") + except Exception as e: + logging.error(e) + else: + logging.info(f"Writing output file for {input_file} succeed.") + + comparison_test_pass = True + with open("cases/{}".format(merged_file)) as output_file, open("results/{}".format(merged_file)) as refer_file: + differ = Differ() + for line in differ.compare(output_file.readlines(), refer_file.readlines()): + if line.startswith("+") or line.startswith("-"): + comparison_test_pass = False + + try: + assert comparison_test_pass + except AssertionError: + logging.error("Merged file does NOT match with the result. Test failed.") + else: + logging.info("Merged file does match with the result. Test passed.") + + +if __name__ == "__main__": + """ + Executes test cases + """ + logging.info("Executing test cases for Intltool..") + for CMD in COMMANDS: + test_intltool_installation(CMD) + test_intltool_extract(COMMANDS[0], INPUT_FILE) + test_intltool_merge(COMMANDS[1], INPUT_FILE) + logging.info("Tests execution of Intltool completed!") diff --git a/tests/main.fmf b/tests/main.fmf new file mode 100644 index 0000000..278bfa9 --- /dev/null +++ b/tests/main.fmf @@ -0,0 +1,6 @@ +summary: Run intltool test +test: ./test.sh +framework: beakerlib +require: + - intltool + - python3 diff --git a/tests/results/context.xml b/tests/results/context.xml new file mode 100644 index 0000000..e21ad0e --- /dev/null +++ b/tests/results/context.xml @@ -0,0 +1,19 @@ + + + <_name>Foo + + + + <_name msgctxt="1"> +Bar + + + + <_name msgctxt="2"> +Bar + + + + <_name>Baz + + diff --git a/tests/results/context.xml.in.h b/tests/results/context.xml.in.h new file mode 100644 index 0000000..161a65b --- /dev/null +++ b/tests/results/context.xml.in.h @@ -0,0 +1,7 @@ +char *s = N_("Foo"); +/* This is the comment on the first Bar */ +char *s = C_("1", "Bar"); +/* This is the comment on the second Bar */ +char *s = C_("2", "Bar"); +/* This is the comment on Baz */ +char *s = N_("Baz"); diff --git a/tests/test.sh b/tests/test.sh new file mode 100755 index 0000000..35c7015 --- /dev/null +++ b/tests/test.sh @@ -0,0 +1,25 @@ +#!/bin/bash +# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k +. /usr/share/beakerlib/beakerlib.sh || exit 1 + +PACKAGE="intltool" + +rlJournalStart + rlPhaseStartSetup + rlAssertRpm $PACKAGE + rlRun "TmpDir=\`mktemp -d\`" 0 "Creating tmp directory" + rlRun "cp -r cases results intltool_tests.py $TmpDir" + rlRun "pushd $TmpDir" + rlPhaseEnd + + rlPhaseStartTest + rlLog "Run intltool_tests.py" + rlRun "python3 intltool_tests.py" + rlPhaseEnd + + rlPhaseStartCleanup + rlRun "popd" + rlRun "rm -r $TmpDir" 0 "Removing tmp directory" + rlPhaseEnd +rlJournalPrintText +rlJournalEnd