Граф коммитов

41 Коммитов

Автор SHA1 Сообщение Дата
beatrice-acasandrei 7e1fec6070
Bug 1748465 - Add documentation links for tests suite in Performance Tab (#7354)
* Bug 1748465 - Performance Tab - Add documentation links for tests suite

* Bug 1748465 - Address change request
2022-01-25 16:04:39 +02:00
Sebastian Hengst 94e1052cfb
Bug 1713275 - show open/closed state of visible tree in favicon, again (#7225) 2021-07-27 11:27:57 -04:00
Sarah Clements 870d954dc3
Change push health visibility back to try (#7034) 2021-03-01 17:09:08 -08:00
Ben Hearsum 0c49f7a293
bug 1683434: additional push health UX improvements (#6998)
* Fix logviewer urls to work from push-health view

* Show full revision on header of push health view

* Disable Artifacts tab in push health task view when a task has no artifacts

* Unset selectedTaskId and selectedJobName from query params when closing details view of push health

* Show artifacts if any exist, not 20 or more

* Move push health Usage link to Help menu

* Add Push Health link in Failure Summary tab

* Make Push Health more obvious

* Lint fixes

* Try to fix failing test

* lint fixes

* Revert bad changes to tests

* Fix long revision on push health header

* Finish backing out unwanted changes to Revision

* Fix push health test

* Fix linting issues

* Fix push health tests

* Fix linting issues

* Use bootstrap classes for spacing instead of custom css

* Make it more clear when a task has no artifacts

* Lint fixes

* Add Push Health link to top nav bar

* Remove 'Health' drop down

* Remove unsupported 'caret' attribute from button

* Update default push health visibility

* Fix failing test

* Fix another test

* More fixes

* Fix another test

* Fix another test

* Fix another test

* Fix another test
2021-02-04 10:22:06 -05:00
Cameron Dawson e07b01d412
Bug 1676186 - Fix scrolling in Push Health (#6866)
* Revert "Revert "Bug 1676186 - Fix scrolling in Push Health (#6859)""

This reverts commit 5529a75180.

* Fix logviewer html/body height
2020-11-13 11:48:11 -08:00
Cameron Dawson 5529a75180 Revert "Bug 1676186 - Fix scrolling in Push Health (#6859)"
This reverts commit bdae88a68d.
2020-11-11 15:18:50 -08:00
Cameron Dawson bdae88a68d
Bug 1676186 - Fix scrolling in Push Health (#6859) 2020-11-11 08:50:23 -08:00
Sarah Clements 5f23f9dab2
Routing change fixes (#6836)
* fix favicon path
* set repoName when currentRepo is updated
2020-10-29 11:38:10 -07:00
Sarah Clements 1d8db11414
Bug 1623951 - convert hash urls to standard urls V2 (#6825)
* Bug 1623951 - convert hash urls to standard urls
* add single entry point and config changes
* create catchall in urls to serve index.html
* add lazy-load of assets on route change
* add connected-react-router for use with redux
* add react helmet for favicon
* refactor tests and add tests for backwards-compatibility of urls
* fix pagination and back navigation in Perfherder alerts
2020-10-28 12:21:19 -07:00
Sarah Clements 7b4c11998f
Revert " Bug 1623951 - convert hash urls and create a single entry point (#6677)" (#6819)
This reverts commit f98bc47524.
2020-10-19 11:59:12 -07:00
Sarah Clements f98bc47524
Bug 1623951 - convert hash urls and create a single entry point (#6677)
* add single entry point and create catchall to serve index for all routes
* update all Apps and routes; use react helmet for favicons
* add helper to convert old urls for backwards compatibility
* lazy load assets upon route navigation
* update all hash change logic in job-view
* add connectedRouter to access history object in redux
* refactor tests
2020-10-16 11:12:19 -07:00
renovate[bot] d6ba99312c
Update dependency prettier to v2 (#6323)
* Update dependency prettier to v2
* Automatic prettier fixes

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Armen Zambrano G <armenzg@mozilla.com>
2020-04-30 15:40:38 -04:00
Cameron Dawson 7c76cfb2b9
Bug 1630710 - Transition to selectedTaskRun instead of selectedJob (#6342) 2020-04-24 14:37:42 -07:00
Mellina Yonashiro 464829c07e
Bug 1513583 - Enable ESLint a11y rules (#6021) 2020-02-25 14:11:07 -08:00
Cameron Dawson 346efe23a9
Bug 1614039 - Re-write pin jobs tests (#5962) 2020-02-10 14:32:42 -08:00
Cameron Dawson 89f7d4f46c Bug 1611334 - Enable Push Health badge on Try by default 2020-01-24 10:07:14 -08:00
Manish Giri e544001446 Add React Fragment to clear test warnings for Filtering_test.jsx (#5780) 2019-12-23 09:49:32 -05:00
Shavin Fonseka 464ffe8ffe Bug 1553681 - Remove update confirmation dialog (#5618)
* removed update confirmation dialog
* Added test for updateButtonClick prop
2019-11-13 12:44:00 -08:00
Cameron Dawson 256c244439 Disable per file: eslint jsx-a11y/no-static-element-interactions 2019-10-01 11:53:47 -07:00
Cameron Dawson 8fd8849fd1 Bug 1575334 - Fix errors when currentRepo is set incorrectly 2019-08-21 10:26:24 -07:00
Cameron Dawson 8ad1b1fec0 Bug 1572095 - Fix commit/revision links after changing repo 2019-08-16 15:30:35 -07:00
Cameron Dawson c58badbe60 Bug 1510280 - Convert PinnedJobs context to Redux 2019-08-12 14:08:49 -07:00
Cameron Dawson 9181ff4b94 Bug 1510280 - Convert Pushes context to Redux 2019-07-22 15:46:17 -07:00
Cameron Dawson 4a20afcc7c
Cleanup selected job redux (#5119)
* Create function for detecting filter changes on URL

* Prevent models from caching the current repo name

This is necessary so that we can change repos without having to reload the entire page.
We will stop reloading the page on repo change in a later PR.

* Don't use Redux when not necessary for "selectedJob"

I was using Redux to pass the selectedJob value down a single level
in a few cases.  So just pass it instead of invoking the reducer.

* Two small tune-up tweaks.

The "withPushes" was totally unnecessary on PushJobs
And Push can be a PureComponent.
2019-07-08 11:20:50 -07:00
Cameron Dawson b1d9d3eb09
Bug 1510280 - Convert SelectedJob to Redux (#5036) 2019-06-07 12:00:00 -07:00
Cameron Dawson 0ddd5a80e1
Bug 1510280 - Convert Notifications to Redux (#5030)
This introduces Redux back into Treeherder.  While redux is often considered
unnecessary for simple apps in favor of Context, Treeherder is not simple.

Using Redux here allows us to abstract out certain functionality into
libraries that can be self-contained.  And it does a better job of managing
the functions needed to modify the state in these areas.  This is the first
context I am converting and will likely have minimal (if any) noticeable
performance gain.  But converting SelectedJob and Pusehs should end up having
a larger impact.
2019-06-06 14:39:50 -07:00
Cameron Dawson 3d1524118d
Bug 1549556 - Add Push Health badge to PushHeader (#4957) 2019-05-10 15:51:14 -07:00
Cameron Dawson 7619710074 Bug 1513581 - Fix ESLint react/no-access-state-in-setstate 2019-02-27 09:40:35 -08:00
Ed Morley 3c02823ea8 Switch to new style react-hot-loader import usage
See:
https://github.com/gaearon/react-hot-loader#getting-started
gaearon/react-hot-loader#1122
2019-01-02 13:48:48 +00:00
Cameron Dawson 3520515e2a
Bug 1501984 - Fix too much re-rendering in App for url changes (#4353) 2018-12-17 11:12:46 -08:00
Cameron Dawson aefabbbda5
Bug 1480166 - Use class fields to avoid bind() calls in App and /headerbars (#4355)
* Make handleUrlChanges function name consistent
2018-12-11 14:18:13 -08:00
Cameron Dawson 8dab49d9eb Bug 1480166 - Use class fields to avoid bind() calls in job-view root (#4317) 2018-11-28 07:48:49 +00:00
Cameron Dawson 964d81f8ac Bug 1499551 - Cleanup add/remove event listeners and binding (#4312)
And also clear server update interval on App unmount.
2018-11-27 11:09:13 +00:00
Cameron Dawson ef46ad2919
Bug 1502147 - Add ability to collapse pushes (#4242) 2018-11-16 13:29:52 -08:00
Ed Morley 65b7f4ab45
Bug 1507172 - Use Prettier for formatting JS/JSX (#4276)
Since it's more reliable (and strict) at code formatting than ESLint.
We use it via an ESLint plugin, and so disable the style-related AirBnB
preset rules, leaving the AirBnB guide to handle only correctness and
best practices rules.

It's highly encouraged to use an IDE integration or Git commit hook
to run Prettier (or `yarn lint --fix`) automatically. See:
* https://prettier.io/docs/en/editors.html
* https://prettier.io/docs/en/precommit.html

We may consider enabling a git commit hook out of the box (using eg
Husky) in the future, however they have previously been known to
interfere with partial-staging workflows, so would need to test the
fixes they have made for them thoroughly first.

In future PRs we may also want to start formatting JSON/CSS/Markdown
using Prettier too.
2018-11-16 08:28:34 +00:00
Ed Morley 4db0cfa973
Bug 1507406 - ESLint: Enforce more strict import style (#4279)
Imports must now be grouped like so (with newlines between each):

```
// "external" modules
import _ from 'lodash';
import chalk from 'chalk';

// modules from a "parent" directory
import foo from '../foo';
import qux from '../../foo/qux';

// "sibling" modules from the same or a sibling's directory
import bar from './bar';
import baz from './bar/baz';
```

The `import/order` rule has auto-fix support, so any errors can be
resolved using `yarn lint --fix`.

See:
https://github.com/benmosher/eslint-plugin-import/blob/master/docs/rules/order.md
2018-11-16 08:07:49 +00:00
Cameron Dawson a9c2dedf0a
Bug 1506424 - Fix logic to unselect job by clicking open areas (#4269) 2018-11-14 08:27:46 -08:00
Ed Morley 362cbde850 Bug 1505758 - Fix/enable ESLint 'func-names'
https://eslint.org/docs/rules/func-names
2018-11-08 16:27:37 +00:00
Cameron Dawson f9a8d899ac
Bug 1183749 - Enable eslint rule: react/no-unused-state (#4240) 2018-11-06 12:23:09 -08:00
Ed Morley 565ae4c13e
Bug 1364894 - Upgrade from Neutrino 4 to 9 (#4216)
Neutrino controls our frontend linting, transpilation, source-maps,
testing, dev-server and optimisation of production builds.

Highlights of the upgrade are:

* Major version updates to the individual tools within (such as webpack,
  Babel and ESLint), significantly improving performance, fixing
  transpilation/minification correctness bugs, adding support for newer
  ECMAScript features, and increasing linter coverage.
* Hot reloading in the dev server now works for all entry-points and not
  just the jobs view, shortening the feedback cycle.
* Reduced bundle size due to webpack 4's tree shaking, scope hoisting,
  automatic shared/vendor code chunk splitting (no need for the manually
  maintained 'vendor' list).
* CSS is now extracted out of JS, which improves performance, reduces
  bundle size and prevents the initial white flash of un-styled content.
* Support for dynamic imports/code splitting (needed for bug 1502192).
* Support for Jest via a new Jest preset (unblocks bug 1364045).
* Support for public class field declarations (unblocks bug 1480166).
* Improved source-maps (increases the quality of production exception
  trace-backs and fixes several debugger breakpoint bugs).
* Reduced amount of custom configuration required for our fairly complex
  frontend needs, reducing maintenance burden and allowing for easier
  future Neutrino upgrades.

In addition this PR:

* Fixes the WhiteNoise `immutable_file_test()` regex, so that it now
  correctly enables browser caching of images, fonts and source maps.
* Enables webpack-dev-server's overlay feature, which displays any
  compilation errors in the browser, saving having to switch back
  to the console (this can be enabled for warnings too if desired).
* Enables webpack-dev-server's automatic browser-opening feature,
  which saves having to manually navigate to `localhost:5000` after
  running `yarn start`.
* Switches Karma tests to run Firefox in headless mode, reducing the
  workflow disruption when running `yarn test`.
* Uses the new webpack `performance` option to enable maximum asset
  file size thresholds, to help prevent bundle-size regressions.
* Rewrites the `package.json` script commands so that they now work
  correctly on Windows, even when setting environment variables.

Performance comparison:

* Local `yarn build`:
  - Cached: 2m34s -> 23s
  - Uncached: 2m34s -> 58s
* Local `yarn start`:
  - Cached: 34.5s -> 13.6s
  - Uncached: 34.5s -> 31.3s
* Local `yarn test`
  - Cached: 61.5s -> 19.8s
  - Uncached: 61.5s -> 22.0s
* Local `yarn lint`
  - Cached: 3.8s -> 1.8s
  - Uncached: 13.7s -> 13.4s
* Travis end-to-end time:
  9 minutes -> 6 minutes
* Heroku deploy end-to-end time:
  14 minutes -> 9 minutes
2018-11-02 18:48:28 +00:00
Cameron Dawson b52813161f
Bug 1450042 - Treeherder converted to full React (#4167) 2018-10-23 10:34:03 -07:00