Sha256: 0a00014c3a45cb858367c860bc8123e5fde92959b6eb5c6c91be29859ba2ed73

Contents?: true

Size: 901 Bytes

Versions: 8

Compression:

Stored size: 901 Bytes

Contents

module Praxis


  module BootloaderStages

    class WarnUnloadedFiles < Stage
      @enabled = true

      def self.enabled=(enabled)
        @enabled = enabled
      end

      def self.enabled
        @enabled
      end

      def execute
        return unless self.class.enabled
        base = application.file_layout[:app].base
        return unless base.exist?
        file_enum = base.find.to_a
        files = file_enum.select do |file|
          path = file.relative_path_from(base)
          path.extname == '.rb'
        end

        missing = Set.new(files) - application.loaded_files
        if missing.any?
          msg = "The following files application files under #{base} were not loaded:\n"
          missing.each do |file|
            path = file.relative_path_from(base)
            msg << " * #{path}\n"
          end
          puts msg
        end
      end


    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
praxis-0.14.0 lib/praxis/bootloader_stages/warn_unloaded_files.rb
praxis-0.13.0 lib/praxis/bootloader_stages/warn_unloaded_files.rb
praxis-0.11.2 lib/praxis/bootloader_stages/warn_unloaded_files.rb
praxis-0.11.1 lib/praxis/bootloader_stages/warn_unloaded_files.rb
praxis-0.11 lib/praxis/bootloader_stages/warn_unloaded_files.rb
praxis-0.11pre lib/praxis/bootloader_stages/warn_unloaded_files.rb
praxis-0.10.1 lib/praxis/bootloader_stages/warn_unloaded_files.rb
praxis-0.10.0 lib/praxis/bootloader_stages/warn_unloaded_files.rb