Dear all,

Sylvester Keil has been extraordinary helpful in the past couple of weeks
by setting up an automatic testing environment (using the Travis CI
service) for CSL styles hosted on GitHub. After tinkering a little with
Python (and Jing), he has now settled on Ruby. Tests are automatically run
after each commit to the GitHub repository (currently his fork of
https://github.com/citation-style-language/styles ), and build reports can
be viewed at http://travis-ci.org/#!/inukshuk/styles .

The current tests are defined in
https://github.com/inukshuk/styles/blob/testing-ruby/spec/independent_styles_spec.rb
and
https://github.com/inukshuk/styles/blob/testing-ruby/spec/dependent_styles_spec.rb
and are somewhat self-explanatory. They include XML and CSL schema
validation, and cover all the tests I normally run on my own computer.
Similar tests can be set up for the CSL locales (which also should validate
to the CSL schema).

At this point, there are a few questions for contributors and consumers of
CSL styles.

1) How the test environment should be incorporated into our workflow.

a) for contributors: once everything is in place, I would like to ask of
everybody who directly commits to the style repository to run the tests
locally to make sure only correct styles are added to the repository.
Alternatively, you could just fork the repo and create pull requests
(Travis CI supports screening of pull requests before they are merged,
which should catch any problems
http://about.travis-ci.org/blog/announcing-pull-request-support/ ).

b) for consumers (Zotero, Mendeley): are you all happy with the way the
repository is being run now? Sometimes the repository contains a bunch of
invalid styles, and an error (e.g. deleting all styles) can quickly affect
a lot of users. We could:

i) revoke commit access from all contributors and require them to use pull
requests, which the repository maintainers could manually merge when Travis
CI gives the green light (merging is a chore, so I'm not a fan of this
approach), or
ii) create a separate repository that automatically pulls in commits from
https://github.com/citation-style-language/styles, but only if all tests
pass. I think this should be relatively easy to set up with a commit hook,
and should be very maintenance free. Consumers of CSL styles could then get
their styles from that verified repository.
iii) keep things as they are.

2) whether there are any additional tests we can add. Charles, I know you
do some quality assurance as well. Do you see any missing tests?

Comments welcome,

Rintze

On Thu, May 3, 2012 at 10:36 AM, Rintze Zelle <[email protected]>wrote:

> I was wondering if there would be any interest in helping me setting up a
> status page for the CSL style repository at
> https://github.com/citation-style-language/styles.
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
xbiblio-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xbiblio-devel

Reply via email to