Skip to content

Commit 2d442e3

Browse files
authored
Merge pull request #45 from i7an/cast_booleans
Cast boolean values
2 parents a60ce90 + 66b555b commit 2d442e3

20 files changed

+257
-219
lines changed

.github/workflows/tests.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,11 @@ jobs:
1010
strategy:
1111
matrix:
1212
os: [ubuntu, macos]
13-
ruby-version: ['3.1', '3.0', '2.7', '2.6', '2.5']
13+
ruby-version:
14+
- 3.3
15+
- 3.2
16+
- 3.1
17+
- 3.0
1418
steps:
1519
- uses: actions/checkout@v2
1620

.gitignore

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,11 @@ Gemfile.lock
44
pkg/*
55
.rspec
66
coverage/**
7-
.DS_Store
7+
.DS_Store
8+
9+
.ruby-gemset
10+
.ruby-version
11+
.tool-versions
12+
13+
.vscode
14+
.idea

.rspec

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11
--color
2+
--require spec_helper

.rubocop.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1+
require:
2+
- rubocop-rake
3+
- rubocop-rspec
4+
5+
AllCops:
6+
TargetRubyVersion: 3.0
7+
NewCops: enable
8+
19
Metrics/MethodLength:
210
Enabled: true
311
Max: 11

CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
## [3.0.0] - 2024-12-04
2+
3+
- Predicate methods now cast the value to a boolean
4+
```ruby
5+
Global.foo.enabled # => "0"
6+
Global.foo.enabled? # => false
7+
```
8+
- Dropped Ruby 2.7 support

Gemfile

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,15 @@
22

33
source 'https://rubygems.org'
44

5-
# Specify your gem's dependencies in global.gemspec
65
gemspec
6+
7+
gem 'aws-sdk-ssm', '~> 1'
8+
gem 'google-cloud-secret_manager', '~> 0'
9+
10+
gem 'rake', '>= 13'
11+
gem 'rspec', '>= 3.0'
12+
gem 'simplecov'
13+
14+
gem 'rubocop', '~> 1.68'
15+
gem 'rubocop-rake'
16+
gem 'rubocop-rspec'

Rakefile

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,7 @@
11
# frozen_string_literal: true
22

3-
require 'rubygems'
4-
require 'bundler'
5-
6-
Bundler.require
7-
8-
require 'rspec/core/rake_task'
93
require 'bundler/gem_tasks'
4+
require 'rspec/core/rake_task'
105
require 'rubocop/rake_task'
116

127
RSpec::Core::RakeTask.new(:spec)

global.gemspec

Lines changed: 8 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,24 @@
11
# frozen_string_literal: true
22

3-
$LOAD_PATH.push File.expand_path('lib', __dir__)
4-
require 'global/version'
3+
require_relative 'lib/global/version'
54

65
Gem::Specification.new do |s|
76
s.name = 'global'
87
s.version = Global::VERSION
8+
s.required_ruby_version = '>= 3.0.0'
99
s.authors = ['Railsware LLC']
1010
s.email = '[email protected]'
11-
1211
s.description = 'Simple way to load your configs from yaml/aws/gcp'
12+
13+
s.homepage = 'https://github.com/railsware/global'
14+
s.licenses = ['MIT']
1315
s.summary = 'Simple way to load your configs from yaml/aws/gcp'
1416

17+
s.metadata['rubygems_mfa_required'] = 'true'
18+
1519
s.files = `git ls-files`.split("\n")
16-
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
1720
s.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
1821
s.require_paths = ['lib']
1922

20-
s.homepage = 'https://github.com/railsware/global'
21-
s.licenses = ['MIT']
22-
23-
s.add_development_dependency 'aws-sdk-ssm', '~> 1'
24-
s.add_development_dependency 'google-cloud-secret_manager', '~> 0'
25-
s.add_development_dependency 'rake', '~> 12.3.1'
26-
s.add_development_dependency 'rspec', '>= 3.0'
27-
s.add_development_dependency 'rubocop', '~> 0.81.0'
28-
s.add_development_dependency 'simplecov', '~> 0.16.1'
29-
30-
s.add_runtime_dependency 'activesupport', '>= 2.0'
23+
s.add_dependency 'activesupport', '>= 2.0'
3124
end

lib/global/backend/aws_parameter_store.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ def load_parameters_from_ssm(next_token = nil)
9595
def build_configuration_from_parameters(parameters)
9696
configuration = {}
9797
parameters.each do |parameter|
98-
parameter_parts = parameter.name[@prefix.length..-1].split(PATH_SEPARATOR).map(&:to_sym)
98+
parameter_parts = parameter.name[@prefix.length..].split(PATH_SEPARATOR).map(&:to_sym)
9999
param_container = parameter_parts[0..-2].reduce(configuration) do |container, part|
100100
container[part] ||= {}
101101
end

lib/global/backend/filesystem.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ def get_config_by_key(config, key)
6060
end
6161

6262
def load_yml_file(file)
63-
file_contents = ERB.new(IO.read(file)).result
63+
file_contents = ERB.new(File.read(file)).result
6464
permitted_classes = [Date, Time, DateTime, Symbol].concat(@yaml_whitelist_classes)
6565

6666
if Gem::Version.new(Psych::VERSION) >= Gem::Version.new('4')

0 commit comments

Comments
 (0)