Commit Graph

285 Commits

Author SHA1 Message Date
Geoff Schmidt
7f08cbbeaf remove console.log 2013-05-13 11:56:51 -07:00
David Glasser
2e5652b104 Cache dev bundles in /tmp. 2013-05-13 11:56:51 -07:00
Geoff Schmidt
c4293fcdec Let programs in apps both be and have clients 2013-05-13 11:56:51 -07:00
Geoff Schmidt
b3a5c26847 bare programs receive argv correctly. also, boot
scripts receive their load lists via a command
line argument (as had been originally intended
but not implemented) rather than by a hardcoded
reference to 'package.json'.
2013-05-13 11:56:51 -07:00
Geoff Schmidt
f73714cadc programs in an app have an attributes file (this
is temporary and subject to change!) which can be
used to mark them as "regular old programs" (no
http server or mongo setup) and/or to mark them
as a star's control program
2013-05-13 11:56:51 -07:00
Geoff Schmidt
b76de57830 The 'programs' directory in an app can be used to
add additional programs to the star. Combine with
an empty 'no-default-targets' file in the root
of the app for total control over the programs
in your star.
2013-05-13 11:56:51 -07:00
Geoff Schmidt
a4c7adfcec Plumb CompileStep.error information correctly 2013-05-13 11:56:51 -07:00
Geoff Schmidt
0b2d536e38 Clean up error reporting in HTML template scanner 2013-05-13 11:56:51 -07:00
Geoff Schmidt
dc68b20b69 Refactor bundler logic. Allow default build
targets to be omitted from the star.
2013-05-13 11:56:51 -07:00
Geoff Schmidt
a08b0b62f1 Make mkdtemp use mode 700 for the temporary directory, so it is suitable for bundling and not just tests. 2013-05-13 11:56:51 -07:00
Geoff Schmidt
a780f9f427 rv commit of stale copy of builder.js 2013-05-13 11:56:51 -07:00
Geoff Schmidt
6d85b03c90 turn off profiler (mistakenly left enabled) 2013-05-13 11:56:51 -07:00
Geoff Schmidt
02e1b3b1c7 Make 'meteor --help' startup >3x faster, with the help of a require() tree profiler. The speedup is entirely due to lazy-loading third party modules. 2013-05-13 11:56:51 -07:00
Geoff Schmidt
c6b68b2125 Empty apps (zero source files, eg 'meteor test-packages') still need to emit the file that sets up the global namespace, or you can't evaluate Meteor in the console 2013-05-13 11:55:12 -07:00
Geoff Schmidt
3a7268b336 Pass command line through to run-command unaltered. 2013-05-13 11:55:12 -07:00
Geoff Schmidt
27b617ce92 correctly report error messages when exceptions occur that could be handled by buildmessage but are not 2013-05-13 11:55:12 -07:00
Geoff Schmidt
bb0e000175 error handling for 'meteor run-command' 2013-05-13 11:55:12 -07:00
Geoff Schmidt
9847021633 Use a better strategy for avoiding package name conflicts with 'meteor run-command'. Random names don't work because they don't trigger the necessary rebuild. 2013-05-13 11:55:11 -07:00
Geoff Schmidt
077b695ac1 Add 'meteor run-command' which runs a package as a standalone command line tool 2013-05-13 11:55:11 -07:00
Geoff Schmidt
c62727a25c use buildmessages to report errors within legacy package role handlers 2013-05-13 11:55:11 -07:00
David Glasser
78d8f61564 Remove inaccurate comment and logging line.
(This function is not documented to users, but it's what the livedata package
uses to implement audit-check-coverage.)
2013-05-13 11:54:20 -07:00
Geoff Schmidt
ff09e101ee If we're using an arch-specific, auto-downloaded dev_bundles kit, get rid of the bundled node_modules 2013-05-13 11:54:20 -07:00
Geoff Schmidt
9dd512e769 Remove builder.copyFile (it actually duplicates the file option to builder.write) 2013-05-13 11:54:20 -07:00
Geoff Schmidt
1049c2d7d2 add missing dependencies (following rebase on devel) 2013-05-13 11:54:20 -07:00
Geoff Schmidt
0f3ab1af6b Change format identifiers to look like prereleases 2013-05-13 11:54:20 -07:00
Geoff Schmidt
84baa67186 Fix typo that broke npm shrinkwrap 2013-05-13 11:54:20 -07:00
Geoff Schmidt
607e637b22 Generate dev_bundle trampoline scripts in star balls. Nothing uses them yet. 2013-05-13 11:53:51 -07:00
Geoff Schmidt
90d32630cc Generalize Plugins to JsImage, and make ServerTarget derive from JsImageTarget. Neat! 2013-05-13 11:53:51 -07:00
Geoff Schmidt
3abacc44f1 move server config info out of program.json into a separate config.json 2013-05-13 11:53:51 -07:00
Geoff Schmidt
1fd27e9534 Paths in star.json point to control files, not directories with a well-known control file name. javascript-plugin-1 format is renamed javascript-image-1 format. 2013-05-13 11:53:51 -07:00
Geoff Schmidt
42bd977ab7 give plugins a version field too 2013-05-13 11:53:51 -07:00
Geoff Schmidt
5ec1d9997c rentame 'version' to 'format' in control files 2013-05-13 11:53:50 -07:00
Geoff Schmidt
49ddf192b3 give npm some nice error messages too 2013-05-13 11:53:50 -07:00
Geoff Schmidt
ed18c6ffb5 Comprehensive build-time error reporting system. In particular: if an error occurs, the build will try to continue to identify any other potential problems so that they can be flagged too. Syntax errors are captured and dealt with programmatically, rather than just being echoed to stderr by node. Stack traces are parsed to pull out file and line information, and a distinction is made between the 'user' and 'internal' portions of the stack. All of this is at build time only -- it has not been extended to (run-time) server or browser yet. Also, no source maps yet, though line numbers are computed correctly for units within the linker. 2013-05-13 11:52:43 -07:00
Geoff Schmidt
4bff34a680 Port 'less' package to new plugin API 2013-05-13 11:52:43 -07:00
Geoff Schmidt
d5660c3938 Make 'templating' use the new plugin API. Now handlebars can be a separate package again. 2013-05-13 11:52:43 -07:00
Geoff Schmidt
ec0f3ff595 Port 'meteor' package to use new Plugin API. When a package or an app uses a plugin, include the plugin source files among that target's dependencies. 2013-05-13 11:52:43 -07:00
Geoff Schmidt
d99dac599a use correct buildinfo.json so unipackages aren't rebuilt all the time 2013-05-13 11:52:43 -07:00
Geoff Schmidt
20efd73f98 New plugin API. Reimplement old add_extension API on top of new API for backcompat. 2013-05-13 11:52:43 -07:00
Geoff Schmidt
c599601ccf Refactor to create a concept of a serializable Plugin that can be loaded into a host nodejs process, and can be used for both general-purpose unipackage loading (eg, for DDP) and for bundler plugins. 2013-05-13 11:52:43 -07:00
Geoff Schmidt
193adbea59 Break local build info (eg, file dependencies) out into separate file, so that it will be easier to strip when publishing packages 2013-05-13 11:52:43 -07:00
Geoff Schmidt
a61fd1bf14 small cosmetic change 2013-05-13 11:52:42 -07:00
Geoff Schmidt
11819d4344 Detect npm dependencies that contain non-portable binary modules, and set the package arch appropriately (ultimately resulting in the generation of a star with a non-portable target) 2013-05-13 11:52:42 -07:00
Geoff Schmidt
8f42ce1434 Implement a real architecture system ('native.linux.x86_64' rather than 'server'). Add 'meteor rebuild-all' command. 2013-05-13 11:52:42 -07:00
Geoff Schmidt
675027fe93 Rebuild packages if they are moved, even if nothing else has changed (to pick up changes to the absolute paths encoded in the file dependency info) 2013-05-13 11:51:53 -07:00
Geoff Schmidt
d5e0313ff7 Replicate error message improvement from devel 2013-05-13 11:51:53 -07:00
Geoff Schmidt
9931898d22 Patches to make livedata load from non-server nodejs 2013-05-13 11:51:53 -07:00
Geoff Schmidt
54ca2a4463 Fix typos in bundler that prevented normal bundling 2013-05-13 11:51:53 -07:00
Geoff Schmidt
2c1b297dc1 Facility for including unipackages from non-Meteor-built command-line nodejs programs (eg, 'meteor'). Does not fully duplicate the server environment (specifically, does not provide a HTTP server) so livedata does not yet load. 2013-05-13 11:51:53 -07:00
Geoff Schmidt
78212bff0e Eliminate dead code 2013-05-13 11:51:53 -07:00