decko 0.11.5 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. checksums.yaml +4 -4
  2. data/lib/card_controller.rb +4 -0
  3. data/lib/card_controller/errors.rb +11 -13
  4. data/lib/card_controller/response.rb +0 -12
  5. data/lib/card_controller/rest.rb +14 -4
  6. data/lib/decko.rb +2 -15
  7. data/lib/decko/all.rb +2 -0
  8. data/lib/decko/application.rb +8 -89
  9. data/lib/decko/cli.rb +1 -7
  10. data/lib/decko/commands.rb +17 -110
  11. data/lib/decko/commands/application.rb +2 -2
  12. data/lib/decko/commands/cucumber_command.rb +8 -7
  13. data/lib/decko/commands/cucumber_command/parser.rb +2 -2
  14. data/lib/decko/engine.rb +1 -45
  15. data/lib/decko/generators.rb +17 -0
  16. data/lib/decko/mods_spec_helper.rb +1 -1
  17. data/lib/decko/railtie.rb +27 -0
  18. data/lib/decko/script_decko_loader.rb +5 -38
  19. data/lib/decko/tasks/cucumber.rake +25 -16
  20. data/lib/decko/tasks/decko.rake +7 -28
  21. data/lib/decko/tasks/decko/benchmark.rake +38 -0
  22. data/lib/decko/tasks/decko/docs.rake +1 -1
  23. data/lib/decko/tasks/decko/seed.rake +16 -7
  24. data/lib/generators/deck/deck_generator.rb +12 -0
  25. metadata +25 -72
  26. data/lib/decko/commands/command.rb +0 -28
  27. data/lib/decko/commands/rake_command.rb +0 -42
  28. data/lib/decko/commands/rake_command/parser.rb +0 -35
  29. data/lib/decko/commands/rspec_command.rb +0 -36
  30. data/lib/decko/commands/rspec_command/parser.rb +0 -97
  31. data/lib/decko/config/environments/cucumber.rb +0 -41
  32. data/lib/decko/config/environments/cypress.rb +0 -100
  33. data/lib/decko/config/environments/development.rb +0 -95
  34. data/lib/decko/config/environments/production.rb +0 -75
  35. data/lib/decko/config/environments/profile.rb +0 -33
  36. data/lib/decko/config/environments/test.rb +0 -69
  37. data/lib/decko/config/initializers/secret_token.rb +0 -15
  38. data/lib/decko/config/initializers/sedate_parser.rb +0 -8
  39. data/lib/decko/config/initializers/session_store.rb +0 -2
  40. data/lib/decko/generators/deck/USAGE +0 -9
  41. data/lib/decko/generators/deck/deck_generator.rb +0 -134
  42. data/lib/decko/generators/deck/deck_generator/deck_helper.rb +0 -110
  43. data/lib/decko/generators/deck/deck_generator/interactive.rb +0 -120
  44. data/lib/decko/generators/deck/deck_generator/rails_overrides.rb +0 -54
  45. data/lib/decko/generators/deck/templates/Gemfile.erb +0 -56
  46. data/lib/decko/generators/deck/templates/Rakefile.erb +0 -6
  47. data/lib/decko/generators/deck/templates/bin/spring.erb +0 -20
  48. data/lib/decko/generators/deck/templates/config.ru.erb +0 -11
  49. data/lib/decko/generators/deck/templates/config/application.rb.erb +0 -107
  50. data/lib/decko/generators/deck/templates/config/boot.rb.erb +0 -11
  51. data/lib/decko/generators/deck/templates/config/cucumber.yml +0 -1
  52. data/lib/decko/generators/deck/templates/config/databases/frontbase.yml +0 -34
  53. data/lib/decko/generators/deck/templates/config/databases/ibm_db.yml +0 -89
  54. data/lib/decko/generators/deck/templates/config/databases/jdbc.yml +0 -65
  55. data/lib/decko/generators/deck/templates/config/databases/jdbcmysql.yml +0 -36
  56. data/lib/decko/generators/deck/templates/config/databases/jdbcpostgresql.yml +0 -46
  57. data/lib/decko/generators/deck/templates/config/databases/jdbcsqlite3.yml +0 -23
  58. data/lib/decko/generators/deck/templates/config/databases/mysql.yml +0 -37
  59. data/lib/decko/generators/deck/templates/config/databases/oracle.yml +0 -42
  60. data/lib/decko/generators/deck/templates/config/databases/postgresql.yml +0 -39
  61. data/lib/decko/generators/deck/templates/config/databases/sqlite3.yml +0 -21
  62. data/lib/decko/generators/deck/templates/config/deck.yml +0 -10
  63. data/lib/decko/generators/deck/templates/config/environment.rb.erb +0 -5
  64. data/lib/decko/generators/deck/templates/config/initializers/cypress.rb +0 -12
  65. data/lib/decko/generators/deck/templates/config/puma.rb +0 -16
  66. data/lib/decko/generators/deck/templates/config/routes.rb.erb +0 -11
  67. data/lib/decko/generators/deck/templates/config/storage.yml +0 -0
  68. data/lib/decko/generators/deck/templates/gitignore +0 -18
  69. data/lib/decko/generators/deck/templates/pryrc +0 -6
  70. data/lib/decko/generators/deck/templates/public/files/htaccess +0 -9
  71. data/lib/decko/generators/deck/templates/public/robots.txt +0 -13
  72. data/lib/decko/generators/deck/templates/rspec.erb +0 -6
  73. data/lib/decko/generators/deck/templates/script/decko +0 -6
  74. data/lib/decko/generators/deck/templates/script/decko_cucumber +0 -8
  75. data/lib/decko/generators/deck/templates/script/decko_rspec +0 -8
  76. data/lib/decko/generators/deck/templates/script/delayed_job +0 -5
  77. data/lib/decko/generators/deck/templates/simplecov.rb.erb +0 -34
  78. data/lib/decko/generators/deck/templates/spec/javascripts/support/deck_jasmine.yml.erb +0 -56
  79. data/lib/decko/generators/deck/templates/spec/javascripts/support/decko_jasmine.yml.erb +0 -74
  80. data/lib/decko/generators/deck/templates/spec/spec_helper.rb +0 -1
  81. data/rails/application-routes.rb +0 -3
  82. data/rails/assets/external_link.png +0 -0
  83. data/rails/assets/jasmine/404.html +0 -27
  84. data/rails/assets/jasmine/500.html +0 -28
  85. data/rails/assets/jasmine/card_form.html +0 -13
  86. data/rails/assets/jquery.min.map +0 -1
  87. data/rails/engine-routes.rb +0 -53
  88. data/script/autospec +0 -4
  89. data/script/decko +0 -6
  90. data/script/rails +0 -6
