Statistics
| Branch: | Tag: | Revision:

root @ f0e4b2a4

# Date Author Comment
f0e4b2a4 03/28/2013 03:13 pm Michele Tartara

Add data type for data collector category

Also, update the DRBD data collector to use and export it.

Signed-off-by: Michele Tartara <>
Reviewed-by: Bernardo Dal Seno <>

834dc290 03/28/2013 03:13 pm Michele Tartara

Export the dcVersionInformation for the Drbd collector

Also, update the JSON output (and the design document) so that it is not
in camelcase anymore. This is part of a bigger effort to remove camelcase
from the exposed JSON.

Signed-off-by: Michele Tartara <>...

a895fa19 03/28/2013 03:12 pm Michele Tartara

Add data collector version data type

Define the new data type and update the DRBD data collector to use it.

Signed-off-by: Michele Tartara <>
Reviewed-by: Bernardo Dal Seno <>

7a171e3f 03/28/2013 03:12 pm Michele Tartara

Fix comment line position in DRBD data collector

Signed-off-by: Michele Tartara <>
Reviewed-by: Bernardo Dal Seno <>

ddceb4c5 03/28/2013 03:12 pm Michele Tartara

Export dcName information of Drbd data collector

Signed-off-by: Michele Tartara <>
Reviewed-by: Bernardo Dal Seno <>

debfca88 03/28/2013 03:11 pm Michele Tartara

Change format of the empty status message

Having 'null' instead of an empty string for an empty status message
increases the complexity of the code with no real improvement.

This patch modifies the monitoring agent design document solving this issue.

Signed-off-by: Michele Tartara <>...

44b7a8a8 03/28/2013 03:01 pm Michele Tartara

Improve INSTALL documentation

Additional clarification note added.

Signed-off-by: Michele Tartara <>
Reviewed-by: Helga Velroyen <>

958a800a 03/28/2013 02:03 pm Michele Tartara

Document more installation dependencies

A couple of them were missing and are added by this patch.

Signed-off-by: Michele Tartara <>
Reviewed-by: Helga Velroyen <>

64760879 03/27/2013 12:47 pm Bernardo Dal Seno

Unit tests for config.ConfigWriter.VerifyConfig()

The test is aimed mostly at instance policies, which changed recently.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Helga Velroyen <>

0b94cda8 03/27/2013 12:46 pm Bernardo Dal Seno

cfgupgrade: Add support for newly refactored ipolicies

Instance policies in the configuration are upgraded and downgraded. Both
operations are idempotent.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Helga Velroyen <>

da5f09ef 03/27/2013 12:46 pm Bernardo Dal Seno

Refactor ispecs in ipolicy structures

Minimum and maximum instance specs are put together into a single element
of the instance policy. This is in preparation for introducing multiple
min/max specs.

Signed-off-by: Bernardo Dal Seno <>...

1709435e 03/27/2013 12:46 pm Bernardo Dal Seno

cfgupgrade: Add --downgrade option

It's now possible to go back to the previous stable version. Unit tests
provided.

This is mostly useful during development, when going from master to
stable/devel.

Signed-off-by: Bernardo Dal Seno <>...

bb553e5a 03/27/2013 12:46 pm Bernardo Dal Seno

cfgupgrade: Refactor code

All the upgrading code is now in one function. No functionality has been
changed.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Helga Velroyen <>

04db1880 03/27/2013 12:46 pm Bernardo Dal Seno

Configuration is verified on load

If there are errors in the configuration when master daemon is started,
they are now logged and reported. Previously they were logged sometimes at
startup, and when performing any change to the configuration.

Signed-off-by: Bernardo Dal Seno <>...

d948c101 03/27/2013 12:45 pm Bernardo Dal Seno

Refactor cli.CreateIPolicyFromOpts()

The code relative to instance specs has been moved into a different
function. This in preparation for further patches to have a more clear code
structure.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Helga Velroyen <>

eeaa5f6c 03/27/2013 12:45 pm Bernardo Dal Seno

Remove duplicate filling of instance policy

