lib/arli/library.rb in arli-0.8.3 vs lib/arli/library.rb in arli-0.9.0

- old
+ new

@@ -1,8 +1,27 @@ +require_relative 'library/single_version' +require_relative 'library/multi_version' +require 'arduino/library/model' +require 'arli/errors' + module Arli module Library + def library_model(lib) + return lib if lib.is_a?(::Arduino::Library::Model) + ::Arduino::Library::Model.from(lib).tap do |model| + if model.nil? + lib_output = (lib && lib['name']) ? lib['name'] : lib.to_s + raise Arli::Errors::LibraryNotFound, 'Error: '.bold.red + + "Library #{lib_output.yellow} ".red + "was not found.\n\n".red + + %Q[ HINT: run #{"arli search 'name: /#{lib_output}/'".green}\n] + + %Q[ to find the exact name of the library you are trying\n] + + %Q[ to install. Alternatively, provide a url: field.\n] + end + end + end + def make_lib(lib) + ::Arli::Library::SingleVersion.new(library_model(lib)) + end end end -require_relative 'library/proxy' -require_relative 'library/installer'