Commit graph

4256 commits

Author SHA1 Message Date
Juan Tejada 8b36e2ec90 bump(changelog) 2017-01-24 11:46:46 -08:00
Evan Morikawa 2e7e8c2d01 fix(build): add output log interval to prevent travis from dying 2017-01-24 14:27:32 -05:00
Evan Morikawa 677b56f714 feat(build) add npm run local-ci 2017-01-24 14:09:17 -05:00
Tomasz Finc 212120d591 bump(changelog) 2017-01-24 09:36:08 -08:00
Evan Morikawa d96672ab57 bump(version): 1.0.12 2017-01-24 12:23:25 -05:00
Evan Morikawa a20b979208 feat(analytics): add analytics for change mail tasks
Summary:
Adds the following new events:

- Threads Moved to Folder
  - isArchive
  - source
  - folderType
  - folderDisplayName
  - numThreads
  - numMessages
  - description
  - isUndo

- Threads Changed Labels
  - isArchive
  - source
  - labelTypesToAdd
  - labelTypesToRemove
  - labelDisplayNamesToAdd
  - labelDisplayNamesToRemove
  - numThreads
  - numMessages
  - description
  - isUndo

- Threads Starred
  - source
  - numThreads
  - description
  - isUndo

- Threads Unstarred
  - source
  - numThreads
  - description
  - isUndo

- Threads Marked as Read
  - source
  - numThreads
  - description
  - isUndo

- Threads Marked as Unread
  - source
  - numThreads
  - description
  - isUndo

Each new action has a "source" property that's one of the following:
- Category Picker: New Category
- Category Picker: Existing Category
- Toolbar Button: Message List
- Toolbar Button: Thread List
- Send and Archive
- Context Menu: Thread List
- Thread List Icon
- Quick Actions: Thread List
- Swipe
- Keyboard Shortcut
- Dragged Out of List
- Snooze Move
- Important Icon
- Label Remove Icon
- Thread Selected
- Mail Rules
- Dragged Into List

Test Plan: manual

Reviewers: juan

Reviewed By: juan

Differential Revision: https://phab.nylas.com/D3760
2017-01-24 12:22:33 -05:00
Juan Tejada 0e19f4511e fix(auth): Properly wait for acct to be inited before adding to sidebar
Summary:
Previously, when adding an account, we waited for it to be completely loaded (which meant having fetched the folder list) before focusing it on the sidebar. This could take several seconds, so it made the app feel unresponsive or slow when adding an account.

Then, we changed the logic to wait an arbitrary amount of time to focus the newly added account in the sidebar, with the hope that it would be enough time to focus it correctly but that it wouldn't seem too long. This still caused the unwanted effect of focusing it before it had been fully loaded.

This commit changes the auth flow so that the onboarding shows a Success page until the newly added account is fully loaded, and only /then/ closes itself, focuses the main window, and allows the account to be correctly focused in the sidebar.

Test Plan: manual

Reviewers: halla, evan

Reviewed By: evan

Differential Revision: https://phab.nylas.com/D3751
2017-01-24 07:34:18 -08:00
Juan Tejada 3ca694fd30 fix(sync) Make category syncback tasks save changes after imap success
Summary:
This will solve T7579 for actions involving categories (folders/labels)
Depends on D3753

Test Plan: manual

Reviewers: halla, mark, khamidou, evan, spang

Reviewed By: evan, spang

Differential Revision: https://phab.nylas.com/D3754
2017-01-24 07:31:37 -08:00
Juan Tejada 649449ff4d build(notif) Remove appveyor notifs for now 2017-01-23 13:30:27 -08:00
Mark Hahnenberg 5730d23da8 [search-index] Limit search index size
Summary:
This diff modifies the SearchIndexer class to handle limiting the search
index size. It does this by periodically re-evaluating the window of
the n most recent items in a particular index where n is the max size of
the index. It then unindexes the items which are marked as indexed but
are no longer in the window and indexes the things that are in the window
but aren't marked as indexed.

Test Plan:
Run locally with a reduced thread index size, verify that the index
includes the most recent items and that it is the correct size. Also verify that
the queries used properly use fast sqlite indices.

Reviewers: evan, juan

Reviewed By: evan

Differential Revision: https://phab.nylas.com/D3741
2017-01-23 12:19:34 -08:00
Evan Morikawa 3710438296 bump(k2) 2017-01-23 15:02:17 -05:00
Mark Hahnenberg c7d8f1700d [thread-search] Background on-keypress search queries
Summary:
When the search index got very big the queries we were running during
after keypress would cause jank in the UI which was very noticeable on
subsequent keypresses. This diff backgrounds these queries and adds a
LIMIT to the fts MATCH clauses to avoid having to send too much stuff
across the IPC bridge.

Test Plan: Run locally, make sure that typing is smooth while searching

Reviewers: juan, evan

Reviewed By: juan, evan

Differential Revision: https://phab.nylas.com/D3757
2017-01-23 11:50:27 -08:00
Halla Moore 6e6bc1239f fix(unindexModel): Don't re-persist unpersisted models
Summary: See title

Test Plan: tested locally

Reviewers: juan, mark, evan

Reviewed By: juan, mark

Subscribers: juan

