diff --git a/.editorconfig b/.editorconfig index 9582a3cc..12562f79 100644 --- a/.editorconfig +++ b/.editorconfig @@ -3,14 +3,6 @@ charset = utf-8 end_of_line = lf insert_final_newline = true -[*.{js, json, sh, yml, gemspec}] +[*.{js, json, sh, yml}] indent_style = space indent_size = 2 - -[{Rakefile, .jshintrc}] -indent_style = space -indent_size = 2 - -[*.{py}] -indent_style = space -indent_size = 4 diff --git a/Gemfile b/Gemfile deleted file mode 100644 index 851fabc2..00000000 --- a/Gemfile +++ /dev/null @@ -1,2 +0,0 @@ -source 'https://rubygems.org' -gemspec diff --git a/Gruntfile.js b/Gruntfile.js index 14077d78..6d65e5e3 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -16,12 +16,6 @@ module.exports = function(grunt) { grunt.registerTask('default', ['sass:dist', "cssUrlEmbed"]); - var version = require('./grunt/tasks/version.js'); - - grunt.registerTask('build:copyVersionToGem', - "Propagates the version from package.json to version.rb", - version.copyToGem); - grunt.registerTask('buildDistribution', 'Builds and lints jasmine.js, jasmine-html.js, jasmine.css', [ diff --git a/README.md b/README.md index 69d32a8b..ffad57c6 100644 --- a/README.md +++ b/README.md @@ -23,9 +23,6 @@ For the Jasmine NPM module:
For the Jasmine browser runner:
[https://github.com/jasmine/jasmine-browser](https://github.com/jasmine/jasmine-browser). -For the Jasmine Ruby Gem:
-[https://github.com/jasmine/jasmine-gem](https://github.com/jasmine/jasmine-gem). - To install Jasmine standalone on your local box (where **_{#.#.#}_** below is substituted by the release number downloaded): * Download the standalone distribution for your desired release from the [releases page](https://github.com/jasmine/jasmine/releases). diff --git a/RELEASE.md b/RELEASE.md index 3f0029d3..6762af90 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -13,13 +13,14 @@ Please attempt to keep commits to `main` small, but cohesive. If a feature is co 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. -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` with the new version and `grunt build:copyVersionToGem` to update the gem version number. - -This version is used by both `jasmine.js` and the `jasmine-core` Ruby gem. +The current version lives in the file `/package.json`. This version will be +copied to `jasmine.js` when the distribution is built. When releasing a new +version, update `package.json` with the new version and `npm run build` to +update the gem version number. Note that Jasmine should only use the "patch" version number in the following cases: -* Changes related to packaging for a specific platform (npm, gem, or pip). +* Changes related to packaging for a specific binding library (npm or browser-runner) * Fixes for regressions. When jasmine-core revs its major or minor version, the binding libraries should also rev to that version. @@ -31,7 +32,6 @@ When ready to release - specs are all green and the stories are done: 1. Update the release notes in `release_notes` - use the Anchorman gem to generate the markdown file and edit accordingly. Include a list of supported environments. 1. Update the version in `package.json` 1. Run `npm run build`. -1. Copy version to the Ruby gem with `grunt build:copyVersionToGem` ### Commit and push core changes @@ -45,11 +45,6 @@ When ready to release - specs are all green and the stories are done: 1. Build the standalone distribution with `grunt buildStandaloneDist` 1. This will generate `dist/jasmine-standalone-.zip`, which you will upload later (see "Finally" below). -### Release the core Ruby gem - -1. __NOTE__: You will likely need to push a new jasmine gem with a dependent version right after this release. See below. -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. - ### Release the core NPM module 1. Run the tests on Windows. (CI only tests on Linux.) @@ -76,15 +71,6 @@ Probably only need to do this when releasing a minor version, and not a patch ve 1. Run the tests on Windows locally. 1. `grunt release `. (Note: This will publish the package by running `npm publish`.) -#### Gem - -1. Create release notes using Anchorman as above -1. Update the version number in `lib/jasmine/version.rb`. -1. Update the jasmine-core dependency version in `jasmine.gemspec`. -1. Commit and push. -1. Wait for Circle CI to go green again. -1. `rake release` - ### Finally For each of the above GitHub repos: diff --git a/Rakefile b/Rakefile deleted file mode 100644 index 2480d0e6..00000000 --- a/Rakefile +++ /dev/null @@ -1,2 +0,0 @@ -require "bundler" -Bundler::GemHelper.install_tasks diff --git a/grunt/tasks/version.js b/grunt/tasks/version.js deleted file mode 100644 index f8ff6a10..00000000 --- a/grunt/tasks/version.js +++ /dev/null @@ -1,14 +0,0 @@ -var grunt = require("grunt"); - -function gemLib(path) { return './lib/jasmine-core/' + path; } -function nodeToRuby(version) { return version.replace('-', '.'); } - -module.exports = { - copyToGem: function() { - var versionRb = grunt.template.process( - grunt.file.read("grunt/templates/version.rb.jst"), - { data: { jasmineVersion: nodeToRuby(global.jasmineVersion) }}); - - grunt.file.write(gemLib("version.rb"), versionRb); - } -}; diff --git a/jasmine-core.gemspec b/jasmine-core.gemspec deleted file mode 100644 index fece3c1c..00000000 --- a/jasmine-core.gemspec +++ /dev/null @@ -1,30 +0,0 @@ -# -*- encoding: utf-8 -*- -$:.push File.expand_path("../lib", __FILE__) -require "jasmine-core/version" - -Gem::Specification.new do |s| - s.name = "jasmine-core" - s.version = Jasmine::Core::VERSION - s.platform = Gem::Platform::RUBY - s.authors = ["Gregg Van Hove"] - s.summary = %q{JavaScript BDD framework} - s.description = <<~DESC - Test your JavaScript without any framework dependencies, in any environment, - and with a nice descriptive syntax. - - Jasmine for Ruby is deprecated. The direct replacment for the jasmine-core - gem is the jasmine-core NPM package. If you are also using the jasmine gem, - we recommend using the jasmine-browser-runner NPM package instead. It - supports all the same scenarios as the jasmine gem gem plus Webpacker. See - https://jasmine.github.io/setup/browser.html for setup instructions, and - https://github.com/jasmine/jasmine-gem/blob/main/release_notes/3.9.0.md - for other options. - DESC - s.email = %q{jasmine-js@googlegroups.com} - s.homepage = "http://jasmine.github.io" - s.license = "MIT" - - s.files = Dir.glob("./lib/**/*") - s.require_paths = ["lib"] - s.add_development_dependency "rake" -end diff --git a/lib/jasmine-core.rb b/lib/jasmine-core.rb deleted file mode 100644 index 55a03fba..00000000 --- a/lib/jasmine-core.rb +++ /dev/null @@ -1,78 +0,0 @@ -if ENV["SUPPRESS_JASMINE_DEPRECATION"].nil? - puts <<~END_DEPRECATION_MSG - The Jasmine Ruby gems are deprecated. There will be no further releases after - the end of the Jasmine 3.x series. We recommend that most users migrate to the - jasmine-browser-runner npm package, which is the direct replacement for the - jasmine gem. See for setup - instructions, including for Rails applications that use either Sprockets or - Webpacker. - - If jasmine-browser-runner doesn't meet your needs, one of these might: - - * The jasmine npm package to run specs in Node.js: - - * The standalone distribution to run specs in browsers with no additional - tools: - * The jasmine-core npm package if all you need is the Jasmine assets: - . This is the direct equivalent of the - jasmine-core Ruby gem. - - To prevent this message from appearing, set the SUPPRESS_JASMINE_DEPRECATION - environment variable. - - END_DEPRECATION_MSG -end - -module Jasmine - module Core - class << self - def path - File.join(File.dirname(__FILE__), "jasmine-core") - end - - def js_files - (["jasmine.js"] + Dir.glob(File.join(path, "*.js"))).map { |f| File.basename(f) }.uniq - boot_files - ["boot0.js", "boot1.js"] - node_boot_files - end - - SPEC_TYPES = ["core", "html", "node"] - - def core_spec_files - spec_files("core") - end - - def html_spec_files - spec_files("html") - end - - def node_spec_files - spec_files("node") - end - - def boot_files - ["boot0.js", "boot1.js"] - end - - def node_boot_files - ["node_boot.js"] - end - - def boot_dir - path - end - - def spec_files(type) - raise ArgumentError.new("Unrecognized spec type") unless SPEC_TYPES.include?(type) - (Dir.glob(File.join(path, "spec", type, "*.js"))).map { |f| File.join("spec", type, File.basename(f)) }.uniq - end - - def css_files - Dir.glob(File.join(path, "*.css")).map { |f| File.basename(f) } - end - - def images_dir - File.join(File.dirname(__FILE__), '../images') - end - - end - end -end diff --git a/lib/jasmine-core/version.rb b/lib/jasmine-core/version.rb deleted file mode 100644 index ccee40c5..00000000 --- a/lib/jasmine-core/version.rb +++ /dev/null @@ -1,9 +0,0 @@ -# -# DO NOT Edit this file. Canonical version of Jasmine lives in the repo's package.json. This file is generated -# by a grunt task when the standalone release is built. -# -module Jasmine - module Core - VERSION = "3.9.0" - end -end