This page lists a variety of minor changes that could be made to improve Vesta. They're good ways for people to jump in and make a contribution to the project.

Repository User Tools

optionally ignore umask

RFE @ SourceForge

Add a config setting that makes vcheckout ignore the umask. Could be implemented by settign umask if the config file setting is present. Could be extended to other tools (e.g. vmkdir, vcreate, vbranch).

Difficulty estimate: 1

Make vadvance work in subdirectories

RFE @ SourceForge

Make vadvance find the enclsoing working directory (if any) for the user. Bonus points for making vmake work in subdirectories too.

Difficulty estimate: 2

Replicator should indicate it's reading imports

RFE @ SourceForge

The replicator @ directive can take a while. In verbose mode it would be nice to indicate what's happening.

There's actually code #ifdefed out in one function, but it would probably produce too much output there. It should be moved to only produce output for each model given to @, not every model read.

Difficulty estimate: 1

Turn an empty directory into a branch

RFE @ SourceForge

vcreate can turn an empty appendable directory into a package. vbranch should be able to do the same thing. The two programs are not quite identical but pretty close. It should be easy to find the places to change in vbranch but it requires using the atomic interface to the repository.

Difficulty estimate: 2

Try not to discard edited message

RFE @ SourceForge

The easy version of this is to make vcheckin preserve the edited message in an attribute in case it fails later. The harder version is to move more checking before asking the user to edit the message in several tools.

Difficulty estimate: 1-3

Make vmkdir better handle existing directories

Bug @ SourceForge

vmkdir doesn't check whether a directory already exists when trying to create it. This can sometimes produce confusing error messages.

Bonus points: If it exists at a remote master, replicate it locally as a favor.

Difficulty estimate: 1-2

Make vrepl strip trailing whitespace from directives

Bug @ SourceForge

Difficulty estimate: 1

Fix vmkdir -p

Bug @ SourceForge

"vmkdir -p" does something completely different from "mkdir -p" which is unfortunate.

Difficulty estimate: 3

vupdate/vimports

Recurse into another user's checkout

RFE @ SourceForge

Allow vupdate to recurse into a working directory owned by another user and make changes there as long as "-only-mine" wasn't specified on the command line.

Difficulty estimate: 1

Make vupdate use [Evaluator]DefaultMain

RFE @ SourceForge

vupdate always defaults to ".main.ves". It should try the model names in the [Evaluator]DefaultMain configuration file setting one at a time like the evaluator.

Bonus points: make vimports also work this way. Make a shared library function both programs can use.

Difficulty estimate: 2

Readable vupdate error for invalid CWD

Bug @ SourceForge

A simple fix would be to use the FS::getcwd library function which throws FS::Failure if the working directory is invalid.

Difficulty estimate: 1

Make vupdate -t work without stub

Bug @ SourceForge

If the stub is there its session-dir attribute should still be used, but if not we can make reasonable guesses as to snapshots of higher-versioned session directories.

Difficulty estimate: 2

Support Libaries

Include a directory of config files

RFE @ SourceForge

Allow the vesta.cfg include directive to take a directory and include every file in it.

Difficulty estimate: 3

filenameToRealVS should try not to return a master ghost

Bug @ SourceForge

When searching remote repositories, "master" is given mroe priority than "non-ghost". ReposUI::filenameToRealVS should keep looking for a non-ghost object even if it finds a master ghost.

Difficulty estimate: 2

Evaluator

Improve binding name conflict message

Bug @ SourceForge

It would be trivial to add the name on which the conflict ocurred.

Difficulty estimate: 1

Shift Primary Keys

RFE @ SourceForge

Give people an easy alternative to using a PrivateCache or "-cache none".

Difficulty estimate: 2

Treat FALSE bool as if file doesn't exist

RFE @ SourceForge

Make the SDL programmer's job easier by eliminating the need to clean FALSE (for deleted files) out of ./root.

Difficulty estimate: 2

Servers

Configure vforeign as names not numbers

RFE @ SourceForge

The configuration settings for vforeign take a numeric UID and a numeric GID. It would be preferable for them to take a text username and group name and perform the user/group lookup.

Difficulty estimate: 2

Make RunToolServer exit if started as wrong user

Bug @ SourceForge

Unless the RunToolServer is started as the right user, tools will get "Permission denied" errors.

Difficulty estimate: 2

Vesta: DevelopingVesta/EasyTasks (last edited 2008-07-18 20:34:07 by KenSchalk)