After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 688579 - Run xmllint or variant in make distcheck
Run xmllint or variant in make distcheck
Status: RESOLVED FIXED
Product: GnuCash
Classification: Other
Component: Documentation
git-master
Other Linux
: High enhancement
: ---
Assigned To: Yawar Amin
Tom Bullock
Depends on:
Blocks:
 
 
Reported: 2012-11-18 09:46 UTC by Geert Janssens
Modified: 2018-06-29 23:11 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Geert Janssens 2012-11-18 09:46:23 UTC
The current documentation build system doesn't have any validation checks built in currently. Since the documentation is in xml, we could use xmllint to at least verify the validity of the documentation files.
Comment 1 Frank H. Ellenberger 2013-12-05 21:19:09 UTC
Agreed, it would be easier to just run make check than remember the specific command.

In http://wiki.gnucash.org/wiki/Translation we suggest to run
 xmllint --valid --noout gnucash-guide.xml
or
 xmllint --valid --noout gnucash-help.xml
in the respective directories, but I am not shure, how to put it in the makefiles.
Comment 2 John Ralls 2013-12-10 19:49:21 UTC
r23533.
Comment 3 Frank H. Ellenberger 2013-12-10 22:43:29 UTC
Hi John,

that was so easy, I will remember the next time. 
But I have 2 annotations:

1. If xmllint is not installed, make check returns:
xmllint: command not found.
*** [check] error 127
:
make: *** [check-recursive] error 1
In make theory a broken environmemt should return 77

But for me it is OK as it stops with an error.

I had thought about checking the existence in configure, 
but for a non editor, e.g. a pure packager it is not really required.

