Skip to content

core: Add avm_warning for simulating traced FP warnings #20757

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Jun 20, 2025

Conversation

kjarosh
Copy link
Member

@kjarosh kjarosh commented Jun 18, 2025

Simulating traced Flash Player warnings improves our tests, because we can assert on certain code paths taken in our implementations.

@kjarosh kjarosh added A-tests Area: Tests & Test Framework T-compat Type: Compatibility with Flash Player labels Jun 18, 2025
@Dinnerbone
Copy link
Contributor

Hmmm! I'm not opposed to the idea but I have a few thoughts:

  1. Are the warnings the same across different FP versions, or will this complicate trying tests in FP?
  2. There's many warnings, I believe, that we've so far just ignored and not copied into tests/ruffle. We may start breaking tests as we implement them, which isn't a terribly bad thing but it is a bit of churn to be aware of
  3. I don't know if we should call this "avm warning", as it's usually a generic flash thing, not specific to avm (flash can spit out many warnings 😅)

@kjarosh
Copy link
Member Author

kjarosh commented Jun 18, 2025

Are the warnings the same across different FP versions, or will this complicate trying tests in FP?

I haven't personally noticed that warnings differ specifically between versions. It's totally possible, but it's also easy to verify and I'd argue that those warnings give us more insight into the implementation anyway.

There's many warnings, I believe, that we've so far just ignored and not copied into tests/ruffle. We may start breaking tests as we implement them, which isn't a terribly bad thing but it is a bit of churn to be aware of

Yeah, if a new warning is being implemented, we have to revisit failing tests and update outputs. That's an easy task though, it's enough to just rerun FP. Note that it applies only when implementing a new warning, so it doesn't negatively influence fixes and feature impls.

I don't know if we should call this "avm warning", as it's usually a generic flash thing, not specific to avm (flash can spit out many warnings 😅)

Do you have any suggestions?

@Dinnerbone
Copy link
Contributor

Do you have any suggestions?

Nope :D Just thinking aloud really, sorry!

kjarosh added 2 commits June 20, 2025 08:48
Simulating traced Flash Player warnings improves our tests, because
we can assert on certain code paths taken in our implementations.
@kjarosh kjarosh merged commit fb9bddd into ruffle-rs:master Jun 20, 2025
23 checks passed
@kjarosh kjarosh deleted the avm-warning branch June 20, 2025 14:51
Hancock33 added a commit to Hancock33/batocera.piboy that referenced this pull request Jun 21, 2025
------------------------------------------------------------------------------------------
duckstation.mk 3b90d18c6a0ba93f2362ec8dda273d5d2ab6e866 # Version: Commits on Jun 17, 2025
------------------------------------------------------------------------------------------
Qt: Fix return code confusion in AchievementLoginDialog

We were passing the wrong code to QDialog::done(). Qt defines 0 as Rejected

and 1 as Accepted. This had no practical impact because callers were also

using the inverted logic. The accepted()/rejected() signals were emitted

incorrectly but nothing is using them at the moment.

Still, to prevent further issues and improve code readability, flip the logic

and prefer accept()/reject() over done().,

--------------------------------------------------------------------------------------
flycast.mk 449d256995de36de0629dd1b97f4d67a0e50c92e # Version: Commits on Jun 20, 2025
--------------------------------------------------------------------------------------
Fetch translations & Recreate libretro_core_options_intl.h,

