-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
1.19.0 compressed tarball > 10MB bigger than 1.18.0 #16645
Comments
It's a fair point and something I'm not happy with either, but tldr, I'm not planning on doing anything about it. As a reference point, the 1.19.0 tgz file is approximately 64MB. A tgz file containing only MoltenVK.framework is 18MB. So, it is quite significant, but the tgz size is increased by less than 30%. There are a few options for how to bring MoltenVK in, but basically the permutations are: source or binary, bundled or external, and then potentially different decisions for repo vs tarball. Distributing source is not a great option: Building MoltenVK from source is mostly straightforward but very time consuming; moreover the source distribution for MoltenVK and its dependencies is roughly two orders of magnitude greater than 18MB compressed. That is complicated by the fact that our MoltenVK framework is actually two different versions of MoltenVK; we use an older version on tvOS because of incompatibilities in newer versions of MoltenVK with old versions of tvOS. Also we have custom patches on top of MoltenVK (to provide HDR support on iOS and tvOS using the pixel format we use) so just expecting the user to provide them will not work well. (Of course the source for MoltenVK is available for those who want it, but separately.) For the git repo, keeping the binary in the repo is again not great but adds a relatively insignificant overhead to the 738MB for a fresh clone. The binaries do not change regularly. Having the build system fetch them has caused problems for the CI system for similar related fetches in the past. And having them immediately available for people who just want to build RetroArch for macOS/iOS/tvOS keeps the build instructions simple (right now you only need to install Xcode, clone the source, and open the Xcode workspace; there's no confusion about how to install them so Xcode can find them). The lower barrier to entry is worthwhile in my opinion. (I'll note that other popular emulators like ppsspp have taken this approach as well.) For the tarball, this one I am a little bit more ambivalent to. It would be possible to have two tgz files: one without MoltenVK entirely, and the other either just MoltenVK or the combination of the two. I'm of the opinion that the simplicity of only having one source distribution that is complete for all platforms is beneficial and worth the cost of having that one tgz file be 30% bigger. Clearly there's a limit at which that conclusion changes and I understand each person might set that limit differently, but I'm comfortable with it as is and don't intend to address it. As a footnote, the increase from 1.18 to 1.19 was only 10MB even though MoltenVK is more than 18MB; this is because between the two versions, support for compiling for the iOS and tvOS simulators was added. The simulators are an invaluable development and debugging tool and iOS developers would naturally expect that the source distribution should work for the simulator. I don't consider any of the five platforms (macOS, iOS, iOS simulator, tvOS, tvOS simulator) less valuable or worthy of being included in the source distribution. |
in my opinion, binaries have no place in source code repositories, especially if they're used during the build - as in executed or linked in. this is quite contrary to the expectation of people trying to build such source code. they will probably not even be aware of having some preexisting binary code linked in or executed on their system - which could be malicious (mind you, i'm not suggesting you're deliberately planting malicious code, but the system you've been using to build those binaries could already have been infected). aside from the trust aspect, the size is the biggest issue. once in the git history, you'll never be able to remove them, unless you rewrite the history. even if the binaries are not expected to change often, they will have to at some point. we had this problem with the openbor svn repo, where a simple checkout was over 2gb because they had checked in complete toolchains, 7zip installers for windows and practically everything a windows user would need to compile the repo for any supported platform. having to fetch 2gb from a slow network is quite a high barrier to entry for a new contributor who just wants to contribute a patch. ppsspp is another case where an outrageous amount of data has to be fetched to compile from source, split overall several git submodules, including lots of prebuilt library code. now let's look at possible solutions:
i submitted such a CI job to ppsspp, because it was impossible to get a complete source snapshot without using a recursive git clone. the job is launched after creating a release, does a recursive git clone, then removes all known pre-built binaries and creates a tar.xz. |
as a test, i removed |
I agree with the sentiment, purely because I think one of the great appeals of RetroArch for new contributors is the ease of entry. I wouldn't be here weren't it for the relatively small size of the repository and griffin.c making it easy as pie to compile and run RetroArch without needing to trust some convoluted opaque build system I have never heard of. I like to keep things light, so back when github supported SVN as clients I used sparse checkout to remove the /pkg directory and a few more stuff not relevant to the platform I'm working on. Now that I'm forced to use git, I limited the amount of history cloned with # to ignore locally deleted files after cloning the repo and deleting the uninteresting files/directories:
git ls-files --deleted -z | git update-index --assume-unchanged -z --stdin Here's some big stuff in the RetroArch repo (of the total 227 MB ) not every developer needs:
Unused things like the large samples and documentation from SPIRV or userland should be wiped I think. The MoltenVK framework binaries for Apple platforms sure stand out. Would it somehow be possible to have them as source under /deps/ and compile it as needed? The source is probably also humongous but maybe smaller than binaries for 5 separate platforms. |
(Userland is for Raspberry Pi, see #15972, that is awaiting testing from someone who can check CRTSwitchRes operation) |
* (libretro-common) Some functions now return len * More string_list removal in menu_displaylist.c * (menu_displaylist.c) Get rid of more string_list usage * (playlist.c) Get rid of string_list usage * (menu) More string_list removal * file_archive_get_file_list_cb - remove string_list usage * (menu_cbs_title.c) Remove string_list usage * Include <compat/posix_string.h> for strtok_r MSVC compatibility * Slight change in header include * (archive_file) Don't know why this won't compile for MSVC - <compat/posix_string.h> gets included which should redefine strtok_r for MSVC usage but it just doesn't work and fails at linking stage, will have to figure this out later * Remove unused variables * (audio/common) Fix header includes * (menu_displaylist.c) More string_list removal * More string_list removal * Fetch translations from Crowdin * generic_action_ok_dropdown_setting - don't use string_list for ST_STRING_OPTIONS * Fix ST_STRING_OPTIONS 'selected' dropdown item - was off by one * Rewrite action_ok_rdb_entry_submenu - no more string_list usage * Rewrite 2 of action_ok_rdb_entry_submenu - now with less allocations * (gfx_animation.c) Small cleanups * (task_overlay.c) No more string_list usage * (task_overlay) remove unused variable * Replace some strlcat usage with strlcpy * Get rid of some unnecessary strlcat usage * (dylib.c) Avoid strlcat usage, camelcase variable name removal and C comments * (gfx_animation.c) Use strlcpy * Buildfix * iOS/tvOS: Add ardens and anarch cores to app store build * (RGUI) rgui_update_menu_sublabel - use strtok_r instead of string_list * (ozone) ozone_draw_osk - use strtok_r instead of string_list * (task_content.c) content_file_override_set - use strtok_r instead of string_list * Put comment back * (core_updater_list) replace string_list usage with strtok_r * (core_updater_list) Remove more string_list usage * Simplifications * input_config_get_bind_string - do proper character counting now, avoid strlcats, and have functions return size_t value indicating how many chars were written * (steam) avoid strlcat usage * task_save_handler - rewrite code - put string on stack instead of heap, avoid using strlcat * Cut down on strlcats * CI: add github workflow to create source-only release tarball closes libretro#16645 * Replace more strlcats * x11: add support for Xss screensaver disabling in case xdg-screensaver isn't installed. * Remove some header includes * (cheevos) Cleanups - only use snprintf for formatting * Fetch translations from Crowdin * Fullscreen refresh rate improvements Handle refresh rate as float in general, and add also extra attributes (interlaced, doublescan) for video modes. Make it possible to select exact mode (interlaced / doublescan modes will not be selected), and allow close matches such as 49.5 Hz for PAL 50 Hz. * Fix MSVC05 compilation failure * Fetch translations from Crowdin * (menu_cbs_deferred_push) Get rid of string_list usage * Simplify gfx_animation_line_ticker_smooth * add intfstream_truncate for file streams Will return 0 for non-file streams. I didn't want to mess around with memory_stream (which could in theory have a truncate impl that sets size) because there were globals and stuff and I got nervous (also truncate might *grow* a file if the new length is longer than the old one and then I'd have to think about realloc, etc). * change some replay file seeks to seek+truncates in record mode * tidy up intfstream_truncate ifdefs. * Fetch translations from Crowdin * [Wayland] Support for mouse buttons 4&5 and horizontal wheel * Fetch translations from Crowdin * Fetch translations from Crowdin * Fetch translations from Crowdin * (libretro-common) Use inline assembly for PowerPC libco This puts the code into the binary's .text section, which is needed for platforms without the ability to map it as RWX (WiiU). Using GNU/AT&T syntax for the assembly here. * Fix exclusive fullscreen condition Spotted in Android compilation: warning: bitwise or with non-zero value always evaluates to true [-Wtautological-bitwise-compare] * Fix keyboard events missing RETROKMOD_NUMLOCK or RETROKMOD_SCROLLOCK - Add missing numlock mod to dinput - Add missing scrolllock mod to x11 - Add missing capslock, numlock, scrolllock and meta mods to android - Add missing scrolllock mod to sdl - Add missing capslock, numlock, scrolllock and meta mods to switch - Add missing numlock mod to winraw - Add missing numlock mod to uwp * Add config values and menu items for viewport bias x/y * Refactor viewport handling/aspect ratio scaling. This mirrors the use of video_viewport_get_scaled_integer for non-integer scaling at various aspect ratios. Two variants are provided, one with implicit device and desired ratios and one with explicit ratios. Also added a flag to video_viewport_get_scaled_integer to indicate the direction of positive y. * Fix build errors on wiiu, directx * [X11] Support for mouse buttons 4 and 5 Support added for extra mouse buttons. Since these buttons were not returned by XQueryPointer(), some additional logic was needed which fit best to scroll wheel handling. * allow saves and configs to be optionally synced to cloud * ensure that all folders are enabled by default. * Fetch translations from Crowdin * (D3D8) Fix build * Silence warnings * (menu_cbs_ok.c) Some cleanups, warning fixes, use strtok_r instead of strtok * (glslang) use strtok_r instead of strtok * strtok_r - small syntactic cleanup * Add missing header * Flip default y positive direction for viewport calc This should fix metal and maybe some directx resizes * Use device ratio when determining portrait orientation * Fetch translations from Crowdin * Skip core unload when Quit on Close Content is set * Fix libretro#16562 support bluetooth keyboards on tvos * Fetch translations from Crowdin * Add header include for rhmap.h * Try to avoid strdup to avoid portability issues * Buildfix * Fetch translations from Crowdin * Android: Improvements to DocumentProvider Added move and rename methods Provider notifies viewer to refresh view when files are changed Bumped up TargetApi annotation for DocumentsContract.buildTreeDocumentUri. Could alternatively use androidx compat class. * Android: Remove External Storage permission * Android: Add function to migrate RetroArch folder from sdcard. * Improvements to migration code Will be squashed before commit * Revert "Improvements to migration code Will be squashed before commit" This reverts commit 3dab003. * Revert "Android: Add function to migrate RetroArch folder from sdcard." This reverts commit b7235e4. * Revert "Android: Remove External Storage permission" This reverts commit 850560d. * Revert "Android: Improvements to DocumentProvider Added move and rename methods Provider notifies viewer to refresh view when files are changed Bumped up TargetApi annotation for DocumentsContract.buildTreeDocumentUri. Could alternatively use androidx compat class." This reverts commit 72db301. * Fetch translations from Crowdin * Fetch translations from Crowdin * Fetch translations from Crowdin * (rhmap) use custom strdup * Fetch translations from Crowdin * Bump robinraju/release-downloader from 1.9 to 1.11 Bumps [robinraju/release-downloader](https://github.com/robinraju/release-downloader) from 1.9 to 1.11. - [Release notes](https://github.com/robinraju/release-downloader/releases) - [Commits](robinraju/release-downloader@v1.9...v1.11) --- updated-dependencies: - dependency-name: robinraju/release-downloader dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> * Bump actions/setup-java from 3 to 4 Bumps [actions/setup-java](https://github.com/actions/setup-java) from 3 to 4. - [Release notes](https://github.com/actions/setup-java/releases) - [Commits](actions/setup-java@v3...v4) --- updated-dependencies: - dependency-name: actions/setup-java dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]> * Bump actions/setup-python from 4 to 5 Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4 to 5. - [Release notes](https://github.com/actions/setup-python/releases) - [Commits](actions/setup-python@v4...v5) --- updated-dependencies: - dependency-name: actions/setup-python dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]> --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: libretroadmin <[email protected]> Co-authored-by: github-actions <[email protected]> Co-authored-by: Eric Warmenhoven <[email protected]> Co-authored-by: rofl0r <[email protected]> Co-authored-by: zoltanvb <[email protected]> Co-authored-by: zoltanvb <[email protected]> Co-authored-by: Joseph C. Osborn <[email protected]> Co-authored-by: Ash Logan <[email protected]> Co-authored-by: schellingb <[email protected]> Co-authored-by: Jay Paul <[email protected]> Co-authored-by: Jonathan Rascher <[email protected]> Co-authored-by: cwyc <[email protected]> Co-authored-by: LibretroAdmin <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* (libretro-common) Some functions now return len * More string_list removal in menu_displaylist.c * (menu_displaylist.c) Get rid of more string_list usage * (playlist.c) Get rid of string_list usage * (menu) More string_list removal * file_archive_get_file_list_cb - remove string_list usage * (menu_cbs_title.c) Remove string_list usage * Include <compat/posix_string.h> for strtok_r MSVC compatibility * Slight change in header include * (archive_file) Don't know why this won't compile for MSVC - <compat/posix_string.h> gets included which should redefine strtok_r for MSVC usage but it just doesn't work and fails at linking stage, will have to figure this out later * Remove unused variables * (audio/common) Fix header includes * (menu_displaylist.c) More string_list removal * More string_list removal * Fetch translations from Crowdin * generic_action_ok_dropdown_setting - don't use string_list for ST_STRING_OPTIONS * Fix ST_STRING_OPTIONS 'selected' dropdown item - was off by one * Rewrite action_ok_rdb_entry_submenu - no more string_list usage * Rewrite 2 of action_ok_rdb_entry_submenu - now with less allocations * (gfx_animation.c) Small cleanups * (task_overlay.c) No more string_list usage * (task_overlay) remove unused variable * Replace some strlcat usage with strlcpy * Get rid of some unnecessary strlcat usage * (dylib.c) Avoid strlcat usage, camelcase variable name removal and C comments * (gfx_animation.c) Use strlcpy * Buildfix * iOS/tvOS: Add ardens and anarch cores to app store build * (RGUI) rgui_update_menu_sublabel - use strtok_r instead of string_list * (ozone) ozone_draw_osk - use strtok_r instead of string_list * (task_content.c) content_file_override_set - use strtok_r instead of string_list * Put comment back * (core_updater_list) replace string_list usage with strtok_r * (core_updater_list) Remove more string_list usage * Simplifications * input_config_get_bind_string - do proper character counting now, avoid strlcats, and have functions return size_t value indicating how many chars were written * (steam) avoid strlcat usage * task_save_handler - rewrite code - put string on stack instead of heap, avoid using strlcat * Cut down on strlcats * CI: add github workflow to create source-only release tarball closes libretro#16645 * Replace more strlcats * x11: add support for Xss screensaver disabling in case xdg-screensaver isn't installed. * Remove some header includes * (cheevos) Cleanups - only use snprintf for formatting * Fetch translations from Crowdin * Fullscreen refresh rate improvements Handle refresh rate as float in general, and add also extra attributes (interlaced, doublescan) for video modes. Make it possible to select exact mode (interlaced / doublescan modes will not be selected), and allow close matches such as 49.5 Hz for PAL 50 Hz. * Fix MSVC05 compilation failure * Fetch translations from Crowdin * (menu_cbs_deferred_push) Get rid of string_list usage * Simplify gfx_animation_line_ticker_smooth * add intfstream_truncate for file streams Will return 0 for non-file streams. I didn't want to mess around with memory_stream (which could in theory have a truncate impl that sets size) because there were globals and stuff and I got nervous (also truncate might *grow* a file if the new length is longer than the old one and then I'd have to think about realloc, etc). * change some replay file seeks to seek+truncates in record mode * tidy up intfstream_truncate ifdefs. * Fetch translations from Crowdin * [Wayland] Support for mouse buttons 4&5 and horizontal wheel * Fetch translations from Crowdin * Fetch translations from Crowdin * Fetch translations from Crowdin * (libretro-common) Use inline assembly for PowerPC libco This puts the code into the binary's .text section, which is needed for platforms without the ability to map it as RWX (WiiU). Using GNU/AT&T syntax for the assembly here. * Fix exclusive fullscreen condition Spotted in Android compilation: warning: bitwise or with non-zero value always evaluates to true [-Wtautological-bitwise-compare] * Fix keyboard events missing RETROKMOD_NUMLOCK or RETROKMOD_SCROLLOCK - Add missing numlock mod to dinput - Add missing scrolllock mod to x11 - Add missing capslock, numlock, scrolllock and meta mods to android - Add missing scrolllock mod to sdl - Add missing capslock, numlock, scrolllock and meta mods to switch - Add missing numlock mod to winraw - Add missing numlock mod to uwp * Add config values and menu items for viewport bias x/y * Refactor viewport handling/aspect ratio scaling. This mirrors the use of video_viewport_get_scaled_integer for non-integer scaling at various aspect ratios. Two variants are provided, one with implicit device and desired ratios and one with explicit ratios. Also added a flag to video_viewport_get_scaled_integer to indicate the direction of positive y. * Fix build errors on wiiu, directx * [X11] Support for mouse buttons 4 and 5 Support added for extra mouse buttons. Since these buttons were not returned by XQueryPointer(), some additional logic was needed which fit best to scroll wheel handling. * allow saves and configs to be optionally synced to cloud * ensure that all folders are enabled by default. * Fetch translations from Crowdin * (D3D8) Fix build * Silence warnings * (menu_cbs_ok.c) Some cleanups, warning fixes, use strtok_r instead of strtok * (glslang) use strtok_r instead of strtok * strtok_r - small syntactic cleanup * Add missing header * Flip default y positive direction for viewport calc This should fix metal and maybe some directx resizes * Use device ratio when determining portrait orientation * Fetch translations from Crowdin * Skip core unload when Quit on Close Content is set * Fix libretro#16562 support bluetooth keyboards on tvos * Fetch translations from Crowdin * Add header include for rhmap.h * Try to avoid strdup to avoid portability issues * Buildfix * Fetch translations from Crowdin * Android: Improvements to DocumentProvider Added move and rename methods Provider notifies viewer to refresh view when files are changed Bumped up TargetApi annotation for DocumentsContract.buildTreeDocumentUri. Could alternatively use androidx compat class. * Android: Remove External Storage permission * Android: Add function to migrate RetroArch folder from sdcard. * Improvements to migration code Will be squashed before commit * Revert "Improvements to migration code Will be squashed before commit" This reverts commit 3dab003. * Revert "Android: Add function to migrate RetroArch folder from sdcard." This reverts commit b7235e4. * Revert "Android: Remove External Storage permission" This reverts commit 850560d. * Revert "Android: Improvements to DocumentProvider Added move and rename methods Provider notifies viewer to refresh view when files are changed Bumped up TargetApi annotation for DocumentsContract.buildTreeDocumentUri. Could alternatively use androidx compat class." This reverts commit 72db301. * Fetch translations from Crowdin * Fetch translations from Crowdin * Fetch translations from Crowdin * (rhmap) use custom strdup * Fetch translations from Crowdin * Bump robinraju/release-downloader from 1.9 to 1.11 Bumps [robinraju/release-downloader](https://github.com/robinraju/release-downloader) from 1.9 to 1.11. - [Release notes](https://github.com/robinraju/release-downloader/releases) - [Commits](robinraju/release-downloader@v1.9...v1.11) --- updated-dependencies: - dependency-name: robinraju/release-downloader dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> * Bump actions/setup-java from 3 to 4 Bumps [actions/setup-java](https://github.com/actions/setup-java) from 3 to 4. - [Release notes](https://github.com/actions/setup-java/releases) - [Commits](actions/setup-java@v3...v4) --- updated-dependencies: - dependency-name: actions/setup-java dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]> * Bump actions/setup-python from 4 to 5 Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4 to 5. - [Release notes](https://github.com/actions/setup-python/releases) - [Commits](actions/setup-python@v4...v5) --- updated-dependencies: - dependency-name: actions/setup-python dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]> --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: libretroadmin <[email protected]> Co-authored-by: github-actions <[email protected]> Co-authored-by: Eric Warmenhoven <[email protected]> Co-authored-by: rofl0r <[email protected]> Co-authored-by: zoltanvb <[email protected]> Co-authored-by: zoltanvb <[email protected]> Co-authored-by: Joseph C. Osborn <[email protected]> Co-authored-by: Ash Logan <[email protected]> Co-authored-by: schellingb <[email protected]> Co-authored-by: Jay Paul <[email protected]> Co-authored-by: Jonathan Rascher <[email protected]> Co-authored-by: cwyc <[email protected]> Co-authored-by: LibretroAdmin <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Build Bump
* (libretro-common) Some functions now return len * More string_list removal in menu_displaylist.c * (menu_displaylist.c) Get rid of more string_list usage * (playlist.c) Get rid of string_list usage * (menu) More string_list removal * file_archive_get_file_list_cb - remove string_list usage * (menu_cbs_title.c) Remove string_list usage * Include <compat/posix_string.h> for strtok_r MSVC compatibility * Slight change in header include * (archive_file) Don't know why this won't compile for MSVC - <compat/posix_string.h> gets included which should redefine strtok_r for MSVC usage but it just doesn't work and fails at linking stage, will have to figure this out later * Remove unused variables * (audio/common) Fix header includes * (menu_displaylist.c) More string_list removal * More string_list removal * Fetch translations from Crowdin * generic_action_ok_dropdown_setting - don't use string_list for ST_STRING_OPTIONS * Fix ST_STRING_OPTIONS 'selected' dropdown item - was off by one * Rewrite action_ok_rdb_entry_submenu - no more string_list usage * Rewrite 2 of action_ok_rdb_entry_submenu - now with less allocations * (gfx_animation.c) Small cleanups * (task_overlay.c) No more string_list usage * (task_overlay) remove unused variable * Replace some strlcat usage with strlcpy * Get rid of some unnecessary strlcat usage * (dylib.c) Avoid strlcat usage, camelcase variable name removal and C comments * (gfx_animation.c) Use strlcpy * Buildfix * iOS/tvOS: Add ardens and anarch cores to app store build * (RGUI) rgui_update_menu_sublabel - use strtok_r instead of string_list * (ozone) ozone_draw_osk - use strtok_r instead of string_list * (task_content.c) content_file_override_set - use strtok_r instead of string_list * Put comment back * (core_updater_list) replace string_list usage with strtok_r * (core_updater_list) Remove more string_list usage * Simplifications * input_config_get_bind_string - do proper character counting now, avoid strlcats, and have functions return size_t value indicating how many chars were written * (steam) avoid strlcat usage * task_save_handler - rewrite code - put string on stack instead of heap, avoid using strlcat * Cut down on strlcats * CI: add github workflow to create source-only release tarball closes libretro#16645 * Replace more strlcats * x11: add support for Xss screensaver disabling in case xdg-screensaver isn't installed. * Remove some header includes * (cheevos) Cleanups - only use snprintf for formatting * Fetch translations from Crowdin * Fullscreen refresh rate improvements Handle refresh rate as float in general, and add also extra attributes (interlaced, doublescan) for video modes. Make it possible to select exact mode (interlaced / doublescan modes will not be selected), and allow close matches such as 49.5 Hz for PAL 50 Hz. * Fix MSVC05 compilation failure * Fetch translations from Crowdin * (menu_cbs_deferred_push) Get rid of string_list usage * Simplify gfx_animation_line_ticker_smooth * add intfstream_truncate for file streams Will return 0 for non-file streams. I didn't want to mess around with memory_stream (which could in theory have a truncate impl that sets size) because there were globals and stuff and I got nervous (also truncate might *grow* a file if the new length is longer than the old one and then I'd have to think about realloc, etc). * change some replay file seeks to seek+truncates in record mode * tidy up intfstream_truncate ifdefs. * Fetch translations from Crowdin * [Wayland] Support for mouse buttons 4&5 and horizontal wheel * Fetch translations from Crowdin * Fetch translations from Crowdin * Fetch translations from Crowdin * (libretro-common) Use inline assembly for PowerPC libco This puts the code into the binary's .text section, which is needed for platforms without the ability to map it as RWX (WiiU). Using GNU/AT&T syntax for the assembly here. * Fix exclusive fullscreen condition Spotted in Android compilation: warning: bitwise or with non-zero value always evaluates to true [-Wtautological-bitwise-compare] * Fix keyboard events missing RETROKMOD_NUMLOCK or RETROKMOD_SCROLLOCK - Add missing numlock mod to dinput - Add missing scrolllock mod to x11 - Add missing capslock, numlock, scrolllock and meta mods to android - Add missing scrolllock mod to sdl - Add missing capslock, numlock, scrolllock and meta mods to switch - Add missing numlock mod to winraw - Add missing numlock mod to uwp * Add config values and menu items for viewport bias x/y * Refactor viewport handling/aspect ratio scaling. This mirrors the use of video_viewport_get_scaled_integer for non-integer scaling at various aspect ratios. Two variants are provided, one with implicit device and desired ratios and one with explicit ratios. Also added a flag to video_viewport_get_scaled_integer to indicate the direction of positive y. * Fix build errors on wiiu, directx * [X11] Support for mouse buttons 4 and 5 Support added for extra mouse buttons. Since these buttons were not returned by XQueryPointer(), some additional logic was needed which fit best to scroll wheel handling. * allow saves and configs to be optionally synced to cloud * ensure that all folders are enabled by default. * Fetch translations from Crowdin * (D3D8) Fix build * Silence warnings * (menu_cbs_ok.c) Some cleanups, warning fixes, use strtok_r instead of strtok * (glslang) use strtok_r instead of strtok * strtok_r - small syntactic cleanup * Add missing header * Flip default y positive direction for viewport calc This should fix metal and maybe some directx resizes * Use device ratio when determining portrait orientation * Fetch translations from Crowdin * Skip core unload when Quit on Close Content is set * Fix libretro#16562 support bluetooth keyboards on tvos * Fetch translations from Crowdin * Add header include for rhmap.h * Try to avoid strdup to avoid portability issues * Buildfix * Fetch translations from Crowdin * Android: Improvements to DocumentProvider Added move and rename methods Provider notifies viewer to refresh view when files are changed Bumped up TargetApi annotation for DocumentsContract.buildTreeDocumentUri. Could alternatively use androidx compat class. * Android: Remove External Storage permission * Android: Add function to migrate RetroArch folder from sdcard. * Improvements to migration code Will be squashed before commit * Revert "Improvements to migration code Will be squashed before commit" This reverts commit 3dab003. * Revert "Android: Add function to migrate RetroArch folder from sdcard." This reverts commit b7235e4. * Revert "Android: Remove External Storage permission" This reverts commit 850560d. * Revert "Android: Improvements to DocumentProvider Added move and rename methods Provider notifies viewer to refresh view when files are changed Bumped up TargetApi annotation for DocumentsContract.buildTreeDocumentUri. Could alternatively use androidx compat class." This reverts commit 72db301. * Fetch translations from Crowdin * Fetch translations from Crowdin * Fetch translations from Crowdin * (rhmap) use custom strdup * Fetch translations from Crowdin * Bump robinraju/release-downloader from 1.9 to 1.11 Bumps [robinraju/release-downloader](https://github.com/robinraju/release-downloader) from 1.9 to 1.11. - [Release notes](https://github.com/robinraju/release-downloader/releases) - [Commits](robinraju/release-downloader@v1.9...v1.11) --- updated-dependencies: - dependency-name: robinraju/release-downloader dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> * Bump actions/setup-java from 3 to 4 Bumps [actions/setup-java](https://github.com/actions/setup-java) from 3 to 4. - [Release notes](https://github.com/actions/setup-java/releases) - [Commits](actions/setup-java@v3...v4) --- updated-dependencies: - dependency-name: actions/setup-java dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]> * Bump actions/setup-python from 4 to 5 Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4 to 5. - [Release notes](https://github.com/actions/setup-python/releases) - [Commits](actions/setup-python@v4...v5) --- updated-dependencies: - dependency-name: actions/setup-python dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]> --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: libretroadmin <[email protected]> Co-authored-by: github-actions <[email protected]> Co-authored-by: Eric Warmenhoven <[email protected]> Co-authored-by: rofl0r <[email protected]> Co-authored-by: zoltanvb <[email protected]> Co-authored-by: zoltanvb <[email protected]> Co-authored-by: Joseph C. Osborn <[email protected]> Co-authored-by: Ash Logan <[email protected]> Co-authored-by: schellingb <[email protected]> Co-authored-by: Jay Paul <[email protected]> Co-authored-by: Jonathan Rascher <[email protected]> Co-authored-by: cwyc <[email protected]> Co-authored-by: LibretroAdmin <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Build Bump
* (libretro-common) Some functions now return len * More string_list removal in menu_displaylist.c * (menu_displaylist.c) Get rid of more string_list usage * (playlist.c) Get rid of string_list usage * (menu) More string_list removal * file_archive_get_file_list_cb - remove string_list usage * (menu_cbs_title.c) Remove string_list usage * Include <compat/posix_string.h> for strtok_r MSVC compatibility * Slight change in header include * (archive_file) Don't know why this won't compile for MSVC - <compat/posix_string.h> gets included which should redefine strtok_r for MSVC usage but it just doesn't work and fails at linking stage, will have to figure this out later * Remove unused variables * (audio/common) Fix header includes * (menu_displaylist.c) More string_list removal * More string_list removal * Fetch translations from Crowdin * generic_action_ok_dropdown_setting - don't use string_list for ST_STRING_OPTIONS * Fix ST_STRING_OPTIONS 'selected' dropdown item - was off by one * Rewrite action_ok_rdb_entry_submenu - no more string_list usage * Rewrite 2 of action_ok_rdb_entry_submenu - now with less allocations * (gfx_animation.c) Small cleanups * (task_overlay.c) No more string_list usage * (task_overlay) remove unused variable * Replace some strlcat usage with strlcpy * Get rid of some unnecessary strlcat usage * (dylib.c) Avoid strlcat usage, camelcase variable name removal and C comments * (gfx_animation.c) Use strlcpy * Buildfix * iOS/tvOS: Add ardens and anarch cores to app store build * (RGUI) rgui_update_menu_sublabel - use strtok_r instead of string_list * (ozone) ozone_draw_osk - use strtok_r instead of string_list * (task_content.c) content_file_override_set - use strtok_r instead of string_list * Put comment back * (core_updater_list) replace string_list usage with strtok_r * (core_updater_list) Remove more string_list usage * Simplifications * input_config_get_bind_string - do proper character counting now, avoid strlcats, and have functions return size_t value indicating how many chars were written * (steam) avoid strlcat usage * task_save_handler - rewrite code - put string on stack instead of heap, avoid using strlcat * Cut down on strlcats * CI: add github workflow to create source-only release tarball closes libretro#16645 * Replace more strlcats * x11: add support for Xss screensaver disabling in case xdg-screensaver isn't installed. * Remove some header includes * (cheevos) Cleanups - only use snprintf for formatting * Fetch translations from Crowdin * Fullscreen refresh rate improvements Handle refresh rate as float in general, and add also extra attributes (interlaced, doublescan) for video modes. Make it possible to select exact mode (interlaced / doublescan modes will not be selected), and allow close matches such as 49.5 Hz for PAL 50 Hz. * Fix MSVC05 compilation failure * Fetch translations from Crowdin * (menu_cbs_deferred_push) Get rid of string_list usage * Simplify gfx_animation_line_ticker_smooth * add intfstream_truncate for file streams Will return 0 for non-file streams. I didn't want to mess around with memory_stream (which could in theory have a truncate impl that sets size) because there were globals and stuff and I got nervous (also truncate might *grow* a file if the new length is longer than the old one and then I'd have to think about realloc, etc). * change some replay file seeks to seek+truncates in record mode * tidy up intfstream_truncate ifdefs. * Fetch translations from Crowdin * [Wayland] Support for mouse buttons 4&5 and horizontal wheel * Fetch translations from Crowdin * Fetch translations from Crowdin * Fetch translations from Crowdin * (libretro-common) Use inline assembly for PowerPC libco This puts the code into the binary's .text section, which is needed for platforms without the ability to map it as RWX (WiiU). Using GNU/AT&T syntax for the assembly here. * Fix exclusive fullscreen condition Spotted in Android compilation: warning: bitwise or with non-zero value always evaluates to true [-Wtautological-bitwise-compare] * Fix keyboard events missing RETROKMOD_NUMLOCK or RETROKMOD_SCROLLOCK - Add missing numlock mod to dinput - Add missing scrolllock mod to x11 - Add missing capslock, numlock, scrolllock and meta mods to android - Add missing scrolllock mod to sdl - Add missing capslock, numlock, scrolllock and meta mods to switch - Add missing numlock mod to winraw - Add missing numlock mod to uwp * Add config values and menu items for viewport bias x/y * Refactor viewport handling/aspect ratio scaling. This mirrors the use of video_viewport_get_scaled_integer for non-integer scaling at various aspect ratios. Two variants are provided, one with implicit device and desired ratios and one with explicit ratios. Also added a flag to video_viewport_get_scaled_integer to indicate the direction of positive y. * Fix build errors on wiiu, directx * [X11] Support for mouse buttons 4 and 5 Support added for extra mouse buttons. Since these buttons were not returned by XQueryPointer(), some additional logic was needed which fit best to scroll wheel handling. * allow saves and configs to be optionally synced to cloud * ensure that all folders are enabled by default. * Fetch translations from Crowdin * (D3D8) Fix build * Silence warnings * (menu_cbs_ok.c) Some cleanups, warning fixes, use strtok_r instead of strtok * (glslang) use strtok_r instead of strtok * strtok_r - small syntactic cleanup * Add missing header * Flip default y positive direction for viewport calc This should fix metal and maybe some directx resizes * Use device ratio when determining portrait orientation * Fetch translations from Crowdin * Skip core unload when Quit on Close Content is set * Fix libretro#16562 support bluetooth keyboards on tvos * Fetch translations from Crowdin * Add header include for rhmap.h * Try to avoid strdup to avoid portability issues * Buildfix * Fetch translations from Crowdin * Android: Improvements to DocumentProvider Added move and rename methods Provider notifies viewer to refresh view when files are changed Bumped up TargetApi annotation for DocumentsContract.buildTreeDocumentUri. Could alternatively use androidx compat class. * Android: Remove External Storage permission * Android: Add function to migrate RetroArch folder from sdcard. * Improvements to migration code Will be squashed before commit * Revert "Improvements to migration code Will be squashed before commit" This reverts commit 3dab003. * Revert "Android: Add function to migrate RetroArch folder from sdcard." This reverts commit b7235e4. * Revert "Android: Remove External Storage permission" This reverts commit 850560d. * Revert "Android: Improvements to DocumentProvider Added move and rename methods Provider notifies viewer to refresh view when files are changed Bumped up TargetApi annotation for DocumentsContract.buildTreeDocumentUri. Could alternatively use androidx compat class." This reverts commit 72db301. * Fetch translations from Crowdin * Fetch translations from Crowdin * Fetch translations from Crowdin * (rhmap) use custom strdup * Fetch translations from Crowdin * Bump robinraju/release-downloader from 1.9 to 1.11 Bumps [robinraju/release-downloader](https://github.com/robinraju/release-downloader) from 1.9 to 1.11. - [Release notes](https://github.com/robinraju/release-downloader/releases) - [Commits](robinraju/release-downloader@v1.9...v1.11) --- updated-dependencies: - dependency-name: robinraju/release-downloader dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> * Bump actions/setup-java from 3 to 4 Bumps [actions/setup-java](https://github.com/actions/setup-java) from 3 to 4. - [Release notes](https://github.com/actions/setup-java/releases) - [Commits](actions/setup-java@v3...v4) --- updated-dependencies: - dependency-name: actions/setup-java dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]> * Bump actions/setup-python from 4 to 5 Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4 to 5. - [Release notes](https://github.com/actions/setup-python/releases) - [Commits](actions/setup-python@v4...v5) --- updated-dependencies: - dependency-name: actions/setup-python dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]> --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: libretroadmin <[email protected]> Co-authored-by: github-actions <[email protected]> Co-authored-by: Eric Warmenhoven <[email protected]> Co-authored-by: rofl0r <[email protected]> Co-authored-by: zoltanvb <[email protected]> Co-authored-by: zoltanvb <[email protected]> Co-authored-by: Joseph C. Osborn <[email protected]> Co-authored-by: Ash Logan <[email protected]> Co-authored-by: schellingb <[email protected]> Co-authored-by: Jay Paul <[email protected]> Co-authored-by: Jonathan Rascher <[email protected]> Co-authored-by: cwyc <[email protected]> Co-authored-by: LibretroAdmin <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Description
the bz2 tarball snapshot for 1.19.0 from libretro's gitlab is > 10 MB bigger than the one for 1.18.0, the .gz available from github even more.
[Description of the bug]
the main culprit seems to be the addition of binaries
https://github.com/libretro/RetroArch/blob/00b8a5f15c7d671cdf107c3d01e71a729581d1cd/pkg/apple/Frameworks/MoltenVK.xcframework/ios-arm64/MoltenVK.framework/MoltenVK
from pr #16463 by @warmenhoven . i doubt these binaries have any legitimate reason to not only bloat the repo itself, but also source tarballs.
they should be removed and fetched from somewhere else for people doing ios aarch64 builds (or the CI), if they cant be easily be built from source.
the tarball of 1.18.0, weighing at >50 MB is already way more than big enough.
The text was updated successfully, but these errors were encountered: