Commit Graph

4095 Commits

Author SHA1 Message Date
David Glasser
a77932e34b fix typo release/linker-pre2 2013-07-15 13:29:18 -07:00
David Glasser
2b80e5b973 Generate a dummy package.js in unipackages, to make the downloader happy.
Change the downloader to no longer expect packages to contain package.js.

This actually requires us (already!) to bump BUILD_VERSION, since I've already
published packages without the package.js!
2013-07-15 13:25:26 -07:00
David Glasser
71065615be Update to linker-compatible awssum. 2013-07-15 12:45:21 -07:00
David Glasser
02a123a47c Introduce concept of "build version" to unipackages.
We bump the "build version" of the tools precisely when we want to rebuild all
packages.  This handles the "I ran meteor update, I may need to rebuild my
app/$PACKAGE_DIRS packages" case, as well as ensuring that warehouse package
version numbers are incremented when we need to rebuild all packages (but not on
EVERY tools directory change).
release/linker-pre1
2013-07-15 12:36:02 -07:00
David Glasser
296ca6f0c0 Link to bug where we can't get syntax error line/column numbers. 2013-07-15 11:27:48 -07:00
David Glasser
ec6abfb2f9 Release unipackages instead of source trees. 2013-07-15 11:19:51 -07:00
David Greenspan
7b65338643 Fix orderedDict.{next,prev}() 2013-07-12 20:26:03 -07:00
David Greenspan
31dc4d3df8 comment 2013-07-12 20:25:44 -07:00
David Greenspan
8326941c52 consistency 2013-07-12 20:25:37 -07:00
David Greenspan
4cd63ca370 minimongo: make idStringify behavior match comment 2013-07-12 20:25:21 -07:00
Geoff Schmidt
7617d8931a Update docs, query, and showdown for namespacing 2013-07-12 17:36:40 -07:00
Emily Stark
d2eb68c60b Update package name guess to account for no slash in front of path 2013-07-12 16:00:53 -07:00
Slava Kim
3311517ecf Logs continuation on ssh-tunnel reconnect. 2013-07-12 14:59:40 -07:00
David Glasser
cbda2bbae1 Make "meteor rebuild-all" in an app dir with programs also wipe the .build for
any programs.
2013-07-12 14:51:11 -07:00
David Glasser
36275c570c Merge branch 'linker' into devel
some compatibility notes about packages:

  - packages now have their own namespaces (rather than needing to
    use the global namespace).  symbols you want to share should
    be declared with an @export comment

  - this also means that missing dependencies can hurt you. so don't
    leave them out.

  - your app's packages (in the 'packages' directory in your app) are
    not automatically included in your app; you need to explicitly
    run "meteor add" for them.  this means that, eg, you can have test
    helper packages which are not directly used in your app, but just
    used by other packages' tests.  (before releasing this, we may
    make 'meteor update' fix current apps.)

  - the bundle ("star") format has changed

  - packages are now built into the "unipackage" format.  if this format changes
    before we release this code (and commit to the definition of the initial
    versions of the formats) you may need to run "meteor rebuild-all"

  - __meteor_bootstrap__ has been stripped of everything not related to
    executing JS code. Some of what used to be there is now on the WebApp
    object.

more detailed docs are likely to come before the 0.6.5 release.
2013-07-12 13:38:05 -07:00
David Glasser
b0b8b08b2f Make bundler-test pass in the source maps world. 2013-07-12 13:29:08 -07:00
David Glasser
cf6a737a1e If $SAVE_DEV_BUNDLE_TARBALL, then when downloading the dev bundle also keep the
tarball around.
2013-07-12 12:37:19 -07:00
David Glasser
3e2eb429ed Merge branch 'sourcemaps' into linker 2013-07-12 12:31:59 -07:00
David Glasser
7b85bbf99a Bump dev bundle version number to 11 for sourcemaps! 2013-07-12 10:13:02 -07:00
David Glasser
b9f343f8b4 Add Firefox instructions.
Change comment style to one which does not make FF print warnings. This breaks
Chrome, so start setting the header again.
2013-07-12 10:11:32 -07:00
David Glasser
73478a49f0 support sourceMapRoot in JSImage.load too 2013-07-12 10:11:32 -07:00
David Glasser
6eb9cdb69f make it work in node too 2013-07-12 10:11:32 -07:00
David Glasser
4308b7c063 - switch from X-SourceMap header to //@ comment
- specify sourceMapUrl in browser manifest
- don't make source maps for app pure-JS files
- make URLs happy
- break traceback beauty
2013-07-12 10:11:31 -07:00
David Glasser
3205e33537 using source maps in JSImage.load now probably works 2013-07-12 10:11:31 -07:00
David Glasser
177a5684c9 checkpoint for using source maps in jsimage.load
syntax error parsing is broken, will fix
2013-07-12 10:11:31 -07:00
David Glasser
3fb6a8c602 add some comments to files.runJavaScript 2013-07-12 10:11:31 -07:00
David Glasser
81e456ae81 Improve log lines file naming on server.
We avoid using Error.prepareStackTrace (which the node source map support also
uses) and do some hacky regexp parsing instead. This way, on the server, we get
the filename/line numbers after source map processing.

