v2.0.0
How to upgrade to v2.0
https://github.com/FoalTS/foal/blob/v2-0-0/docs/upgrade-to-v2/index.md
OR (if dead link)
https://github.com/FoalTS/foal/blob/master/docs/upgrade-to-v2/index.md
Features
General issue: #658
1. Developper experience (CLI) ✅
2. Authentication with sessions ✅
Summary: #799.
- Simplify logout (issue: #726) (PR: #659)
- Remove the need for a secret (issue: #727) (PR: #742)
- Do not let TypeORMStore auto-update the database schema (issue: #766) (PR: #767)
- Allow to query all sessions of a user (issue: #510) (PR: #780)
- Allow to query all connected users (issue: #778) (PR: #780)
- Allow to force the disconnection of a user (issue: #779) (PR: #780)
- Support flash sessions (issue: #521) (PR: #781)
- Allow to regenerate the session ID for security reasons (issue: #728) (PR: #792).
- Make it easier to implement a custom session store and maintain it (issue: #794) (PR: #792).
- Cleanup regularly expired sessions in MongoStore and TypeORMStore (issue: #793) (PR: #792).
- Make it easier to use templates and to authenticate anonymous users (issue: #795) (PR: #792).
- [MongoStore] Use sessionID instead of _id to prevent errors on hex vs base64 (issue: #797) (PR: #800)
- [V2][Sessions] Remove the need of setSessionCookie in login (issue: #796) (PR: #801)
- Make it easy/fast to use CSRF tokens with sessions (SPA & regular apps) (issue: #798) (PR: #802)
- Do not save sessions if an error is thrown in a controller or a hook (PR: #823).
3. Schema references in validation hooks ✅
4. Service initialization ✅
- Initialize services by default (PR: #733)
5. Accessing file metadata during uploading ✅
6. Safer configuration ✅
7. Improve the naming of JWT settings ✅
- PR: #802
8. Remove support of Mongoose ✅
- Remove support of Mongoose (PR: #741)
9. Improve the configuration system ✅
10. Simplify the management of custom errors thrown in controllers and hooks ✅
11. Cleanup ✅
- Drop NodeJS 8 support and test NodeJS 12 (PR: #699).
- Remove outdated and useless security headers.
- Remove the objects
ObjectDoesNotExist
,PermissionDenied
(PR: #718) - PR: #804
Dependencies
Packages
- @foal/cli
- commander@6.2
- @foal/jwks-rsa
- jwks-rsa@1.10
- @foal/swagger
- swagger-ui-dist@3.35
- @foal/typestack
- class-transformer@0.3 (peer dependency)
Generated projects (foal createapp
)
- sqlite3@5.0
- @types/mocha@7.0.2
- @types/node@10.17.24
- concurrently@5.3
- mocha@8.2
- supertest@6.0
- typescript@4.0