class Composer::Package::Package
Core package definitions that are needed to resolve dependencies and install packages
Attributes
archive_excludes[RW]
autoload[RW]
binaries[RW]
conflicts[RW]
dev_autoload[RW]
dev_requires[RW]
dist_mirrors[RW]
dist_reference[RW]
dist_sha1_checksum[RW]
dist_type[RW]
dist_url[RW]
extra[RW]
include_paths[RW]
installation_source[RW]
notification_url[RW]
provides[RW]
release_date[RW]
replaces[RW]
requires[RW]
source_mirrors[RW]
source_reference[RW]
source_type[RW]
source_url[RW]
stability[R]
suggests[RW]
Public Class Methods
new(name, version, pretty_version)
click to toggle source
Creates a new in memory package. Param: string name The package’s name Param: string version The package’s version Param: string prettyVersion The package’s non-normalized version
Calls superclass method
Composer::Package::BasePackage::new
# File lib/composer/package/package.rb, line 36 def initialize(name, version, pretty_version) super(name) # default values @extra = {} @binaries = [] @requires = {} @conflicts = {} @provides = {} @replaces = {} @dev_requires = {} @suggests = {} @autoload = {} @dev_autoload = {} @include_paths = [] @archive_excludes = [] # init package attributes replace_version(version, pretty_version) end
Public Instance Methods
attributes()
click to toggle source
# File lib/composer/package/package.rb, line 58 def attributes dumper = Composer::Package::Dumper::HashDumper.new dumper.dump(self) end
is_dev()
click to toggle source
Determine if development package Return: true if development package; Otherwise false.
# File lib/composer/package/package.rb, line 98 def is_dev @dev end
pretty_string()
click to toggle source
# File lib/composer/package/package.rb, line 92 def pretty_string "#{pretty_name} #{pretty_version}" end
replace_version(version, pretty_version)
click to toggle source
Replaces current version and pretty version with passed values. It also sets stability. Param: string version The package’s normalized version Param: string prettyVersion The package’s non-normalized version
# File lib/composer/package/package.rb, line 106 def replace_version(version, pretty_version) @version = version @pretty_version = pretty_version @stability = Composer::Package::Version::VersionParser::parse_stability(version) @dev = @stability === 'dev' end
target_dir()
click to toggle source
# File lib/composer/package/package.rb, line 79 def target_dir return unless @target_dir regex = '(?:^|[\\\\/]+)\.\.?(?:[\\\\/]+|$)(?:\.\.?(?:[\\\\/]+|$))*' @target_dir.gsub(/#{regex}/x, '/').gsub(/^\/+/, '') end
target_dir=(target_dir)
click to toggle source
# File lib/composer/package/package.rb, line 75 def target_dir=(target_dir) @target_dir = target_dir end
type()
click to toggle source
Get package type Return: string
# File lib/composer/package/package.rb, line 71 def type @type ? @type : 'library' end
type=(type)
click to toggle source
Set package type Param: string type
# File lib/composer/package/package.rb, line 65 def type=(type) @type = type end
unique_name()
click to toggle source
Returns package unique name, constructed from name, version and release type. Return: string
# File lib/composer/package/package.rb, line 88 def unique_name "#{name}-#{version}" end