making tools, finding tools, and the upgrade process

Gustavo Niemeyer gustavo.niemeyer at canonical.com
Fri Mar 22 04:05:33 UTC 2013


On Thu, Mar 21, 2013 at 11:54 PM, Tim Penhey <tim.penhey at canonical.com> wrote:
> Finding Tools
> -------------
>
> There are three options to FindTools, and I'm not entirely clear on
> which situations they are used for.
>
>  * compatible version
>  * highest version
>  * development version
>
> Why do we have these options in the first place, and why do we care
> about distinguishing between them?  What use-cases are they trying to solve?

I believe most of these questions are responded in the code itself in
an easy to consume way.

For example, for the above one:

const (
        // HighestVersion indicates that versions above the version being
        // searched for may be included in the search. The default behavior
        // is to search for versions <= the one provided.
        HighestVersion ToolsSearchFlags = 1 << iota

        // DevVersion includes development versions in the search, even
        // when the version to match against isn't a development version.
        DevVersion

        // CompatVersion specifies that the major version number
        // must be the same as specified. At the moment this flag is required.
        CompatVersion
)



gustavo @ http://niemeyer.net



More information about the Juju-dev mailing list