Commit graph

286 commits

Author SHA1 Message Date
Juan Tejada 85fbfae344 fix(build): Add proper error handling to publish task 2016-11-18 12:03:24 -08:00
Juan Tejada ee254b1697 fix(build) Actually fix build 2016-11-18 11:58:09 -08:00
Juan Tejada 4d4e040561 fix(build) Fix output directory for builds
- We were including the root output dir twice in the file path
2016-11-18 11:43:41 -08:00
Evan Morikawa 8489ee59c7 feat(lint): upgrade linter and add exceptions for dumb new rules 2016-11-15 09:56:39 -08:00
Ben Gotow 0f1958f3b8 fix(build): Run the linter before build on CI machines 2016-11-14 12:33:19 -08:00
Ben Gotow 347238990b ci(*): Travis and AppVeyor changes, script cleanup
Also removed 32-bit build files which have been made obsolete. You can build 32-bit builds by altering script/bootstrap to specify a different arch
2016-11-09 14:13:09 -08:00
Ben Gotow 1157fdc450 build(*): electron-compile, electron-packager instead of custom tooling
Summary:
This diff removes significant cruft from N1's compilation and build tooling:

- Electron-Packager replaces most of the code in build/tasks/* used to copy things,
  bundle things, download electron, etc.

- script/bootstrap has been replaced with a much simpler script that does not use
  APM, does not download Electron (we just use electron as an NPM dep) and does
  not manully compile sqlite. It requires NPMv3, but I think that's safe.

- babel and eslint are now devDependencies of the main project. The main project
  also supports optionalDependencies now.

- npm test and npm start replace ./N1.sh

- APM is still around, and is only put into N1 so it can install plugins at runtime.
  It should be removed as soon as we notify package maintainers and have them provide zips.

- N1 no longer has it's own compile-cache or babel/typescript/coffeescript compilers.
  It delegates to electron-compile and electron-compilers. Both of these packages had
  to be forked and modified slightly, but I'm hopeful the modifications will make it back
  in to the projects and you can still consult their documentation for more info.

  + In the near future, I think we should stop shipping electron-compilers with N1. This
    would mean that all plugins would need to be compiled on pre-publish, just like NPM
    packages, and would complicate the local development story a bit, but would make the
    app smaller. electron-compile is not supposed to compile at runtime in the prod app,
    just pull from the compile cache.

- I've re-organized Grunt according to Grunt best practices, where each tasks/* file
  specifies it's own config and imports grunt tasks.

- Unfortunately, I was not able to use any open source projects for the deb and rpm builds,
  because we have things like postinst hooks and start menu items which are not supported
  by the electron installer-generators.

WIP

Turn off all LESS compilation, because themes. Doh.

Use Grunt for new build process too, just remove tasks

More changes

Add babel-eslint

Remove unused react-devtools

WIP

Add name

Ignore nonexistent

Switch to more modern approach to config for grunt

Move zipping to mac installer task

Restructure publish task so it aggregates first, can log useful info if publishing is disabled

Fix build dirs

Fix win installer

Fix linux installer

Fix linux installer

Try making linux

A few more

Updates

Upadtes

fixes

fixes

Get rid of non-meaningful variables

Resolve assets path

Insert nylas.sh

Clean up args more

Actually use description

Fix display name ugh

More tweaks

Expliclty write /usr/bin/nylas

Improve vars

Use old nylas.sh

Reinstate APM to better scope this diff

Test Plan: Test on Mac, Windows, Linux

Reviewers: evan, jackie, juan

Reviewed By: jackie, juan

Differential Revision: https://phab.nylas.com/D3411
2016-11-09 13:52:10 -08:00
Evan Morikawa 81c61acfcd fix(linter): fix linter errors 2016-10-28 16:56:24 -04:00
Evan Morikawa 8fe0e5a680 fix(build): fix codesign step 2016-10-28 16:27:30 -04:00
Evan Morikawa cf8821e969 fix(build): fix gruntfile error 2016-10-28 11:28:50 -04:00
Evan Morikawa 3c37e31894 fix(build): remove dmg task from build 2016-10-28 11:08:09 -04:00
Ben Gotow a9b0472030 es6(*): Misc components, nylas-exports => ES2016 2016-10-27 18:25:30 -07:00
Juan Tejada 67f8ea8c21 build: bump eslint-plugin-import version 2016-10-26 14:29:18 -07:00
Ben Gotow ded52ce101 rm(grim): We’re not using Grim for deprecations 2016-10-25 11:36:20 -07:00
Ben Gotow a4c04b30ee fix(spellcheck): Don’t include cld sources in build 2016-10-20 13:45:22 -07:00
Ben Gotow c20238314d lint(*): Bump to ESLint 3.8 2016-10-17 18:07:35 -07:00
Ben Gotow 6b75904e84 Add main window calendar package
Summary: Add tiny helper app for calendar goodness

Test Plan: No tests yet

Reviewers: juan, halla

Reviewed By: halla

Differential Revision: https://phab.nylas.com/D3346
2016-10-14 11:38:31 -07:00
Ben Gotow 8df4f6d744 feat(win32): Allow N1 to become the system-wide mailto: handler
Summary: This will address the longstanding concern in #417

Test Plan: No new tests

Reviewers: juan, evan

Reviewed By: juan, evan

Maniphest Tasks: T7065

Differential Revision: https://phab.nylas.com/D3322
2016-10-12 16:05:36 -07:00
Ben Gotow 88258cced7 rm(ship-logs): Remove unused log shipping, prevents many-processes bug on win32 2016-09-29 10:38:29 -07:00
Ben Gotow 039d9bea61 feat(inline-images): Drag & drop or paste inline images
Summary: Initial support for inline images. Tests still forthcoming!

Test Plan: WIP

Reviewers: mark, juan

Reviewed By: juan

Differential Revision: https://phab.nylas.com/D3295
2016-09-26 17:01:19 -07:00
Ben Gotow e533d063d0 fix(specs): Fix tests that were console.logging, bump coffee-react 2016-09-20 15:17:48 -07:00
Juan Tejada ca54227f06 Add thread-sharing plugin
Summary:
Add thread-sharing plugin:

- Add popover to enable sharing
- Register custom nylas:// protocol to open a thread via protocol is thread exists

Test Plan: Manual

Reviewers: jackie, bengotow

Reviewed By: jackie, bengotow

Subscribers: jackie, halla

Differential Revision: https://phab.nylas.com/D3265
2016-09-14 00:04:20 -07:00
Evan Morikawa 3e41be103f fix(size): Remove src/pro from build 2016-09-01 11:32:52 -07:00
Evan Morikawa 8278243396 feat(plugins): plugins now properly report which are active on change 2016-08-18 11:42:55 -07:00
Juan Tejada 20fa2ec3f5 build(tools): Add eslint_d package for faster linting in text editor 2016-07-26 15:54:23 -07:00
Pablo Niklas 79d879ff79 Linux Mint 18 support. (#2659)
Allows the deb package to be installed on Linux Mint 18.
2016-07-22 11:25:38 -07:00
Keith Armstrong f8d0c82647 Update broken links for guides, docs, and API (#2455)
Also updated schemes of some links to https for consistency
2016-06-15 15:29:52 -07:00
Juan Tejada 9418160624 fix(build): Update asar unpack patterns to match top level examples
- Any dependencies that have an `examples` directory would not get
packed into the asar, causing the windows build to fail because of path
lengths > 250 characters
2016-06-02 16:56:31 -07:00
Juan Tejada 9f27ec756c fix(build): Do not try to compile dependencies
- Remove unused peg file
2016-06-02 15:53:08 -07:00
Juan Tejada 5c8b68b4e1 fix(build): Don't lint files inside node_modules, fix lint error 2016-06-02 14:45:51 -07:00
MAA 3211301b66 Fixing small typo. (#2298) 2016-05-24 11:08:40 -07:00
Hon Nguyen 9900c2867c fixed bug timezone cannot detect in fedora (#2250)
* fixed bug timezone cannot detect in fedora

* update spec build fedora package

* rpm package for fedora 22

* change code follow coffee-script style

* remove fedora binary file
2016-05-19 16:16:00 -07:00
Ben Gotow 98d3c1e8e9 fix(build): prebuild less was using wrong options, cache not used at runtime 2016-05-17 19:28:18 -07:00
Ben Gotow bb40df97fe fix(config): Move all reads / writes to the main process
Summary:
Moves all reading / writing of config file to the main process,
to avoid needing to write code to lock across processes. This should also
be more efficient than re-loading the file in all processes when it's
saved.

Test Plan: Run tests

Reviewers: evan, jackie

Reviewed By: evan, jackie

Differential Revision: https://phab.nylas.com/D2963
2016-05-16 16:38:46 -05:00
Ben Gotow 69b7bb2e23 bump(version): 0.4.36 and changelog 2016-05-13 15:57:03 -07:00
Juan Tejada ab55bc68ea fix(build): Fix lint issues and specs 2016-05-11 15:33:52 -07:00
Ben Gotow 134284ff9c fix(build): Defer require of parent node modules until they're fetched #2184 2016-05-10 19:08:41 -07:00
Evan Morikawa 34373e6de3 fix(build): rename babel task to .js to be picked up by grunt 2016-05-06 16:46:36 -07:00
Evan Morikawa 1498bcfac6 fix(lint): final linter fixes
fix(lint): final set of linter fixes
2016-05-06 16:32:34 -07:00
Ben Gotow 42ef0e98a4 fix(lint): Various linter issues 2016-05-06 16:06:16 -07:00
Evan Morikawa 4fed2b452e fix(lint): various linter fixes 2016-05-06 14:11:05 -07:00
Ben Gotow d961b1e4d4 fix(lint): Correct more linter errors 2016-05-06 14:10:28 -07:00
Evan Morikawa bb861d494f fix(lint): fixing various linter errors.
746 left
2016-05-06 13:42:09 -07:00
Evan Morikawa 805221dfa3 fix(linter): object-shorthand, quote-props
object-shorthand got turned off. We think it's fine to say {foo: foo} if
you want

quote-props is error consistent as neeeded.

Use custom file-by-file rules for global-require
2016-05-06 12:41:52 -07:00
Evan Morikawa 69574e58b4 feat(babel6): remove eslinter fixer task 2016-05-06 12:20:16 -07:00
Evan Morikawa 9c28088797 feat(babel6): 1,043 linter errors 2016-05-06 11:55:57 -07:00
Evan Morikawa cda4129a41 feat(babel6): 1,240 linter errors 2016-05-06 11:55:55 -07:00
Evan Morikawa 6259332a11 feat(babel6): 1,393 linter errors 2016-05-06 11:55:53 -07:00
Evan Morikawa c516f6f4af feat(babel6): 1,608 linter errors 2016-05-06 11:55:52 -07:00
Evan Morikawa 13e542928d feat(babel6): Add task to fix function spacing 2016-05-06 11:55:45 -07:00