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?
)
        )
          .pipe(gulp.dest(BUILD_DIR))
          .on("end", done);
      });
    }
  );
});
function buildDefaultPreferences(defines, dir) {
  console.log();
  console.log("### Building default preferences");
  const bundleDefines = builder.merge(defines, {
    LIB: true,
    SKIP_BABEL: false,
    BUNDLE_VERSION: 0, 
    BUNDLE_BUILD: 0, 
    TESTING: defines.TESTING || process.env.TESTING === "true",
  });
  const inputStream = merge([
    gulp.src(["web/{app_options,viewer_compatibility}.js"], {
      base: ".",
    }),
  ]);
  return buildLibHelper(
    bundleDefines,
    inputStream,
    DEFAULT_PREFERENCES_DIR + dir
  );
}
function getDefaultPreferences(dir) {