Kamil Jarosz
bb79e8ad5d
web: Close sockets properly
...
This patch ensures that sockets are closed properly.
Without it, when the application-end of the socket was closed,
the other end was left intact, and the socket was not closed.
2024-03-01 23:16:10 +01:00
renovate[bot]
6e84b05b66
fix(deps): update rust dependencies
2024-03-01 22:46:32 +01:00
TÖRÖK Attila
10fa4175c4
chore: Bump jpegxr and nellymoser-rs git references
2024-03-01 21:54:18 +01:00
Daniel Jacobs
9a7a92fd9e
web: Don't panic on browsers without ReadableStreamDefaultController
2024-03-01 13:26:38 -05:00
Kamil Jarosz
a0f2941a2e
desktop: Update winit to 0.29.12
...
This fixes critical crashes on X11
2024-03-01 12:10:37 +01:00
Crowdin Bot
4e87d34068
chore: Update translations from Crowdin
2024-03-01 11:15:11 +01:00
renovate[bot]
85e2e366f9
chore(deps): update node.js dependencies
2024-03-01 11:03:05 +01:00
Tom Schuster
a03355458f
desktop: Add gamepad support using gilrs
2024-02-28 21:21:09 +01:00
Tom Schuster
d07b154898
chore: add build dependency
2024-02-28 21:21:09 +01:00
Tom Schuster
0cea5a0a9e
core: Introduce gamepad button mapping support
2024-02-28 21:21:09 +01:00
Kamil Jarosz
9bc6700531
desktop: Get rid of busy waiting in connect_socket
...
This patch makes connect_socket await on recv
instead of spin and wake the CPU each 10 milliseconds.
2024-02-28 19:42:54 +01:00
Kamil Jarosz
f5d52272ca
desktop: Flush pending data before socket closes
...
This patch makes sure that any pending data is sent before
the socket closes. Without this fix Ruffle ignored the data sent
right before calling socket.close.
2024-02-28 19:42:54 +01:00
Kamil Jarosz
f6907a5c73
desktop: Add tests for connect_socket
...
Add tests for ExternalNavigatorBackend::connect_socket.
2024-02-28 19:42:54 +01:00
Kamil Jarosz
2535b926a7
desktop: Add WinitFutureSpawner
...
This improves testability, decouples ExternalNavigatorBackend
from the event loop, and improves readability.
Instead of passing a channel to send the future to and an event loop
to poll, a WinitFutureSpawner is created which performs the
action of spawning a future and polling the event loop.
2024-02-28 19:42:54 +01:00
Kamil Jarosz
cc8b0aa5dd
core: Use async channels in NavigatorBackend
...
This has several advantages:
1. it allows using async variants of send and recv,
2. it adds consistency as until now Receiver was async,
and Sender was not.
2024-02-28 19:42:54 +01:00
Aaron Hill
3e99dd3999
core: Use latest fluent-templates `master` for reproducible builds
2024-02-27 21:36:28 -05:00
Aaron Hill
900a8407d6
core: Implement lazy decoding of bitmaps
...
We hit a pathological case in House
(https://github.com/ruffle-rs/ruffle/issues/15154 ),
where eagerly decoding bitmaps during preloading results in
over 10GB of ram being used.
With this PR, we store the compressed bitmap, and only decode it
each time we instantiate it. In order to support bitmap fills,
we store the decoded width/height and a lazily-initialized GPU handle
in `Character::Bitmap`
2024-02-27 21:18:18 -05:00
TÖRÖK Attila
05fc77e8cd
ci: Turn off LTO, document the settings in the `ci` Cargo profile
...
And set the number of codegen units.
2024-02-28 00:20:47 +01:00
TÖRÖK Attila
a23ebb0366
ci: Actually enable incremental building (despite the default in rust-cache)
2024-02-28 00:20:47 +01:00
TÖRÖK Attila
a342232d5f
ci: Enable CARGO_NET_GIT_FETCH_WITH_CLI on Windows (and incidentally on Linux as well)
2024-02-28 00:20:47 +01:00
TÖRÖK Attila
893a4962de
build: Switch to linking with LLD on Windows
2024-02-28 00:20:47 +01:00
TÖRÖK Attila
ee0c1f42ff
core,avm2: Make Timer.setDelay not change the timer ID. Fix #15005 .
2024-02-27 23:56:33 +01:00
TÖRÖK Attila
e288375543
tests: Add a failing test for Timer.setDelay changing ID
2024-02-27 23:56:33 +01:00
Crowdin Bot
832f35e203
chore: Update translations from Crowdin
2024-02-27 22:51:33 +01:00
TÖRÖK Attila
e56a4597cc
desktop: chore: Update winit to 0.29.11
2024-02-27 22:43:59 +01:00
TÖRÖK Attila
12151f5125
ci: Add a dedicated Cargo profile, test with that
2024-02-26 08:42:24 +01:00
TÖRÖK Attila
f5a5705381
ci: Don't install rustfmt and clippy for the Rust tests job
...
This is leftover from https://github.com/ruffle-rs/ruffle/pull/15171
2024-02-26 08:42:24 +01:00
renovate[bot]
9cdb2f31cc
fix(deps): update rust dependencies
2024-02-26 08:14:26 +01:00
Lord-McSweeney
11d5a8f7df
avm2: Resolve reviews (no functional changes)
2024-02-25 21:52:24 -08:00
Lord-McSweeney
8542edf10c
avm2: Handle lazy multinames in optimizer
2024-02-25 21:52:24 -08:00
Lord-McSweeney
b637e5f108
avm2: Add a `popn` function to `Stack` and use it
2024-02-25 21:52:24 -08:00
Lord-McSweeney
4d8c98af0d
avm2: Don't use a `Class`'s first `ClassObject` for its VTable if more than one `ClassObject` had been constructed for the class
2024-02-25 21:52:24 -08:00
Lord-McSweeney
a763842b1b
avm2: Extract optimizer logic into a different file
2024-02-25 21:52:24 -08:00
Lord-McSweeney
ba9a975685
avm2: Add `push_raw` for faster stack pushes
2024-02-25 21:52:24 -08:00
Lord-McSweeney
b07c0a99ea
avm2: Also optimize `CallProperty` to `CallMethod` when possible
2024-02-25 21:52:24 -08:00
Lord-McSweeney
22117e3eb5
avm2: Add more ops to optimizer and let it use resolved argument types
2024-02-25 21:52:24 -08:00
Lord-McSweeney
4da708edb8
chore: appease clippy
2024-02-25 21:52:24 -08:00
Lord-McSweeney
e227576093
chore: cleanup
2024-02-25 21:52:24 -08:00
Lord-McSweeney
d7cebd020b
avm2: Support type inference for chained `GetProperty`s
2024-02-25 21:52:24 -08:00
Lord-McSweeney
8b19012123
avm2: Handle more ops in abstract optimizer
2024-02-25 21:52:24 -08:00
Lord-McSweeney
0cb0d4a6da
avm2: More advanced optimizer
2024-02-25 21:52:24 -08:00
TÖRÖK Attila
d2e854fb73
nit: desktop/navigator: Fix a typo in a comment: ownerhsip -> ownership
2024-02-22 21:14:41 +01:00
Kamil Jarosz
98c0dc4616
desktop: Prevent resource leak on reload
...
This patch makes TaskHandle reference the executor by a weak reference.
Prior to this change, there was a possibility of a resource leak, where
the executor, its tasks, and resources held by them were not properly
dropped due to existing references to the executor.
This manifested by e.g. unclosed sockets after reload, which required
the whole program to be restarted in order to be closed properly.
2024-02-21 21:45:01 -05:00
Nathan Adams
ea77019eab
web: Include wasm file in docker builds as Mozilla say this is okay, and it solves our reproducibility issues
2024-02-22 02:30:00 +01:00
Nathan Adams
6a548225f7
ci: Extend the docker test to include diffing against normal builds
2024-02-21 23:48:40 +01:00
dependabot[bot]
35630c3a2e
build(deps-dev): bump ip from 1.1.8 to 1.1.9 in /web
...
Bumps [ip](https://github.com/indutny/node-ip ) from 1.1.8 to 1.1.9.
- [Commits](https://github.com/indutny/node-ip/compare/v1.1.8...v1.1.9 )
---
updated-dependencies:
- dependency-name: ip
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
2024-02-21 00:42:08 +01:00
Crowdin Bot
00f1ce66ea
chore: Update translations from Crowdin
2024-02-21 00:26:15 +01:00
TÖRÖK Attila
2ffebcfc8a
chore: Run `cargo update`
2024-02-21 00:18:38 +01:00
Nathan Adams
30a0864329
web: Don't generate random name of wasm files in extension
2024-02-19 20:47:33 +01:00
renovate[bot]
6b89737093
fix(deps): update rust dependencies
2024-02-19 11:32:22 +01:00