spout 0.13.0 → 0.14.0.beta1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1a9927bf8de637c19990fb3264282fa2ff60ea99eb9afca49536917527b94f5d
4
- data.tar.gz: d26620208f2e603a45b40d0435e55eef688a3474c14dd3872c833f84262c06e9
3
+ metadata.gz: 70dea3c7337f2cfc3a38c1e59b5c8e9c94b7b009800b2680a3dcb06513331255
4
+ data.tar.gz: 4e63bf76cdbf26f4c4f387f15b454457a3e8a85677215f226b9060de38623072
5
5
  SHA512:
6
- metadata.gz: f86764c1d0a8bda859330db2ec02ee16ba8ff30c16f1d37aad2a210148fd92f14966a304beb817736aa8e67ee5c92eb0bfba8828b553fb89996f4861fba559ed
7
- data.tar.gz: d3ff0f0a21a95532b236d623b6bc74b85621d7ed1a05930f2bfa7fac7eb7c93d347c1aa077dd848f04e87fc72f4046abedf78714b3e9cf1c229b507902cea33d
6
+ metadata.gz: 542a18cc6f5e34c7df0f9ee1e7a848643bdb1e575176013fe1117becd81f715f32ca77ab150964b39aa66e3e76432d137e32b012680bc7d1f3b41e3435ac58f1
7
+ data.tar.gz: b85ffc0d3bba23f6af803c9d99ca47da3ac517ec840fd3d33f3c08d2a393067e68198de02f458f45cc206138f024151290b943746748cc7c55b86e4766670a35
data/CHANGELOG.md CHANGED
@@ -1,3 +1,16 @@
1
+ ## 0.14.0
2
+
3
+ ### Enhancements
4
+ - **Framework Changes**
5
+ - Spout data dictionaries can now specify gem dependencies using `gems.rb`
6
+ instead of `Gemfile`
7
+ - **Test Changes**
8
+ - Improved the spout testing framework
9
+ - Tests are now run excusively using `spout t` command
10
+ - Tests no longer spawn an extra process to run
11
+ - Rake dependency has been removed
12
+ - Failing tests no longer include an unnecessary rake backtrace
13
+
1
14
  ## 0.13.0 (June 21, 2018)
2
15
 
3
16
  ### Enhancements
data/README.md CHANGED
@@ -13,7 +13,7 @@ Spout has been used extensively to curate and clean datasets available on the
13
13
 
14
14
  ## Installation
15
15
 
16
- Add this line to your application's Gemfile:
16
+ Add this line to your application's `gems.rb`:
17
17
 
18
18
  gem "spout"
19
19
 
data/Rakefile CHANGED
@@ -6,6 +6,7 @@ Rake::TestTask.new(:test) do |t|
6
6
  t.libs << "lib"
7
7
  t.libs << "test"
8
8
  t.pattern = "test/**/*_test.rb"
9
+ t.warning = false
9
10
  t.verbose = false
10
11
  end
11
12
 
data/bin/spout CHANGED
@@ -1,5 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
2
3
 
3
- require File.expand_path("../../lib/spout", __FILE__)
4
+ require File.expand_path("../lib/spout", __dir__)
4
5
 
5
6
  Spout.launch(ARGV)
@@ -26,7 +26,7 @@ Usage: spout new FOLDER
26
26
  The FOLDER must be empty or new.
27
27
 
28
28
  EOT
29
- if @full_path == "" || (Dir.exist?(@full_path) && (Dir.entries(@full_path) & [".gitignore", ".ruby-version", ".travis.yml", "Gemfile", "Rakefile", "domains", "variables", "test"]).size > 0)
29
+ if @full_path == "" || (Dir.exist?(@full_path) && (Dir.entries(@full_path) & [".gitignore", ".ruby-version", ".travis.yml", "Gemfile", "gems.rb", "domains", "variables", "test"]).size > 0)
30
30
  puts usage
31
31
  exit(0)
32
32
  end
@@ -36,8 +36,7 @@ EOT
36
36
  copy_file "travis.yml", ".travis.yml"
37
37
  evaluate_file "spout.yml.erb", ".spout.yml"
38
38
  evaluate_file "CHANGELOG.md.erb", "CHANGELOG.md"
39
- copy_file "Gemfile"
40
- copy_file "Rakefile"
39
+ copy_file "gems.rb"
41
40
  evaluate_file "README.md.erb", "README.md"
42
41
  copy_file "VERSION"
43
42
  directory "domains"
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Spout
4
+ module Commands
5
+ # Runs spout tests.
6
+ class TestRunner
7
+ class << self
8
+ def run
9
+ new.run
10
+ end
11
+ end
12
+
13
+ def run
14
+ $LOAD_PATH.unshift File.join(Dir.pwd, "test")
15
+ Dir.glob(test_files, File::FNM_CASEFOLD).each do |test_file|
16
+ require test_file
17
+ end
18
+ end
19
+
20
+ def test_files
21
+ File.join(Dir.pwd, "test", "*_test.rb")
22
+ end
23
+ end
24
+ end
25
+ end
@@ -25,12 +25,15 @@ module Spout
25
25
  if json
26
26
  if json["version"] == Spout::VERSION::STRING
27
27
  puts "The spout gem is " + "up-to-date".colorize(:green) + "!"
28
- check_framework if File.exist?("Gemfile")
28
+ check_framework if File.exist?("Gemfile") || File.exist?("gems.rb")
29
29
  else
