element-web/scripts
Travis Ralston 2b037ee146 Prevent races by blocking on SDK builds
If we don't block on SDK builds, then the riot-web build fails due to half-built dependencies. This needs to be done at two levels: the js-sdk because it is used by both the react-sdk and riot-web, and at the react-sdk because riot-web needs it. This means our build process is synchronous for js -> react -> riot, at least for the initial build. 

This does increase the startup time, particularly because the file watch timer is at 5 seconds. The timer is used to detect a storm of file changes in the underlying SDKs and give the build process some room to compile larger files if needed. 

The file watcher is accompanied by a "canary signal file" to prevent the build-blocking script from unblocking too early. Both the js and react SDKs build when `npm install` is run, so we ensure that we only listen for the `npm start` build for each SDK.

This is all done at the riot level instead of at the individual SDK levels (where we could use a canary file to signal up the stack) because:
* babel (used by the js-sdk) doesn't really provide an "end up build" signal
* webpack is a bit of a nightmare to get it to behave at times
* this blocking approach is really only applicable to riot-web, although may be useful to some other projects.

Hopefully that all makes sense.
2018-09-24 17:12:42 -06:00
..
block-on-sdk-build.js Prevent races by blocking on SDK builds 2018-09-24 17:12:42 -06:00
build-watch-sdk.js Prevent races by blocking on SDK builds 2018-09-24 17:12:42 -06:00
check-i18n.pl Merge branch 'develop' into new-guest-access 2017-05-28 22:50:53 +01:00
copy-res.js Add Norsk & Italian 2018-08-16 15:04:17 +01:00
deploy.py This is the default 2017-09-20 18:17:06 +01:00
electron-package.sh Don't delete dist dir after putting stuff in it 2017-09-06 14:37:57 +01:00
fetch-develop.deps.sh Fix npm link in the build script 2018-09-17 17:57:27 -06:00
genflags.sh make flags less muddy - fixes https://github.com/vector-im/riot-web/issues/3974 2017-05-29 00:10:08 +01:00
issues-burndown.pl change wording to not confuse users building repo 2017-05-11 17:49:31 +01:00
issues-no-state.pl change wording to not confuse users building repo 2017-05-11 17:49:31 +01:00
jenkins.sh Jenkins.sh: only fetch head of dependency branches 2017-08-08 09:50:49 +01:00
make-icons.sh npm is "smart" enough to try and install our electron wrapper as a module 2017-05-10 13:36:27 +01:00
package.sh fix #3894 2017-05-15 21:14:01 +01:00
redeploy.py Fix debug message to be clearer 2017-09-21 10:26:07 +01:00