----------------------------------------------------
pcsx2.mk v2.3.430 # Version: Commits on Jun 21, 2025
----------------------------------------------------
- [GS/HW: Fix region area on new source + valid on clear](PCSX2/pcsx2#12870)

---------------------------------------------------------------
ruffle.mk nightly-2025-06-21 # Version: Commits on Jun 21, 2025
---------------------------------------------------------------
## What's Changed

* core: Add avm_warning for simulating traced FP warnings by @kjarosh in ruffle-rs/ruffle#20757

* core/render: support non-zero winding rule in shape hit tests by @moulins in ruffle-rs/ruffle#20799

**Full Changelog**: ruffle-rs/ruffle@nightly-2025-06-20...nightly-2025-06-21,

----------------------------------------------------
ryujinx.mk 1.3.95 # Version: Commits on Jun 21, 2025
----------------------------------------------------
Canary-1.3.95

--------------------------------------------------------------------------------------
shadps4.mk 8dcd9cc0f927468fc0d70850b259c121fafd14a9 # Version: Commits on Jun 20, 2025
--------------------------------------------------------------------------------------
KBM Input Bug Fixes / Added Binds v2 (#3109)

* fixed nonload issues with background music (#3094)

* Fixing my pull request branch

* Pull request change part 2

* Continued changes to project and altered kbm_help_dialog.h text to QStringLiterals

* Finalized commit and changed kbm_help_dialog.h

* KBM Input Bug Fixes / Added Binds

Fixed input issues where some inputs would not bind when pressing (side mouse buttons, some symbols, etc). Also, fixed up code formatting in altered files (removed C-style casts and replaced with C++ <static_casts>, added a few macros and one member functions).

This is v2 of my commit, addressing all issues brought up by @kalaposfos

* Updated C-style casts in kbm_gui.cpp

* Fixed formatting from clang-format

* Updated expendable sections location and changed order of appearance

* Merged PR #3098 into kbm_gui.cpp

* Updates from running clang-format

* Potential MacOS error fix

Changes std::string to std::string_view, which prevented MacOS from building

* Undid MacOS commit for new PR

* Revert \Undid MacOS commit for new PR\

This reverts commit fc376c5e1f82662d63fdb0c88f0e67ab4cc52fdf.

* Updated SDL_INVALID_ID=UINT32_MAX macro to SDL_UNMAPPED=UINT32_MAX-1

* Update from merge conflicts

Updated SDL_INVALID_ID=UINT32_MAX macro to SDL_UNMAPPED=UINT32_MAX-1

* FIxed memory.cpp errors from testing PR  #3117 (MacOS fixes)

* Removed \kp;\

* Fixed help dialogue from kalaposfos' changes

Fixed 3 edits made by kalaposfos from a recent commit.

---------

Co-authored-by: georgemoralis <[email protected]>,

-----------------------------------------------------------------------------------
xemu.mk 7d9739df4cf7c075b186e7d5835fae64f60b3df0 # Version: Commits on Jun 12, 2025
-----------------------------------------------------------------------------------
apu/vp: Make number of voice workers dynamic

Adds a new config option to control number of workers. If the value of

the option is 0 (default), then the logical CPU count, as reported by

SDL, is used.,

-------------------------------------------------------------------------------------------
xenia-native.mk fd1abfe6aa66b2348d9f93f8e5065def06b1a11d # Version: Commits on Jun 20, 2025
-------------------------------------------------------------------------------------------
[Lint/CI] Use LLVM v19 for Linux & Lint,

-----------------------------------------------------------------------------------
ymir.mk bab1d3932af787a0270369fa41e28798da9419c4 # Version: Commits on Jun 20, 2025
-----------------------------------------------------------------------------------
fix(VDP): Fix half-transparency sprite mode causing non-transparent sprites to disappear,

---------------------------------------------------------------------------------------
corsixth.mk 392971b14bf869881f028525f301f361a2e5ad90 # Version: Commits on Jun 21, 2025
---------------------------------------------------------------------------------------
Merge pull request #2923 from lewri/add-contributor

Add missed contributor,

-------------------------------------------------------------------------------------------
jazz2-native.mk 66e7151c5a3000d384b20160301207573ec292b0 # Version: Commits on Jun 20, 2025
-------------------------------------------------------------------------------------------
Minor changes,

----------------------------------------------------------------------------------------
openmohaa.mk 1c5a33f82a0175c3a2e4980ad8e6d44c5912e239 # Version: Commits on Jun 20, 2025
----------------------------------------------------------------------------------------
Gather usable entities based on the view position

This fixes an issue where leaning had no effect when trying to use entities.,

----------------------------------------------------------------------------------------
retroarch.mk dea40e01bc50cd3877aa66f8107365897715b1df # Version: Commits on Jun 21, 2025
----------------------------------------------------------------------------------------
Fetch translations from Crowdin,

----------------------------------------------------------------------------------------
doomretro.mk 4a726fa271d7f90defca93dc24d11de6c001b05e # Version: Commits on Jun 20, 2025
----------------------------------------------------------------------------------------
Implement `r_altmessages` CVAR

See #883. Thanks @Invictus812!,

-----------------------------------------------------------------------------------
tr1x.mk 6dc7c4763f1b3c33686e341300c603abd7b6769d # Version: Commits on Jun 19, 2025
-----------------------------------------------------------------------------------
stats: fix non-0 indexed secrets in TR1

Resolves #3262.,

-----------------------------------------------------------------------------------
tr2x.mk 6dc7c4763f1b3c33686e341300c603abd7b6769d # Version: Commits on Jun 19, 2025
-----------------------------------------------------------------------------------
stats: fix non-0 indexed secrets in TR1

Resolves #3262.,

-----------------------------------------------------------------------------------------------
libretro-flycast.mk 449d256995de36de0629dd1b97f4d67a0e50c92e # Version: Commits on Jun 20, 2025
-----------------------------------------------------------------------------------------------
Fetch translations & Recreate libretro_core_options_intl.h,
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-tests Area: Tests & Test Framework T-compat Type: Compatibility with Flash Player
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants