Commit Graph

14922 Commits

Author SHA1 Message Date
Sashko Stubailo
eac451c82d Merge pull request #4851 from meteor/umbrella
Split meteor-platform into smaller umbrella packages code and discussion
2015-08-04 10:16:50 -07:00
Sashko Stubailo
3cfb718a91 Split meteor-platform into smaller umbrella packages
Discussion/plan here: https://github.com/meteor/meteor/pull/4851

`meteor-platform will no longer be a part of future Meteor releases. Apps
`upgraded to Meteor 1.2 will be automatically updated to use the packages listed
`above instead of meteor-platform. (Along with a set of packages like EJSON and
`Random that used to be in meteor platform but probably shouldn’t have been)

After this project, here is the set of packages that will be included by default
in a newly created Meteor app:

1. `meteor-base` is the set of packages that basically every single Meteor app will have. If you don’t have these packages, you are probably doing something that isn’t really supported, like building a command line tool or switching out the whole web server stack. It comes with the following packages:
    1. `meteor` - this includes stuff like `Meteor.isClient`, a default handler for `css` files, etc.
    2. `webapp` - this is responsible for handling actual HTTP connections, Websockets, and serving files
    3. `underscore` - almost all of Meteor is built on top of underscore, so it makes sense to let people assume that most or all Meteor apps right now will have this included
    4. `autoupdate` - refreshing the client is a core part of the Meteor development experience, and it’s integrated into several layers of the stack
    5. `ddp` - lots of core parts of Meteor assume that DDP can be used to communicate between client and server
2. `standard-minifiers` minifies your JS and CSS code in production
3. `ecmascript` allows you to write your app using new ES2015 JavaScript features
4. `es5-shim` polyfills some newer APIs in old and non-compliant browsers, in particular IE8
5. `mobile-experience` is a set of cordova-specific packages that set some good defaults when building for mobile. These packages only activate when you are building a native Android or iOS app.
    1. `fastclick` - avoid the 300ms touch delay
    2. `mobile-status-bar` - avoid the status bar information covering up your app content
    3. `launch-screen` - cover the app with a launch image so that people don’t have to see things loading
6. `mongo` is the package that enables Meteor to connect to MongoDB on the server and watch queries in real-time. It also includes Minimongo for the client so that you can publish Mongo documents over DDP. This package will be removable in case you want to use one of the community-supported drivers for alternate databases, and for the desirable future where Meteor supports other databases officially.
7. `blaze-html-templates` compiles your `html` files with Spacebars and includes the Blaze runtime on the client so that the templates can run. If you remove this, you might want to include a different view layer like `react`, or `angular`, and use a package for rendering the starter HTML like `static-html` (also coming out in Meteor 1.2)
8. `tracker` the package that powers a lot of Meteor’s reactive APIs on the client. Including it in the app allows you to use `Tracker.autorun` directly.
9. `session` a simple global reactive dictionary for the client.
10. `jquery` a convenient utility library for the client.
11. `insecure` a prototyping package that lets you make any database modifications from the client.
12. `autopublish` a prototyping package that lets you access the whole database (except sensitive user data) from the client.
2015-08-04 10:15:04 -07:00
Sashko Stubailo
98b9123ac0 Make autoupdate depend on reload, which makes sense
Since it actually calls reload
2015-08-04 10:15:00 -07:00
Ben Newman
b86ff75b27 Fix weird line breaks in packages/es5-shim/README.md. 2015-08-04 11:47:05 -04:00
Ben Newman
b33cd0d943 Add es5-shim.js with {bare:true} only for web targets. 2015-08-04 11:24:31 -04:00
Ben Newman
81db76a9ff Explain the rationale for es5-shim better in README.md. 2015-08-04 11:15:07 -04:00
Martijn Walraven
22bd755918 Fix currentEnvWithPathsAdded to use case insensitive access on Windows 2015-08-04 15:11:53 +02:00
Slava Kim
d11a695cc2 mvp readme for packaging 2015-08-03 23:36:54 -07:00
Slava Kim
5fb18bfb58 an mvp readme for /tools/fs 2015-08-03 23:15:12 -07:00
Slava Kim
6656be9f85 Add basic readme for tool 2015-08-03 22:39:43 -07:00
Slava Kim
6b1bb038d8 Move files into tools/fs 2015-08-03 22:09:28 -07:00
Slava Kim
8a8db83d29 Move files into tools/utils 2015-08-03 20:32:38 -07:00
Ben Newman
5e4ed8eb28 Fix IE8 for-in loops using babelHelpers.sanitizeForInObject.
Upgraded meteor-babel to 0.5.4 for sanitizeForInObject support.
2015-08-03 20:40:11 -04:00
Slava Kim
59165b9c4f Undo accidentally deleted files in 36b542f822 2015-08-03 16:06:09 -07:00
Slava Kim
36b542f822 move files into tools/packaging 2015-08-03 16:03:15 -07:00
David Greenspan
13e7e28b25 Merge branch 'master' into devel 2015-08-03 14:20:43 -07:00
David Greenspan
ff783e9a12 Update date on release 1.1.0.3 2015-08-03 14:19:41 -07:00
David Greenspan
2cfd6a322a Merge branch 'master' into devel 2015-08-03 14:18:55 -07:00
David Greenspan
79ae7fc061 Merge branch 'release-1.1.0.3' 2015-08-03 14:13:58 -07:00
David Greenspan
6b5c0c6d94 Bump versions in docs and examples 2015-08-03 14:12:29 -07:00
Dean Brettle
587e02a692 Fix issue #4862. Don't wrap login callbacks with bindEnvironment.
Changes to packages/callback-hook:
- Add bindEnvironment option to Hook constructor (defaults to true).
- Add internal helper function dontBindEnvironment() which does all the
  error handling stuff like Meteor.bindEnvironment() but doesn't change
  the environment.
