* Upgrade primer to 16
* Upgrade colors in scss
* Get SCSS to build
* Initial dark mode support
* trashcan -> trash
* More specific search browser test
* Fix link color on homepage
* Update overrides.scss
* Upgrade some colors to primer variables
* Hide dark mode support for now
* Apply suggestions from code review
* Update overrides.scss
* Add new product to products.yml
* Move directory to new location
* Update new index page
* Remove old category from github product index
* Add getting started category
* Add Jekyll category
* Create custom domain category
* Update links to custom domain articles
* Add redirects and update links for getting started articles
* Add redirects and update links for jekyll articles
* Fix link
* Fix link
* Fix link
* Fix link
* Install throng for easy cluster management
* Extract the Express app construction into its own file
* Switch server.js to use app clustering for deployed environments
* Worker count is based on the lesser of process.env.WEB_CONCURRENCY and the count of CPUs
* Reading clustered output is difficult, let's prefix the std{out,err} streams
Co-authored-by: Jason Etcovitch <jasonetco@github.com>
* Add `page_event_id` to all successive events
* Update events.js
* Break out event inits into functions so they don't break each other
* Update events.js
* Update events.js
* Update events.js
* Cache archived asset JS/CSS for a day
* Don't waste time with ETag calculations
* Add a comment about the expiration length
* Cache images and fonts for a day
* Cache GraphQL data files for a week
* Set Fastly surrogate-key header on all responses
* Update test to account for new response header
* Throw in some code that should fail a test
* Remove read-frontmatter behavior
* Unskip the test that would catch this
* Remove the throw to pass the test
* Update tests to use fs.promises when not top-level
* Move two to asyncFilter
* Update site-data-references.js
* Update site-data-references.js
* Clear out await fs.exists
* Lint
* A few more fixes
* Can't use async when defining tests
* Revise the 'pages' module to export two methods: 'loadPages' and 'loadPageMap'
Update all existing references to use 'loadPages' for now
* Remove explicit Promise resolutions on loadPage* methods
* Condense reduction method into its now-singular usage spot
* Opt for for-of instead of forEach
* Make require of pages in warm-server more explicit
* Be more explicit about find-page using a pageMap
* Be more explicit about find-page-in-version using a pageMap
* Be more explicit about site-tree using a pageMap
* Extract the map creation from loadPageMap
* Be more explicit about using a pageMap
* Update redirects precompile to take two arguments: pageList, pageMap
* Rename internal loadPages method to loadPageList
* Clarify pageMap is what is stored in context.pages
* Use loadPageMap in tests and stuff