Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Should normal libgphoto2 builds stop updating the *.po files? #733

Open
ndim opened this issue Oct 15, 2021 · 1 comment · May be fixed by #731
Open

Should normal libgphoto2 builds stop updating the *.po files? #733

ndim opened this issue Oct 15, 2021 · 1 comment · May be fixed by #731
Assignees

Comments

@ndim
Copy link
Member

ndim commented Oct 15, 2021

Describe the bug

Often during make all (and always on make dist or make distcheck), the build system for po and libgphoto2_port/po will update the *.po files inside the respective po subdirectory.

As the *.po files are part of the git repository, this can be quite annoying as you often need to git restore '*.po' to be able to do your normal git tasks during development.

Name the camera
N/A

libgphoto2 and gphoto2 version
Any version of libgphoto2 and gphoto2 since the early 2000s, up to and including 2.5.27.1 currently in git master.

To Reproduce

[user@host ~]$ git clone https://github.com/gphoto/libgphoto2.git && cd libgphoto2
[…]
[user@host libgphoto2]$ autoreconf -vis && ./configure && make
[…]
[user@host libgphoto2]$ git status
[…]
Changes not staged for commit:
[…]
	modified:   libgphoto2_port/po/cs.po
[…]
	modified:   po/cs.po
[…]
[user@host libgphoto2]$ _

Possible fixes

If we update the version requirement of the gettext package to 0.19.1 (from 2014-06-10), we can decouple updating of the *.pot and *.po files from normal builds, and only update the *.po files specifically when needed (e.g. after a string freeze before a release).

The gettext-0.19.1 release is about one year younger (2014-06-10) than the release dates of the other tools I would otherwise update the buildsystem to (autoconf-2.69 from 2012-04-25 like libexif, automake-1.14 from 2013-06-20 like libexif, gettext-0.18.3 from 2013-07-07 like libexif). For comparison, Debian oldoldstable ships autoconf-2.69, automake-1.15, gettext-0.19.8.1.

Therefore I would argue that the benefits of updating the requirement to gettext-0.19.1 (not having to restore the *.po files all the time during normal development) is worth the potential hassle for the presumably very low number of people developing on systems which are even older than Debian oldoldstable. If someone wants to build on an older system, they should still be able to build a dist tarball (make dist) on a post-2014 machine and build that tarball on the older one.

I would update the gettext requirement as part of my effort to merge the libgphoto2_port/configure.ac file into the main configure.ac over at #731.

Alternatively, we can also keep handling the *.po files as we have done for the last ... years and just update the gettext requirement to 0.18.3 (2013-07-07, like libexif).

@ndim ndim self-assigned this Oct 15, 2021
@ndim ndim changed the title Building libgphoto2 often updates the *.po files Building libgphoto2 often updates the *.po files. Should it? Oct 17, 2021
@ndim ndim changed the title Building libgphoto2 often updates the *.po files. Should it? Should normal libgphoto2 builds stop updating the *.po files? Oct 18, 2021
@msmeissn
Copy link
Contributor

at some point the "make update-po" needs to be run to sync newly translated things in.
we can make this a manual step except having it in "make dist", but it might be easy to forget.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants