Commit graph

157 commits

Author SHA1 Message Date
Evan Morikawa 2650613ef1 Move old edgehill src/pro into K2/packages/nylas-private 2016-12-12 10:10:26 -05:00
Evan Morikawa c16dd3784a fix(build): fix osx sign, fail on error, remove unnecessary k2 2016-12-08 14:18:44 -08:00
Evan Morikawa 7bfa07139c fix(travis): update travis task for spawn signature 2016-11-21 14:31:55 -08:00
Juan Tejada 162fa87c0e fix(lint) Fix lint error on publish task 2016-11-21 13:50:08 -08:00
Juan Tejada fb1677b032 fix(build) Fix publish task for linux 2016-11-21 12:03:46 -08:00
Evan Morikawa c70902875e fix(build): add setup travis keychain task 2016-11-21 12:02:51 -08:00
Evan Morikawa dc0981f53c fix(build): update the nylsa-Info.plist to use electron-builder 2016-11-18 16:33:11 -08:00
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
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 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
Ben Gotow a4c04b30ee fix(spellcheck): Don’t include cld sources in build 2016-10-20 13:45:22 -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
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
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
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 69b7bb2e23 bump(version): 0.4.36 and changelog 2016-05-13 15:57:03 -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 69574e58b4 feat(babel6): remove eslinter fixer task 2016-05-06 12:20:16 -07:00
Evan Morikawa 13e542928d feat(babel6): Add task to fix function spacing 2016-05-06 11:55:45 -07:00
Evan Morikawa ed3f062a6a feat(babel6): 90,798 lint problems
Fix eslint-task. Grunt doesn't recognize es6 files
2016-05-06 11:55:38 -07:00
Evan Morikawa e559c8f69a feat(babel6): Add test for spec describe 2016-05-06 11:55:18 -07:00
Evan Morikawa 47c064617d feat(babel6): Fix destructuring default from exports and update linter 2016-05-06 11:55:14 -07:00
Evan Morikawa d2ba35a749 feat(babel6): Use absolute paths for linter and dont call default on coffee 2016-05-06 11:54:58 -07:00
Evan Morikawa ff7f909317 feat(babel6): Detect when packages don't have a default export 2016-05-06 11:54:57 -07:00
Evan Morikawa 7f50074c0d feat(babel6): Convert to use new es6 require syntax 2016-05-06 11:54:55 -07:00
Evan Morikawa 427a23bbe6 feat(babel6): Add babel presets and lint for require.default 2016-05-06 11:54:52 -07:00
Evan Morikawa e2f9104766 feat(babel6): Initial babel conversion 2016-05-06 11:54:38 -07:00
Ben Gotow 7c557c0c8f cleanup(specs): Remove space-pen. Goodbye, jQuery! 2016-04-26 13:14:07 -07:00
Ben Gotow 1b62e09f71 cleanup(config): Remove unused features, dependencies 2016-04-26 13:14:06 -07:00
Evan Morikawa cc124be849 fix(build): fix lstatSync throwing 2016-04-25 16:18:23 -07:00
Evan Morikawa 60d2c24693 feat(package): fix build-resources-task and move submodule 2016-04-25 16:01:56 -07:00
Evan Morikawa 2472e0556b feat(package): require 'engines': {'nylas': '*'} in package.json 2016-04-25 15:06:37 -07:00
Ben Gotow 43b65ca36c cson(cleanup): Remove imports, only used for config.cson now 2016-04-24 20:33:34 -05:00
Ben Gotow 16dd26c29e fix(build): CSON => JSON no longer necessary for /keymaps, /menus 2016-04-24 20:27:29 -05:00
Ben Gotow a48ddd51f8 refactor(menus): Major prune of keymaps/commands, real conditional menus
Summary:
Keymaps & menus CSON => JSON, remove AtomKeymaps, CommandRegistry use of CSS selectors, use Mousetrap instead

Important Notes:

- The `application:` prefix is reserved for commands which are handled in the application process. Don't use it for other things. You will not receive the events in the window.

- Maintaining dynamic menus seems to come with quite an overhead, because Electron updates the entire menu every time. In the future, we'll need https://github.com/electron/electron/issues/528 to really make things nice. I will be tracking this upstream.

- The format for keyboard shortcuts has changed. `cmd-X` is now `command+shift+x`

Test Plan: Run tests

Reviewers: juan, evan

Reviewed By: evan

Differential Revision: https://phab.nylas.com/D2917
2016-04-24 12:16:25 -05:00
Ben Gotow 9af46bd834 bump(asar): 0.10, use ordering feature we PR'd [TEST CI] 2016-03-08 15:21:28 -08:00
Ben Gotow 10ec524d90 Merge pull request #1342 from mbilker/linux-32bit-docker
[RFC] Linux 32-bit Docker build
2016-03-03 14:10:41 -08:00
mbilker 887db8d8ea fix(launch): convert Atom's launch script for N1
Addresses #411

The `N1.sh` launch script fails to account for running from
`/usr/{local/}bin/nylas` where it would throw an error saying
it couldn't find the electron binary.

The Atom launch script works just fine and takes that into account.
The installed launch script here is a reflactored Atom launch script
that properly accounts for running the `nylas` executable and locates
the actual binary accordingly.
2016-03-02 17:47:47 -08:00
Ben Gotow 21b1cd4e19 fix(build): Don't delete plugin package.json files, restore ellipsis (@sdw consulted HIG!) 2016-02-24 18:15:55 -08:00
mbilker 4203da2143 fix(publish-nylas-build): return undefined to prevent grunt interpreting as failed build 2016-02-15 21:12:17 -05:00
mbilker 50ae5e4293 fix(build): use special docker build file to run appropriate build tasks 2016-02-15 19:41:13 -05:00
Evan Morikawa 8e6e5e9d57 fix(win): add windows-shortcuts to asar exclude 2016-02-11 13:52:53 -08:00
Karim Hamidou 4ba827fc48 set the ContentType when uploading packages to S3. 2016-01-13 11:12:39 -08:00