This page is to discuss the merits of different possible mechanisms for the client tools to use.

There are two main questions, possibly without clear answers:

Let's consider the questions in that order.

New tools?

Why any specific tools are needed

Advantages of using the existing tools.

Disadvantages of using the existing tools.

Problems with either approach.

The third way

I therefore don't think this scheme is workable.

Conclusion

--RobertCollins: I'm convinced. I will note that your fail-closed argument is flawed unless the new tool is perfect first time; subsequent releases of the distro will always add the opportunity for skew. I think what really is needed is a 'this tool can operate on the development trunk safely' flag/check/something if you want to cause a fail-closed situation consistently and in an ongoing manner. But I don't actually think thats important - its well known that e.g. debootstrap and other development tools always need to be from the trunk's toolchain.

Structured workflow?

Structured is probably not a very good term here, but this basically means how many decisions we make for the user in the tools.

If we make some decisions then we can ensure that the user is using the tool in an efficient way, and make it easier to give support online.

It is probably best to give an example of what this may look like:

Example workflow

This ensures that the user has a shared repository set up, and so they will download a minimal amount of data. It could also be extended to take a branch name, and set up a personal branch on launchpad for the change, so that all modifications to a package are available as branches on launchpad.

It also means that it is very easy to help someone on IRC, as you know exactly where things will end up for them.

It also means that commands that work with multiple branches can be written, or at least given a cleaner UI, as they can assume the locations of specific branches that they need to use. You can have something like an "Update all branches" command that "just works," as it stands a chance of knowing where all of the branches are.

Drawbacks

Discussion

Providing some flexibility

Conclusion

I don't have one yet...

Meeting Discussion

There was some discussion of these issues at a Foundations team meeting. You can find the log of the discussion at http://irclogs.ubuntu.com/2008/08/06/%23ubuntu-meeting.html


CategoryDistributedDevelopment

DistributedDevelopment/ClientToolsDiscussion (last edited 2009-04-02 09:33:06 by i59F72099)