process_settings 0.12.0 → 0.13.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0b0dcdddb2cb6813f10589b7284f4bbaae8a1d235d4bc23f181a7f7a7750659d
4
- data.tar.gz: 84e9c90b0c30f7207be52afc9edc5dbc2382cf7f74ed16fecfbd023fd78268f9
3
+ metadata.gz: 73aea1798bdb8d5624c5f66dc1c2282a53b1c32fce2409983b35429a7a7432c7
4
+ data.tar.gz: c6e2d24b5e79ec87a94e6bda783a9f933ae1ab3282c5f9d8291f2f873cdd4840
5
5
  SHA512:
6
- metadata.gz: 436bc2f85eda4c8584cd5853a0824646b6877e074116b8c4713952a2f94428a98b8d9120b095ba16645e635cbd72a399d84bbff53075c7974c76bb8d27521e07
7
- data.tar.gz: 5356f8c93f2fd4b20fcc206aa8ab40c4ce89a8091fc827d9763050bb5fd316c3ecd7c763203f3181cd05b89cda3aefc4d180f70fc132f75b01cf25c79e049b8f
6
+ metadata.gz: e9ad1f070f4c9606ce7608c03d1db0345e290c945706883c04918b99910ab8985dec1505664844f5d2c15cfe6cbed9d7e77700a01d94096df0fb9204ad52555e
7
+ data.tar.gz: 3284db9c4250ac716e4c89cbdde718e5a1d079f97e99ca33925c6a1d537c6a50dd5beb5044af96f61cbd32bce8af6dabea8fdf193e71a480cbab818963ba2e59
@@ -10,6 +10,7 @@ require_relative '../lib/process_settings/targeted_settings'
10
10
 
11
11
  PROGRAM_NAME = File.basename($PROGRAM_NAME)
12
12
  SETTINGS_FOLDER = 'settings'
13
+ MINIMUM_LIBYAML_VERSION = Gem::Version.new('0.2.6') # So that null (nil) values don't have trailing spaces.
13
14
 
14
15
  def end_marker(version)
15
16
  {
@@ -75,10 +76,29 @@ def add_warning_comment(yaml, root_folder, program_name, settings_folder)
75
76
  yaml.sub("\n", "\n" + warning_comment)
76
77
  end
77
78
 
79
+ def check_libyaml_version
80
+ Gem::Version.new(Psych::LIBYAML_VERSION) >= MINIMUM_LIBYAML_VERSION or
81
+ warn <<~EOS
82
+
83
+ #{PROGRAM_NAME} error: libyaml version #{Psych::LIBYAML_VERSION} must be at least #{MINIMUM_LIBYAML_VERSION}. Try:
84
+
85
+ brew update && upgrade libyaml
86
+
87
+ You may also need:
88
+
89
+ gem install psych -- --enable-bundled-libyaml
90
+ EOS
91
+
92
+ exit(1)
93
+ end
94
+
95
+
78
96
  #
79
97
  # main
80
98
  #
81
99
 
100
+ check_libyaml_version
101
+
82
102
  options = parse_options(ARGV.dup)
83
103
 
84
104
  combined_settings = read_and_combine_settings(Pathname.new(options.root_folder) + SETTINGS_FOLDER)
@@ -86,7 +106,7 @@ combined_settings = read_and_combine_settings(Pathname.new(options.root_folder)
86
106
  version_number = options.version || default_version_number(options.initial_filename)
87
107
  combined_settings << end_marker(version_number)
88
108
 
89
- yaml = combined_settings.to_yaml.gsub(/: $/, ": null") # implicit null caused problems because of trailing whitespace
109
+ yaml = combined_settings.to_yaml
90
110
  yaml_with_warning_comment = add_warning_comment(yaml, options.root_folder, PROGRAM_NAME, SETTINGS_FOLDER)
91
111
 
92
112
  output_filename = options.output_filename
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ProcessSettings
4
- VERSION = '0.12.0'
4
+ VERSION = '0.13.0'
5
5
  end
metadata CHANGED
@@ -1,11 +1,11 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: process_settings
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.0
4
+ version: 0.13.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Invoca
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
  date: 2019-09-19 00:00:00.000000000 Z
@@ -58,6 +58,20 @@ dependencies:
58
58
  - - "~>"
59
59
  - !ruby/object:Gem::Version
60
60
  version: '3.0'
61
+ - !ruby/object:Gem::Dependency
62
+ name: psych
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '3.2'
68
+ type: :runtime
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
73
+ - !ruby/object:Gem::Version
74
+ version: '3.2'
61
75
  description: Targeted process settings that dynamically reload without restarting
62
76
  the process
63
77
  email: development+ps@invoca.com
@@ -97,7 +111,7 @@ licenses:
97
111
  metadata:
98
112
  source_code_uri: https://github.com/Invoca/process_settings
99
113
  allowed_push_host: https://rubygems.org
100
- post_install_message:
114
+ post_install_message:
101
115
  rdoc_options: []
102
116
  require_paths:
103
117
  - lib
@@ -113,7 +127,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
113
127
  version: '0'
114
128
  requirements: []
115
129
  rubygems_version: 3.0.3
116
- signing_key:
130
+ signing_key:
117
131
  specification_version: 4
118
132
  summary: Dynamic process settings
119
133
  test_files: []