Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package gfxboot for openSUSE:Factory checked in at 2021-04-10 15:26:13 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gfxboot (Old) and /work/SRC/openSUSE:Factory/.gfxboot.new.2401 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gfxboot" Sat Apr 10 15:26:13 2021 rev:165 rq:883831 version:4.5.75 Changes: -------- --- /work/SRC/openSUSE:Factory/gfxboot/gfxboot.changes 2021-02-07 15:14:01.841387192 +0100 +++ /work/SRC/openSUSE:Factory/.gfxboot.new.2401/gfxboot.changes 2021-04-10 15:26:32.882319925 +0200 @@ -1,0 +2,9 @@ +Thu Apr 8 11:47:18 UTC 2021 - wfe...@opensuse.org + +- merge gh#openSUSE/gfxboot#51 +- remove changelog file +- update git2log to latest version +- remove .gitignore +- 4.5.75 + +-------------------------------------------------------------------- Old: ---- gfxboot-4.5.74.tar.xz New: ---- gfxboot-4.5.75.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gfxboot.spec ++++++ --- /var/tmp/diff_new_pack.KiiaqA/_old 2021-04-10 15:26:33.442320584 +0200 +++ /var/tmp/diff_new_pack.KiiaqA/_new 2021-04-10 15:26:33.442320584 +0200 @@ -17,7 +17,7 @@ Name: gfxboot -Version: 4.5.74 +Version: 4.5.75 Release: 0 Summary: Graphical Boot Logo for GRUB, LILO and SYSLINUX License: GPL-2.0-or-later ++++++ KDE.tar.xz ++++++ ++++++ SLED.tar.xz ++++++ ++++++ SLES.tar.xz ++++++ ++++++ examples.tar.xz ++++++ ++++++ gfxboot-4.5.74.tar.xz -> gfxboot-4.5.75.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gfxboot-4.5.74/.gitignore new/gfxboot-4.5.75/.gitignore --- old/gfxboot-4.5.74/.gitignore 2021-02-01 12:15:04.000000000 +0100 +++ new/gfxboot-4.5.75/.gitignore 1970-01-01 01:00:00.000000000 +0100 @@ -1,2 +0,0 @@ -changelog -VERSION diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gfxboot-4.5.74/Makefile new/gfxboot-4.5.75/Makefile --- old/gfxboot-4.5.74/Makefile 2021-02-01 12:15:04.000000000 +0100 +++ new/gfxboot-4.5.75/Makefile 2021-04-08 13:47:18.000000000 +0200 @@ -12,10 +12,7 @@ .PHONY: all clean distclean doc install installsrc themes -all: changelog bin2c gfxboot-compile bincode gfxboot-font addblack - -changelog: $(GITDEPS) - $(GIT2LOG) --changelog changelog +all: bin2c gfxboot-compile bincode gfxboot-font addblack gfxboot-font: gfxboot-font.c $(CC) $(CFLAGS) -I /usr/include/freetype2 -lfreetype $< -o $@ @@ -70,10 +67,10 @@ cp -a themes/example* $(DESTDIR)/usr/share/gfxboot/themes cp -a bin test $(DESTDIR)/usr/share/gfxboot -archive: changelog +archive: mkdir -p package git archive --prefix=$(PREFIX)/ $(BRANCH) | tar --no-wildcards-match-slash --wildcards --delete 'gfxboot-*/themes' > package/$(PREFIX).tar - tar -r -f package/$(PREFIX).tar --mode=0664 --owner=root --group=root --mtime="`git show -s --format=%ci`" --transform='s:^:$(PREFIX)/:' VERSION changelog + tar -r -f package/$(PREFIX).tar --mode=0664 --owner=root --group=root --mtime="`git show -s --format=%ci`" --transform='s:^:$(PREFIX)/:' VERSION xz -f package/$(PREFIX).tar for i in $(THEMES) ; do \ git archive $(BRANCH) $$i | xz > package/$${i#*/}.tar.xz || break ; \ @@ -83,6 +80,7 @@ clean: themes doc @rm -f gfxboot-compile bincode gfxboot-font addblack bincode.h bin2c *.lst *.map vocabulary.inc vocabulary.h *.o *~ @rm -rf tmp package + @rm -f VERSION changelog distclean: clean @for i in themes/example* ; do make -C $$i clean || break ; done diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gfxboot-4.5.74/VERSION new/gfxboot-4.5.75/VERSION --- old/gfxboot-4.5.74/VERSION 2021-02-01 12:15:04.000000000 +0100 +++ new/gfxboot-4.5.75/VERSION 2021-04-08 13:47:18.000000000 +0200 @@ -1 +1 @@ -4.5.74 +4.5.75 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gfxboot-4.5.74/changelog new/gfxboot-4.5.75/changelog --- old/gfxboot-4.5.74/changelog 2021-02-01 12:15:04.000000000 +0100 +++ new/gfxboot-4.5.75/changelog 1970-01-01 01:00:00.000000000 +0100 @@ -1,500 +0,0 @@ -2021-02-01: 4.5.74 - - merge gh#openSUSE/gfxboot#50 - - Do not generate .note.gnu.property section. - -2020-10-22: 4.5.73 - - Translated using Weblate (Hindi) - -2020-08-25: 4.5.72 - - Translated using Weblate (Persian) - - Translated using Weblate (Portuguese) - -2020-07-29: 4.5.71 - - Translated using Weblate (French) - - Translated using Weblate (Galician) - - Translated using Weblate (Hindi) - - Translated using Weblate (Russian) - - Translated using Weblate (Ukrainian) - - Translated using Weblate (Spanish) - - Added translation using Weblate (Persian) - -2020-06-15: 4.5.70 - - merge gh#openSUSE/gfxboot#48 - - add 'default' and 'https' install methods (bsc#1171018) - - adjust config file description - - add https dialog title - -2020-05-27: 4.5.69 - - merge gh#openSUSE/gfxboot#46 - - add F8-shortcut for language selection (jsc#SLE-12810, jsc#SLE-12479) - - actual implementation of language switch - -2020-04-14: 4.5.68 - - Translated using Weblate (Indonesian) - - Translated using Weblate (Swedish) - - Translated using Weblate (Thai) - -2020-02-26: 4.5.67 - - Translated using Weblate (Spanish) - -2020-02-11: 4.5.66 - - Translated using Weblate (Finnish) - -2020-01-29: 4.5.65 - - Translated using Weblate (Finnish) - -2020-01-16: 4.5.64 - - merge gh#openSUSE/gfxboot#44 - - rework font settings (bsc#1159874) - -2019-12-10: 4.5.63 - - Translated using Weblate (German) - -2019-12-09: 4.5.62 - - merge gh#openSUSE/gfxboot#43 - - prepare gfxboot for syslinux 6.x (jsc#SLE-2969) - - adjust gfxtest script to work with syslinux 6.x - -2019-12-07: 4.5.61 - - Translated using Weblate (Chinese (China)) - -2019-12-06: 4.5.60 - - Translated using Weblate (Czech) - - Translated using Weblate (Danish) - -2019-12-05: 4.5.59 - - Translated using Weblate (German) - - Translated using Weblate (Portuguese (Brazil)) - - Translated using Weblate (Slovak) - -2019-12-05: 4.5.58 - - Translated using Weblate (Catalan) - - Translated using Weblate (Japanese) - -2019-12-05: 4.5.57 - - merge gh#openSUSE/gfxboot#42 - - rebuild font file to support latest language additions - - make more boot menu texts translatable - -2019-12-04: 4.5.56 - - merge gh#openSUSE/gfxboot#21 - - Add Kazakh translation. - - Add Kazakh language definition. - - Add Kazakh to the list of languages. - -2019-11-05: 4.5.55 - - Translated using Weblate (Indonesian) - -2019-10-29: 4.5.54 - - Translated using Weblate (Indonesian) - -2019-10-23: 4.5.53 - - Translated using Weblate (Estonian) - -2019-10-22: 4.5.52 - - Translated using Weblate (Spanish) - -2019-08-17: 4.5.51 - - Translated using Weblate (Portuguese) - -2019-04-05: 4.5.50 - - merge gh#openSUSE/gfxboot#38 - - fix SLES splash calculation (bsc#1129387) - -2019-03-12: 4.5.49 - - merge gh#openSUSE/gfxboot#37 - - Replace master-bood-code by syslinux version - -2019-02-05: 4.5.48 - - merge gh#openSUSE/gfxboot#35 - - ensure theme builds are reproducible (bsc#1124165) - - adjust unpack_bootlogo script - -2018-09-10: 4.5.47 - - Translated using Weblate (Arabic) - -2018-06-19: 4.5.46 - - merge gh#openSUSE/gfxboot#34 - - rework video mode list composition (bsc#1096971) - - remove obsolete qemu options from gfxboot script - -2018-06-12: 4.5.45 - - merge gh#openSUSE/gfxboot#33 - - don't crash if vbe video mode list is empty (bsc#1096971) - - replace genisoimage with mkisofs - -2018-04-27: 4.5.44 - - Translated using Weblate (Greek) - -2018-04-27: 4.5.43 - - Translated using Weblate (Greek) - -2018-04-27: 4.5.42 - - merge gh#openSUSE/gfxboot#31 - - enhance documentation - - add sample screenshots - - merge gh#openSUSE/gfxboot#32 - - update git2log script - -2018-04-09: 4.5.41 - - Translated using Weblate (Catalan) - -2018-04-03: 4.5.40 - - Translated using Weblate (Indonesian) - -2018-03-24: 4.5.39 - - Translated using Weblate (Spanish) - -2018-03-22: 4.5.38 - - Translated using Weblate (Portuguese) - -2018-03-22: 4.5.37 - - Translated using Weblate (Portuguese) - -2018-03-08: 4.5.36 - - Translated using Weblate (Galician) - -2018-03-03: 4.5.35 - - Translated using Weblate (French) - - Translated using Weblate (Danish) - -2018-02-26: 4.5.34 - - Translated using Weblate (Dutch) - -2018-02-21: 4.5.33 - - Translated using Weblate (Dutch) - -2018-02-21: 4.5.32 - - Translated using Weblate (Ukrainian) - -2018-02-20: 4.5.31 - - Translated using Weblate (Finnish) - -2018-02-20: 4.5.30 - - Translated using Weblate (Finnish) - -2018-02-02: 4.5.29 - - Translated using Weblate (Indonesian) - -2018-01-31: 4.5.28 - - Translated using Weblate (Danish) - -2018-01-31: 4.5.27 - - Translated using Weblate (Catalan) - -2018-01-28: 4.5.26 - - Translated using Weblate (Danish) - -2018-01-26: 4.5.25 - - Translated using Weblate (Slovak) - - Translated using Weblate (Japanese) - -2018-01-23: 4.5.24 - - merge gh#openSUSE/gfxboot#29 - - add config file entries to specify a title for the main screen - (bsc#1077188) - - fix bug processing serial menu entries (bsc#1075852) - -2017-10-05: 4.5.23 - - merge gh#openSUSE/gfxboot#27 - - fix linear framebuffer activation (bsc#1061383) - - add gfx mode number and framebuffer address to debug status - -2017-09-12: 4.5.22 - - merge gh#openSUSE/gfxboot#26 - - prefer linear framebuffer modes for drawing (bsc#980570) - - bincode: Fix coreboot LFB mode - - color bits detection: add workaround for broken vbe info - - better fallback video mode selection - -2017-05-09: 4.5.21 - - merge gh#openSUSE/gfxboot#24 - - fix UK keyboard setting (bsc#1033202) - -2016-11-23: 4.5.20 - - merge gh#openSUSE/gfxboot#22 - - adjust keymap names to be consistent again (bsc#1009914) - - update git2log script - -2016-11-07: 4.5.19 - - merge gh#openSUSE/gfxboot#20 - - Update ca.po - -2016-10-19: 4.5.18 - - merge gh#openSUSE/gfxboot#16 - - Update lt.po - - merge gh#openSUSE/gfxboot#18 - - Update ca.po - -2016-10-17: 4.5.17 - - merge gh#openSUSE/gfxboot#15 - - fix bug calculating video and xvideo options (bsc#780621) - -2016-10-14: 4.5.16 - - merge gh#openSUSE/gfxboot#14 - - updated sound samples - - updated texts that are run through espeak - - adjust to changed sox syntax - - re-rendered font - - ensure sound samples are loaded only once - - one more text to sample - - again updated sound samples - - use new functions to pass on video menu settings to bootloader - - adjust to new menu engine - - adjust to new menu engine - - rework video mode menu - - implement enhanced menu layout engine - -2016-09-13: 4.5.15 - - merge gh#openSUSE/gfxboot#11 - - Adapted to the new keymaps used by linuxrc and YaST - -2016-08-08: 4.5.14 - - merge gh#openSUSE/gfxboot#10 - - fix boot-label redrawing after language change (bsc#988392) - -2016-06-13: 4.5.13 - - merge gh#openSUSE/gfxboot#8 - - make 'systemboot' and 'more' menu entries translatable - - updated translations - -2015-12-04: 4.5.12 - - merge gh#openSUSE/gfxboot#4 - - fix booting from submenu (bsc#957893) - -2015-11-12: 4.5.11 - - merge gh#openSUSE/gfxboot#3 - - implement support for sub-menues (bsc#906990) - - documented submenu syntax - - show submenu indicator in RTL layout - - on leaving a submenu, restore cursor position - -2015-10-19: 4.5.10 - - update translations (bsc#950962) - -2015-10-01: 4.5.9 - - implement LEAP boot splash - -2015-09-29: 4.5.8 - - merge gh#openSUSE/gfxboot#2 - - Add a basic README.md - -2014-10-14: 4.5.7 - - updated git2log - - added 'archive' Makefile target - -2014-10-02: 4.5.6 - - work around memory corruption issue seen on hyper-v (bnc#876640) - -2014-09-17: 4.5.5 - - remove duplicate 'Default' from po file - - translation update - - translation update 2 - - recreated font to match latest translations - - fix compiler warning - -2014-08-25: 4.5.4 - - added two more texts to pot file - -2014-08-25: 4.5.3 - - adjust network dialog to latest linuxrc - - make 'Upgrade" translatable - -2014-01-24: 4.5.2 - - set min video mode to 1024x576 - - hrvoje.senjan: use FT_SYNTHESIS_H macro - - fix compiler warning - -2012-10-01: 4.5.1 - - start using 'default' video entry - -2012-03-28: 4.5.0 - - rework monitor detection new video selection menu - - ddc test record - -2011-10-13: 4.4.7 - - fix isohybrid detection - -2011-10-13: 4.4.6 - - don't set init boot option (bnc#723678) - -2011-09-02: 4.4.5 - - make systemd default - -2011-09-02: 4.4.4 - - use isolinux-config from package - - add config option for default init program - -2011-07-07: 4.4.3 - - update upstream theme - - added KDE theme - -2011-07-07: 4.4.2 - - fix script in case we are on no branch - - added menu to select init variant (bnc#704417) - -2011-04-18: 4.4.1 - - pass cwd via sysconfig - - pass back working dir as absolute path - - fix wrong mem access - - restore compat with syslinux 3 - -2011-04-07: 4.4.0 - - rewrite chdir to work without bootloader chdir support - - set version to oS 11.5 - -2011-02-24: 4.3.8 - - default to hd install with isohybrid boot from hd - -2011-02-21: 4.3.7 - - new oS 11.4 branding - -2011-01-13: 4.3.6 - - fix autoselection of emulator for "gfxboot -p" (bnc#661832) - - add qemu-kvm to the list auf autoselected emulators (bnc#661832) - - update virtual box support - -2010-10-27: 4.3.5 - - avoid dialogs wider than screen - -2010-10-04: 4.3.4 - - create VERSION and changelog from git repo - - remove VERSION - -2010-10-04: 4.3.3 - - updated help text translations (bnc#551046) - -2010-10-04: 4.3.2 - - updated translations (bnc#551046) - -2010-09-03: 4.3.1 - - show real product name on serial console (bnc#634299) - - new tag - -2010-08-05: 4.3.0 - - add 'lang' option if language has been changed [used to be: if != - en_US] (bnc#619983) - - keyboard label was not translatable (bnc#610638) - -2010-07-05: 4.2.3 - - updated translations (bnc#619513) - -2010-06-25: 4.2.2 - - updated translations - -2010-05-31: 4.2.1 - - clear font flags when setting an undefined font (bnc#609755) - -2010-05-20: 4.2.0 - - don't abuse bit 31 in font pointer (bnc#599478) - - turn on ints explicitly - - better memory dump - -2010-05-19: 4.1.47 - - openSUSE 11.3 theme - -2010-04-30: 4.1.46 - - strip gfxboot.com related parts from syslinux-3.86 patchset - - added Asturian (bnc#562202) - - fixed examples to work with latest gfxboot.c32 - - set valid tss for pm calls - - new version - -2010-04-16: 4.1.44 - - fix help text formatting - -2010-04-16: 4.1.43 - - reset progress bar status after error - -2010-04-09: 4.1.42 - - add patches for syslinux 3.86 - - prefer gfxboot.c32 over gfxboot.com - -2009-12-10: 4.1.41 - - leave more room for timeout indicator (bnc#551718) - - center main menu (bnc#562089) - -2009-11-16: 4.1.40 - - syslinux patch: fix chdir() return value - -2009-10-30: 4.1.39 - - updated translations (bnc#551046) - - updated help text translations - -2009-10-29: 4.1.38 - - added --no-unpack option - - menu layout can be in high memory - - extend interface so it works with gfxboot.c32 - - add gfxboot.c32 patch - -2009-10-19: 4.1.37 - - get kernel size right - - fix syslinux setup - - fix progress indicator for PXE boot - -2009-10-19: 4.1.36 - - more examples - - more examples - - set correct timeout value - - set correct timeout value - - localboot should return to text mode - -2009-10-15: 4.1.35 - - added some sample themes - - improved gfxtest script - - install examples - -2009-10-15: 4.1.34 - - support pxe setup in test script - - added patches for syslinux 3.83 - -2009-10-12: 4.1.33 - - updated speech samples - -2009-10-12: 4.1.32 - - added swiss french keymap - -2009-10-07: 4.1.31 - - added syslinux-3.82 patchset - - updated keyboard mapping list - - make keytable handling more consistent - - new keyboard mappings, new font - - the new maps - -2009-10-02: 4.1.30 - - fix pot - -2009-09-30: 4.1.29 - - log more data to allow easier font size adjustments - - new font - - cleaned up po files - - more flexible translation support - - livecd: add F4=kerneloptions - -2009-09-29: 4.1.28 - - set default install type correctly (bnc#542781) - -2009-09-28: 4.1.27 - - make new network dialog translatable - - updated language list - - fixed grub picture (bnc#542113) - -2009-09-24: 4.1.26 - - escape weird chars in URLs - -2009-09-18: 4.1.25 - - unified config file - - added memcheck option - - removed old config copies - - fixed evil bug - - F-key assignments configurable via gfxboot.cfg - -2009-09-15: 4.1.24 - - added proxy setup (bnc#329668) - -2009-09-14: 4.1.23 - - fix some nasm warnings - - up version number - - updated 11.2 openSUSE theme (bnc#538949) - - added network config dialog - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gfxboot-4.5.74/git2log new/gfxboot-4.5.75/git2log --- old/gfxboot-4.5.74/git2log 2021-02-01 12:15:04.000000000 +0100 +++ new/gfxboot-4.5.75/git2log 2021-04-08 13:47:18.000000000 +0200 @@ -33,6 +33,7 @@ sub format_all_logs; sub fix_dates; sub add_line_breaks; +sub add_bugzilla_to_weblate; sub format_date_obs; sub format_date_iso; sub raw_date_to_s; @@ -62,6 +63,7 @@ my $opt_join_author = 1; # join consecutive commit messages as long as they are by the same author my $opt_keep_date = 1; # don't join consecutive commit messages if they have different time stamps my $opt_default_email = 'opensuse-packag...@opensuse.org'; # default email to use in changelog +my $opt_weblate = 'bsc#1149754'; # bugzilla ref to use for Weblate commits GetOptions( 'help' => sub { usage 0 }, @@ -78,6 +80,7 @@ 'keep-date!' => \$opt_keep_date, 'log|changelog' => \$opt_log, 'default-email=s' => \$opt_default_email, + 'weblate=s' => \$opt_weblate, ) || usage 1; # ensure we are used correctly @@ -166,7 +169,7 @@ --version Write version number to FILE. --branch Write current branch to FILE. --start START_TAG Start with tag START_TAG. - --max N Write at most MAX long entries. + --max N Write at most N log entries. --update Write changelog or version only if FILE is outdated. --format FORMAT Write log using FORMAT. Supported FORMATs are 'internal' (default) and 'obs'. --width WIDTH Reformat log entries to be max WIDTH chars wide. @@ -180,6 +183,7 @@ --no-keep-date Join consecutive commits even if dates differ. --default-email Use this email in changelog entries if no other suitable email could be determined (default: opensuse-packaging\@opensuse.org). + --weblate STRING Add this STRING to every auto-generated Weblate commit. --help Print this help text. usage @@ -258,6 +262,8 @@ # # Only tags recognized by is_formatted_tag() are considered. # +# Tags inside merge commits are ignored. +# # The parsed logs is stored in $config->{log}, an array of log sections. # Each section is a hash with these keys: # - 'tags': array of tags for this section @@ -266,15 +272,40 @@ # sub get_tags { - my $log_entry; + my $pre_parsed; + my $current; for (@{$config->{raw_log}}) { if(/^commit (\S+)( \((.*)\))?/) { - my $commit = $1; - my $tag_list = $3; - my $xtag; + $current = { commit => $1, tag_list => $3 }; + push @$pre_parsed, $current; + } + + next if !defined $current; + + if(/^Merge: (\S+) (\S+)/) { + $current->{merge_end} = $1; + $current->{merge_start} = $2; + } + + push @{$current->{lines}}, $_; + } + + # the end of the merge commit if in a merge + my $merge; + my $log_entry; + + for my $p (@$pre_parsed) { + my $xtag; - for my $t (split /, /, $tag_list) { + # we have reached the end of the merge commit + if((defined($merge) && $p->{commit} =~ /^$merge/) || (!defined($merge) && $p->{merge_end})) { + undef $merge; + } + + # ignore tag info inside a merge commit + if(!$merge) { + for my $t (split /, /, $p->{tag_list}) { if($t =~ /tag: (\S+)/) { my $tag = $1; my $x = is_formatted_tag $tag; @@ -282,19 +313,27 @@ } } - if($xtag) { - if($log_entry) { - push @{$config->{log}}, $log_entry; - last if $opt_max && @{$config->{log}} >= $opt_max; - } - $log_entry = { commit => $commit, tags => $xtag }; + if($p->{merge_end}) { + # remember end of current merge commit + $merge = $p->{merge_end}; } - else { - $log_entry = { commit => $commit } if !$log_entry; + } + + if(!$log_entry) { + $log_entry = { commit => $p->{commit} }; + $log_entry->{tags} = $xtag if $xtag; + push @{$config->{log}}, $log_entry; + } + else { + if($xtag) { + $log_entry = { commit => $p->{commit}, tags => $xtag }; + push @{$config->{log}}, $log_entry; } } - push @{$log_entry->{lines}}, $_ if $log_entry; + push @{$log_entry->{lines}}, @{$p->{lines}}; + + last if $opt_max && @{$config->{log}} >= $opt_max; } } @@ -456,6 +495,23 @@ @t = sort tag_sort @t; $branch = $t[0]{branch}; + + # Here's some magic: + # + # If a commit is tagged "FOO-X.Y" *and* "FOO-X.Y.0" assume the user + # wants to start a new sub-numbering scheme. + # + # Use "X.Y" as version but remember to go to "X.Y.1" instead of + # "X.{Y+1}" when we need to increment the version. + # + my $version = $t[0]{version}; + if($version =~ s/\.0$//) { + if(grep { $_->{branch} eq $branch && $_->{version} eq $version } @t) { + $t[0]{new_start} = 1; + $t[0]{version} = $version; + } + } + $x->{tags} = [ $t[0] ]; # printf "X %s\n", tags_to_str($x->{tags}); @@ -470,6 +526,8 @@ # # Basically, use branch + version from most recent tag and increment version. # +# If the 'new_start' attribute to tag is set, start a new sub-numbering scheme. +# sub add_head_tag { return if @{$config->{log}} < 2; @@ -480,6 +538,9 @@ # the first tagged commit if HEAD isn't tagged my $tag = { %{$config->{log}[1]{tags}[0]} }; + # append '.0' to version + $tag->{version} .= '.0' if $tag->{new_start}; + # increment version $tag->{version} =~ s/(\d+)$/$1 + 1/e; @@ -575,7 +636,6 @@ my $merge; my $commit; - my $saved_commit; my $commits; for (@{$log->{lines}}) { @@ -593,67 +653,57 @@ if($merge) { $commit->{merge_ref} = $merge->{ref}; $commit->{date} = $merge->{date}; + $commit->{author} = $merge->{author}; # add to all commits so it's not lost when we re-arrange - $commit->{merge_msg} = $merge->{msg} if $merge->{msg}; - # saved entry no longer needed - undef $saved_commit; + $commit->{merge_msg} = $merge->{msg}; } next; } - if(/^Merge: (\S+)/) { + if(/^Merge: (\S+)/ && !$merge) { if($commit) { $merge = { merge_end => $1, ref => $commit->{ref} } unless $merge; - $saved_commit = pop @{$commits}; } - undef $commit; next; } if(/^Date:\s+(\S.*)/) { - if($commit) { - $commit->{date} = $1 if !$commit->{date}; - } - elsif($merge) { - $merge->{date} = $1 if !$merge->{date}; - } + $commit->{date} ||= $1 if $commit; + $merge->{date} ||= $1 if $merge; next; } if(/^Author:\s+(\S.*)/) { - $commit->{author} = $1 if $commit; - $merge->{author} = $1 if $merge && !$merge->{author}; + $commit->{author} ||= $1 if $commit; + $merge->{author} ||= $1 if $merge; next; } - if($commit) { - push @{$commit->{lines}}, $_ if s/^ //; - } - elsif($merge && !$merge->{msg}) { + if($merge) { if(/^ Merge pull request (#\d+) from (\S+)/) { if($config->{github_project}) { - $merge->{msg} = "merge gh#$config->{github_project}$1"; + push @{$merge->{msg}}, "merge gh#$config->{github_project}$1"; } else { - $merge->{msg} = "merge pr $2"; + push @{$merge->{msg}}, "merge pr $2"; } } - elsif(/^ Merge branch '([^']+)'/) { - $merge->{msg} = "merge branch $1"; + elsif(/^ Merge branch '([^']+)'( into)?/) { + push @{$merge->{msg}}, "merge branch $1" if $2 eq ""; + } + elsif(/^ Merge remote-tracking branch /) { + # ignore + } + elsif(s/^ //) { + push @{$commit->{lines}}, $_ unless /^# /; + } + } + elsif($commit) { + if(s/^ //) { + push @{$commit->{lines}}, $_ unless /^# /; } } - } - - # it can happen that there's a lonely merge commit left at the end - if($merge && $saved_commit) { - $saved_commit->{merge_ref} = $merge->{ref}; - $saved_commit->{date} = $merge->{date}; - $saved_commit->{author} = $merge->{author}; - $saved_commit->{merge_msg} = $merge->{msg} if $merge->{msg}; - $saved_commit->{formatted} = []; - - push @{$commits}, $saved_commit; } # Note: the individual steps below work on the array @$commits and modify @@ -671,6 +721,11 @@ my $tagged_merges = {}; for my $commit (@$commits) { + # skip leading empty lines + for (@{$commit->{lines}}) { + last if !/^\s*$/; + shift @{$commit->{lines}}; + } my $para_cnt = 0; my $delete_all = 0; my $delete_first = 0; @@ -735,7 +790,7 @@ for my $commit (@$commits) { next unless $commit->{formatted}; for (@{$commit->{formatted}}) { - s/(fate|bnc|bsc)\s*(#\d+)/\L$1\E$2/ig; + s/(fate|bnc|bsc|boo|jsc)\s*(#[a-z\d\-]+)/\L$1\E$2/ig; } } @@ -751,10 +806,10 @@ $merge_logged->{$commit->{merge_ref}} = 1; if($commit->{merge_msg}) { if($opt_merge_msg_before) { - unshift @{$commit->{formatted}}, $commit->{merge_msg}; + unshift @{$commit->{formatted}}, @{$commit->{merge_msg}}; } else { - push @{$commit->{formatted}}, $commit->{merge_msg}; + push @{$commit->{formatted}}, @{$commit->{merge_msg}}; } } } @@ -802,6 +857,46 @@ } # step 8 + # - remove identical lines + + for my $commit (@$commits) { + next unless $commit->{formatted}; + my %k; + $commit->{formatted} = [ grep { !$k{$_}++ } @{$commit->{formatted}} ] + } + + # step 9 + # - remove shortened lines (that match the beginning of other lines) + + for my $commit (@$commits) { + next unless $commit->{formatted}; + + # return 1 if some other commit line starts with function arg + my $is_substr = sub { + my $str = $_[0]; + $str =~ s/\s*???$//; # github likes to shorten lines with ' ???' + my $str_len = length $str; + for (@{$commit->{formatted}}) { + return 1 if $str_len < length($_) && $str eq substr($_, 0, $str_len); + } + + return 0; + }; + + $commit->{formatted} = [ grep { ! $is_substr->($_) } @{$commit->{formatted}} ] + } + + # step 10 + # - add bugzilla reference to Weblate commits + + for my $commit (@$commits) { + next unless $commit->{formatted}; + for (@{$commit->{formatted}}) { + $_ = add_bugzilla_to_weblate $_; + } + } + + # step 11 # - add line breaks for my $commit (@$commits) { @@ -811,7 +906,7 @@ } } - # step 9 + # step 12 # - generate final log message # # note: non-(open)suse email addresses are replaced by $opt_default_email @@ -897,6 +992,27 @@ } +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +# new_text = add_bugzilla_to_weblate(text) +# +# Add bugzilla number to an auto-generated Weblate commit. +# - text: some text +# - new_text: same text, "($opt_weblate)" added +# +sub add_bugzilla_to_weblate +{ + my $text = @_[0]; + + if($opt_weblate ne "") { + if($text =~ /Translated using Weblate/ && $text !~ /\($opt_weblate\)/) { + $text .= " ($opt_weblate)"; + } + } + + return $text; +} + + # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # seconds = raw_date_to_s(git_date) # ++++++ openSUSE.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/themes/openSUSE/po/si.po new/themes/openSUSE/po/si.po --- old/themes/openSUSE/po/si.po 1970-01-01 01:00:00.000000000 +0100 +++ new/themes/openSUSE/po/si.po 2021-04-08 13:47:18.000000000 +0200 @@ -0,0 +1,494 @@ +# LANGUAGE translations for boot loader +# Copyright (C) 2005 SUSE Linux GmbH +# +msgid "" +msgstr "" +"Project-Id-Version: bootloader\n" +"PO-Revision-Date: 2005-07-27 11:49+0200\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: si\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. ok button label +#. txt_ok +msgid "OK" +msgstr "" + +#. cancel button label +#. txt_cancel +msgid "Cancel" +msgstr "" + +#. reboot button label +#. txt_reboot +msgid "Reboot" +msgstr "" + +#. continue button label +#. txt_continue +msgid "Continue" +msgstr "" + +#. txt_install +msgid "Installation" +msgstr "" + +#. txt_safe_linux +msgid "Linux--Safe Settings" +msgstr "" + +#. txt_boot_harddisk +msgid "Boot from Hard Disk" +msgstr "" + +#. txt_rescue +msgid "Rescue System" +msgstr "" + +#. txt_memtest +msgid "Memory Test" +msgstr "" + +#. txt_bootoptions +msgid "Boot Options" +msgstr "" + +#. window title for exit dialog +#. txt_exit_title (see txt_exit_dialog) +msgid "Exiting..." +msgstr "" + +#. txt_exit_dialog +msgid "" +"You are leaving the graphical boot menu and\n" +"starting the text mode interface." +msgstr "" + +#. txt_help +msgid "Help" +msgstr "" + +#. window title for kernel loading (see txt_load_kernel) +#. txt_load_kernel_title +msgid "Starting..." +msgstr "" + +#. Keep the three newlines! +#. txt_load_kernel +msgid "" +"Loading Linux Kernel\n" +"\n" +"\n" +msgstr "" + +#. Keep the three newlines! +#. txt_load_memtest +msgid "" +"Loading memtest86\n" +"\n" +"\n" +msgstr "" + +#. info box title +#. txt_info_title +msgid "Boot Loader" +msgstr "" + +#. error box title +#. txt_error_title +msgid "I/O Error" +msgstr "" + +#. boot disk change dialog title +#. txt_change_disk_title +msgid "Change Boot Disk" +msgstr "" + +#. txt_insert_disk +#, c-format +msgid "Insert boot disk %u." +msgstr "" + +#. txt_insert_disk2 +#, c-format +msgid "" +"This is boot disk %u.\n" +"Insert boot disk %u." +msgstr "" + +#. <product> is e.g. SuSE Linux X.Y or Enterprise Server Z +#. txt_insert_disk3 +#, c-format +msgid "" +"This is not a <product> boot disk.\n" +"Insert boot disk %u." +msgstr "" + +#. password dialog title +#. txt_password_title +msgid "Password" +msgstr "" + +#. txt_dud_ready +msgid "Get your driver update floppy ready." +msgstr "" + +#. power off dialog title +#. txt_power_off_title +msgid "Power Off" +msgstr "" + +#. txt_power_off +msgid "Halt the system now?" +msgstr "" + +#. menu entry for hard disk installation +#. txt_harddisk +msgid "Hard Disk" +msgstr "" + +#. dialog title for hard disk installation +#. txt_harddisk_title +msgid "Hard Disk Installation" +msgstr "" + +#. txt_hd_diskdevice +msgid "Disk Device (Scans All Disks If Empty)\n" +msgstr "" + +#. txt_directory +msgid "Directory\n" +msgstr "" + +#. dialog title for ftp installation +#. txt_ftp_title +msgid "FTP Installation" +msgstr "" + +#. txt_server +msgid "Server\n" +msgstr "" + +#. txt_password +msgid "Password\n" +msgstr "" + +#. label for ftp user input +#. txt_user1 +msgid "User (Anonymous Login If Empty)\n" +msgstr "" + +#. dialog title for nfs installation +#. txt_nfs_title +msgid "NFS Installation" +msgstr "" + +#. label for smb user input +#. txt_user2 +msgid "User (Uses \"guest\" If Empty)\n" +msgstr "" + +#. dialog title for smb installation +#. txt_smb_title +msgid "SMB (Windows Share) Installation" +msgstr "" + +#. dialog title for http installation +#. txt_http_title +msgid "HTTP Installation" +msgstr "" + +#. 'driver' as in '(hardware) driver update' +#. txt_driver_update +msgid "Driver" +msgstr "" + +#. as in Windows Authentication Domain +#. txt_domain +msgid "Domain\n" +msgstr "" + +#. button label for other/more options +#. txt_other_options +msgid "Other Options" +msgstr "" + +#. label for language selection +#. txt_language +msgid "Language" +msgstr "" + +#. txt_yes +msgid "Yes" +msgstr "" + +#. txt_no +msgid "No" +msgstr "" + +#. menu item for selecting a file +#. txt_file +msgid "File" +msgstr "" + +#. input label: share as in "Windows share" (SMB) +#. txt_share +msgid "Share\n" +msgstr "" + +#. txt_zenAuto +msgid "Automatic Mode" +msgstr "" + +#. txt_zenManual +msgid "Manual Mode" +msgstr "" + +#. txt_zenConfig +msgid "Configure Parameters on ZEN Partition" +msgstr "" + +#. txt_zenInstall +msgid "Install or Update ZEN Partition" +msgstr "" + +#. txt_zenLilo +msgid "Reinstall ZEN Partition Boot Loader" +msgstr "" + +#. txt_zenDisable +msgid "Disable ZEN Partition" +msgstr "" + +#. txt_zenEnable +msgid "Enable ZEN Partition" +msgstr "" + +#. video mode menu item +#. txt_text_mode +msgid "Text Mode" +msgstr "" + +#. menu item, like 'memory test' +#. txt_firmware +msgid "Firmware Test" +msgstr "" + +#. txt_dud_file_msg +#, wrap +msgid "" +"To load driver updates directly from CD-ROM,\n" +"enter the driver update file names (separated\n" +"by commas ',') here:\n" +msgstr "" + +#. install source menu title +#. ** please keep it really short (comparable to the english text) ** +#. txt_install_source +msgid "Source" +msgstr "" + +#. video mode/display size menu title +#. ** please keep it really short (comparable to the english text) ** +#. txt_video_mode +msgid "Video Mode" +msgstr "" + +#. driver update dialog title +#. -> txt_dud_file_msg +#. txt_driver_update2 +msgid "Driver Update" +msgstr "" + +#. menu label for selecting (cpu) architecture +#. like i386, x86-64, ppc +#. ** please keep it really short (comparable to the english text) ** +#. txt_arch +msgid "Arch" +msgstr "" + +#. menu label for selecting some (linux) kernel variant +#. ** please keep it really short (comparable to the english text) ** +#. txt_kernel +msgid "Kernel" +msgstr "" + +#. menu item for kernel variant (cf. txt_kernel) +#. txt_kernel_default +msgid "Default" +msgstr "" + +#. menu item for kernel variant (cf. txt_kernel) +#. -> like in txt_safe_linux +#. txt_kernel_safe +msgid "Safe Settings" +msgstr "" + +#. menu item for kernel variant (cf. txt_kernel) +#. -> similar to txt_noacpi_install +#. txt_kernel_noacpi +msgid "No ACPI" +msgstr "" + +#. menu item for kernel variant (cf. txt_kernel) +#. -> similar to txt_nolapic_install +#. txt_kernel_nolapic +msgid "No Local APIC" +msgstr "" + +#. main menu: start in system repair mode +#. txt_repain_system +msgid "Repair Installed System" +msgstr "" + +#. menu item +#. txt_mediacheck +msgid "Check Installation Media" +msgstr "" + +#. menu item for keyboard layout (please keep it short) +#. txt_keyboard +msgid "Keyboard" +msgstr "" + +#. menu title +#. txt_dud_download +msgid "Download Driver Update" +msgstr "" + +#. input label +#. txt_dud_enter_url +msgid "Enter Driver Update URL\n" +msgstr "" + +#. menu item +#. txt_http_proxy +msgid "HTTP Proxy" +msgstr "" + +#. menu item +#. txt_network_config +msgid "Network Config" +msgstr "" + +#. menu item +#. txt_no_network +msgid "No Network" +msgstr "" + +#. short menu item for manual network config (NOT some kind of manual) +#. txt_manual_network +msgid "Manual" +msgstr "" + +#. dialog title for manual network config +#. txt_manual_network_title +msgid "Manual Network Config" +msgstr "" + +#. label for gateway ip +#. txt_gateway_ip +msgid "Gateway\n" +msgstr "" + +#. label for dns domain name (like 'opensuse.org') +#. txt_domain_name +msgid "Domain Name\n" +msgstr "" + +#. label for netmask; 'Host IP' refers to label txt_host_ip above +#. txt_netmask +msgid "" +"Netmask\n" +"(or use '/N' notation with Host IP)\n" +msgstr "" + +#. label for Live CD installation +#. txt_live_kde +msgid "openSUSE Live (KDE)" +msgstr "" + +#. label for Live CD installation +#. txt_live_gnome +msgid "openSUSE Live (GNOME)" +msgstr "" + +#. menu label for an update (as opposed to a new installation) +#. txt_upgrade +msgid "Upgrade" +msgstr "" + +#. label for name server (network setup) +#. txt_nameservers +msgid "Name servers, separated by spaces\n" +msgstr "" + +#. label for ip address (network setup) +#. txt_host_ip +msgid "" +"IP address with network prefix\n" +"(Examples: 192.168.5.77/24 2001:db8:75:fff::3/64)\n" +msgstr "" + +#. menu item to signify no KMS (KMS = kernel mode setting - keep the english acronym) +#. txt_video_no_kms +msgid "No KMS" +msgstr "" + +#. menu item for booting an installed Linux system +#. txt_systemboot +msgid "Boot Linux System" +msgstr "" + +#. menu item selecting a submenu with more entries +#. txt_expert +msgid "More ..." +msgstr "" + +#. menu label for choosing installer screen size +#. txt_installer_size +msgid "Installer Size" +msgstr "" + +#. menu label for choosing text console size +#. txt_console_size +msgid "Text Console Size" +msgstr "" + +#. menu label for choosing screen size via BIOS +#. txt_video_bios_size +msgid "Video BIOS Size" +msgstr "" + +#. menu label for choosing the color scheme of the installer +#. txt_color_mode +msgid "Color Mode" +msgstr "" + +#. menu label for activating a screen reader (app reading screen content for blind people) +#. txt_screen_reader +msgid "Screen Reader" +msgstr "" + +#. menu label for a color mode (cf. /txt_color_mode) +#. txt_high_contrast +msgid "High Contrast" +msgstr "" + +#. menu label for a color mode (cf. /txt_color_mode) +#. txt_white_on_black +msgid "White on Black" +msgstr "" + +#. menu label for a color mode (cf. /txt_color_mode) +#. txt_cyan_on_black +msgid "Cyan on Black" +msgstr "" + +#. dialog title for https installation +#. txt_https_title +msgid "HTTPS Installation" +msgstr "" ++++++ upstream.tar.xz ++++++