Commit Graph

419 Commits

Author SHA1 Message Date
Jose Bolos
9dbee59746 Add request logging using morgan
This commit adds request logging to the app using morgan.

Every request will now be logged not one but twice: one when the request is received, and a second time when the response is sent.

The response logging also prints out the time elapsed in processing the request, which will be useful to debug performance issues (calls to the dashboard home are currently taking 4 - 15s on a populated database).

The new code uses a tiny middleware that uses nanoid to generate a random request id that can be used to match requests in the logs.

This logging will help us determine which requests are successful, which requests are slow, and establish what requests may have contributed to causing an application crash, making future debugging easier.
2022-03-08 11:19:15 +01:00
Jose Bolos
321d7bb6ba Split initApp in different functions
This makes the function easier to understand and fixes eslint complaints
about the function having too many statements.
2022-03-07 15:55:34 +01:00
Jose Bolos
4fd73bcf2f Make .editorconfig consistent between repos 2022-03-03 13:59:11 +00:00
Jose Bolos
0072fe8965 Version 4.1.0 4.1.0 2021-11-26 16:25:06 +00:00
Jose Bolos
30c1ff171d Update troubleshooting guide and move to README 2021-11-26 16:24:09 +00:00
Sangita Mane
a0b3fa843f Updated rulesets list to add WCAG 2.1 options 2021-11-26 17:05:50 +01:00
Jose Bolos
a424cfade7 Version 4.0.0 4.0.0 2021-11-26 15:34:37 +00:00
Jose Bolos
cbc9da2d93 update test matrix 2021-11-26 15:26:54 +00:00
Jose Bolos
19f4d32bf0 Fix linter errors 2021-11-26 15:22:28 +00:00
Jose Bolos
ff87055cc4 Update dependencies and devDependencies 2021-11-26 15:20:52 +00:00
Sangita Mane
4c0bd924ab Fixed the a11y errors on Pa11y dashboard results and add new url page (#285)
* Fixed the a11y errors on Pa11y dashboard results page and add new url page.

* Removed few more unnecessary roles along with Holli's suggestions implemented.

* Added close button ARIA label

Co-authored-by: Hollie Kay <1948361+hollsk@users.noreply.github.com>

Co-authored-by: Hollie Kay <1948361+hollsk@users.noreply.github.com>
2021-05-26 16:38:38 +02:00
Jose Bolos
6d4b8c9676 Add mongo version to brew start command 2021-05-18 14:32:35 +01:00
Jose Bolos
0654790289 Improve installation instructions
* Clarify the requirements for running Pa11y Dashboard, and specifically the versions of MongoDB supported
* Split the installation process in sections so it's easy to follow
* Instead of trying to cover the MongoDB installation on the Readme, refer to the MongoDB docs, but still including a macOS example for easy reference
* Clarify the use of the config files and how they relate to the NODE_ENV variable
* Use a slightly less informal language in a few places
2021-05-18 14:32:35 +01:00
Jose Bolos
1d931671ff Version 3.3.0 3.3.0 2021-04-27 15:03:22 +01:00
Jose Bolos
9d95c79625 Version 3.2.1 2021-04-27 15:53:29 +02:00
Jose Bolos
b8029c56f7 Fix security vuln by bumping express-hbs
Also bumps pa11y-webservice to the latest version.
2021-04-27 15:53:29 +02:00
Sangita Mane
9a23b79d89 #165 - Added list view option for the dashboard. (#279)
* Added list view & grid view buttons on the dashboard, on click of which switches the view and avoids truncation of title of the page.

* Indentation fixed.
2021-04-20 09:58:33 +02:00
Jose Bolos
b7d45c0913 Reorder the routes to avoid MongoDB ObjectID error
When trying to add a new URL, the Node.js MongoDB driver complains with the following error:
```
ObjectID generation failed. Argument passed in must be a single String of 12 bytes or a string of 24 hex characters
```

This is because the `/new` url gets captured by the `/:id` route defined in `/route/task/index.js`. It's another instance of #244 that I missed when fixing it.
2021-04-09 11:30:35 +02:00
Jose Bolos
9ae73dc446 Replace Travis with GH actions 2021-04-09 11:04:12 +02:00
Jose Bolos
ff8142b4e4 Version 3.2.0 (#270) 3.2.0 2020-10-05 17:35:43 +01:00
Jose Bolos
2f7e8ae451 Update dependencies (#269) 2020-10-05 17:04:12 +01:00
Sam Clulow
a2cc2c7942 Replace Chalk with Kleur (#264)
- Remove Chalk
- Add Kleur
- Update index.js
- Update copyright in README

Fixes #256
2020-06-29 16:27:44 +01:00
Jose Bolos
59f657b422 Update all devdependencies to the latest versions (#258) 2020-04-28 12:33:36 +01:00
Jose Bolos
ea3183791c Version 3.1.0 (#246)
* Version 3.1.0

Also minor bump to pa11y-webservice

* Bump webservice so it includes data fixtures
3.1.0
2019-09-27 11:44:24 +01:00
Jose Bolos
102a237d2e Bump webservice version and other deps (#245) 2019-09-20 15:59:21 +01:00
Jose Bolos
7c77467dcf Fix incorrect values being passed to ObjectID (#244)
Due to the routes being defined in the wrong order, certain urls (e.g. `/tasks/:taskid:/edit`) are being captured by the results route instead (e.g. `/tasks/:taskid:/:resultid:`). This is causing the wrong method to being called with parts of the path like `edit`, `run`, etc. being passed as an argument to ObjectID(). As these are not valid MongoDB IDs, the method displays instead an error message:

> Argument passed in must be a single String of 12 bytes or a string of 24 hex characters

Also change the path to the favicon image to be not relative, as this is causing a `favicon.png` string to be sent as an argument to ObjectID() when visiting certain pages due to the previous issue.
2019-09-20 14:57:15 +01:00
Jose Bolos
2de7e59f44 Bump webservice to 3.0.1 (#243)
Fixes a problem with tests not running when cron jobs are triggered.
3.0.1
2019-09-13 15:14:36 +01:00
Jeremy Englert
c7bd2a53b6 Adds new images to Readme (#239) 2019-08-01 09:20:02 +01:00
Jose Bolos
350f94a0d4 Version 3.0.0 (#236)
Includes several updates to the migration guide and the README.
3.0.0
2019-07-16 15:16:06 +01:00
Jose Bolos
a5ce220509 Update all dependencies and standardise versions (#235) 2019-07-16 14:08:27 +01:00
Jose Bolos
ce07206899 Update dependencies (#234)
* Bumps pa11y-webservice and client to the new versions requiring node 8+
* Update tests to account for the new URL. Integration tests now include a localhost URL, this updates the tests to reflect that.
* Increase test timeout to avoid travis failing
2019-07-16 13:41:39 +01:00
Juga Paazmaya
1609c8d667 Updates Node.js min version to 8 and removes npm as dependency (#228)
* Update Node.js min version to 8 and remove npm as dependency

* Test against Node.js 8 and 10 at Travis

* Add Node.js v12 in Travis
2019-05-15 12:32:20 +01:00
Jose Bolos
c1dcbf4436 Adds debugging info to startup log (#225)
There are two ways of setting a configuration for this app: config files, and environment variables. This makes it easy for the app to run with a different config from the one that you intend to run it with.

Currently, only the NODE_ENV variable and server url are being printed out on startup.

This PR adds the database config and the cron config to the details being displayed. This may help debug configuration issues, database issues, and specially making easier to understand what config is being used when for example running in a container.
2019-05-15 10:57:08 +01:00
James Loveridge
ef769d95e1 Add MongoDB installation instructions for Mac/Linux (#218) 2018-10-24 20:19:35 +01:00
Rowan Manning
1f685bafa2 Version 2.4.2 2.4.2 2018-06-21 11:40:50 +01:00
Frank van Gemeren
97413a26ab Update insecure dependencies. Fixes #210 partially (#211) 2018-06-21 11:36:46 +01:00
Mike Tanaka
edfd51a366 Make the rule name match the reported error so we can ignore it. (#209)
It's defined as WCAG2AA.Principle1.Guideline1_4.1_4_3.G18, but gets reported as WCAG2AA.Principle1.Guideline1_4.1_4_3.G18.Fail
2018-05-11 10:48:03 +01:00
Frank van Gemeren
d96035a6ee Fix link target (#206) 2018-04-04 14:28:27 +01:00
Rowan Manning
93bea1dbac Version 2.4.1 2.4.1 2017-11-28 14:56:32 +00:00
Rowan Manning
7307fd6d61 Update pa11y-webservice to fix HTML CodeSniffer 2017-11-28 14:55:06 +00:00
Rowan Manning
aa7d694da7 Version 2.4.0 2.4.0 2017-11-23 10:01:18 +00:00
Elena Musatova
b144970564 Results page: export graph in PNG (#197) 2017-11-23 09:56:23 +00:00
Rowan Manning
37d94b0005 Version 2.3.0 2.3.0 2017-10-31 16:13:13 +00:00
Elena Musatova
66d97769a0 Updated results page (#196)
* Update gitignore

* Update makefile. Add hbs helper

* Collect all selectors for errors/warnings/notices

* Add list of techniques that help to solve problems

* Remove task-stats block from sidebar

* Remove script from Makefile

* Update tooltips. Map standards and techniques

* Update layout for new components: new tabs, errors panels, lists of selectors, tooltips and popovers

* Update styles for new layout and components

* Graph buttons and popovers styles

* Reformat less code

* Include popover. Update IE styles

* Problem details. Context popovers

* Update graph buttons. Add sorting by number of errors

* Update graph buttons params

* Fix tooltip names

* Swap details and ignore link-buttons

* Set ignore link colors
2017-10-31 16:10:24 +00:00
Michael Mior
a8013834c5 Fix Travis CI badge in README (#193) 2017-09-27 09:44:56 +01:00
Hollie Kay
bfe47003c7 remove survey (#192) 2017-09-12 13:54:40 +01:00
Hollie Kay
fb062fba48 Add Danny's article to resources (#191) 2017-08-17 13:46:42 +01:00
Hollie Kay
774b522676 add survey link to readme (#190)
also adds a header to make it look more exciting and like a proper section, instead of a list of random sentences
2017-08-14 11:55:48 +01:00
Jose Bolos
defb044f19 Version 2.2.2 2.2.2 2017-03-23 09:06:29 +00:00
Snyk bot
8f6ef9f204 fix: package.json to reduce vulnerabilities (#185)
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/npm:qs:20170213
- https://snyk.io/vuln/npm:qs:20170213

Latest report for pa11y/dashboard:
https://snyk.io/test/github/pa11y/dashboard
2017-03-23 09:00:24 +00:00