Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions HISTORY.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
## master
* Added support for Psych 4

## 3.0.7
* 監査ログ関連で状態管理が発生するような機能追加に備えてスレッドセーフティを事前に強化
* ffi のバージョンを 1.17.0 以下に固定
Expand Down
5 changes: 5 additions & 0 deletions bizside_test_app/Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,11 @@ gem 'sqlite3', '>= 1.3', '< 1.6.0'
gem 'turbolinks'
gem 'uglifier', '>= 1.3.0'

# Prevent error `uninitialized constant ActiveSupport::LoggerThreadSafeLevel::Logger (NameError)`
if rails_version < '7.1'
gem 'concurrent-ruby', '1.3.4'
end

group :development, :test do
gem 'byebug'
gem 'cucumber', '~> 7.1'
Expand Down
9 changes: 4 additions & 5 deletions lib/bizside.rb
Original file line number Diff line number Diff line change
Expand Up @@ -51,11 +51,10 @@ def self.config
end

configfile = ENV['CONFIG_FILE'] || File.join('config', 'bizside.yml')
if File.exist?(configfile)
@@_config = Bizside::Config.new(YAML.load_file(configfile)[Bizside.env])
else
raise "設定ファイルの #{configfile} は必須です。"
end
raise "設定ファイルの #{configfile} は必須です。" unless File.exist?(configfile)

entire_config = YAML.respond_to?(:safe_load_file) ? YAML.safe_load_file(configfile, aliases: true) : YAML.load_file(configfile)
@@_config = Bizside::Config.new(entire_config[Bizside.env])
end

def self.logger
Expand Down
7 changes: 3 additions & 4 deletions lib/bizside/acl/access_control_utils.rb
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,8 @@ def self.init(reload = false)
end

def self.merge(filename)
yml = YAML.load_file(filename)

yml.each do |roll_key, values|
entire_config = YAML.respond_to?(:safe_load_file) ? YAML.safe_load_file(filename, aliases: true) : YAML.load_file(filename)
entire_config.each do |roll_key, values|
@@access_control[roll_key] ||= {}
@@access_control[roll_key].merge!(values)
end
Expand All @@ -33,4 +32,4 @@ def self.get_access_control(roll_key)
@@access_control[roll_key]
end

end
end
3 changes: 2 additions & 1 deletion lib/bizside/carrierwave.rb
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,8 @@ def path

CarrierWave.configure do |config|
database_yml = ERB.new(File.read(File.join('config', 'database.yml')), 0, '-').result
database = YAML.load(database_yml)[Bizside.env]['database']
entire_config = YAML.respond_to?(:safe_load) ? YAML.safe_load(database_yml, aliases: true) : YAML.load(database_yml)
database = entire_config[Bizside.env]['database']

config.root = File.join('/data', Bizside.config.add_on_name, database)

Expand Down
15 changes: 7 additions & 8 deletions lib/bizside/configurations/mail.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,16 @@ module Configurations
module Mail

def mail
if @mail.nil?
configfile = File.join('config', 'mail.yml')
return @mail if defined? @mail

configfile = File.join('config', 'mail.yml')

if File.exist?(configfile)
@mail = Bizside::Config.new(YAML.load_file(configfile)[Bizside.env])
@mail = if File.exist?(configfile)
entire_config = YAML.respond_to?(:safe_load_file) ? YAML.safe_load_file(configfile, aliases: true) : YAML.load_file(configfile)
Bizside::Config.new(entire_config[Bizside.env])
else
@mail = Bizside::Config.new
Bizside::Config.new
end
end

@mail
end

def default_url_options
Expand Down
16 changes: 7 additions & 9 deletions lib/bizside/configurations/storage.rb
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,16 @@ module Configurations
module Storage

def storage
if @storage.nil?
configfile = ENV['STORAGE_CONFIG_FILE'] ? ENV['STORAGE_CONFIG_FILE'] : default_configfile
return @storage if defined? @storage

if File.exist?(configfile)
config = ERB.new(File.read(configfile), 0, '-').result
@storage = Bizside::Config.new(YAML.load(config)[Bizside.env])
configfile = ENV['STORAGE_CONFIG_FILE'] ? ENV['STORAGE_CONFIG_FILE'] : default_configfile
@storage = if File.exist?(configfile)
text = ERB.new(File.read(configfile), 0, '-').result
entire_config = YAML.respond_to?(:safe_load) ? YAML.safe_load(text, aliases: true) : YAML.load(text)
Bizside::Config.new(entire_config[Bizside.env])
else
@storage = Bizside::Config.new
Bizside::Config.new
end
end

