evt-env_var 2.3.0.0 → 2.3.1.1

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 (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/env_var/env_var.rb +14 -2
  3. metadata +16 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3d0bdf401f27c657c212120f240fa987925956089c3476a90edefe103872b3ff
4
- data.tar.gz: dec499669e74accf72e58a273cfe43b0842a3cfc544b450b9563d1fe19e82e3c
3
+ metadata.gz: 5f952cec44b62193faec3dd1dc329425f6004e545ec58ddc47a80920d6fe68a5
4
+ data.tar.gz: d531433f72941bc8925f37710c8b359f700f821853471ce99e50bbda73bf4477
5
5
  SHA512:
6
- metadata.gz: 9c0a0abef24619c00e994b1b6b70e613819f920b917e6d7fa195fcd0b4f475b9bf0798abf8d1946be320f4758f322402cbcd6ed95fee991c96780c1cf6a39de7
7
- data.tar.gz: cc15312093368d7e49af6e73a2b60eb4b63fcdb734b43f022eb84b5347622954e8137ed06aa347b0384497b765fc743ce5fd4cd9c63af86b9151e76eb242321f
6
+ metadata.gz: 877e952b3350096a9fb236764d027dcbf66e5438fb8b17ad2327852504a0bb2af87405a7d3e75f31a030ee9fd33e7219d24ec74a022a5c84ffb1eb2a64943124
7
+ data.tar.gz: 371b53168c1312b0de8be457d33d2b023e22206d1e43fd64eada67836dfd59c37672fa734899d2c423ae9a74029a99dbfe6caaaff8eafc428587abd0993e6e06
@@ -29,12 +29,24 @@ module EnvVar
29
29
  value
30
30
  end
31
31
 
32
- def self.unset(name)
32
+ def self.unset(name, &action)
33
33
  logger.trace { "Unsetting environment variable (Name: #{name.inspect})" }
34
34
  value = ENV.delete(name)
35
35
  logger.debug { "Unset environment variable (Name: #{name.inspect}, Value: #{value.inspect})" }
36
36
 
37
- value
37
+ return value if action.nil?
38
+
39
+ begin
40
+ action.call
41
+
42
+ value
43
+ ensure
44
+ if value.nil?
45
+ ENV.delete(name)
46
+ else
47
+ set(name, value)
48
+ end
49
+ end
38
50
  end
39
51
 
40
52
  def self.push(name_or_hash, value=nil, &action)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: evt-env_var
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.0.0
4
+ version: 2.3.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - The Eventide Project
@@ -37,6 +37,20 @@ dependencies:
37
37
  - - ">="
38
38
  - !ruby/object:Gem::Version
39
39
  version: '0'
40
+ - !ruby/object:Gem::Dependency
41
+ name: evt-constant
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
47
+ type: :development
48
+ prerelease: false
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
40
54
  description: " "
41
55
  email: opensource@eventide-project.org
42
56
  executables: []
@@ -66,7 +80,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
66
80
  - !ruby/object:Gem::Version
67
81
  version: '0'
68
82
  requirements: []
69
- rubygems_version: 4.0.3
83
+ rubygems_version: 4.0.17
70
84
  specification_version: 4
71
85
  summary: Temporarily set environment variable values by treating the environment as
72
86
  a stack, and using blocks to control scope