You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Check scope when wrapping to fix slowness in MUI v5. [PR](https://github.com/meteor/reify/pull/1) and [Issue](https://github.com/benjamn/reify/issues/277).
- Mac M1 Support - darwin arm64. [Read more](https://blog.meteor.com/).
15
32
16
33
#### Breaking Changes
17
34
- `Meteor.loginWithToken` from the new package `accounts-passwordless` was conflicting with another method with the same name on `accounts-base` so we had to rename the method of `accounts-passwordless` package to `Meteor.passwordlessLoginWithToken`.
Next, read the [guide](https://guide.meteor.com) and the [documentation](https://docs.meteor.com/).
21
+
Next, read the [documentation](https://docs.meteor.com/).
23
22
24
-
Are you looking for examples? Check this [meteor/examples](https://github.com/meteor/examples)
23
+
Are you looking for examples? Check this [meteor/examples](https://github.com/meteor/examples).
24
+
25
+
Check your [changes](https://docs.meteor.com/changelog.html) to keep your app up-to-date.
25
26
26
27
## Quick Start
27
28
@@ -33,33 +34,27 @@ npm install -g meteor
33
34
34
35
Visit the official [install page](https://www.meteor.com/developers/install) to learn more.
35
36
36
-
Alternatively, on macOS and Linux you can use:
37
-
38
-
```bash
39
-
curl https://install.meteor.com/ | sh
40
-
```
41
-
42
37
Create a project:
43
38
44
39
```bash
45
-
meteor create try-meteor
40
+
meteor create my-app
46
41
```
47
42
48
43
Run it:
49
44
50
45
```bash
51
-
cdtry-meteor
46
+
cdmy-app
52
47
meteor
53
48
```
54
49
55
50
## Developer Resources
56
51
57
52
Building an application with Meteor?
58
53
59
-
* Deploy on Galaxy hosting: https://www.meteor.com/cloud
60
-
* Announcement list: sign up at https://www.meteor.com/
61
-
* Discussion forums: https://forums.meteor.com/
54
+
* Deploy on [Meteor Cloud](https://www.meteor.com/cloud)
55
+
* Discussion [Forums](https://forums.meteor.com/)
62
56
* Join the Meteor community Slack by clicking this [invite link](https://join.slack.com/t/meteor-community/shared_invite/enQtODA0NTU2Nzk5MTA3LWY5NGMxMWRjZDgzYWMyMTEyYTQ3MTcwZmU2YjM5MTY3MjJkZjQ0NWRjOGZlYmIxZjFlYTA5Mjg4OTk3ODRiOTc).
57
+
* Announcement list. Subscribe in the [footer](https://www.meteor.com/).
63
58
64
59
65
60
Interested in helping or contributing to Meteor? These resources will help:
@@ -69,15 +64,5 @@ Interested in helping or contributing to Meteor? These resources will help:
Copy file name to clipboardExpand all lines: docs/source/api/tracker.md
+21Lines changed: 21 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -79,6 +79,27 @@ subscriptions and reactivity.
79
79
If the initial run of an autorun throws an exception, the computation
80
80
is automatically stopped and won't be rerun.
81
81
82
+
### Tracker.autorun and async callbacks
83
+
`Tracker.autorun` can accept an `async` callback function. However, the async call back function will only be dependent on reactive functions called prior to any called functions that return a promise.
84
+
85
+
Example 1 - autorun `example1()`**is not** dependent on reactive changes to the `Meteor.users` collection. Because it is dependent on nothing reactive it will run only once:
86
+
```javascript
87
+
Tracker.autorun(asyncfunctionexample1() {
88
+
let asyncData =awaitasyncDataFunction();
89
+
let users =Meteor.users.find({}).fetch();
90
+
});
91
+
```
92
+
93
+
However, simply changing the order so there are no `async` calls prior to the reactive call to `Meteor.users.find`, will make the async autorun `example2()` dependent on reactive changes to the `Meteor.users` collection.
94
+
95
+
Example 2 - autorun `example2()`**is** dependent on reactive changes to the Meteor.users collection. Changes to the `Meteor.users` collection will cause a rerun of `example2()`:
96
+
```javascript
97
+
Tracker.autorun(asyncfunctionexample2() {
98
+
let users =Meteor.users.find({}).fetch();
99
+
let asyncData =awaitasyncDataFunction();
100
+
});
101
+
```
102
+
82
103
{% apibox "Tracker.flush" %}
83
104
84
105
Normally, when you make changes (like writing to the database),
Copy file name to clipboardExpand all lines: docs/source/install.md
+32-11Lines changed: 32 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,11 +2,12 @@
2
2
title: Install
3
3
---
4
4
Meteor currently supports **OS X, Windows, and Linux**. Only 64-bit is supported.
5
-
Apple M1 is only supported from Meteor 2.5.1 onward.
5
+
Apple M1 is natively supported from Meteor 2.5.1 onward (for older versions, you will need to run with a [rosetta terminal](https://osxdaily.com/2020/11/18/how-run-homebrew-x86-terminal-apple-silicon-mac/)).
6
6
7
7
<h2id="prereqs">Prerequisites and useful information</h2>
8
8
9
-
- Meteor requires Node.js 8 or newer installed for running the npm installer.
9
+
- If you are on a Mac M1 (Arm64 version) you need to have Rosetta 2 installed, as Meteor uses it for running MongoDB. Check how to install it [here](https://osxdaily.com/2020/12/04/how-install-rosetta-2-apple-silicon-mac/)
10
+
- Meteor requires Node.js version >= 10 and <= 14 installed for running the npm installer (tip: you can use [nvm](https://github.com/nvm-sh/nvm) for managing node versions).
10
11
- Meteor supports Windows 7/Windows Server 2008 R2 and up.
11
12
- Disabling antivirus (Windows Defender, etc.) will improve performance.
12
13
- For compatibility, Linux binaries are built with CentOS 6.4 i386/amd64.
@@ -21,6 +22,9 @@ Install the latest official Meteor release from your terminal:
21
22
npm install -g meteor
22
23
```
23
24
25
+
26
+
<h2id="troubleshooting">Troubleshooting</h2>
27
+
24
28
If your user doesn't have permission to install global binaries, and you need to use sudo, it's necessary to append *--unsafe-perm* to the above command:
25
29
26
30
```bash
@@ -32,28 +36,27 @@ Only run the above command with sudo if you know what you are doing.
32
36
33
37
If you only use sudo because of a distribution default permission system, [check this link for fixing it](https://docs.npmjs.com/resolving-eacces-permissions-errors-when-installing-packages-globally).
34
38
35
-
For Apple M1 computers, you can append Rosetta prefix as following:
39
+
In some cases you can get this error `npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules` because your Node.js installation was performed with wrong permissions. An easy way to fix this is to install Node.js using [nvm](https://github.com/nvm-sh/nvm) and forcing it to be used in your terminal. You can force it in the current session of your terminal by running `nvm use 14`.
36
40
37
-
```bash
41
+
<h2id="old-versions-m1">Old Versions on Apple M1</h2>
38
42
39
-
arch -x86_64 npm install -g meteor
43
+
For Apple M1 computers, you can append Rosetta prefix as following, if you need to run older versions of Meteor (before 2.5.1):
40
44
45
+
```bash
46
+
arch -x86_64 npm install -g meteor
41
47
```
42
48
43
49
or select Terminal in the Applications folder, press CMD(⌘)+I and check the "Open using Rosetta" option.
44
50
45
-
We currently don't support Apple M1 native binaries as the latest meteor release uses Node.js 14 which doesn't have support for it until now. More info in our repository, [here](https://github.com/meteor/meteor/issues/11249#issuecomment-734327204).
@@ -63,10 +66,28 @@ We do provide the meteor/meteor-base ubuntu-based Docker image, that comes pre-b
63
66
64
67
You can refer to our meteor/galaxy-images repository to see how to use it, and the latest version. [More about meteor-base here.](https://github.com/meteor/galaxy-images/blob/master/meteor-base/README.md)
65
68
69
+
70
+
<h2id="windows">Note for Windows users</h2>
71
+
72
+
On Windows, the installer runs faster when [Windows Developer Mode](https://docs.microsoft.com/en-us/windows/apps/get-started/enable-your-device-for-development) is enabled. The installation extracts a large number of small files, which Windows Defender can cause to be very slow.
73
+
74
+
75
+
<h2id="nvm">Node version manager</h2>
76
+
77
+
If you use a node version manager that uses a separate global `node_modules` folder for each Node version, you will need to re-install the `meteor` npm package when changing to a Node version for the first time. Otherwise, the `meteor` command will no longer be found.
78
+
66
79
<h2id="fish-shell">Note for fish shell users (Linux)</h2>
67
80
68
81
To be able to user `meteor` command from fish it's needed to include `/home/<user>/.meteor` in `$PATH`; to do that just add this line in `/home/<user>/.config/fish/config.fish` file (replace `<user>` with your username):
69
82
70
83
`set PATH /home/<user>/.meteor $PATH`
71
84
85
+
<h2id="uninstall">Uninstalling Meteor</h2>
86
+
87
+
If you installed Meteor using npm, you can remove it by running:
88
+
`meteor-installer uninstall`
89
+
90
+
If you installed Meteor using curl, you can remove it by running:
Copy file name to clipboardExpand all lines: docs/source/packages/accounts-passwordless.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,14 +6,14 @@ description: Documentation of Meteor's `accounts-passwordless` package.
6
6
Passwordless package allows you to create a login for users without the need for user to provide password. Upon registering or login an email is sent to the user's email with a code to enter to confirm login and a link to login directly. Since the user is responding to the email it will also verify the email.
7
7
8
8
The first step to in the passwordless process is for the user to sign-up or request a token to their email address. You can do that with the following:
If the user is signing up you can pass in the `userData` object like in [Accounts.createUser](/api/passwords.html#Accounts-createUser).
12
12
13
13
{% apibox "Meteor.passwordlessLoginWithToken" %}
14
14
The second step in the passwordless flow. Like all the other `loginWith` functions call this method to login the user with the token they have inputted.
Use this function if you want to manually send the email to users to login with token from the server. Do note that you will need to create the token/sequence and save it in the DB yourself. This is good if you want to change how the tokens look or are generated, but unless you are sure of what you are doing we don't recommend it.
0 commit comments