lono 6.1.9 → 6.1.10
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/lib/lono/app_file/build.rb +6 -1
- data/lib/lono/template/context.rb +6 -0
- data/lib/lono/template/context/loader.rb +1 -1
- data/lib/lono/template/dsl/builder/base.rb +1 -1
- data/lib/lono/template/dsl/builder/squeezer.rb +23 -0
- data/lib/lono/version.rb +1 -1
- metadata +3 -3
- data/lib/lono/template/dsl/builder/hash_squeezer.rb +0 -20
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a497745aa03146372828bb2974c071d971391cfb683a779cf8b6dcb61888b0d5
|
4
|
+
data.tar.gz: 8b6f6c39b7c74e7ec3583e85434039ac124e2538d3af059fa0119174ae37b407
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8b561e711d24e6e6750ed37305c330448916f46cb2da5d628fcf9618ac6d4fe6ecb1eae23c3c51b33168aaf61e928a1ef96333614045c5ae2afb316e041d93b9
|
7
|
+
data.tar.gz: 52fa0b0add58c86db1c643025a8e71eca87d31ba47a3e953fa7ee5da519a16798e523dd22baa4ee45185f81ef2ac14c53e7a1dc0d9d26a612b8fd7d74afee445
|
data/CHANGELOG.md
CHANGED
@@ -3,6 +3,11 @@
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
4
4
|
This project *tries* to adhere to [Semantic Versioning](http://semver.org/), even before v1.0.
|
5
5
|
|
6
|
+
## [6.1.10]
|
7
|
+
- #32 use lono dsl scope for the app files erb processing
|
8
|
+
- #33 fix squeezer for Array. squeeze hashes nested in arrays too
|
9
|
+
- #34 fix squeeze for false values
|
10
|
+
|
6
11
|
## [6.1.9]
|
7
12
|
- #30 fix md5 sum calcuation for single file
|
8
13
|
- #31 Add app files ERB support docs
|
data/lib/lono/app_file/build.rb
CHANGED
@@ -29,9 +29,14 @@ module Lono::AppFile
|
|
29
29
|
def copy_to_output
|
30
30
|
override_source_paths("#{Lono.blueprint_root}/app/files")
|
31
31
|
self.destination_root = @output_files_path
|
32
|
-
directory(".", verbose: false)
|
32
|
+
directory(".", verbose: false, context: context.get_binding) # Thor::Action
|
33
33
|
end
|
34
34
|
|
35
|
+
def context
|
36
|
+
Lono::Template::Context.new(@blueprint, @options)
|
37
|
+
end
|
38
|
+
memoize :context
|
39
|
+
|
35
40
|
def zip_file(item)
|
36
41
|
path = item.path
|
37
42
|
zip_file = item.zip_file_name
|
@@ -20,5 +20,11 @@ class Lono::Template
|
|
20
20
|
instance_variable_set('@' + key.to_s, value)
|
21
21
|
end
|
22
22
|
end
|
23
|
+
|
24
|
+
# For Lono::AppFile::Build usage of Thor::Action directory
|
25
|
+
# For some reason a send(:binding) doesnt work but get_binding like this works.
|
26
|
+
def get_binding
|
27
|
+
binding
|
28
|
+
end
|
23
29
|
end
|
24
30
|
end
|
@@ -8,7 +8,7 @@ class Lono::Template::Context
|
|
8
8
|
# config/variables/development.rb - will override any variables in base.rb
|
9
9
|
#
|
10
10
|
def load_variables
|
11
|
-
options = @options.
|
11
|
+
options = ActiveSupport::HashWithIndifferentAccess.new(@options.dup)
|
12
12
|
options[:blueprint] = @blueprint
|
13
13
|
options[:stack] ||= @blueprint
|
14
14
|
location = Lono::ConfigLocation.new("variables", options, Lono.env)
|
@@ -0,0 +1,23 @@
|
|
1
|
+
class Lono::Template::Dsl::Builder
|
2
|
+
class Squeezer
|
3
|
+
def initialize(data)
|
4
|
+
@data = data
|
5
|
+
end
|
6
|
+
|
7
|
+
def squeeze(new_data=nil)
|
8
|
+
data = new_data.nil? ? @data : new_data
|
9
|
+
|
10
|
+
case data
|
11
|
+
when Array
|
12
|
+
data.map! { |v| squeeze(v) }
|
13
|
+
when Hash
|
14
|
+
data.each_with_object({}) do |(k,v), squeezed|
|
15
|
+
squeezed[k] = squeeze(v) unless v.nil? # only remove nil values within Hash structures
|
16
|
+
squeezed
|
17
|
+
end
|
18
|
+
else
|
19
|
+
data # do not transform
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
data/lib/lono/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lono
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 6.1.
|
4
|
+
version: 6.1.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tung Nguyen
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-12-
|
11
|
+
date: 2019-12-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -555,7 +555,6 @@ files:
|
|
555
555
|
- lib/lono/template/dsl/builder/base.rb
|
556
556
|
- lib/lono/template/dsl/builder/condition.rb
|
557
557
|
- lib/lono/template/dsl/builder/fn.rb
|
558
|
-
- lib/lono/template/dsl/builder/hash_squeezer.rb
|
559
558
|
- lib/lono/template/dsl/builder/helpers.rb
|
560
559
|
- lib/lono/template/dsl/builder/helpers/core_helper.rb
|
561
560
|
- lib/lono/template/dsl/builder/helpers/param_helper.rb
|
@@ -566,6 +565,7 @@ files:
|
|
566
565
|
- lib/lono/template/dsl/builder/resource/property_mover.rb
|
567
566
|
- lib/lono/template/dsl/builder/section.rb
|
568
567
|
- lib/lono/template/dsl/builder/section_methods.rb
|
568
|
+
- lib/lono/template/dsl/builder/squeezer.rb
|
569
569
|
- lib/lono/template/dsl/builder/syntax.rb
|
570
570
|
- lib/lono/template/erb.rb
|
571
571
|
- lib/lono/template/evaluate.rb
|
@@ -1,20 +0,0 @@
|
|
1
|
-
# Based on https://stackoverflow.com/questions/32174183/remove-nil-values-from-hash
|
2
|
-
class Lono::Template::Dsl::Builder
|
3
|
-
class HashSqueezer
|
4
|
-
def initialize(data)
|
5
|
-
@data = data
|
6
|
-
end
|
7
|
-
|
8
|
-
def squeeze(new_data=nil)
|
9
|
-
data = new_data || @data
|
10
|
-
data.each_with_object({}) do |(k, v), squeezed|
|
11
|
-
if v.is_a?(Hash)
|
12
|
-
squeezed[k] = squeeze(v)
|
13
|
-
else
|
14
|
-
squeezed[k] = v unless v.nil?
|
15
|
-
end
|
16
|
-
squeezed
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|