Module: Mutant::License Private

Defined in:
lib/mutant/license.rb,
lib/mutant/license/subscription.rb,
lib/mutant/license/subscription/commercial.rb,
lib/mutant/license/subscription/opensource.rb

This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.

Defined Under Namespace

Classes: Subscription

Constant Summary collapse

NAME =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

'mutant-license'
VERSION =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

'~> 0.1.0'
SLEEP =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

40
UNLICENSED =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

IceNine.deep_freeze(
  [
    "Soft fail, continuing in #{SLEEP} seconds",
    'Next major version will enforce the license',
    'See https://github.com/mbj/mutant#licensing'
  ]
)

Class Method Summary collapse

Class Method Details

.apply(world) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



18
19
20
# File 'lib/mutant/license.rb', line 18

def self.apply(world)
  soft_fail(world, license_result(world))
end

.load_mutant_license(world) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



43
44
45
46
47
48
49
# File 'lib/mutant/license.rb', line 43

def self.load_mutant_license(world)
  Either
    .wrap_error(LoadError) { world.gem_method.call(NAME, VERSION) }
    .lmap(&:message)
    .lmap(&method(:check_for_rubygems_mutant_license))
    .lmap(&method(:unlicensed))
end

.unlicensed(message) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



51
52
53
# File 'lib/mutant/license.rb', line 51

def self.unlicensed(message)
  "[Mutant-License-Error]: #{message}"
end