unpoly-rails 0.20.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of unpoly-rails might be problematic. Click here for more details.
- checksums.yaml +7 -0
- data/.gitignore +9 -0
- data/.ruby-version +2 -0
- data/.yardopts +1 -0
- data/CHANGELOG.md +577 -0
- data/Gemfile +8 -0
- data/Gemfile.lock +42 -0
- data/LICENSE +22 -0
- data/README.md +75 -0
- data/README_RAILS.md +116 -0
- data/Rakefile +45 -0
- data/bower.json +26 -0
- data/design/animation-ghosting.txt +72 -0
- data/design/design.txt +34 -0
- data/design/draft.html.erb +48 -0
- data/design/draft.rb +9 -0
- data/design/ghost-debugging.txt +118 -0
- data/design/homepage.txt +236 -0
- data/design/rename.txt +0 -0
- data/dist/unpoly-bootstrap3.css +5 -0
- data/dist/unpoly-bootstrap3.js +28 -0
- data/dist/unpoly-bootstrap3.min.css +1 -0
- data/dist/unpoly-bootstrap3.min.js +1 -0
- data/dist/unpoly.css +98 -0
- data/dist/unpoly.js +9041 -0
- data/dist/unpoly.min.css +1 -0
- data/dist/unpoly.min.js +3 -0
- data/lib/assets/javascripts/unpoly-bootstrap3.js.coffee +2 -0
- data/lib/assets/javascripts/unpoly-bootstrap3/form-ext.js.coffee +1 -0
- data/lib/assets/javascripts/unpoly-bootstrap3/layout-ext.js.coffee +5 -0
- data/lib/assets/javascripts/unpoly-bootstrap3/modal-ext.js.coffee +11 -0
- data/lib/assets/javascripts/unpoly-bootstrap3/navigation-ext.js.coffee +3 -0
- data/lib/assets/javascripts/unpoly.js.coffee +20 -0
- data/lib/assets/javascripts/unpoly/browser.js.coffee +252 -0
- data/lib/assets/javascripts/unpoly/bus.js.coffee +393 -0
- data/lib/assets/javascripts/unpoly/flow.js.coffee +809 -0
- data/lib/assets/javascripts/unpoly/form.js.coffee +864 -0
- data/lib/assets/javascripts/unpoly/history.js.coffee +204 -0
- data/lib/assets/javascripts/unpoly/layout.js.coffee +529 -0
- data/lib/assets/javascripts/unpoly/link.js.coffee +496 -0
- data/lib/assets/javascripts/unpoly/log.js.coffee +73 -0
- data/lib/assets/javascripts/unpoly/modal.js.coffee +509 -0
- data/lib/assets/javascripts/unpoly/module.js.coffee +4 -0
- data/lib/assets/javascripts/unpoly/motion.js.coffee +690 -0
- data/lib/assets/javascripts/unpoly/navigation.js.coffee +219 -0
- data/lib/assets/javascripts/unpoly/popup.js.coffee +409 -0
- data/lib/assets/javascripts/unpoly/proxy.js.coffee +521 -0
- data/lib/assets/javascripts/unpoly/rails.js.coffee +36 -0
- data/lib/assets/javascripts/unpoly/syntax.js.coffee +337 -0
- data/lib/assets/javascripts/unpoly/tooltip.js.coffee +183 -0
- data/lib/assets/javascripts/unpoly/util.js.coffee +1593 -0
- data/lib/assets/stylesheets/unpoly-bootstrap3.css.sass +1 -0
- data/lib/assets/stylesheets/unpoly-bootstrap3/modal-ext.css.sass +9 -0
- data/lib/assets/stylesheets/unpoly.css.sass +1 -0
- data/lib/assets/stylesheets/unpoly/close.css.sass +2 -0
- data/lib/assets/stylesheets/unpoly/error.css.sass +15 -0
- data/lib/assets/stylesheets/unpoly/link.css.sass +2 -0
- data/lib/assets/stylesheets/unpoly/modal.css.sass +69 -0
- data/lib/assets/stylesheets/unpoly/popup.css.sass +8 -0
- data/lib/assets/stylesheets/unpoly/tooltip.css.sass +42 -0
- data/lib/unpoly-rails.rb +7 -0
- data/lib/unpoly/rails/engine.rb +6 -0
- data/lib/unpoly/rails/inspector.rb +78 -0
- data/lib/unpoly/rails/inspector_accessor.rb +30 -0
- data/lib/unpoly/rails/request_echo_headers.rb +27 -0
- data/lib/unpoly/rails/request_method_cookie.rb +36 -0
- data/lib/unpoly/rails/version.rb +9 -0
- data/spec_app/.firefox-version +1 -0
- data/spec_app/.gitignore +17 -0
- data/spec_app/.rspec +2 -0
- data/spec_app/Bowerfile +3 -0
- data/spec_app/Gemfile +29 -0
- data/spec_app/Gemfile.lock +212 -0
- data/spec_app/README.rdoc +28 -0
- data/spec_app/Rakefile +6 -0
- data/spec_app/app/assets/images/.keep +0 -0
- data/spec_app/app/assets/javascripts/application.js +20 -0
- data/spec_app/app/assets/stylesheets/application.css +17 -0
- data/spec_app/app/assets/stylesheets/blocks/card.css.sass +11 -0
- data/spec_app/app/assets/stylesheets/blocks/controls.css.sass +7 -0
- data/spec_app/app/assets/stylesheets/blocks/menu.css.sass +13 -0
- data/spec_app/app/assets/stylesheets/blocks/panel.css.sass +8 -0
- data/spec_app/app/assets/stylesheets/jasmine_specs.css +5 -0
- data/spec_app/app/controllers/application_controller.rb +6 -0
- data/spec_app/app/controllers/concerns/.keep +0 -0
- data/spec_app/app/controllers/test_controller.rb +28 -0
- data/spec_app/app/helpers/application_helper.rb +2 -0
- data/spec_app/app/mailers/.keep +0 -0
- data/spec_app/app/models/concerns/.keep +0 -0
- data/spec_app/app/views/layouts/application.html.erb +12 -0
- data/spec_app/bin/bundle +3 -0
- data/spec_app/bin/rails +8 -0
- data/spec_app/bin/rake +8 -0
- data/spec_app/bin/setup +29 -0
- data/spec_app/bin/spring +18 -0
- data/spec_app/config.ru +4 -0
- data/spec_app/config/application.rb +26 -0
- data/spec_app/config/boot.rb +3 -0
- data/spec_app/config/database.yml +25 -0
- data/spec_app/config/environment.rb +5 -0
- data/spec_app/config/environments/development.rb +41 -0
- data/spec_app/config/environments/production.rb +79 -0
- data/spec_app/config/environments/test.rb +42 -0
- data/spec_app/config/initializers/assets.rb +11 -0
- data/spec_app/config/initializers/backtrace_silencers.rb +7 -0
- data/spec_app/config/initializers/bower_rails.rb +16 -0
- data/spec_app/config/initializers/cookies_serializer.rb +3 -0
- data/spec_app/config/initializers/filter_parameter_logging.rb +4 -0
- data/spec_app/config/initializers/inflections.rb +16 -0
- data/spec_app/config/initializers/mime_types.rb +4 -0
- data/spec_app/config/initializers/session_store.rb +3 -0
- data/spec_app/config/initializers/wrap_parameters.rb +14 -0
- data/spec_app/config/locales/en.yml +23 -0
- data/spec_app/config/routes.rb +8 -0
- data/spec_app/config/secrets.yml +22 -0
- data/spec_app/db/schema.rb +23 -0
- data/spec_app/db/seeds.rb +7 -0
- data/spec_app/lib/assets/.keep +0 -0
- data/spec_app/lib/tasks/.keep +0 -0
- data/spec_app/lib/tasks/cucumber.rake +65 -0
- data/spec_app/log/.keep +0 -0
- data/spec_app/public/404.html +67 -0
- data/spec_app/public/422.html +67 -0
- data/spec_app/public/500.html +66 -0
- data/spec_app/public/favicon.ico +0 -0
- data/spec_app/public/robots.txt +5 -0
- data/spec_app/script/cucumber +10 -0
- data/spec_app/spec/controllers/test_controller_spec.rb +76 -0
- data/spec_app/spec/javascripts/helpers/append_fixture.js.coffee +8 -0
- data/spec_app/spec/javascripts/helpers/browser_switches.js.coffee +9 -0
- data/spec_app/spec/javascripts/helpers/index.js.coffee +1 -0
- data/spec_app/spec/javascripts/helpers/knife.js.coffee +69 -0
- data/spec_app/spec/javascripts/helpers/last_request.js.coffee +22 -0
- data/spec_app/spec/javascripts/helpers/mock_ajax.js.coffee +5 -0
- data/spec_app/spec/javascripts/helpers/mock_clock.js.coffee +2 -0
- data/spec_app/spec/javascripts/helpers/remove_body_margin.js.coffee +5 -0
- data/spec_app/spec/javascripts/helpers/reset_knife.js.coffee +2 -0
- data/spec_app/spec/javascripts/helpers/reset_path.js.coffee +8 -0
- data/spec_app/spec/javascripts/helpers/reset_up.js.coffee +4 -0
- data/spec_app/spec/javascripts/helpers/restore_body_scroll.js.coffee +2 -0
- data/spec_app/spec/javascripts/helpers/set_timer.js.coffee +3 -0
- data/spec_app/spec/javascripts/helpers/to_be_around.js.coffee +5 -0
- data/spec_app/spec/javascripts/helpers/to_be_blank.js.coffee +5 -0
- data/spec_app/spec/javascripts/helpers/to_be_given.js.coffee +5 -0
- data/spec_app/spec/javascripts/helpers/to_be_missing.js.coffee +5 -0
- data/spec_app/spec/javascripts/helpers/to_be_present.js.coffee +5 -0
- data/spec_app/spec/javascripts/helpers/to_end_with.js.coffee +8 -0
- data/spec_app/spec/javascripts/helpers/to_equal_jquery.js.coffee +9 -0
- data/spec_app/spec/javascripts/helpers/to_have_request_method.js.coffee +8 -0
- data/spec_app/spec/javascripts/helpers/trigger.js.coffee +68 -0
- data/spec_app/spec/javascripts/support/jasmine.yml +51 -0
- data/spec_app/spec/javascripts/up/bus_spec.js.coffee +122 -0
- data/spec_app/spec/javascripts/up/flow_spec.js.coffee +755 -0
- data/spec_app/spec/javascripts/up/form_spec.js.coffee +471 -0
- data/spec_app/spec/javascripts/up/history_spec.js.coffee +96 -0
- data/spec_app/spec/javascripts/up/layout_spec.js.coffee +318 -0
- data/spec_app/spec/javascripts/up/link_spec.js.coffee +340 -0
- data/spec_app/spec/javascripts/up/modal_spec.js.coffee +265 -0
- data/spec_app/spec/javascripts/up/motion_spec.js.coffee +306 -0
- data/spec_app/spec/javascripts/up/navigation_spec.js.coffee +132 -0
- data/spec_app/spec/javascripts/up/popup_spec.js.coffee +220 -0
- data/spec_app/spec/javascripts/up/proxy_spec.js.coffee +371 -0
- data/spec_app/spec/javascripts/up/rails_spec.js.coffee +101 -0
- data/spec_app/spec/javascripts/up/syntax_spec.js.coffee +99 -0
- data/spec_app/spec/javascripts/up/tooltip_spec.js.coffee +60 -0
- data/spec_app/spec/javascripts/up/util_spec.js.coffee +325 -0
- data/spec_app/spec/spec_helper.rb +62 -0
- data/spec_app/test/controllers/.keep +0 -0
- data/spec_app/test/fixtures/.keep +0 -0
- data/spec_app/test/helpers/.keep +0 -0
- data/spec_app/test/integration/.keep +0 -0
- data/spec_app/test/mailers/.keep +0 -0
- data/spec_app/test/models/.keep +0 -0
- data/spec_app/test/test_helper.rb +10 -0
- data/spec_app/vendor/assets/.bowerrc +3 -0
- data/spec_app/vendor/assets/bower.json +8 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/.bower.json +43 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/MIT.LICENSE +20 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/README.markdown +289 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/bower.json +35 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/lib/mock-ajax.js +733 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/package.json +26 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/release_notes/2.0.2.md +50 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/release_notes/2.99.md +14 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/release_notes/3.0.md +28 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/release_notes/3.1.0.md +24 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/release_notes/3.1.1.md +23 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/release_notes/3.2.0.md +20 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/.bower.json +27 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/.gitignore +8 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/.npmignore +8 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/LICENSE.txt +24 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/README.md +118 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/bower.json +17 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/dist/jasmine-fixture.js +433 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/dist/jasmine-fixture.min.js +5 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/basic-usage-spec.coffee +14 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/helpers/invariants.coffee +17 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/helpers/spec-within-a-spec.coffee +24 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/helpers/tmp-files.coffee +8 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/support/jasmine1-testem-config.json +11 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/support/jasmine2-testem-config.json +11 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/vendor/js/jquery-1.11.0.js +10337 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/vendor/js/jquery-1.8.3.js +9472 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/vendor/js/jquery-2.1.0.js +9111 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/.bower.json +26 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/CONTRIBUTING.md +28 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/Gruntfile.js +49 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/LICENSE +20 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/README.md +367 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/bower.json +15 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/lib/jasmine-jquery.js +838 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/package.json +35 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/fixture_with_checkbox_with_checked.html +6 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/fixture_with_javascript.html +1 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/fixture_with_javascript_block.html +1 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/javascripts/jasmine_javascript_click.js +1 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/javascripts/jasmine_javascript_hover.js +1 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/json/jasmine_json_test.json +1 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/real_non_mocked_fixture.html +1 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/real_non_mocked_fixture_style.css +1 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/suites/jasmine-jquery-spec.js +1842 -0
- data/spec_app/vendor/assets/bower_components/jasmine/.bower.json +50 -0
- data/spec_app/vendor/assets/bower_components/jasmine/CONTRIBUTING.md +130 -0
- data/spec_app/vendor/assets/bower_components/jasmine/GOALS_2.0.md +64 -0
- data/spec_app/vendor/assets/bower_components/jasmine/MANIFEST.in +5 -0
- data/spec_app/vendor/assets/bower_components/jasmine/MIT.LICENSE +20 -0
- data/spec_app/vendor/assets/bower_components/jasmine/README.md +73 -0
- data/spec_app/vendor/assets/bower_components/jasmine/RELEASE.md +73 -0
- data/spec_app/vendor/assets/bower_components/jasmine/bower.json +41 -0
- data/spec_app/vendor/assets/bower_components/jasmine/images/jasmine-horizontal.png +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/images/jasmine-horizontal.svg +102 -0
- data/spec_app/vendor/assets/bower_components/jasmine/images/jasmine_favicon.png +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/console/console.js +190 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core.js +37 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/boot.js +143 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/node_example/lib/jasmine_examples/Player.js +24 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/node_example/lib/jasmine_examples/Song.js +9 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/jasmine-html.js +446 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/jasmine.css +58 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/jasmine.js +3298 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/json2.js +489 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/node_boot.js +41 -0
- data/spec_app/vendor/assets/bower_components/jasmine/package.json +34 -0
- data/spec_app/vendor/assets/bower_components/jasmine/requirements.txt +1 -0
- data/spec_app/vendor/assets/bower_components/jquery/.bower.json +38 -0
- data/spec_app/vendor/assets/bower_components/jquery/MIT-LICENSE.txt +21 -0
- data/spec_app/vendor/assets/bower_components/jquery/bower.json +28 -0
- data/spec_app/vendor/assets/bower_components/jquery/dist/jquery.js +9210 -0
- data/spec_app/vendor/assets/bower_components/jquery/dist/jquery.min.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/dist/jquery.min.map +1 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/ajax.js +786 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/ajax/jsonp.js +89 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/ajax/load.js +75 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/ajax/parseJSON.js +13 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/ajax/parseXML.js +28 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/ajax/script.js +64 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/ajax/var/nonce.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/ajax/var/rquery.js +3 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/ajax/xhr.js +136 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/attributes.js +11 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/attributes/attr.js +141 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/attributes/classes.js +158 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/attributes/prop.js +94 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/attributes/support.js +35 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/attributes/val.js +161 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/callbacks.js +205 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/core.js +502 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/core/access.js +60 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/core/init.js +123 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/core/parseHTML.js +39 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/core/ready.js +97 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/core/var/rsingleTag.js +4 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css.js +450 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/addGetHookIf.js +22 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/curCSS.js +57 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/defaultDisplay.js +70 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/hiddenVisibleSelectors.js +15 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/support.js +96 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/swap.js +28 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/var/cssExpand.js +3 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/var/getStyles.js +12 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/var/isHidden.js +13 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/var/rmargin.js +3 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/var/rnumnonpx.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/data.js +178 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/data/Data.js +181 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/data/accepts.js +20 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/data/var/data_priv.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/data/var/data_user.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/deferred.js +149 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/deprecated.js +13 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/dimensions.js +50 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/effects.js +648 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/effects/Tween.js +114 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/effects/animatedSelector.js +13 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/event.js +868 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/event/ajax.js +13 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/event/alias.js +39 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/event/support.js +9 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/exports/amd.js +24 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/exports/global.js +32 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/intro.js +44 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/jquery.js +37 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/manipulation.js +580 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/manipulation/_evalUrl.js +18 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/manipulation/support.js +32 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/manipulation/var/rcheckableType.js +3 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/offset.js +207 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/outro.js +1 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/queue.js +142 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/queue/delay.js +22 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/selector-native.js +172 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/selector-sizzle.js +14 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/selector.js +1 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/serialize.js +111 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/sizzle/dist/sizzle.js +2067 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/sizzle/dist/sizzle.min.js +3 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/sizzle/dist/sizzle.min.map +1 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/traversing.js +199 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/traversing/findFilter.js +100 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/traversing/var/rneedsContext.js +6 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/arr.js +3 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/class2type.js +4 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/concat.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/hasOwn.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/indexOf.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/pnum.js +3 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/push.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/rnotwhite.js +3 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/slice.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/strundefined.js +3 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/support.js +4 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/toString.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/wrap.js +79 -0
- data/spec_app/vendor/assets/javascripts/.keep +0 -0
- data/spec_app/vendor/assets/stylesheets/.keep +0 -0
- data/unpoly-rails.gemspec +24 -0
- metadata +423 -0
@@ -0,0 +1,50 @@
|
|
1
|
+
{
|
2
|
+
"name": "jasmine-core",
|
3
|
+
"version": "2.3.4",
|
4
|
+
"homepage": "http://jasmine.github.io",
|
5
|
+
"authors": [
|
6
|
+
"slackersoft <gregg@slackersoft.net>"
|
7
|
+
],
|
8
|
+
"description": "Official packaging of Jasmine's core files",
|
9
|
+
"keywords": [
|
10
|
+
"test",
|
11
|
+
"jasmine",
|
12
|
+
"tdd",
|
13
|
+
"bdd"
|
14
|
+
],
|
15
|
+
"license": "MIT",
|
16
|
+
"moduleType": "globals",
|
17
|
+
"main": "lib/jasmine-core/jasmine.js",
|
18
|
+
"ignore": [
|
19
|
+
"**/.*",
|
20
|
+
"dist",
|
21
|
+
"grunt",
|
22
|
+
"node_modules",
|
23
|
+
"pkg",
|
24
|
+
"release_notes",
|
25
|
+
"spec",
|
26
|
+
"src",
|
27
|
+
"Gemfile",
|
28
|
+
"Gemfile.lock",
|
29
|
+
"Rakefile",
|
30
|
+
"jasmine-core.gemspec",
|
31
|
+
"*.sh",
|
32
|
+
"*.py",
|
33
|
+
"Gruntfile.js",
|
34
|
+
"lib/jasmine-core.rb",
|
35
|
+
"lib/jasmine-core/boot/",
|
36
|
+
"lib/jasmine-core/spec",
|
37
|
+
"lib/jasmine-core/version.rb",
|
38
|
+
"lib/jasmine-core/*.py",
|
39
|
+
"sauce_connect.log"
|
40
|
+
],
|
41
|
+
"_release": "2.3.4",
|
42
|
+
"_resolution": {
|
43
|
+
"type": "version",
|
44
|
+
"tag": "v2.3.4",
|
45
|
+
"commit": "651426b6583020e2f3fdae56d2873514963ba65e"
|
46
|
+
},
|
47
|
+
"_source": "git://github.com/pivotal/jasmine.git",
|
48
|
+
"_target": "~2",
|
49
|
+
"_originalSource": "jasmine"
|
50
|
+
}
|
@@ -0,0 +1,130 @@
|
|
1
|
+
# Developing for Jasmine Core
|
2
|
+
|
3
|
+
We welcome your contributions! Thanks for helping make Jasmine a better project for everyone. Please review the backlog and discussion lists 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.
|
4
|
+
|
5
|
+
## Links
|
6
|
+
|
7
|
+
- [Jasmine Google Group](http://groups.google.com/group/jasmine-js)
|
8
|
+
- [Jasmine-dev Google Group](http://groups.google.com/group/jasmine-js-dev)
|
9
|
+
- [Jasmine on PivotalTracker](https://www.pivotaltracker.com/n/projects/10606)
|
10
|
+
|
11
|
+
## General Workflow
|
12
|
+
|
13
|
+
Please submit pull requests via feature branches using the semi-standard workflow of:
|
14
|
+
|
15
|
+
```bash
|
16
|
+
git clone git@github.com:yourUserName/jasmine.git # Clone your fork
|
17
|
+
cd jasmine # Change directory
|
18
|
+
git remote add upstream https://github.com/jasmine/jasmine.git # Assign original repository to a remote named 'upstream'
|
19
|
+
git fetch upstream # Pull in changes not present in your local repository
|
20
|
+
git checkout -b my-new-feature # Create your feature branch
|
21
|
+
git commit -am 'Add some feature' # Commit your changes
|
22
|
+
git push origin my-new-feature # Push to the branch
|
23
|
+
```
|
24
|
+
|
25
|
+
Once you've pushed a feature branch to your forked repo, you're ready to open a pull request. We favor pull requests with very small, single commits with a single purpose.
|
26
|
+
|
27
|
+
## Background
|
28
|
+
|
29
|
+
### Directory Structure
|
30
|
+
|
31
|
+
* `/src` contains all of the source files
|
32
|
+
* `/src/console` - Node.js-specific files
|
33
|
+
* `/src/core` - generic source files
|
34
|
+
* `/src/html` - browser-specific files
|
35
|
+
* `/spec` contains all of the tests
|
36
|
+
* mirrors the source directory
|
37
|
+
* there are some additional files
|
38
|
+
* `/dist` contains the standalone distributions as zip files
|
39
|
+
* `/lib` contains the generated files for distribution as the Jasmine Rubygem and the Python package
|
40
|
+
|
41
|
+
### Self-testing
|
42
|
+
|
43
|
+
Note that Jasmine tests itself. The files in `lib` are loaded first, defining the reference `jasmine`. Then the files in `src` are loaded, defining the reference `j$`. So there are two copies of the code loaded under test.
|
44
|
+
|
45
|
+
The tests should always use `j$` to refer to the objects and functions that are being tested. But the tests can use functions on `jasmine` as needed. _Be careful how you structure any new test code_. Copy the patterns you see in the existing code - this ensures that the code you're testing is not leaking into the `jasmine` reference and vice-versa.
|
46
|
+
|
47
|
+
### `boot.js`
|
48
|
+
|
49
|
+
__This is new for Jasmine 2.0.__
|
50
|
+
|
51
|
+
This file does all of the setup necessary for Jasmine to work. It loads all of the code, creates an `Env`, attaches the global functions, and builds the reporter. It also sets up the execution of the `Env` - for browsers this is in `window.onload`. While the default in `lib` is appropriate for browsers, projects may wish to customize this file.
|
52
|
+
|
53
|
+
For example, for Jasmine development there is a different `dev_boot.js` for Jasmine development that does more work.
|
54
|
+
|
55
|
+
### Compatibility
|
56
|
+
|
57
|
+
* Browser Minimum
|
58
|
+
* IE8
|
59
|
+
* Firefox 3.x
|
60
|
+
* Chrome ??
|
61
|
+
* Safari 5
|
62
|
+
|
63
|
+
## Development
|
64
|
+
|
65
|
+
All source code belongs in `src/`. The `core/` directory contains the bulk of Jasmine's functionality. This code should remain browser- and environment-agnostic. If your feature or fix cannot be, as mentioned above, please degrade gracefully. Any code that should only be in a non-browser environment should live in `src/console/`. Any code that depends on a browser (specifically, it expects `window` to be the global or `document` is present) should live in `src/html/`.
|
66
|
+
|
67
|
+
### Install Dependencies
|
68
|
+
|
69
|
+
Jasmine Core relies on Ruby and Node.js.
|
70
|
+
|
71
|
+
To install the Ruby dependencies, you will need Ruby, Rubygems, and Bundler available. Then:
|
72
|
+
|
73
|
+
$ bundle
|
74
|
+
|
75
|
+
...will install all of the Ruby dependencies. If the ffi gem fails to build its native extensions, you may need to manually install some system dependencies. On Ubuntu:
|
76
|
+
|
77
|
+
$ apt-get install gcc ruby ruby-dev libxml2 libxml2-dev libxslt1-dev
|
78
|
+
|
79
|
+
...should get you to the point that `bundle` can install everything.
|
80
|
+
|
81
|
+
To install the Node dependencies, you will need Node.js, Npm, and [Grunt](http://gruntjs.com/), the [grunt-cli](https://github.com/gruntjs/grunt-cli) and ensure that `grunt` is on your path.
|
82
|
+
|
83
|
+
$ npm install --local
|
84
|
+
|
85
|
+
...will install all of the node modules locally. If when you run
|
86
|
+
|
87
|
+
$ grunt
|
88
|
+
|
89
|
+
...you see that JSHint runs your system is ready.
|
90
|
+
|
91
|
+
### How to write new Jasmine code
|
92
|
+
|
93
|
+
Or, How to make a successful pull request
|
94
|
+
|
95
|
+
* _Do not change the public interface_. Lots of projects depend on Jasmine and if you aren't careful you'll break them
|
96
|
+
* _Be environment agnostic_ - server-side developers are just as important as browser developers
|
97
|
+
* _Be browser agnostic_ - if you must rely on browser-specific functionality, please write it in a way that degrades gracefully
|
98
|
+
* _Write specs_ - Jasmine's a testing framework; don't add functionality without test-driving it
|
99
|
+
* _Write code in the style of the rest of the repo_ - Jasmine should look like a cohesive whole
|
100
|
+
* _Ensure the *entire* test suite is green_ in all the big browsers, Node, and JSHint - your contribution shouldn't break Jasmine for other users
|
101
|
+
|
102
|
+
Follow these tips and your pull request, patch, or suggestion is much more likely to be integrated.
|
103
|
+
|
104
|
+
### Running Specs
|
105
|
+
|
106
|
+
Jasmine uses the [Jasmine Ruby gem](http://github.com/jasmine/jasmine-gem) to test itself in browser.
|
107
|
+
|
108
|
+
$ rake jasmine
|
109
|
+
|
110
|
+
...and then visit `http://localhost:8888` to run specs.
|
111
|
+
|
112
|
+
Jasmine uses the [Jasmine NPM package](http://github.com/jasmine/jasmine-npm) to test itself in a Node.js/npm environment.
|
113
|
+
|
114
|
+
$ grunt execSpecsInNode
|
115
|
+
|
116
|
+
...and then the results will print to the console. All specs run except those that expect a browser (the specs in `spec/html` are ignored).
|
117
|
+
|
118
|
+
## Before Committing or Submitting a Pull Request
|
119
|
+
|
120
|
+
1. Ensure all specs are green in browser *and* node
|
121
|
+
1. Ensure JSHint is green with `grunt jshint`
|
122
|
+
1. Build `jasmine.js` with `grunt buildDistribution` and run all specs again - this ensures that your changes self-test well
|
123
|
+
|
124
|
+
## Submitting a Pull Request
|
125
|
+
1. Revert your changes to `jasmine.js` and `jasmine-html.js`
|
126
|
+
* We do this because `jasmine.js` and `jasmine-html.js` are auto-generated (as you've seen in the previous steps) and accepting multiple pull requests when this auto-generated file changes causes lots of headaches
|
127
|
+
1. When we accept your pull request, we will generate these files as a separate commit and merge the entire branch into master
|
128
|
+
|
129
|
+
Note that we use Travis for Continuous Integration. We only accept green pull requests.
|
130
|
+
|
@@ -0,0 +1,64 @@
|
|
1
|
+
# (Vague) Jasmine 2.0 Goals/(Guidelines)
|
2
|
+
|
3
|
+
1. No globals!
|
4
|
+
* jasmine library is entirely inside `jasmine` namespace
|
5
|
+
* globals required for backwards compatibility should be added in `boot.js` (EG, var describe = jasmine.getCurrentEnv().describe lives in boot.js)
|
6
|
+
1. Don't use properties as getters. Use methods.
|
7
|
+
* Properties aren't encapsulated -- can be mutated, unsafe.
|
8
|
+
1. Reporters get data objects (no methods).
|
9
|
+
* easier to refactor as needed
|
10
|
+
1. More unit tests - fewer nasty integration tests
|
11
|
+
|
12
|
+
## Remaining non-story-able work:
|
13
|
+
* Make a `TODO` list
|
14
|
+
|
15
|
+
### Hard
|
16
|
+
* Finish killing Globals
|
17
|
+
* Guidelines:
|
18
|
+
* New objects can have constructors on `jasmine`
|
19
|
+
* Top level functions can live on `jasmine`
|
20
|
+
* Top level (i.e., any `jasmine` property) should only be referenced inside the `Env` constructor
|
21
|
+
* should better allow any object to get jasmine code (Node-friendly)
|
22
|
+
* review everything in base.js
|
23
|
+
* Remove isA functions:
|
24
|
+
* isArray_ - used in matchers and spies
|
25
|
+
* isString_
|
26
|
+
* isDOMNode_
|
27
|
+
* isA_
|
28
|
+
* unimplementedMethod_, used by PrettyPrinter
|
29
|
+
* jasmine.util should be util closure inside of env or something
|
30
|
+
* argsToArray is used for Spies and matching (and can be replaced)
|
31
|
+
* inherit is only for PrettyPrinter now
|
32
|
+
* formatException is used only inside Env/spec
|
33
|
+
* htmlEscape is for messages in matchers - should this be HTML at all?
|
34
|
+
* Pretty printing
|
35
|
+
* move away from pretty printer and to a JSON.stringify implementation?
|
36
|
+
* jasmineToString vs. custom toString ?
|
37
|
+
|
38
|
+
### Easy
|
39
|
+
|
40
|
+
* unify params to ctors: options vs. attrs.
|
41
|
+
* This will be a lot of the TODOs, but clean up & simplify Env.js (is this a 2.1 task?)
|
42
|
+
|
43
|
+
### DONE
|
44
|
+
* Matchers improvements
|
45
|
+
* unit testable DONE
|
46
|
+
* better equality (from Underscore) DONE
|
47
|
+
* addCustomMatchers doesn't explode stack DONE
|
48
|
+
* refactor equals function so that it just loops & recurses over a list of fns (custom and built-in) - 2.1? (Tracker story)
|
49
|
+
* Spies
|
50
|
+
* break these out into their own tests/file DONE
|
51
|
+
|
52
|
+
|
53
|
+
## Other Topics
|
54
|
+
|
55
|
+
* Docs
|
56
|
+
* Docco has gone over well. Should we annotate all the sources and then have Pages be more complex, having tutorials and annotated source like Backbone? Are we small enough?
|
57
|
+
* Need examples for:
|
58
|
+
* How to build a Custom Matcher
|
59
|
+
* How to add a custom equality tester
|
60
|
+
|
61
|
+
|
62
|
+
|
63
|
+
|
64
|
+
|
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright (c) 2008-2014 Pivotal Labs
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -0,0 +1,73 @@
|
|
1
|
+
<a name="README">[<img src="https://rawgithub.com/jasmine/jasmine/master/images/jasmine-horizontal.svg" width="400px" />](http://jasmine.github.io)</a>
|
2
|
+
|
3
|
+
[![Build Status](https://travis-ci.org/jasmine/jasmine.png?branch=master)](https://travis-ci.org/jasmine/jasmine) [![Code Climate](https://codeclimate.com/github/pivotal/jasmine.png)](https://codeclimate.com/github/pivotal/jasmine)
|
4
|
+
|
5
|
+
=======
|
6
|
+
|
7
|
+
**A JavaScript Testing Framework**
|
8
|
+
|
9
|
+
Jasmine is a Behavior Driven Development testing framework for JavaScript. It does not rely on browsers, DOM, or any JavaScript framework. Thus it's suited for websites, [Node.js](http://nodejs.org) projects, or anywhere that JavaScript can run.
|
10
|
+
|
11
|
+
Documentation & guides live here: [http://jasmine.github.io](http://jasmine.github.io/)
|
12
|
+
For a quick start guide of Jasmine 2.0, see the beginning of [http://jasmine.github.io/2.0/introduction.html](http://jasmine.github.io/2.0/introduction.html)
|
13
|
+
|
14
|
+
Upgrading from Jasmine 1.x? Check out the [2.0 release notes](https://github.com/jasmine/jasmine/blob/v2.0.0/release_notes/20.md) for a list of what's new (including breaking interface changes). You can also read the [upgrade guide](http://jasmine.github.io/2.0/upgrading.html).
|
15
|
+
|
16
|
+
## Contributing
|
17
|
+
|
18
|
+
Please read the [contributors' guide](https://github.com/jasmine/jasmine/blob/master/CONTRIBUTING.md)
|
19
|
+
|
20
|
+
## Installation
|
21
|
+
|
22
|
+
For the Jasmine NPM module:<br>
|
23
|
+
[https://github.com/jasmine/jasmine-npm](https://github.com/jasmine/jasmine-npm)
|
24
|
+
|
25
|
+
For the Jasmine Ruby Gem:<br>
|
26
|
+
[https://github.com/jasmine/jasmine-gem](https://github.com/jasmine/jasmine-gem)
|
27
|
+
|
28
|
+
For the Jasmine Python Egg:<br>
|
29
|
+
[https://github.com/jasmine/jasmine-py](https://github.com/jasmine/jasmine-py)
|
30
|
+
|
31
|
+
To install Jasmine standalone on your local box:
|
32
|
+
|
33
|
+
* Download the standalone distribution for your desired release from the [releases page](https://github.com/jasmine/jasmine/releases)
|
34
|
+
* Create a Jasmine directory in your project - `mkdir my-project/jasmine`
|
35
|
+
* Move the dist to your project directory - `mv jasmine/dist/jasmine-standalone-2.0.0.zip my-project/jasmine`
|
36
|
+
* Change directory - `cd my-project/jasmine`
|
37
|
+
* Unzip the dist - `unzip jasmine-standalone-2.0.0.zip`
|
38
|
+
|
39
|
+
Add the following to your HTML file:
|
40
|
+
|
41
|
+
<link rel="shortcut icon" type="image/png" href="jasmine/lib/jasmine-2.0.0/jasmine_favicon.png">
|
42
|
+
<link rel="stylesheet" type="text/css" href="jasmine/lib/jasmine-2.0.0/jasmine.css">
|
43
|
+
|
44
|
+
<script type="text/javascript" src="jasmine/lib/jasmine-2.0.0/jasmine.js"></script>
|
45
|
+
<script type="text/javascript" src="jasmine/lib/jasmine-2.0.0/jasmine-html.js"></script>
|
46
|
+
<script type="text/javascript" src="jasmine/lib/jasmine-2.0.0/boot.js"></script>
|
47
|
+
|
48
|
+
## Supported environments
|
49
|
+
|
50
|
+
Jasmine tests itself across many browsers (Safari, Chrome, Firefox, PhantomJS, and new Internet Explorer) as well as node. To see the exact version tests are run against look at our [.travis.yml](https://github.com/jasmine/jasmine/blob/master/.travis.yml)
|
51
|
+
|
52
|
+
|
53
|
+
## Support
|
54
|
+
|
55
|
+
* Search past discussions: [http://groups.google.com/group/jasmine-js](http://groups.google.com/group/jasmine-js)
|
56
|
+
* Send an email to the list: [jasmine-js@googlegroups.com](mailto:jasmine-js@googlegroups.com)
|
57
|
+
* View the project backlog at Pivotal Tracker: [http://www.pivotaltracker.com/projects/10606](http://www.pivotaltracker.com/projects/10606)
|
58
|
+
* Follow us on Twitter: [@JasmineBDD](http://twitter.com/JasmineBDD)
|
59
|
+
|
60
|
+
## Maintainers
|
61
|
+
|
62
|
+
* [Davis W. Frank](mailto:dwfrank@pivotal.io), Pivotal Labs
|
63
|
+
* [Rajan Agaskar](mailto:rajan@pivotal.io), Pivotal Labs
|
64
|
+
* [Gregg Van Hove](mailto:gvanhove@pivotal.io), Pivotal Labs
|
65
|
+
* [Greg Cobb](mailto:gcobb@pivotal.io), Pivotal Labs
|
66
|
+
* [Chris Amavisca](mailto:camavisca@pivotal.io), Pivotal Labs
|
67
|
+
|
68
|
+
### Maintainers Emeritus
|
69
|
+
|
70
|
+
* [Christian Williams](mailto:antixian666@gmail.com), Cloud Foundry
|
71
|
+
* Sheel Choksi
|
72
|
+
|
73
|
+
Copyright (c) 2008-2015 Pivotal Labs. This software is licensed under the MIT License.
|
@@ -0,0 +1,73 @@
|
|
1
|
+
# How to work on a Jasmine Release
|
2
|
+
|
3
|
+
## Development
|
4
|
+
___Jasmine Core Maintainers Only___
|
5
|
+
|
6
|
+
Follow the instructions in `CONTRIBUTING.md` during development.
|
7
|
+
|
8
|
+
### Git Rules
|
9
|
+
|
10
|
+
Please work on feature branches.
|
11
|
+
|
12
|
+
Please attempt to keep commits to `master` small, but cohesive. If a feature is contained in a bunch of small commits (e.g., it has several wip commits or small work), please squash them when merging back to `master`.
|
13
|
+
|
14
|
+
### Version
|
15
|
+
|
16
|
+
We attempt to stick to [Semantic Versioning](http://semver.org/). Most of the time, development should be against a new minor version - fixing bugs and adding new features that are backwards compatible.
|
17
|
+
|
18
|
+
The current version lives in the file `/package.json`. This version will be the version number that is currently released. When releasing a new version, update `package.json` and `bower.json` with the new version and `grunt build:copyVersionToGem` to update the gem version number.
|
19
|
+
|
20
|
+
This version is used by both `jasmine.js` and the `jasmine-core` Ruby gem.
|
21
|
+
|
22
|
+
Note that Jasmine should only use the "patch" version number in the following cases:
|
23
|
+
|
24
|
+
* Changes related to packaging for a specific platform (npm, gem, or pip).
|
25
|
+
* Fixes for regressions.
|
26
|
+
|
27
|
+
When jasmine-core revs its major or minor version, the binding libraries should also rev to that version.
|
28
|
+
|
29
|
+
## Release
|
30
|
+
|
31
|
+
When ready to release - specs are all green and the stories are done:
|
32
|
+
|
33
|
+
1. Update the release notes in `release_notes` - use the Anchorman gem to generate the markdown file and edit accordingly
|
34
|
+
1. Update the version in `package.json` to a release candidate
|
35
|
+
1. Update any links or top-level landing page for the Github Pages
|
36
|
+
|
37
|
+
### Build standalone distribution
|
38
|
+
|
39
|
+
1. Build the standalone distribution with `grunt buildStandaloneDist`
|
40
|
+
|
41
|
+
### Release the Python egg
|
42
|
+
|
43
|
+
1. `python setup.py register sdist upload` You will need pypi credentials to upload the egg.
|
44
|
+
|
45
|
+
### Release the Ruby gem
|
46
|
+
|
47
|
+
1. Copy version to the Ruby gem with `grunt build:copyVersionToGem`
|
48
|
+
1. __NOTE__: You will likely need to point to a local jasmine gem in order to run tests locally. _Do not_ push this version of the Gemfile.
|
49
|
+
1. __NOTE__: You will likely need to push a new jasmine gem with a dependent version right after this release.
|
50
|
+
1. Push these changes to GitHub and verify that this SHA is green
|
51
|
+
1. `rake release` - tags the repo with the version, builds the `jasmine-core` gem, pushes the gem to Rubygems.org. In order to release you will have to ensure you have rubygems creds locally.
|
52
|
+
|
53
|
+
### Release the NPM
|
54
|
+
|
55
|
+
1. `npm adduser` to save your credentials locally
|
56
|
+
1. `npm publish .` to publish what's in `package.json`
|
57
|
+
|
58
|
+
### Release the docs
|
59
|
+
|
60
|
+
Probably only need to do this when releasing a minor version, and not a patch version.
|
61
|
+
|
62
|
+
1. `cp -R edge ${version}` to copy the current edge docs to the new version
|
63
|
+
1. Add a link to the new version in `index.html`
|
64
|
+
|
65
|
+
### Finally
|
66
|
+
|
67
|
+
1. Visit the [Releases page for Jasmine](https://github.com/jasmine/jasmine/releases), find the tag just pushed.
|
68
|
+
1. Paste in a link to the correct release notes for this release. The link should reference the blob and tag correctly, and the markdown file for the notes.
|
69
|
+
1. If it is a pre-release, mark it as such.
|
70
|
+
1. Attach the standalone zipfile
|
71
|
+
|
72
|
+
|
73
|
+
There should be a post to Pivotal Labs blog and a tweet to that link.
|
@@ -0,0 +1,41 @@
|
|
1
|
+
{
|
2
|
+
"name": "jasmine-core",
|
3
|
+
"version": "2.3.4",
|
4
|
+
"homepage": "http://jasmine.github.io",
|
5
|
+
"authors": [
|
6
|
+
"slackersoft <gregg@slackersoft.net>"
|
7
|
+
],
|
8
|
+
"description": "Official packaging of Jasmine's core files",
|
9
|
+
"keywords": [
|
10
|
+
"test",
|
11
|
+
"jasmine",
|
12
|
+
"tdd",
|
13
|
+
"bdd"
|
14
|
+
],
|
15
|
+
"license": "MIT",
|
16
|
+
"moduleType": "globals",
|
17
|
+
"main": "lib/jasmine-core/jasmine.js",
|
18
|
+
"ignore": [
|
19
|
+
"**/.*",
|
20
|
+
"dist",
|
21
|
+
"grunt",
|
22
|
+
"node_modules",
|
23
|
+
"pkg",
|
24
|
+
"release_notes",
|
25
|
+
"spec",
|
26
|
+
"src",
|
27
|
+
"Gemfile",
|
28
|
+
"Gemfile.lock",
|
29
|
+
"Rakefile",
|
30
|
+
"jasmine-core.gemspec",
|
31
|
+
"*.sh",
|
32
|
+
"*.py",
|
33
|
+
"Gruntfile.js",
|
34
|
+
"lib/jasmine-core.rb",
|
35
|
+
"lib/jasmine-core/boot/",
|
36
|
+
"lib/jasmine-core/spec",
|
37
|
+
"lib/jasmine-core/version.rb",
|
38
|
+
"lib/jasmine-core/*.py",
|
39
|
+
"sauce_connect.log"
|
40
|
+
]
|
41
|
+
}
|