DRAFT
DRAFT
We now support the optional chaining and nullish coalescing operators!
// Optional chaining
a?.(); // undefined if `a` is null/undefined
b?.c; // undefined if `b` is null/undefined
// Nullish coalescing
undefined ?? 'some other default'; // result: 'some other default'
null ?? 'some other default'; // result: 'some other default'
'' ?? 'some other default'; // result: ''
0 ?? 300; // result: 0
false ?? true; // result: false
If your're using TypeScript, you will need to upgrade your typescript
dependency to 3.7.0
or later if you wish to use the new operators.
If you're using Visual Studio Code 1.40 (the latest as of this release) or earlier, you will need to configure your editor if you want it to understand the new operators.
If you're using TypeScript in your project and have already upgrade its version as described above, then you can configure VS Code to Use Workspace Version
of TypeScript. If your project isn't using TypeScript, you can use the JavaScript and TypeScript Nightly extension until VS Code releases a newer version including TypeScript 3.7.0
or newer.
We've added support for numeric separators to improve readability of numeric literals.
1000000000; // Is this a billion? a hundred millions? Ten millions?
101475938.38; // what scale is this? what power of 10?
1_000_000_000; // Ah, so a billion
101_475_938.38; // And this is hundreds of millions
v3.2.0 is a minor release that adds support for production profiling and ignoring TypeScript type errors to make migrating JavaScript projects to TypeScript easier. It also includes other minor bug fixes and documentation updates.
react-scripts
- #7737 Support production profiling with React Developer Tools (@JacobMGEvans)
react-dev-utils
,react-scripts
- #6931 Adds TSC_COMPILE_ON_ERROR env var... (@kylebebak)
react-scripts
- #7754 Fix linting error when using rest props (@alexandrtovmach)
react-app-polyfill
react-scripts
- #7687 Use installing package manager in README (@ashr81)
- #7755 Support setting baseUrl to root directory (@rovansteen)
- #7530 only load eslint config when EXTEND_ESLINT environment variable is specified/ do not swallow eslint config errors (@n1ru4l)
- #7742 set output.globalObject to 'this' (@kentcdodds)
- #7721 Add "entrypoints" key to asset manifest (@samuelmeuli)
- #7562 enable .eslintignore again (@igtm)
react-dev-utils
- #6980 Stop hiding the column number of ESLint errors (@justingrant)
- #7302 docs: note that 2 to 3 migration may require deletion of node_modules (@kimpers)
- #7757 Documentation typo fix: accessbile→accessible (@tomer)
- #7601 [Documentation] Updated list of supported Jest config overrides (@neilbryson)
- #7705 Update runtime chunk name separator in docs (@samuelmeuli)
react-scripts
react-dev-utils
,react-scripts
react-scripts
- #7729 Remove switch case (@andrelmlins)
- Alexandr Tovmach (@alexandrtovmach)
- André Lins (@andrelmlins)
- Ashrith Reddy (@ashr81)
- Federico Zivolo (@FezVrasta)
- Iguchi Tomokatsu (@igtm)
- Jacob M-G Evans (@JacobMGEvans)
- Jake Moxey (@jxom)
- Justin Grant (@justingrant)
- Kent C. Dodds (@kentcdodds)
- Kim Persson (@kimpers)
- Kyle Bebak (@kylebebak)
- Laurin Quast (@n1ru4l)
- Lewis Llobera (@lewislbr)
- Rakan Nimer (@rakannimer)
- Reece Dunham (@RDIL)
- Robert van Steen (@rovansteen)
- Samuel Meuli (@samuelmeuli)
- Tomer Cohen (@tomer)
- neilbryson (@neilbryson)
Inside any created project that has not been ejected, run:
npm install --save --save-exact [email protected]
or
yarn add --exact [email protected]
v3.1.2 is a maintenance release that includes minor bug fixes and documentation updates.
react-scripts
- #7679 Change runtime chunk name separator from tilde to dash (@javadoug)
- #7538 Explicitly checking that EXTEND_ESLINT is true (@BrockWills)
babel-preset-react-app
,react-error-overlay
,react-scripts
- #7662 Fix build (@ianschmitz)
react-scripts
- #7616 Update deployment.md with another AWS example (@AndrewBestbier)
- #7663 Remove --single-quote from prettier examples (@brlewis)
- #7659 Update running-tests.md (@weyert)
- #7459 Update troubleshooting.md (@prevostc)
- #7650 Adopt Contributor Covenant (@iansu)
- #7620 cleanup-after-each is no longer necessary! (@iHmD)
- #7613 Fix seams between changelog majors (@emilpalsson)
- #7368 Correcting proxy sample (@szabolcs-szilagyi)
- #7536 add a migration step to remove static from robots.txt (@lookfirst)
- #7521 Show logo for mobile views in create-react-app.dev (@GrooChu)
react-scripts
- #7526 The variable dotenvFiles is never reassigned - use const instead (@Primajin)
- #7585 remove trailing spaces (@xiaoxiangmoe)
babel-plugin-named-asset-import
,confusing-browser-globals
,react-app-polyfill
,react-dev-utils
,react-error-overlay
,react-scripts
- #7681 Bump dependencies (@ianschmitz)
react-scripts
- #7531 Upgrade dotenv-expand to fix issues (@DominicTobias)
eslint-config-react-app
,react-scripts
- #7540 Bump version of @typescript-eslint/* (@pierreneter)
- Andrew (@AndrewBestbier)
- Brock Wills (@BrockWills)
- Clément Prévost (@prevostc)
- Dominic Tobias (@DominicTobias)
- Doug Ross (@javadoug)
- Emil Pålsson (@emilpalsson)
- Federico Zivolo (@FezVrasta)
- Ian Schmitz (@ianschmitz)
- Ian Sutherland (@iansu)
- Jannis Hell (@Primajin)
- Jerome Leclanche (@jleclanche)
- Jon Stevens (@lookfirst)
- Sabesh Rajendran (@GrooChu)
- Tomáš Szabo (@deftomat)
- Weyert de Boer (@weyert)
- ZHAO Jinxiang (@xiaoxiangmoe)
- @brlewis
- @iHmD
- @pierreneter
- szabi (@szabolcs-szilagyi)
Inside any created project that has not been ejected, run:
npm install --save --save-exact [email protected]
or
yarn add --exact [email protected]
v3.1.1 is a maintenance release that includes minor bug fixes and documentation updates.
react-scripts
- #7513 Fix ESLint 6 support (@ianschmitz)
- #7508 Don't block static files in robots.txt (@iansu)
- Ian Schmitz (@ianschmitz)
- Ian Sutherland (@iansu)
- Tomáš Szabo (@deftomat)
Optionally remove Disallow: /static/
from public/robots.txt
if you want to allow your images and other static files to be indexed by search engines #7508
Inside any created project that has not been ejected, run:
npm install --save --save-exact [email protected]
or
yarn add --exact [email protected]
v3.1.0 is a minor release that adds ESLint 6 support as well as experimental support for extended and customizing the ESLint config along with other minor bug fixes and documentation updates. The upgrade to ESLint 6 is a breaking change only if you're using eslint-config-react-app
or react-error-overlay
outside of Create React App.
- ESLint 6: #7415
- Experimental ESLint config customization: #7036
- More Jest config options: #6055
- Option to configure or disable image inlining: #6060
eslint-config-react-app
,react-error-overlay
,react-scripts
eslint-config-react-app
,react-scripts
react-dev-utils
react-scripts
- #6060 Add environment variable to control image inlining threshold (@peterbe)
- #6055 Support for graceful extension of Jest config (@jamesmfriedman)
react-dev-utils
react-scripts
- #5829 Resolve relative paths for preprocessor styles (@iamandrewluca)
- #7433 Add explicit check for --watchAll=false (@mrmckeb)
- #7378 Update url-loader to 2.0.1 (@heyimalex)
eslint-config-react-app
- #7230 jsx-no-duplicate-props ignore case fix (@rommguy)
- #7219 fix: eslintrc overrides key should be an array, not object (@ivan-aksamentov)
- #7079 Adjust typescript-eslint to not warn about typedefs when used before defined (@vincentjames501)
react-error-overlay
,react-scripts
react-scripts
- #7497 add readonly modifier for css module (@xiaoxiangmoe)
- #7496 bump sass-loader (@xiaoxiangmoe)
- #7176 Fix RegExp from navigateFallbackBlacklist (workbox) (@nuragic)
- #7080 Support configuring coveragePathIgnorePatterns (@kentcdodds)
- #7482 100% lighthouse score for progressive web app (@dscanlan)
- #5951 Set jsonpFunction by default (@sibiraj-s)
- #7472 Typescript init: suggest
jsx: "react"
in tsconfig (@kingdaro) - #7118 Append title element to SVG component via title prop (@sudkumar)
react-dev-utils
- #7028 Add vscodium to the editor list (@leonardodino)
- #7277 Handle browser arguments (@arvigeus)
eslint-config-react-app
,react-error-overlay
,react-scripts
eslint-config-react-app
create-react-app
- #6941 Fix compatibility of create-react-app to Node.js v0.10+ (@tobiasbueschel)
- Other
- #7488 Adjusted deployment documentation for ZEIT Now (@leo)
- #7462 Added dependencies to bootstrap article when using custom SCSS. (@eclectic-coding)
- #7340 Update testing-library related npm package names in README (@balazsorban44)
- #7423 Add question issue template (@iansu)
- #7260 Docs: remove an outdated TypeScript-related note (@MidnightDesign)
- #7372 proposal dynamic import are stage 4 (@gespispace)
- #7374 docs(svg): add tip for title props accessibility (@sudkumar)
- #7182 Update minimum Node versions in docs (@JESii)
- #7317 Fix typo (@mvasin)
- #7262 Docs: replace the command line to install relay/macro (@soufDev)
- #7170 Update deprecated package reference (@bnewcomb)
- #7133 Make the OOM abreviation more clear (@tlehtimaki)
- #7086 Improve breaking changes info for CRA 3.0.0 (@falldowngoboone)
- #7059 Correct spelling of browserslist (@amyrlam)
- #7039 docs: fix env-cmd example in deployment section (@VMois)
- #7041 Updates the relay docs (@orta)
eslint-config-react-app
react-error-overlay
,react-scripts
babel-preset-react-app
- #5818 Remove unused dependencies in babel-preset-react-app (@iansu)
- #7208 Use correct babel transform for dynamic import in dependencies (@jamesknelson)
react-scripts
- Other
- #7385 Attempt at fixing CI issue on windows (@heyimalex)
- #7269 Update issue templates (@mrmckeb)
- #7220 Disable Travis build (@ianschmitz)
- #7096 Add Azure DevOps build pipeline (@ianschmitz)
- #6858 Add test to make sure .d.ts files are ignored when checking for TypeScript (@iansu)
react-error-overlay
,react-scripts
babel-plugin-named-asset-import
,babel-preset-react-app
,confusing-browser-globals
,create-react-app
,react-app-polyfill
,react-dev-utils
,react-error-overlay
,react-scripts
- #7473 Bump dependencies (@ianschmitz)
eslint-config-react-app
,react-error-overlay
,react-scripts
eslint-config-react-app
,react-scripts
react-scripts
react-dev-utils
- #7058 fix: Replaced opn (deprecated) with open (@jamesgeorge007)
- Adeel Imran (@adeelibr)
- Alex Guerra (@heyimalex)
- Amy Lam (@amyrlam)
- Andrea Puddu (@nuragic)
- Andrew Luca (@iamandrewluca)
- Andy Hopper (@andyhopp)
- Balázs Orbán (@balazsorban44)
- Ben Newcomb (@bnewcomb)
- Brian Muenzenmeyer (@bmuenzenmeyer)
- Brody McKee (@mrmckeb)
- Chuck (@eclectic-coding)
- Darius Tall (@kingdaro)
- Dmitry Lepskiy (@dmile)
- Guy Romm (@rommguy)
- Ian Schmitz (@ianschmitz)
- Ian Sutherland (@iansu)
- Igor Muchychka (@mucsi96)
- Ivan Aksamentov (@ivan-aksamentov)
- Ivan Pegashev (@gespispace)
- Jack Cross (@crosscompile)
- James Friedman (@jamesmfriedman)
- James George (@jamesgeorge007)
- James K Nelson (@jamesknelson)
- Jon Seidel (@JESii)
- Kent C. Dodds (@kentcdodds)
- Leo Lamprecht (@leo)
- Leonardo Dino (@leonardodino)
- Mikhail Vasin (@mvasin)
- Min ho Kim (@minho42)
- Nikolay Stoynov (@arvigeus)
- Orta (@orta)
- Peter Bengtsson (@peterbe)
- Rudolph Gottesheim (@MidnightDesign)
- Ryan Boone (@falldowngoboone)
- Ryan Marsh (@ryanwmarsh)
- Sebastian Silbermann (@eps1lon)
- Sibiraj (@sibiraj-s)
- Soufiane AIT AKKACHE (@soufDev)
- Sudhir Mitharwal (@sudkumar)
- Thew Dhanat (@ThewBear)
- Tobias Büschel (@tobiasbueschel)
- Toni (@tlehtimaki)
- Vincent Pizzo (@vincentjames501)
- Vladyslav Moisieienkov (@VMois)
- ZHAO Jinxiang (@xiaoxiangmoe)
- dominic scanlan (@dscanlan)
Inside any created project that has not been ejected, run:
npm install --save --save-exact [email protected]
or
yarn add --exact [email protected]
v3.0.1 is a maintenance release that adjusts some ESLint rules for TypeScript along with other minor bug fixes and documentation updates.
react-error-overlay
,react-scripts
- #7007 Unpin
babel-jest
(@ianschmitz) - #7002 Temporary fix for
babel-jest
preflight error (@ianschmitz)
- #7007 Unpin
eslint-config-react-app
- #6987 Disable
no-dupe-class-members
rule for TypeScript (@ianschmitz) - #6862 Fix
no-useless-constructor
rule in TypeScript (@ianschmitz)
- #6987 Disable
eslint-config-react-app
,react-scripts
- #6937 Disable
default-case
lint rule for TypeScript (@ianschmitz)
- #6937 Disable
react-dev-utils
react-dev-utils
,react-scripts
babel-preset-react-app
react-scripts
- Other
- #6979 Add note to restart the dev server after changing .env file (@MostafaNawara)
- #6945 Add clarifying note to TypeScript docs warning about global install of CRA (@methodbox)
- #6898 Update GraphQL docs (@nagman)
- #6810 Call to action button now reacts to being hovered (@joerez)
- #6881 Fix typo in deployment docs (@david-cho-lerat-HL2)
react-app-polyfill
- #6879 Update README.md (@david-cho-lerat-HL2)
- Chris Shaffer (@methodbox)
- Cory Reed (@swashcap)
- Dallon Feldner (@dallonf)
- David Cho-Lerat (@david-cho-lerat-HL2)
- Ian Schmitz (@ianschmitz)
- Joe Rezendes (@joerez)
- Maël Nison (@arcanis)
- Mostafa Nawara (@MostafaNawara)
- Petr Huřťák (@Hurtak)
- Tore Hammervoll (@skoging)
- @nagman
- @vg-stan
Inside any created project that has not been ejected, run:
npm install --save --save-exact [email protected]
or
yarn add --exact [email protected]
Create React App 3.0 brings some exciting new features including support for Hooks!
Thanks to all the maintainers and contributors who worked so hard on this release! 🎉
- Jest 24: #6278
- Hooks support: #5997
- TypeScript linting: #6513
browserslist
support in @babel/preset-env: #6608- Absolute imports using
jsconfig.json
/tsconfig.json
: #6656
Inside any created project that has not been ejected, run:
npm install --save --save-exact [email protected]
or
yarn add --exact [email protected]
NOTE: You may need to delete your node_modules
folder and reinstall your dependencies by running yarn
(or npm install
) if you encounter errors after upgrading.
If you previously ejected but now want to upgrade, one common solution is to find the commits where you ejected (and any subsequent commits changing the configuration), revert them, upgrade, and later optionally eject again. It’s also possible that the feature you ejected for is now supported out of the box.
Like any major release, [email protected]
contains a few breaking changes. We expect that they won't affect every user, but we recommend you look over this section to see if something is relevant to you. If we missed something, please file a new issue.
We've updated from Jest 23 to get the latest improvements in Jest 24. We've noticed some differences in snapshot serialization in Jest 24, so you may need to adjust your tests slightly once you update. You can read more about what's changed in the Jest 24 blog post.
We now enforce Rules of Hooks with eslint-plugin-react-hooks
. If you are breaking any of the rules of Hooks this will cause your build to fail.
We now lint TypeScript files. You can see the list of rules we enforce to check if your project is compatible. If you're using Visual Studio Code you can follow our guide to setup up your editor to display lint warnings.
The browserslist
config in your package.json
is now used to control the output of your JavaScript files. You can use separate configuration for development
and production
. See here for a good starting point which gives a good development experience, especially when using language features such as async/await, but still provides high compatibility with many browsers in production
We've removed the --no-watch
flag from the start
script in favor of Jest's own --watchAll=false
.
All asset paths have been moved under the files
key in asset-manifest.json
.
We now support setting baseUrl
in jsconfig.json
and tsconfig.json
. To configure baseUrl
to point to the src
directory in your JavaScript project, create a jsconfig.json
file in your project root:
{
"compilerOptions": {
"baseUrl": "src"
},
"include": ["src"]
}
If you have a TypeScript project you can configure baseUrl
the same way in your tsconfig.json
.
Currently the only supported options for baseUrl
are node_modules
(the default) and src
.
You can now include a version of Normalize.css in your project that will use your browserslist
setting to generate the appropriate styles for your target browsers. To include it simply add @import-normalize
at the top of one of your CSS files.
react-scripts
- #6656 Set baseUrl from jsconfig.json/tsconfig.json (@rovansteen)
- #5810 Adds PostCSS Normalize (@mrchief)
babel-plugin-named-asset-import
,confusing-browser-globals
,react-dev-utils
,react-error-overlay
,react-scripts
eslint-config-react-app
,react-scripts
- #6513 Add TypeScript linting support (@ianschmitz)
babel-preset-react-app
,eslint-config-react-app
,react-scripts
babel-preset-react-app
,react-dev-utils
,react-scripts
- #6608 Support browserslist in @babel/preset-env (@ianschmitz)
react-scripts
- #6848 Remove no-watch flag in favor of watchAll=false (@bugzpodder)
- #6821 Add custom function to generate asset manifest (@iansu)
- #6750 change NODE_ENV and PUBLIC_URL into readonly (@xiaoxiangmoe)
- #4176 Remove --coverage + --watch workaround for the test command (@stipsan)
- #6615 Allow .json type checking (@ianschmitz)
- #6821 Add custom function to generate asset manifest (@iansu)
babel-preset-react-app
,react-app-polyfill
- #6769 Update to core-js@3 (@ianschmitz)
babel-plugin-named-asset-import
,confusing-browser-globals
,react-dev-utils
,react-error-overlay
,react-scripts
eslint-config-react-app
,react-scripts
- #6513 Add TypeScript linting support (@ianschmitz)
babel-preset-react-app
,eslint-config-react-app
,react-scripts
babel-preset-react-app
,react-dev-utils
,react-scripts
- #6608 Support browserslist in @babel/preset-env (@ianschmitz)
react-dev-utils
- #6735 InlineChunkHtmlPlugin works with empty publicPath (@ItalyPaleAle)
react-scripts
- #6732 fix: terser-webpack-plugin hanging on WSL (@endiliey)
- #6610 Convert JSON.stringify \n to os.EOL (@MikeBeaton)
create-react-app
- #6759 Fix unlogged yarn pnp message (@heyimalex)
react-scripts
- #6845 Change CRA version in
react-scripts
eject warning. (@lffg) - #6821 Add custom function to generate asset manifest (@iansu)
- #6580 Fix react-scripts peer-deps link local issue (@transitive-bullshit)
- #6746 Replace deprecated SFC with FunctionComponent in react-app.d.ts (@iamandrewluca)
- #6160 Suggests that tsconfig.json is incorrect only when SyntaxError is caught (@Andarist)
- #6696 Enable futureEmitAssets in webpack config (@iansu)
- #6669 Remove unnecessary shrink-to-fit=no meta data (@abdelrahmanrifai)
- #5686 Add empty mock for http2 (@kjin)
- #5960 add command to add files to staging after eject (@clickclickonsal)
- #6615 Allow .json type checking (@ianschmitz)
- #6451 change class component to function component (@xiaoxiangmoe)
- #6845 Change CRA version in
babel-plugin-named-asset-import
,babel-preset-react-app
,confusing-browser-globals
,create-react-app
,eslint-config-react-app
,react-app-polyfill
,react-dev-utils
,react-error-overlay
,react-scripts
- #6826 Add directory details to packages/* package.json (@feelepxyz)
babel-preset-react-app
,react-app-polyfill
- #6769 Update to core-js@3 (@ianschmitz)
create-react-app
- #6770 Warn when using react-scripts-ts (@ianschmitz)
react-dev-utils
- #5821 Add wait: false to options object for opn (@evalexpr)
- #6502 Enable click to go to error in console part 2! (@johnnyreilly)
- Other
- #6847 Add baseUrl documentation (@ianschmitz)
- #6801 Copy fixes in adding Bootstrap docs (@panckreous)
- #6820 Fix docs about minimum React version for SVG component support (@iansu)
- #6817 Add link to TypeScript page in Getting Started (@ianschmitz)
- #6786 Clarify production build output files documentation (@bakuzan)
- #6783 Add SVG support dependency note (@pnarielwala)
- #6772 Update link to React Testing Library docs (@fjoshuajr)
- #6695 Add Render deployment section (@anurag)
- #6082 Add explanation for adding everything as dependencies to docs (@mikeattara)
- #5481 Document .graphql and .gql file loading with graphql.macro (@petetnt)
- #6491 Update advanced-configuration.md (@stephengodderidge)
- #6208 Add deployment instructions with AWS Amplify (@swaminator)
- #6374 Add note about npx caching and link to #6119 (@TaylorBriggs)
- #6386 Revert removal of newlines from html in docs (@JBallin)
react-scripts
- #6848 Remove no-watch flag in favor of watchAll=false (@bugzpodder)
- #6775 Fix code comment typo (@bestseob93)
- Other
- #6829 Upgrade to Lerna v3 (@iansu)
- #6762 Add temporary workaround for Babel dependency issues in kitchensink-eject test suite (@iansu)
- #6757 Add temporary workaround for Babel dependency issues in installs test suite (@iansu)
- #6700 Kill verdaccio in CI tasks cleanup (@santoshyadav198613)
- #6690 Remove duplicate url key in siteConfig (@charpeni)
react-scripts
- #6313 Update testMatch to also be compatible with Jest 24 (@ngbrown)
- #4176 Remove --coverage + --watch workaround for the test command (@stipsan)
- #6655 Change app component declaration from arrow function to regular function (@iansu)
- #6625 change named import into default import (@xiaoxiangmoe)
- #6621 make compiler a const not a let (@Primajin)
babel-plugin-named-asset-import
,confusing-browser-globals
,react-dev-utils
,react-error-overlay
,react-scripts
- #6654 Cleanup Jest config (@ianschmitz)
react-dev-utils
- #6674 Remove unused eslint comment (@mohitsinghs)
eslint-config-react-app
react-scripts
- #6843 Update fsevents dependency version (@FrancoisRmn)
- #6725 Update to workbox-webpack-plugin v4 (@r0ughnex)
- #6361 Updating html-webpack-plugin dep (@Aftabnack)
- #6483 Update webpack-dev-server to 3.2.1 (@ThePrez)
babel-plugin-named-asset-import
,babel-preset-react-app
,confusing-browser-globals
,create-react-app
,eslint-config-react-app
,react-app-polyfill
,react-dev-utils
,react-error-overlay
,react-scripts
- #6840 Relax ESLint version range (@ianschmitz)
babel-preset-react-app
- #6780 Remove unused babel-loader from babel-preset-react-app (@tlrobinson)
babel-preset-react-app
,react-dev-utils
,react-error-overlay
,react-scripts
- #6767 Update dependency versions (@ianschmitz)
react-dev-utils
eslint-config-react-app
- #6701 Remove project property from @typescript-eslint/parser options (@jackwilsdon)
eslint-config-react-app
,react-scripts
babel-preset-react-app
,eslint-config-react-app
,react-scripts
babel-preset-react-app
,create-react-app
,react-app-polyfill
,react-dev-utils
,react-error-overlay
,react-scripts
- #6614 Upgrade dependencies (@ianschmitz)
- Abdelrahman Rifai (@abdelrahmanrifai)
- Aftab Khan (@Aftabnack)
- Alessandro (Ale) Segala (@ItalyPaleAle)
- Alex Guerra (@heyimalex)
- Andrew Luca (@iamandrewluca)
- Anurag Goel (@anurag)
- Cody Olsen (@stipsan)
- Dalci de Jesus Bagolin (@dalcib)
- Dan (@panckreous)
- Eivind Arvesen (@eivind88)
- Endilie Yacop Sucipto (@endiliey)
- Francisco Joshua (@fjoshuajr)
- Hrusikesh Panda (@mrchief)
- Ian Schmitz (@ianschmitz)
- Ian Sutherland (@iansu)
- JBallin (@JBallin)
- Jack Wilsdon (@jackwilsdon)
- Jack Zhao (@bugzpodder)
- Jannis Hell (@Primajin)
- John Reilly (@johnnyreilly)
- Kelvin Jin (@kjin)
- Lorenzo Rapetti (@loryman)
- Luiz Felipe Gonçalves (@lffg)
- Mateusz Burzyński (@Andarist)
- Mike Beaton (@MikeBeaton)
- Mike Perry Y Attara (@mikeattara)
- Mohit Singh (@mohitsinghs)
- Nathan Brown (@ngbrown)
- Nicolas Charpentier (@charpeni)
- Nikhil Swaminathan (@swaminator)
- Parth Narielwala (@pnarielwala)
- Pete Nykänen (@petetnt)
- Philip Harrison (@feelepxyz)
- Pradeep Sekar (@r0ughnex)
- Raphael.dev (@bestseob93)
- Robert van Steen (@rovansteen)
- Romain François (@FrancoisRmn)
- Salvador Hernandez (@clickclickonsal)
- Santosh Yadav (@santoshyadav198613)
- Stephen Godderidge (@stephengodderidge)
- Taylor Briggs (@TaylorBriggs)
- Tom Crockett (@pelotom)
- Tom Robinson (@tlrobinson)
- Travis Fischer (@transitive-bullshit)
- Wilkins (@evalexpr)
- ZHAO Jinxiang (@xiaoxiangmoe)
- @ThePrez
- @bakuzan
- @frederikhors
Please refer to CHANGELOG-2.x.md for earlier versions.