A repository is a configured collection of fields and a set of entries that knows how to reparse a source and reify the values.
A DNS
resource abstract class.
TarReader
reads tar files and allows iteration over their items
A semi-compatible DSL for the Bundler
Gemfile and Isolate gem dependencies files.
To work with both the Bundler
Gemfile and Isolate formats this implementation takes some liberties to allow compatibility with each, most notably in source
.
A basic gem dependencies file will look like the following:
source 'https://rubygems.org' gem 'rails', '3.2.14a gem 'devise', '~> 2.1', '>= 2.1.3' gem 'cancan' gem 'airbrake' gem 'pg'
RubyGems recommends saving this as gem.deps.rb over Gemfile or Isolate.
To install the gems in this Gemfile use ‘gem install -g` to install it and create a lockfile. The lockfile will ensure that when you make changes to your gem dependencies file a minimum amount of change is made to the dependencies of your gems.
RubyGems can activate all the gems in your dependencies file at startup using the RUBYGEMS_GEMDEPS environment variable or through Gem.use_gemdeps
. See Gem.use_gemdeps
for details and warnings.
See ‘gem help install` and `gem help gem_dependencies` for further details.
A set which represents the installed gems. Respects all the normal settings that control where to look for installed gems.
A VendorSet
represents gems that have been unpacked into a specific directory that contains a gemspec.
This is used for gem dependency file support.
Example:
set = Gem::Resolver::VendorSet.new set.add_vendor_gem 'rake', 'vendor/rake'
The directory vendor/rake must contain an unpacked rake gem along with a rake.gemspec (watching the given name).
This represents a vendored source that is similar to an installed gem.
An absolutely silent download reporter.
Shows surrounding kw/end pairs
The purpose of showing these extra pairs is due to cases of ambiguity when only one visible line is matched.
For example:
1 class Dog 2 def bark 4 def eat 5 end 6 end
In this case either line 2 could be missing an ‘end` or line 4 was an extra line added by mistake (it happens).
When we detect the above problem it shows the issue as only being on line 2
2 def bark
Showing “neighbor” keyword pairs gives extra context:
2 def bark 4 def eat 5 end
Example:
lines = BeforeAfterKeywordEnds.new( block: block, code_lines: code_lines ).call()
Raised when multiple fields of the same type are configured on the same repository.
Indicates some other unhandled resolver error was encountered.
RubyVM::AbstractSyntaxTree::Location
instances are created by RubyVM::AbstractSyntaxTree::Node#locations
.
This class is MRI specific.
Generic exception class of the Timestamp
module.
Raised when the buffer cannot be allocated for some reason, or you try to use a buffer that’s not allocated.
Class for representing HTTP method POST:
require 'net/http' uri = URI('http://example.com') hostname = uri.hostname # => "example.com" uri.path = '/posts' req = Net::HTTP::Post.new(uri) # => #<Net::HTTP::Post POST> req.body = '{"title": "foo","body": "bar","userId": 1}' req.content_type = 'application/json' res = Net::HTTP.start(hostname) do |http| http.request(req) end
See Request Headers.
Properties:
Request body: yes.
Response body: yes.
Safe: no.
Idempotent: no.
Cacheable: yes.
Related:
Net::HTTP.post
: sends POST
request, returns response object.
Net::HTTP#post
: sends POST
request, returns response object.