From 620f7b6e4cc555ce4286e00fccae52a94d982e8e Mon Sep 17 00:00:00 2001 From: "Davis W. Frank" Date: Thu, 23 Jun 2011 19:02:17 -0700 Subject: [PATCH] Updates to Pages; Updates to docs; --- Contribute.markdown | 11 ++++++++--- README.markdown | 33 +++++++-------------------------- Release.markdown | 16 ++++++++++++---- jasmine-core.gemspec | 1 - lib/jasmine-core/jasmine.js | 2 +- pages | 2 +- src/version.js | 2 +- tasks/pages.rb | 2 +- 8 files changed, 31 insertions(+), 38 deletions(-) diff --git a/Contribute.markdown b/Contribute.markdown index c3ba94cc..263305e6 100644 --- a/Contribute.markdown +++ b/Contribute.markdown @@ -1,13 +1,18 @@ -# Developing for Jasmine Core +# Developing for Jasmine Core -This repo is for the core code of Jasmine - `jasmine.js`. This implements the basic spec-defining, -executing, and -results-reporting logic. +## How to Contribute -## How to write new Jasmine code +We welcome your contributions - Thanks for helping make Jasmine a better project for everyone. Please review the backlog and discussion lists (the main group - [http://groups.google.com/group/jasmine-js](http://groups.google.com/group/jasmine-js) and the developer's list - [http://groups.google.com/group/jasmine-js-dev](http://groups.google.com/group/jasmine-js-dev)) before starting work - what you're looking for may already have been done. If it hasn't, the community can help make your contribution better. + +## How to write new Jasmine code + +Or, How to make a successful pull request * _Do not change the public interface_. Lots of projects depend on Jasmine and if you aren't careful you'll break them * _Be environment agnostic_ - server-side developers are just as important as browser developers * _Be browser agnostic_ - if you must rely on browser-specific functionality, please write it in a way that degrades gracefully * _Write specs_ - Jasmine's a testing framework; don't add functionality without test-driving it +* _Ensure the *entire* test suite is green_ in all the big browsers, Node, and JSHint - your contribution shouldn't break Jasmine for other users Follow these tips and your pull request, patch, or suggestion is much more likely to be integrated. diff --git a/README.markdown b/README.markdown index de596554..3c4ddee0 100644 --- a/README.markdown +++ b/README.markdown @@ -6,6 +6,13 @@ Jasmine is a Behavior Driven Development testing framework for JavaScript. It do Documentation & guides live here: [http://pivotal.github.com/jasmine/](http://pivotal.github.com/jasmine/) +## What's Here? + +* + + + + ## Support * Search past discussions: [http://groups.google.com/group/jasmine-js](http://groups.google.com/group/jasmine-js) @@ -14,32 +21,6 @@ Documentation & guides live here: [http://pivotal.github.com/jasmine/](http://pi * View the project backlog at Pivotal Tracker: [http://www.pivotaltracker.com/projects/10606](http://www.pivotaltracker.com/projects/10606) * Follow us on Twitter: [@JasmineBDD](http://twitter.com/JasmineBDD) -## How to Contribute - -We welcome your contributions - Thanks for helping make Jasmine a better project for everyone. Please review the backlog and discussion lists (the main group - [http://groups.google.com/group/jasmine-js](http://groups.google.com/group/jasmine-js) and the developer's list - [http://groups.google.com/group/jasmine-js-dev](http://groups.google.com/group/jasmine-js-dev)) before starting work - what you're looking for may already have been done. If it hasn't, the community can help make your contribution better. - -### Development Environment - -Jasmine Core relies on Ruby for executing the test suite and building the project for release. The spec suite runs in any major, modern browser (Firefox, Safari, Chrome, and yes various IE's) and in [Node.js](http://nodejs.org). While you probably have browsers installed, you want to make sure that Ruby and Node are present. - -### How to Develop for Jasmine Core - -* Write specs -* Make them pass in a browser (or three): - * open `spec/runner.html` in your browsers - * `rake spec:browser` will run in the default browser on MacOS -* Make them pass in Node: `rake spec:node` -* Fix any warnings or errors from JSHint: `rake jasmine:lint` - -Running `rake spec` will run the browser tests, then run specs in Node, then run JSHint. But this will only run in the default browser and only on MacOS (for now). - - -### Making a Successful Pull Request - -* __Include specs for your work__ - it helps us understand your intent and makes sure that future development doesn't break your work -* __Ensure the full test suite is green__ in all the big browsers, Node, and JSHint - your contribution shouldn't break Jasmine for other users - -Do these things and we'll take a look. ## Maintainers diff --git a/Release.markdown b/Release.markdown index 8f76b02f..80a7c70c 100644 --- a/Release.markdown +++ b/Release.markdown @@ -3,13 +3,21 @@ ## Development ___Jasmine Core Maintainers Only___ +Follow the instructions in `Contribute.markdown` during development. + +### Git Commits + + +### Version + We attempt to stick to [Semantic Versioning](). Most of the time, development should be against a new minor version - fixing bugs and adding new features that are backwards compatible. The current version lives in the file `src/version.json`. This file should be set to the version that is _currently_ under development. That is, if version 1.0.0 is the current release then version should be incremented say, to 1.1.0. -Follow the instructions in `Contribute.markdown` during development. - -## Update the Github Pages (as needed) +This version is used by both `jasmine.js` and the `jasmine-core` Ruby gem. + + +### Update the Github Pages (as needed) Github pages have to exist in a branch called gh-pages in order for their app to serve them. This repo adds that branch as a submodule under the `pages` directory. This is a bit of a hack, but it allows us to work with the pages and the source at the same time and with one set of rake tasks. @@ -27,6 +35,6 @@ When ready to release - specs are all green and the stories are done: 1. Update any links or top-level landing page for the Github Pages 1. `rake standalone` - builds the standalone distribution ZIP file 1. `rake build_pages` - builds the Github Pages -1. `rake release` - tags the repo with the version, makes the gem, pushes the gem to Rubygems.org +1. `rake release` - tags the repo with the version, builds the `jasmine-core` gem, pushes the gem to Rubygems.org There should be a post to Pivotal Labs blog and a tweet to that link. diff --git a/jasmine-core.gemspec b/jasmine-core.gemspec index aeb0f806..5634ff54 100644 --- a/jasmine-core.gemspec +++ b/jasmine-core.gemspec @@ -18,6 +18,5 @@ Gem::Specification.new do |s| s.add_development_dependency "term-ansicolor" s.add_development_dependency "json_pure", ">= 1.4.3" s.add_development_dependency "frank" - s.add_development_dependency "haml" s.add_development_dependency "ragaskar-jsdoc_helper" end diff --git a/lib/jasmine-core/jasmine.js b/lib/jasmine-core/jasmine.js index bd9fd0f9..d66a88d4 100644 --- a/lib/jasmine-core/jasmine.js +++ b/lib/jasmine-core/jasmine.js @@ -2472,6 +2472,6 @@ jasmine.version_= { "major": 1, "minor": 1, "build": 0, - "revision": 1308830021, + "revision": 1308880777, "release_candidate": 1 }; diff --git a/pages b/pages index a4522e4d..a9d577eb 160000 --- a/pages +++ b/pages @@ -1 +1 @@ -Subproject commit a4522e4dce52953126afa7f89c64688f53582f7b +Subproject commit a9d577eb45346c088c857af5bb301540c2a121f4 diff --git a/src/version.js b/src/version.js index 9c3f42d9..094ec71f 100644 --- a/src/version.js +++ b/src/version.js @@ -2,6 +2,6 @@ jasmine.version_= { "major": 1, "minor": 1, "build": 0, - "revision": 1308830021, + "revision": 1308880777, "release_candidate": 1 }; diff --git a/tasks/pages.rb b/tasks/pages.rb index 6be9e726..434f4543 100644 --- a/tasks/pages.rb +++ b/tasks/pages.rb @@ -6,7 +6,7 @@ task :build_pages => :require_pages_submodule do system("frank export ../pages_output") end puts "\n" - puts "Copying built website to the root of the gh-pages branch" + puts "Copying built website to the root of the gh-pages branch".cyan puts "\n\n" system("cp -r pages_output/* .") end