0
Fork 0
mirror of https://github.com/TryGhost/Ghost.git synced 2025-01-06 22:40:14 -05:00
ghost/test
naz 51c9a50c4f
Added validation layer to members import endpoint (#12131)
no issue

- Additional validation is needed for imported data because in case of bulk insertions (through knex) we bypass model layer validation - this could lead to invalid data in the database, which would be hard to fix.
- Chose validation method we use for other endpoints - through JSON Schema. It proved to be very performant (200ms overhead for 50k records). When comparing it with iterative method (validating each record separately) this was adding about 17s of overhead.
- Refactored returned values from "sanitizeInput" method to encapsulate more logic so that the caller doesn't have to calculate amount of invalid records and deal with error types
- Whole sanitizeInput method could now be easily extracted into separate module (somewhere close to members importer)
- Bumped members-csv package. It is meant to handle empty string values - '' and null, which should allow validating member records more consistently!
2020-08-17 23:28:57 +12:00
..
api-acceptance 🐛 Removed [http://url/] output in member email preview text 2020-08-12 20:14:06 +01:00
frontend-acceptance 🎨 New Google AMP template (#11986) 2020-07-06 17:09:24 +01:00
regression Added validation layer to members import endpoint (#12131) 2020-08-17 23:28:57 +12:00
unit Extracted promise libs and history into @tryghost/promise 2020-08-11 18:44:21 +01:00
utils Added validation layer to members import endpoint (#12131) 2020-08-17 23:28:57 +12:00
.eslintignore
.eslintrc.json Fixed linting error 2020-04-17 11:32:29 +01:00
.jshintrc