Differential Revision: https://phab.nylas.com/D3744
2017-01-23 11:32:46 -08:00
Sachin Agarwal e7c023a742 Update CHANGELOG.md (#3194)
N1 > Nylas Mail
2017-01-21 15:48:41 -08:00
Evan Morikawa 5fe0650058 bump(version): 1.0.11 2017-01-20 13:55:57 -08:00
Evan Morikawa 4a08331799 bump(changelog) 2017-01-20 13:55:46 -08:00
Juan Tejada a3f7300df9 fix(crash): Fix error reporting for unhandled promise rejections
When handling unhandled promise rejections, our error reporter would
completely freeze the worker window when trying to send a Promise
through the ipc bridge, rendering the app unusuable

This fixes T7621
2017-01-20 13:46:57 -08:00
Evan Morikawa 3614f1e2f2 feat(build): build DMG
Summary:
We need people to manually drag into their /Applications folders due to
OSX gatekeeper protections.

Test Plan: manual

Reviewers: juan, khamidou

Reviewed By: khamidou

Differential Revision: https://phab.nylas.com/D3756
2017-01-20 12:01:07 -08:00
Evan Morikawa ea5c9db46e bump(k2) 2017-01-20 10:25:15 -08:00
Juan Tejada 49bb85ff96 fix(auth) Don't show error message when auth is successful 2017-01-19 16:44:42 -08:00
Juan Tejada 9c782bd479 fix(auth) Increment timeout for requests that initiate imap connections 2017-01-19 16:06:37 -08:00
Juan Tejada 27be619642 🎨 2017-01-19 15:37:01 -08:00
Juan Tejada 1cc2f296ab update(changelog) 2017-01-19 15:30:06 -08:00
Halla Moore 0bd7ecd740 bump(version) 2017-01-19 11:39:50 -08:00
Halla Moore 336451969b bump(changelog) 2017-01-19 11:39:50 -08:00
Evan Morikawa 9095e0a091 fix(changelog): link to correct changelog 2017-01-19 11:28:50 -08:00
Juan Tejada fc19cf03c3 bump k2 2017-01-19 11:25:43 -08:00
Juan Tejada 38ea173b2b fix(error-mgmt): Add a few improvements to error management
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
2017-01-19 10:53:04 -08:00
Evan Morikawa b9826d6685 bump(k2) 2017-01-19 10:46:33 -08:00
Mark Hahnenberg 157501130b [thread-search] Add loadFromColumn option to Attribute
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
2017-01-19 10:22:32 -08:00
Juan Tejada 85c9439f8f fix(offline-notif): Add some offline notification improvements
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
2017-01-18 22:09:43 -08:00
Evan Morikawa 735c7faa73 fix(auth): Gmail auth screen now shows error states
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
2017-01-18 17:44:22 -08:00
Evan Morikawa 23bd05a514 fix(db): reset db if we encounter malformed error
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
2017-01-18 17:31:23 -08:00
Evan Morikawa dfd4693dce fix(err) re-add Draft Sending Errored event into Nylas Mail 2017-01-18 12:07:58 -08:00
Mark Hahnenberg 9120c598e7 [thread-search] Update Thread search index version
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
2017-01-18 11:31:31 -08:00
Juan Tejada 74bbfcea8b bump k2 2017-01-18 11:00:46 -08:00
Juan Tejada 9898349f23 fix(add-account) Increment delay before expanding sidebar 2017-01-18 11:00:46 -08:00
Mark Hahnenberg c695735cc2 [thread-search] Split 'participants' index into 'to' and 'from'
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
2017-01-18 10:41:20 -08:00
Evan Morikawa fc3e891fe9 bump(version): 1.0.9 2017-01-17 16:33:16 -08:00
Evan Morikawa 6345af593d bump(changelog) 2017-01-17 16:33:02 -08:00
Juan Tejada 051011b4c3 fix(offline-notif) Make it less aggressive
Summary: Add a timeout before displaying the offline notif

Test Plan: manual

Reviewers: halla, evan

Reviewed By: evan

Differential Revision: https://phab.nylas.com/D3727
2017-01-17 16:32:01 -08:00
Juan Tejada 8be7ce762e add comment 2017-01-17 16:31:07 -08:00
Evan Morikawa 900c3ed6aa bump(changelog) 2017-01-17 16:18:27 -08:00
Evan Morikawa 26ebb6df0d fix(db): don't assert transaction anymore 2017-01-17 16:05:02 -08:00
Juan Tejada 38fee51a13 fix(logging) Don't log error out unecessarily 2017-01-17 13:16:45 -08:00
Evan Morikawa 25727badba fix(clearbit): catch API errors 2017-01-17 12:42:40 -08:00
Evan Morikawa 3afff343cb fix(pref): remove default send preferences for now in basic 2017-01-17 12:27:45 -08:00
Halla Moore f407d5e430 rm(provider-setting): Remove duplicate "fastmail.com" 2017-01-17 08:49:21 -08:00
Halla Moore 0902d99678 fix(onboarding): Change how we determine default IMAP settings
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
2017-01-17 08:47:35 -08:00
Evan Morikawa 0b700c424c bump(version): 1.0.8 2017-01-16 20:21:39 -08:00