DXR is a code search and navigation tool aimed at making sense of large projects. It supports full-text and regex searches as well as structural queries.

Mercurial (c68fe15a81fc)

VCS Links

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
# This file compiles to package.json scripts.
# When you add or modify anything, you *MUST* run:
#      npm run yamscripts
# to compile your changes.

scripts:
  # Run the activity-stream mochitests
  mochitest: (cd $npm_package_config_mc_dir && ./mach mochitest browser/components/newtab/test/browser --headless)

  # Run the activity-stream mochitests with the browser toolbox debugger.
  # Often handy in combination with adding a "debugger" statement in your
  # mochitest somewhere.
  mochitest-debug: (cd $npm_package_config_mc_dir && ./mach mochitest --jsdebugger browser/components/newtab/test/browser)

# bundle: Build all assets for activity stream
  bundle:
    webpack: webpack --config webpack.system-addon.config.js
    css: node-sass content-src/styles -o css && node-sass content-src/aboutwelcome -o aboutwelcome/content
    welcomeBundle: webpack --config webpack.aboutwelcome.config.js
    html: rimraf prerendered && node ./bin/render-activity-stream-html.js

# buildmc: Used to do stuff when this code was in GitHub, now just an
# alias in case it's baked into anyone's brain.
  buildmc:
    bundle: => bundle

# watchmc:  Automatically rebuild when files are changed. NOTE: Includes sourcemaps, do not use for profiling/perf testing.
  watchmc:
    _parallel: true
    webpack: =>bundle:webpack -- --env.development -w
    welcomeBundle: =>bundle:welcomeBundle -- --env.development -w
    css: =>bundle:css && =>bundle:css -- --source-map-embed --source-map-contents -w

  testmc:
    lint: =>lint
    build: =>bundle:webpack
    unit: karma start karma.mc.config.js

  tddmc: karma start karma.mc.config.js --tdd

  debugcoverage: open logs/coverage/index.html

# lint: Run various linters with mach or local dev dependencies
  lint:
    codespell: (cd $npm_package_config_mc_root && ./mach lint -l codespell $npm_package_config_newtab_path)
    eslint: (cd $npm_package_config_mc_root && ./mach lint -l eslint $npm_package_config_newtab_path)
    l10n: (cd $npm_package_config_mc_root && ./mach lint -l l10n --warnings browser/locales/en-US/browser/newtab)
    license: (cd $npm_package_config_mc_root && ./mach lint -l license $npm_package_config_newtab_path)
    sasslint: sass-lint -v -q

# test: Run all tests once
  test: =>testmc

# tdd: Run content tests continuously
  tdd: =>tddmc

  # Utility scripts for use when vendoring in Node packages
  vendor: node ./bin/vendor.js

  fix:
    # Note that since we're currently running eslint-plugin-prettier,
    # running fix:eslint will also reformat changed JS files using prettier.
    eslint: =>lint:eslint -- --fix