Commit graph

163 commits

Author SHA1 Message Date
J. Ryan Stinnett
49be03e845 Process images with Webpack
This adds a `file-loader` rule to the Webpack build so that any requests for
image resource will be output into the app's output directory, but with an extra
content has appended so that we can safely use a long cache lifetime.

The CSS and SCSS rules are also changed to use `css-loader` so that any `url`
inside is automatically processed by the new image rule above.
2019-01-18 08:39:09 -06:00
David Baker
8298e73205 Argh, npm, why are you so awful? 2018-11-21 19:25:11 +00:00
David Baker
d2c87a0331 Fix jenkins build 2018-11-21 19:13:42 +00:00
David Baker
7df77d7e5d Recent node please 2018-11-21 19:00:11 +00:00
Aaron Raimist
2f991d190f
Add Japanese (#7599)
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-11-08 13:31:09 -06:00
David Baker
9b80aa76ce
Merge pull request #7385 from vector-im/dbkr/wasm
Support WebAssembly version of Olm
2018-10-25 15:58:24 +01:00
David Baker
de7d3ba701 Change electron build script paths
Because electron builder has decided to output the mac assets to
somewhere else today.
2018-10-16 10:26:04 +01:00
David Baker
c5ee92f4c3 Fall back to legacy asm.js Olm 2018-10-04 20:11:34 +01:00
David Baker
30f0a7932b Merge remote-tracking branch 'origin/develop' into dbkr/wasm 2018-10-02 16:58:31 +01:00
David Baker
1f34d2d644 Kill off olm-loader
Now that Olm needs to be inited asynchronously anyway, we can just
pass the options to Olm.init(), and as long as we do that before we
start the js-sdk, we're all good.

This will means the olm js is now part of the main bundle but since
it's now just a wrapper around the wasm, this is probably faster.

Also add the directwatch flag to olm.wasm because otherwise it
doesn't seem to copy the file in watch mode...
2018-09-26 16:44:52 +01:00
Travis Ralston
4041f3db5c Send standard output/input from npm-sub.js to the parent proc 2018-09-25 15:54:38 -06:00
Travis Ralston
91304e70a1 Swap out the complicated canary stuff for serial execution
Fixes https://github.com/vector-im/riot-web/issues/7386
2018-09-25 15:49:14 -06:00
Travis Ralston
27c23058dc Alter build process to rely on canaries only
With the react-sdk and js-sdk having their `npm start`s split out (as per https://github.com/matrix-org/matrix-react-sdk/pull/2175 and https://github.com/matrix-org/matrix-js-sdk/pull/742) we can trigger an initial build ourselves and start the watcher afterwards. This canary approach has a very slight speed increase over serially running all the commands as the watcher can be started as early as possible.

This all can be improved and potentially eliminated with a bit more planning, however: https://github.com/vector-im/riot-web/issues/7386
2018-09-25 11:20:58 -06:00
David Baker
c511902356 Support WebAssembly version of Olm.
* Olm no longer supports setting the stack/memory size at runtime,
   so don't (they're now set to be that in the Olm build).
 * Copy the wasm file from the Olm library (see multiple comments
   about it being in the wrong place and webpack being awful).
2018-09-25 17:55:41 +01:00
Travis Ralston
8d7cec2a94 Add some comments to describe the build process 2018-09-24 17:57:18 -06:00
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
Travis Ralston
c6da122e41 Fix npm link in the build script 2018-09-17 17:57:27 -06:00
Travis Ralston
67e9606d55 Reduce the number of terminals required to build riot-web to 1
A step towards a real solution for https://github.com/vector-im/riot-web/issues/7305

This approach makes use of `npm link` to remove the use of symlinks in the build process. The build process has also been altered to invoke the build process of each underlying SDK (react, js). This means that one can now `npm link` and `npm start` and have a working environment. 

At the same time, parallelshell was dropped due to lack of maintenance from the maintainer.
2018-09-17 17:50:03 -06:00
David Baker
8a167d2743 Add Norsk & Italian 2018-08-16 15:04:17 +01:00
David Baker
0abaff5aed Copy media from react-sdk
Looks like this just got missed

Fixes https://github.com/vector-im/riot-web/issues/6586
2018-04-23 17:27:35 +01:00
David Baker
f012dd5f31 Fix favicon
In removing 'media' here, it changed the meaning of the copy so
the contents of vector-icons (rather than the dir itself) got
copied to webapp/
2018-04-23 11:28:01 +01:00
Matthew Hodgson
a46b718b4a copy resources from their new locations 2018-04-13 01:49:52 +01:00
Krombel
57803f7a41 reorder based on language code 2018-03-17 16:24:47 +01:00
Krombel
14f70beac2 Add languages (czech, galician and serbian) 2018-03-17 11:27:10 +01:00
Luke Barnard
075f568f61 Fix crash; fs event received /w langauge file empty
It was common, at least for me, to experience a crash produced
when running the `matrix-react-sdk/scripts/gen-i18n.js` script
because when writing en_EN.json (via the script or otherwise)
choikdar would receive an event and cause the file to be read,
but the file would be empty when clearly it wasn't.

This would happen even when doing an atomic write in gen-i18n.

The fix adds a debounce as a workaround.
2018-03-02 15:30:06 +00:00
Ralitsa Bozhkova
90897b0741
Add Bulgarian to the list of languages
Bulgarian is now at 100% for both riot-web and matrix-react-sdk.
It has also been tested by building it manually and verifying that it looks good.
2018-02-24 10:28:39 +02:00
Simó Albert i Beltran
e56b16f7d1 Add Catalan 2018-01-25 18:25:46 +01:00
Matthew Hodgson
bddab533a3
Merge pull request #5938 from osoitz/master
Corrected language name
2018-01-07 20:34:19 +00:00
osoitz
5106809394
Update copy-res.js
Corrected Basque name
2018-01-07 20:39:24 +01:00
Luke Barnard
dff791d478 Add Slovak to included languages 2017-11-17 15:07:20 +00:00
Luke Barnard
9664b4d176 Add Slovak to included languages 2017-11-15 12:14:30 +00:00
Matthew Hodgson
f86b616769 status homepage 2017-10-26 01:38:07 +01:00
Matthew Hodgson
01b3d6128c move status theme into a dedicated dir, and make fonts work 2017-10-22 17:03:39 +01:00
David Baker
e39730d52e Say which translation file failed (#5196)
So we can see which i18n file is invalid when it fails
2017-10-11 09:56:38 +01:00
David Baker
133e17c1db Merge remote-tracking branch 'origin/develop' into dbkr/add_finnish 2017-09-22 09:50:56 +01:00
David Baker
1cca4c2133 Fix debug message to be clearer 2017-09-21 10:26:07 +01:00
David Baker
b4ea938be3 This is the default 2017-09-20 18:17:06 +01:00
David Baker
6ec26932af This is the default anyway 2017-09-20 17:54:52 +01:00
David Baker
21d233b5af oops, leftover debug 2017-09-20 17:48:47 +01:00
David Baker
b9b4ac3166 Rename symlink to 'include' & add to redeploy
Because redeploy.py already has a 'symlink' option that does
something else.
2017-09-20 17:22:47 +01:00
David Baker
6ff91789b2 Rename 'config' option to 'symlink'
because that's really all it's doing and we can use it for other
things
2017-09-20 17:04:31 +01:00
David Baker
be938ac0f4 Accept globs for the config location
and make the default config*.sjon so we'll automatically symlink
any config files in the current dir.
2017-09-20 14:38:41 +01:00
David Baker
e4082d4f45 Support multiple configs on the command line 2017-09-20 14:25:33 +01:00
David Baker
b2e1a2956f Include Finnish translation
Which is 100% on riot-web and 40% on react-sdk which is probably
at a point where it can be useful.
2017-09-15 12:26:45 +01:00
David Baker
7202556f45 Don't delete dist dir after putting stuff in it 2017-09-06 14:37:57 +01:00
David Baker
e6d43f9d77 Edit electron build script fior signed win builds
Don't copy them to pub: let the signing process do that
2017-09-06 13:28:21 +01:00
David Baker
4ff9131e61 Redeploy script: don't bail if bundle exists (#4977)
Just don't bother replacing that bundle. Continue redeploying the
rest as other assets (eg translation files) may have changed.
2017-09-05 13:54:51 +01:00
David Baker
b55174e5e9 Fix plurals in translations
See https://github.com/matrix-org/matrix-react-sdk/pull/1358
Requires https://github.com/matrix-org/matrix-react-sdk/pull/1358
2017-09-04 17:18:27 +01:00
David Baker
1f3f7af1e1 Revert accidental merge 2017-09-04 17:16:13 +01:00
David Baker
1e203cade7 Fix plurals in translations
See https://github.com/matrix-org/matrix-react-sdk/pull/1358
Requires https://github.com/matrix-org/matrix-react-sdk/pull/1358
2017-09-04 17:14:41 +01:00