@storage
end

private
Expand Down
4 changes: 3 additions & 1 deletion lib/bizside/gengou.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@

module Bizside
class Gengou
@@_gengou = YAML.load_file(File.join(File.dirname(__FILE__), 'gengou.yml'))
@@_gengou = File.join(__dir__, 'gengou.yml').then do |filename|
YAML.respond_to?(:safe_load_file) ? YAML.safe_load_file(filename, permitted_classes: [Date]) : YAML.load_file(filename)
end

def self.to_seireki(gengou, year_jp)
# 引数 year_jpには年度の値が入る
Expand Down
5 changes: 4 additions & 1 deletion lib/bizside/hanaita_conf.rb
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,10 @@ class HanaitaConfSub

def initialize
conf_file = ENV['HANAITA_CONF'] || CONF_FILE
@_conf = YAML.load_file(conf_file) if File.exist?(conf_file)
@_conf = conf_file.then do |filename|
next nil unless File.exist?(filename)
YAML.respond_to?(:safe_load_file) ? YAML.safe_load_file(filename, aliases: true) : YAML.load_file(filename)
end
end

def conf
Expand Down
3 changes: 2 additions & 1 deletion lib/bizside/itamae_conf.rb
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,8 @@ def initialize
for conf_file in self.class.conf_files do
if File.exist?(conf_file)
@_conf ||= {}
hash = YAML.load(ERB.new(File.read(conf_file)).result)
text = ERB.new(File.read(conf_file)).result
hash = YAML.respond_to?(:safe_load) ? YAML.safe_load(text, aliases: true) : YAML.load(text)

case conf_file
# itamae.yml スペシャルロジック。ROLE必須。
Expand Down
19 changes: 10 additions & 9 deletions lib/bizside/resque.rb
Original file line number Diff line number Diff line change
Expand Up @@ -14,19 +14,20 @@ module Resque
yaml: ['config/resque.yml', 'config/redis.yml'],
json: ['config/resque.json', 'config/redis.json']
}.each do |format, file_candidates|
resque_config_loader = case format
when :yaml
->(text) { YAML.respond_to?(:safe_load) ? YAML.safe_load(text, aliases: true) : YAML.load(text) }
when :json
->(text) { ActiveSupport::JSON.decode(text) }
end

file_candidates.each do |file|
resque_file = File.join(File.expand_path(ENV['RAILS_ROOT'] || '.'), file)
next unless File.exist?(resque_file)

_resque_config = ERB.new(File.read(resque_file), 0, '-').result

case format
when :yaml
resque_config = YAML.safe_load(_resque_config)[Bizside.env]
when :json
resque_config = ActiveSupport::JSON.decode(_resque_config)[Bizside.env]
else
raise "不正なResque設定ファイルです。#{file}"
resque_config = ERB.new(File.read(resque_file), 0, '-').result.then do |text|
entire_config = resque_config_loader.call(text)
entire_config[Bizside.env]
end

if resque_config.is_a?(Hash)
Expand Down
5 changes: 4 additions & 1 deletion lib/bizside/task_helper.rb
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,10 @@ def self.ask_yes(prompt, options = {})

def self.ask_env(env_key, options = {})
cache_file = 'tmp/cache/env'
cache = File.exist?(cache_file) ? YAML.load_file(cache_file) : {}
cache = cache_file.then do |filename|
next {} unless File.exist?(filename)
YAML.respond_to?(:unsafe_load_file) ? YAML.unsafe_load_file(filename) : YAML.load_file(filename)
end

if options.fetch(:cache, false)
options = options.merge(default: cache.fetch(env_key, options[:default]))
Expand Down
8 changes: 5 additions & 3 deletions lib/bizside/uploader/extension_whitelist.rb
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,11 @@ module ExtensionWhitelist
extend ActiveSupport::Concern

included do
default_extensions = Bizside.config.file_uploader.extensions_file_path.present? ? Bizside.config.file_uploader.extensions_file_path :
File.join(File.dirname(__FILE__), 'default_extensions.yml')
@@extensions = YAML.load_file(default_extensions).values
@@extensions = Bizside.config.file_uploader.extensions_file_path.then do |filename|
filename = File.join(__dir__, 'default_extensions.yml') unless filename.present?
entire_config = YAML.respond_to?(:safe_load_file) ? YAML.safe_load_file(filename, aliases: true) : YAML.load_file(filename)
entire_config.values
end
end

def extension_allowlist
Expand Down
Loading