Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
146 commits
Select commit Hold shift + click to select a range
fb8e4b5
Extend FastBoot.config to read other provided config as well.
kratiahuja Aug 27, 2017
fadd166
Merge pull request #164 from ember-fastboot/config-tree
rwjblue Sep 20, 2017
5adeca4
Update dependencies to latest versions.
Sep 20, 2017
3cbb937
Update CHANGELOG.md for 1.1.0.
Sep 20, 2017
634813c
v1.1.0
Sep 20, 2017
78bfb53
chore(package): update mocha to version 4.0.0
greenkeeper[bot] Oct 3, 2017
28ad4c8
fix(package): update rsvp to version 4.7.0
greenkeeper[bot] Oct 3, 2017
2347102
Merge pull request #168 from ember-fastboot/greenkeeper/rsvp-4.7.0
rwjblue Oct 3, 2017
6d7c187
Merge pull request #167 from ember-fastboot/greenkeeper/mocha-4.0.0
rwjblue Oct 5, 2017
e981f63
fix(package): update source-map-support to version 0.5.0
greenkeeper[bot] Oct 3, 2017
1df77df
Allow body attributes
ef4 Oct 25, 2017
20bbbc3
Merge pull request #171 from ef4/body-attributes
ef4 Oct 26, 2017
2825781
Save users from trolling
cibernox Nov 10, 2017
b3c1064
Implement `unknownProperty` in FastbootHeaders to prevent users from …
cibernox Nov 10, 2017
96b5058
Merge pull request #173 from cibernox/save-users-from-trolling
rwjblue Nov 10, 2017
ebd08a9
Update Changelog`
kratiahuja Nov 11, 2017
8a408f6
1.1.1
kratiahuja Nov 11, 2017
cfad9b7
response chunks - super naive approach
marcoow Nov 21, 2017
31a338e
cleanup
marcoow Nov 22, 2017
6ad2029
assert well formed document
marcoow Nov 22, 2017
c66b7c7
fix code for Node 4
marcoow Nov 22, 2017
f9a4df2
don't fail in resilient mode
marcoow Nov 22, 2017
380ba7e
chore(package): update ember-source to version 2.17.0
greenkeeper[bot] Nov 29, 2017
9ea6d87
Merge pull request #176 from simplabs/response-chunks
kratiahuja Nov 29, 2017
4e4027c
Merge pull request #177 from ember-fastboot/greenkeeper/ember-source-…
kratiahuja Nov 29, 2017
6f7296f
1.1.2
kratiahuja Nov 30, 2017
f1b157d
Update changelog
kratiahuja Nov 30, 2017
4ca3ca0
Allow html attributes
Jan 9, 2018
6f92064
Add markers before and after the body to be able to remove rootless apps
cibernox Jan 17, 2018
f17668a
Merge pull request #181 from cibernox/wrap-content-in-markers
rwjblue Jan 17, 2018
1a016c9
chore(package): update mocha to version 5.0.0
greenkeeper[bot] Jan 18, 2018
38d64ad
Update changelog
kratiahuja Jan 18, 2018
3b752ff
1.1.3
kratiahuja Jan 18, 2018
ac5911f
Allow enviroment set _renderMode to be used in Visit
rondale-sc Feb 22, 2018
4cc38c6
Merge pull request #185 from rondale-sc/utilize-rehydration-serializa…
rwjblue Mar 8, 2018
be88b6c
1.1.4-beta.1
kratiahuja Mar 11, 2018
4568734
Update changelog
kratiahuja Mar 11, 2018
b684123
Merge pull request #180 from SergeAstapov/html-attributes
rwjblue May 27, 2018
ac86992
Add 1.2.0 to CHANGELOG.
May 27, 2018
251c252
Remove `package-lock.json` (shouldn't have both it and yarn.lock).
May 27, 2018
19bb471
Add yarn.lock to .npmignore.
May 27, 2018
5a42df5
v1.2.0
May 27, 2018
c79fb5c
Normalize headers to lower case
ryanto Jun 16, 2018
e8e570d
Merge pull request #189 from ryanto/normalize-headers
kratiahuja Jul 11, 2018
3a5042d
Moved script tag of fastboot-body-start boundary in _finalizeHTML method
dineshnalagatla Sep 11, 2018
f61ab1b
Merge pull request #194 from dnalagatla/dnalagatla/update_body_in_dom…
kratiahuja Sep 11, 2018
8562d2d
release v1.2.1 🎉
stefanpenner Sep 17, 2018
411ea83
Fixed small typo
kiwiupover Sep 27, 2018
e5c777d
Merge pull request #197 from kiwiupover/patch-1
rwjblue Sep 27, 2018
ea3b8e7
fix(package): update debug to version 4.1.0
greenkeeper[bot] Oct 8, 2018
0ec6425
Remove usage of deprecated exists-sync
SergeAstapov Nov 21, 2018
ec33ae8
Update Node.js support matrix
bobisjan Nov 21, 2018
2269148
Remove .babelrc configuration file
bobisjan Nov 21, 2018
eeccf23
Merge pull request #203 from zonkyio/remove-babelrc
rwjblue Nov 21, 2018
5d14cf5
Merge pull request #201 from SergeAstapov/remove-exists-sync
rwjblue Nov 21, 2018
b79df75
Merge pull request #202 from zonkyio/node-support-update
rwjblue Nov 21, 2018
f51adc5
Merge branch 'master' into greenkeeper/debug-4.1.0
kratiahuja Nov 21, 2018
708e8da
Allow to require module path from whitelisted dependency
bobisjan Oct 28, 2018
4516747
Merge pull request #200 from zonkyio/require-module-path
kratiahuja Nov 29, 2018
f4d8983
Merge pull request #204 from ember-fastboot/greenkeeper/debug-4.1.0
kratiahuja Nov 29, 2018
4bd6d04
Add yarn.lock.
Dec 10, 2018
7a227e6
Update minimum version of simple-dom to 1.4.0.
Dec 10, 2018
b45654b
Merge pull request #206 from rwjblue/update-simple-dom
rwjblue Dec 10, 2018
5ba47fa
v1.2.1 package upgrades
izelnakri Jun 7, 2018
e803519
Merge pull request #188 from izelnakri/master
rwjblue Dec 10, 2018
d734ffe
Add lerna-changelog for changelog generation.
Dec 10, 2018
1c484c3
Add 2.0.0 to changelog.
Dec 10, 2018
8dc7404
2.0.0
Dec 10, 2018
3cc767b
Fix to run all tests
kratiahuja Dec 17, 2018
b467f9b
Merge pull request #208 from ember-fastboot/fix-tests
kratiahuja Dec 17, 2018
8128c6b
Add Eslint to this project
kratiahuja Dec 18, 2018
cafd96c
Merge pull request #210 from ember-fastboot/add-eslint
kratiahuja Dec 19, 2018
a34d17f
Fix package.json preversion command
kratiahuja Dec 20, 2018
9d6e0be
Merge pull request #211 from ember-fastboot/fix-package.json
kratiahuja Dec 20, 2018
39a9d66
2.0.1
kratiahuja Dec 20, 2018
3ec09d9
chore(package): update ember-source to version 3.8.0
greenkeeper[bot] Feb 18, 2019
4c85adc
chore(package): update lockfile yarn.lock
greenkeeper[bot] Feb 18, 2019
d4bf21a
Merge pull request #213 from ember-fastboot/greenkeeper/ember-source-…
rwjblue Feb 19, 2019
aa752f7
Fix an incorrect `debug()` call
cvx Apr 28, 2019
7ec19e5
Fix an incorrect `debug()` call (#219)
rwjblue Apr 29, 2019
a2ecaa7
fix(package): update cookie to version 0.4.0
greenkeeper[bot] May 16, 2019
37e54c1
chore(package): update lockfile yarn.lock
greenkeeper[bot] May 16, 2019
57a7633
Merge pull request #222 from ember-fastboot/greenkeeper/cookie-0.4.0
rwjblue May 17, 2019
f97e82e
update node engines to match node versions we are testing against
kiwiupover Jul 12, 2019
f081bd4
drop node 6 and add node 12
kiwiupover Jul 12, 2019
3a618d6
Restore allowing fallback require from working directory
xg-wang Jul 23, 2019
cbafed0
Update readme for npm install in dist
xg-wang Jul 23, 2019
31e0aab
fallback require only for MODULE_NOT_FOUND
xg-wang Jul 24, 2019
a0b5ea2
Update node engines to match node versions we are testing against (#225)
Jul 26, 2019
e461dd8
Merge pull request #227 from xg-wang/require
kratiahuja Aug 5, 2019
e3fe7ae
add Fastboot.distPath
stefanpenner Sep 11, 2019
96eabc8
Merge pull request #229 from ember-fastboot/fastboot-dist-path
stefanpenner Sep 11, 2019
0cbf3c3
General cleanup; ES<latest>ification.
Oct 24, 2019
dbe14cf
Add prettier setup.
Oct 24, 2019
582296c
eslint . --fix
Oct 24, 2019
ec02ca6
Fix remaining linting errors.
Oct 24, 2019
2500c23
Fix test using `Promise.prototype.finally` in Node 8.
Oct 24, 2019
99c6f4d
General repo cleanup. (#231)
Oct 24, 2019
9a3243f
Make a single `Sandbox` base class.
Oct 24, 2019
a65af2e
Merge pull request #232 from rwjblue/merge-sandbox
Oct 25, 2019
854e249
Update dependencies/devDependencies to latest.
Oct 25, 2019
f551550
Update dependencies/devDependencies to latest. (#233)
Oct 25, 2019
b63b687
Remove `rsvp` dependency.
Oct 25, 2019
3b13ce1
Remove `rsvp` dependency. (#234)
Oct 25, 2019
a7dc5fb
Document `reload` method.
Oct 25, 2019
90a378c
Document `reload` method. (#235)
Oct 25, 2019
43f39ef
Add dev script to make tracing easier.
Oct 27, 2019
749a4c7
Merge pull request #237 from rwjblue/add-dev-scripts
Oct 27, 2019
0c1b2c1
Add basic memory profiling script to `dev/` folder.
Oct 29, 2019
5ad17de
Add basic memory profiling script to `dev/` folder. (#238)
Oct 29, 2019
97aad84
Make a vm context per visit.
Oct 25, 2019
8789fc5
Remove ability to provide custom sandbox class.
Oct 25, 2019
1ff2b24
Share script bytecode across vm contexts.
Oct 26, 2019
da6bbbb
Refactor `visitRoute` to an async function.
Oct 26, 2019
edeeb8f
Remove remains of `this.app` on `src/ember-app.js`
Oct 30, 2019
ec2b32d
Refactor destruction (`Ember.Application` and `Ember.ApplicationInsta…
Oct 30, 2019
148a75c
Evaluate dist files upon `new FastBoot`
Oct 30, 2019
b67703f
Failing test: Add test showing prototype mutation leaking across visi…
Oct 30, 2019
0893cec
Failing test: Ember.onerror setup via instance initailizer leaks acro…
Oct 30, 2019
53ee52e
Ensure that destroyAppInstanceInMs does not throw if completed
Oct 30, 2019
cf0f451
Refactor to use a single sandboxed context per visit request. (#236)
Oct 30, 2019
6349fcc
Add automated release setup.
Oct 30, 2019
2e261c4
Add automated release setup. (#243)
Oct 30, 2019
85a3666
Release 3.0.0-beta.1
Oct 30, 2019
cb8bf0e
Remove ember-source from devDependencies.
Oct 31, 2019
4e03960
Merge pull request #248 from rwjblue/remove-explicit-ember-dependency
Oct 31, 2019
297ff53
Refactor sandboxGlobals -> buildSandboxGlobals
Oct 31, 2019
ed9b9d1
Refactor sandboxGlobals -> buildSandboxGlobals (#245)
Nov 1, 2019
bab91cf
Remove najax from default set of sandbox globals.
Oct 31, 2019
b8e8690
Merge pull request #247 from rwjblue/remove-najax
Nov 1, 2019
30af94b
Release 3.0.0-beta.2
Nov 1, 2019
909e714
Fix invalid syntax with deferRendering.
Nov 1, 2019
beda093
Fix invalid syntax with deferRendering. (#250)
Nov 1, 2019
1d0e4c8
Release 3.0.0-beta.3
Nov 1, 2019
8b953b5
Expose option to allow a new sandbox per visit
Nov 4, 2019
3b28a2e
Update documentation for `buildSandboxPerVisit` option.
Jan 31, 2020
d096682
Drop Node 8 support.
Jan 31, 2020
d0b9013
Expose option to allow a new sandbox per visit (#252)
Jan 31, 2020
a948965
Merge pull request #258 from rwjblue/drop-node-8
Jan 31, 2020
baecb8c
Update chalk to 3.x.
Jan 31, 2020
5e063b2
Update source-map-support.
Jan 31, 2020
737a3a2
Update minimum resolve to latest version.
Jan 31, 2020
13651e6
Update devDependencies to latest version.
Jan 31, 2020
949fa69
Fix linting RE: `inspector` module.
Jan 31, 2020
ea2e6fc
Merge pull request #259 from rwjblue/update-deps
Jan 31, 2020
31b8a5b
Release 3.0.0
Jan 31, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 0 additions & 3 deletions .babelrc

This file was deleted.

3 changes: 3 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
!.*
test/fixtures
test/helpers
31 changes: 31 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
module.exports = {
parserOptions: {
ecmaVersion: 2017,
},
extends: ['eslint:recommended', 'plugin:node/recommended', 'plugin:prettier/recommended'],
plugins: ['prettier', 'node'],
env: {
browser: true,
node: true,
es6: true,
},
rules: {
'no-console': ['error', { allow: ['warn', 'error'] }],
},
overrides: [
// override eslint in the dev/* folder to allow features from more recent
// Node versions
{
files: ['dev/**/*.js'],
rules: {
'node/no-unsupported-features/node-builtins': [
'error',
{
version: '>=10.0.0',
ignores: [],
},
],
},
},
],
};
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
.eslintcache
/node_modules
npm-debug.log
tmp*
dist/
yarn.lock
/snapshots
3 changes: 0 additions & 3 deletions .jshintignore

This file was deleted.

6 changes: 0 additions & 6 deletions .jshintrc

This file was deleted.

1 change: 1 addition & 0 deletions .npmignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,4 @@ test
.jshintignore
.jshintrc
.travis.yml
yarn.lock
5 changes: 5 additions & 0 deletions .prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"singleQuote": true,
"printWidth": 100,
"trailingComma": "es5"
}
13 changes: 2 additions & 11 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,5 @@
language: node_js
node_js:
- "stable"
- "4"
- "6"

env:
- CXX=g++-4.8 WORKER_COUNT=2
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-4.8
- "12"
- "10"
119 changes: 119 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,124 @@
## v3.0.0 (2020-01-31)

#### :boom: Breaking Change
* [#258](https://github.com/ember-fastboot/fastboot/pull/258) Drop Node 8 support ([@rwjblue](https://github.com/rwjblue))

#### :rocket: Enhancement
* [#252](https://github.com/ember-fastboot/fastboot/pull/252) Expose option to allow a new sandbox per visit ([@rwjblue](https://github.com/rwjblue))

#### :house: Internal
* [#259](https://github.com/ember-fastboot/fastboot/pull/259) Update various dependencies to latest versions. ([@rwjblue](https://github.com/rwjblue))

#### Committers: 1
- Robert Jackson ([@rwjblue](https://github.com/rwjblue))

## v3.0.0-beta.3 (2019-11-01)

#### :bug: Bug Fix
* [#250](https://github.com/ember-fastboot/fastboot/pull/250) Fix invalid syntax with deferRendering. ([@rwjblue](https://github.com/rwjblue))

#### Committers: 1
- Robert Jackson ([@rwjblue](https://github.com/rwjblue))

## v3.0.0-beta.2 (2019-11-01)

#### :boom: Breaking Change
* [#247](https://github.com/ember-fastboot/fastboot/pull/247) Remove najax from default set of sandbox globals. ([@rwjblue](https://github.com/rwjblue))

#### :rocket: Enhancement
* [#245](https://github.com/ember-fastboot/fastboot/pull/245) Refactor sandboxGlobals -> buildSandboxGlobals ([@rwjblue](https://github.com/rwjblue))

#### :house: Internal
* [#248](https://github.com/ember-fastboot/fastboot/pull/248) Remove ember-source from devDependencies. ([@rwjblue](https://github.com/rwjblue))

#### Committers: 1
- Robert Jackson ([@rwjblue](https://github.com/rwjblue))

## v3.0.0-beta.1 (2019-10-30)

#### :boom: Breaking Change
* [#236](https://github.com/ember-fastboot/fastboot/pull/236) Refactor to use a single sandboxed context per visit request. ([@rwjblue](https://github.com/rwjblue))
* [#225](https://github.com/ember-fastboot/fastboot/pull/225) Drop support for Node 6, 9, and 11. ([@kiwiupover](https://github.com/kiwiupover))

#### :rocket: Enhancement
* [#229](https://github.com/ember-fastboot/fastboot/pull/229) Add `FastBoot.distPath` ([@stefanpenner](https://github.com/stefanpenner))

#### :bug: Bug Fix
* [#227](https://github.com/ember-fastboot/fastboot/pull/227) Restore allowing fallback require from working directory ([@xg-wang](https://github.com/xg-wang))
* [#219](https://github.com/ember-fastboot/fastboot/pull/219) Fix an incorrect `debug()` call ([@CvX](https://github.com/CvX))

#### :memo: Documentation
* [#235](https://github.com/ember-fastboot/fastboot/pull/235) Document `reload` method. ([@rwjblue](https://github.com/rwjblue))

#### :house: Internal
* [#243](https://github.com/ember-fastboot/fastboot/pull/243) Add automated release setup. ([@rwjblue](https://github.com/rwjblue))
* [#238](https://github.com/ember-fastboot/fastboot/pull/238) Add basic memory profiling script to `dev/` folder. ([@rwjblue](https://github.com/rwjblue))
* [#237](https://github.com/ember-fastboot/fastboot/pull/237) Add dev script to make tracing easier. ([@rwjblue](https://github.com/rwjblue))
* [#234](https://github.com/ember-fastboot/fastboot/pull/234) Remove `rsvp` dependency. ([@rwjblue](https://github.com/rwjblue))
* [#233](https://github.com/ember-fastboot/fastboot/pull/233) Update dependencies/devDependencies to latest. ([@rwjblue](https://github.com/rwjblue))
* [#232](https://github.com/ember-fastboot/fastboot/pull/232) Make a single `Sandbox` base class. ([@rwjblue](https://github.com/rwjblue))
* [#231](https://github.com/ember-fastboot/fastboot/pull/231) General repo cleanup. ([@rwjblue](https://github.com/rwjblue))

#### Committers: 5
- David Laird ([@kiwiupover](https://github.com/kiwiupover))
- Jarek Radosz ([@CvX](https://github.com/CvX))
- Robert Jackson ([@rwjblue](https://github.com/rwjblue))
- Stefan Penner ([@stefanpenner](https://github.com/stefanpenner))
- Thomas Wang ([@xg-wang](https://github.com/xg-wang))

# FastBoot Changelog

## v2.0.0 (2018-12-10)

#### :boom: Breaking Change
* [#202](https://github.com/ember-fastboot/fastboot/pull/202) Update Node.js support matrix ([@bobisjan](https://github.com/bobisjan))

#### :rocket: Enhancement
* [#188](https://github.com/ember-fastboot/fastboot/pull/188) Update various dependencies to latest. ([@izelnakri](https://github.com/izelnakri))
* [#206](https://github.com/ember-fastboot/fastboot/pull/206) Update minimum version of simple-dom to 1.4.0. ([@rwjblue](https://github.com/rwjblue))

#### :bug: Bug Fix
* [#200](https://github.com/ember-fastboot/fastboot/pull/200) Allow to require module path from whitelisted dependency ([@bobisjan](https://github.com/bobisjan))
* [#201](https://github.com/ember-fastboot/fastboot/pull/201) Remove usage of deprecated exists-sync ([@SergeAstapov](https://github.com/SergeAstapov))

#### :memo: Documentation
* [#197](https://github.com/ember-fastboot/fastboot/pull/197) Fixed small typo ([@kiwiupover](https://github.com/kiwiupover))

#### :house: Internal
* [#204](https://github.com/ember-fastboot/fastboot/pull/204) fix(package): update debug to version 4.1.0 ([@rwjblue](https://github.com/rwjblue))
* [#203](https://github.com/ember-fastboot/fastboot/pull/203) Remove .babelrc configuration file ([@bobisjan](https://github.com/bobisjan))

#### Committers: 5
- David Laird ([@kiwiupover](https://github.com/kiwiupover))
- Izel Nakri ([@izelnakri](https://github.com/izelnakri))
- Jan Bobisud ([@bobisjan](https://github.com/bobisjan))
- Robert Jackson ([@rwjblue](https://github.com/rwjblue))
- Sergey Astapov ([@SergeAstapov](https://github.com/SergeAstapov))

### 1.2.0

* Add support for setting attributes on the `<html>` element (e.g. `<html lang="fr">`).

### 1.1.4-beta.1

* Enable rehydration from glimmer-vm as opt-in

### 1.1.3

* Add markers before and after the body to be able to remove rootless apps

### 1.1.2

* Adds API to allow chunking shoebox responses for better performance.

### 1.1.1

* Implement `unknownProperty` in FastbootHeaders to prevent users mistakenly use `Ember.get(headers, headerName)`

### 1.1.0

* Add the ability to support configuration for multiple namespaces to `FastBoot.config`.

### 1.0.0-rc.3

* Remove Node 0.12 support.
Expand Down
41 changes: 33 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

[![Greenkeeper badge](https://badges.greenkeeper.io/ember-fastboot/fastboot.svg)](https://greenkeeper.io/)
[![npm version](https://badge.fury.io/js/fastboot.svg)](https://badge.fury.io/js/fastboot)
[![Build Status](https://travis-ci.org/ember-fastboot/fastboot.svg?branch=master)](https://travis-ci.org/ember-fastboot/ember-fastboot-server)
[![Build Status](https://travis-ci.org/ember-fastboot/fastboot.svg?branch=master)](https://travis-ci.org/ember-fastboot/fastboot)
![Ember Version](https://embadge.io/v1/badge.svg?start=2.3.0)

FastBoot is a library for rendering Ember.js applications in Node.js.
Expand All @@ -17,7 +17,7 @@ To serve server-rendered versions of your Ember app over HTTP, see the
[FastBoot App
Server](https://github.com/ember-fastboot/fastboot-app-server).

FastBoot requires Node.js v4 or later.
FastBoot requires Node.js v6 or later.

## Usage

Expand All @@ -28,8 +28,14 @@ let app = new FastBoot({
distPath: 'path/to/dist',
// optional boolean flag when set to true does not reject the promise if there are rendering errors (defaults to false)
resilient: <boolean>,
sandbox: 'path/to/sandbox/class', // optional sandbox class (defaults to vm-sandbox)
sandboxGlobals: {...} // optional map of key value pairs to expose in the sandbox

// optional function used to generate the set of global properties available within the sandbox, receives default globals
// and is expected to return an object (the default implementation returns the passed in defaults)
buildSandboxGlobals(defaultGlobals) {
return Object.assign({}, defaultGlobals, {
// additional global properties to define within the sandbox
});
},
});

app.visit('/photos', options)
Expand All @@ -41,6 +47,16 @@ In order to get a `dist` directory, you will first need to build your
Ember application, which packages it up for using in both the browser
and in Node.js.

### Default globals

`FastBoot` object will be available to the sandboxed environment. This object has the following form:

```
FastBoot.require // provides a mechanism to load additional modules. Note: these modules are only those included in the module whitelist
FastBoot.config // a function which takes a key, and returns the corresponding fastboot config value
FastBoot.distPath // readOnly accessor that provides the dist path for the current fastboot sandbox
```

### Additional configuration

`app.visit` takes a second parameter as `options` above which a map and allows to define additional optional per request
Expand All @@ -52,6 +68,7 @@ configuration:
- `shouldRender`: boolean to indicate whether the app should do rendering or not. If set to false, it puts the app in routing-only. Defaults to true.
- `disableShoebox`: boolean to indicate whether we should send the API data in the shoebox. If set to false, it will not send the API data used for rendering the app on server side in the index.html. Defaults to false.
- `destroyAppInstanceInMs`: whether to destroy the instance in the given number of ms. This is a failure mechanism to not wedge the Node process
- `buildSandboxPerVisit`: whether to create a new sandbox context per-visit (slows down each visit, but guarantees no prototype leakages can occur), or reuse the existing sandbox (faster per-request, but each request shares the same set of prototypes). Defaults to false.

### Build Your App

Expand All @@ -63,14 +80,22 @@ build command:
$ ember build --environment production
```

(You will need to have already set up the Ember CLI FastBoot addon. For
more information, see the [FastBoot quickstart][quickstart].)
(You will need to have already set up the [ember-cli-fastboot](https://github.com/ember-fastboot/ember-cli-fastboot) addon.
For more information, see the [FastBoot quickstart][quickstart].)

[quickstart]: https://www.ember-fastboot.com/quickstart

Once this is done, you will have a `dist` directory that contains the
multi-environment build of your app. Upload this file to your FastBoot
server.
multi-environment build of your app.

Run the command to install run time node modules:

```sh
$ cd dist/
$ npm install
```

Upload the `dist/` folder including `node_modules` to your FastBoot server.

### Command Line

Expand Down
65 changes: 65 additions & 0 deletions RELEASE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
# Release

Releases are mostly automated using
[release-it](https://github.com/release-it/release-it/) and
[lerna-changelog](https://github.com/lerna/lerna-changelog/).


## Preparation

Since the majority of the actual release process is automated, the primary
remaining task prior to releasing is confirming that all pull requests that
have been merged since the last release have been labeled with the appropriate
`lerna-changelog` labels and the titles have been updated to ensure they
represent something that would make sense to our users. Some great information
on why this is important can be found at
[keepachangelog.com](https://keepachangelog.com/en/1.0.0/), but the overall
guiding principles here is that changelogs are for humans, not machines.

When reviewing merged PR's the labels to be used are:

* breaking - Used when the PR is considered a breaking change.
* enhancement - Used when the PR adds a new feature or enhancement.
* bug - Used when the PR fixes a bug included in a previous release.
* documentation - Used when the PR adds or updates documentation.
* internal - Used for internal changes that still require a mention in the
changelog/release notes.


## Release

Once the prep work is completed, the actual release is straight forward:

* First ensure that you have `release-it` installed globally, generally done by
using one of the following commands:

```
# using https://volta.sh
volta install release-it

# using Yarn
yarn global add release-it

# using npm
npm install --global release-it
```

* Second, ensure that you have installed your projects dependencies:

```
# using yarn
yarn install

# using npm
npm install
```

* And last (but not least 😁) do your release:

```
release-it
```

[release-it](https://github.com/release-it/release-it/) manages the actual
release process. It will prompt you through the process of choosing the version
number, tagging, pushing the tag and commits, etc.
Loading