Begin working on leiningen.release.

parse-maven-version is a modified copy of the same function found in
relaynetwork/lein-release. Also began working on unit tests.

Signed-off-by: Wayne <wayne@puppetlabs.com>
Remove some unnecessary code.

Signed-off-by: Wayne <wayne@puppetlabs.com>
Add test for version-map->string

Signed-off-by: Wayne <wayne@puppetlabs.com>
Fix version-map->string and associated test.

Adds a member to each testcase vector that represents the original version
string minus the quantifier, or just the original version string itself in the
case of the version string being an invalid maven version.

Signed-off-by: Wayne <wayne@puppetlabs.com>
Remove SCM protocol stub.
Fix up version parsing code.

Now with working tests!

Signed-off-by: Wayne <wayne@puppetlabs.com>
Clean up semver string parsing.

Signed-off-by: Wayne <wayne@puppetlabs.com>
Set project version via sjacket
Experiment with generic conventions

1. Look up functions based on "run-*" pattern
2. Support consistent argument passing scheme
3. Crude bump-version task
4. Some refactoring

Not great at structuring Clojure code, so open to tips to organise
this namespace better!
Improve interface for changing project settings
Follow separator convention, reorganise, and add some comments
Catch qualifier in version-map->string.
Change increment-version to add snapshots where appropriate.
Implement :release-tasks.
Attempt to make types transparent across sjacket boundary

Not sure how robust this is, but looks like a step towards less annoyance / surprise
Add pending test for setting generic (nested) attributes
Implement more features, simplify interface

Too much magic in those helper functions maybe?
Merge remote-tracking branch 'crisptrutski/set-project-version'

# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
Merge branch 'release'

# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
WIP: merge change task and release.