Module: Jsus

Defined in:
lib/jsus.rb,
lib/jsus/tag.rb,
lib/jsus/pool.rb,
lib/jsus/util.rb,
lib/jsus/package.rb,
lib/jsus/packager.rb,
lib/jsus/container.rb,
lib/jsus/util/tree.rb,
lib/jsus/middleware.rb,
lib/jsus/source_file.rb,
lib/jsus/util/logger.rb,
lib/jsus/util/validator.rb,
lib/jsus/util/compressor.rb,
lib/jsus/util/documenter.rb,
lib/jsus/util/file_cache.rb,
lib/jsus/util/inflection.rb,
lib/jsus/util/code_generator.rb,
lib/jsus/util/validator/base.rb,
lib/jsus/util/validator/mooforge.rb,
bin/jsus

Overview

Jsus -- your better javascript packager.

Defined Under Namespace

Modules: Util Classes: BadSourceFileException, CLI, Container, Middleware, Package, Packager, Pool, SourceFile, Tag

Class Method Summary collapse

Class Method Details

.loggerJsus::Util::Logger

Jsus logger used for all the output. By default uses Logger::ERROR level severity and screen as output device.

Returns:



73
74
75
76
77
78
79
80
# File 'lib/jsus.rb', line 73

def self.logger
  Thread.current[:jsus_logger] ||= Jsus::Util::Logger.new(STDOUT).tap do |logger|
    logger.level = Logger::ERROR
    logger.formatter = lambda {|severity, time, progname, msg|
      "[#{time.strftime("%Y-%m-%d %H:%M:%S")}] [JSUS:#{severity}] #{msg}\n"
    }
  end
end

.logger=(value) ⇒ Object

Note:

In case you use non-jsus logger, you might want to extend it with Jsus::Util::Logger::Buffering module.

Reassign jsus logger whenever needed (E.g. use rails logger)

Parameters:

  • value

    Logger responding to #info, #warn, #debug, #error, #fatal, and #buffer



88
89
90
# File 'lib/jsus.rb', line 88

def self.logger=(value)
  Thread.current[:jsus_logger] = value
end

.look_for_cycles=(value) ⇒ Object

Parameters:

  • (Boolean)

See Also:



65
66
67
# File 'lib/jsus.rb', line 65

def self.look_for_cycles=(value)
  @look_for_cycles = value
end

.look_for_cycles?Boolean

Circular dependencies cannot be resolved and lead to "impossible" situations and problems, like missing source files or incorrect ordering.

However, checking for cycles is quite computationally expensive, which is why you may want to disable it in production mode.

Returns:

  • (Boolean)


59
60
61
# File 'lib/jsus.rb', line 59

def self.look_for_cycles?
  @look_for_cycles == nil ? true : @look_for_cycles
end

.verbose=(verbose) ⇒ Object

Parameters:

  • verbose (Boolean)

    verbose verbosity mode

See Also:



39
40
41
42
# File 'lib/jsus.rb', line 39

def self.verbose=(verbose)
  @verbose = verbose
  logger.level = verbose ? Logger::DEBUG : Logger::ERROR
end

.verbose?Boolean

In verbose mode jsus shows a lot of warnings like missing dependencies. Default: false

Returns:

  • (Boolean)

    jsus verbosity mode



32
33
34
# File 'lib/jsus.rb', line 32

def self.verbose?
  !!@verbose
end

.versionString

Returns Jsus version.

Returns:

  • (String)

    Jsus version



46
47
48
# File 'lib/jsus.rb', line 46

def self.version
  @version ||= File.read(File.dirname(__FILE__) + "/../VERSION")
end