30
- puts "A newer version (v#{json['version']}) is available!\n\n"
31
- if File.exist?("Gemfile")
32
- puts "Add the following to your Gemfile and run " + "bundle update".colorize(:green) + ".\n\n"
33
- puts " gem \"spout\", \"~> #{json['version']}\"\n".colorize(:white)
30
+ puts "A newer version (v#{json["version"]}) is available!\n\n"
31
+ if File.exist?("gems.rb")
32
+ puts "Add the following to gems.rb and run " + "bundle update".colorize(:green) + ".\n\n"
33
+ puts " gem \"spout\", \"~> #{json["version"]}\"\n".colorize(:white)
34
+ elsif File.exist?("Gemfile")
35
+ puts "Add the following to Gemfile and run " + "bundle update".colorize(:green) + ".\n\n"
36
+ puts " gem \"spout\", \"~> #{json["version"]}\"\n".colorize(:white)
34
37
  else
35
38
  puts "Type the following command to update:\n\n"
36
39
  puts " gem install spout --no-document".colorize(:white) + "\n\n"
File without changes
@@ -2,6 +2,7 @@
2
2
  .DS_Store
3
3
 
4
4
  # Project Files
5
+ /gems.locked
5
6
  /Gemfile.lock
6
7
 
7
8
  # Data Dictionary folders
@@ -1,4 +1,4 @@
1
1
  sudo: false
2
2
  language: ruby
3
- rvm:
4
- - 2.5.1
3
+ rvm: 2.5.1
4
+ script: spout test
data/lib/spout/version.rb CHANGED
@@ -3,9 +3,9 @@
3
3
  module Spout
4
4
  module VERSION #:nodoc:
5
5
  MAJOR = 0
6
- MINOR = 13
6
+ MINOR = 14
7
7
  TINY = 0
8
- BUILD = nil # "pre", "rc", "rc2", nil
8
+ BUILD = "beta1" # "pre", "rc", "rc2", nil
9
9
 
10
10
  STRING = [MAJOR, MINOR, TINY, BUILD].compact.join(".").freeze
11
11
  end
data/lib/spout.rb CHANGED
@@ -67,9 +67,8 @@ module Spout
67
67
  end
68
68
 
69
69
  def self.test(_argv)
70
- system "bundle exec rake"
71
- # require "spout/commands/test_runner"
72
- # Spout::Commands::TestRunner.new(argv)
70
+ require "spout/commands/test_runner"
71
+ Spout::Commands::TestRunner.run
73
72
  end
74
73
 
75
74
  def self.update(argv)
data/spout.gemspec CHANGED
@@ -37,7 +37,6 @@ Gem::Specification.new do |spec|
37
37
  spec.require_paths = ["lib"]
38
38
 
39
39
  spec.add_dependency "bundler", "~> 1.16"
40
- spec.add_dependency "rake"
41
40
  spec.add_dependency "minitest"
42
41
  spec.add_dependency "minitest-reporters"
43
42
  spec.add_dependency "json"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spout
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.13.0
4
+ version: 0.14.0.beta1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Remo Mueller
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-06-21 00:00:00.000000000 Z
11
+ date: 2018-06-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -24,20 +24,6 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.16'
27
- - !ruby/object:Gem::Dependency
28
- name: rake
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: '0'
34
- type: :runtime
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- version: '0'
41
27
  - !ruby/object:Gem::Dependency
42
28
  name: minitest
43
29
  requirement: !ruby/object:Gem::Requirement
@@ -117,6 +103,7 @@ files:
117
103
  - lib/spout/commands/importer.rb
118
104
  - lib/spout/commands/outliers.rb
119
105
  - lib/spout/commands/project_generator.rb
106
+ - lib/spout/commands/test_runner.rb
120
107
  - lib/spout/commands/update.rb
121
108
  - lib/spout/helpers/array_statistics.rb
122
109
  - lib/spout/helpers/chart_types.rb
@@ -156,13 +143,10 @@ files:
156
143
  - lib/spout/models/tables/numeric_vs_choices.rb
157
144
  - lib/spout/models/tables/numeric_vs_numeric.rb
158
145
  - lib/spout/models/variable.rb
159
- - lib/spout/tasks.rb
160
- - lib/spout/tasks/engine.rake
161
146
  - lib/spout/templates/CHANGELOG.md.erb
162
- - lib/spout/templates/Gemfile
163
147
  - lib/spout/templates/README.md.erb
164
- - lib/spout/templates/Rakefile
165
148
  - lib/spout/templates/VERSION
149
+ - lib/spout/templates/gems.rb
166
150
  - lib/spout/templates/gitignore
167
151
  - lib/spout/templates/keep
168
152
  - lib/spout/templates/ruby-version
@@ -1,13 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "rake/testtask"
4
- require "colorize"
5
-
6
- Rake::TestTask.new do |t|
7
- t.libs << "test"
8
- t.test_files = FileList["test/**/*_test.rb"]
9
- t.warning = false
10
- t.verbose = false
11
- end
12
-
13
- task default: :test
data/lib/spout/tasks.rb DELETED
@@ -1,9 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # Load Spout rakefile extensions
4
- %w(
5
- engine
6
- ).each do |task|
7
- # puts "Loading file: #{task}.rake"
8
- load "spout/tasks/#{task}.rake"
9
- end
@@ -1,3 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "spout/tasks"