Commit graph

5498 commits

Author SHA1 Message Date
Juan Tejada 06fe77bb21 bump k2 2017-02-13 12:21:16 -08:00
Juan Tejada dbb404ccba [iso-core] Detect more offline errors when sending
Summary:
See title.
I really wish we could clean up this error handling a bit better, but I don't
think its super important right now.

Test Plan: manual

Reviewers: spang, evan, halla

Reviewed By: evan, halla

Differential Revision: https://phab.nylas.com/D3903
2017-02-13 12:18:45 -08:00
Christine Spang e71fb04bd8 feat(specs): Add support for generating JUnit XML by passing --junit-xml=<path>
Summary:
A prerequesite to integrating with `arc unit` or CI for each patchset is
being able to generate JUnit XML output for spec runs. This commit adds
this feature using the JUnitXMLReporter from jasmine-reporters. Invoke it like
this:

    npm run test-junit

(We output to the terminal as well when this is run, so in the case that
you're doing `arc diff` you have some idea of what is going on.)

Test Plan: run it

Reviewers: halla, juan, evan

Reviewed By: juan, evan

Differential Revision: https://phab.nylas.com/D3891
2017-02-13 12:05:52 -08:00
Juan Tejada 85dc9f319e [local-sync] Add a better reason when waking sync for syncback
Summary: see title

Test Plan: nil

Reviewers: mark

Reviewed By: mark

Differential Revision: https://phab.nylas.com/D3892
2017-02-13 12:00:13 -08:00
Christine Spang d6a234e94a 🎨 s/N1/Nylas Mail/ in window-event-handler.coffee 2017-02-13 11:14:41 -08:00
Juan Tejada b984a27482 bump k2 2017-02-11 15:30:43 -08:00
Juan Tejada a5e6fae063 fix(syncback-category) Return error when task fails 2017-02-11 13:03:56 -08:00
Juan Tejada 3a2f2ec6fc [local-sync] More retryable IMAP errors
Summary:
I've encountered random imap errors that we mark as permanent, but that
contain try again in the error message. We should check for that

Test Plan: manual

Reviewers: spang, evan, mark

Differential Revision: https://phab.nylas.com/D3899
2017-02-11 12:56:35 -08:00
Juan Tejada 81208062c0 fix(specs) Correctly set configDirPath when running tests
Before this commit, running the running the tests would clear all of
your config inside `.nylas-dev` and thus your accounts, forcing you to re-add
them everytime after you ran the tests

This was happening because we weren't correctly setting the
`configDirPath` to `.nylas-spec` when running with the --test flag. When
we run with --test, both options, `specMode` and `devMode` are true, so
the logic to set the path would fall into both conditions and ultimately
set the path to `.nylas-dev`. Now it's fixed!
2017-02-10 19:16:53 -08:00
Juan Tejada f4dbd555d1 fix(specs) 🔪 more side-effect flakiness 2017-02-10 19:01:17 -08:00
Juan Tejada d89887c20f fix(specs) Fix FeatureUsageStore spec flakiness 2017-02-10 16:48:06 -08:00
Evan Morikawa af6074f6f5 bump(changelog): 1.0.26 2017-02-10 18:43:51 -05:00
Evan Morikawa e92b668a1e bump(version): 1.0.26 2017-02-10 18:41:20 -05:00
Evan Morikawa 6f64e2f762 bump(changelog): 1.0.26 2017-02-10 18:41:20 -05:00
Halla Moore f86ff97062 fix(n1-spec-runner): Make fit async too
Summary: Running async tests with `fit` can fail otherwise

Test Plan: unit tests

Reviewers: juan, evan

Reviewed By: juan, evan

Differential Revision: https://phab.nylas.com/D3874
2017-02-10 15:41:07 -08:00
Halla Moore 0e5aebb91d fix(tests): Allow the masterBefore/AfterEach functions to be async
Summary:
The global `before/afterEach` functions were made async, but the
`masterBefore/AfterEach` functions were applied to the references
in `jasmineExports` instead of the global references. Fix that,
and await for `destroyTestDatabase()`. Also fix a random test
failure about not receiving any json.

This diff is necessary for D3878 to work properly.

Test Plan: ran the tests

Reviewers: juan, evan

Reviewed By: evan

Differential Revision: https://phab.nylas.com/D3890
2017-02-10 15:38:55 -08:00
Halla Moore 2d3bb52bc8 [local-sync] Properly clean-up in-memory test database
Summary: There's no file to unlink, we just need to drop the tables.

Test Plan: manual

Reviewers: evan, juan

Reviewed By: evan, juan

Differential Revision: https://phab.nylas.com/D3878
2017-02-10 15:37:58 -08:00
Evan Morikawa 614992f550 bump(k2) 2017-02-10 18:21:06 -05:00
Evan Morikawa e646d56bf8 [local-sync] fix sync when no messages in inbox in gmail
Summary:
If you have no messages in your Gmail Inbox (Yay Inbox Zero!) and you
connect your account and do first sync, then we get an error where we try
and fetch a range from null to -1.

This was due to a logical error in the first sync fetch code.

This diff fixes this bug and renames some variables to make it clearer
what's going on

Fixes T7842

{F11176}

Test Plan:
1. Bring Gmail to Inbox Zero
2. Connect account
3. Verify first sync works

Reviewers: spang, halla, juan

Reviewed By: juan

Maniphest Tasks: T7842

Differential Revision: https://phab.nylas.com/D3889
2017-02-10 18:20:53 -05:00
Juan Tejada 8d36ce6723 Actually fix travis 2017-02-10 15:16:07 -08:00
Juan Tejada d558990ecf fix(build) Fix travis build script 2017-02-10 15:11:43 -08:00
Juan Tejada cab1acfcc9 fix(build/travis) Only run tests on mac 2017-02-10 15:01:50 -08:00
Evan Morikawa f33667e1a1 fix(specs): fix FeatureUsage spec
Summary: Damn async TaskQueue

Test Plan: fixed

Reviewers: juan

Reviewed By: juan

Differential Revision: https://phab.nylas.com/D3888
2017-02-10 16:49:40 -05:00
Mark Hahnenberg 9c3dd29c10 [files] Add retry with exponential backoff for file downloads in NM
Summary: See diff title

Test Plan: Run locally, verify that we backoff on failure

Reviewers: evan, spang, juan

Reviewed By: juan

Differential Revision: https://phab.nylas.com/D3887
2017-02-10 13:47:21 -08:00
Mark Hahnenberg 8f08328329 [files] Add retry with exp backoff to IMAP connections for file download requests
Summary: See diff title

Test Plan: Run locally, make sure we backoff

Reviewers: juan, spang, evan

Reviewed By: evan

Differential Revision: https://phab.nylas.com/D3886
2017-02-10 13:29:12 -08:00
Evan Morikawa 31ae05fed2 fix(identity): remove the savePromise and optimistically update
Summary:
Fixes T7832

The _savePromise mechanism of the IdentityStore was really cumbersome and
was throwing errors on the console for people. In hindsight, this is an
unnecessary complication to a very sensitive system and a source of very
hairy async bugs.

Test Plan:
I also updated the specs to ensure that when you call saveIdentity the
promise resolves after the local cache has been updated

Reviewers: spang, halla, juan

Reviewed By: juan

Maniphest Tasks: T7832

Differential Revision: https://phab.nylas.com/D3882
2017-02-10 15:52:57 -05:00
Evan Morikawa 8a18ac3e14 fix(load): fix window load timing
Summary:
The app regressed to launching a blank white page for a while before
showing the UI. This was because I forgot to await for the now async
package loading

Test Plan: Manually boot app with compile cache disabled

Reviewers: mark, spang, juan

Reviewed By: juan

Differential Revision: https://phab.nylas.com/D3883
2017-02-10 15:52:40 -05:00
Juan Tejada 3a49bfe448 fix(specs) Fix Spellchecker tests
Summary:
Previously, these tests were mostly testing the library itself, instead
of our code. The library performed expensive operations and caused the
test to time out more often than not

This commit makes it so we test our code, mock out any calls to side
effects, and removes a line that was overriding our jasmine timeout

Test Plan: unit

Reviewers: spang, evan, halla

Reviewed By: evan, halla

Differential Revision: https://phab.nylas.com/D3885
2017-02-10 12:36:07 -08:00
Juan Tejada 6d379efba1 fix(specs) Use shallow rendering
Now that we have 15.4.2, we don't have to worry about:
https://github.com/facebook/react/pull/8097
2017-02-10 12:19:38 -08:00
Juan Tejada 0638b843b6 fix(specs) Synchronously render test reporting gui for better stack traces 2017-02-10 12:19:18 -08:00
Juan Tejada ad88dc3fe8 bump(react) 15.4.2 2017-02-10 12:17:34 -08:00
Mark Hahnenberg a71dabbe7a [cleanup] Remove random option that's no longer used
Summary: See diff title

Test Plan: yolo

Reviewers: juan, evan, spang

Reviewed By: spang

Differential Revision: https://phab.nylas.com/D3873
2017-02-10 10:17:15 -08:00
Mark Hahnenberg b030eee5c5 [notifications] Fixup "Nylas is Offline" notification
Summary:
This notification was randomly appearing and not going away on its own.
This was due to some weird logic in the react component. This diff
refactors things to make them a little more consistent.

Test Plan:
Run locally, disconnecting and reconnecting to make sure we properly
show and hide the notification.

Reviewers: evan, spang, juan

Reviewed By: juan

Differential Revision: https://phab.nylas.com/D3881
2017-02-10 10:15:52 -08:00
Juan Tejada 8b91fa9780 fix(api-error) Fix APIError constructor 2017-02-10 09:28:04 -08:00
Juan Tejada 31dc6d67cf bump(version) 1.0.25 2017-02-09 23:54:20 -08:00
Juan Tejada d1f3c9c042 fix(specs) Fix react warning 2017-02-09 16:56:29 -08:00
Juan Tejada 61543a0c6e fix(specs) Fix spellchecker tests 2017-02-09 16:35:52 -08:00
Evan Morikawa eb5aa235a8 fix(build): re-add specs back into build process 2017-02-09 19:07:00 -05:00
Evan Morikawa ceaad6b13c fix(specs): fix util specs 2017-02-09 19:05:19 -05:00
Evan Morikawa e7ffb974e4 [local-sync] rename spec fixture folder to be correct 2017-02-09 19:05:04 -05:00
Juan Tejada c3d2d0563f fix(specs) lock enzyme version 2017-02-09 15:45:22 -08:00
Juan Tejada 3fff1227e8 fix(specs) Fix tokenizingfield specs 2017-02-09 15:32:32 -08:00
Evan Morikawa 703da64253 fix(specs): fix more tests 2017-02-09 18:29:30 -05:00
Evan Morikawa 7ae89927e1 fix(specs): fix more broken specs 2017-02-09 18:17:11 -05:00
Juan Tejada 6856a2ccf7 [local-sync] When replying to a thread, properly add it to Sent folder
Summary:
Previously, when processing messages during folder sync, if the message already existed, and it belonged to a thread, we would update the message, but forget to update its thread with any changes that new
message would produce on the thread (e.g. updating the threads folders or labels).

One obvious manifestation of this was when replying to a thread: the EnsureMessageInSentFolderTask would create the new message, and then attempt to sync the sent folder to fetch the newly created message. When processing this message during sync, we would update the message but not update its thread, so the thread would not be associated to the sent folder, and it wouldn't show up in your sent items list in the UI.

Test Plan: manually verify that it works

Reviewers: evan, mark, spang

Reviewed By: mark, spang

Differential Revision: https://phab.nylas.com/D3872
2017-02-09 15:04:12 -08:00
Evan Morikawa ccaf78ce99 fix(specs) fix specs logging erroneous error messages 2017-02-09 17:51:43 -05:00
Mark Hahnenberg 3fa07164f8 [keytar] Report errors when keytar fails to load passwords
Summary: See title

Test Plan: yolo

Reviewers: evan, spang, juan

Reviewed By: juan

Differential Revision: https://phab.nylas.com/D3871
2017-02-09 14:50:32 -08:00
Juan Tejada ce43d1c2c9 fix(specs) Fix ClipboardService specs 2017-02-09 13:57:27 -08:00
Juan Tejada c44324e636 fix(specs) Fix AutoUpdateManager specs 2017-02-09 13:29:50 -08:00
Juan Tejada ba464e9f21 fix(spec) Never report errors in spec mode 2017-02-09 13:11:10 -08:00