Created attachment 1314044 [details] release 6 patches as git series Hi, Attached batch of patches in git format contains many changes. Summary list from %changelog: * Wed Aug 14 2017 Tomasz Kłoczko <kloczek> - 6.4-6 - remove Group tockens (Fedora Packaging Guidline) - remove static perl(Text::Unidecode), perl(Unicode::EastAsianWidth) perl(Data::Dumper) and perl(Locale::Messages) Requires. These dependencies are added automatically - added DEFAULT_INFOPATH patch: removed from info pages search path all not used paths (faster loading pages). Most of those paths are not even compliant with FHSv/v3 or even older FSSTND specyfications - added remove_us_ascii patch which removes install *us-asci copies of some .mo files (only UTF8 are needed) - help2man no longer needed - added "touch man/*.?" in %%prep - add use %%transfiletriggerin/%%transfiletriggerpostu scriptlets. By this no longer are needed info-dir and macros.info Source files because %%{_infodir}/dir will be regenerated out of all *.info files - added use %%autosetup in %%prep - simplification: added use --all-name in %%find_lang - tex subpackage %%post and %%postun are no longer needed as because TeX packages have similar global file triggers which are causing execution of the "texconfig-sys rehash" on any changes in TeX directory tree Executing "texconfig-sys rehash" in other packages own scriptlets makes almost two times longer instal/uninstall/upgrade texinfo-tex installation/upgrade/uninstall - use %%define (use stonger %%global is not needed) - added using more macros in %%build and %%install. Use %%_licensedir no longer needed - added use --without-included-regex (smaller binaries) - indent spec NOTE1: when info file triggers will be introduced it will be possible to remove from all other packages scriptlets using /sbin/install-info. As well installation of the Fedora with exclude doc installation will never be disrupted by some info scriptlets issues. Global exclusion install of the documentation can be enabled by add in /etc/rp/rpmrc line: %excludedoc 1 NOTE2: with info package new file trigger theoretically after remove all using /sbin/install-info in other packages should be possible to remove this binary but probably it will never gona happen. I know that list of changes is rather big an this is why I've added all changes in separated steps to make easier review. By mistake I've committed DEFAULT_INFOPATH and remove_us_ascii patches not with modyfication of the spec file but it is minor thing. Without new %changelog entry spec is about 2.2KB smaller which shows how many things was possible to simplify/reduce. Fill free do pick any of those patches or let me know which parts should be redone.
Created attachment 1314062 [details] texinfo.spec file after patching Added as an attachment texinfo.spec file after applying all patches to present easier all changes together.
Just one yet another comment. Lets assume that that at least %filetrigger changes will be accepted before committing those changes and sending texinfo to rebuild it would be good to sync such new release with remove all /sbin/install-info in all other packages for rawhide. I'm going to start looking how such change should be done to minimize time when other packages spec files may be failing by lack of some macros which which this set of changes removes as no longer needed. Any advice or even help with doing this will be welcome :)
Just FTR: another preparation to introduce changes in other packages which will be consequence of adding info package file triggers. I've done search across all Fedora packages git repositories. [tkloczko@domek fedora]$ find . -type f -name \*spec | xargs egrep -l '^%{_infodir}|/sbin/install-info' > info [tkloczko@domek fedora]$ wc -l info 280 info minus texinfo.spec file so it will be 279 packages currently in rawhide which can be simplified by remove all /sbin/install-info dependencies and %post/%postun scriptlets. As consequence it will reduce slightly as well size of dnf packages repositories indexes. This will reduce time of the package upgrades because instead updating %{_infidir}/dir on each package upgrade or install only one time at the and of all packages transactions will be regenerated info pages index file. Another observation: when dir file is regenerated out of all *info* files this file is longer than using current method. All because many info pages scriptlets are updating info file incorrectly. So on introduce proposed here texinfo package improvements quality of the main info pages index will be better as well.
Introducing file triggers is very good step forward in my opinion. I have just few notes: a) Looking into texinfo/contrib/README (because of fix-info-dir script), the code there is not officially part of Texinfo and it's not supported by upstream. It seems to work fine, but we should be double cautious:) b) fix-info-dir still uses install-info for adding/removing individual info files - this binary cannot be removed. c) To be on the safe side I would keep shipping info-dir and macros.info for a while. It wouldn't break file triggers functionality, but it could prevent fails of package builds (because of missing macros for example), right? Do you plan summarize your observations for fedora-devel mailing list? I think it could be beneficial as the change can affect a big amount of packages. I also reviewed the rest of changes and I see no problem there (just minor overlooks like bogus date in changelog entry and one or two blank spaces at the end of line - I'll fix that during the commit into dis-git). Thanks for your work!
Ad a, b) OK I was wrong about install-info :) Ad c) Yes other packages will fail by missing those macro. IMO better would be introduce change in texinfo without rpm macros to cut off ASAP all%post/%postun use install-info. With release of the new texinfo IMO sending to fedora-devel announcement explaining all what needs to be done should would be enough to remove all install-info use ASAP. If you want me to send such email I will be happy to do this :) If you want me to redo some of those changes please let me know.
One more thing. I just none egrep across all current Fedora spec files: [tkloczko@domek SPECS.fedora]$ egrep -l "info_post|info_requires|info_preun" * [tkloczko@domek SPECS.fedora]$ Looks like %info_post, %info_requires and %info_preun macros are not used at all so they can be removed without any additional consequences.
(In reply to Tomasz Kłoczko from comment #5) > Ad a, b) OK I was wrong about install-info :) > Ad c) Yes other packages will fail by missing those macro. > > IMO better would be introduce change in texinfo without rpm macros to cut > off ASAP all%post/%postun use install-info. With release of the new texinfo > IMO sending to fedora-devel announcement explaining all what needs to be > done should would be enough to remove all install-info use ASAP. > > If you want me to send such email I will be happy to do this :) OK, I agree. Please do the announcement. > > If you want me to redo some of those changes please let me know. There's one more issue caused by remove_us_ascii patch, see failing scratch build here: https://koji.fedoraproject.org/koji/taskinfo?taskID=21517473 It is because po_document/LINGUAS touched in the patch is source for tp/Makefile.docstr. I've manually regenerated the Makefile.docstr with the tp/mantain/regenerate_docstr.sh, added it to remove_us_ascii patch and fooled the configure script by touching both patched files with timestamp reference to Makefile.in to avoid messing with autotools. I'll attach updated patch and final spec file diff against your version from comment#1.
Created attachment 1319358 [details] updated version of remove_us_ascii.patch
Created attachment 1319359 [details] final diff of the spec file
I'm busy a bit now but will try to write draft of such email and attach it here to give you opportunity to review it. (I think that it would be good to have yet another pair of eyeballs before such announcement will be posted :)) Thx
Sorry I was busy and I still did not finish my announcement. Will try to finish and clean it tomorrow.
(In reply to Tomasz Kłoczko from comment #11) > Sorry I was busy and I still did not finish my announcement. Will try to > finish and clean it tomorrow. No problem, thanks.
This is pretty outdated and doesn't really work. I sent proper / working version at https://src.fedoraproject.org/rpms/texinfo/pull-request/1