* PackageInfo objects are now cached because NimScript evaluation is expensive.
* before/after hooks now return `true` by default.
* Bugfix: when hooks weren't found Nimble would still think that a hook told it
to skip an action.
* PackageInfo now includes info about which hooks are defined to prevent
unnecessary execution of those hooks.
* Probably more.
* Moved package info reading procedures to a packageparser module. This is to prevent recu
rsive dependencies between nimscriptsupport and packageinfo modules.
* Passed the Options object to all procedures which read package info (necessary for nimscriptsupport module, to find the path of the nimscriptapi module)
* Introduced an ``isInstalled`` field to the ``PackageInfo`` type. This is a bug fix for g
etRealDir: it no longer uses the ``src`` field in the path it returns for installed packag
es' PackageInfo objects.
* Improved error reporting from NimScript evaluator.
* Renamed compiler/options import to ``compiler_options`` in ``nimscriptsupport`` module.
* Backward compatibility for .babel packages in getNameVersion proc.
* Introduced a getInstalledPkgsMin procedure which does not read package info, but only pr
ovides minimal info instead.
* setCommand "nop" no longer needed.
* Recursive setCommand supported.
* Explicit execTask procedure which executes the task explicitly instead of setting global compiler variables.
* Fixed incorrect URL in packages.json when remote URL is an ssh URL.
* Fixed cloning of packages fork after oauth introduction.
* A new branch is now created for each package addition.
When a tagged repo contains no tags which satisfy the version range
requested, then we should attempt to clone HEAD (or TIP in hg).
This fix brings back this behaviour.