rapid7/metasploit-cache — pull request #2 by limhoff-r7 (2014-12-31 17:32:05+00:00)
Title: Extract cache from metasploit model

MSP-11141

# Verification Steps

## `metasploit-model`
- [ ] Complete [Verification Steps for `metasploit-model`](https://github.com/rapid7/metasploit-model/pull/31#issue-53192272)

## `metasploit-cache`
- [ ] `bundle install`

### `rake spec`
- [ ] `rake spec`
- [ ] VERIFY no failures

# Post-merge Steps

Perform these steps prior to pushing to master or the build will be broke on master.

## Version
- [ ] Edit `lib/metasploit/cache/version.rb`
- [ ] Remove `PRERELEASE` and its comment as `PRERELEASE` is not defined on master.

## Gem build
- [ ] gem build *.gemspec
- [ ] VERIFY the gem has no '.pre' version suffix.

## RSpec
- [ ] `rake spec`
- [ ] VERIFY version examples pass without failures

## Commit & Push
- [ ] `git commit -a`
- [ ] `git push origin master`

# Release

Complete these steps on master

## [CHANGELOG.md](CHANGELOG.md)

### Terminology

* "Enhancements" are widdening the API, such as by adding new classes or methods.
* "Bug Fixes" are fixes to the implementation that do not affect the public API. If the public API is affected then
the change should be listed as both a "Bug Fix" and either an "Enhancement" or "Incompatible Change" depending on how
the bug was fixed.
* "Deprecations" are changes to the implementation that cause deprecation warnings to be issued for APIs which will be
removed in a future major release. "Deprecations" are usually accompanied by an Enhancement that creates a new API
that is meant to be used in favor of the deprecated API.
* "Incompatbile Changes" are the removal of classes or methods or new required arguments or setup that shrink the API.
It is best practice to make a "Deprecation" for the API prior to its removal.

### Task List

- [ ] Generate the list of changes since the last release: `git log v....HEAD`
- [ ] For each commit in the release, find the corresponding PR by search for the commit on Github.
- [ ] For each PR, determine whether it is an Enhancement, Bug Fix, Deprecation, and/or Incompatible Change. A PR can
be in more than one category, in which case it should be listed in each category it belongs, but with a category
specific description of the change.
- [ ] Add an item to each category's list in the following format: `[#](https://github.com/rapid7/metasploit-cache/pull/) - [@](https://github.com/)`
`consumer_summary` should be a summary of the Enhancement, Bug Fix, Deprecation, or Incompatible Change from a
downstream consumer's of the library's perspective. `github_user` should be Github handle of the author of the
PR.
- [ ] If you added any Deprecations or Incompatible Changes, then adding upgrading information to
[UPGRADING.md](UPGRADING.md)

## `VERSION`

The entries in the [CHANGELOG.md](CHANGELOG.md) can be used to help determine how the `VERSION` should be bumped.

### Compatible changes

If the [CHANGELOG.md](CHANGELOG.md) contains only Enhancements, Bug Fixes, and/or Deprecations for the Next Release then
increment [`PATCH`](lib/metasploit/cache/version.rb).

### Incompatible changes

If the [CHANGELOG.md](CHANGELOG.md) contains any Incompatible Changes for the Next Release, then you can either (1)
decide to remain pre-1.0.0 or (2) advance to 1.0.0.

1. To remain pre-1..0.0, then increment [`MINOR`](lib/metasploit/cache/version.rb) and reset [`PATCH`](lib/metasploit/cache/version.rb) to `0`.
2. To advance to 1.0.0, increment [`MAJOR`](lib/metasploit/cache/version.rb) and reset [`MINOR`](lib/metasploit/cache/version.rb and [`PATCH`](lib/metasploit/cache/version.rb) to `0`.

## Setup [CHANGELOG.md](CHANGELOG.md) for next release

- [ ] Change `Next Release` section name at the top of [CHANGELOG.md](CHANGELOG.md) to match the current `VERSION`.
- [ ] Add a new `Next Release` section above the `VERSION`'s section you just renamed:

# Next Release

* Enhancements
* Bug Fixes
* Deprecations
* Incompatible Changes

## Release to rubygems.org

## jruby
- [ ] `rvm use jruby@metasploit-cache`
- [ ] `rm Gemfile.lock`
- [ ] `bundle install`
- [ ] `rake release`

## ruby-2.1
- [ ] `rvm use ruby-2.1@metasploit-cache`
- [ ] `rm Gemfile.lock`
- [ ] `bundle install`
- [ ] `rake release`

## Add owners

This will be the first release of metasploit-cache for rubygems.org, so you will be the only owner and the only one that can `rake release` in the future unless you add the rest of us as owners.

- [ ] Gather emails of owners: `gem owner metasploit-model`
- [ ] For each email do `gem owner metasploit-cache --add `