On the client we continue to get the compiled version... I guess because source
maps are implemented in the developer tools, not directly into the Error object.

(Probably should have gotten parseStack from tools/buildmessage.js instead.)

unbreaks _getCallerDetails tests.
2013-07-12 10:11:31 -07:00
David Glasser
a8ccc8786d Add link to discussion of sourcemap XSSI header. 2013-07-12 10:11:31 -07:00
David Glasser
89e2fb1df1 Fix static file serving tests now that we've changed how static files are
served.

Some things that used to serve 403s now serve app HTML. Some paths with ..'s
that used to resolve to actual app resources now don't.
2013-07-12 10:11:31 -07:00
David Glasser
faf49921be replace barely-used lineForLine/includePositionInErrors with use of source maps.
Note that this is only triggered when coffeescript manages to output invalid JS,
which should be unlikely.

This does remove the feature where lines and columns were suppressed for parse
errors in the output of template compilation. but (a) that shouldn't happen,
and (b) we'll fix this by implementing source maps for spacebars.
2013-07-12 10:11:31 -07:00
David Glasser
85ae17ae0f Add instructions on enabling source maps to linked browser code. 2013-07-12 10:11:31 -07:00
David Glasser
56f663ea67 Add anti-XSSI header to source maps in client programs.
This is done at bundle time when constructing the manifest; it does not affect
source maps in unipackages, etc.
2013-07-12 10:11:31 -07:00
David Glasser
be0611d262 One attempt at making source map URLs cleaner.
You get the source map for /foo.js by asking for /foo.js?sourcemap=y.

Source files then implicitly show up next to them in the tree.
2013-07-12 10:11:31 -07:00
David Glasser
269434a44b Inline source code in source maps instead of keeping another data structure. 2013-07-12 10:11:31 -07:00
David Glasser
01a1bc8d6b On server, parse source maps less often. 2013-07-12 10:11:30 -07:00
David Glasser
96a1f43a3c add a comment about line number comments on generated files 2013-07-12 10:11:30 -07:00
David Glasser
a13f330983 All sourceMap fields in data structures are now strings, not generators. 2013-07-12 10:11:30 -07:00
David Glasser
df5d48c9af Fix to generation of source maps for concatenated files. 2013-07-12 10:11:30 -07:00
David Glasser
4e18439ae6 Source maps for coffeescript. 2013-07-12 10:11:30 -07:00
David Glasser
d823e57049 Rip @unit out of Meteor.
It's not used, it doesn't fully work yet, it's incompatible with the static
analysis, and it will make implementing CoffeeScript source maps significantly
more difficult.
2013-07-12 10:11:30 -07:00
David Glasser
040d97d6c0 Fix production mode bundles. 2013-07-12 10:11:30 -07:00
David Glasser
af01be5004 Comment about various browser's support for source map headers. 2013-07-12 10:11:30 -07:00
David Glasser
c329ebf90d Serve sources as well, and use X-SourceMap header.
Source maps now work in Chrome, if you enable them (dev tools -> gears button ->
enable source maps). I can't get them to work in FF 24 though.
2013-07-12 10:11:30 -07:00
David Glasser
31e560e8ca serve source maps (but not sources)
they don't seem to actually work in chrome yet
2013-07-12 10:11:30 -07:00
David Glasser
7ef61492da refactor disk layout of client programs to get rid of static/static_cacheable
This introduces some hacks into how asset dirs work. Will fix later. Might have
broken server assets. Who knows.
2013-07-12 10:11:29 -07:00
David Glasser
f786fd6fa5 Write (but don't use) sourceMaps (but not sources) for client programs.
Add builder.writeToGeneratedFilename helper and use it a lot.
2013-07-12 10:11:29 -07:00
David Glasser
5b8e1c17f3 Use manifest, not directory serving, to serve static files. 2013-07-12 10:11:29 -07:00
David Glasser
34d563a7ed put js image format at top of file 2013-07-12 10:11:29 -07:00
David Glasser
f0673cef7e don't generate empty global import files 2013-07-12 10:11:29 -07:00
David Glasser
b3e752c86c Source maps now are correct.
The header and footer of the linked file now is generated entirely at link
time. There is no more "boundary" __imports__asfdadsads blob.

Also, fix an inexplicable typo in js_analyze.
2013-07-12 10:11:29 -07:00