Re: [RFR] templates://graphite-carbon/{graphite-carbon.templates}
Christian PERRIER wrote:
> (I had hard times understading what the package is exactly about as I
> was working offline. It often is a proof that more information is
> needed....What is "Graphite"? What is a "Twisted daemon"? etc.
There are several layers of baffling names here. AIUI:
* "Twisted" is a set of network server modules in Python that happen
to have originated as part of the "Twisted Reality" MUD.
* "Graphite" has nothing to do with libgraphite3; it is a Twisted web
application providing real-time visualisation and storage of
numeric time-series data. I assume the name is some sort of
reference to graphite being useful for writing.
* "Carbon" is a Twisted daemon that takes data from Graphite and
saves it as database files (presumably a reference to "carbon
copies").
I could also mention that the database system used is called "Whisper"
and the graphics library is "Cairo" (two more meaningless names!), but
do end-users of Carbon need to know about those? Why, come to that,
do they even need to know that the Python modules come from Twisted?
Why *is* the package called graphite-carbon? It's a set of Python
modules called carbon, so doesn't Debian's Python Policy require it to
be named "python-carbon"? Compare python-twisted, python-graphite,
and python-whisper...
The part that really mystifies me is this: does graphite-carbon
*require* python-graphite? If so, shouldn't it express some sort of
dependency (if only a "Suggests:")? If not, shouldn't the package
description explain the graphiteless use case?
Oh, and is there some connection to uwsgi-plugin-carbon?
> Still, several of my proposal do not depend on such information. I
> still feel that the package description needs to be completed, though.
Apart from anything else the package description needs to be converted
into grammatical English.
> Template: graphite-carbon/postrm_remove_databases
> Type: boolean
> Default: false
> +_Description: Remove whisper database files when purging the package?
Perhaps name the package so people don't think we're talking about
purging python-whisper. In fact, why mention whisper? Does carbon
store any other sort of database?
_Description: Remove database files when purging graphite-carbon?
> + The /var/lib/graphite/whisper directory contains the whisper database
> files.
> .
> + You may want to keep these database files even if you completely
> + remove the Carbon package, in case you plan to install another version
> + later on.
Calling it "Carbon" is a confusion of Python-package and
Debian-package names. And when you say "another version later on",
that has to be "a later version", doesn't it? Installing an *older*
version is liable to cause breakage. Probably I should just avoid the
issue:
You may want to keep these database files even if you completely
remove graphite-carbon, in case you plan to reinstall it later.
(I don't really understand why templates like this are required,
though. Why not just have databases kept on "remove" and deleted on
"purge"? Come to that, if users care so much about these databases,
shouldn't they be encouraged to keep backups?)
[...]
> Description: backend data caching and persistence daemon for Graphite
> - Carbon is an Twisted daemon that process incoming time-series
> + Carbon is an daemon that processes incoming time-series
> data and saves that data as Whisper database files on disc.
You caught the big grammar error, but there are also a couple of
smaller problems; for instance it's "on disk", but there's no point
mentioning that anyway (if it's being saved into database files, I
don't think the default place to put them is a ramfs).
Carbon is a daemon that processes incoming time-series data and saves
it as Whisper database files.
> .
> - Carbon daemon is needed for an fully functional graphite-web app.
> + The Carbon daemon is mandatory for an fully functional Graphite
> + web application.
Another "s/an/a/". But much more importantly: if the relationship
between graphite and carbon is so strong, why is this control file
only mentioning it here in the Description and not the Recommends or
Depends fields for both packages?
Maybe (just maybe - we badly need developer feedback!) it should be:
Description: backend data caching and persistence daemon for Graphite
Graphite is a web application using the Twisted framework to provide
real-time visualization and storage of numeric time-series data.
.
The Carbon daemon processes the incoming time-series data and saves it
as Whisper database files.
--
JBR with qualifications in linguistics, experience as a Debian
sysadmin, and probably no clue about this particular package
diff -ru graphite-carbon-0.9.9+debian.pristine/debian/control graphite-carbon-0.9.9+debian/debian/control
--- graphite-carbon-0.9.9+debian.pristine/debian/control 2012-04-07 21:25:05.000000000 +0100
+++ graphite-carbon-0.9.9+debian/debian/control 2012-04-18 10:07:26.547392684 +0100
@@ -15,7 +15,8 @@
${misc:Depends},
${python:Depends}
Description: backend data caching and persistence daemon for Graphite
- Carbon is an Twisted daemon that process incoming time-series
- data and saves that data as Whisper database files on disc.
+ Graphite is a web application using the Twisted framework to provide
+ real-time visualization and storage of numeric time-series data.
.
- Carbon daemon is needed for an fully functional graphite-web app.
+ The Carbon daemon processes the incoming time-series data and saves it
+ as Whisper database files.
diff -ru graphite-carbon-0.9.9+debian.pristine/debian/graphite-carbon.templates graphite-carbon-0.9.9+debian/debian/graphite-carbon.templates
--- graphite-carbon-0.9.9+debian.pristine/debian/graphite-carbon.templates 2012-04-07 21:25:05.000000000 +0100
+++ graphite-carbon-0.9.9+debian/debian/graphite-carbon.templates 2012-04-18 10:08:27.107392295 +0100
@@ -1,9 +1,9 @@
Template: graphite-carbon/postrm_remove_databases
Type: boolean
Default: false
-_Description: Should whisper database files removed then package is purged?
- The directory /var/lib/graphite/whisper contains the whisper database
+_Description: Remove database files when purging graphite-carbon?
+ The /var/lib/graphite/whisper directory contains the whisper database
files.
.
- If you are removing Carbon package in order to later install a more
- recent version the data should be kept.
+ You may want to keep these database files even if you completely
+ remove graphite-carbon, in case you plan to reinstall it later.
Template: graphite-carbon/postrm_remove_databases
Type: boolean
Default: false
_Description: Remove database files when purging graphite-carbon?
The /var/lib/graphite/whisper directory contains the whisper database
files.
.
You may want to keep these database files even if you completely
remove graphite-carbon, in case you plan to reinstall it later.
Source: graphite-carbon
Section: utils
Priority: optional
Maintainer: Jonas Genannt <jonas.genannt@capi2name.de>
Build-Depends: debhelper (>= 8), python-all (>= 2.6.6-3~)
Standards-Version: 3.9.3
DM-Upload-Allowed: yes
Homepage: https://launchpad.net/graphite
Package: graphite-carbon
Architecture: all
Depends: adduser,
python-twisted-core,
python-whisper,
${misc:Depends},
${python:Depends}
Description: backend data caching and persistence daemon for Graphite
Graphite is a web application using the Twisted framework to provide
real-time visualization and storage of numeric time-series data.
.
The Carbon daemon processes the incoming time-series data and saves it
as Whisper database files.
Reply to: