Commit Graph

571 Commits

Author SHA1 Message Date
dependabot[bot] 390d69e1f7 build(deps-dev): bump webpack from 5.65.0 to 5.68.0 in /web
Bumps [webpack](https://github.com/webpack/webpack) from 5.65.0 to 5.68.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.65.0...v5.68.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-01 23:05:16 +02:00
dependabot[bot] 0c715c369f build(deps-dev): bump sign-addon from 3.9.0 to 3.10.0 in /web
Bumps [sign-addon](https://github.com/mozilla/sign-addon) from 3.9.0 to 3.10.0.
- [Release notes](https://github.com/mozilla/sign-addon/releases)
- [Commits](https://github.com/mozilla/sign-addon/compare/3.9.0...3.10.0)

---
updated-dependencies:
- dependency-name: sign-addon
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-01 23:05:01 +02:00
dependabot[bot] 15ef91f905 build(deps-dev): bump webpack-dev-server from 4.7.2 to 4.7.3 in /web
Bumps [webpack-dev-server](https://github.com/webpack/webpack-dev-server) from 4.7.2 to 4.7.3.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v4.7.2...v4.7.3)

---
updated-dependencies:
- dependency-name: webpack-dev-server
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-01 23:04:11 +02:00
dependabot[bot] 3c0f08fb7d build(deps-dev): bump @types/mocha from 9.0.0 to 9.1.0 in /web
Bumps [@types/mocha](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/mocha) from 9.0.0 to 9.1.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/mocha)

---
updated-dependencies:
- dependency-name: "@types/mocha"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-01 23:03:57 +02:00
dependabot[bot] 33ac55402a build(deps-dev): bump @types/chrome from 0.0.174 to 0.0.177 in /web
Bumps [@types/chrome](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/chrome) from 0.0.174 to 0.0.177.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/chrome)

---
updated-dependencies:
- dependency-name: "@types/chrome"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-02-01 23:03:41 +02:00
Toad06 c14569e3d4 web: Add `refresh` method to `navigator.plugins` 2022-01-26 18:53:33 -08:00
Daniel Jacobs c0880225ff selfhosted: Use absolute URLs for links in README 2022-01-26 18:51:06 -08:00
nosamu f23c03129a
extension: URL-encode the SWF URL for the player page
When the user clicks the "Open in a new tab" button, the extension's internal `player.html` page opens, with a URL parameter `?url=[the SWF URL]`. Right now, this URL parameter is not properly encoded. This causes a problem when we get to https://github.com/ruffle-rs/ruffle/blob/master/web/packages/extension/src/player.ts#L14:
> `const swfUrl = url.searchParams.get("url");` 
Because the value "url" parameter was not properly encoded, any `&` character in the SWF URL would be interpreted as the start of a *new* parameter, instead of being part of the actual SWF URL. So anything after the first `&` symbol in the SWF URL would be chopped off.
On Itch.io Flash pages such as https://rarykos.itch.io/hug-me-im-cold, the SWF URL contains several important parameters - if they are not included, the server returns 403 Forbidden (it's a type of hotlinking protection). So when the user clicked the "Open in a new tab" button on Itch.io pages, the SWF would refuse to load in the player.
This PR fixes the problem - Itch.io SWFs load when opened in a new tab after my change is applied.
2022-01-24 19:01:11 -08:00
relrelb 809e91d029 demo: Serve on default port
The switch to 8081 seems like a leftover from #5250.
Return to the default 8080.
2022-01-24 13:29:42 -08:00
relrelb 059c1a3417 web: Add a comment about `ignorePatterns` 2022-01-16 11:07:00 -08:00
relrelb 479719f425 web: De-duplicate TypeScript ESLint rules
Pull them to the root config, using the `overrides` feature:
https://eslint.org/docs/user-guide/configuring/configuration-files#configuration-based-on-glob-patterns
2022-01-16 11:07:00 -08:00
relrelb 94d82aa060 web: Convert more files from JSON to YAML 2022-01-16 11:07:00 -08:00
relrelb d0eb6adbc0 web: Fix `publicPath` when loaded from a CDN
CDNs allow omitting the filename:

* https://unpkg.com/@ruffle-rs/ruffle
* https://cdn.jsdelivr.net/npm/@ruffle-rs/ruffle

That caused `currentScriptURL` to be determined incorrectly:

```js
new URL(".", "https://unpkg.com/@ruffle-rs/ruffle").href
// "https://unpkg.com/@ruffle-rs/"
```

If the filename is omitted, append a slash to prevent the last
component from being dropped:

```js
new URL(".", "https://unpkg.com/@ruffle-rs/ruffle/").href
// "https://unpkg.com/@ruffle-rs/ruffle/"
```
2022-01-15 14:49:19 -08:00
TÖRÖK Attila 483028707f web: Add custom profiles to separate the build cache for the two wasm modules 2022-01-13 12:28:00 -08:00
relrelb 5f033743f0 web: Mark packages as private
This prevents accidental publication of packages that shouldn't
be published. Some packages were already marked as such, so it's a
bit more consistent.
2022-01-12 21:24:19 -08:00
relrelb 7cffddca97 extension: Fix typo
We actually append the build number (the `BUILD_ID` environment variable,
which originates from `github.run_number` in the CI), not the build date.
2022-01-12 21:24:19 -08:00
relrelb 38549fdbdf web: Publish NPM package
Publish nightly releases as part of the CI, so Ruffle can be easily
integrated into a website using a CDN (such as jsDelivr). It would
also be easier for websites to keep up-to-date, as NPM auto-updates
the `latest` tag to refer to the latest release.

A dedicated `package.json` is used for the published NPM package,
because `ruffle-selfhosted` depends on the private `ruffle-core`
package, which shouldn't be published.

Also, the `version` field must monotonically increase. So Webpack
auto-fills it to be `0.1.0-nightly.YYYY.MM.DD`. This format satisfies
a couple of needs:
* Newer nightly releases should take precedence over older ones.
* Stable releases (e.g. `1.0.0`) should take precedence over nightly
ones.
2022-01-12 21:24:19 -08:00
relrelb 3f8f117fd3 web: Convert .eslintrc files from JSON to YAML
YAML is shorter, more modern, readable, and flexible than JSON.
In other words, YAML >>> JSON.

Auto-converted using [`yq`](https://github.com/kislyuk/yq).
2022-01-12 20:10:00 -08:00
Mike Welsh 70bb5fa3f2 extension: Change unsafe-eval to wasm-eval in CSP
`unsafe-eval` was needed in the extension Content Security
Policy to Wasm compilation in Chrome.

This CSP setting causes the extension to get flagged in the
Mozilla Add-On Marketplace, which discourages the use of
`unsafe-eval`.

However, Chrome has a `wasm-eval` CSP setting which also allows
extensions to compile Wasm without requiring `unsafe-eval`.
Inject this into the extension manifest when building the Chrome
extension.

Eventually this may change to `wasm-unsafe-eval` as drafted by
the CSP spec and be required by all browsers.
2022-01-12 11:29:36 -08:00
TÖRÖK Attila db6731be2c web: Detect and log whether WebAssembly extensions are actually used 2022-01-12 11:29:16 -08:00
TÖRÖK Attila 44e59a0012 web,ci: Only build the vanilla module by default, use it as stand-in for the other
And enable the module that really uses WebAssembly extensions for the
releases by running the new "npm run build:dual-wasm" command, which
sets the ENABLE_WASM_EXTENSIONS=true environment variable.
2022-01-12 11:29:16 -08:00
TÖRÖK Attila ab69c12649 web: Build two WASM modules, with/without extensions, load the appropriate one 2022-01-12 11:29:16 -08:00
Mike Welsh 3010c505aa chore: Add error-report issue template
The `error-report` label was not being added to error reports
submitted by panics in the web player, despite the `labels` query
parameter in the URL. Users do not have triage/write access to the
repo, which is required by GitHub to add a label to an issue.

Add an issue template for error reports with the `error-report`
label. This template is now added to the issue URL, which
automatically adds the tag regardless of access level.
2022-01-02 13:59:54 -08:00
dependabot[bot] a55330a361
Merge pull request #5969 from ruffle-rs/dependabot/npm_and_yarn/web/wdio/cli-7.16.12 2022-01-02 00:34:05 +00:00
dependabot[bot] ef06f92a92
build(deps-dev): bump @wdio/cli from 7.16.10 to 7.16.12 in /web
Bumps [@wdio/cli](https://github.com/webdriverio/webdriverio) from 7.16.10 to 7.16.12.
- [Release notes](https://github.com/webdriverio/webdriverio/releases)
- [Changelog](https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md)
- [Commits](https://github.com/webdriverio/webdriverio/compare/v7.16.10...v7.16.12)

---
updated-dependencies:
- dependency-name: "@wdio/cli"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-01 23:29:27 +00:00
dependabot[bot] 7b883bd400
build(deps-dev): bump @typescript-eslint/eslint-plugin in /web
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 5.5.0 to 5.8.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.8.1/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-01 23:23:26 +00:00
dependabot[bot] 83dd88e3f6
build(deps-dev): bump eslint from 8.4.0 to 8.6.0 in /web
Bumps [eslint](https://github.com/eslint/eslint) from 8.4.0 to 8.6.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.4.0...v8.6.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-01 20:54:47 +00:00
dependabot[bot] 08707f0258 build(deps-dev): bump @typescript-eslint/parser in /web
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 5.5.0 to 5.8.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.8.1/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-01 22:53:33 +02:00
dependabot[bot] f52ea138fc build(deps-dev): bump webpack from 5.64.4 to 5.65.0 in /web
Bumps [webpack](https://github.com/webpack/webpack) from 5.64.4 to 5.65.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.64.4...v5.65.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-01 22:53:12 +02:00
dependabot[bot] 1fd6fdca60 build(deps-dev): bump @types/chrome from 0.0.166 to 0.0.174 in /web
Bumps [@types/chrome](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/chrome) from 0.0.166 to 0.0.174.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/chrome)

---
updated-dependencies:
- dependency-name: "@types/chrome"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-01 22:52:56 +02:00
dependabot[bot] c6e5946ba1 build(deps-dev): update webpack-dev-server requirement in /web
Updates the requirements on [webpack-dev-server](https://github.com/webpack/webpack-dev-server) to permit the latest version.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v4.6.0...v4.7.2)

---
updated-dependencies:
- dependency-name: webpack-dev-server
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-01-01 22:52:28 +02:00
relrelb a25a25adbc web: Check `$CI` environment variable 2021-12-17 16:48:00 +02:00
Daniel Jacobs 5127e131bd extension: Fix base for direct swf links 2021-12-15 14:00:02 -08:00
TÖRÖK Attila cc4853236e web/extension: Allow 'data:' URLs as image src - needed by the canvas backend 2021-12-12 20:43:21 +01:00
relrelb e5617de4aa web: Suppress Webpack's size limit for .wasm files
Webpack warns on assets larger than 250KB by default. Our WebAssembly
module exceeds this limit by far (it's a few MBs).
2021-12-10 22:50:45 +02:00
Chris Midgley f0b29cc5d0
web: allow entering fullscreen after using escape to exit (#5714)
* web: allow entering fullscreen after using escape to exit

* chore: fmt

* web: fix fullscreen for Safari too

* web: dedupe methods and always set fullscreen

* chore: fmt

* web: use isFullscreen method
2021-12-10 19:54:22 +02:00
dependabot[bot] a72ebd9ba3 build(deps-dev): bump @types/chrome from 0.0.165 to 0.0.166 in /web
Bumps [@types/chrome](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/chrome) from 0.0.165 to 0.0.166.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/chrome)

---
updated-dependencies:
- dependency-name: "@types/chrome"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-04 17:12:12 +02:00
dependabot[bot] d825c9d9cf build(deps-dev): bump eslint from 8.3.0 to 8.4.0 in /web
Bumps [eslint](https://github.com/eslint/eslint) from 8.3.0 to 8.4.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v8.3.0...v8.4.0)

---
updated-dependencies:
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-04 16:50:30 +02:00
dependabot[bot] 1ffcfae78a build(deps-dev): bump @types/chrome from 0.0.164 to 0.0.165 in /web
Bumps [@types/chrome](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/chrome) from 0.0.164 to 0.0.165.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/chrome)

---
updated-dependencies:
- dependency-name: "@types/chrome"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-02 07:11:56 +02:00
dependabot[bot] 5db476657c build(deps-dev): bump @typescript-eslint/parser in /web
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 5.4.0 to 5.5.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.5.0/packages/parser)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-02 07:11:44 +02:00
dependabot[bot] e3dfeb5a44 build(deps-dev): update webpack-dev-server requirement in /web
Updates the requirements on [webpack-dev-server](https://github.com/webpack/webpack-dev-server) to permit the latest version.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases)
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v4.5.0...v4.6.0)

---
updated-dependencies:
- dependency-name: webpack-dev-server
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-01 22:38:37 +02:00
dependabot[bot] 7b54e28545 build(deps-dev): update eslint-plugin-jsdoc requirement in /web
Updates the requirements on [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc) to permit the latest version.
- [Release notes](https://github.com/gajus/eslint-plugin-jsdoc/releases)
- [Commits](https://github.com/gajus/eslint-plugin-jsdoc/compare/v37.0.3...v37.1.0)

---
updated-dependencies:
- dependency-name: eslint-plugin-jsdoc
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-01 22:34:53 +02:00
dependabot[bot] 83a82628b6 build(deps-dev): bump @typescript-eslint/eslint-plugin in /web
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 5.4.0 to 5.5.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.5.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-12-01 22:34:33 +02:00
Chris Midgley 8ac19e9807
web: update everything (#5731)
* web: update everything

* chore: apply new lint corrections
2021-11-25 23:21:43 +02:00
Chris Midgley cf1d0e7624 web: remove firefox extension version restriction 2021-11-22 21:47:37 +02:00
Daniel Jacobs d86bf69a04 i18n: Add spanish tranlation for swf download option 2021-11-15 23:12:27 +02:00
Daniel Jacobs d3a5561e8f web: Give toggleable option to download swfs in extension/selfhosted 2021-11-15 23:12:27 +02:00
Tal Hayon 7ed38850fd core: implement displayState for Stage in avm1/2 2021-11-11 16:20:05 -07:00
dependabot[bot] 867ad14302 build(deps-dev): bump @typescript-eslint/eslint-plugin in /web
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 4.32.0 to 4.33.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.33.0/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-02 09:10:08 +02:00
dependabot[bot] 1f73314e44 build(deps-dev): update ts-node requirement in /web
Updates the requirements on [ts-node](https://github.com/TypeStrong/ts-node) to permit the latest version.
- [Release notes](https://github.com/TypeStrong/ts-node/releases)
- [Commits](https://github.com/TypeStrong/ts-node/compare/v10.2.1...v10.4.0)

---
updated-dependencies:
- dependency-name: ts-node
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-11-02 09:09:53 +02:00