@@ -0,0 +1,12 @@
1
+ require "cardio/generators/deck_generator_loader"
2
+
3
+ module Cardio
4
+ module Generators
5
+ module Deck
6
+ # Create new Decks (Decko Applications)
7
+ class DeckGenerator
8
+ # TODO: move decko-specific deck components here (eg cucumber)
9
+ end
10
+ end
11
+ end
12
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: decko
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.5
4
+ version: 0.13.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ethan McCutchen
@@ -10,36 +10,50 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2021-05-10 00:00:00.000000000 Z
13
+ date: 2021-08-06 00:00:00.000000000 Z
14
14
  dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: actionpack
17
+ requirement: !ruby/object:Gem::Requirement
18
+ requirements:
19
+ - - "~>"
20
+ - !ruby/object:Gem::Version
21
+ version: 6.1.3.1
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ requirements:
26
+ - - "~>"
27
+ - !ruby/object:Gem::Version
28
+ version: 6.1.3.1
15
29
  - !ruby/object:Gem::Dependency
16
30
  name: card
17
31
  requirement: !ruby/object:Gem::Requirement
18
32
  requirements:
19
33
  - - '='
20
34
  - !ruby/object:Gem::Version
21
- version: 1.101.5
35
+ version: 1.103.0
22
36
  type: :runtime