Instance policy fields were manually filled in CreateIPolicyFromOpts() and
then filled again by the caller. Now they are filled once inside the
function.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Helga Velroyen <>

a6fdce9e 03/27/2013 12:45 pm Bernardo Dal Seno

Unit test for cli.CreateIPolicyFromOpts()

Useful for subsequent patches.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Helga Velroyen <>

a6321765 03/27/2013 12:45 pm Bernardo Dal Seno

Amend partitioned design doc for multiple ispecs

There will be only one standard specification in instance policies.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Guido Trotter <>

e118deb1 03/27/2013 12:44 pm Bernardo Dal Seno

QA: Fix assertion

The assertion was always true because "all" was missing.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Helga Velroyen <>
Reviewed-by: Michele Tartara <>

681f4f7b 03/26/2013 07:10 pm Michele Tartara

More info on using the RAPI

Add some additional information about how to use/test the RAPI,
including how to specify authentication credentials.

Signed-off-by: Michele Tartara <>
Reviewed-by: Helga Velroyen <>

2cbcf95d 03/26/2013 01:57 pm Bernardo Dal Seno

gnt-instance info uses a revised format

The code is more modular and the output is YAML-compliant. QA updated to
take advantage of it.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Helga Velroyen <>

0e79564a 03/26/2013 01:57 pm Bernardo Dal Seno

gnt-cluster info uses a revised format

The code is more modular and the output is YAML-compliant.

Added function in QA that uses PyYAML to parse the command output, and QA
is updated to take advantage of it (instead of using lots of complicated
REs).

Signed-off-by: Bernardo Dal Seno <>...

4d99964c 03/26/2013 01:57 pm Bernardo Dal Seno

Generic function to print data for gnt-xxx info

The function produces a human-readable output, which is also a valid YAML
file, from an intermediate data structure. This will be used by "gnt-xxx
info" commands. The output of "gnt-xxx info" was almost YAML-compliant, and...

61f8fda4 03/22/2013 05:06 pm Michele Tartara

Fix bug in rlib2 unit tests

The "queryargs" parameter of the init function of rlib2 classes should
be a dictionary, as defined in the ResourceBase parent class (in
lib/rapi/baserlib.py).

In the rlib2 and baserlib unit tests, when the queryargs parameter is not...

fb409531 03/22/2013 05:01 pm Michele Tartara

Remove use of deprecated function

cgi.parse_qs() is deprecated in python 2.6 and substituted by
urlparse.parse_qs().

This patch modifies the code to use the new function.

Signed-off-by: Michele Tartara <>
Reviewed-by: Helga Velroyen <>

27263c47 03/22/2013 01:00 pm Helga Velroyen

gnt-cluster modify: limit storage type consistency check

This fixes the currently broken Q&A. The consistency check
for storage types is now only run when the 'enabled_storage_types'
are actually changed by 'gnt-cluster modify'.

Signed-off-by: Helga Velroyen <>...

9c6f0b51 03/22/2013 09:46 am Helga Velroyen

Check if instances use disk templates that get disabled

When disk templates get disabled via 'gnt-cluster modify', so far
we did not check if any instances still use a disk template of that
type. This patch adds the necessariy check.
It also includes adding a map of disk templates to storage types...

6414296b 03/21/2013 06:13 pm Helga Velroyen

Fixing some mistakes in design doc for space reporting

- Use entities as examples for storage types that are actually storage
types.
- Fix mixing up 'external_storage' and 'exclusive_storage'.

Signed-off-by: Helga Velroyen <>
Reviewed-by: Guido Trotter <>

94309823 03/21/2013 05:41 pm Helga Velroyen

Use 'storage type' consistently in design doc

To minimize the confusion between whether or not a storage type
is the same as a storage method, I updated the design doc to
use 'storage type' instead of 'storage method' consistently.

Signed-off-by: Helga Velroyen <>...

c66d8987 03/21/2013 05:41 pm Helga Velroyen

Upgrade configuration wrt enabled storage types

This implements an online update of the configuration for when a configuration
is loaded that does not yet contain the 'enabled_storage_types' attribute.
Note that this will require more changes as dis/enabling of (shared) file...

