Recently we upgraded to Gulp 4. However, the following things still need to be addressed in some way:

- If a task series is executed with an anonymous function inside it, we'll see `Starting '<anonymous>'` in the output, which isn't that great. We need to either suppress it or use named functions.
- If a task is private, it should be hidden in some way. For example, `gh-pages-prepare` is only used in the public `web` target and should not be used on its own, however currently it shows in the default `gulp` output since it's a regular task. Perhaps we should mark them with an underscore?
gulp.series(
    "buildnumber",
    function scripting() {
      const defines = builder.merge(DEFINES, { MOZCENTRAL: true });
      return buildDefaultPreferences(defines, "mozcentral/");
    },
    function () {
      console.log();
      console.log("### Building mozilla-central extension");
      const defines = builder.merge(DEFINES, { MOZCENTRAL: true });
      const MOZCENTRAL_DIR = BUILD_DIR + "mozcentral/",
        MOZCENTRAL_EXTENSION_DIR = MOZCENTRAL_DIR + "browser/extensions/pdfjs/",
        MOZCENTRAL_CONTENT_DIR = MOZCENTRAL_EXTENSION_DIR + "content/",
        FIREFOX_EXTENSION_DIR = "extensions/firefox/",
        MOZCENTRAL_L10N_DIR =
          MOZCENTRAL_DIR + "browser/locales/en-US/pdfviewer/",
        FIREFOX_CONTENT_DIR = EXTENSION_SRC_DIR + "/firefox/content/";
      
      rimraf.sync(MOZCENTRAL_DIR);
      const versionJSON = getVersionJSON();
      const version = versionJSON.version,
        commit = versionJSON.commit;
      
      
      const MOZCENTRAL_COMMON_WEB_FILES = [
        ...COMMON_WEB_FILES,
        "!web/images/*.cur",
      ];
      return merge([
        createMainBundle(defines).pipe(