Skip to content

Conversation

@pixelspark
Copy link
Contributor

@pixelspark pixelspark commented Dec 26, 2024

Purpose

For Synctrain I would like to create a virtual filesystem that exposes iOS' photo library. This can only be accessed through APIs.

In their fork MobiusSync have added a method ExtNewFileystem to a global ExtCallback object for the same purpose. My approach is a bit different in that it formally adds the custom fsType.

Testing

For all practical purposes a 'custom' FS is treated as a basic FS. The custom FS will have to conform to the Filesystem interface and all expected behaviour. Thorough testing will have to happen by users of this interface.

Screenshots

n/a

Documentation

Not a user visible change and not public API.

Possibly this interface should not be exposed through lib/filesystem but through lib/syncthing's Internals interface.

Authorship

Your name and email will be added automatically to the AUTHORS file
based on the commit metadata.

@pixelspark pixelspark force-pushed the feature/custom-fs-type branch from 1a1ad20 to d66dd26 Compare December 26, 2024 09:56
@imsodin
Copy link
Member

imsodin commented Dec 27, 2024

Meta question:
Are you using this repo or a fork for your app development? Or in other words, is progress blocked on this PR (and similar ones)?
I am asking because this is a conceptually big and risky change, where it's imo worth spending some effort on their design and implementation. At the same time your app is moving fast(er) and should be able to do so. Even for smaller changes, just by the nature of the two projects and their maintainers, I'll expect us (syncthing) to be significantly slower than you (sushitrain) in terms of development/reviews/... in general. That's why a "soft fork" dedicated to your app as a kind of staging ground might be a good idea (intended to be temporary). Even switching back and forth between syncthing and this separate repo is simple via a replace directive in your go.mod - no need to change source code/imports.

Onto the change itself. These are very much just initial, quick thoughts subject to change (and challenge) - please let me know what you think, but don't take them as gospel and I wouldn't recommend jumping into action right away :)

This is surprisingly low profile for what it does!

I like the approach of registering an extra filesystem. However I am not that happy about the hardcoded, single filesystem custom type with a non-descriptive name. It seems quite useful to be able to register multiple extra filesystems. E.g. for ios I could imagine that there's a new photos/media API in the future, and you might want to support both in parallel during a testing/migration time (or even longer term).
At first glance (aka very high probability of design issues or incorrect assumptions around implementation) it seems doable/reasonably simple to replace the int-enum like pattern we use right now for filesystem types with a string-identifier based pattern. I don't see us depending on the int-enum like properties currently (from a very quick scan, it even looks like we never use the int-enum characteristics at all, always convert to strings). I'd expect some utility functions in the config that control an internal map of filesystem types, and just return an error for inconsistent operations (unknown filesystem, registering a filesystem with an already existing name/identifier, ...). Those errors will always be bugs, and as such shouldn't add much complexity to handle (treating them as fatal).

Possibly this interface should not be exposed through lib/filesystem but through lib/syncthing's Internals interface.

I always imagined external filesystem implementations to be registered/passed via syncthing.App resp. syncthing.Options. However the syncthing.App constructor already takes a config object as an argument, and depends on the filesystem. So I think your approach of registering the custom filesystem separately seems more sensible. If anything it might make sense to integrate it with instantiating config, as there's some potential dependency/ordering constraint there. And it's always nice if the user can't get the order wrong there.
So my initial hunch is that this probably should be controlled in a chain starting at the syncthing package (maybe an optional option to config util functions), then config and that in the end interfaces with fs.

@pixelspark
Copy link
Contributor Author

Hi @imsodin, thanks for the elaborate reply!

Meta question: Are you using this repo or a fork for your app development? Or in other words, is progress blocked on this PR (and similar ones)?

Currently I am using this repo and rather not maintain my own fork. Progress on this specific feature (virtual photo FS) is blocked by this unless I fork. However, I do not have any deadline for this feature. If my app has to wait then so be it (put differently, it's not important enough for me to maintain my own fork over. Users are asking for a non-copy photo sync feature though and with this PR I wanted to get the first steps going).

I am asking because this is a conceptually big and risky change, where it's imo worth spending some effort on their design and implementation. At the same time your app is moving fast(er) and should be able to do so. Even for smaller changes, just by the nature of the two projects and their maintainers, I'll expect us (syncthing) to be significantly slower than you (sushitrain) in terms of development/reviews/... in general. That's why a "soft fork" dedicated to your app as a kind of staging ground might be a good idea (intended to be temporary). Even switching back and forth between syncthing and this separate repo is simple via a replace directive in your go.mod - no need to change source code/imports.

I think it would be very good to have this discussion and from my pov, I would rather use the 'final' interface rather than hack around it for now in a fork (because as stated above, this is not really a super important feature right now). Pace on my app's development is slowing down as well as most major features have been implemented by now.

What do you think is so risky about this change? In the current iteration, the only thing added is the 'custom' fsType, not much more. For end users the only difference is that when they set this specific fsType in regular Syncthing, they will get no error when configuration is validated but will get one when the FS is instantiated. As for the users of this feature through the Go interfaces directory (like myself): they already are taking a risk by doing so anyway... :-)

Onto the change itself. These are very much just initial, quick thoughts subject to change (and challenge) - please let me know what you think, but don't take them as gospel and I wouldn't recommend jumping into action right away :)

This is surprisingly low profile for what it does!

I like the approach of registering an extra filesystem. However I am not that happy about the hardcoded, single filesystem custom type with a non-descriptive name. It seems quite useful to be able to register multiple extra filesystems. E.g. for ios I could imagine that there's a new photos/media API in the future, and you might want to support both in parallel during a testing/migration time (or even longer term). At first glance (aka very high probability of design issues or incorrect assumptions around implementation) it seems doable/reasonably simple to replace the int-enum like pattern we use right now for filesystem types with a string-identifier based pattern. I don't see us depending on the int-enum like properties currently (from a very quick scan, it even looks like we never use the int-enum characteristics at all, always convert to strings). I'd expect some utility functions in the config that control an internal map of filesystem types, and just return an error for inconsistent operations (unknown filesystem, registering a filesystem with an already existing name/identifier, ...). Those errors will always be bugs, and as such shouldn't add much complexity to handle (treating them as fatal).

My thinking around this was that users of the API only really need one FS type to get going, as they can then use the URI to distinguish between their own different implementations in the factory function (and return an instance of the appropriate FS implementation based on e.g. URI scheme). Additionally not having the flexibility is easier because as you say, the enum currently is int-based.

Another option would simply be to add the ability to hook into FS creation for any fsType. So the user just specifies 'basic' as fsType, but the app can hook the function and substitute its own FS implementation when certain criteria are met (possibly based on the URI or some auxiliary config).

Possibly this interface should not be exposed through lib/filesystem but through lib/syncthing's Internals interface.

Agreed, and ideally, it should have a dumbed-down or wrapped version of the actual Filesystem interface as well (because as you say, that interface is internal as well as has its own assumptions/footguns). I simply didn't get to implementing it yet to find out what they are :-)

I always imagined external filesystem implementations to be registered/passed via syncthing.App resp. syncthing.Options. However the syncthing.App constructor already takes a config object as an argument, and depends on the filesystem. So I think your approach of registering the custom filesystem separately seems more sensible. If anything it might make sense to integrate it with instantiating config, as there's some potential dependency/ordering constraint there. And it's always nice if the user can't get the order wrong there. So my initial hunch is that this probably should be controlled in a chain starting at the syncthing package (maybe an optional option to config util functions), then config and that in the end interfaces with fs.

Hm, config only really needs to know the valid fsTypes, not much more. If (as per the current PR) there is just one custom type, the FS implementation doesn't need to be registered at all when loading the config. In this scenario I think the most straightforward implementation would be to add the FS factory function as a parameter in syncthing.Options.

If you really want to distinguish custom FS types by means of fsType then I agree at least the type needs to be registered before loading config (and then you might as well register the factory function).

Another idea would be to simply accept all FS types in config and error out when actually instantiating one that wasn't registered (through syncthing.Options) later on.

Finally with the 'just allow hooking FS creation' idea described above, nothing has to change in config and the only thing needed would be the ability to supply an optional hook function in syncthing.Options.

@pixelspark
Copy link
Contributor Author

@imsodin or others, do you have any new thoughts on this? I'd like to work on a new iteration of this but right now I'm just unsure of the desired direction.

The main questions (from my POV) are:

  1. Do we want a single 'custom' fstype (and let the host application figure out which one is intended if there are multiple) or multiple? Current PR implements just one type. My thinking is that these custom implementations are specific to an app anyway, so Syncthing itself should probably just have a minimal involvement (and this PR is pretty minimal).
  2. Do we want to expose the Filesystem interface in Internals? I think this is fine due to the 'no guarantees' status of Internals but I can also understand arguments against. We could add a (possibly simplified) proxy interface but it would increase overall complexity.
  3. Does this need to be in Syncthing core at all or should users (like me) just maintain a fork? I prefer not forking but you guys may prefer not having to deal with future headaches caused by this change 🙂

@calmh
Copy link
Member

calmh commented Mar 28, 2025

IMHO the mechanism should either be in Syncthing or not, and this is some sort of halfway measure between the two. By "in Syncthing" I mean something external could register a filesystem type and related callbacks/interfaces/whatnot, and then the config would also know to accept it.

@pixelspark pixelspark force-pushed the feature/custom-fs-type branch from d66dd26 to 369e1e7 Compare March 30, 2025 18:57
@pixelspark
Copy link
Contributor Author

pixelspark commented Mar 30, 2025

OK, so for the sake of discussion I have updated the PR as follows:

  • A factory function can be registered (as before), which now also takes an fs.FilesystemType
  • Both fs.FilesystemType as well as config.FileSystemType are now typedef string instead of int32
  • The NewFilesystem function constructs filesystems it knows about (basic and fake) and otherwise calls the factory

Some thoughts:

  • This is untested and still crude (e.g. the FilesystemType.String methods are a bit superfluous)
  • Should we have both fs.FilesystemType as well as config.FilesystemType anyway?
  • I think it may be cleaner to always call the factory and fall back to constructing the built-in types - this would also allow apps to 'inject' their own logic on top of the basic FS.
  • We could consider namespacing the custom FS types to allow Syncthing to define more built-in types in the future without possible collisions with users (although this still is part of the no-promises-whatsoever-internals-interface... so why bother). E.g. only call the factory when the fsType starts with custom. or similar.
  • FS types are not validated at 'config load time' as before - this now happens at the time an FS is actually constructed.

@pixelspark pixelspark force-pushed the feature/custom-fs-type branch 4 times, most recently from 600eccf to 538905e Compare March 31, 2025 19:27
@pixelspark
Copy link
Contributor Author

OK, so this now passes all the tests. The change is a bit more involved than the previous attempt, but quite manageable still. Curious to hear what you think.

@calmh
Copy link
Member

calmh commented Apr 1, 2025

I think this is moving the right direction. With this in mind, moving the filesystem types to strings, I think we can generalise further. A global method to register a filesystem type name + factory function, called at init time by the existing basic and fake types. When you add a new filesystem type you hook in accordingly, adding a type "ios-app-proxied" or whatever you want to call it and the corresponding implementation. Thus the existing implementations and your thing use the same mechanism to register and be instantiated... An unknown filesystem kind would become just a folder error, like the path being missing.

@pixelspark pixelspark force-pushed the feature/custom-fs-type branch from 538905e to 63a0698 Compare April 2, 2025 20:34
@pixelspark
Copy link
Contributor Author