dacd8ba4 03/21/2013 05:41 pm Helga Velroyen

QA: Extend cluster QA wrt enabled storage types

This extends the QA scripts to test the changes in 'gnt-cluster init',
'gnt-cluster info', and 'gnt-cluster modify' with respect to enabled
storage types.

Signed-off-by: Helga Velroyen <>
Reviewed-by: Guido Trotter <>

c074a9e8 03/21/2013 05:41 pm Helga Velroyen

gnt-cluster init: add enabled_storage_types parameter

This patch extends the 'gnt-cluster init' command to set the list
of enabled storage types on cluster creation.

Signed-off-by: Helga Velroyen <>
Reviewed-by: Guido Trotter <>

c270ee07 03/21/2013 05:41 pm Helga Velroyen

gnt-cluster modify: dis/enabling storage types

This patch extends the 'gnt-cluster modify' command to manipulate the list
of enabled storage types. Note that this currenlty does no validation
with respect to whether or not there are instances currently using a storage...

7b9ceea7 03/21/2013 05:41 pm Helga Velroyen

gnt-cluster info: show enabled storage types

This extends the 'gnt-cluster info' command to list the storage types
that are enabled on the cluster. It also fixes the broken indentation
in the 'handleCall' function.

Signed-off-by: Helga Velroyen <>...

d0de443e 03/21/2013 05:40 pm Helga Velroyen

Add 'enabled_storage_types' to the cluster config

This patch adds the cluster's new field 'enabled_storage_types'
to the configuration objects in python and haskell.

Signed-off-by: Helga Velroyen <>
Reviewed-by: Guido Trotter <>

33c730a2 03/21/2013 05:40 pm Helga Velroyen

Add constants for storage types to constants.py

This patch adds the currently known and used storage methods to the
constants.py file. Note that storage types are different from disk
templates. For example both disk templates, drbd and plain, use lvm
storage types....

011a19bf 03/21/2013 01:26 pm Michele Tartara

Fix Mond man page

Remove some erroneous formatting from the Mond man page.

Signed-off-by: Michele Tartara <>
Reviewed-by: Helga Velroyen <>

423b2dd5 03/21/2013 12:30 pm Michele Tartara

Add monitoring HTTP API structure

Add all the supported commands to the API.
The actual response is still to be implemented.

Signed-off-by: Michele Tartara <>
Reviewed-by: Guido Trotter <>

eb65c915 03/21/2013 12:29 pm Michele Tartara

Add basic HTTP server functionalities to Mond

Add a stub implementation of the Mond HTTP server to Mond using the Haskell
snap-server library.

Signed-off-by: Michele Tartara <>
Reviewed-by: Iustin Pop <>

2fa8f963 03/21/2013 12:29 pm Michele Tartara

Update documentation for monitoring daemon

This commit updates the installation instructions and the user guide.

Signed-off-by: Michele Tartara <>
Reviewed-by: Iustin Pop <>

05b6f4d8 03/21/2013 12:13 pm Bernardo Dal Seno

Merge branch 'devel-2.7'

  • devel-2.7
    cfgupgrade: Fix error messages
    Update "FIXME" string in RAPI
    rapi client: add target_node to migrate instance
    Make diskless instances externally mirrored
    Fix migrate/failover -n for ext mirror storage

Trivial merge: no conflicts...

13cc7b84 03/21/2013 10:49 am Michele Tartara

Add the core of the monitoring daemon

This commit adds the core infrastructure of the monitoring daemon,
and integrates it in the build and test systems.

The actual functionality of the monitoring daemon is still completely
missing.

Signed-off-by: Michele Tartara <>...

fdb85e3d 03/20/2013 06:48 pm Bernardo Dal Seno

cfgupgrade: Fix error messages

Messages were inconsistent. You could get both an error and a message
saying that everything was fine.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Helga Velroyen <>

09b7b6f2 03/20/2013 01:49 pm Michele Tartara

Update "FIXME" string in RAPI

We are not ready for this change yet. Let's push it to 2.8.

Signed-off-by: Michele Tartara <>
Reviewed-by: Guido Trotter <>