- Use dontBindEnvironment() instead of Meteor.bindEnvironment() when
  bindEnvironment option is false.
- Add tests.

Changes to packages/accounts-base:
- Create hooks with { bindEnvironment: false }
- Add test for whether Meteor.userId() is available in login callbacks.
2015-08-03 10:52:11 -07:00
David Greenspan
b36dab26ef Remove rc.0 from package versions release/METEOR@1.1.0.3 2015-08-03 10:16:26 -07:00
David Greenspan
0b24135d68 Update banners.json 2015-08-03 10:04:02 -07:00
Martijn Walraven
8e625c4066 Use rename instead of a slow robocopy move 2015-08-03 13:47:16 +02:00
Martijn Walraven
d09ee4c5a1 Use cp -R just in case it matters on OS X 2015-08-03 13:46:34 +02:00
Slava Kim
11064baf51 Merge pull request #4861 from Primigenus/patch-7
Fix grammar in tools readme
2015-08-02 01:27:54 -07:00
Rahul
d45b7bddd0 Grammar
Also, "marketing material" doesn't seem like an accurate description of the page on the Meteor site as it's more of a high level description of the component.
2015-08-01 17:11:55 -07:00
Slava Kim
176b862085 minimal readme for isobuild 2015-08-01 14:54:07 -07:00
Slava Kim
dc91f4ac5c Add more about admin commands in cli readme 2015-08-01 14:18:19 -07:00
Slava Kim
5472331fc5 Move isopackets.js to tool-env
Because it is only used in tool to load packages, so it is sort of a
setup environment file.
2015-08-01 14:13:53 -07:00
Slava Kim
005a880318 A bit more docs for tools 2015-08-01 14:02:37 -07:00
Slava Kim
5c21cc8490 Fix the test to match new error message 2015-08-01 13:01:57 -07:00
Slava Kim
08005bfe0a move runners into folder 'runners' 2015-08-01 13:01:49 -07:00
Slava Kim
e8abced83d fix git call back to ls-tree 2015-08-01 11:57:06 -07:00
Slava Kim
49a7088c30 Create a folder "tool-env"
Contains uninteresting setup and cleanup files
2015-07-31 18:38:25 -07:00
Slava Kim
e5ddbaa244 Fix a couple of bugs introduced in renamings 2015-07-31 17:12:38 -07:00
Slava Kim
35aef2b296 Create 'static-assets' folder in tools
To keep files that are not run by tool itself, but are used by generated code.
2015-07-31 17:12:38 -07:00
David Greenspan
913e35d4ec bump app release versions to RC 2015-07-31 10:57:31 -07:00
David Greenspan
a60f97bb4e Clarify what .mailmap is in comments 2015-07-31 10:56:11 -07:00
Sashko Stubailo
df95e8714b Merge pull request #4832 from meteor/issue/4804
Fix #4804 and throw error when Mongo selector is array
2015-07-31 10:47:37 -07:00
Sashko Stubailo
02dfd2c8f0 Throw error in Mongo.Collection when selector is array, fixes #4804 2015-07-31 10:47:12 -07:00
Sashko Stubailo
1803d9666c Merge pull request #4829 from meteor/static-html
Static HTML package and templating refactor
2015-07-31 10:46:16 -07:00
Sashko Stubailo
ec33215a7f Static HTML package and templating refactor
1. Make a package called `static-html` that just compiles `<head>` and `<body>` tags inside `.html` files. Much like templating but without the templates.
2. Refactor `templating` to avoid duplicating code.

Split out code that would be shared between `templating` and `static-html` into a new `templating-tools` package. These tools could also be used to simplify implementation of other build plugins, like `simple:markdown-templating`.

This also has the added benefit of moving as much code as humanly possible out of the `templating` package, so that it can be reused in other packages.

1. `templating-tools` package and its README
2. `static-html` package and its README
3. `caching-html-compiler` is not new code; it is just code factored out of the batch plugin version of `templating`, but the README and some comments are new.

1. `tools/tests/static-html.js` tests static html and error handling
2. `templating-tools/html-scanner-tests.js` tests `scanHtmlForTags` and `compileTagsWithSpacebars` together.

All unit tests pass on this branch.
2015-07-31 10:40:23 -07:00
Sashko Stubailo
0c93aeb6b6 Merge pull request #4848 from meteor/clean-up-dependencies
Remove `meteor-platform` from `test-packages` app, fix dependencies
2015-07-31 10:27:54 -07:00
Sashko Stubailo
10fd9ab74c Move Template.dynamic into templating from spacebars 2015-07-30 17:55:37 -07:00
Sashko Stubailo
15f7cc2c24 Put back comment 2015-07-30 17:35:53 -07:00
Sashko Stubailo
0ef65cc782 Clean up all dependencies 2015-07-30 17:25:38 -07:00
Sashko Stubailo
89184679fd Add check dep to Blaze 2015-07-30 16:31:38 -07:00
Sashko Stubailo
8c92c551a4 Fix comment 2015-07-30 16:21:02 -07:00
Sashko Stubailo
ed6b51c04d Make accounts-password depend on EJSON 2015-07-30 16:20:05 -07:00