Commit Graph

5827 Commits

Author SHA1 Message Date
TÖRÖK Attila 8cf39f3001 Allow the if_then_panic clippy lint in one more place 2021-10-03 15:50:54 -07:00
relrelb 281455be6d swf: Improve `ActionTry` read/write
* Use `TryFlags` instead of hard-coded binary literals.
* Rename `try_length`, `catch_length`, `finally_length` to `try_size`,
`catch_size`, `finally_size` to match SWF19 namings.
* Refactor write and fix a few bugs there:
    * The actions length should not include the try, catch, finally
    bodies, only the metadata of `flags`, `try_size`, `catch_size`,
    `finally_size` and catch variable (either as `u8` or `SwfStr`).
    * A placeholder byte should be written in place of the catch variable
    when there is no catch clause.
2021-10-02 23:01:32 +03:00
relrelb d49ea10267 swf: Rename `TryBlock` fields
* `try_actions` -> `try_body`
* `catch` -> `catch_body`
* `finally` -> `finally_body`

This aligns with the names used in SWF19, and is more consistent.
2021-10-02 23:01:32 +03:00
relrelb 81c864c6c8 avm1: Propagate exceptions in `Key.isDown`
Also change `coerce_to_f64` to `coerce_to_i32`.
2021-10-02 23:01:32 +03:00
relrelb 0a30057a63 avm1: Use enum constants instead of hard-coded numbers 2021-10-02 23:01:32 +03:00
relrelb d2908d8fcd swf: Fix write of With opcode
The actions length should be written as an additional u16.
2021-10-02 23:01:32 +03:00
TÖRÖK Attila a1ee508ff8
chore: Fix nightly clippy lint: clippy::if_then_panic (#5400)
* chore: Fix nightly clippy lint: clippy::if_then_panic

* chore: Fix nightly clippy lint: clippy::if_then_panic in swf tests too

* Address review notes
2021-10-02 16:14:53 +03:00
relrelb f3a482a48f extension: Prefer functions over methods
TypeScript is more strict with functions. Fix 2 instances affected
by this change.
2021-10-02 08:58:31 +03:00
relrelb b250dd5ff1 extension: Fix popup reload tab button
Previously the popup page fetched only the `ruffleEnable` and `ruffleOptout`
options because only those appear in `popup.html`. So the remaining
options were always returned with their default value, making the popup
page think that all tabs need to be reloaded when these options have a
non-default value.

Remove the `keys` parameter of `getOptions`, and instead make it always
return all options. Adapt all usages of `getOptions`, which got simplified
by this change.
2021-10-02 08:58:31 +03:00
relrelb 7bb2b5918f extension: Simplify `utils.ts`
In some cases, extension API abstraction objects can be assigned directly
with the equivalent extension API namespace. This reduces much trivial
code that just duplicates all the needed functions.

Also, extract `promisifyStorageArea` to share duplicate code between
the conversions of `chrome.storage.local` and `chrome.storage.sync`
(though `local` is not currently used).
2021-10-02 08:58:31 +03:00
relrelb a3acdac0f9 extension: Rename `tabSettings` to `tabOptions`
This aligns with the rest of the code that uses the term "options"
rather than "settings".
2021-10-02 08:58:31 +03:00
David Wendt f2e7457bc0 avm2: Move `QNameObject` specific methods behind an `as_qname_object` downcast. 2021-10-01 16:30:58 -06:00
David Wendt aaca3460d4 avm2: `QName` overrides `toString` and `valueOf` in both namespaces 2021-10-01 16:30:58 -06:00
David Wendt 513965b624 avm2: `Function.call` and `Function.apply` need to be accessible in the public namespace.
We should be able to move the AS3 versions to traits, but that breaks two other tests.
2021-10-01 16:30:58 -06:00
David Wendt 273872e2ab avm2: `Any` namespaces are represented as `*` in `QName`'s string form 2021-10-01 16:30:58 -06:00
David Wendt 294b0fc53e avm2: Impl `QName`'s constructor and properties 2021-10-01 16:30:58 -06:00
David Wendt 44b5536fb6 tests: Add tests for `QName`. 2021-10-01 16:30:58 -06:00
David Wendt 5387b1a4e0 avm2: Add stub boxed `QName` object type and class 2021-10-01 16:30:58 -06:00
Mike Welsh 3c642e6c44 chore: Add Doll Divine as sponsor 2021-10-01 14:56:00 -07:00
Chris Midgley 1d34a957c3 dev: update web packages 2021-10-01 22:52:08 +03:00
dependabot[bot] 0ceb03f08d build(deps-dev): bump typescript from 4.4.2 to 4.4.3 in /web
Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.4.2 to 4.4.3.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.4.2...v4.4.3)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-01 07:51:55 +03:00
dependabot[bot] 61e2c8b529 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 4.28.5 to 4.32.0.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v4.32.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-10-01 07:07:14 +03:00
dependabot[bot] 72b66944af build(deps-dev): bump ts-loader from 9.2.4 to 9.2.6 in /web
Bumps [ts-loader](https://github.com/TypeStrong/ts-loader) from 9.2.4 to 9.2.6.
- [Release notes](https://github.com/TypeStrong/ts-loader/releases)
- [Changelog](https://github.com/TypeStrong/ts-loader/blob/main/CHANGELOG.md)
- [Commits](https://github.com/TypeStrong/ts-loader/compare/v9.2.4...v9.2.6)

---
updated-dependencies:
- dependency-name: ts-loader
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-01 07:06:40 +03:00
dependabot[bot] edabb3c614 build(deps-dev): bump prettier from 2.3.2 to 2.4.1 in /web
Bumps [prettier](https://github.com/prettier/prettier) from 2.3.2 to 2.4.1.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/2.3.2...2.4.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-01 07:06:25 +03:00
dependabot[bot] 2d306865d6 build(deps-dev): bump typedoc from 0.21.9 to 0.22.4 in /web
Bumps [typedoc](https://github.com/TypeStrong/TypeDoc) from 0.21.9 to 0.22.4.
- [Release notes](https://github.com/TypeStrong/TypeDoc/releases)
- [Changelog](https://github.com/TypeStrong/typedoc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/TypeStrong/TypeDoc/compare/v0.21.9...v0.22.4)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-30 22:35:19 +03:00
dependabot[bot] bef03fcf2b build(deps-dev): bump @wdio/cli from 7.11.1 to 7.14.0 in /web
Bumps [@wdio/cli](https://github.com/webdriverio/webdriverio) from 7.11.1 to 7.14.0.
- [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.11.1...v7.14.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-30 22:35:04 +03:00
dependabot[bot] 4c146bc758 build(deps-dev): bump webpack-cli from 4.7.2 to 4.8.0 in /web
Bumps [webpack-cli](https://github.com/webpack/webpack-cli) from 4.7.2 to 4.8.0.
- [Release notes](https://github.com/webpack/webpack-cli/releases)
- [Changelog](https://github.com/webpack/webpack-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-cli/compare/webpack-cli@4.7.2...webpack-cli@4.8.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-30 22:34:50 +03:00
dependabot[bot] 73d5212d09 build(deps-dev): bump eslint from 7.29.0 to 7.32.0 in /web
Bumps [eslint](https://github.com/eslint/eslint) from 7.29.0 to 7.32.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v7.29.0...v7.32.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-09-30 22:06:28 +03:00
dependabot[bot] 497188fb45 build(deps-dev): bump @types/chrome from 0.0.154 to 0.0.158 in /web
Bumps [@types/chrome](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/chrome) from 0.0.154 to 0.0.158.
- [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-09-30 22:05:47 +03:00
dependabot[bot] b8efc1cd9b build(deps-dev): bump chromedriver from 92.0.2 to 94.0.0 in /web
Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 92.0.2 to 94.0.0.
- [Release notes](https://github.com/giggio/node-chromedriver/releases)
- [Commits](https://github.com/giggio/node-chromedriver/compare/92.0.2...94.0.0)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-30 21:35:02 +03:00
relrelb 05d8f13b26 audio: ADPCM small cleanup 2021-09-30 20:16:04 +03:00
relrelb b9307af78f audio: Move ADPCM's tables out of `AdpcmDecoder` 2021-09-30 20:16:04 +03:00
relrelb 50ec497c60 audio: Introduce `AdpcmDecoder::channels`
This reduces duplicated code.
2021-09-30 20:16:04 +03:00
relrelb 4deaaed75c audio: Inline `AdpcmDecoder::next_sample` 2021-09-30 20:16:04 +03:00
relrelb 99827caf2b audio: Localize `AdpcmDecoder::{left,right}_step`
Since they were used only in a single scope.
2021-09-30 20:16:04 +03:00
dependabot[bot] e5870a239f build(deps): bump instant from 0.1.10 to 0.1.11
Bumps [instant](https://github.com/sebcrozet/instant) from 0.1.10 to 0.1.11.
- [Release notes](https://github.com/sebcrozet/instant/releases)
- [Commits](https://github.com/sebcrozet/instant/compare/v0.1.10...v0.1.11)

---
updated-dependencies:
- dependency-name: instant
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-28 02:19:30 +03:00
dependabot[bot] 8c123c10af build(deps): bump syn from 1.0.76 to 1.0.77
Bumps [syn](https://github.com/dtolnay/syn) from 1.0.76 to 1.0.77.
- [Release notes](https://github.com/dtolnay/syn/releases)
- [Commits](https://github.com/dtolnay/syn/compare/1.0.76...1.0.77)

---
updated-dependencies:
- dependency-name: syn
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-28 01:27:10 +03:00
dependabot[bot] 5fe0994a3a build(deps): bump symphonia from 0.3.0 to 0.4.0
Bumps [symphonia](https://github.com/pdeljanov/Symphonia) from 0.3.0 to 0.4.0.
- [Release notes](https://github.com/pdeljanov/Symphonia/releases)
- [Commits](https://github.com/pdeljanov/Symphonia/compare/v0.3.0...v0.4.0)

---
updated-dependencies:
- dependency-name: symphonia
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-09-28 01:26:57 +03:00
Adrian Wielgosik 5ce2266be7 chore: clippy 2021-09-27 11:03:48 +02:00
Adrian Wielgosik 87625fa302 avm2: Change core types from Object to ClassObject where possible 2021-09-27 11:03:48 +02:00
Adrian Wielgosik 83b7420a3f avm2: Remove unneeded indirection from ClassObject methods 2021-09-27 11:03:48 +02:00
relrelb d5b223c1b3 extension: Add log level option 2021-09-26 07:57:37 +03:00
relrelb 1d324e81b0 web: Add stylelint to `npm run format` 2021-09-26 07:57:37 +03:00
David Wendt 2007b0e5c3 tests: Remove superfluous `^M` characters from ActionScript source 2021-09-25 16:54:36 -06:00
David Wendt 6753608e78 chore: Fix incorrect doccomment 2021-09-25 16:54:36 -06:00
David Wendt c299f63784 avm2: Implement object space enumeration.
This required making enumerants into `Value`s, rather than `QName`s.
2021-09-25 16:54:36 -06:00
David Wendt dbe9dffe0e avm2: Implement object-space overrides for `getproperty`, `setproperty`, `deleteproperty`, and `in`. 2021-09-25 16:54:36 -06:00
David Wendt 925604f730 avm2: Implement `DictionaryObject` and `Dictionary` 2021-09-25 16:54:36 -06:00
David Wendt 66ac5d0693 tests: Add tests for various operations on `Dictionary`. 2021-09-25 16:54:36 -06:00
relrelb eb51e9b59a ci: Bump KSXGitHub/github-actions-deploy-aur 2021-09-25 13:40:59 +03:00