cb44e3db 03/20/2013 01:25 pm Helga Velroyen

Typo 'repot' in Server.hs

Signed-off-by: Helga Velroyen <>
Reviewed-by: Iustin Pop <>

511e00b8 03/20/2013 12:34 pm Helga Velroyen

Fix typo 'VolumeN' in bdev.py

Signed-off-by: Helga Velroyen <>
Reviewed-by: Iustin Pop <>

6d2e1c12 03/15/2013 03:41 pm Michele Tartara

Add design document for the "reason trail"

This commit adds the design document for introducing "reason trails",
tracing the reason why opcodes are executed, step by step.

Signed-off-by: Michele Tartara <>
Reviewed-by: Guido Trotter <>

f511082f 03/13/2013 02:23 pm Michele Tartara

Add Mond to the list of possible daemons

Also, add its logfiles and extra log files.

Signed-off-by: Michele Tartara <>
Reviewed-by: Iustin Pop <>

a8828704 03/13/2013 02:23 pm Michele Tartara

Add infrastructure for allowing additional logfiles

Some daemons will need more than the single logfile that is currently
allowed. This patch introduces the infrastructure to allow this.

Signed-off-by: Michele Tartara <>
Reviewed-by: Iustin Pop <>

14013e5d 03/13/2013 12:49 pm Michele Tartara

Add user and group for the monitoring agent

This commit adds the user and group variables for the monitoring agent in all
the configuration files where they are required.

Signed-off-by: Michele Tartara <>
Reviewed-by: Guido Trotter <>

dc700f75 03/12/2013 07:19 pm Daniel Krambrock

rapi client: add target_node to migrate instance

This allows migrating to any node, as it is already possible for
failover, when instances are externally mirrored.

Signed-off-by: Daniel Krambrock <>
Signed-off-by: Guido Trotter <>...

d8f0b7c1 03/12/2013 06:52 pm Guido Trotter

Make diskless instances externally mirrored

This addresses Issue 237.

Mirroring no disk is a no-op. As such we can treat them like mirrored
instances, since the data they need (none) will be present on all nodes.

This is definitely enough to failover or migrate instances with a manual...

7b3d70d4 03/12/2013 06:29 pm Guido Trotter

Fix migrate/failover -n for ext mirror storage

This fixes issue 396.

- Fix a wrong comment that mentions drbd8 when actually the code acts
only on externally mirrored instances.
- Fix a wrong assert that requires failover/migrate to acquire the NAL
on externally mirrored instances: this is the case only when a...

ab9e48d1 03/12/2013 06:16 pm Iustin Pop

Enable split queries for the network

Now that all fields are implemented, and (I think) behave equivalent
to the Python implementation, we can switch on the split queries for
networks.

Signed-off-by: Iustin Pop <>
Reviewed-by: Helga Velroyen <>

63fb3de0 03/12/2013 06:16 pm Iustin Pop

Add a simple tool for checking split-query equivalence

This is not run automatically (although it could/should), but is very
useful during development.

Signed-off-by: Iustin Pop <>
Reviewed-by: Helga Velroyen <>

60a67263 03/12/2013 06:16 pm Iustin Pop

Fix network query field types/names in the Haskell code

The headers/type/descriptions had some differences from the Python
code, when checked for exact equivalence.

Signed-off-by: Iustin Pop <>
Reviewed-by: Helga Velroyen <>

40b118d3 03/12/2013 06:16 pm Iustin Pop

Introduce better item getter helper in query.py

And also use it for simple network fields. Currently the Python
library returns jsnull, which is formatted as 'None' by the Python
client, which (IMHO) is not nice, since these fields are strings (some
of them) or "other". An undeclared gateway is easier to diagnose when...

7c17db26 03/12/2013 06:16 pm Iustin Pop

Fix gnt-backup list -o node via confd

