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 692421 - Can't see both 0.10 and 1.0 doc in devhelp
Can't see both 0.10 and 1.0 doc in devhelp
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: common
git master
Other All
: Normal normal
: 1.1.1
Assigned To: Stefan Sauer (gstreamer, gtkdoc dev)
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2013-01-24 00:39 UTC by Olivier Crête
Modified: 2013-01-28 19:43 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
gtk-doc*.mak: Put the API version in the html book name (1.97 KB, patch)
2013-01-24 00:39 UTC, Olivier Crête
none Details | Review
gtk-doc*.mak: Put the API version in the html book name (3.59 KB, patch)
2013-01-28 19:35 UTC, Stefan Sauer (gstreamer, gtkdoc dev)
none Details | Review

Description Olivier Crête 2013-01-24 00:39:41 UTC
Created attachment 234271 [details] [review]
gtk-doc*.mak: Put the API version in the html book name

It seems that the devhelp eliminates duplicated doc based on the book name. We don't set a versioned name there, so both 0.10 and 1.0 do have the same name.. Attached patch names it according to the API version.

@ensonic: Can you check if I understood the gtk-doc bit correctly?
Comment 1 Stefan Sauer (gstreamer, gtkdoc dev) 2013-01-24 10:39:55 UTC
The way to fix this is to set this tag
<ulink role="online-location" url="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/">...</ulink>
in gstreamer-docs.html
Comment 2 Tim-Philipp Müller 2013-01-24 11:00:24 UTC
The problem with that is of course that the 0.10 releases all used that URL as well, and we can't change that now, since we can't change the past.

However, we could use

 http://gstreamer.freedesktop.org/data/doc/gstreamer/1.0/gstreamer/html/

I was hoping/planning to have 1.0, 1.2, 1.4, etc. in future but the bit that's still missing is some makefile variable that maps 1.1.x to "1.2" and 1.3.x to 1.4. (Versus the old scheme where we had /0.10.35/ /0.10.35.1/ /0.10.36/, etc.

Point being that future versions (1.1.x, 1.2.x 1.3.x) may not end up in /1.0/
Comment 3 Stefan Sauer (gstreamer, gtkdoc dev) 2013-01-24 21:01:10 UTC
I've tried various things today. At first Oliviers changes won't hurt and makes things a little less special in our gtk-doc makefiles. Other projects like gtk use e.g. DOC_MODULE=gtk{2,3}. If we do this, we have to rename a couple of files though (gstreamer-docs.sgml -> gstreamer-1.0-docs.sgml). At that time we could also rename them to xml :)

On the actual problem, neither the patch attached here, nor what I proposed in #2 does fix the issue for me :/ I'll try to build devhelp myself and add some diagnostics.

Olivier, why do you think it is caused by the <ONLINE href>-tag in index.sgml? For example I can see gst-plugins-base-plugins for both 0.10 and 1.0, depite:

> head -n2 gst-plugins-base-plugins-{1.0,0.10}/index.sgml
==> gst-plugins-base-plugins-1.0/index.sgml <==
<ONLINE href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base/html/">
<ANCHOR id="gst-plugins-base-plugins-adder" href="gst-plugins-base-plugins-1.0/gst-plugins-base-plugins-adder.html">

==> gst-plugins-base-plugins-0.10/index.sgml <==
<ONLINE href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base/html/">
<ANCHOR id="gst-plugins-base-plugins-adder" href="gst-plugins-base-plugins-0.10/gst-plugins-base-plugins-adder.html">
Comment 4 Olivier Crête 2013-01-24 21:37:45 UTC
I had a look at the devhelp source code, the thing that matters is the "name" attribute in the <book> tag in the .devhelp2 file, and it seems to be directly set by the name passed to the gtkdoc-mkhtml command.
Comment 5 Olivier Crête 2013-01-24 21:38:41 UTC
For me, just changing the attribute in the installed file by hand fixed it.
Comment 6 Stefan Sauer (gstreamer, gtkdoc dev) 2013-01-25 17:06:37 UTC
Okay, I figured it out. We also need to update the part were we install the devhelp2 files:
@@ -289,9 +286,9 @@ install-data-local:
              $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \
            done; \
          fi; \
-         echo '-- Installing $(builddir)/html/$(DOC_MODULE).devhelp2' ; \
-         if test -e $(builddir)/html/$(DOC_MODULE).devhelp2; then \
-                   $(INSTALL_DATA) $(builddir)/html/$(DOC_MODULE).devhelp2 \
+         echo '-- Installing $(builddir)/html/$(DOC_MODULE)-@GST_API_VERSION@.devhelp2' ; \
+         if test -e $(builddir)/html/$(DOC_MODULE)-@GST_API_VERSION@.devhelp2; then \
+                   $(INSTALL_DATA) $(builddir)/html/$(DOC_MODULE)-@GST_API_VERSION@.devhelp2 \
                    $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_API_VERSION@.devhelp2; \
          fi; \
          $(GTKDOC_REBASE) --relative --dest-dir=$(DESTDIR) --html-dir=$(DESTDIR)$(TARGET_DIR) || true ; \

Olivier, can you update your change and push? Otherwise I can do it later tonight as well.
Comment 7 Stefan Sauer (gstreamer, gtkdoc dev) 2013-01-28 19:35:28 UTC
Created attachment 234646 [details] [review]
gtk-doc*.mak: Put the API version in the html book name
Comment 8 Stefan Sauer (gstreamer, gtkdoc dev) 2013-01-28 19:43:56 UTC
commit 2de221ce94b657f9c9a75aa3cc0cb84dbb5da78b
Author: Olivier Crête <olivier.crete@collabora.co.uk>
Date:   Mon Jan 28 20:28:09 2013 +0100

    gtk-doc*.mak: Put the API version in the html book name
    
    This causes devhelp2 files to get a version. Due to that devhelp can show it
    along with the 0.10 version.