docile 1.3.1 → 1.3.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 11815257ca44981c34b07c7f17fe1c2e6ca599783bc14aec836493812ebecd7b
4
- data.tar.gz: f605e98ec83e48744601de31ea5809744b11227b89b3822c172c82c894498515
3
+ metadata.gz: d7dae1c209d04576cf98b4d080a44f659eaf7ed41dccf942bec2ff95c44db5e8
4
+ data.tar.gz: 3209a17a2588ba8c873fddd9b5c219ea6e7b73d3fcb3575997b347480abc622a
5
5
  SHA512:
6
- metadata.gz: 2eabf55eeea7884e053664c3c1dfab240ae7c6f808318de6dcc27d3d01b330d7ffe4e5983c4eeb95291462048b1ebd37d72a60018bc90bda55b0c3d6a6a5c746
7
- data.tar.gz: 6bf630c901e53f09e3c7d6ee2f3c1c102dcfe45f8536b44cd619bc6bfcf0711b98a7fe0a415115dbd67d5f0fedb3bffd77fada17f1d11ec2d25ba36e72752003
6
+ metadata.gz: 714bafc9545d9ccc0037fdb5c9fa8ff016a6f5f3df3c758ca16b225e371758cb3b00f2afb85763eef87576686192b129a53f1b21e2ee4f34089bdd6ad58ffd54
7
+ data.tar.gz: bb82951b411c16cd720bdf9c359f43f4e38c9fa71815d336ee45bc240eeb7d9e2de1922dacdaad84ebfffdfdb54a25bf023302a0fe487a1507d102d9e59dfcae
@@ -9,6 +9,7 @@ dist: trusty
9
9
  rvm:
10
10
  # MRI
11
11
  - ruby-head
12
+ - 2.6
12
13
  - 2.5
13
14
  - 2.4
14
15
  - 2.3
@@ -19,10 +20,8 @@ rvm:
19
20
  - ree
20
21
  # JRuby
21
22
  - jruby-head
22
- - jruby-9.1.15.0 # Specific version to work around https://github.com/travis-ci/travis-ci/issues/9049
23
+ - jruby-9.1
23
24
  - jruby-9.0
24
- - jruby-19mode
25
- - jruby-18mode
26
25
  # Rubinius
27
26
  - rubinius-3
28
27
 
data/HISTORY.md CHANGED
@@ -1,9 +1,14 @@
1
1
  # HISTORY
2
2
 
3
- ## [Unreleased changes](http://github.com/ms-ati/docile/compare/v1.3.1...master)
3
+ ## [Unreleased changes](http://github.com/ms-ati/docile/compare/v1.3.2...master)
4
4
 
5
5
  - ...
6
6
 
7
+ ## [v1.3.2 (Jun 12, 2019)](http://github.com/ms-ati/docile/compare/v1.3.1...v1.3.2)
8
+
9
+ - Special thanks (again!) to Taichi Ishitani (@taichi-ishitani):
10
+ - Fix for DSL object is replaced when #dsl_eval is nested (#33, PR #34)
11
+
7
12
  ## [v1.3.1 (May 24, 2018)](http://github.com/ms-ati/docile/compare/v1.3.0...v1.3.1)
8
13
 
9
14
  - Special thanks to Taichi Ishitani (@taichi-ishitani):
data/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2012-2018 Marc Siegel
3
+ Copyright (c) 2012-2019 Marc Siegel
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
data/README.md CHANGED
@@ -374,7 +374,7 @@ Docile releases follow [Semantic Versioning 2.0.0](https://semver.org/spec/v2.0.
374
374
 
375
375
  ## Copyright & License
376
376
 
377
- Copyright (c) 2012-2018 Marc Siegel.
377
+ Copyright (c) 2012-2019 Marc Siegel.
378
378
 
379
379
  Licensed under the [MIT License](http://choosealicense.com/licenses/mit/), see [LICENSE](LICENSE) for details.
380
380
 
@@ -31,6 +31,7 @@ Gem::Specification.new do |s|
31
31
  s.add_development_dependency "rake", "~> 10.5" if on_less_than_1_9_3? # Pin compatible rake on old rubies, see: https://github.com/travis-ci/travis.rb/issues/380
32
32
  s.add_development_dependency "rake", "< 11.0" unless on_less_than_1_9_3? # See http://stackoverflow.com/questions/35893584/nomethoderror-undefined-method-last-comment-after-upgrading-to-rake-11
33
33
  s.add_development_dependency "rspec", "~> 3.0"
34
+ s.add_development_dependency "rspec-expectations", "!= 3.8.3" # Workaround for RSpec's issue, see: https://github.com/rspec/rspec-expectations/issues/1111
34
35
 
35
36
  # Run code coverage where possible - not on Rubinius
36
37
  unless on_rubinius?
@@ -21,6 +21,10 @@ module Docile
21
21
  :instance_variable_get, :instance_variable_set,
22
22
  :remove_instance_variable]
23
23
 
24
+ # The set of methods which will **not** fallback from the block's context
25
+ # to the dsl object.
26
+ NON_FALLBACK_METHODS = Set[:class, :self, :respond_to?, :instance_of?]
27
+
24
28
  # The set of instance variables which are local to this object and hidden.
25
29
  # All other instance variables will be copied in and out of this object
26
30
  # from the scope in which this proxy was created.
@@ -49,7 +53,8 @@ module Docile
49
53
  # contain calls to methods on the DSL object.
50
54
  singleton_class.
51
55
  send(:define_method, :method_missing) do |method, *args, &block|
52
- if receiver.respond_to?(method.to_sym)
56
+ m = method.to_sym
57
+ if !NON_FALLBACK_METHODS.include?(m) && !fallback.respond_to?(m) && receiver.respond_to?(m)
53
58
  receiver.__send__(method.to_sym, *args, &block)
54
59
  else
55
60
  super(method, *args, &block)
@@ -1,4 +1,4 @@
1
1
  module Docile
2
2
  # The current version of this library
3
- VERSION = "1.3.1"
3
+ VERSION = "1.3.2"
4
4
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: docile
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.1
4
+ version: 1.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marc Siegel
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-05-24 00:00:00.000000000 Z
11
+ date: 2019-06-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '3.0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rspec-expectations
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "!="
46
+ - !ruby/object:Gem::Version
47
+ version: 3.8.3
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "!="
53
+ - !ruby/object:Gem::Version
54
+ version: 3.8.3
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: yard
43
57
  requirement: !ruby/object:Gem::Requirement
@@ -125,7 +139,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
125
139
  version: '0'
126
140
  requirements: []
127
141
  rubyforge_project:
128
- rubygems_version: 2.7.4
142
+ rubygems_version: 2.7.9
129
143
  signing_key:
130
144
  specification_version: 4
131
145
  summary: Docile keeps your Ruby DSLs tame and well-behaved.