Mailspring/internal_packages
Evan Morikawa 74e21bce16 feat(tasks): add Create, Update, Destroy tasks plus spec & lint fixes
Summary:
1. **Generic CUD Tasks**: There is now a generic `CreateModelTask`,
`UpdateModelTask`, and `DestroyModelTask`. These can either be used as-is
or trivially overridden to easily update simple objects. Hopefully all of
the boilerplate rollback, error handling, and undo logic won't have to be
re-duplicated on every task. There are also tests for these tasks. We use
them to perform mutating actions on `Metadata` objects.

1. **Failing on Promise Rejects**: Turns out that if a Promise rejected
due to an error or `Promise.reject` we were ignoring it and letting tests
pass. Now, tests will Fail if any unhandled promise rejects. This
uncovered a variety of errors throughout the test suite that had to be
fixed. The most significant one was during the `theme-manager` tests when
all packages (and their stores with async DB requests) was loaded. Long
after the `theme-manager` specs finished, those DB requests were
(somtimes) silently failing.

1. **Globally stub `DatabaseStore._query`**: All tests shouldn't actually
make queries on the database. Furthremore, the `inTransaction` block
doesn't resolve at all unless `_query` is stubbed. Instead of manually
remembering to do this in every test that touches the DB, it's now mocked
in `spec_helper`. This broke a handful of tests that needed to be manually
fixed.

1. **ESLint Fixes**: Some minor fixes to the linter config to prevent
yelling about minor ES6 things and ensuring we have the correct parser.

Test Plan: new tests

Reviewers: bengotow, juan, drew

Differential Revision: https://phab.nylas.com/D2419

Remove cloudState and N1-Send-Later
2016-01-15 15:16:21 -05:00
..
account-sidebar feat(mail-rules): Per-account mail rules filter incoming, existing mail 2015-12-23 02:19:32 -05:00
attachments fix(drag): Drag and drop files with illegial path characters 2016-01-12 13:52:01 -08:00
category-picker fix(license): GPLv3 => GPL-3.0 2015-12-07 10:50:47 -08:00
composer feat(tasks): add Create, Update, Destroy tasks plus spec & lint fixes 2016-01-15 15:16:21 -05:00
composer-signature fix(sig): Remove selectEnd, place cursor before sig 2016-01-05 14:31:55 -08:00
composer-spellcheck fix(specs): Spec fixes for 37e1f6bb 2016-01-12 19:11:47 -08:00
composer-templates fix(templates): rewritten "welcome" file / example template 2016-01-13 12:08:41 -08:00
composer-translate fix(examples): examples => packages, move away from installing them 2016-01-07 14:56:34 -08:00
events fix(rsvp): Check that you are a participant, support aliases. Fixes #962 2016-01-11 12:20:26 -08:00
feedback bump(electron): 0.34.3 => 0.35.1 2015-11-23 22:09:17 -08:00
github-contact-card fix(examples): examples => packages, move away from installing them 2016-01-07 14:56:34 -08:00
inbox-contact-elements fix(license): GPLv3 => GPL-3.0 2015-12-07 10:50:47 -08:00
message-autoload-images fix(extension-adapter): Update adapter to support all versions of extension api we've used 2015-12-30 15:11:37 -05:00
message-list style(message-list): Correct alignment of dropdown. Fixes #659 2016-01-08 11:48:14 -08:00
message-view-on-github fix(examples): examples => packages, move away from installing them 2016-01-07 14:56:34 -08:00
mode-switch fix(license): GPLv3 => GPL-3.0 2015-12-07 10:50:47 -08:00
notification-mailto fix(license): GPLv3 => GPL-3.0 2015-12-07 10:50:47 -08:00
notification-update-available fix(license): GPLv3 => GPL-3.0 2015-12-07 10:50:47 -08:00
notifications fix(quoted-text): Fix + test case for Sentry 8323, body el is quoted text 2016-01-11 11:14:34 -08:00
onboarding [N1] Validate input in the signup dialog 2016-01-15 11:27:14 -08:00
personal-level-indicators fix(indicators): Remove duplicate description key 2016-01-12 10:28:34 -08:00
phishing-detection fix(examples): examples => packages, move away from installing them 2016-01-07 14:56:34 -08:00
plugins fix(packages): Default icon for third-party packages 2016-01-12 13:52:01 -08:00
preferences fix(mail-rules): tiny CSS fix to "+" button in mail rules 2016-01-15 11:01:59 -08:00
print fix(license): GPLv3 => GPL-3.0 2015-12-07 10:50:47 -08:00
quick-schedule fix(examples): examples => packages, move away from installing them 2016-01-07 14:56:34 -08:00
search-bar feat(mail-rules): Per-account mail rules filter incoming, existing mail 2015-12-23 02:19:32 -05:00
sidebar-fullcontact feat(transactions): Explicit (and faster) database transactions 2015-12-17 11:46:05 -08:00
system-tray refactor(tray): Update main file for tray package 2015-12-21 20:18:17 -08:00
thread-list Reordered archive and trash icons 2016-01-06 14:22:41 -05:00
tooltip fix(license): GPLv3 => GPL-3.0 2015-12-07 10:50:47 -08:00
ui-dark feat(theme-selector): Add theme selector to preferences page 2015-12-15 10:29:58 -08:00
ui-light feat(theme-selector): Add theme selector to preferences page 2015-12-15 10:29:58 -08:00
undo-redo fix(theme): Dark mode styling for undo/redo component 2015-12-07 15:11:11 -08:00
unread-notifications feat(account-prefs): Adds new page for Account in preferences 2015-12-10 15:27:29 -08:00
worker-sync feat(tasks): add Create, Update, Destroy tasks plus spec & lint fixes 2016-01-15 15:16:21 -05:00
worker-ui fix(mail-rules): Catch and disable mail rules building bad actions 2015-12-28 18:39:06 -08:00