README.md in simple_pvr-0.0.3 vs README.md in simple_pvr-0.0.4

- old
+ new

@@ -1,7 +1,7 @@ -What? -===== +SimplePVR-Ruby-backend +====================== A really, really simple PVR (Personal Video Recorder) system which only supports the [HDHomeRun network tuners](http://www.silicondust.com/). It's written in Ruby and is highly hackable. If you don't want to hack it, but just want a solid PVR system, no worries: It's dead-simple to use. SimplePVR does not contain its own player, but currently provides an XBMC plug-in and some half-hearted @@ -106,21 +106,13 @@ Future? ======= This projects needs to be a nice, readable, hackable, tested system. No pull requests are accepted that violate this. -For version 1 of SimplePVR, there are no more features planned. Instead, there'll be a little clean-up: +For version 1 of SimplePVR, there are no more features planned. I'll see if the current incarnation seems +stable in the long run on my own setup, and if so, I'll mark it as 1.0.0. -* Updating dependencies: - * Twitter Bootstrap. - * AngularJS. - * JQuery (should be part of the project, instead of fetched through CDN). - * Testacular is now called Karma. -* Various code clean-ups (no grand plan). -* Various GUI clean-ups (no grand plan). -* Various bug fixes (no known issues at this point). - There is lots of stuff I'd like to do after that, but I have no deadline - which means that pull requests are the only means you have for speeding things up. This includes: * Web interface: * "Dashboard" giving "the big picture" of the status of the system (next 5 upcoming recordings, @@ -135,11 +127,11 @@ a schedule which exactly matches your needs. * XMLTV import: * Let SimplePVR itself fetch XMLTV URLs at specified times of day. * Set-up of matching XMLTV IDs to channels could make good use of a GUI. * Parse and make use of programme icons etc. -* Searching for tuners and scanning for channels would be nice through a GUI. +* Searching for tuners and scanning for channels would be nice through the web GUI. * Saving with the hdhomerun_config command is done through a shell script, so we can shut it down properly. I'd like a simpler solution, but haven't found anything that works both on OS X and Linux. [Bluepill](https://github.com/arya/bluepill) seems to do the job, but seems like too big a hammer... Some features would be cool to have, but I don't have a personal need for them, so they will only @@ -153,26 +145,48 @@ * Record multiple programmes on same multiplex, so we are not restricted to only recording two programmes at once. Development =========== +You need the following installed: + +* Ruby 1.9.3 or newer. +* [Bundler](http://gembundler.com/). +* [Karma](http://karma-runner.github.com/0.8/index.html). +* [PhantomJS](http://phantomjs.org/) - and the phantomjs executable must be on your path. + +When you have cloned the repository, run + + bundle install + +When writing a gem, there's no apparent way to run the commands in the bin directory, in our case pvr_server +and pvr_xmltv. (If you know better than I, please let me know!) Therefore, the commands development_server and +development_xmltv are included. Use them as you would pvr_server and pvr_xmltv (see above). + Run all automatic tests like this: rake test -This runs the Ruby specs and features along with the JavaScript unit tests. +(Or just "rake" with no arguments.) This runs the Ruby specs, features, and JavaScript unit tests. -For the JavaScript tests to run, first install [Testacular](http://testacular.github.com/0.6.0/index.html). -If you want to keep Testacular running and let it execute whenever a file changes, just run this: +If you want to keep Karma running and let it execute whenever a file changes, run this: - testacular start test/testacular.conf.js + karma start test/karma.conf.js +The specs currently use Selenium to drive Firefox, but you can choose to use PhantomJS instead: + + capybara_driver=poltergeist rake test:features + +This currently doesn't work for all specs, though. (Again, if you can fix it, please send a pull request!) + To create the gem, make sure that lib/simple_pvr/version.rb is up-to-date, commit everything and run: rake build Then "gem install" the generated gem in the pkg directory, see if everything seems to work (you already ran the automatic tests, right?), and execute rake release -...which will release the gem to rubygems.org. +...which will release the gem to rubygems.org. + +I'm trying to make Travis CI like SimplePVR, but it's not easy: [![Build Status](https://travis-ci.org/olefriis/simplepvr-backend-ruby.png)](https://travis-ci.org/olefriis/simplepvr-backend-ruby) \ No newline at end of file