Currently, the 'node' field is declared as a simple config field, so
when only selecting this fields, the runtime gathering is no longer
run and it's presumed that all nodes have a backup. So the output is
not truthful (instead of just listing the nodes with at least one...

c81b97f2 03/12/2013 06:16 pm Iustin Pop

Make gnt-node list -o(p|s)inst_list output stable

Currently, both the Python and Haskell code return the internal
instance list unsorted, which means the output can vary depending on
the phase of the moon (well, the Haskell code actually uses internally
a tree, sorted by the instance name, but it's implementation detail)....

ce906289 03/12/2013 06:16 pm Iustin Pop

Sort instance list in gnt-group list -opinst_list

The Python code currently sorts this, but the Haskell code not.

This should maybe have a test, but I'm not sure how far we want to
encode such properties in tests… (and the real reason I'm not adding
one is that we don't have a way to generate a random cluster with...

82953e9a 03/12/2013 06:16 pm Iustin Pop

Change node disk/hv_state query in confd

Currently, the Python code returns either FS_UNAVAIL (if these
attributes are None) or the proper dicts. As we don't allow editing of
these attributes, in most cases they will therefore be FS_UNAVAIL on
the client....

87f1a454 03/12/2013 06:16 pm Iustin Pop

A few style fixes in Ganeti.Network

Side-effects of working on some other network-related stuff…

Signed-off-by: Iustin Pop <>
Reviewed-by: Helga Velroyen <>

147fd319 03/12/2013 06:16 pm Iustin Pop

Expand TestHelper to allow non-underscore prefixes

HLint 1.8.28 requires us to always add "ignore CamelCase", which can
be problematic sometimes (e.g. when using OverloadedStrings). Let's
expand TestHelper to also support less-standard 'caseFooBar' names, so...

b1b4a26b 03/12/2013 06:16 pm Iustin Pop

Change to CamelCase format in Test/Ganeti/Objects.hs

This is in preparation for using OverloadedString extensions in this
file, which conflicts with hlint 1.8.28's handling of annotations.

Signed-off-by: Iustin Pop <>
Reviewed-by: Helga Velroyen <>

3a991f2d 03/12/2013 06:16 pm Iustin Pop

Add simple Ip4Address/Ip4Network types

This patch adds some very simple IPv4 address/network types, and uses
them in the 'Network' config object.

We need these in order to properly compute the reserved IP addresses,
without depending on an external library (which I haven't found, by...

bac48afe 03/12/2013 06:16 pm Iustin Pop

Add missing external_reservations query field in confd

Based on the implemented Ip4Network/Address types, we can now compute
the (external) reservations.

Signed-off-by: Iustin Pop <>
Reviewed-by: Helga Velroyen <>

74df4a99 03/12/2013 05:21 pm Helga Velroyen

Update design doc about free space reporting

This patch updates the design doc "Design correct reporting of storage
free space". The modifications were chosen to not conflict with any
future changes of Ganeti regarding storage pools.

Signed-off-by: Helga Velroyen <>...

ad658827 03/12/2013 03:52 pm Bernardo Dal Seno

Fix QA: skip reinstall for diskless instances

Diskless instances cannot really be reinstalled, not even through RAPI.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Iustin Pop <>

0e8d8384 03/12/2013 03:43 pm Michele Tartara

Fix typo in the monitoring agent design doc

Signed-off-by: Michele Tartara <>
Reviewed-by: Guido Trotter <>

46d21495 03/12/2013 01:32 pm Bernardo Dal Seno

Merge branch 'devel-2.7'

  • devel-2.7
    Add QA for instance creation with policy violation
    Add QA for policy-instance interactions
    Add QA for cluster policies
    Unit tests for objects.InstancePolicy + a fix
    Unit tests for objects.FillIPolicy() + small fix...
2eef8750 03/12/2013 12:44 pm Michele Tartara

Fix style error in hconfd

The first line of a function should be blank, unless it is able to contain the
whole function.

Signed-off-by: Michele Tartara <>
Reviewed-by: Guido Trotter <>

fa84c8a4 03/11/2013 08:57 pm Bernardo Dal Seno

Add QA for instance creation with policy violation

When instance policy is violated, creation fails.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Guido Trotter <>

ab4832d1 03/11/2013 08:57 pm Bernardo Dal Seno

Add QA for policy-instance interactions

Violations on policy changes are checked.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Guido Trotter <>

b3f3aa3d 03/11/2013 08:57 pm Bernardo Dal Seno

Add QA for cluster policies

qa_cluster.TestClusterSetISpecs() is exported as it will be used in future
tests.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Guido Trotter <>

ba5c6c6b 03/11/2013 08:57 pm Bernardo Dal Seno

Unit tests for objects.InstancePolicy + a fix

Tests for:
objects.InstancePolicy.CheckParameterSyntax()
objects.InstancePolicy.CheckDiskTemplates()
objects.InstancePolicy.CheckISpecSyntax()

Instance policies with an empty disk-template list now are reported....

e38bc4eb 03/11/2013 08:57 pm Bernardo Dal Seno

Unit tests for objects.FillIPolicy() + small fix

IPOLICY_DEFAULTS is now a legal policy (the disk-templates entry was a set
instead of a list, before).

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Guido Trotter <>

4f7e5a1d 03/11/2013 08:57 pm Bernardo Dal Seno

Fix upgrade of policy in objects.Cluster

Unknown elements were silently removed on startup. This means that a
software upgrade could result in lost configuration information if
cfgupgrade wasn't run promptly.

Added unit test for Cluster.UpgradeConfig() to cover this case....

2477c1c5 03/11/2013 08:56 pm Bernardo Dal Seno

Fix instance policy checks for default back-end parameters

Policy violations of back-end parameters that used the cluster default
value were not reported in cluster-verify.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Guido Trotter <>

6ea2bb8c 03/11/2013 08:56 pm Bernardo Dal Seno

Fix restoring default instance specs in group policies

"default" was not accepted as a valid input value for instance specs in
group policies, due to a bug introduced in 2cc673a3e (and released with
2.6.0). Added QA for this and another similar case.

Signed-off-by: Bernardo Dal Seno <>...

5dd7d15b 03/11/2013 08:56 pm Bernardo Dal Seno

Unit tests for cmdlib._GetUpdatedIPolicy()

Not 100% coverage, though.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Guido Trotter <>

cc4b2676 03/11/2013 08:56 pm Bernardo Dal Seno

Fix policy check for disk templates

Instance disk template is checked against the policy, and diskless
instances aren't checked for the number of disks.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Guido Trotter <>

6a327093 03/11/2013 08:56 pm Bernardo Dal Seno

Fix merge 8e09e801 that resulted in duplicated code

A fragment in LUInstanceCreate.CheckPrereq() removed in commit ba147ff8 was
reintroduced in merge 8e09e801 due to a change in df28c49b.

Signed-off-by: Bernardo Dal Seno <>
Reviewed-by: Guido Trotter <>

7db266bb 03/11/2013 03:06 pm Daniel Krambrock

GanetiRapiClient: fix the no_remember option

There was a typo which prevented the correct option from being passed to
RAPI

Signed-off-by: Daniel Krambrock <>
Signed-off-by: Guido Trotter <>
Reviewed-by: Guido Trotter <>

4f73cfc9 03/08/2013 05:46 pm Iustin Pop

Merge branch 'devel-2.7'

  • devel-2.7:
    Change hbal behaviour in case of early exit
    Fix build/sphinx_ext.py with tuple defaults for op params
    Fix bug in man build rule
    Fix hscolour style sheet building

Signed-off-by: Iustin Pop <>...

2d6bdcc5 03/08/2013 02:50 pm Iustin Pop

Change hbal behaviour in case of early exit

Currently, hbal exits with status 1 if early exit is requested, even
when all jobs are successful. This is counter-intuitive behaviour, so
let's fix it (Issue 386).

Note that the man page had conflicting information already, so it's a...

777e8b6f 03/06/2013 05:31 pm Michele Tartara

Fix "reason" opcode parameter description

The "reason" opcode parameter can now apply to multiple opcodes, not just the
one for rebooting instances.

Signed-off-by: Michele Tartara <>
Reviewed-by: Iustin Pop <>

c83c0410 03/06/2013 04:37 pm Iustin Pop

Fix build/sphinx_ext.py with tuple defaults for op params

When an OpCode's parameter has a tuple as default value, this code
will break:

buf.write("defaults to ``%s``" % default)

The patch fixes this and other potential cases by always passing a
tuple to '%'....

67c15d8b 03/06/2013 04:37 pm Iustin Pop

Fix bug in man build rule

Currently the man page build rule is run without ‘-e’, so the actual
checks in there are just warnings (check-man-warnings,
check-man-dashes).

The patch fixes this and also fixes the man pages which made me see the
problem.

Additionally, check-man-dashes is now verbose, otherwise it's hard to...

e61db4b2 03/06/2013 11:36 am Iustin Pop

Fix hscolour style sheet building

Currently we only symlink this into two hard-coded directories, which
breaks the source code viewing for all the others.

The patch replaces this with automatic building; as playing with
relative symlinks is non-trivial, I just generate it many times (the...

69c88fb1 03/06/2013 11:16 am Michele Tartara

Make "reason" a common opcode attribute

The "reason" attribute will be common to many opcodes.
This patch factors it out so that it will be possible for the next commits
to use it without code duplication.

Signed-off-by: Michele Tartara <>...

9b154e2b 03/05/2013 06:15 pm Iustin Pop

Merge branch 'devel-2.7'

  • devel-2.7:
    Update required pylint version
    Constants.hs.in: improve Haddock markup in the template
    convert-constants: generate better Haddock markup
    Expand Haddock to run over test files as well

Conflicts:
Makefile.am (curl changes and new hs directories)...

099e9213 03/05/2013 05:53 pm Iustin Pop

Update required pylint version

This should help a lot of users, since pylint 0.21.1 was quite an old
version…

The tree is "clean" w.r.t. the new pylint version.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michele Tartara <>

1498270e 03/05/2013 05:53 pm Iustin Pop

Constants.hs.in: improve Haddock markup in the template

Signed-off-by: Iustin Pop <>
Reviewed-by: Michele Tartara <>

25d7b289 03/05/2013 05:53 pm Iustin Pop

convert-constants: generate better Haddock markup

Currently the Python source constants are used as-is, which is not
nice on the eyes (especially for unqualified names, it was hard to
separate them visually).

Signed-off-by: Iustin Pop <>...

7ddd8e4c 03/05/2013 05:53 pm Iustin Pop

Expand Haddock to run over test files as well

This patch does multiple enhancements to the way we build the Haddock
docs, motivated by the fact that if we don't run Haddock over test
files as well, bad formatting can be submitted and will accumulate
over time (without any checks)....

491d02ca 03/05/2013 01:56 pm Iustin Pop

Merge branch 'devel-2.7'

  • devel-2.7: (23 commits)
    Add export lists for files which didn't have them
    Fix Haskell compatibility tests with disabled file storage
    Fix QA with disabled file storage
    Fix convert-constants handling of booleans
    Fix handling of disabled (shared) file storage...
c56dd17b 03/05/2013 11:03 am Iustin Pop

Switch LispConfig double comparison to relative error

This further improves the comparison for "non-trivial"
numbers. Without this patch, there are still cases where the absolute
error is too big, and we need to switch to relative error.

Concept has been taken from...

1fe0e999 03/04/2013 06:39 pm Iustin Pop

Make the XmParser config test runtime more consistent

Currently, the test uses a frequency of 5 string/5 double/1 list for
generating Arbitrary instances of ListConfig. However, the list case
has simply a "choose (1, 20)" `vectorOf` arbitrary, which means it...

d58d44f3 03/04/2013 06:39 pm Iustin Pop

Switch Attoparsec parser from double to rational

According to the documentation, “This function is almost ten times
faster than rational, but is slightly less accurate. For 94.2% of
numbers, this function and rational give identical results, but for
the remaining 5.8%, this function loses precision around the 15th...

a7e76dc3 03/04/2013 06:39 pm Iustin Pop

Improve output of the XmParser config test

Currently, this tests and its helper function 'isAlmostEqual' uses
plain booleans to signify failures, which means you can't really debug
a failed test. The patch changes the call chain to use annotated
properties all through, which results in messages like:...