eucalypt 0.3.2 → 0.3.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/eucalypt.gemspec +1 -1
- data/lib/eucalypt/blog/namespaces/blog/generators/views.rb +1 -1
- data/lib/eucalypt/core/cli/core.rb +2 -1
- data/lib/eucalypt/core/cli/rake.rb +15 -0
- data/lib/eucalypt/core/helpers/manifest.rb +16 -0
- data/lib/eucalypt/core/helpers/partial.rb +8 -0
- data/lib/eucalypt/core/templates/Gemfile.tt +1 -6
- data/lib/eucalypt/core/templates/eucalypt/app/assets/scripts/application.js +2 -2
- data/lib/eucalypt/core/templates/eucalypt/app/assets/stylesheets/application.scss +2 -2
- data/lib/eucalypt/core/templates/eucalypt/app/views/layouts/main.erb +1 -1
- data/lib/eucalypt/core/templates/eucalypt/app.rb +3 -1
- data/lib/eucalypt/core/templates/eucalypt/config/logging.rb +6 -9
- data/lib/eucalypt/security/namespaces/security-pundit/cli/security-pundit.rb +1 -1
- data/lib/eucalypt/security/namespaces/security-warden/cli/security-warden.rb +1 -1
- data/lib/eucalypt/version.rb +1 -1
- data/lib/eucalypt.rb +2 -0
- metadata +12 -5
- data/lib/eucalypt/core/templates/eucalypt/config/active_record.rb +0 -5
- data/lib/eucalypt/core/templates/eucalypt/config/manifest.rb +0 -15
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 54fd8995c7242de470b93565d009d8cb1d060c803f028a4ee31002189bd09dbe
|
4
|
+
data.tar.gz: 20caf73b8bef6a241689ccc6b17a4a575cebe8d98d3f29f03d33d441d03c5bf1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a84f7047d5a21dab87c48f69d32bb9b162b732b84006b35ad4ccb25f7a63587d2a96ebd4c03186641890985dee9dc067f16e72b1d9b469f992599bd6ba8e9f74
|
7
|
+
data.tar.gz: 36ce133a9c5535c3ff90352de8167846c731d79c5e4c03afd03c9b1629f5ed3cdf4d3e67904a0cf24fb3850ce061dcaee28524bca5f4c9bf4cc9bbe667f4d5b2
|
data/eucalypt.gemspec
CHANGED
@@ -29,7 +29,7 @@ Gem::Specification.new do |spec|
|
|
29
29
|
spec.add_runtime_dependency "activerecord", "~> 5.2"
|
30
30
|
spec.add_runtime_dependency "front_matter_parser", "0.2.0"
|
31
31
|
spec.add_runtime_dependency "thor", "~> 0.20"
|
32
|
-
spec.add_runtime_dependency "sinatra", "~> 2.0"
|
32
|
+
spec.add_runtime_dependency "sinatra", "~> 2.0", ">= 2.0.4"
|
33
33
|
spec.add_runtime_dependency "rerun", "~> 0.13"
|
34
34
|
|
35
35
|
spec.metadata = {
|
@@ -4,7 +4,7 @@ module Eucalypt
|
|
4
4
|
module Generators
|
5
5
|
class Blog < Thor::Group
|
6
6
|
def views
|
7
|
-
config = {erb: ["<%=
|
7
|
+
config = {erb: ["<%= manifest :stylesheet, :script %>","<%= yield %>"]}
|
8
8
|
template File.join('views','article_layout.erb'), File.join('app','views','layouts','blog','article.erb'), config
|
9
9
|
template File.join('views','articles_layout.erb'), File.join('app','views','layouts','blog','articles.erb'), config
|
10
10
|
|
@@ -0,0 +1,15 @@
|
|
1
|
+
require_relative '__base__'
|
2
|
+
module Eucalypt
|
3
|
+
class CLI < Thor
|
4
|
+
using Colorize
|
5
|
+
desc "rake", "Run all database migrations".colorize(:grey)
|
6
|
+
def rake
|
7
|
+
directory = File.expand_path('.')
|
8
|
+
if Eucalypt.app? directory
|
9
|
+
exec "bundle exec rake db:migrate"
|
10
|
+
else
|
11
|
+
Eucalypt::Error.wrong_directory
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
require 'sinatra'
|
2
|
+
class ApplicationController < Sinatra::Base
|
3
|
+
# Application manifest file accessor method
|
4
|
+
helpers do
|
5
|
+
def manifest(*args)
|
6
|
+
html = String.new
|
7
|
+
args.map(&:to_sym).each do |arg|
|
8
|
+
html << %{<link href="/assets/application.css" type="text/css" rel="stylesheet">} if arg == :stylesheet
|
9
|
+
html << %{<script src="/assets/application.js" type="text/javascript"></script>} if arg == :script
|
10
|
+
end
|
11
|
+
html
|
12
|
+
rescue
|
13
|
+
raise ArgumentError.new "Expected arguments to be any of: [stylesheet, script]"
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -1,14 +1,9 @@
|
|
1
1
|
source 'https://rubygems.org'
|
2
2
|
|
3
|
-
# Bundler
|
4
3
|
gem 'bundler', '~> 1.16'
|
5
|
-
|
6
|
-
gem 'sinatra', '~> 2.0', require: 'sinatra/base'
|
7
|
-
# Eucalypt CLI
|
4
|
+
gem 'sinatra', '~> 2.0', '>= 2.0.4', require: 'sinatra/base'
|
8
5
|
gem 'eucalypt', '<%= config[:version] %>'
|
9
|
-
# Rake
|
10
6
|
gem 'rake', '~> 12.3'
|
11
|
-
# Server
|
12
7
|
gem 'thin', '~> 1.7'
|
13
8
|
|
14
9
|
# Test environment
|
@@ -3,8 +3,8 @@
|
|
3
3
|
* All of these Javascript files will be compiled into a single Javascript file. *
|
4
4
|
* To use this combined file, include the following in the head section of your views: *
|
5
5
|
* *
|
6
|
-
* <%=
|
7
|
-
* <%=
|
6
|
+
* <%= manifest :script %> If including only application.js *
|
7
|
+
* <%= manifest :stylesheet, :script %> If including application.css as well *
|
8
8
|
* *
|
9
9
|
* By default, every file in the /assets/scripts directory is required by `require_tree .` *
|
10
10
|
* However, you may remove the `require_tree .` directive and instead specify individual files. *
|
@@ -3,8 +3,8 @@
|
|
3
3
|
* All of these stylesheet files will be compiled into a single stylesheet. *
|
4
4
|
* To use this combined stylesheet, include the following in the head section of your views: *
|
5
5
|
* *
|
6
|
-
* <%=
|
7
|
-
* <%=
|
6
|
+
* <%= manifest :stylesheet %> If including only application.css *
|
7
|
+
* <%= manifest :stylesheet, :script %> If including application.js as well *
|
8
8
|
* *
|
9
9
|
* By default, every file in the /assets/stylesheets directory is required by `require_tree .` *
|
10
10
|
* However, you may remove the `require_tree .` directive and instead specify individual files. *
|
@@ -1,5 +1,7 @@
|
|
1
1
|
require 'bundler'
|
2
|
-
|
2
|
+
require 'active_support/core_ext/hash'
|
3
|
+
require 'sinatra'
|
4
|
+
Bundler.require :default, settings.environment
|
3
5
|
Eucalypt.set_root __dir__
|
4
6
|
|
5
7
|
Static = Eucalypt::Static.new(Eucalypt.path('app', 'static'), symbolize: true).freeze
|
@@ -1,7 +1,9 @@
|
|
1
|
+
require 'fileutils'
|
1
2
|
class ApplicationController < Sinatra::Base
|
2
3
|
set :logger, Lumberjack::Logger.new
|
4
|
+
helpers { def logger() settings.logger end }
|
3
5
|
|
4
|
-
|
6
|
+
#= General logging =#
|
5
7
|
%i[production test].each do |e|
|
6
8
|
configure e do
|
7
9
|
use Rack::CommonLogger, $stdout
|
@@ -9,19 +11,14 @@ class ApplicationController < Sinatra::Base
|
|
9
11
|
log_path = Eucalypt.path 'log', Time.now.strftime("%Y-%m-%dT%H-%M-%S_%z").sub(/_\+/, ?p).sub(/_\-/, ?m)
|
10
12
|
FileUtils.mkdir_p log_path
|
11
13
|
|
12
|
-
# STDERR logger
|
13
14
|
$stderr.reopen File.new(File.join(log_path, "#{e}.stderr.log"), 'a+')
|
14
15
|
$stderr.sync = true
|
15
|
-
|
16
|
-
# STDOUT logger
|
17
16
|
$stdout.reopen File.new(File.join(log_path, "#{e}.stdout.log"), 'a+')
|
18
17
|
$stdout.sync = true
|
19
18
|
end
|
20
19
|
end
|
21
20
|
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
end
|
26
|
-
end
|
21
|
+
#= ActiveRecord logging =#
|
22
|
+
ActiveRecord::Base.logger = Logger.new STDOUT
|
23
|
+
ActiveRecord::Migration.verbose = true # Set to false for quieter logging
|
27
24
|
end
|
@@ -64,7 +64,7 @@ module Eucalypt
|
|
64
64
|
inject_into_file(user_model_file, insert, before: /^end/) unless contents.include? insert
|
65
65
|
end
|
66
66
|
|
67
|
-
Out.info "Ensure you run `#{'rake
|
67
|
+
Out.info "Ensure you run `#{'eucalypt rake'.colorize(:bold)}` to create the necessary tables for Pundit."
|
68
68
|
else
|
69
69
|
Eucalypt::Error.wrong_directory
|
70
70
|
end
|
@@ -64,7 +64,7 @@ module Eucalypt
|
|
64
64
|
auth_controller.generate
|
65
65
|
end
|
66
66
|
|
67
|
-
Out.info "Ensure you run `#{'rake
|
67
|
+
Out.info "Ensure you run `#{'eucalypt rake'.colorize(:bold)}` to create the necessary tables for Warden."
|
68
68
|
else
|
69
69
|
Eucalypt::Error.wrong_directory
|
70
70
|
end
|
data/lib/eucalypt/version.rb
CHANGED
data/lib/eucalypt.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: eucalypt
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Edwin Onuonga
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-11-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -157,6 +157,9 @@ dependencies:
|
|
157
157
|
- - "~>"
|
158
158
|
- !ruby/object:Gem::Version
|
159
159
|
version: '2.0'
|
160
|
+
- - ">="
|
161
|
+
- !ruby/object:Gem::Version
|
162
|
+
version: 2.0.4
|
160
163
|
type: :runtime
|
161
164
|
prerelease: false
|
162
165
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -164,6 +167,9 @@ dependencies:
|
|
164
167
|
- - "~>"
|
165
168
|
- !ruby/object:Gem::Version
|
166
169
|
version: '2.0'
|
170
|
+
- - ">="
|
171
|
+
- !ruby/object:Gem::Version
|
172
|
+
version: 2.0.4
|
167
173
|
- !ruby/object:Gem::Dependency
|
168
174
|
name: rerun
|
169
175
|
requirement: !ruby/object:Gem::Requirement
|
@@ -224,8 +230,11 @@ files:
|
|
224
230
|
- lib/eucalypt/core/cli/help.rb
|
225
231
|
- lib/eucalypt/core/cli/init.rb
|
226
232
|
- lib/eucalypt/core/cli/launch.rb
|
233
|
+
- lib/eucalypt/core/cli/rake.rb
|
227
234
|
- lib/eucalypt/core/cli/test.rb
|
228
235
|
- lib/eucalypt/core/cli/version.rb
|
236
|
+
- lib/eucalypt/core/helpers/manifest.rb
|
237
|
+
- lib/eucalypt/core/helpers/partial.rb
|
229
238
|
- lib/eucalypt/core/templates/Gemfile.tt
|
230
239
|
- lib/eucalypt/core/templates/eucalypt/.gitignore
|
231
240
|
- lib/eucalypt/core/templates/eucalypt/.travis.yml
|
@@ -246,12 +255,10 @@ files:
|
|
246
255
|
- lib/eucalypt/core/templates/eucalypt/app/views/layouts/main.erb
|
247
256
|
- lib/eucalypt/core/templates/eucalypt/app/views/partials/.empty_directory
|
248
257
|
- lib/eucalypt/core/templates/eucalypt/config.ru
|
249
|
-
- lib/eucalypt/core/templates/eucalypt/config/active_record.rb
|
250
258
|
- lib/eucalypt/core/templates/eucalypt/config/asset_pipeline.rb
|
251
259
|
- lib/eucalypt/core/templates/eucalypt/config/database.yml
|
252
260
|
- lib/eucalypt/core/templates/eucalypt/config/initializers/.empty_directory
|
253
261
|
- lib/eucalypt/core/templates/eucalypt/config/logging.rb
|
254
|
-
- lib/eucalypt/core/templates/eucalypt/config/manifest.rb
|
255
262
|
- lib/eucalypt/core/templates/eucalypt/log/.empty_directory
|
256
263
|
- lib/eucalypt/core/templates/eucalypt/spec/controllers/application_controller_spec.rb
|
257
264
|
- lib/eucalypt/core/templates/eucalypt/spec/helpers/application_helper_spec.rb
|
@@ -367,7 +374,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
367
374
|
version: '0'
|
368
375
|
requirements: []
|
369
376
|
rubyforge_project:
|
370
|
-
rubygems_version: 2.7.
|
377
|
+
rubygems_version: 2.7.6
|
371
378
|
signing_key:
|
372
379
|
specification_version: 4
|
373
380
|
summary: Micro-framework and CLI wrapped around the Sinatra DSL.
|
@@ -1,15 +0,0 @@
|
|
1
|
-
class ApplicationController < Sinatra::Base
|
2
|
-
# Application manifest file accessor method
|
3
|
-
helpers do
|
4
|
-
def application(*args)
|
5
|
-
html = String.new
|
6
|
-
args.map(&:to_sym).each do |arg|
|
7
|
-
html << stylesheet('application') if %i[css stylesheet].include? arg
|
8
|
-
html << javascript('application') if %i[js javascript].include? arg
|
9
|
-
end
|
10
|
-
html
|
11
|
-
rescue
|
12
|
-
raise ArgumentError.new "Expected arguments to be any of: #{css+js}"
|
13
|
-
end
|
14
|
-
end
|
15
|
-
end
|