gecko-dev/.hgignore
Nick Alexander a7e3d82701 Bug 1543247 - Part 1: Add mach browsertime command that installs and invokes browsertime. r=Standard8,ahal
[browsertime](https://github.com/sitespeedio/browsertime) is a harness
for running performance tests, similar to Mozilla's Raptor testing
framework.  The Performance Team is using it locally with some
success, but we're running a heavily modified toolchain that is
challenging to install.  This mach command is intended to be leverage
for getting more folks able to use browsertime easily.

In particular, the version of browsertime that this installs has
nalexander's changes to support testing GeckoView-based vehicles.  If
this approach meets with approval, I'll continue to follow-up with
additional configuration and tooling layers to make it even easier to
drive GeckoView-based vehicles.

I elected to piggy-back install on the eslint installation process,
since this is very similar.  To that end, I generalized what was there
very slightly.  I elected not to try to move the existing code into a
more obvious shared location, although it might be possible, because
it wasn't clear what contexts the existing code would be invoked
from.  In particular I wasn't certain the code could rely on a
complete mozbuild checkout.

I did need to ensure the local Node.js binary is early on the PATH;
this was an issue I ran into with my initial Node/Yarn prototyping
many months ago.  At heart the issue is that package scripts in the
wild invoke a bare `node` or `npm` command; if there was a culture of
invoking $NODE or $NPM, this wouldn't be necessary.  There's no harm
doing it for ESlint, and it will help the next person who wants to
install an NPM package for tooling in this manner.

Differential Revision: https://phabricator.services.mozilla.com/D26820

--HG--
extra : moz-landing-system : lando
2019-05-06 23:56:49 +00:00

192 lines
4.3 KiB
Plaintext

# .hgignore - List of filenames hg should ignore
# Filenames that should be ignored wherever they appear
~$
\.py(c|o)$
(?i)(^|/)TAGS$
(^|/)ID$
(^|/)\.DS_Store$
\.pdb
\.egg-info
\.gcda
\.gcno
\.gcov
compile_commands\.json
# Vim swap files.
^\.sw.$
.[^/]*\.sw.$
# Emacs directory variable files.
\.dir-locals\.el
# User files that may appear at the root
^\.mozconfig
^mozconfig*
^configure$
^old-configure$
^config\.cache$
^config\.log$
^\.clang_complete
^\.?machrc$
# Empty marker file that's generated when we check out NSS
^security/manager/\.nss\.checkout$
# Build directories
^obj
# gecko.log is generated by various test harnesses
^gecko\.log
# Build directories for js shell
_DBG\.OBJ/
_OPT\.OBJ/
^js/src/.*-obj/
^js/src/obj-.*/
# SpiderMonkey configury
^js/src/configure$
^js/src/old-configure$
^js/src/autom4te.cache$
# SpiderMonkey test result logs
^js/src/tests/results-.*\.(html|txt)$
^js/src/devtools/rootAnalysis/t/out
# SpiderMonkey clone of the webassembly spec repository
^js/src/wasm/spec
# Java HTML5 parser classes
^parser/html/java/(html|java)parser/
# SVN directories
\.svn/
# Ignore the files and directory that Eclipse IDE creates
\.project$
\.cproject$
\.settings/
# Ignore the files and directory that JetBrains IDEs create.
\.idea/
\.iml$
# Android Monitor in Android Studio creates a captures/ directory.
^captures/
# Gradle cache.
^.gradle/
^tools/infer/test/.gradle/
# Local Gradle configuration properties.
^local.properties$
# Python stuff installed at build time.
^third_party/python/psutil/.*\.so
^third_party/python/psutil/.*\.pyd
^third_party/python/psutil/build/
^third_party/python/psutil/tmp/
# Git repositories
.git/
# Ignore chrome.manifest files from the devtools loader
^devtools/client/chrome.manifest$
^devtools/shared/chrome.manifest$
# Ignore node_modules directories in devtools
^devtools/.*/node_modules/
# git checkout of libstagefright
^media/libstagefright/android$
# Tag files generated by GNU Global
(^|/)GTAGS$
(^|/)GRTAGS$
(^|/)GSYMS$
(^|/)GPATH$
# Git clone directory for updating web-platform-tests
^testing/web-platform/sync/
# Third party metadata for web-platform-tests
^testing/web-platform/products/
# Android Gradle artifacts.
^mobile/android/gradle/.gradle
# XCode project cruft
^[^/]*\.xcodeproj/
# Rust/Cargo output from running `cargo` directly
^target/
# Ignore mozharness execution files
^testing/mozharness/.tox/
^testing/mozharness/build/
^testing/mozharness/logs/
^testing/mozharness/.coverage
^testing/mozharness/nosetests.xml
# Ignore tox generated dir
.tox/
# Ignore ESLint and other tool's node_modules.
^node_modules/
^tools/browsertime/node_modules/
^tools/lint/eslint/eslint-plugin-mozilla/node_modules/
# Ignore talos virtualenv and tp5n files.
# The tp5n set is supposed to be decompressed at
# testing/talos/talos/tests/tp5n in order to run tests like tps
# locally. Similarly, running talos requires a Python package virtual
# environment. Both the virtual environment and tp5n files end up littering
# the status command, so we ignore them.
^testing/talos/.Python
^testing/talos/bin/
^testing/talos/include/
^testing/talos/lib/
^testing/talos/talos/tests/tp5n.zip
^testing/talos/talos/tests/tp5n.tar.gz
^testing/talos/talos/tests/tp5n
^testing/talos/talos/tests/devtools/damp.manifest.develop
^talos-venv
^py3venv
^testing/talos/talos/mitmproxy/mitmdump
^testing/talos/talos/mitmproxy/mitmproxy
^testing/talos/talos/mitmproxy/mitmweb
# Ignore talos webkit benchmark files; source is copied from in-tree /third_party
# into testing/talos/talos/tests/webkit/PerformanceTests/ when run locally
# i.e. speedometer, motionmark, stylebench
^testing/talos/talos/tests/webkit/PerformanceTests
# Ignore toolchains.json created by tooltool.
^toolchains\.json
# Ignore files created when running a reftest.
^lextab.py$
# tup database
^\.tup
# Ignore sync tps logs and reports
tps\.log
tps_result\.json
# Ignore Visual Studio Code workspace files.
\.vscode/(?!extensions\.json|tasks\.json)
# Ignore Infer output
^infer-out/
# https://bz.mercurial-scm.org/show_bug.cgi?id=5322
^comm/
# Ignore various raptor performance framework files
^testing/raptor/.raptor-venv
^testing/raptor/raptor-venv
^testing/raptor/raptor/tests/.*.json
^testing/raptor/webext/raptor/auto_gen_test_config.js
# Ignore the build directories of WebRender standalone builds.
gfx/wr/target/