23
37
  prerelease: false
24
38
  version_requirements: !ruby/object:Gem::Requirement
25
39
  requirements:
26
40
  - - '='
27
41
  - !ruby/object:Gem::Version
28
- version: 1.101.5
42
+ version: 1.103.0
29
43
  - !ruby/object:Gem::Dependency
30
44
  name: card-mod-defaults
31
45
  requirement: !ruby/object:Gem::Requirement
32
46
  requirements:
33
47
  - - '='
34
48
  - !ruby/object:Gem::Version
35
- version: 0.11.5
49
+ version: 0.13.0
36
50
  type: :runtime
37
51
  prerelease: false
38
52
  version_requirements: !ruby/object:Gem::Requirement
39
53
  requirements:
40
54
  - - '='
41
55
  - !ruby/object:Gem::Version
42
- version: 0.11.5
56
+ version: 0.13.0
43
57
  description: a wiki approach to structured data, dynamic interaction, and web design
44
58
  email:
45
59
  - info@decko.org
@@ -77,65 +91,12 @@ files:
77
91
  - lib/decko/cli.rb
78
92
  - lib/decko/commands.rb
79
93
  - lib/decko/commands/application.rb
80
- - lib/decko/commands/command.rb
81
94
  - lib/decko/commands/cucumber_command.rb
82
95
  - lib/decko/commands/cucumber_command/parser.rb
83
- - lib/decko/commands/rake_command.rb
84
- - lib/decko/commands/rake_command/parser.rb
85
- - lib/decko/commands/rspec_command.rb
86
- - lib/decko/commands/rspec_command/parser.rb
87
- - lib/decko/config/environments/cucumber.rb
88
- - lib/decko/config/environments/cypress.rb
89
- - lib/decko/config/environments/development.rb
90
- - lib/decko/config/environments/production.rb
91
- - lib/decko/config/environments/profile.rb
92
- - lib/decko/config/environments/test.rb
93
- - lib/decko/config/initializers/secret_token.rb
94
- - lib/decko/config/initializers/sedate_parser.rb
95
- - lib/decko/config/initializers/session_store.rb
96
96
  - lib/decko/engine.rb
97
- - lib/decko/generators/deck/USAGE
98
- - lib/decko/generators/deck/deck_generator.rb
99
- - lib/decko/generators/deck/deck_generator/deck_helper.rb
100
- - lib/decko/generators/deck/deck_generator/interactive.rb
101
- - lib/decko/generators/deck/deck_generator/rails_overrides.rb
102
- - lib/decko/generators/deck/templates/Gemfile.erb
103
- - lib/decko/generators/deck/templates/Rakefile.erb
104
- - lib/decko/generators/deck/templates/bin/spring.erb
105
- - lib/decko/generators/deck/templates/config.ru.erb
106
- - lib/decko/generators/deck/templates/config/application.rb.erb
107
- - lib/decko/generators/deck/templates/config/boot.rb.erb
108
- - lib/decko/generators/deck/templates/config/cucumber.yml
109
- - lib/decko/generators/deck/templates/config/databases/frontbase.yml
110
- - lib/decko/generators/deck/templates/config/databases/ibm_db.yml
111
- - lib/decko/generators/deck/templates/config/databases/jdbc.yml
112
- - lib/decko/generators/deck/templates/config/databases/jdbcmysql.yml
113
- - lib/decko/generators/deck/templates/config/databases/jdbcpostgresql.yml
114
- - lib/decko/generators/deck/templates/config/databases/jdbcsqlite3.yml
115
- - lib/decko/generators/deck/templates/config/databases/mysql.yml
116
- - lib/decko/generators/deck/templates/config/databases/oracle.yml
117
- - lib/decko/generators/deck/templates/config/databases/postgresql.yml
118
- - lib/decko/generators/deck/templates/config/databases/sqlite3.yml
119
- - lib/decko/generators/deck/templates/config/deck.yml
120
- - lib/decko/generators/deck/templates/config/environment.rb.erb
121
- - lib/decko/generators/deck/templates/config/initializers/cypress.rb
122
- - lib/decko/generators/deck/templates/config/puma.rb
123
- - lib/decko/generators/deck/templates/config/routes.rb.erb
124
- - lib/decko/generators/deck/templates/config/storage.yml
125
- - lib/decko/generators/deck/templates/gitignore
126
- - lib/decko/generators/deck/templates/pryrc
127
- - lib/decko/generators/deck/templates/public/files/htaccess
128
- - lib/decko/generators/deck/templates/public/robots.txt
129
- - lib/decko/generators/deck/templates/rspec.erb
130
- - lib/decko/generators/deck/templates/script/decko
131
- - lib/decko/generators/deck/templates/script/decko_cucumber
132
- - lib/decko/generators/deck/templates/script/decko_rspec
133
- - lib/decko/generators/deck/templates/script/delayed_job
134
- - lib/decko/generators/deck/templates/simplecov.rb.erb
135
- - lib/decko/generators/deck/templates/spec/javascripts/support/deck_jasmine.yml.erb
136
- - lib/decko/generators/deck/templates/spec/javascripts/support/decko_jasmine.yml.erb
137
- - lib/decko/generators/deck/templates/spec/spec_helper.rb
97
+ - lib/decko/generators.rb
138
98
  - lib/decko/mods_spec_helper.rb
