Commit graph

184 commits

Author SHA1 Message Date
Ben Gotow 5e78a9b2c6 💄(plugins): Updated assets and a bit of error handling 2016-02-23 17:51:10 -08:00
Ben Gotow 40274cfc77 fix(composer): Redo toolbar styling with theme variables + minor fixes 2016-02-23 15:40:44 -08:00
Ben Gotow 34da43c42a 💄(icon): A delightful seafoam green icon 2016-02-23 10:35:08 -08:00
Ben Gotow 825d2ef8be 💄: Experimental app icon, fix for merge conflict 2016-02-19 18:52:49 -08:00
Juan Tejada 76bda1dbe4 feat(snooze/send-later): Add snooze and send later plugins
Summary:
- Add initial version of snooze and send later plugins
- Tests are missing since this will probably heavily change before we are done with them

Test Plan: - TODO

Reviewers: drew, bengotow, evan

Reviewed By: bengotow, evan

Differential Revision: https://phab.nylas.com/D2578
2016-02-18 10:06:21 -08:00
Evan Morikawa 3f38c35d98 fix(analytics): no longer track tasks 2016-02-12 13:52:06 -08:00
Evan Morikawa cc540fef6e fix(composer): allow link paste without tooltip
Also fix style issues with link text.

Fix cmd+k link editing when nothing is selected.

Make confirm button only appear when there are changes to be made
2016-02-12 13:50:20 -08:00
Evan Morikawa 0f9475cc91 fix(analytics): add onboarding welcome event 2016-02-12 10:25:28 -08:00
Evan Morikawa 8e6e5e9d57 fix(win): add windows-shortcuts to asar exclude 2016-02-11 13:52:53 -08:00
Evan Morikawa 8e78d8ffce fix(updater): update to Squirrel.Windows 1.2.3
grunt-electron-installer 1.2.1 includes a bump to squirrel 1.2.3
2016-02-09 12:03:43 -08:00
Evan Morikawa 2c70083a43 fix(win): fix typo in nylas-win-bootup 2016-02-09 11:43:30 -08:00
Evan Morikawa d4db0737cf feat(error): improve error reporting. Now NylasEnv.reportError
Summary:
The goal is to let us see what plugins are throwing errors on Sentry.

We are using a Sentry `tag` to identify and group plugins and their
errors.

