Module: Indentation
- Defined in:
- lib/indentation/meta_info.rb
Overview
must not have the word m-o-d-u-l-e above the next line (so that a Regexp can figure out the m-o-d-u-l-e name)
Constant Summary collapse
- GEM_NAME =
Required String
"indentation"
- VERSION =
Required String
'0.1.1'
- AUTHORS =
Optional String or Array of Strings
["Sam Dana"]
- EMAILS =
Optional String or Array of Strings
["[email protected]"]
- HOMEPAGE =
Optional String
"http://samueldana.github.com/indentation/"
- SUMMARY =
Required String
%q{A library of extensions to Ruby's Array and String classes that allow indentation manipulation of Strings and Arrays of Strings.}
- DESCRIPTION =
Optional String
SUMMARY
- LANGUAGE =
Required Symbol This specifies the language the project is written in (not including the version, which is in LANGUAGE_VERSION). A project should only have one LANGUAGE (not including, for example DSLs such as templating languages). If a project has more than one language (not including DSLs), it should be split. TEMPORARY EXCEPTION: see :frankenstein choice below. The reason is that mixing up languages in one project complicates packaging, deployment, metrics, directory structure, and many other aspects of development. Choices are currently:
* :ruby (implies packaging as gem - contains ZERO java code) * :java (implies packaging as jar, ear, war, sar, etc (depending on TYPE) - contains ZERO ruby code, with exception of meta_info.rb) * :frankenstein (implies packaging as gem - contains BOTH ruby and java code - will probably deprecate this in favor of two separate projects)
:ruby
- LANGUAGE_VERSION =
This differs from Runtime version - this specifies the version of the syntax of LANGUAGE
['> 1.8.1', '< 1.9.3']
- RUNTIME_VERSIONS =
This is different from aGem::Specification.platform, which appears to be concerned with OS. This defines which implentation of Ruby, Java, etc can be used. Required Hash, in same format as DEPENDENCIES_RUBY. The version part is used by required_ruby_version Allowable keys depend on LANGUAGE. They are in VALID_<language.upcase>_RUNTIMES
{ :mri => ['> 1.8.1', '< 1.9.3'], :jruby => ['1.6.4'] }
- TYPE =
Required Symbol Choices are currently:
* :library - reusable functionality, not intended to stand alone * :utility - intended for use on command line * :web_app - an application that uses a web browser for it's GUI * :service - listens on some port. May include command line tools to manage the server. * :gui - has a Swing, Fox, WXwidget, etc GUI
:library
- DEPENDENCIES_RUBY =
Trying to install this under Ruby 1.8.7 I get:
Error installing MM-0.0.6.gem: simplecov requires multi_json (~> 1.0.3, runtime)
So I have commented out some dependencies. FIX: these dependency collections need to be specific to a LANGUAGE_VERSION. Maybe RUNTIME_VERSIONS as well.
We also need :simplecov => nil, but only on Ruby > 1.8 }
{ }
- DEPENDENCIES_MRI =
{ }
- DEPENDENCIES_JRUBY =
{ }
- DEVELOPMENT_DEPENDENCIES_RUBY =
test-unit is reccomended but not required (color codes Test::Unit test results)
{ }
- DEVELOPMENT_DEPENDENCIES_MRI =
{ }
- DEVELOPMENT_DEPENDENCIES_JRUBY =
{ }
- YARD_EXCLUDE =
An Array of strings that YARD will interpret as regular expressions of files to be excluded.
[]