2. IIRC Geert plans a separate 2.4 docs edition.
Then we should backport it.
Comment 4 Frank H. Ellenberger 2013-12-10 23:23:00 UTC
I made the backport in [23537]
and included [23532]:Rename configure.in to configure.ac
Comment 5 John Ralls 2013-12-11 01:37:28 UTC
(In reply to comment #3)
> Hi John,
> 
> that was so easy, I will remember the next time. 
> But I have 2 annotations:
> 
> 1. If xmllint is not installed, make check returns:
> xmllint: command not found.
> *** [check] error 127
> :
> make: *** [check-recursive] error 1
> In make theory a broken environmemt should return 77
> 
> But for me it is OK as it stops with an error.

Libxml2 is a requirement for building DocBook documents and is what supplies xmllint. How can it not be installed? Is some distro maintainer being obtuse and not packaging all of libxml2?

> 
> I had thought about checking the existence in configure, 
> but for a non editor, e.g. a pure packager it is not really required.

See 1. Although we don't check for libxml2 directly in configure, we *do* check for xsltproc, which also requires libxml2. 

> 
> 2. IIRC Geert plans a separate 2.4 docs edition.
> Then we should backport it.

For one more build?
Comment 6 Frank H. Ellenberger 2013-12-11 12:33:17 UTC
I am not shure, but as the  note about Debian in
http://wiki.gnucash.org/wiki/Translation#Prerequisite shows, some packagers do some additional splitting.
Comment 7 Geert Janssens 2013-12-11 15:12:03 UTC
(In reply to comment #5)
> (In reply to comment #3)
> > Hi John,
> > 
> > that was so easy, I will remember the next time. 
> > But I have 2 annotations:
> > 
> > 1. If xmllint is not installed, make check returns:
> > xmllint: command not found.
> > *** [check] error 127
> > :
> > make: *** [check-recursive] error 1
> > In make theory a broken environmemt should return 77
> > 
> > But for me it is OK as it stops with an error.
> 
> Libxml2 is a requirement for building DocBook documents and is what supplies
> xmllint. How can it not be installed? Is some distro maintainer being obtuse
> and not packaging all of libxml2?
> 
> > 
> > I had thought about checking the existence in configure, 
> > but for a non editor, e.g. a pure packager it is not really required.
> 
> See 1. Although we don't check for libxml2 directly in configure, we *do* check
> for xsltproc, which also requires libxml2. 
> 
It's easy to explicitly check for xmllint as well in case there are distributions that may package it independently. I have done so in r23540.

As to whether xmllint should be a mandatory requirement. I had a similar situation with the python bindings recently: to successfully run make check in the python bindings on Fedora, you need to install a separate python package to get the unit test stuff. Derek told me I should make that package a mandatory configure time dependency. The reasoning is that configure should set up everything so a user can run make distcheck without any missing dependencies. The same should go for gnucash-docs. To run make distcheck, we need xmllint.

> > 
> > 2. IIRC Geert plans a separate 2.4 docs edition.
> > Then we should backport it.
> 
> For one more build?

Did I say that ? I don't remember :)

There are a lot of patches backported to the 2.4 branch though, so I guess we should make sure our last 2.4 (the program) build should at least include these in its documentation.
Comment 8 Frank H. Ellenberger 2013-12-11 15:53:11 UTC
On the fly I found
https://lists.gnucash.org/pipermail/gnucash-devel/2012-November/034570.html:
"So based on this, I would plan at least one more documentation release as well and consider backporting of patches still useful.

Unless something urgent pops up, I would plan both releases somewhere close to the official 2.6 release."

but I believe there was also a later posting. I found it as I was wondering, why Cristian was always backporting hit patches.

(I still have to review and backport guide/de)
Comment 9 Geert Janssens 2013-12-11 15:59:11 UTC
Ah the wonderful time machine the internet is :)

So yes, the 2.4 docs will be released right before the 2.4 program will be. Do you have an indication when your guide/de backport will be ready ?
Comment 10 John Ralls 2013-12-11 17:05:30 UTC
(In reply to comment #9)
> Ah the wonderful time machine the internet is :)
> 
> So yes, the 2.4 docs will be released right before the 2.4 program will be. Do
> you have an indication when your guide/de backport will be ready ?

Same day, the 29th. I'm going to release everything together. 

BTW, is there any reason we're holding back converting gnucash-docs to git?
Comment 11 Frank H. Ellenberger 2013-12-11 17:18:24 UTC
Re c9: Another pointer in:
http://wiki.gnucash.org/wiki/index.php?title=Translation_Status&action=historysubmit&diff=10687&oldid=10485

Geert et. al. you should update that page, if you decide branching/merging
as cstim does for the po's.

[23541] Backport changes in guide/de up to [23523]
[23542] [23130] Fix outdated menu item as pointed out on gnucash-de by tom1492.

So the de branches should be fully backported.

Re c10: I have to confess I am still on svn.
Can you wait until after the release, because I still have a few commits in my brain.

I personally prefer serial revision numbers over obscure hash values.
Comment 12 Geert Janssens 2013-12-11 17:44:47 UTC
(In reply to comment #10)
> (In reply to comment #9)
> > Ah the wonderful time machine the internet is :)
> > 
> > So yes, the 2.4 docs will be released right before the 2.4 program will be. Do
> > you have an indication when your guide/de backport will be ready ?
> 
> Same day, the 29th. I'm going to release everything together. 
> 
> BTW, is there any reason we're holding back converting gnucash-docs to git?

In short: 2.4 build on windows, same reason we're holding back converting the gnucash repo to pure git.
Comment 13 Geert Janssens 2013-12-11 17:58:58 UTC
(In reply to comment #11)
> Re c9: Another pointer in:
> http://wiki.gnucash.org/wiki/index.php?title=Translation_Status&action=historysubmit&diff=10687&oldid=10485
> 
> Geert et. al. you should update that page, if you decide branching/merging
> as cstim does for the po's.
> 
It looks like you have been making some jumps in your head which I can't follow. I see this page says we won't do another 2.4 release (probably). I have changed this to note there will be one more release.

But it's not clear to me how this relates to cstim's po branching/merging.

> [23541] Backport changes in guide/de up to [23523]
> [23542] [23130] Fix outdated menu item as pointed out on gnucash-de by tom1492.
> 
> So the de branches should be fully backported.
> 
> Re c10: I have to confess I am still on svn.
> Can you wait until after the release, because I still have a few commits in my
> brain.
> 
As per my comment 12, we will have to. We can't release gnucash 2.4 with docs from git.

> I personally prefer serial revision numbers over obscure hash values.

I came from svn as you do and I thought I would miss those revision numbers. But I'm on git for some time now and I have never needed them ever since. gitk is my friend.
Comment 14 Frank H. Ellenberger 2013-12-27 01:19:25 UTC
Dupe of Bug 684696 ;-)
Comment 15 John Ralls 2018-06-29 23:11:49 UTC
GnuCash bug tracking has moved to a new Bugzilla host. This bug has been copied to https://bugs.gnucash.org/show_bug.cgi?id=688579. Please update any external references or bookmarks.