User:Dantman/Projects to fund

Gareth
Gareth is a Git code review system. Gerrit is far harder to work with than code review should be, and very unfriendly to developers. Parts of these issues lie in the many choices Gerrit makes in it's interface but others are fundamental to how Gerrit chooses to use, or rather fight git into making it do things differently than how it was designed to work.

The plan is to develop a complete git pre and post commit review system built to contain the functionality we need (incl. Most of the features Gerrit provides) designed around the way that git was built to work, combined with an intuitive user interface.

Some of the fundamental points of the project:
 * Gareth fetches commits instead of having users push to Gareth. This lets us take advantage of how Git was designed to work with personal public repos. ACLs can be implemented without using hacks or reimplementing ssh. Branches are easier to work with. And collaboration between developers before submission is much easier.
 * Gareth includes a number of smart features. Support for auto-fetch using Web Hooks supported by services like GitHub or post-recieve hooks. Automatically creating review branches based on the conventions a user uses. etc... Supporting smart functionality allows Gareth to eliminate any disadvantage not supporting direct push into the repo might have and provides very user friendly interaction.

On-wiki mass-replacement tool
Bots are really hard to work with. You have to install them, configure an account and all the settings, and then when you actually use them both the processing is constrained and you have to work with confirmations individually instead of being able to scan over and batch confirm chunks. Even if you are technical enough to handle a bot it is still a hassle to pull out when you just want to do some batch replacements on a wiki. The only current alternative is Extension:Replace Text which is somewhat limited and uses bad practice that causes it to be incompatible with wikis using compressed revision text or external storage.

The plan is to build a new on-wiki tool for mass replacement of text.
 * A special page will let users make mass replacements of text across the wiki without leaving the wiki.
 * Both the scanning of pages and the replacement will be done using the job queue. This will allow the extension to work on all wikis including those using compressed text, external storage, and also on wikis large enough for Replace Text's SQL queries to be too slow. It will also allow the extension to have features impossible to implement in Replace Text.
 * Mass-replacements will be possible using simple text replacement, regular expressions, and other methods such as Lua if Scribunto is installed.