Scattered API documentation
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
libzeitgeist |
New
|
Undecided
|
Unassigned |
Bug Description
Hi,
I find it overly difficult to find the *right* documentation for the Zeitgeist DBus API or for libzeitgeist. I've broken down my rant into several points with fix ideas. The reason why I complain about this is that as a developer who's interested in using ZG, just writing up some basic hello world programs is hard not because the API is complicated but because I'm still not sure I have the good documentation for it...
1) Doc is hosted everywhere and nowhere
Problem: often googling for a libzeitgeist function will return old docs hosted by actual developers of the project. For instance http://
Fix: take down all the unofficial docs. Host the docs properly on zeitgeist-
2) Zeitgeist-
Problem a: there is no stable/
Fix a: create a "current" or "stable" symlink to the latest doc on the website and keep it up to date, make sure to write a robots.txt file that forbids indexing URLs with version numbers so that these are no longer found by accident.
Problem b: http://
Fix b: instead, it should return a list of available documentations per version and per programming language.
3) Version numbers are pretty inconsistent
Problem: [steve@Alcaniz ~]$ pacman -Ss zeitgeist
extra/libqzeitgeist 0.8.0-3 [installed]
A Qt interface to the Zeitgeist event tracking system
extra/libzeitgeist 0.3.18-4 [installed]
Zeitgeist client library
extra/zeitgeist 0.9.14-1 [installed]
Service logging user activities and events
community/
A graphical user interface which lets you easily control what gets logged by
Zeitgeist
community/
Tool for easily browsing and finding files on your computer using the
Zeitgeist engine
That's 4 different version numbers for a single project where all packages depend on one another.
Consequence: http://
http://
Fix: one single version number. Archive all the previously numbered doc in one place labelled "Archive" and reorganise the website so that people know if they're using the DBus doc, the C API, the Vala API, a general documentation on Zeitgeist's purpose and internals, etc. and so that people know what version of ZG AND libzg the doc refers to.
Why is it inconsistent to have several version numbers? API-wise the only thing that matters in a documentation is that you rewrite a function's doc when the API changes. And when the API changes you need to update most of the packages anyway since they use that very API! Hence it makes sense to bump their version number too and make sure that others know what you're serving them.
Thanks.