99
+ - lib/decko/railtie.rb
139
100
  - lib/decko/rest_spec_helper.rb
140
101
  - lib/decko/script_decko_loader.rb
141
102
  - lib/decko/swagger.rb
@@ -145,19 +106,11 @@ files:
145
106
  - lib/decko/tasks/cucumber.rake
146
107
  - lib/decko/tasks/db.rake
147
108
  - lib/decko/tasks/decko.rake
109
+ - lib/decko/tasks/decko/benchmark.rake
148
110
  - lib/decko/tasks/decko/docs.rake
149
111
  - lib/decko/tasks/decko/seed.rake
150
112
  - lib/decko/tasks/decko/tmpsets.rake
151
- - rails/application-routes.rb
152
- - rails/assets/external_link.png
153
- - rails/assets/jasmine/404.html
154
- - rails/assets/jasmine/500.html
155
- - rails/assets/jasmine/card_form.html
156
- - rails/assets/jquery.min.map
157
- - rails/engine-routes.rb
158
- - script/autospec
159
- - script/decko
160
- - script/rails
113
+ - lib/generators/deck/deck_generator.rb
161
114
  homepage: https://decko.org
162
115
  licenses:
163
116
  - GPL-3.0
@@ -182,7 +135,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
182
135
  - !ruby/object:Gem::Version
183
136
  version: '0'
184
137
  requirements: []
185
- rubygems_version: 3.1.4
138
+ rubygems_version: 3.1.6
186
139
  signing_key:
187
140
  specification_version: 4
188
141
  summary: structured wiki web platform
