Hi Rintze,
This is really great, and something that's very much needed. I like that it's
using Ruby too ;-)
Regarding adding more control on what gets into the clients, I also think it
would be good to have at least one level of control, and prevent commits with
failures to make it to the clients. There is much simpler alternative to having
a separate repository, and that's to have instead a separate branch. We can
very simply keep the current 'master' branch, and simply add a 'tested' branch.
This would be a simple branch that we can fast-forward automatically to the
latest commit on which all tests pass.
In pseudo-code, that would be something like this:
if (csl_tests_all_good_on_master)
git update-ref -m "Fast forward tested branch" origin/tested origin/master
So it really amounts to moving upn the 'tested' pointer as soon as tests pass,
and no need for a separate repository.
Then clients simply need to pull from the 'tested' branch instead of 'master.
charles
On Jul 16, 2012, at 11:44 AM, Rintze Zelle wrote:
> 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
--
Charles Parnot
[email protected]
twitter: @cparnot
http://mekentosj.com
------------------------------------------------------------------------------
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