process_settings 0.12.0 → 0.13.0

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: 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: []