You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

zeitwerk.rb 727B

1234567891011121314151617181920212223242526272829303132
  1. # frozen_string_literal: true
  2. lib = Rails.root.join('lib/redmine')
  3. Rails.autoloaders.main.push_dir lib, namespace: Redmine
  4. Rails.application.config.watchable_dirs[lib] = [:rb]
  5. IGNORE_LIST = [
  6. 'wiki_formatting/textile/redcloth3.rb',
  7. 'core_ext.rb',
  8. 'core_ext'
  9. ]
  10. class RedmineInflector < Zeitwerk::Inflector
  11. def camelize(basename, abspath)
  12. abspath.match?('redmine\/version.rb\z') ? 'VERSION' : super
  13. end
  14. end
  15. Rails.autoloaders.each do |loader|
  16. loader.inflector = RedmineInflector.new
  17. loader.inflector.inflect(
  18. 'html' => 'HTML',
  19. 'csv' => 'CSV',
  20. 'pdf' => 'PDF',
  21. 'url' => 'URL',
  22. 'pop3' => 'POP3',
  23. 'imap' => 'IMAP'
  24. )
  25. IGNORE_LIST.each do |mod|
  26. loader.ignore lib.join(mod)
  27. end
  28. end