=== 0.3.0 / 2009-09-24
* Require yard >= 0.2.3.5.
* Require nokogiri >= 1.3.3.
* Require extlib >= 0.9.13.
* Require data_objects >= 0.10.0.
* Require do_sqlite3 >= 0.10.0.
* Require dm-core >= 0.10.0.
* Require dm-types >= 0.10.0.
* Require dm-validations >= 0.10.0.
* Require dm-predefined >= 0.2.0.
* Require chars >= 0.1.2.
* Require parameters >= 0.1.8.
* Require contextify >= 0.1.3.
* Require repertoire >= 0.2.3.
* Require thor >= 0.11.5.
* Require rspec >= 1.1.12.
* Moved to YARD based documentation.
* Added YARD handlers for detecting DataMapper property, has and belongs_to
method-calles.
* Added YARD handlers for detecting Ronin::Scanners::Scanner.scanner
method-calles.
* Added Ronin::Config.tmp_dir.
* Added Kernel.require_within.
* Added Net.tcp_server.
* Added Net.tcp_server_session.
* Added Net.tcp_single_server.
* Added Net.udp_server.
* Added Net.udp_server_session.
* Added Ronin::Network::HTTP::Proxy.
* Added Ronin::Model#humanize_attributes.
* Added Ronin::Model::HasVersion.revision.
* Added Ronin::Templates::Template.
* Added Ronin::Platform::Overlays#gems.
* Added attr_reader, attr_writer and attr_accessor instance methods to
Ronin::Platform::Extension.
* Added Ronin::Platform::Overlay#load!.
* Added Ronin::Platform::Overlay#reload!.
* Added Ronin::Platform::Extension#tmp_dir.
* Added Ronin::Platform::ExtensionCache#reload!.
* Added Ronin::Platform.reload!.
* Added Ronin::UI::Output.verbose=.
* Added Ronin::UI::Output.verbose?.
* Added Ronin::UI::Output.quiet=.
* Added Ronin::UI::Output.quiet?.
* Added Ronin::UI::Output.silent=.
* Added Ronin::UI::Output.silent?.
* Added Ronin::UI::Output::Helpers.
* Added Ronin::UI::CommandLine::Command#indent.
* Added Ronin::UI::CommandLine::Command#print_title.
* Added Ronin::UI::CommandLine::Command#print_array.
* Added Ronin::UI::CommandLine::Command#print_hash.
* Renamed Ronin::License.gpl_2 to Ronin::License.gpl2.
* Renamed Ronin::License.gpl_3 to Ronin::License.gpl3.
* Renamed Ronin::License.lgpl_3 to Ronin::License.lgpl3.
* Renamed the :post_data option to :postdata for the Net.http_post and
Net.http_post_body methods.
* Renamed Ronin::Sessions to Ronin::Network::Helpers.
* Renamed Ronin::Platform::ExtensionCache#has_extension? to
Ronin::Platform::ExtensionCache#has?.
* Renamed Ronin::Platform::ExtensionCache#extension_with to
Ronin::Platform::ExtensionCache#with.
* Renamed Ronin::UI::Diagnostics to Ronin::UI::Output.
* Removed Hash#explode.
* Removed URI::HTTP#explode_query_params and URI::HTTP#test_query_params.
* Removed Ronin::Model.first_or_new, since it is provided by
dm-core 0.10.0.
* Removed Ronin.console.
* Removed Ronin::License.predefine.
* Updated the summary and 3-point description of Ronin.
* Aliased Integer#char to Integer#chr.
* Changed Ronin::Database::DEFAULT_CONFIG to be a String, for printability.
* Overrode Ronin::Model.allocate so that the initialize method of models
is always called when resources are allocated.
* Improved the white-space removal in Ronin::Model::HasDescription.
* Have Ronin::Model::HasLicense auto-define a relationship with
Ronin::License.
* Fixed formatting issue in Ronin::Product#to_s.
* Allow Ronin::Cacheable.load_first to accept a block.
* Make sure Ronin::Static.directory raises a RuntimeError if the given
directory is missing or not a directory.
* Allow the :proxy option passed to Net.http_* methods to be a String,
Hash or Ronin::Network::HTTP::Proxy.
* Make sure Ronin::Network::Helpers::Helper.require_variable raises
a RuntimeError if the required instance variable is not set.
* Merged Ronin::Platform::Extension.load into
Ronin::Platform::ExtensionCache#load_extension.
* Updated the overlay.xsl used to render the ronin.xml files within
Overlays.
* Merged Ronin::UI::Verbose into Ronin::UI::Output.
* Rewrote Ronin::UI::CommandLine::Command to inherit from Thor.
* Rewrote the Ronin::UI::CommandLine commands to use Thor options.
* Include Ronin::UI::Output::Helpers into Ronin::Sessions::Session.
* Include Ronin::UI::Output::Helpers into Ronin::Console sessions.
=== 0.2.4 / 2009-07-02
* Require Hoe >= 2.0.0
* Require Parameters >= 0.1.6.
* Dropped dependency for dm-serializer.
* Added Kernel#catch_all.
* Added Array#bytes.
* Added Array#chars.
* Added Array#char_string.
* Added File.unhexdump.
* Added Ronin::Templates::Erb.
* Added Ronin::Model::HasName.
* Added Ronin::Model::HasDescription.
* Added Ronin::Model::HasVersion.
* Added Cacheable#prepared_for_cache?.
* Added Cacheable#original_loaded?.
* Added Network::HTTP.expand_options.
* Added Net.http_request.
* Added Sessions::HTTP#http_request.
* Added Ronin::Scanners::Scanner.
* Added Ronin::UI::Console.backtrace_depth.
* Added Ronin::UI::Console.backtrace_depth=.
* Moved Ronin::HasLicense into Ronin::Model.
* Renamed Kernel#try to Kernel#attempt.
* Renamed Ronin.method_missing to Ronin#method_missing.
* Renamed Ronin::UI::CommandLine::Commands::Ls to
Ronin::UI::CommandLine::Commands::List.
* Renamed Ronin::UI::CommandLine::Commands::Rm to
Ronin::UI::CommandLine::Commands::Remove.
* Refactored OS.define.
* Refactored Ronin::Shell as a module.
* Removed Ronin::Translators.
* Fixed a bug where if an object failed to be cached,
it would prevent an Overlay from being added to the
OverlayCache.
* Fixed a bug where Gem::LoadError was being rescued,
when only ::LoadError should be rescued.
* Fixed a typo in Maintainer#inspect.
* Updated the Overlay XSL file.
* Cleaned up CSS.
* Removed the jQuery expander plugin.
=== 0.2.3 / 2009-05-06
* Require extlib >= 0.9.12.
* Require dm-core >= 0.9.11.
* Require data_objects >= 0.9.11.
* Require do_sqlite3 >= 0.9.11.
* Require dm-types >= 0.9.11.
* Require dm-serializer >= 0.9.11.
* Require dm-validations >= 0.9.11.
* Require chars >= 0.1.1.
* Require parameters >= 0.1.5.
* No longer require dm-aggregates.
* Added Kernel#try.
* Added String#pad.
* Added Array#power_set.
* Added IPAddr#each for iterating over CIDR address ranges.
* Added IPAddr.each for iterating over CIDR and globbed address ranges.
* Added Net.http_powered_by that returns the HTTP X-Powered-By header.
* Added Net.http_server that returns the HTTP Server header.
* Added Database.setup?.
* Added Database.update!.
* Added Extension#exposed_methods.
* Added ExtensionCache#names.
* Added OverlayCache#names.
* Added Diagnostics#print_debug.
* Added more specs.
* Properly escape URI::HTTP#query_params.
* Fixed a bug in File.hexdump where the file was not being closed.
* Fixed a bug in HasLicense#licensed_under.
* Fixed a bug in Product#to_s.
* Moved Ronin::Target to the ronin-exploits library.
* Renamed Net.http_prop_path to Net.http_prop_patch.
* Removed the Parameters code from Ronin::Sessions.
* Replaced Ronin::Objectify with Ronin::Cacheable.
* Removed 'ronin/models'.
* Catch exceptions when loading Extensions and carry on.
* Renamed Overlay#deactive! to Overlay#deactivate!.
* Allow Overlays to automatically load the 'lib/init.rb' file when
activated.
* Rewrote Ronin::Platform::ObjectCache to use the new Ronin::Cacheable
module.
* Enable Diagnostic#print_info and Diagnostic#print_error by default.
* Refactored Ronin::UI::CommandLine:
* Added CommandLine.get_command which loads command classes on-demand.
* CommandLine.commands now stores all the available command names.
* Renamed Ronin::UI::CommandLine::Commands::LS to
Ronin::UI::CommandLine::Commands::Ls.
* Renamed Ronin::UI::CommandLine::Commands::RM to
Ronin::UI::CommandLine::Commands::Rm.
* Moved Ronin::UI::CommandLine::ParamParser into the Parameters library.
* Refactored specs to run on Ruby 1.9.1-p0.
* Added more specs.
* All specs now pass on Ruby 1.9.1-p0.
=== 0.2.2 / 2009-03-26
* Split out Ronin::Chars into the Chars library.
* Split out ronin-overlay and ronin-ext sub-commands into the Ronin Gen
library.
* Require chars >= 0.1.0.
* Require repertoire >= 0.2.1.
* Removed String#to_method_name, use Extlib instead.
* Refactored Ronin::Platform::Overlay.
* Renamed Overlay#media_type to Overlay#media.
* Fixed parsing bugs in Overlay#initialize_metadata.
* Allow Extensions to be accessed via constants.
* Added the Creative Commons Zero license to Ronin::License.
* Added the Integer#bytes method.
* Added the String#hex_unescape method.
* Added the String#unhexdump method.
* Added Ronin::Static for managing static resources.
* Added Ronin::Static::Finders for searching for static files.
* Added static directories to Overlays and Extensions.
* Added ronin/platform/tasks:
* Added ronin/platform/tasks/spec task for running RSpec tests in an
Overlay.
* Added the ExtensionCache#reload! method.
* Added more specs.
=== 0.2.1 / 2009-02-23
* Added Ronin::UI::Verbose.
* Require Nokogiri >= 1.2.0:
* Use Nokogiri::XML, instead of REXML, for XML parsing and building.
* Renamed String#inspect to String#dump.
* Aliased String#inspect to String#dump.
* Rewrote Ronin::UI::CommandLine.
* Removed Ronin::UI::CommandLine::Options.command.
* Refactored Ronin::UI::CommandLine::Command.
* Added Command#defaults method to give the command's variables
default values.
* Fixed a bug in Command.run.
* Renamed DefaultCommand to ConsoleCommand.
* Implement git style sub-commands.
* Use reverse-require to find sub-commands.
* Refactored Ronin::UI::ParamParser.
* Control parameter formats and their parsers with ParamParser.recognize.
* Rewrote the Ronin::Chars spec.
* Updated the Ronin::UI::ParamParser spec.
=== 0.2.0 / 2009-02-06
* Moved the HTML formatting methods into the
{ronin-html}[http://ronin.rubyforge.org/html/] library.
* Added 'ronin/environment' which loads the Ronin Environment.
* Added the --database option to the DefaultCommand.
* Added the -C option to the add, install, list, update, remove and
uninstall commands.
* Added String#hex_escape.
* Added Net.http_ok?.
* Added UI::Diagnostics.
* Require Contextify >= 0.1.2 for the self.load_context_block method.
* Renamed Platform to Ronin::OS.
* Renamed Cache to Ronin::Platform.
* Refactored Ronin::Platform:
* Added Overlay#activate!.
* Added Overlay#deactivate!.
* Added a title attribute to Ronin::Platform::Overlay.
* Added a dirty flag to Ronin::Platform::OverlayCache to reduce
unnecessary writes.
* Added OverlayCache#has_extension?.
* Added Ronin::Platform::ObjectCache to handle the mass caching/mirroring
of object contexts.
* Added Platform.add.
* Added Platform.install.
* Added Platform.update.
* Added Platform.remove.
* Added Platform.uninstall.
* Added Platform::Extension#find_paths.
* Added specs for:
* Ronin::Platform.
* Ronin::Platform::Overlay.
* Ronin::Platform::OverlayCache.
* Ronin::Platform::Extension.
* Ronin::Platform::ExtensionCache.
* Shortened method names.
* Renamed OverlayCache#has_overlay? to OverlayCache#has?.
* Renamed OverlayCache#get_overlay to OverlayCache#get.
* Renamed OverlayCache#overlay_with to OverlayCache#with.
* Renamed Extension#was_setup? to Extension#setup?.
* Renamed Extension#was_toredown? to Extension#toredown?.
* Renamed Extension#perform_setup to Extension#setup!.
* Renamed Extension#perform_teardown to Extension#teardown!.
* Removed un-used or surpurfulous methods.
* Removed 'lib/ronin/platform/config.rb'.
* Allow Overlays to have their own lib/ directories.
* Many bug fixes.
* Updated the README.txt.
* Fixed bug in UI::Console.auto_load and UI::Console.start.
=== 0.1.4 / 2009-01-22
* Moved Ronin::Web and Ronin::Sessions::Web into the ronin-web library.
* Removed dependencies to hpricot, mechanize, spidr and rack.
* Moved Hexdump into the Ronin::UI namespace.
* Require parameters >= 0.1.3:
* Parameters 0.1.3 adds support for using lambdas as the default values
of parameters.
* Temporarily added Ronin::Model.first_or_new:
* Will be removed once dkubb's version of first_or_new is merged into
dm-core.
* Added the File.write method.
* Added specs for String#format_http and String#format_html.
* Fixed a formatting bug in String#format_chars and String#format_bytes.
* Fixed typos.
* Automatically load 'ronin/ui/hexdump' when starting the
Ronin::UI::Console.
=== 0.1.3 / 2009-01-08
* Moved Context into the Contextify library.
* Require dm-core >= 0.9.9.
* Require dm-predefined >= 0.1.0.
* Require parameters >= 0.1.2.
* Require contextify >= 0.1.0.
* Require reverse-require >= 0.3.1.
* Renamed Ronin::ObjectContext to Ronin::Objectify.
* Added the MIT license to the Ronin::License model, using dm-predefined.
* Added Ronin::HasLicense mixin for adding licenses to a model.
* Added Net.tcp_send and Ronin::Sessions::TCP#tcp_send for quickly sending
data through a TCP connection then closing it.
* Added Ronin::UI::CommandLine::ParamParser for parsing command-line
options into a Hash of parameters.
* Automatically create the ~/.ronin/config/ directory.
* Refactored Ronin::Objectify and how it uses primary keys.
* All Ronin::Session mixins use standard naming conventions for defining
the 'host' and 'port' parameters.
* Removed Ronin::Cache::Extension dependencies.
* Filter out the 'objects' directory from Ronin::Cache::Overlay#extensions.
* Improved tearing down of Extensions at exit.
* Improved output formatting of the +list+ sub-command.
* Ronin::UI::CommandLine.run now prints any exceptions and exits.
* Cleaned up the specs.
* Added more specs.
* Added more documentation.
=== 0.1.2 / 2008-12-10
* Require do_sqlite3 >= 0.9.9, since version 0.9.8 was totally broken.
* Require reverse-require >= 0.2.0, for improved performance.
* Require Spidr >= 0.1.3.
* Moved Ronin::Parameters into the parameters 0.1.0 RubyGem.
* Added a Ronin::Hexdump module:
* Provides Ronin::Hexdump.dump and Kernel#hexdump, which can hexdump any
object that supports the #each_byte method.
* Refactored Ronin::Chars::CharSet:
* Now inherites the SortedSet class.
* Stores chars as bytes.
* Added a Ronin::Chars::CharSet#=~ operator, for determining if a String
exists in the language over the alphabet represented by the character
set.
* Added a Ronin::Chars::CharSet#inspect method which prints C-like
characters.
* Added a String#inspect method which prints C-like strings.
* Added a String#xor method (it might come in handy).
* Renamed Ronin::Encoders::Encoder to Ronin::Translators::Translator.
* Added URI::QueryParams#each_query_param.
* Added extensions to Hpricot, for comparing two Hpricot Element trees.
* Added the Ronin::Web.spider_agent, Ronin::Web.spider_host and
Ronin::Web.spider_site methods.
* Added Ronin::Code::SymbolTable#symbols.
* Added a basic Ronin::Code::Emittable module and a Ronin::Code::Token
class.
* Renamed Ronin::ObjectContext.object_contextify to
Ronin::ObjectContext.objectify.
* Merged the Ronin::Environment module into the Ronin::Config module.
* Refactored the Ronin::Shell class.
* Refactored the Ronin::Runner::Program module.
* Created the Ronin::UI namespace, to contain all things User Interfacing:
* Moved Ronin::Console and Ronin::Shell into the UI namespace.
* Renamed Ronin::Runner::Program to Ronin::UI::CommandLine.
* Added a Ronin::Cache::Overlay::Maintainer class to define maintainers of
an Ronin::Cache::Overlay and their contact information.
* Refactored the parsing of Overlay XML files.
* Added the sub-commands +overlay+ and +extension+ for generating skeleton
Overlays and Extensions.
* Added a XSL file for generating pretty HTML from Overlay XML files.
* Added even more specs.
* More typo and documentation fixes.
=== 0.1.1 / 2008-10-26
* Depend on the newly renamed reverse-require (>= 0.1.2) gem.
* Added Ronin::Code::SymbolTable for DSLs to make use of.
* Added String#common_prefix, String#common_postfix and
String#uncommon_substring, which will be useful when testing for
successful injections.
* Added DataMapper column indexes to Author.name, Product.name, Platform.os
and Platform.version.
* Renamed String#rand_case to String#random_case.
* Removed the Ronin::Runner namespace, renaming the Ronin::Runner::Program
namespace to Ronin::Program.
=== 0.1.0 / 2008-09-28
* Changed how Sessions are setup.
* Have Ronin use it's own DataMapper Repository name-space to avoid
conflicts with other DataMapper libraries.
* Added the Ronin::Parameters#set_params methods.
* Added specs.
* Fixed various trivial bugs.
=== 0.0.9 / 2008-08-20
* Initial release.
* Supports installing/updating/uninstalling of Overlays.
* Supports accessing Overlays from various media types:
* CVS
* Darcs
* Subversion (SVN)
* Git
* Rsync
* Allows for the loading of Extensions from one or more Overlays.
* Provides a persistant Database using DataMapper.
* Caches and mirrors objects stored in Overlays using DataMapper.
* Provides convievance methods for:
* Formating data:
* Binary
* HTTP
* URIs
* HTML
* Generating random text.
* Networking:
* TCP
* UDP
* SMTP
* POP
* Imap
* Telnet
* HTTP
* Web access (utilizing Mechanize and Hpricot).
* Provides an IRB styled console with:
* Tab-completion enabled.
* Auto-indentation enabled.
* Pretty-Print loaded.