Krinkle added a subscriber: Krinkle. Krinkle closed this task as "Declined". Krinkle added a comment.
In https://phabricator.wikimedia.org/T85335#1177020, @jayvdb wrote:
@legoktm, new JS files (e.g. https://gerrit.wikimedia.org/r/#/c/196706/) are not checked by banana whateveritis.
The jsonlint job validates syntax in all json files. Including new directories and files therein.
The npm job runs whatever framework you like to use. Bash, Grunt, Gulp, anything. So this task is closed. It's your responsibility (or that of other pywikibot maintainers) to come up with a test strategy and a viable way to maintain that.
For example, you can use Grunt and grunt-banana-checker to validate things specific to the "Banana" format that the Milkshake project https://www.mediawiki.org/wiki/Milkshake came up with. (E.g. the concept of "qqq" files, `@authors` properties and all that.)
Each directory is a separate localisation group with its own qqq file. As such, in order for Banana to be able to find missing qqq entries, it needs to know about each directory.
However, there should be no need to configure each directory by hand. Pywiki's structure looks quite simple. You can scan the top directory from Gruntfile.js and collect the relevant directory names in an array automatically. You can even provide the array in a single test:
initConfig({ banana: { all: [ 'foo/', 'bar/' ] // create this array programmatically after scanning the repo } });
If you prefer the results (and potential errors) to be grouped in the output separately, you'd build it more like the current structure:
var projects = ...; var bananaGroups = {}; projects.forEach( function (project) { bananaGroups[ project ] = project + '/'; } );
initConfig({ banana: bananaGroups });
TASK DETAIL https://phabricator.wikimedia.org/T85335
REPLY HANDLER ACTIONS Reply to comment or attach files, or !close, !claim, !unsubscribe or !assign <username>.
EMAIL PREFERENCES https://phabricator.wikimedia.org/settings/panel/emailpreferences/
To: jayvdb, Krinkle Cc: Krinkle, Jdforrester-WMF, Legoktm, Ricordisamoa, gerritbot, XZise, Xqt, siebrand, Nemo_bis, jayvdb, hashar, valhallasw, Aklapper, Gryllida, Shizhao, Arrbee, pywikipedia-bugs