@@ -1,28 +0,0 @@
1
- # require "English" # needed for CHILD_STATUS, but not sure this is the best place for this.
2
-
3
- module Decko
4
- module Commands
5
- class Command
6
- def run
7
- puts command
8
- exit_with_child_status command
9
- end
10
-
11
- def exit_with_child_status command
12
- command += " 2>&1"
13
- exit $CHILD_STATUS.exitstatus unless system command
14
- end
15
-
16
- # split special decko args and original command args separated by '--'
17
- def split_args args
18
- before_split = true
19
- decko_args, command_args =
20
- args.partition do |a|
21
- before_split = (a == "--" ? false : before_split)
22
- end
23
- command_args.shift
24
- [decko_args, command_args]
25
- end
26
- end
27
- end
28
- end
@@ -1,42 +0,0 @@
1
- require File.expand_path("command", __dir__)
2
- # require "pry"
3
-
4
- module Decko
5
- module Commands
6
- class RakeCommand < Command
7
- def initialize rake_task, args={}
8
- @task = rake_task
9
- opts = {}
10
- if args.is_a? Array
11
- Parser.new(rake_task, opts).parse!(args)
12
- else
13
- opts = args
14
- end
15
- @envs = Array(opts[:envs])
16
- end
17
-
18
- def run
19
- commands.each do |cmd|
20
- puts cmd
21
- # exit_with_child_status cmd
22
-
23
- result = `#{cmd}`
24
- process = $?
25
- puts result
26
- exit process.exitstatus unless process.success?
27
- end
28
- end
29
-
30
- def commands
31
- task_cmd = "bundle exec rake #{@task}"
32
- return [task_cmd] if !@envs || @envs.empty?
33
-
34
- @envs.map do |env|
35
- "env RAILS_ENV=#{env} #{task_cmd}"
36
- end
37
- end
38
- end
39
- end
40
- end
41
-
42
- require File.expand_path("rake_command/parser", __dir__)
@@ -1,35 +0,0 @@
1
- # -*- encoding : utf-8 -*-
2
-
3
- require "optparse"
4
-
5
- module Decko
6
- module Commands
7
- class RakeCommand
8
- class Parser < OptionParser
9
- def initialize command, opts
10
- super() do |parser|
11
- parser.banner = "Usage: decko #{command} [options]\n\n" \
12
- "Run decko:#{command} task on the production "\
13
- " database specified in config/database.yml\n\n"
14
- parser.on("--production", "-p",
15
- "#{command} production database (default)") do
16
- opts[:envs] = ["production"]
17
- end
18
- parser.on("--test", "-t",
19
- "#{command} test database") do
20
- opts[:envs] = ["test"]
21
- end
22
- parser.on("--development", "-d",
23
- "#{command} development database") do
24
- opts[:envs] = ["development"]
25
- end
26
- parser.on("--all", "-a",
27
- "#{command} production, test, and development database") do
28
- opts[:envs] = %w[production development test]
29
- end
30
- end
31
- end
32
- end
33
- end
34
- end
35
- end
@@ -1,36 +0,0 @@
1
- require File.expand_path("command", __dir__)
2
-
3
- module Decko
4
- module Commands
5
- class RspecCommand < Command
6
- def initialize args
7
- require "rspec/core"
8
- require "decko/application"
9
-
10
- @decko_args, @rspec_args = split_args args
11
- @opts = {}
12
- Parser.new(@opts).parse!(@decko_args)
13
- end
14
-
15
- def command
16
- "#{env_args} #{@opts[:executer]} #{@opts[:rescue]}" \
17
- "rspec #{@rspec_args.shelljoin} #{@opts[:files]}"
18
- end
19
-
20
- private
21
-
22
- def env_args
23
- ["RAILS_ROOT=.", coverage].compact.join " "
24
- end
25
-
26
- def coverage
27
- # no coverage if rspec was started with file argument
28
- return unless @opts[:files] || @rspec_args.present?
29
-
30
- "COVERAGE=false"
31
- end
32
- end
33
- end
34
- end
35
-
36
- require File.expand_path("rspec_command/parser", __dir__)
@@ -1,97 +0,0 @@
1
- # -*- encoding : utf-8 -*-
2
-
3
- require "optparse"
4
-
5
- module Decko
6
- module Commands
7
- class RspecCommand
8
- class Parser < OptionParser
9
- RSPEC_PATH_MESSAGE = <<-EOT
10
-
11
- DECKO ARGS
12
-
13
- You don't have to give a full path for FILENAME; the basename is enough.
14
- If FILENAME does not include '_spec', then rspec searches for the
15
- corresponding spec file.
16
- The line number always refers to the example in the spec file.
17
-
18
- EOT
19
-
20
- def initialize opts
21
- super() do |parser|
22
- parser.banner = "Usage: decko rspec [DECKO ARGS] -- [RSPEC ARGS]\n\n" \
23
- "RSPEC ARGS"
24
- parser.separator RSPEC_PATH_MESSAGE
25
-
26
- parser.on("-d", "--spec FILENAME(:LINE)",
27
- "Run spec for a Decko deck file") do |file|
28
- opts[:files] = find_spec_file(file, "#{Decko.root}/mod")
29
- end
30
- parser.on("-c", "--core-spec FILENAME(:LINE)",
31
- "Run spec for a Decko core file") do |file|
32
- opts[:files] = find_spec_file(file, Cardio.gem_root)
33
- end
34
- parser.on("-m", "--mod MODNAME",
35
- "Run all specs for a mod or matching a mod") do |file|
36
- opts[:files] = find_mod_file(file, Cardio.gem_root)
37
- end
38
- parser.on("-s", "--[no-]simplecov", "Run with simplecov") do |s|
39
- opts[:simplecov] = s ? "TMPSETS=true" : ""
40
- end
41
- parser.on("--rescue", "Run with pry-rescue") do
42
- process_rescue_opts opts
43
- end
44
- parser.on("--[no-]spring", "Run with spring") do |spring|
45
- process_spring_opts spring, opts
46
- end
47
- parser.separator "\n"
48
- end
49
- end
50
-
51
- private
52
-
53
- def process_rescue_opts opts
54
- if opts[:executer] == "spring"
55
- puts "Disabled pry-rescue. Not compatible with spring."
56
- else
57
- opts[:rescue] = "rescue "
58
- end
59
- end
60
-
61
- def process_spring_opts spring, opts
62
- if spring
63
- opts[:executer] = "spring"
64
- if opts[:rescue]
65
- opts[:rescue] = ""
66
- puts "Disabled pry-rescue. Not compatible with spring."
67
- end
68
- else
69
- opts[:executer] = "bundle exec"
70
- end
71
- end
72
-
73
- def find_mod_file filename, base_dir
74
- if File.exist?("mod/#{filename}") || File.exist?("#{base_dir}/mod/#{filename}")
75
- "#{base_dir}/mod/#{filename}"
76
- elsif (files = find_spec_file(filename, "mod"))&.present?
77
- files
78
- else
79
- find_spec_file(file, "#{base_dir}/mod")
80
- end
81
- end
82
-
83
- def find_spec_file filename, base_dir
84
- file, line = filename.split(":")
85
- if file.include?("_spec.rb") && File.exist?(file)
86
- filename
87
- else
88
- file = File.basename(file, ".rb").sub(/_spec$/, "")
89
- Dir.glob("#{base_dir}/**/#{file}_spec.rb").flatten.map do |spec_file|
90
- line ? "#{spec_file}:#{line}" : file
91
- end.join(" ")
92
- end
93
- end
94
- end
95
- end
96
- end
97
- end
@@ -1,41 +0,0 @@
1
- # -*- encoding : utf-8 -*-
2
-
3
- Decko.application.class.configure do
4
- # Edit at your own peril - it's recommended to regenerate this file
5
- # in the future when you upgrade to a newer version of Cucumber.
6
-
7
- config.eager_load = false
8
-
9
- config.machine_refresh = :never
10
-
11
- # IMPORTANT: Setting config.cache_classes to false is known to
12
- # break Cucumber's use_transactional_fixtures method.
13
- # For more information see https://rspec.lighthouseapp.com/projects/16211/tickets/165
14
- config.cache_classes = true
15
-
16
- config.prepopulate_cache = true
17
-
18
- # Log error messages when you accidentally call methods on nil.
19
- config.whiny_nils = true
20
-
21
- # Show full error reports and disable caching
22
- config.consider_all_requests_local = true
23
- config.action_controller.perform_caching = true
24
-
25
- # Disable request forgery protection in test environment
26
- config.action_controller.allow_forgery_protection = false
27
-
28
- config.active_support.deprecation = :log
29
-
30
- config.log_level = :debug
31
-
32
- # Tell Action Mailer not to deliver emails to the real world.
33
- # The :test delivery method accumulates sent emails in the
34
- # ActionMailer::Base.deliveries array.
35
- config.action_mailer.delivery_method = :test
36
-
37
- config.use_transactional_fixtures = false
38
-
39
- config.rescue_all_in_controller = false
40
- config.raise_all_rendering_errors = true
41
- end