OK, so how do you like this version with a type registry?

Copy link
Member

@calmh calmh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks nice, I have no problems with this approach

@pixelspark pixelspark force-pushed the feature/custom-fs-type branch from 63a0698 to ae0649e Compare April 2, 2025 21:40
@pixelspark
Copy link
Contributor Author

Good points, I've made some changes 👍

@pixelspark pixelspark force-pushed the feature/custom-fs-type branch from ae0649e to d8da604 Compare April 2, 2025 21:41
Copy link
Member

@calmh calmh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@calmh calmh changed the title feat(fs, config): add 'custom' fstype for construction by a custom factory function feat(fs, config): add support for custom filesystem type construction Apr 3, 2025
@calmh calmh merged commit f15d50c into syncthing:main Apr 3, 2025
24 checks passed
calmh added a commit that referenced this pull request Apr 3, 2025
* main:
  feat(fs, config): add support for custom filesystem type construction (#9887)
  build(deps): update dependencies (#10020)
@pixelspark pixelspark deleted the feature/custom-fs-type branch April 3, 2025 17:41
Hancock33 added a commit to Hancock33/batocera.piboy that referenced this pull request Apr 6, 2025
-------------------------------------------------------------------------------------
azahar.mk 950085904397daa4ea1dc8152073aeb2c577bfbf # Version: Commits on Apr 03, 2025
-------------------------------------------------------------------------------------
externals: Upgraded SDL2 to version 2.32.4

Closes #391,

-----------------------------------------------------------------------------------
cemu.mk c4eab08f308e33d6501550976943b701997a0036 # Version: Commits on Apr 03, 2025
-----------------------------------------------------------------------------------
Update vcpkg,

------------------------------------------------------------------------------------------
dolphin-emu.mk 61ab662733b8859f1e7d0712a536190234bea03f # Version: Commits on Apr 03, 2025
------------------------------------------------------------------------------------------
Merge pull request #13424 from Sam-Belliveau/granule-performance-improvements

AudioCommon: Increased Granule Synthesis Performance,

---------------------------------------------------------------------------------------------
dosbox-staging.mk 13441a29cda3a36306cc378b183bf2d499cc8c31 # Version: Commits on Mar 29, 2025
---------------------------------------------------------------------------------------------
Bump version to 0.82.1,

------------------------------------------------------------------------------------------
duckstation.mk 1332f6da72c49ba28bc2bc04d5a0bfb0bea7f89f # Version: Commits on Apr 03, 2025
------------------------------------------------------------------------------------------
Atualização Português do Brasil (#3397)

Atualizado para a última versão.,

--------------------------------------------------------------------------------------
openmsx.mk 9a0bbeb4a60ac354bcc449a03da745758f5bd9bc # Version: Commits on Apr 03, 2025
--------------------------------------------------------------------------------------
Upgrade to Dear ImGui version 1.91.9b (Released 2025-03-17),

----------------------------------------------------
pcsx2.mk v2.3.251 # Version: Commits on Apr 03, 2025
----------------------------------------------------
- [Debugger: Fix some theming issues](PCSX2/pcsx2#12453)

,

-------------------------------------------------------------------------------------
ppsspp.mk 5a6c9051f20d3b98289811c7492c8bc96aeb296e # Version: Commits on Apr 03, 2025
-------------------------------------------------------------------------------------
Merge pull request #20205 from hrydgard/implement-scereg

Implement sceReg,

----------------------------------------------------------
python-pyxel.mk v2.3.18 # Version: Commits on Apr 03, 2025
----------------------------------------------------------
Updated the WASM wheel to 2.3.18,

------------------------------------------------------------------------------------
rpcs3.mk 37dbd77628f44cdef3228bdfc03127365ec7383b # Version: Commits on Apr 02, 2025
------------------------------------------------------------------------------------
Update FAudio to 25.04,

---------------------------------------------------------------
ruffle.mk nightly-2025-04-03 # Version: Commits on Apr 03, 2025
---------------------------------------------------------------
## What's Changed

* avm2: Implement flash.globalization.StringTools with stubs by @kjarosh in ruffle-rs/ruffle#19995

**Full Changelog**: ruffle-rs/ruffle@nightly-2025-04-02...nightly-2025-04-03,

---------------------------------------------------------------------------------------------
solarus-engine.mk f9f57ccb2448410eb8259fe9c14f1e77508e4efc # Version: Commits on Apr 01, 2025
---------------------------------------------------------------------------------------------
Update changelog

---------------------------------------------------------------------------------------
thextech.mk 5f080ec8c095bcdfd814380e2c8d79c3f3f38cb9 # Version: Commits on Apr 03, 2025
---------------------------------------------------------------------------------------
block_table.hpp: de-duplicate object-generic logic,

-------------------------------------------------
vice.mk r45623 # Version: Commits on Apr 03, 2025
-------------------------------------------------
Joystick: Linux evdev: scan symlinks in /dev/input/by-id/

Rather than scanning /dev/input/ directly, we scan the symlinks generated by

udev in /dev/input/by-id/ and only process links ending in '-event-joystick'.

Will need testing if this on Debian specifically, or a general udev thing.

git-svn-id: https://svn.code.sf.net/p/vice-emu/code/trunk@45623 379a1393-f5fb-40a0-bcee-ef074d9b53f7,

--------------------------------------------------------------------------------------
pm_auto.mk 38d10a3421d6b5cd4f7579e554fbc58c02ea382d # Version: Commits on Apr 03, 2025
--------------------------------------------------------------------------------------
Add I2C power button detection thread,

-----------------------------------------------------------------------------------------
sdl3_mixer.mk b8e55ca55e496bcea0023417f1cefbfa9da303e7 # Version: Commits on Apr 03, 2025
-----------------------------------------------------------------------------------------
update vendored wavpack.,

------------------------------------------------------------------------------------
box64.mk 8da0fab6749c7a9191d07aa83e9d745d8a89d0bc # Version: Commits on Apr 03, 2025
------------------------------------------------------------------------------------
[LA64_DYNAREC] Optimize la64 MAXPD/MAXPS. (#2499)

Co-authored-by: phorcys <phorcys02@126.com>,

------------------------------------------------------------------------------------------
devilutionx.mk 3d7a8e8f4831c3f464f72a23b785446cb9c32d90 # Version: Commits on Apr 03, 2025
------------------------------------------------------------------------------------------
Upgrade SDL2 to 2.23.4

Upgrade includes build-from source, Android and VCPKG,

-----------------------------------------------------------------------------------
raze.mk 940e53af6fed5ed9f50f5495eac9d1fda42a6065 # Version: Commits on Apr 03, 2025
-----------------------------------------------------------------------------------
avoid type punning in TVector XY() and XYZ() methods.,

----------------------------------------------------------------------------------------
supertux2.mk 01aaaede18728ab01201a7b6092f84879d82f0d1 # Version: Commits on Apr 03, 2025
----------------------------------------------------------------------------------------
Small code style fixes,

-------------------------------------------------------------
syncthing.mk v2.0.0-beta.4 # Version: Commits on Apr 03, 2025
-------------------------------------------------------------
## Major changes

- Database backend switched from LevelDB to SQLite. These is a migration on first launch which can be lengthy for larger setups. The new database is easier to understand and maintain and, hopefully, less buggy.

- Deleted items are no longer kept forever in the database, instead they are forgotten after six months. If your use case require deletes to take effect after more than a six month delay, set the `--db-delete-retention-interval` command line option or corresponding environment variable to zero, or a longer time interval of your choosing.

- Modernised command line options parsing. Old single-dash long options are no longer supported, e.g. `-home` must be given as `--home`. All serve options are now also accepted as environment variables.

- Rolling hash detection of shifted data is no longer supported as this effectively never helped. Instead, scanning and syncing is faster and more efficient without it.

## What's Changed

* build(deps): update dependencies by @calmh in syncthing/syncthing#10020

* chore(db): increase journal limit to 64MiB by @bt90 in syncthing/syncthing#10022

* chore: forget deleted files older than six months (fixes #6284) by @calmh in syncthing/syncthing#10023

* fix(db): handle large numbers of blocks in update by @calmh in syncthing/syncthing#10025

* chore(db): use shorter read transactions and periodic checkpoint for smaller WAL by @calmh in syncthing/syncthing#10027

* fix(syncthing): make directory flags global for all commands by @calmh in syncthing/syncthing#10028

* chore: configurable delete retention interval by @calmh in syncthing/syncthing#10030

* feat(fs, config): add support for custom filesystem type construction by @pixelspark in syncthing/syncthing#9887

**Full Changelog**: syncthing/syncthing@v2.0.0-beta.3...v2.0.0-beta.4,

----------------------------------------------------------------------------------------
retroarch.mk 7a5fcd460d34971a28c153674072c761b0590ec7 # Version: Commits on Apr 02, 2025
----------------------------------------------------------------------------------------
Merge pull request #17764 from zoltanvb/qt_nonpng_display

Enable non-png thumbnails also for Qt interface.,

---------------------------------------------------------------------------------------
vpinball.mk c96c2c026f4a1ff397cb87bc6d15dc8e95bb2dc5 # Version: Commits on Jul 23, 2024
---------------------------------------------------------------------------------------
misc: standalone builds for macos, ios, tvos, android, linux, and rpi,

-------------------------------------------------------------------------------------
gzdoom.mk 6481f8cce909bc801f7544d67f2bf5f96cd01181 # Version: Commits on Apr 03, 2025
-------------------------------------------------------------------------------------
rewrote XY and XYZ accessors for vectors to be read-only and not use type punning.,

---------------------------------------------------------------------------------------
openlara.mk 3d4092c34ac2255c885b37fdb89aef961966fa9d # Version: Commits on Apr 03, 2025
---------------------------------------------------------------------------------------
Add the missing files for the GBA packer (#504)

* add libimagequant and stb_image_resize for the GBA packer

* add cygwin1.dll for ad4.exe,

-----------------------------------------------------------------------------------
tr1x.mk de1a63fc74d6b53270555d156ece9922c6890f88 # Version: Commits on Apr 03, 2025
-----------------------------------------------------------------------------------
tools: clean-up config tool build messages

This fixes VS messages regarding namespaces, removes some redundant

usings and SDK parameters, and adds XAML design data contexts.,

-----------------------------------------------------------------------------------
tr2x.mk de1a63fc74d6b53270555d156ece9922c6890f88 # Version: Commits on Apr 03, 2025
-----------------------------------------------------------------------------------
tools: clean-up config tool build messages

This fixes VS messages regarding namespaces, removes some redundant

usings and SDK parameters, and adds XAML design data contexts.,

-------------------------------------------------------------------------------------------------
libretro-picodrive.mk 1a08d73159820bb31941d8c5ed6242a74bd4b332 # Version: Commits on Apr 03, 2025
-------------------------------------------------------------------------------------------------
Merge pull request #242 from Jamiras/feature/32x_mem

expose additional 32x memory,

----------------------------------------------------------------------------------------------
libretro-ppsspp.mk 5a6c9051f20d3b98289811c7492c8bc96aeb296e # Version: Commits on Apr 03, 2025
----------------------------------------------------------------------------------------------
Merge pull request #20205 from hrydgard/implement-scereg

Implement sceReg,

-------------------------------------------------------------------------------------------
glsl-shaders.mk f3dc75a3bb57ac83801b3873617feecfb34d6c78 # Version: Commits on Apr 03, 2025
-------------------------------------------------------------------------------------------
Non integer scaling Shader for GBA + changes in LCD ghosting effect (#513)

* Refactor of luminance threshold logic

* non integer option and LCD ghosting change

Added a new non integer scaling shader for GBA and removed LCD ghosting by default due to errors

* Delete handheld/gameboy-dm-color directory

* new files,
@calmh calmh modified the milestones: v1.29.5, v1.29.6 Apr 8, 2025
Hancock33 added a commit to Hancock33/batocera.piboy that referenced this pull request Apr 20, 2025
--------------------------------------------------------------------------------------------------------
batocera-emulationstation.mk fb7b406cbaa444010577f445992777416bdddb38 # Version: Commits on Apr 08, 2025
--------------------------------------------------------------------------------------------------------
Merge pull request #1902 from Tartifless/master

Add VC4000 platform and screenscraper ID,

------------------------------------------------------------------------------------------------
batocera-es-piboy.mk fb7b406cbaa444010577f445992777416bdddb38 # Version: Commits on Apr 08, 2025
------------------------------------------------------------------------------------------------
Merge pull request #1902 from Tartifless/master

Add VC4000 platform and screenscraper ID,

-------------------------------------------------------------------------------------
azahar.mk 8d769ed9cb3935dce8193e07cda3f6e8dd855f52 # Version: Commits on Apr 08, 2025
-------------------------------------------------------------------------------------
Fix typo in README.md,

------------------------------------------------------------------------------------------
dolphin-emu.mk 01363572cbd6905e0427116fdf75fad66d99d81d # Version: Commits on Apr 08, 2025
------------------------------------------------------------------------------------------
Merge pull request #13483 from Sam-Belliveau/fixed_playback_speed

Use Doubles for Sample Rate Conversion,

------------------------------------------------------------------------------------------
duckstation.mk 182ba2aa7f516b7583b6a853ee3255cbf35bbf8c # Version: Commits on Apr 08, 2025
------------------------------------------------------------------------------------------
SPU: Devel build fix,

--------------------------------------------------------------------------------------
openmsx.mk 46d9f483c70f1d862bcacc5816dd580633e78847 # Version: Commits on Apr 08, 2025
--------------------------------------------------------------------------------------
better looking palette widget (#1886),

----------------------------------------------------
pcsx2.mk v2.3.261 # Version: Commits on Apr 08, 2025
----------------------------------------------------
- [Qt/Cheats: Add tooltip to cheat descriptions](PCSX2/pcsx2#12498)

,

-------------------------------------------------------------------------------------
ppsspp.mk 8d555d2820b0d9a0fb6523ae88506237da186117 # Version: Commits on Apr 08, 2025
-------------------------------------------------------------------------------------
Update the fixed IPs for MOHH to the current ones, oops.,

------------------------------------------------------------------------------------
rpcs3.mk 87d8bebd0d1b5ef2e10bc14d5c4f64cdd4d1e1a3 # Version: Commits on Apr 08, 2025
------------------------------------------------------------------------------------
PPU LLVM: Fixup MTFSF,

---------------------------------------------------------------
ruffle.mk nightly-2025-04-08 # Version: Commits on Apr 08, 2025
---------------------------------------------------------------
## What's Changed

* chore: Update translations by @RuffleBuild in ruffle-rs/ruffle#20018

* build(deps): bump the cargo-minor group with 8 updates by @dependabot in ruffle-rs/ruffle#20036

* chore: Fix errors of clippy beta by @kjarosh in ruffle-rs/ruffle#20006

* web: Improve navigator.plugins and navigator.mimeTypes so they can be used with JSON.stringify by @evilpie in ruffle-rs/ruffle#20033

* build(deps-dev): bump the npm-minor group in /web with 18 updates by @dependabot in ruffle-rs/ruffle#20042

**Full Changelog**: ruffle-rs/ruffle@nightly-2025-04-07...nightly-2025-04-08,

----------------------------------------------------
ryujinx.mk 1.3.30 # Version: Commits on Apr 07, 2025
----------------------------------------------------
# Canary builds:

These builds are experimental and may sometimes not work, use [regular builds](https://github.com/Ryubing/Canary-Releases/releases/latest) instead if that sounds like something you don't want to deal with.

| Platform | Artifact |

|--|--|

| Windows 64-bit | [Canary Windows Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.30/ryujinx-canary-1.3.30-win_x64.zip) |

| Windows ARM 64-bit | [Canary Windows ARM Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.30/ryujinx-canary-1.3.30-win_arm64.zip) |

| Linux 64-bit | [Canary Linux Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.30/ryujinx-canary-1.3.30-linux_x64.tar.gz) |

| Linux ARM 64-bit | [Canary Linux ARM Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.30/ryujinx-canary-1.3.30-linux_arm64.tar.gz) |

| macOS | [Canary macOS Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.30/ryujinx-canary-1.3.30-macos_universal.app.tar.gz) |

**[Full Changelog](https://git.ryujinx.app/ryubing/ryujinx/-/compare/66026934775c696c75bcf92b6e9771b7412f5ff2...Canary-1.3.30)**,

--------------------------------------------------------------------------------------
shadps4.mk 03b1fef3318ce5f972e9d1c3590556e556343345 # Version: Commits on Apr 08, 2025
--------------------------------------------------------------------------------------
renderer_vulkan: Only update dynamic state when changed. (#2751),

-------------------------------------------------------------------------------------
vita3k.mk 05690eb3441cc34ef03cdde4fc633db1b3c52a97 # Version: Commits on Jun 14, 2023
-------------------------------------------------------------------------------------
modules/SceVshBridge: Stub vshDisplayRegisterFrameBufCallback.,

-------------------------------------------------------------------------------------------
xenia-native.mk 47f327e848a5c1344ed30b40b085aa6bcb627e0a # Version: Commits on Apr 04, 2025
-------------------------------------------------------------------------------------------
[Misc] Replaced const with constexpr where possible,

-------------------------------------------------------------------------------------------
sdl12-compat.mk 1d3881a319ac2a61b502f9c8d895c6a19a658b8c # Version: Commits on Apr 06, 2025
-------------------------------------------------------------------------------------------
Revert \Rename sdl12_compat.pc to sdl.pc\

This is unnecessary, given that everyone uses pkgconf(1), which

fully supports the \Provides:\ stanza and expresses it in dependencies.

This reverts commit f10920239783dc09bd22f09bad69585cfce8a28d.,

-----------------------------------------------------------------------------------------
sdl3_mixer.mk a983517a91416abfbbab0301f1d04efaea5f77f7 # Version: Commits on Apr 08, 2025
-----------------------------------------------------------------------------------------
CI: linux workflows to run under ubuntu-latest.,

-------------------------------------------------------------------------------------------------
rtl8821au-morrownr.mk b90b76d30709fb82705cbc2e295a7dde9372a0a8 # Version: Commits on Apr 08, 2025
-------------------------------------------------------------------------------------------------
support for kernel 6.14,

------------------------------------------------------------------------------------
box64.mk d592c1996d74e9e6e728026486cdab6a75f43aaa # Version: Commits on Apr 08, 2025
------------------------------------------------------------------------------------
[WOW64] Add wow64 PE build scaffolding (#2513),

---------------------------------------------------------------------------------------
corsixth.mk 0cbc093290783c315f81f198e01e9d5699702326 # Version: Commits on Apr 08, 2025
---------------------------------------------------------------------------------------
Allow using the secondary marker (#2818)

* Rename the first marker to 'primary_marker'.

- Also add lua member methods that use 'PrimaryMarker'

* Rename animation_kind::child to animation_kind::primary_child

* Allow using the secondary marker for a child animation.

* Increment API version due to new  and modified functions,

-------------------------------------------------------------------------------------------
jazz2-native.mk 7c08cfbf342fce5f75c172883c039cbac7f21adb # Version: Commits on Apr 08, 2025
-------------------------------------------------------------------------------------------
Fixed build,

--------------------------------------------------------------------------------------
omf2097.mk d81dbb802ee9a227bb4fbc89c094949d601ed787 # Version: Commits on Apr 08, 2025
--------------------------------------------------------------------------------------
Merge branch 'lobby-new-text-renderer',

------------------------------------------------------------
syncthing.mk v1.29.5-rc.1 # Version: Commits on Apr 08, 2025
------------------------------------------------------------
## What's Changed

* chore(lib): expose model methods to obtain progress by @pixelspark in syncthing/syncthing#9886

* feat(gui): explanation to options enabled or disabled per folder type by @tomasz1986 in syncthing/syncthing#9367

* fix(gui): validate device ID in canonical form (fixes #7291) by @mathias4833 in syncthing/syncthing#10006

* fix(config): remove discontinued primary STUN server (fixes #10008) by @marbens-arch in syncthing/syncthing#10009

* fix(stun): better error handling (ref #10008) by @calmh in syncthing/syncthing#10010

* chore(config): remove discontinued secondary STUN servers (fixes #10011) by @marbens-arch in syncthing/syncthing#10012

* chore(fs): speed up case normalization by @bt90 in syncthing/syncthing#10013

* build(deps): update dependencies by @calmh in syncthing/syncthing#10020

* feat(fs, config): add support for custom filesystem type construction by @pixelspark in syncthing/syncthing#9887

* build: replace underscore in Debian version by @bt90 in syncthing/syncthing#10032

* chore(model): add metric for total number of conflicts by @swenske in syncthing/syncthing#10037

* fix(config): properly apply defaults when reading folder configuration by @pixelspark in syncthing/syncthing#10034

* fix(config): zero filesystemtype is \basic\ by @calmh in syncthing/syncthing#10038

* build: push artifacts to Azure by @calmh in syncthing/syncthing#10044

* chore(config): resolve primary STUN servers via SRV record by @bt90 in syncthing/syncthing#10031

* chore(fs): changes to allow Filesystem to be implemented externally by @pixelspark in syncthing/syncthing#10040

* fix(strings): differentiate setup(n) and set(v) up by @systemcrash in syncthing/syncthing#10024

## New Contributors

* @marbens-arch made their first contribution in syncthing/syncthing#10009

* @swenske made their first contribution in syncthing/syncthing#10037

* @systemcrash made their first contribution in syncthing/syncthing#10024

**Full Changelog**: syncthing/syncthing@v1.29.4...v1.29.5-rc.1,

----------------------------------------------------------------------------------------
retroarch.mk fbd05aa185d6db9b60f665001197940689b65b53 # Version: Commits on Apr 08, 2025
----------------------------------------------------------------------------------------
Fix very minor build warning (#17781),

-----------------------------------------------------------------------------------
tr1x.mk 2fb3824b3b94f2269a44b25b280d7198fad9086f # Version: Commits on Apr 08, 2025
-----------------------------------------------------------------------------------
items: handle null anims/frames for sprite objects

This ensures that sprite objects (or anything with no animation index

defined) are assigned a default animation and as such allows us to

handle null frames when getting item bounds. When Lara's animations are

injected, animation index 0 (which sprite objects would previously

default to) is no longer valid, hence sprites then pointing to a null

entry.,

-----------------------------------------------------------------------------------
tr2x.mk 2fb3824b3b94f2269a44b25b280d7198fad9086f # Version: Commits on Apr 08, 2025
-----------------------------------------------------------------------------------
items: handle null anims/frames for sprite objects

This ensures that sprite objects (or anything with no animation index

defined) are assigned a default animation and as such allows us to

handle null frames when getting item bounds. When Lara's animations are

injected, animation index 0 (which sprite objects would previously

default to) is no longer valid, hence sprites then pointing to a null

entry.,

-----------------------------------------------------------------------------------------------------
libretro-mame2003-plus.mk 605eaa0dbed92a98e742f06aa0d654d765a2e47e # Version: Commits on Apr 08, 2025
-----------------------------------------------------------------------------------------------------
Update rf5c68.c,

----------------------------------------------------------------------------------------------
libretro-ppsspp.mk 8d555d2820b0d9a0fb6523ae88506237da186117 # Version: Commits on Apr 08, 2025
----------------------------------------------------------------------------------------------
Update the fixed IPs for MOHH to the current ones, oops.,

--------------------------------------------------------------------------------------------
libretro-puae.mk 22711fe01b1cf8905a31f0fa074b77a0bcef5cfd # Version: Commits on Apr 08, 2025
--------------------------------------------------------------------------------------------
Remove deprecated zoom migration,

------------------------------------------------------------------------------------------------
libretro-puae2021.mk 591900d26012feac7f2ae38b68e242406e02172a # Version: Commits on Apr 08, 2025
------------------------------------------------------------------------------------------------
Remove deprecated zoom migration,

-----------------------------------------------------------------------------------------------
libretro-sameboy.mk 1cf84a5436c49413ae756c9e9c18ce71e96d7990 # Version: Commits on Apr 08, 2025
-----------------------------------------------------------------------------------------------
Ubuntu 20.04 is dead soon, replace with 22.04,

--------------------------------------------------------------------------------------------
libretro-vice.mk 65e30b0509c3e827651a0644c037df024c937cda # Version: Commits on Apr 08, 2025
--------------------------------------------------------------------------------------------
Remove deprecated zoom migration,

-------------------------------------------------------------------------------------
dhewm3.mk f3cd3f31d0c46e3dcc0f7e04930a441bb99b5a3a # Version: Commits on Apr 08, 2025
-------------------------------------------------------------------------------------
Fix weird printing to console that sometimes happened with listImages

It sometimes happened when changing image_* cvars for compression and

then vid_restarting and then running listImages.

In one case the whole process hung and len was a ridiculously big number

=> most probably the (unsigned!) size_t overflowed by subtracting a

number > len (most likely from input_field.GetCursor()).

So I just made it a plain signed int.

I couldn't reproduce the issue anymore after doing this change.,
Hancock33 added a commit to Hancock33/batocera.piboy that referenced this pull request Apr 23, 2025
---------------------------------------------------------------------------------------
applewin.mk f10966d684962ec5c157d82c72e8c7dff8041253 # Version: Commits on Apr 23, 2025
---------------------------------------------------------------------------------------
Merge pull request #264 from AppleWin/master

Help: Keyboard: add info about ALT+TAB (and the suppressed keyboard s…,

------------------------------------------------------------------------------------------
dolphin-emu.mk c44418a4d93385b622d2d4c180fd629d7314193a # Version: Commits on Apr 23, 2025
------------------------------------------------------------------------------------------
Merge pull request #13561 from JosJuice/android-renumbered-platforms

Android: Update platform enum values,

------------------------------------------------------------------------------------------
duckstation.mk 559f831c30c2422830facf42a3d42e82686be709 # Version: Commits on Apr 23, 2025
------------------------------------------------------------------------------------------
Achievements: Defer login/game identify until after RAIntegration load,

--------------------------------------------------------------------------------------
flycast.mk ef3d3bd2469df99c45678206bf273f3b9b3495e8 # Version: Commits on Apr 23, 2025
--------------------------------------------------------------------------------------
iOS: fix crash

due to f3a33642f882ed0a1683102d737df7d1c57a0e4d,

-------------------------------------------------------------------------------------
ikemen.mk 3969e6a0e6b636d855c88a414b7b117f66496a7a # Version: Commits on Apr 22, 2025
-------------------------------------------------------------------------------------
style: fix code style issues with gofmt,

--------------------------------------------------------------------------------------
openmsx.mk e9694d37193d9a87a86093ac0a216e96e8efc8f9 # Version: Commits on Apr 23, 2025
--------------------------------------------------------------------------------------
[2/2] Use the update wrapper functions to simplify the code,

----------------------------------------------------
pcsx2.mk v2.3.292 # Version: Commits on Apr 23, 2025
----------------------------------------------------
- [GS: Allow for widescreen and ultrawide patches to specify their target aspect ratio](PCSX2/pcsx2#12537)

,

-------------------------------------------------------------------------------------
ppsspp.mk 3f583ff5ab31c838568bca90321fc70de1e5990c # Version: Commits on Apr 22, 2025
-------------------------------------------------------------------------------------
Merge pull request #20286 from hrydgard/texture-replacement-mode

New setting: Texture replacement load speed,

------------------------------------------------------------------------------------
rpcs3.mk 1960b5a6051853950ede5ddd792db036225b392b # Version: Commits on Apr 23, 2025
------------------------------------------------------------------------------------
hotfix: fix parentheses when saving some files,

---------------------------------------------------------------
ruffle.mk nightly-2025-04-23 # Version: Commits on Apr 23, 2025
---------------------------------------------------------------
## What's Changed

* chore: Bump `http-proxy-middleware` version in `web/package-lock.json` by @torokati44 in ruffle-rs/ruffle#20243

**Full Changelog**: ruffle-rs/ruffle@nightly-2025-04-22...nightly-2025-04-23,

----------------------------------------------------
ryujinx.mk 1.3.34 # Version: Commits on Apr 23, 2025
----------------------------------------------------
# Canary builds:

These builds are experimental and may sometimes not work, use [regular builds](https://github.com/Ryubing/Stable-Releases/releases/latest) instead if that sounds like something you don't want to deal with.

| Platform | Artifact |

|--|--|

| Windows 64-bit | [Canary Windows Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.34/ryujinx-canary-1.3.34-win_x64.zip) |

| Windows ARM 64-bit | [Canary Windows ARM Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.34/ryujinx-canary-1.3.34-win_arm64.zip) |

| Linux 64-bit | [Canary Linux Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.34/ryujinx-canary-1.3.34-linux_x64.tar.gz) |

| Linux ARM 64-bit | [Canary Linux ARM Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.34/ryujinx-canary-1.3.34-linux_arm64.tar.gz) |

| macOS | [Canary macOS Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.34/ryujinx-canary-1.3.34-macos_universal.app.tar.gz) |

**[Full Changelog](https://git.ryujinx.app/ryubing/ryujinx/-/compare/Canary-1.3.33...Canary-1.3.34)**,

--------------------------------------------------------------------------------------
shadps4.mk 4ecdcf77d13dcac5562676f03638a28c71f272d2 # Version: Commits on Apr 23, 2025
--------------------------------------------------------------------------------------
build: Update MoltenVK ICD API version.,

-------------------------------------------------
vice.mk r45635 # Version: Commits on Apr 23, 2025
-------------------------------------------------
Joystick: DirectInput: simplify hat to joystick direction conversion

Rotate hat 22.5 degrees so we can do a simple table lookup for the joystick

directions: index := ((V + 2250 ) % 36000) / 4500.

git-svn-id: https://svn.code.sf.net/p/vice-emu/code/trunk@45635 379a1393-f5fb-40a0-bcee-ef074d9b53f7,

-----------------------------------------------------------------------------------
xemu.mk 89185e6937c7d597ba353bc4d4800dde0015ea39 # Version: Commits on Apr 22, 2025
-----------------------------------------------------------------------------------
nv2a/psh: Fix default alpha for unbound texture samplers,

-------------------------------------------------------------------------------------------
xenia-native.mk 2941b672d6001079b35bc20a390cc141cc18133e # Version: Commits on Apr 21, 2025
-------------------------------------------------------------------------------------------
[Kernel] Implemented NtFreeEncryptedMemory,

-------------------------------------------------------------------------------------------
pm_dashboard.mk 38e3fcff0734799cc86973bb3c4261e47fafc2df # Version: Commits on Apr 23, 2025
-------------------------------------------------------------------------------------------
add: add ups power failure simulation,

-----------------------------------------------------------------------------------------
sdl3_mixer.mk b3a6fa8b5ad183f0a1bad02527d89a00c3c90106 # Version: Commits on Apr 23, 2025
-----------------------------------------------------------------------------------------
update dr_mp3.h from mainstream.,

------------------------------------------------------------------------------------
box64.mk 69127efae94678801e0069fc29b49732a06211db # Version: Commits on Apr 23, 2025
------------------------------------------------------------------------------------
[ARM64_DYNAREC] Small fixes and improvments to (V)MOVMSKP[S/D] opcodes,

---------------------------------------------------------------------------------------
corsixth.mk ecbb17a0078a841f16a599205050cf75bfd2e94f # Version: Commits on Apr 23, 2025
---------------------------------------------------------------------------------------
Merge pull request #2816 from ARGAMX/queue-minor-refactoring

Queue minor refactoring,

--------------------------------------------------------------------------------------
omf2097.mk 91ec43b1a949a883da83ddeffaa2d54a94fb5fa7 # Version: Commits on Apr 23, 2025
--------------------------------------------------------------------------------------
Base frequency for sound effects is now correct (#1232)

* Base frequency for sound effects is now correct

* Deleted SOURCE_FREQUENCY

* Fix menu sounds

* Fix formatting,

----------------------------------------------------------------------------------------
supertux2.mk a2c3742c3a46590494c1dd038fa33343eceeffd5 # Version: Commits on Apr 22, 2025
----------------------------------------------------------------------------------------
Merge pull request #3233 from SuperTux/renderer-descriptions-sdl-default

Add readable names and descriptions for renderers, use SDL by default,

------------------------------------------------------------------------------------------------
libretro-mame-src.mk 9bf45902086d1f2df6f98daea450abccc3f3470c # Version: Commits on Apr 23, 2025
------------------------------------------------------------------------------------------------
Merge remote-tracking branch 'upstream/master',

----------------------------------------------
re2c.mk 4.2 # Version: Commits on Apr 23, 2025
----------------------------------------------
See [release notes](https://re2c.org/releases/release_notes.html#release-4-2) for details.,

------------------------------------------------------------
syncthing.mk v1.29.6-rc.2 # Version: Commits on Apr 23, 2025
------------------------------------------------------------
## What's Changed

* chore(lib): expose model methods to obtain progress by @pixelspark in syncthing/syncthing#9886

* feat(gui): explanation to options enabled or disabled per folder type by @tomasz1986 in syncthing/syncthing#9367

* fix(gui): validate device ID in canonical form (fixes #7291) by @mathias4833 in syncthing/syncthing#10006

* fix(config): remove discontinued primary STUN server (fixes #10008) by @marbens-arch in syncthing/syncthing#10009

* fix(stun): better error handling (ref #10008) by @calmh in syncthing/syncthing#10010

* chore(config): remove discontinued secondary STUN servers (fixes #10011) by @marbens-arch in syncthing/syncthing#10012

* chore(fs): speed up case normalization by @bt90 in syncthing/syncthing#10013

* build(deps): update dependencies by @calmh in syncthing/syncthing#10020

* feat(fs, config): add support for custom filesystem type construction by @pixelspark in syncthing/syncthing#9887

* build: replace underscore in Debian version by @bt90 in syncthing/syncthing#10032

* chore(model): add metric for total number of conflicts by @swenske in syncthing/syncthing#10037

* fix(config): properly apply defaults when reading folder configuration by @pixelspark in syncthing/syncthing#10034

* fix(config): zero filesystemtype is \basic\ by @calmh in syncthing/syncthing#10038

* build: push artifacts to Azure by @calmh in syncthing/syncthing#10044

* chore(config): resolve primary STUN servers via SRV record by @bt90 in syncthing/syncthing#10031

* chore(fs): changes to allow Filesystem to be implemented externally by @pixelspark in syncthing/syncthing#10040

* fix(strings): differentiate setup(n) and set(v) up by @systemcrash in syncthing/syncthing#10024

* fix(gui): mark unseen disconnected devices as inactive by @tomasz1986 in syncthing/syncthing#10048

* fix(syncthing): use separate lock file instead of locking the certificate (fixes #10053) by @calmh in syncthing/syncthing#10054

* feat(api, gui): allow authentication bypass for metrics by @swenske in syncthing/syncthing#10045

* chore: add missing copyright in new files from infra branch by @calmh in syncthing/syncthing#10055

* fix(osutil): give threads same I/O priority on Linux by @TheCreeper in syncthing/syncthing#10063

* chore(syncthing): remove support for TLS 1.2 sync connections by @calmh in syncthing/syncthing#10064

* chore(gui): update dependency copyrights, add script for periodic maintenance by @rasa in syncthing/syncthing#10067

* chore(api): log X-Forwarded-For by @bt90 in syncthing/syncthing#10035

* feat(config): add option for audit file (fixes #9481) by @marbens-arch in syncthing/syncthing#10066

## New Contributors

* @marbens-arch made their first contribution in syncthing/syncthing#10009

* @swenske made their first contribution in syncthing/syncthing#10037

* @systemcrash made their first contribution in syncthing/syncthing#10024

* @TheCreeper made their first contribution in syncthing/syncthing#10063

**Full Changelog**: syncthing/syncthing@v1.29.5...v1.29.6-rc.2,

----------------------------------------------------------------------------------------
retroarch.mk ab515cd22d2a0fdb1f22dfc93c62c63eb5a72eea # Version: Commits on Apr 23, 2025
----------------------------------------------------------------------------------------
Fetch translations from Crowdin,

---------------------------------------------------------------------------------------
vpinball.mk 38fc6e2759cdfd83341cb3a08a07b48fb13aba6d # Version: Commits on Jul 23, 2024
---------------------------------------------------------------------------------------
misc: standalone builds for macos, ios, tvos, android, linux, and rpi,

----------------------------------------------------------------------------------------
doomretro.mk 73847b6d9d39e3eac15ca80e2356a489fd0f1d1b # Version: Commits on Apr 23, 2025
----------------------------------------------------------------------------------------
Fix sector tinting when `r_textures` CVAR is `off`,

-----------------------------------------------------------------------------------
tr1x.mk 4d5040d15cf1bf180f7f863b43bebcad2bd20823 # Version: Commits on Apr 23, 2025
-----------------------------------------------------------------------------------
misc: fix build warnings,

-----------------------------------------------------------------------------------
tr2x.mk 4d5040d15cf1bf180f7f863b43bebcad2bd20823 # Version: Commits on Apr 23, 2025
-----------------------------------------------------------------------------------
misc: fix build warnings,

-----------------------------------------------------------------------------------------------
libretro-flycast.mk ef3d3bd2469df99c45678206bf273f3b9b3495e8 # Version: Commits on Apr 23, 2025
-----------------------------------------------------------------------------------------------
iOS: fix crash

due to f3a33642f882ed0a1683102d737df7d1c57a0e4d,

--------------------------------------------------------------------------------------------------
libretro-gearcoleco.mk a63f35420f10768e2f4f7f231352806fd990617f # Version: Commits on Apr 23, 2025
--------------------------------------------------------------------------------------------------
Locale independent write float in settings,

--------------------------------------------------------------------------------------------------
libretro-gearsystem.mk dc3ca9bcac5259847e54dbfd35a5f8c5f00f4dc9 # Version: Commits on Apr 23, 2025
--------------------------------------------------------------------------------------------------
Merge pull request #126 from alice-mkh/wip/alice/paddle-fix

Input: Initialize paddle as well,

--------------------------------------------------------------------------------------------
libretro-pc88.mk 42be798db5585f62b4bd34ce49dd1e8063c9d7c1 # Version: Commits on Apr 23, 2025
--------------------------------------------------------------------------------------------
fix function key mapping (#73),

----------------------------------------------------------------------------------------------
libretro-ppsspp.mk 3f583ff5ab31c838568bca90321fc70de1e5990c # Version: Commits on Apr 22, 2025
----------------------------------------------------------------------------------------------
Merge pull request #20286 from hrydgard/texture-replacement-mode

New setting: Texture replacement load speed,
Hancock33 added a commit to Hancock33/batocera.piboy that referenced this pull request May 4, 2025
-------------------------------------------------------------------------------------
azahar.mk 531031722769267a8bf0be1b010a058f62c2835b # Version: Commits on Apr 30, 2025
-------------------------------------------------------------------------------------
ci: Fixed EXTRA_CMAKE_FLAGS variable being set up incorrectly with tagged builds,

------------------------------------------------------------------------------------------
dolphin-emu.mk 852bd6df1af3c35c30df62253f59ced59a85c1f7 # Version: Commits on Apr 30, 2025
------------------------------------------------------------------------------------------
Merge pull request #13598 from AdmiralCurtiss/zstd157

Externals: Update zstd from 1.4.4 to 1.5.7,

--------------------------------------------------------------------------------------
flycast.mk 57cc7b4a60e6e8c1193f79b0ff30c7ddd2b02993 # Version: Commits on Apr 30, 2025
--------------------------------------------------------------------------------------
Fix crash on apple silicon due to cmake 4 change

The test to set TARGET_MAC doesn't work anymore with cmake 4.

Fixes #1918,

--------------------------------------------------------------------------------------
openmsx.mk 577f3ab535ee2f5286de8bcc35a89d5431c2f374 # Version: Commits on Apr 30, 2025
--------------------------------------------------------------------------------------
ROMDB Update - Added 82 roms - Introduced country code UN for Unknown.,

-------------------------------------------------------------------------------------
ppsspp.mk 777eae7398c7af293a7cb0aa01a95cf5eb9905dc # Version: Commits on Apr 30, 2025
-------------------------------------------------------------------------------------
Merge pull request #20305 from hrydgard/further-fixes

Fix exiting from framedump playback, some std::thread code cleanup,

------------------------------------------------------------------------------------
rpcs3.mk c792db2c6044e30079d3af916fab3e6be46f31a8 # Version: Commits on Apr 30, 2025
------------------------------------------------------------------------------------
CMake: Disable unit tests in gcc,

---------------------------------------------------------------
ruffle.mk nightly-2025-04-30 # Version: Commits on Apr 30, 2025
---------------------------------------------------------------
## What's Changed

* debug_ui: More frame list related improvements by @crumblingstatue in ruffle-rs/ruffle#20094

* video/openh264: Clean up comments a bit, also assert on number of SPSs by @torokati44 in ruffle-rs/ruffle#20296

* web/extension: Also add \debug\ and \trace\ log levels as options by @torokati44 in ruffle-rs/ruffle#20297

* chore: Update translations by @RuffleBuild in ruffle-rs/ruffle#20306

* core/render/web: replace uses of the `Downcast` trait with `Any` by @moulins in ruffle-rs/ruffle#20278

**Full Changelog**: ruffle-rs/ruffle@nightly-2025-04-29...nightly-2025-04-30,

--------------------------------------------------------------------------------------
scummvm.mk 8c3eecfdeaa5ddc2045caa57979ba8f812699b5c # Version: Commits on Jan 28, 2025
--------------------------------------------------------------------------------------
TWP: Thimbleweed Park should not close ScummVM if shaders are not supported

(cherry picked from commit 692eea97fa79f285f29af2de3b6d924e586a4786),

--------------------------------------------------------------------------------------
shadps4.mk bb59cd81fa68583dfa873c25bc24b97b49454d8c # Version: Commits on Apr 30, 2025
--------------------------------------------------------------------------------------
[Libs] sceNet (#2815)

* implemented sceNetGetMacAddress

* added all error codes

* added ORBIS_NET_CTL_INFO_DEVICE , ORBIS_NET_CTL_INFO_MTU

* RE sceNetConnect

* sceNetBind RE

* RE sceNetAccept

* RE sceNetGetpeername ,sceNetGetsockname

* fixup

* RE sceNetListen ,sceNetSetsockopt

* sceNetShutdown,sceNetSocket,sceNetSocketAbort,sceNetSocketClose

* sceSend,sceSendTo,sceSendMsg

* sceNetRecv,sceNetRecvFrom,sceNetRecvMsg RE

* some kernel net calls

* init winsock2

* logging

* sockets interface

* added winsock to SCE* error codes conversion

* implemented net basic calls

* some net calls implementation

* clang fixes

* fixes for linux+macOS

* more fix

* added sys_accept implementation

* more posix net calls

* implemented sys_getsockname

* fixed redirection

* fixed posix socket?

* posix_sendto , recvfrom

* added sys_socketclose

* unsigned error log

* added setsocketoptions

* added more posix net calls

* implement getsocketOptions

* stubbed p2p calls,

-----------------------------------------------------------------------------------
xemu.mk 6e513ed94812246cba3b17954f8da049bb41fbcb # Version: Commits on Apr 30, 2025
-----------------------------------------------------------------------------------
nv2a/psh: Fix 2D texture addressing in DOT_STR_3D mode,

-------------------------------------------------------------------------------------------
xenia-native.mk 9f8fad75512a071ba30fa5e9ca9b25f6149c6f2f # Version: Commits on Apr 27, 2025
-------------------------------------------------------------------------------------------
[3PP] Update Vulkan-Headers to v1.4.313,

------------------------------------------------------------------------------------
box64.mk ced115713230688aafe9b8c8025215bef79d6fcd # Version: Commits on Apr 30, 2025
------------------------------------------------------------------------------------
[ARM64_DYNAREC] Cosmetic change to VGATHER[D/Q]P[D/S] opcodes,

------------------------------------------------------------------------------------
cdogs.mk 74f5737ec1264ccacfff97c1eff98d7a5638a04c # Version: Commits on Apr 30, 2025
------------------------------------------------------------------------------------
Ostrich head #712,

-------------------------------------------------------------------------------------------
jazz2-native.mk 175d68c8c40170d7c169064328d305efe60b9eec # Version: Commits on Apr 30, 2025
-------------------------------------------------------------------------------------------
Round screens (part 8), updated Android manifest,

--------------------------------------------------------------------------------------
omf2097.mk c4d71680f993e4bd1771094ca6565201840d98df # Version: Commits on Apr 30, 2025
--------------------------------------------------------------------------------------
Enhancements will no longer override hyper/normal mode selector (#1263)

Enhancements now work in all game modes,

----------------------------------------------------------------------------------------
openmohaa.mk 0f38783f0deda6cc57082626bdd9585eb71b25fa # Version: Commits on Apr 30, 2025
----------------------------------------------------------------------------------------
Correctly indicate the status of the server list especially when multiple server lists are queried,

-----------------------------------------------------------------------------------
raze.mk fb4763666821e6ff93602bf5062bb3cdfadce124 # Version: Commits on Apr 30, 2025
-----------------------------------------------------------------------------------
Remove PrefersNonDefaultGPU from desktop file,

------------------------------------------------------------
syncthing.mk v2.0.0-rc.12 # Version: Commits on Apr 30, 2025
------------------------------------------------------------
## What's Changed

* chore(lib): expose model methods to obtain progress by @pixelspark in syncthing/syncthing#9886

* feat(gui): explanation to options enabled or disabled per folder type by @tomasz1986 in syncthing/syncthing#9367

* chore: remove abandoned next-gen-gui experiment by @calmh in syncthing/syncthing#10004

* chore: remove weak hashing which does not pull its weight by @calmh in syncthing/syncthing#10005

* chore: switch database engine to sqlite (fixes #9954) by @calmh in syncthing/syncthing#9965

* fix(gui): validate device ID in canonical form (fixes #7291) by @mathias4833 in syncthing/syncthing#10006

* fix(config): remove discontinued primary STUN server (fixes #10008) by @marbens-arch in syncthing/syncthing#10009

* fix(stun): better error handling (ref #10008) by @calmh in syncthing/syncthing#10010

* chore(config): remove discontinued secondary STUN servers (fixes #10011) by @marbens-arch in syncthing/syncthing#10012

* chore(fs): speed up case normalization by @bt90 in syncthing/syncthing#10013

* chore: harmonise command line flags by @calmh in syncthing/syncthing#10007

* build(deps): update dependencies by @calmh in syncthing/syncthing#10020

* chore(db): increase journal limit to 64MiB by @bt90 in syncthing/syncthing#10022

* chore: forget deleted files older than six months (fixes #6284) by @calmh in syncthing/syncthing#10023

* fix(db): handle large numbers of blocks in update by @calmh in syncthing/syncthing#10025

* chore(db): use shorter read transactions and periodic checkpoint for smaller WAL by @calmh in syncthing/syncthing#10027

* fix(syncthing): make directory flags global for all commands by @calmh in syncthing/syncthing#10028

* chore: configurable delete retention interval by @calmh in syncthing/syncthing#10030

* feat(fs, config): add support for custom filesystem type construction by @pixelspark in syncthing/syncthing#9887

* build: replace underscore in Debian version by @bt90 in syncthing/syncthing#10032

* chore(db): fix debug logging by @bt90 in syncthing/syncthing#10033

* chore(db): buffer pulled files for smaller WAL by @calmh in syncthing/syncthing#10036

* chore(model): add metric for total number of conflicts by @swenske in syncthing/syncthing#10037

* fix(config): properly apply defaults when reading folder configuration by @pixelspark in syncthing/syncthing#10034

* fix(config): zero filesystemtype is \basic\ by @calmh in syncthing/syncthing#10038

* chore(db): use one SQLite database per folder by @calmh in syncthing/syncthing#10042

* chore(model): delay starting a pull while there are incoming index updates by @calmh in syncthing/syncthing#10041

* build: push artifacts to Azure by @calmh in syncthing/syncthing#10044

* chore(config): resolve primary STUN servers via SRV record by @bt90 in syncthing/syncthing#10031

* chore(fs): changes to allow Filesystem to be implemented externally by @pixelspark in syncthing/syncthing#10040

* fix(strings): differentiate setup(n) and set(v) up by @systemcrash in syncthing/syncthing#10024

* fix(gui): mark unseen disconnected devices as inactive by @tomasz1986 in syncthing/syncthing#10048

* fix(sqlite): apply options by @pixelspark in syncthing/syncthing#10049

* fix(db): version vector serialisation :( by @calmh in syncthing/syncthing#10050

* fix(syncthing): use separate lock file instead of locking the certificate (fixes #10053) by @calmh in syncthing/syncthing#10054

* feat(api, gui): allow authentication bypass for metrics by @swenske in syncthing/syncthing#10045

* chore: add missing copyright in new files from infra branch by @calmh in syncthing/syncthing#10055

* fix(osutil): give threads same I/O priority on Linux by @TheCreeper in syncthing/syncthing#10063

* chore(syncthing): remove support for TLS 1.2 sync connections by @calmh in syncthing/syncthing#10064

* chore(gui): update dependency copyrights, add script for periodic maintenance by @rasa in syncthing/syncthing#10067

* chore(syncthing): remove \default\ folder concept by @calmh in syncthing/syncthing#10068

* chore(api): log X-Forwarded-For by @bt90 in syncthing/syncthing#10035

* feat(config): add option for audit file (fixes #9481) by @marbens-arch in syncthing/syncthing#10066

* fix(model): loop-break regression while block copying in puller by @imsodin in syncthing/syncthing#10069

* chore(gui): use go list --deps for dependency list by @rasa in syncthing/syncthing#10071

* fix(strelaysrv): make the session limiter session-dependent (fixes #10072) by @szu17dmy in syncthing/syncthing#10073

## New Contributors

* @marbens-arch made their first contribution in syncthing/syncthing#10009

* @swenske made their first contribution in syncthing/syncthing#10037

* @systemcrash made their first contribution in syncthing/syncthing#10024

* @TheCreeper made their first contribution in syncthing/syncthing#10063

* @szu17dmy made their first contribution in syncthing/syncthing#10073

**Full Changelog**: syncthing/syncthing@v1.29.5...v2.0.0-rc.12,

----------------------------------------------------------------------------------------------------
mupen64plus-audio-sdl.mk 12090cd8bcc7e8771eaf74a5e8e6d70e99b82dea # Version: Commits on Apr 30, 2025
----------------------------------------------------------------------------------------------------
Add header to define memset (#46)

This becomes necessary when compiling with sdl2-compat for sdl3.

Also for strcpy.,

-----------------------------------------------------------------------------------------------
mupen64plus-core.mk 32e9d93abc0acffb56fa39a66dba568224cb8066 # Version: Commits on Apr 30, 2025
-----------------------------------------------------------------------------------------------
Merge pull request #1119 from Rosalie241/register-mirroring

Implement register mirroring,

--------------------------------------------------------------------------------------------------
mupen64plus-rsp-hle.mk c5d3f9be00fd9944456bf43c4b2e1c50db8ae700 # Version: Commits on Apr 30, 2025
--------------------------------------------------------------------------------------------------
Merge pull request #92 from Morilli/update-gitignore

Update gitignore to include all build outputs,

-----------------------------------------------------------------------------------------------------
mupen64plus-ui-console.mk e64d3481ac81a5f882d5bdb83930d719ca68182c # Version: Commits on Apr 30, 2025
-----------------------------------------------------------------------------------------------------
Merge pull request #91 from dreua/stdlib-include

debugger: Add missing include,

-----------------------------------------------------------------------------------------------------------
mupen64plus-video-glide64mk2.mk 11263f60cea37ddc3b70a12cd94bc96a77b42654 # Version: Commits on Apr 30, 2025
-----------------------------------------------------------------------------------------------------------
Merge pull request #137 from dreua/include-order

Fix include order,

----------------------------------------------------------------------------------------
retroarch.mk 05f94af415cd94b84e76dbcbb7101f7c434bf9a2 # Version: Commits on Apr 30, 2025
----------------------------------------------------------------------------------------
Fetch translations from Crowdin,

----------------------------------------------------------------------------------------
doomretro.mk c2a4705bf5d643c56cd5e88a7b47721b95fbef0b # Version: Commits on Apr 30, 2025
----------------------------------------------------------------------------------------
Don't show console warning if missing texture is a colormap,

-----------------------------------------------------------------------------------
tr1x.mk 9277d64b88e7bc46a8f67ee49b4b7093dcac69dc # Version: Commits on Apr 28, 2025
-----------------------------------------------------------------------------------
tr1/output: fix unplayable visuals on old Radeons

Resolves #2840.,

-----------------------------------------------------------------------------------
tr2x.mk 9277d64b88e7bc46a8f67ee49b4b7093dcac69dc # Version: Commits on Apr 28, 2025
-----------------------------------------------------------------------------------
tr1/output: fix unplayable visuals on old Radeons

Resolves #2840.,

------------------------------------------------------------------------------------------
xash3d-fwgs.mk 47c484402467a3a74e1e56c57c97c3e253fee3ee # Version: Commits on Apr 30, 2025
------------------------------------------------------------------------------------------
engine: platform: sdl: enable building with SDL as old as 2.0.8, it should satisfy everybody masturbating to old software,

------------------------------------------------------------------------------------------------------
libretro-doublecherrygb.mk f03c3e4eff66fc755ebc2b8ed129a802d557a5b2 # Version: Commits on Apr 30, 2025
------------------------------------------------------------------------------------------------------
:ambulance: Fixed Pokemon Crash,

-----------------------------------------------------------------------------------------------
libretro-flycast.mk 57cc7b4a60e6e8c1193f79b0ff30c7ddd2b02993 # Version: Commits on Apr 30, 2025
-----------------------------------------------------------------------------------------------
Fix crash on apple silicon due to cmake 4 change

The test to set TARGET_MAC doesn't work anymore with cmake 4.

Fixes #1918,

----------------------------------------------------------------------------------------------
libretro-ppsspp.mk 777eae7398c7af293a7cb0aa01a95cf5eb9905dc # Version: Commits on Apr 30, 2025
----------------------------------------------------------------------------------------------
Merge pull request #20305 from hrydgard/further-fixes

Fix exiting from framedump playback, some std::thread code cleanup,

-----------------------------------------------------------------------------------------------
libretro-scummvm.mk 8c3eecfdeaa5ddc2045caa57979ba8f812699b5c # Version: Commits on Jan 28, 2025
-----------------------------------------------------------------------------------------------
TWP: Thimbleweed Park should not close ScummVM if shaders are not supported

(cherry picked from commit 692eea97fa79f285f29af2de3b6d924e586a4786),

--------------------------------------------------------------------------------------------
slang-shaders.mk d7fadfa87279711bf60786562f104eea0a4b1714 # Version: Commits on Apr 30, 2025
--------------------------------------------------------------------------------------------
Sync to koko-aio NG-1.9.70 (#699),
Hancock33 added a commit to Hancock33/batocera.piboy that referenced this pull request May 4, 2025
--------------------------------------------------
faudio.mk 25.05 # Version: Commits on May 01, 2025
--------------------------------------------------
New Features:

- Added CollectorEXT extension

Fixes:

- PlayBegin/PlayLength are now validated against AudioBytes

- SDL: Channel/Sample rate override are now queried with GetHint instead of getenv

Thanks to our [GitHub Sponsors](https://github.com/sponsors/flibitijibibo/), including...

Super Duper Sponsors:

- [Re-Logic](https://re-logic.com/)

Super Sponsors:

- @CDGKen

- @compcj

- @jbevain

- @kg

- @NoelFB

- @superjoebob

- @terinfire

- @TerryCavanagh

Sponsors:

- @bartwe

- @bwiklund

- @Conan-Kudo

- @Eldirans

- @GlaireDaggers

- @isaboll1

- @isadorasophia

- @larsiusprime

- @tgpholly

- @xxxbxxx

- [Bit Kid Games](http://bitkidgames.com/)

- [Lunar Ray Games](http://www.lunarraygames.com/),

--------------------------------------------------------------------------------------------------------
batocera-emulationstation.mk 7d5aff00f8ae10b2ceaed96751507082544532d1 # Version: Commits on May 01, 2025
--------------------------------------------------------------------------------------------------------
Merge pull request #1919 from fabricecaruso/win

[Theming] Fix : can't use shaders with relative paths with some elements (menuShader, fadeShader),

------------------------------------------------------------------------------------------------
batocera-es-piboy.mk 7d5aff00f8ae10b2ceaed96751507082544532d1 # Version: Commits on May 01, 2025
------------------------------------------------------------------------------------------------
Merge pull request #1919 from fabricecaruso/win

[Theming] Fix : can't use shaders with relative paths with some elements (menuShader, fadeShader),

----------------------------------------------------------------------------------
clk.mk e07e6b6954e82d76067fa16b1e6dbdc1c472dcd2 # Version: Commits on May 02, 2025
----------------------------------------------------------------------------------
Merge pull request #1507 from TomHarte/Morex86Exceptions

Reformulate x86 exceptions.,

------------------------------------------------------------------------------------------
dolphin-emu.mk 6515807685c608ac97ace6e0747b0a2529e9c917 # Version: Commits on May 02, 2025
------------------------------------------------------------------------------------------
Merge pull request #13278 from JoshuaVandaele/saves-import

Implement importing multiple saves from an export folder,

------------------------------------------------------------------------------------------
duckstation.mk ad13b17bea6558b916444d0eadcd615e85dd8b1a # Version: Commits on May 02, 2025
------------------------------------------------------------------------------------------
FullscreenUI: Fix slow fadeout on fast forward toggle,

--------------------------------------------------------------------------------------------
hypseus-singe.mk 64839aa9975f362f35686c8cec4041c477a8199c # Version: Commits on May 01, 2025
--------------------------------------------------------------------------------------------
release v2.11.5,

----------------------------------------------------
pcsx2.mk v2.3.313 # Version: Commits on May 01, 2025
----------------------------------------------------
- [UI: Remove fractional upscales](PCSX2/pcsx2#12588)

,

-------------------------------------------------------------------------------------
ppsspp.mk 81ceee829dc8aa16d0894e551afe7b2874b26a32 # Version: Commits on May 01, 2025
-------------------------------------------------------------------------------------
Merge pull request #20310 from hrydgard/revert-mediaengine-change

Revert some const changes,

------------------------------------------------------------------------------------
rpcs3.mk 7a9733dccafcbdf0ae48276e91de274b2557581b # Version: Commits on May 02, 2025
------------------------------------------------------------------------------------
CMake: try to fix gcc,

---------------------------------------------------------------
ruffle.mk nightly-2025-05-01 # Version: Commits on May 01, 2025
---------------------------------------------------------------
## What's Changed

* build(deps-dev): bump vite from 6.3.3 to 6.3.4 in /web by @dependabot in ruffle-rs/ruffle#20315

* core: Replace GcCell with Gc in Video by @kjarosh in ruffle-rs/ruffle#20289

* debug_ui: Add separators in the menu by @kjarosh in ruffle-rs/ruffle#20319

* build(deps): bump the cargo-minor group with 4 updates by @dependabot in ruffle-rs/ruffle#20317

* core: Replace GcCell with Gc in NetStream by @kjarosh in ruffle-rs/ruffle#20291

* core: Put some EditText properties in a Cell by @kjarosh in ruffle-rs/ruffle#20313

**Full Changelog**: ruffle-rs/ruffle@nightly-2025-04-30...nightly-2025-05-01,

--------------------------------------------------------------------------------------
scummvm.mk 39dfa54d7868fdf97d9b20149bf6791c9a577523 # Version: Commits on May 01, 2025
--------------------------------------------------------------------------------------
AGS: Update Old Skies / Gemini Rue

+ add a couple new games

Fix #15903,

--------------------------------------------------------------------------------------
shadps4.mk eb09c4ccce4ca6ab8ed08f9e53926c52dd52d8a5 # Version: Commits on May 02, 2025
--------------------------------------------------------------------------------------
vk_presenter: Use correct format for output frame image and view. (#2871),

---------------------------------------------------------------------------------------
thextech.mk fd8ca86c82fa3262b5d776ee81a2d49122bfb46e # Version: Commits on May 02, 2025
---------------------------------------------------------------------------------------
sound_16m.cpp: remove redundant and unused flags,

--------------------------------------------------------------------------------------
tsugaru.mk c1a860b625c1b873fcfcafc8d8c3f5548332e4e1 # Version: Commits on May 02, 2025
--------------------------------------------------------------------------------------
Sangokushi 2 test.,

-------------------------------------------------
vice.mk r45659 # Version: Commits on May 01, 2025
-------------------------------------------------
And another one...

git-svn-id: https://svn.code.sf.net/p/vice-emu/code/trunk@45659 379a1393-f5fb-40a0-bcee-ef074d9b53f7,

-------------------------------------------------------------------------------------
vita3k.mk 36b220eab60e8e6e43549902eb0e2c05bc41baf2 # Version: Commits on Apr 29, 2025
-------------------------------------------------------------------------------------
mem/ptr.h: Remove template for 'Ptr(U *, const MemState &)'

- `Ptr<T>::Ptr<U>(U *, const MemState &)` has redundant template, which allows code like `Ptr<int>::Ptr<char>(char *, const MemState &)` to pass compilation.,

-----------------------------------------------------------------------------------
xemu.mk d59386942947eb7ae3087548bd7e273974af20c4 # Version: Commits on May 01, 2025
-----------------------------------------------------------------------------------
nv2a: Move point params to uniforms

Co-authored-by: Matt Borgerson <contact@mborgerson.com>,

-----------------------------------------------------
ecm.mk v6.14.0-rc1 # Version: Commits on Apr 10, 2025
-----------------------------------------------------
Update dependency version to 6.14.0,

---------------------------------------------------------
kddocwidgets.mk v2.2.4 # Version: Commits on Apr 29, 2025
---------------------------------------------------------
chore: bump version and changelog,

------------------------------------------------------------------------------------
box64.mk 889dd64c5fca32b2d12e8ca622df199a7c932144 # Version: Commits on May 02, 2025
------------------------------------------------------------------------------------
[ARM64_DYNAREC] Fixed an issue introduced with fastnan=0 handling of SQRTSS (for #2593),

------------------------------------------------------------------------------------
cdogs.mk abe6e026b99cfb5ad18abd0d8ff8f4fd7e42f755 # Version: Commits on May 02, 2025
------------------------------------------------------------------------------------
Update character_classes.json,

---------------------------------------------------------------------------------------
corsixth.mk e45ceb454eacabcd2ff6dd68558fa0b72a6ee8cf # Version: Commits on May 01, 2025
---------------------------------------------------------------------------------------
afterload minor fix in earthquake.lua (#2841),

-------------------------------------------------------------------------------------------
jazz2-native.mk e4de1df1c8600a576142f9fcdb0f46bc5c07e987 # Version: Commits on May 01, 2025
-------------------------------------------------------------------------------------------
Enabled wrapping in console, fixed tilemap rollback,

---------------------------------------------------
nblood.mk r14222 # Version: Commits on Apr 30, 2025
---------------------------------------------------
,

----------------------------------------------------------------------------------------
openmohaa.mk a924fc252b1074a5ffc7dd5d99715f8ab0daf03c # Version: Commits on May 02, 2025
----------------------------------------------------------------------------------------
Use the hardware cursor in windowed mode (#718)

In windowed mode, the mouse is no longer grabbed when one of the UI/console catcher is active. When a UI menu is active, the system's hardware cursor is shown, using the game's custom cursor texture, instead of simulating and rendering the cursor in-game.

* Add exports to load a raw image from the renderer

* Set the hardware cursor to the game's custom mouse cursor texture

* When mouse is not grabbed, the mouse gets updated with absolute mouse position, relative to the window position,

----------------------------------------------------------------------------------
stk.mk f4d39befff7744d91bdc45b5bc417b61108c0883 # Version: Commits on May 02, 2025
----------------------------------------------------------------------------------
Update the changelog,

----------------------------------------------------------------------------------------
supertux2.mk 4dfe8e263709df452c2d6504885c99d7d4b9904b # Version: Commits on May 02, 2025
----------------------------------------------------------------------------------------
Small code style improvements,

-------------------------------------------------
btop.mk v1.4.2 # Version: Commits on May 01, 2025
-------------------------------------------------
## Changelog v1.4.2

References | Description | Author(s)

--- | --- | ---

f1482fe | Fix process arguments appearing outside proc box by replacing ASCII control codes with blankspace, issue #1080 | @aristocratos

#1130 | Fix problems shown by clang-tidy's performance checks | @imwints

#1120 | Fix wrong error message and documentation of renamed option --utf-force | @t-webber @imwints

#1128 | Flatten cmake module path | @imwints

#1129 | CMake: Remove option to use mold  | @imwints

#1047 | Update Terminus font link, fix typo, spelling, and grammar | @QinCai-rui

#929 | Please clang with sanitizers | @bad-co-de

#1126 | Fix MacOS tree-mode + aggregate memory/thread scaling issue | @xaskii

#993 | Fix typo: Mhz -> MHz | @NyCodeGHG

Big thanks to @imwints for helping out with project maintenance, PR reviews and merging!

**For additional binaries see the [Continuous Builds](https://github.com/aristocratos/btop/actions).**

**Linux binaries for each architecture are statically linked with musl and works on kernel 2.6.39 and newer.**

**No MacOs or BSD binaries provided for the moment.**

**Notice! None of the binaries have GPU support, compile yourself or wait for distribution packages for GPU monitoring support!**

**Notice! Use x86_64 for 64-bit x86 systems, i486 and i686 are 32-bit!**

,

----------------------------------------------------
rclone.mk v1.69.2 # Version: Commits on May 01, 2025
----------------------------------------------------
This is the v1.69.2 release of rclone.

Full details of the changes can be found in [the changelog](https://rclone.org/changelog/#v1-69-2-2025-05-01).

,

------------------------------------------------------------
syncthing.mk v2.0.0-rc.13 # Version: Commits on Apr 30, 2025
------------------------------------------------------------
## What's Changed

* chore(lib): expose model methods to obtain progress by @pixelspark in syncthing/syncthing#9886

* feat(gui): explanation to options enabled or disabled per folder type by @tomasz1986 in syncthing/syncthing#9367

* chore: remove abandoned next-gen-gui experiment by @calmh in syncthing/syncthing#10004

* chore: remove weak hashing which does not pull its weight by @calmh in syncthing/syncthing#10005

* chore: switch database engine to sqlite (fixes #9954) by @calmh in syncthing/syncthing#9965

* fix(gui): validate device ID in canonical form (fixes #7291) by @mathias4833 in syncthing/syncthing#10006

* fix(config): remove discontinued primary STUN server (fixes #10008) by @marbens-arch in syncthing/syncthing#10009

* fix(stun): better error handling (ref #10008) by @calmh in syncthing/syncthing#10010

* chore(config): remove discontinued secondary STUN servers (fixes #10011) by @marbens-arch in syncthing/syncthing#10012

* chore(fs): speed up case normalization by @bt90 in syncthing/syncthing#10013

* chore: harmonise command line flags by @calmh in syncthing/syncthing#10007

* build(deps): update dependencies by @calmh in syncthing/syncthing#10020

* chore(db): increase journal limit to 64MiB by @bt90 in syncthing/syncthing#10022

* chore: forget deleted files older than six months (fixes #6284) by @calmh in syncthing/syncthing#10023

* fix(db): handle large numbers of blocks in update by @calmh in syncthing/syncthing#10025

* chore(db): use shorter read transactions and periodic checkpoint for smaller WAL by @calmh in syncthing/syncthing#10027

* fix(syncthing): make directory flags global for all commands by @calmh in syncthing/syncthing#10028

* chore: configurable delete retention interval by @calmh in syncthing/syncthing#10030

* feat(fs, config): add support for custom filesystem type construction by @pixelspark in syncthing/syncthing#9887

* build: replace underscore in Debian version by @bt90 in syncthing/syncthing#10032

* chore(db): fix debug logging by @bt90 in syncthing/syncthing#10033

* chore(db): buffer pulled files for smaller WAL by @calmh in syncthing/syncthing#10036

* chore(model): add metric for total number of conflicts by @swenske in syncthing/syncthing#10037

* fix(config): properly apply defaults when reading folder configuration by @pixelspark in syncthing/syncthing#10034

* fix(config): zero filesystemtype is \basic\ by @calmh in syncthing/syncthing#10038

* chore(db): use one SQLite database per folder by @calmh in syncthing/syncthing#10042

* chore(model): delay starting a pull while there are incoming index updates by @calmh in syncthing/syncthing#10041

* build: push artifacts to Azure by @calmh in syncthing/syncthing#10044

* chore(config): resolve primary STUN servers via SRV record by @bt90 in syncthing/syncthing#10031

* chore(fs): changes to allow Filesystem to be implemented externally by @pixelspark in syncthing/syncthing#10040

* fix(strings): differentiate setup(n) and set(v) up by @systemcrash in syncthing/syncthing#10024

* fix(gui): mark unseen disconnected devices as inactive by @tomasz1986 in syncthing/syncthing#10048

* fix(sqlite): apply options by @pixelspark in syncthing/syncthing#10049

* fix(db): version vector serialisation :( by @calmh in syncthing/syncthing#10050

* fix(syncthing): use separate lock file instead of locking the certificate (fixes #10053) by @calmh in syncthing/syncthing#10054

* feat(api, gui): allow authentication bypass for metrics by @swenske in syncthing/syncthing#10045

* chore: add missing copyright in new files from infra branch by @calmh in syncthing/syncthing#10055

* fix(osutil): give threads same I/O priority on Linux by @TheCreeper in syncthing/syncthing#10063

* chore(syncthing): remove support for TLS 1.2 sync connections by @calmh in syncthing/syncthing#10064

* chore(gui): update dependency copyrights, add script for periodic maintenance by @rasa in syncthing/syncthing#10067

* chore(syncthing): remove \default\ folder concept by @calmh in syncthing/syncthing#10068

* chore(api): log X-Forwarded-For by @bt90 in syncthing/syncthing#10035

* feat(config): add option for audit file (fixes #9481) by @marbens-arch in syncthing/syncthing#10066

* fix(model): loop-break regression while block copying in puller by @imsodin in syncthing/syncthing#10069

* chore(gui): use go list --deps for dependency list by @rasa in syncthing/syncthing#10071

* fix(strelaysrv): make the session limiter session-dependent (fixes #10072) by @szu17dmy in syncthing/syncthing#10073

## New Contributors

* @marbens-arch made their first contribution in syncthing/syncthing#10009

* @swenske made their first contribution in syncthing/syncthing#10037

* @systemcrash made their first contribution in syncthing/syncthing#10024

* @TheCreeper made their first contribution in syncthing/syncthing#10063

* @szu17dmy made their first contribution in syncthing/syncthing#10073

**Full Changelog**: syncthing/syncthing@v2.0.0-rc.12...v2.0.0-rc.13,

----------------------------------------------------------------------------------------------------
sdl2-gamecontrollerdb.mk 3e8bebeabbde4dc86d58b8ee7e827b71e3d5d289 # Version: Commits on Apr 30, 2025
----------------------------------------------------------------------------------------------------
Correct 8BitDo GameCube Modkit GUID,

-----------------------------------------------------------------------------------
xone.mk 197b160f7806d7d27117b12198cacb7656a07f1f # Version: Commits on May 02, 2025
-----------------------------------------------------------------------------------
Merge pull request #53 from Lawstorant/fix-poweroff

Fix shutdown handling on Linux 6.11+,

----------------------------------------------------------------------------------------------------
mupen64plus-audio-sdl.mk c4c73745be1a59da7ac48c4adee517da8934be7c # Version: Commits on May 01, 2025
----------------------------------------------------------------------------------------------------
CI/CD: Update 2025.5 (#47),

-----------------------------------------------------------------------------------------------
mupen64plus-core.mk c5b1e72be0d2b33c18be48c989e726ac176e7872 # Version: Commits on May 02, 2025
-----------------------------------------------------------------------------------------------
Merge pull request #1136 from Rosalie241/is-style

Fix nits from IS viewer buffer overflow patch,

----------------------------------------------------------------------------------------------------
mupen64plus-input-sdl.mk 550cfe9c5fa985b8c092e122e9da8a578e8c9bba # Version: Commits on May 01, 2025
----------------------------------------------------------------------------------------------------
Merge pull request #135 from Jj0YzL5nvJ/up2025

CI/CD: Update 2025.5,

--------------------------------------------------------------------------------------------------
mupen64plus-rsp-hle.mk b6881507aeb419751bbc923366d06f08b6b398ae # Version: Commits on May 01, 2025
--------------------------------------------------------------------------------------------------
Merge pull request #93 from Jj0YzL5nvJ/up2025

CI/CD: Update 2025.5,

-----------------------------------------------------------------------------------------------------
mupen64plus-ui-console.mk 6d567d389f5887411bdcc063990d75810049e1c0 # Version: Commits on May 01, 2025
-----------------------------------------------------------------------------------------------------
Merge pull request #92 from Jj0YzL5nvJ/up2025

CI/CD: Update 2025.5,

-----------------------------------------------------------------------------------------------------------
mupen64plus-video-glide64mk2.mk a4687d60ccac82375036515031b684ba67365216 # Version: Commits on May 01, 2025
-----------------------------------------------------------------------------------------------------------
Merge pull request #139 from Jj0YzL5nvJ/up2025

CI/CD: Update 2025.5,

-----------------------------------------------------------------------------------------------------
mupen64plus-video-rice.mk 53c34795aa6257154dd8c5a657989cc91dcf912d # Version: Commits on May 01, 2025
-----------------------------------------------------------------------------------------------------
Merge pull request #112 from Jj0YzL5nvJ/up2025

CI/CD: Update 2025.5,

----------------------------------------------------------------------------------------
retroarch.mk 14c78b6c3231df4ce9049e5b035baf864bffd0df # Version: Commits on May 02, 2025
----------------------------------------------------------------------------------------
Fetch translations from Crowdin,

---------------------------------------------------------------------------------------------
vulkan-samples.mk 02d3010a3517620e7eedd919217e169c4a188de3 # Version: Commits on May 01, 2025
---------------------------------------------------------------------------------------------
In the Vulkan API, the timeout parameter of vkWaitForFences is of type uint64_t. If the API is expected to wait indefinitely (until the GPU signals the fence), the correct value to pass is UINT64_MAX (the maximum 64-bit unsigned integer), not the maximum 32-bit value (UINT32_MAX). (#1328),

------------------------------------------------------------------------------------
rmtfs.mk b61c22b1cd01f4b1f5f48192f0700aa398de31a3 # Version: Commits on May 02, 2025
------------------------------------------------------------------------------------
Merge pull request #23 from lumag/rmtfs-dir-no-qrtr-ns

rmtfs-dir.service.in: Remove dependency on qrtr-ns.service,

----------------------------------------------------------------------------------------
doomretro.mk 0937f9e8c63e89123e572282b5f0cad093498099 # Version: Commits on May 02, 2025
----------------------------------------------------------------------------------------
Minor tweaks,

-------------------------------------------------------------------------------------
gzdoom.mk 502af6adb9d00c6d9cc603bd9f5e11796f2eb7b8 # Version: Commits on May 02, 2025
-------------------------------------------------------------------------------------
SSECMF_DRAWN was being skipped for some cases, affecting texture automap drawing. See bug #3066.,

--------------------------------------------------------------------------------------
vkquake.mk 0a245da28c73a2c2eabc1a6da8f0993f5d7233c4 # Version: Commits on May 02, 2025
--------------------------------------------------------------------------------------
Prevent overflow in tasks epoch

May occur when running the game long enough,

-----------------------------------------------------------------------------------
tr1x.mk 85c77aaebfecf80d3e8bb279f24cbb0affc17fa9 # Version: Commits on May 02, 2025
-----------------------------------------------------------------------------------
items: consolidate Item_GetFrames

This updates TR1 to use the same approach as TR2 for determining

interpolation rate (denominator).,

-----------------------------------------------------------------------------------
tr2x.mk 85c77aaebfecf80d3e8bb279f24cbb0affc17fa9 # Version: Commits on May 02, 2025
-----------------------------------------------------------------------------------
items: consolidate Item_GetFrames

This updates TR1 to use the same approach as TR2 for determining

interpolation rate (denominator).,

--------------------------------------------------------------------------------------------
libretro-dice.mk e3a3e9c6c4a2d881f73fb165a05538467a839a46 # Version: Commits on May 02, 2025
--------------------------------------------------------------------------------------------
Fetch translations & Recreate libretro_core_options_intl.h,

------------------------------------------------------------------------------------------------------
libretro-doublecherrygb.mk a879b0129497a525a0b808b89b1df136a71a1824 # Version: Commits on May 02, 2025
------------------------------------------------------------------------------------------------------
Update README.md,

----------------------------------------------------------------------------------------------
libretro-fceumm.mk 3544ff567ecc417c170641587083b976739ef9db # Version: Commits on May 01, 2025
----------------------------------------------------------------------------------------------
Revert \Adjust turbo logic so that when a button gets pressed, it delays this state for 2 frames. Fix some games that requires certain frame count to read button states (Double Dragon, Xevious\

This reverts commit 0676a2092ad8255e697bc22f0020edecc65020f0.,

------------------------------------------------------------------------------------------------
libretro-gambatte.mk a85fe7c20933dbe4680d783d32639a71a85783cb # Version: Commits on May 02, 2025
------------------------------------------------------------------------------------------------
Fetch translations & Recreate libretro_core_options_intl.h,

-----------------------------------------------------------------------------------------------------
libretro-mame2003-plus.mk c1de17eb547a618b99754a3d708a07dd77a42021 # Version: Commits on May 02, 2025
-----------------------------------------------------------------------------------------------------
Add files via upload,

----------------------------------------------------------------------------------------------
libretro-ppsspp.mk 81ceee829dc8aa16d0894e551afe7b2874b26a32 # Version: Commits on May 01, 2025
----------------------------------------------------------------------------------------------
Merge pull request #20310 from hrydgard/revert-mediaengine-change

Revert some const changes,

-----------------------------------------------------------------------------------------------
libretro-scummvm.mk 39dfa54d7868fdf97d9b20149bf6791c9a577523 # Version: Commits on May 01, 2025
-----------------------------------------------------------------------------------------------
AGS: Update Old Skies / Gemini Rue

+ add a couple new games

Fix #15903,

--------------------------------------------------------------------------------------------
slang-shaders.mk 2a7c1e46ae9573302cf0c060413b33c94a1f9cfa # Version: Commits on May 01, 2025
--------------------------------------------------------------------------------------------
Add hybrid-jinc2-xbr-lv2 shaders (#700)

- At last got bilateral filter to combine jinc2 with xBR making a hybrid output;

- Posterization is reversed, because bilateral favors jinc2 on low gradient regions and xbr on high gradient ones.

- This approach can be used with any other edge smothing shader, though I couldn't get anything better than this.,
@calmh calmh added the enhancement New features or improvements of some kind, as opposed to a problem (bug) label May 29, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New features or improvements of some kind, as opposed to a problem (bug)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants