Summary:
- Add a new button to the sync error notification to "Debug" sync. This will open the activity window and dev tools in that window. Depends on D3736
- Update the "Contact Support" link in error notifications to prepopulate the support ticket with the sync error in the account
- Make the "Check Again" button react when clicking it
Test Plan: manual
Reviewers: evan, khamidou
Reviewed By: evan, khamidou
Differential Revision: https://phab.nylas.com/D3737
Summary:
The isSearchIndexed attribute gets bulk reset when we drop the search
index, however, the JSON values were not updated to reflect the new
column values. We don't care about notifications to this field, so in
order to make bulk clearing ok this diff adds a new loadFromColumn option to
Attributes which causes the value to be loaded from the SQL table column
rather than the JSON blob.
Test Plan:
Run locally, drop the search index, make sure we load from the
column rather than the JSON when re-indexing
Reviewers: juan, evan
Reviewed By: juan, evan
Differential Revision: https://phab.nylas.com/D3739
Summary:
- Make the try again button react when clicked
- Don't mark as offline until after we've tried again at least 3 times
Test Plan: manual
Reviewers: evan
Reviewed By: evan
Differential Revision: https://phab.nylas.com/D3738
Summary:
- Refactor Gmail auth functions
- Add Analytics in
- Show error states
Depends on D3735
Test Plan: manual
Reviewers: khamidou, juan
Reviewed By: khamidou, juan
Differential Revision: https://phab.nylas.com/D3732
Summary:
Very occasionally the db can become malformed for some reason. If this
happens all DB requests will fail and flood sentry with errors. This will
attempt to reset the db if we encounter this error
Depends on D3730
Test Plan: manual
Reviewers: juan
Reviewed By: juan
Differential Revision: https://phab.nylas.com/D3731
Summary:
We changed the index format (splitting participants into to and from) so
we need to update the index version so that it gets rebuilt.
Test Plan: Run locally, make sure index gets rebuilt
Reviewers: evan, juan
Reviewed By: juan
Differential Revision: https://phab.nylas.com/D3728
Summary:
Previously we indexed all participants together for a single thread.
This lead to confusing search results when people would search for
'from' and get back lots of results that were only 'to'. This diff
splits the participants index into separate to and from indices and
updates the query generator appropriately.
Fixes T7580
Test Plan: Run locally, verify from doesn't return to and vice versa.
Reviewers: evan, juan
Reviewed By: juan
Maniphest Tasks: T7580
Differential Revision: https://phab.nylas.com/D3724
Summary:
If we don't have IMAP settings for a particular email domain,
try to choose based on which provider was selected instead.
Fixes#3168
Test Plan: tested locally
Reviewers: spang, evan
Reviewed By: evan
Differential Revision: https://phab.nylas.com/D3721
Summary:
Some strange scenario is causing us to attempt to redefine the object property `_delta` on our `delta.attributes` object inside `DeltaProcessor._decorateDeltas`, which throws an error, and consequently throws the app into an error loop. I haven't been able to track down how to reproduce this, but when it happens it completely takes the app down.
From testing with tomasz's copy of N1, this seemed to have originated from the lack of Account tokens, which was hard to discover because the `_deltas` object completely floods the console with errors.
From what I gather, `_decorateDeltas` is only called from a single place, `DeltaProcessor.process`, which is also only called from a single place, and its unclear how it would be called multiple times with the same delta object references.
In order to prevent this error from completely destroying the app, I've added the `configurable` option when defining the property, so that redifining it doesn't throw an error. It should be safe to redefine this property with the latest delta reference, and will also allow us to discover other errors more easily in the console like the lack of account tokens which might be the original cause of this problem.
Test Plan: manual
Reviewers: mark, spang, evan, halla
Reviewed By: evan, halla
Differential Revision: https://phab.nylas.com/D3717
Summary:
Makes these messages update even if the user doesn't force a
re-render by switching perspectives.
Test Plan: tested manually
Reviewers: evan, juan
Reviewed By: juan
Differential Revision: https://phab.nylas.com/D3715
Summary:
We had to add the id to the index as well (along with is_search_indexed)
so that the query worked correctly since it sorts by id. Also added a
default value of 0 for boolean attributes so that we don't have to query
for two different values (0 and null), which was causing sqlite to have to
do a final b-tree sort which is slow.
Test Plan: Run locally, verify query plan with EXPLAIN QUERY PLAN
Reviewers: evan, juan
Reviewed By: juan
Differential Revision: https://phab.nylas.com/D3712
Use staging autoupdater for staging.
fixed failing test
Fix autoupdater – we were using the wrong command.
Revert "Bump version to 1.5.0"
Temporarily reverting this because I need to test the upgrade path from
0.4.2 => 1.5.0
Revert "Revert "Bump version to 1.5.0""
Had to do this to test the autoupdater.
[fix] [channel drop-down list] Show the stable channel in all cases.
Conflicts:
internal_packages/preferences/lib/tabs/update-channel-section.jsx
Fix broken autoupdater, for reals.
[master] Replace "Nylas N1" by "Nylas Mail" in build scripts
Summary: As discussed --- we need to make those changes to make the autoupdater work across versions.
Test Plan: Will run a build.
Reviewers: evan
Reviewed By: evan
Differential Revision: https://phab.nylas.com/D3701
Revert "Revert "Revert "Bump version to 1.5.0"""
Need to set the version to 0.4.402 for testing purposes.
Set preferredChannel in the autoupdater instead of in the ChannelStore
It turns out that Squirrel checks for update at program launch. In some
cases, it would put Pro users on the "nylas-mail" channel because that's
the default channel if you don't pass a preferredChannel.
Conflicts:
src/flux/stores/update-channel-store.es6
Set the autoupdater preferredChannel to stable.
Don't try to move the app file to the Application folder ourselves
Because of MacOS Gatekeeper path randomization issues
(https://github.com/Squirrel/Squirrel.Mac/issues/182) we need the user
to move the app themselves. Changed the dialog to ask them to do this
politely.
Conflicts:
internal_packages/verify-install-location/lib/main.es6
Summary:
When we've optimistically created a category and haven't seen
it come back through the remote yet, `.object` does not
exist. Just look up the sync state for the entire account in
this case.
Fixes T7556
Test Plan: tested manually
Reviewers: spang, evan, juan
Reviewed By: juan
Maniphest Tasks: T7556
Differential Revision: https://phab.nylas.com/D3711
Summary:
We query based on these fields which would cause us to scan the entire
table if we don't have these indexes.
Test Plan: Run locally
Reviewers: evan, juan
Reviewed By: juan
Differential Revision: https://phab.nylas.com/D3710
Because of MacOS Gatekeeper path randomization issues
(https://github.com/Squirrel/Squirrel.Mac/issues/182) we need the user
to move the app themselves. Changed the dialog to ask them to do this
politely.