Along the way, I cleaned up the error catching and reporting system. There
was a lot of duplicate error logic (that wasn't always right) and some
legacy Atom error handling.

Now, if you catch an error that we should report (like when handling
extensions), call `NylasEnv.reportError`. This used to be called
`emitError` but I changed it to `reportError` to be consistent with the
ErrorReporter and be a bit more indicative of what it does.

In the production version, the `ErrorLogger` will forward the request to
the `nylas-private-error-reporter` which will report to Sentry.

The `reportError` function also now inspects the stack to determine which
plugin(s) it came from. These are passed along to Sentry.

I also cleaned up the `console.log` and `console.error` code. We were
logging errors multiple times making the console confusing to read. Worse
is that we were logging the `error` object, which would print not the
stack of the actual error, but rather the stack of where the console.error
was logged from. Printing `error.stack` instead shows much more accurate
stack traces.

See changes in the Edgehill repo here: 8c4a86eb7e

Test Plan: Manual

Reviewers: juan, bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D2509
2016-02-03 18:06:52 -05:00
Ben Gotow cbfe310521 fix(eslint): Avoid eslint/eslint/issues/5125 by specifying escope version 2016-02-01 11:08:15 -08:00
mbilker 9458df3a9c bump(grunt-contrib-csslint): update to ~0.5.0 2016-02-01 10:10:12 -05:00
Evan Morikawa 983dc77ef0 fix(resources): update build resources link 2016-01-28 12:03:23 -08:00
Evan Morikawa 8bcb0a2184 fix(resources): update build resources link 2016-01-28 12:02:27 -08:00
Evan Morikawa 55aedef697 feat(startup): new option to launch on system start
Summary:
adds new option to launch on system start

Also adds the `--background` flag to launch N1 in the background (aka not
show the main window).

Test Plan: Manual

Reviewers: bengotow, juan

Reviewed By: juan

Differential Revision: https://phab.nylas.com/D2474
2016-01-28 12:02:08 -08:00
Juan Tejada 7e368a74d2 update(analytics): Add missing action: removeAttachment 2016-01-28 11:02:27 -08:00
Ben Gotow 7ef187e882 Update analytics to remove references to deleted Actions 2016-01-28 10:38:02 -08:00
Ben Gotow 205ec50b98 Fix AccountStore.current() references in private packages 2016-01-25 18:02:56 -08:00
Ben Gotow e2234bf58e Merge branch 'master' into unified-inbox
# Conflicts:
#	internal_packages/feedback/lib/feedback-button.cjsx
#	internal_packages/thread-list/lib/thread-list.cjsx
#	src/flux/stores/draft-store.coffee
2016-01-25 17:28:29 -08:00
Evan Morikawa 6695de4187 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
Ben Gotow 3a8a38b8bc Merge branch 'master' into unified-inbox
# Conflicts:
#	spec/stores/file-download-store-spec.coffee
2016-01-13 17:20:34 -08:00
Ben Gotow 8cd3176574 build(linux): Ensure that target files are not group writable
Should fix #710. Will move all 0775 => 0755 and 0664 => 0644
2016-01-13 16:09:53 -08:00
Karim Hamidou 4ba827fc48 set the ContentType when uploading packages to S3. 2016-01-13 11:12:39 -08:00
Ben Gotow 728375d9f9 Bump submodule reference 2016-01-11 16:21:05 -08:00
Ben Gotow 9acdb3923f Merge branch 'bengotow/consolidate-plugins' 2016-01-07 14:57:34 -08:00
Ben Gotow 460a715e4d fix(examples): examples => packages, move away from installing them 2016-01-07 14:56:34 -08:00
Evan Morikawa 6db0d8bc46 Add 'default' tasks 2016-01-06 15:55:14 -08:00
Ben Gotow 1ba8f5277f fix(rpm): Treat-deb and-rpm as separate platforms on N1Server 2016-01-05 17:51:02 -08:00
Ben Gotow 41d1c551a5 fix(rpm): Upload RPM builds following naming convention 2016-01-05 17:32:11 -08:00
mbilker 8182f2ef89 fix(grunt): replace shareDir with linuxShareDir to reflect global changes
The `install` task would fail since `linuxShareDir` was undefined for the
template `.desktop` file.
2016-01-04 22:08:20 -05:00
Evan Morikawa 3cd42303ae fix(build): debian packages use different share dir 2016-01-04 16:39:43 -08:00
Evan Morikawa 9530a84877 feat(build): new rpm builds
Summary: Now builds RPM on Travis

Test Plan: manual

Reviewers: juan, bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D2391
2016-01-04 09:56:14 -08:00
Evan Morikawa 616821d09e fix(date): copyright year auto-updates 2016-01-04 09:41:28 -08:00
Juan Tejada 6315bc9d80 fix(extension-adapter): Update adapter to support all versions of extension api we've used
Summary:
- Rewrites composer extension adpater to support all versions of the
  ComposerExtension API we've ever declared. This will allow old plugins (or
  plugins that haven't been reinstalled after update) to keep functioning
  without breaking N1
- Adds specs

Test Plan: - Unit tests

Reviewers: evan, bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D2399
2015-12-30 15:11:37 -05:00
Dave Perdue 848fb0d688 Fix broken GNOME dock icon
This addresses an issue mentioned in Issue #465 regarding a missing icon.
2015-12-16 12:14:26 -08:00
Dave Perdue 2fc66a42fa Remove redundant path in .desktop for Linux
The install-task has two instructions that add an extra "resources" to the iconName directory and thus the icon doesn't work. The resulting nylus.desktop has an invalid path for the icon.
2015-12-16 11:59:01 -08:00
Ben Gotow 159bb51a10 fix(locales): Copy lproj files to ensure navigator.language works
See https://github.com/atom/electron/issues/2484
2015-12-15 11:34:56 -08:00
Evan Morikawa 267a339250 fix(bootstrap): split commands 2015-12-14 15:22:47 -08:00
Juan Tejada 5a8ca1ef51 add(integration-test): Adds test for onboarding flow with Exchange
Summary:
- Make sure user can log in using exchange
- Adds some test helpers for the test
- Updates eslint.json and cleans up lint errors

Test Plan: - Integration Tests

Reviewers: evan, bengotow

Reviewed By: bengotow

Differential Revision: https://phab.nylas.com/D2346
2015-12-14 15:14:58 -08:00
Ben Gotow 8ea8df8efc fix(ci): stable instead of release/* branches 2015-12-11 17:13:42 -08:00
Ben Gotow 0f67438c9f fix(ci): Publish appveyor release branch builds 2015-12-11 15:11:13 -08:00
Ben Gotow 922a9e80ec fix(ci): Publish builds on release branches 2015-12-11 14:44:53 -08:00
Ben Gotow 0e4e736607 Merge pull request #628 from mbilker/task-helper-undefined-process-env
Replace function accessor with property accessor in Grunt's task-helper script
2015-12-09 16:02:09 -08:00
Evan Morikawa a2c8145a75 bump(internal): update submodule reference 2015-12-09 18:14:01 -05:00
Evan Morikawa aef0c8a681 fix(spellcheck): check for existing languages and add tests 2015-12-09 18:10:55 -05:00
Ben Gotow 8ecf3bba3f fix(auth): Log first account creation 2015-12-08 17:05:59 -08:00
mbilker 23a2de603c fix(tests): replace () with [] for properties of process.env
This bug appeared during a Travis test run, and only appeared on
the Linux hosts running the tests. The function appears to treat
the `process.env` as a set of functions, not properties. This
commit correctly interprets them as properties.
2015-12-08 18:06:41 -05:00
Evan Morikawa d95cb45147 feat(ci): add Travis and AppVeyor ci support 2015-12-07 12:48:26 -05:00