Skip to content

Update README.md#179

Open
greydoubt wants to merge 1 commit into
NetBSD:trunkfrom
greydoubt:patch-1
Open

Update README.md#179
greydoubt wants to merge 1 commit into
NetBSD:trunkfrom
greydoubt:patch-1

Conversation

@greydoubt
Copy link
Copy Markdown

No description provided.

msk pushed a commit to msk/pkgsrc that referenced this pull request May 11, 2026
Notable changes since the last release (v0.8.3):

    Revamped low-pass filter options for Genesis / Sega CD / 32X that should be significantly more accurate to actual hardware than the v0.8.3 settings
    Improved audio quality for all emulated systems via much higher-quality audio resampling
    A rather large number of bugfixes for Genesis, Sega CD, 32X, SMS, Game Gear, SNES, Game Boy [Color]
    Major bugfixes for Linux AppImage builds in Wayland
    Save state files are now internally compressed using zstd, which should reduce save state file size by 70-80% in most cases
    Basic CPU + CD-ROM drive overclocking options for Sega CD, which have fairly low compatibility but do help in some games

Full changelog below.
New Features

    (Genesis / Sega CD / 32X) Replaced the low-pass filtering settings added in v0.8.3 with a new set of options that should be more accurate to actual hardware
        New option to apply a first-order 3.39 KHz low-pass filter to Genesis audio output; this is ON by default (biggest change from previous default settings)
        New option to apply a second-order 7.97 KHz low-pass filter to Sega CD PCM audio output; this is ON by default
        New options to individually configure whether the Genesis low-pass filter is applied to Sega CD and 32X audio output; these are all OFF by default
    (Genesis / SNES) Added a new video setting to disable deinterlacing in the handful of games that use interlaced display modes (e.g. Sonic the Hedgehog 2 in 2P Vs. mode, Ys III (Genesis) with the in-game "Int Mode" option enabled, Air Strike Patrol in mission briefing screens)
        Deinterlacing enabled matches the behavior in previous versions: normal-resolution interlaced modes display the same as progressive mode, and high-res interlaced modes make the graphics processor render all 448/480 lines every frame
    (Sega CD) Added an option to overclock the sub CPU by decreasing the master clock divider (NetBSD#138)
    (Sega CD) Added an option to increase the disc drive speed when reading data tracks (NetBSD#138)
        This has low compatibility but can shorten loading times in some games. Compatibility is slightly higher when the sub CPU is overclocked
    (Sega CD) Added an additional PCM chip interpolation option for 6-point cubic Hermite interpolation, which in some cases produces a slightly cleaner sound than 4-point cubic Hermite (the existing setting)
    Added a new hotkey to quickly toggle whether overclocking settings are enabled, for the systems that support overclocking (this includes Sega CD's new drive speed setting)
        This is mainly useful for Sega CD, where increasing the drive speed can shorten loading times during gameplay but almost always breaks FMVs and animated cutscenes

Improvements

    Audio resampling code has been rewritten to use the windowed sinc interpolation algorithm, which is much higher quality than the previous resampling implementation at a relatively low performance cost (for most emulated systems)
        Windowed sinc interpolation can be very performance-intensive for NES and GB/GBC audio resampling, so these two systems have a new audio setting to choose between windowed sinc interpolation and the old resampling algorithm (low-pass filter followed by nearest neighbor interpolation)
    (Genesis) Slightly improved performance by optimizing VDP rendering and tile fetching code
    (Genesis) Frontends now recognize .gen and .smd as file extensions for Genesis / Mega Drive ROM images (NetBSD#149)
        This includes attempting to auto-detect when a ROM image is interleaved (common for .smd files), and deinterleaving it during load
    (SMS) The "crop vertical borders" video setting now defaults to enabled instead of disabled; unlike the left border, the vertical borders will only ever show the current backdrop color
    (SMS) The SMS model setting now defaults to SMS1, which emulates a VDP hardware quirk that is required for the Japanese version of Ys to render correctly (#182)
    (SMS / Game Gear) Reduced log level of a warning message that caused excessively verbose log output in Virtua Fighter Mini (#199)
    (SNES) In games that use the SA-1 coprocessor, the SA-1 CPU now gets a wait cycle every time it accesses SA-1 BW-RAM, similar to actual hardware
        The SA-1 CPU still runs faster than actual hardware in some cases because bus conflict wait cycles are not emulated
    GUI: When opening a game that requires a BIOS ROM or firmware ROM (e.g. any Sega CD game), if the BIOS/firmware ROM path is not configured, the error window now contains a button to configure the appropriate ROM path and immediately launch the game
    CLI: If no config file exists, the CLI will now attempt to write out the default config to the config path so that it can be edited manually if desired
    Save state files are now internally compressed using zstd which should reduce save state file size by at least 50%, often by 70-80%
    Frontends should now correctly handle files with uppercase file extensions

Multi-System Fixes

    Fixed a performance bug in the audio resampling code that could have caused intermittent extremely poor performance due to performing arithmetic on subnormal floating-point numbers, which can be up to 100 times slower than normal floating-point arithmetic on some CPUs (NetBSD#135)
    Linux: AppImage builds now exclude all Wayland-related system libraries during packaging; this fixes the emulator failing to launch in some distros, e.g. Solus Plasma (NetBSD#143)
    Linux: AppImage builds now interpret relative paths in command-line arguments as being relative to the original working directory where the AppImage was launched from, not the AppImage internal runner directory (NetBSD#147)
    Linux/BSD CLI: For these platforms only and for the CLI only, reverted the change to estimate window scale factor because SDL_GetDisplayDPI does not return reliable values on Linux/BSD
    Adjusted frame time sync's sleep implementation to fix frame time sync potentially causing slowdown on some platforms
    Save state files are now explicitly versioned, which fixes potential crashing when attempting to load an incompatible save state file from a different version

Genesis / Mega Drive Fixes

    Fixed the 68000 incorrectly being allowed to access audio RAM while the Z80 is on the bus; this fixes freezing in Joe & Mac (NetBSD#144)
    Fixed Z80 RESET not clearing the Z80's HALT status
    Fixed writes to YM2612 F-num high / block registers ($A4-$A6 and $AC-$AE) taking effect immediately instead of after the next F-num low register write; this fixes some music glitches in Valis
    Implemented more accurate emulation of how the YM2612 computes operator amplitude from phase and envelope attenuation
    Fixed in-game saves not working correctly when Sonic & Knuckles is locked on to a cartridge with SRAM (e.g. Sonic 3)
    Fixed certain revisions of QuackShot not loading correctly due to having non-standard cartridge ROM address mappings (NetBSD#174)
    Fixed some illegal 68000 opcodes incorrectly decoding to "valid" instructions (#184 / #185)
    Fixed an edge case related to how sprite tile/pixel overflow interacts with H=0 sprite masking (#186)

Sega CD Fixes

    Implemented a higher minimum seek time for small seek distances; this fixes Thunder Storm FX (JP) failing to boot (NetBSD#178)
    Fixed a regression introduced in v0.8.3 that caused PCM chip channels to skip the first sample after being enabled (this made little-to-no audible difference in practice because the first sample is usually 0)
    Fixed slightly inaccurate emulation of PCM chip looping behavior at sample rates higher than 0x0800 / 32552 Hz
    Fixed inaccurate emulation of CD-DA fader volumes 1-3 out of 1024 (should be 50-60 dB of attenuation instead of complete silence)
    Unmapped/unknown address accesses will now log an error instead of crashing the emulator

32X Fixes

    Fixed a major bug in the PWM resampling code that caused PWM audio output to sound significantly more poppy and crackly than it's supposed to
    Fixed a bug around synchronizing SH-2 accesses to 32X communication ports that could have caused writes to be skipped in some cases; this fixes freezing in the Sonic Robo Blast 32X demo (NetBSD#160)
    Significantly improved timing of 32X VDP interrupts for the SH-2s (NetBSD#166)
    Significantly improved synchronization between the SH-2s and the 68000
    Fixed PWM DMA transfer rate via DREQ1 not taking the PWM timer interval into account; this fixes broken sound effects in BC Racers (NetBSD#179)

Master System / Game Gear Fixes

    Fixed the Z80's RETI instruction not correctly copying IFF2 to IFF1 like RETN does; this fixes Desert Strike from freezing when you press Start/Pause (#181)
    Fixed incorrect handling of non-power-of-two ROM sizes, which fixes several homebrew games and demos (#201 / #203 / #204)
    (Game Gear) Fixed the emulator crashing if a game enables the VDP's 224-line mode, as the homebrew GG Turrican does (#202)

SNES Fixes

    Implemented more accurate clipping and truncation in Mode 7 intermediate calculations; this fixes glitched Mode 7 graphics in Tiny Toon Adventures: Wacky Sports Challenge (NetBSD#161)
    Mode 7 registers are now latched about 12 pixels before line rendering begins; this fixes a glitchy line near the bottom of the play area in Battle Clash, where the screen transitions from Mode 1 to Mode 7
    Implemented an obscure behavior regarding the effects of writing to OAM during active display; this fixes incorrect sprite display in Uniracers' Vs. mode (NetBSD#164)
    Made a best effort at implementing the effects on sprites of toggling forced blanking during active display; this mostly fixes some test ROMs that exercise this (NetBSD#162)
    Adjusted behavior of APU communication ports when the 65816 writes to a port on the same cycle that the SPC700 cle

    ars the port; this fixes Kishin Douji Zenki: Tenchi Meidou failing...
msk pushed a commit to msk/pkgsrc that referenced this pull request May 11, 2026
Mew 6.10 (2025-07-08)

Differences between Mew 6.10 and Mew 6.9

* XOAUTH2 support. Please see Sec 9.13 of the manual.
* Use C.UTF-8 if available to display non-ASCII names for GnuPG programs.
  NetBSD#179
* Enable IPv6 support of stunnel by default.  NetBSD#177
* Add GnuTLS support.  NetBSD#175
* Supporting stunnel >=5.15 only.  NetBSD#174
* Separately check if stunnel supports 'foreground', 'pid' and 'syslog'
  options.  NetBSD#171
* Use configured file names as relative paths from mew-home.  NetBSD#170
* And several bug fixes.
msk pushed a commit to msk/pkgsrc that referenced this pull request May 11, 2026
Prepare for this replacing mail/getmail.

Version 6.19.08
14.May.2025
    - fix NetBSD#105 by converting empty string to None, which has smtplib handling
    - fix #226 by handling all Exception instead of just OSError on SIGCHLD to parent
    - fix #239 by catching ssl.SSLError
    - Merge pull request #237 from meeuw/integration-tests
    - remove python 2 code: only supporting python 3
    - Merge pull request #238 from yshingai/v6.19.07-add-alias
    - support windows-874 cp874
    - Merge pull request #234 from meeuw/fix-incorrect-fsf-address
    - Merge pull request #233 from meeuw/fix-license
    - #220 allow uid_cache=true (latest UID from oldmail-file) in addition to uid_cache=<uidfile>

Version 6.19.07
26.January.2025
    - #225 Missing comma in getmailcore/message.py

Version 6.19.06
18.January.2025
    - #223 publish to pypi workflow
    - #219 #220 increase IMAP efficiency through uid_cache  (needs to be configured) storing last fetched UID
    - updated tests
    - update copyright to 2025

Version 6.19.05
02.October.2024
    - fix #211: --only-oldmail-file command line = only_oldmail_file config: regenerate oldmail file with mails currenlty on server
    - fix #212: oldmail-* reverts when --to-oldmail-on-each-mail is used
    - Pyp2 fixes (#210)
    - fix #209: using the suggested simpler fix as pathlib is not used so far
    - build and upload sdist
    - Fix invalid SPDX expression

Version 6.19.04
25.August.2024
    - Update getmailrc-examples (#204, #206, #207)
    - #205: pop3: Support use_xoauth2

Version 6.19.03
08 July 2024
    - #199 fix: fails with "TypeError: IMAP4_SSL.__init__()" after changing to Python 3.12 (when keyfile/certfile in config)

Version 6.19.02
01 July 2024
    - #196 fix: handle KeyError (getmail-gmail-xoauth-tokens)
    - #197 fix: detect if --port is set to force the use of the local http server (getmail-gmail-xoauth-tokens)

Version 6.19.01
7 June 2024
    - #195 fix: make mark_read option act same as -ds,

Version 6.19.00
31 May 2024
    - #191 -m/--mark-read and mark_read in [options] of rcfile
    - #190 -o/--only-account to choose rcfile by username (=email)
    - #189 IMAP retrievers support imap_id_extension
    - NetBSD#137 Add mailbox name to log line

Version 6.18.14
20 March 2024
    - fix make lint
    - fix #183: in case of TypeError keyfile and certfile are used later in wrap_socket (Python 3.12)
    - fix #182: make log to trace
    - Allow to customize 'redirect_uri' (pull request NetBSD#179 from jerome-pouiller/master)
    - fix NetBSD#176: Maildir Filename Generation Issue with Truncated Hostname (use full hostname)
    - remove "Labels" before deleting uid (pull request NetBSD#175 from ewft/fix_gmail_deletion)
    - Redact real email in test data (pull request NetBSD#170 from h3xx/remove-email)
msk pushed a commit to msk/pkgsrc that referenced this pull request May 11, 2026
See the following release page about the current project status:
 https://github.com/saitoha/libsixel/releases/tag/v1.8.7

Upstream changes (from NEWS):

                  ------------------------------
                   What's new in libsixel-1.8.7
                  ------------------------------

  for a comprehensive view of security-fix progress, see the page below
  saitoha/libsixel#203

* fix invalid pointer access in encoder.c (#193, #195)
  Thanks to @momo-trip, @akinomyoga

* fix wrong HLS to RGB conversion. (#191)
  Thanks to @gnachman, @j4james

* fix NULL pointer dereference problem in img2sixel.c (#192)
  Thanks to @momo-trip, @akinomyoga

* fix double free problem in encoder.c (#194)
  Thanks to @momo-trip

* Serucity fix for #200, heap buffer overflow in debug palette function.
  Thanks to @err2zero

* add EXTRA_DIST for LICENSE files (NetBSD#129)
  Thanks to @ttdoda

* Travis-ci: added support for ppc64le (NetBSD#140)
  Thanks to @dthadi3

* export sixel_allocator_new to dll (NetBSD#151)
  Thanks to @johnnychen94

* README: Add Idris 2 language bindings (NetBSD#155)
  Thanks to @Kaiepi

* performance: If width and height are unchanged, nothing to do. (NetBSD#170)
  Thanks to @rokuyama

* README: add MacPorts to install options (#183)
  Thanks to @barracuda156

* fix for bash completion (#189)
  Thanks to @rcorre

* Add backport feature (nanosleep) for windows, github actions CI (#202)
  Thanks to @Kreijstal

* README: update NixOS link (#204)
  Thanks to @max-amb

* build: Remove override of $LIBJPEG_CFLAGS and $LIBJPEG_LIBS set by
  PKG_CHECK_MODULES()

* fix Problems with the dithering palette calculation (#188)
  Thanks to @gnachman, @j4james

* fix SEGV error in sixel_encoder_setopt (NetBSD#174)
  Thanks to @shinibufa , @j4james

* curl: send original UserAgent header: "libsixel/${LIBSIXEL_VERSION}"

* fix heap-buffer-overflow in error_diffuse, quant.c:876 NetBSD#172
  Thanks to @waugustus

* fix Heap-buffer-overflow in scale.c:214 NetBSD#179
  Thanks to @chameleon10712, @j4james

* build: fallback support for environments without pkg-config.

* fix double-free problem in loader.c (NetBSD#150)
  Thanks to @duytai, @ctrlcctrlv

* fix an assertion issue in stbi__create_png_image_raw (NetBSD#163)
  Thanks to @kdsjZh, @dankamongmen

* Update stb_image.h from upstream to version 2.30
  THanks to @hzeller

* Update examples/drawing: add SGR-Pixels mode

* fix a problem on monochromatic encoded (-e) output (#112)
  Thanks to @interkosmos, @j4james

* fix a FPE issue (NetBSD#166, NetBSD#167)
  Thanks to @waugustus, @j4james

* cli: fix a scaling issue introduced in v1.6.1, which is caused
       when one of -w/-h is a percentage and the other is unset or "auto"

* fix a memory leak ploblem (NetBSD#164)
  Thanks to @muetzenmann, @j4james
msk pushed a commit to msk/pkgsrc that referenced this pull request May 11, 2026
1.3.0 (2025-09-23)

What's Changed

* Set required ruby version to 2.7.0 and up by @risen in NetBSD#169
* Keep using URI RFC2396 parser by @voxik in #192
* Make DEFAULT_LOCATOR Configurable by @heka1024 in NetBSD#179

New Contributors

* @risen made their first contribution in NetBSD#169
* @biow0lf made their first contribution in NetBSD#167
* @duffuniverse made their first contribution in #180
* @berkos made their first contribution in NetBSD#170
* @elia made their first contribution in #195
* @Earlopain made their first contribution in #188
* @stevenharman made their first contribution in NetBSD#173
* @voxik made their first contribution in #192
* @m-nakamura145 made their first contribution in NetBSD#175
* @heka1024 made their first contribution in NetBSD#179
* @tylerwillingham made their first contribution in #200
msk pushed a commit to msk/pkgsrc that referenced this pull request May 11, 2026
What's Changed

    docs: Add readthedocs configuration file by @Jmennius in NetBSD#159
    docs: Mention Choice's Enum support in published docs, publish init docs by @Jmennius in NetBSD#161
    Align tox and package metadata with GH actions (add Python 3.9-3.12) by @Jmennius in NetBSD#163
    Bump Python to 3.9 and clean-up Python 2 leftovers by @wisp3rwind in NetBSD#170
    Address deprecation of pkgutil.get_loader by @wisp3rwind in NetBSD#171
    Remove template_with_relatives by @semohr in NetBSD#172
    Added typehints to the as_* helpers. by @semohr in NetBSD#173
    Added a minimal release workflow. by @semohr in NetBSD#174
    Modernize package setup by @snejus in NetBSD#178
    Explicitly support Python 3.13, 3.14 and synchronise docs and docs config by @snejus in NetBSD#179
msk pushed a commit to msk/pkgsrc that referenced this pull request May 11, 2026
What's Changed

    refactor: analyze only root project directory and clean up progress module by anistark in NetBSD#176
    feat: GitHub license cache by anistark in NetBSD#178
    chore: cleanup readme, contributing, justfile by anistark in NetBSD#179
    feat: add local license checking for Go and Python by anistark in #180
    fix: add missing env var cleanup to prevent test isolation issues in parallel execution by anistark in #182
    feat: add .NET support with NuGet integration by anistark in #183
    feat: add --github-token flag for authenticated GitHub API requests by anistark in #184
msk pushed a commit to msk/pkgsrc that referenced this pull request May 11, 2026
2.16.0 2025-12-23
* Fix opening STIL on MacOS (#225)
* Expose the SID models actually used
* residfp: implemented runtime SIMD dispatch for resampler (#206)
* Added usbsid support (#216)
* Improve interrupt handling in kernal stub



2.15.2 2025-11-02
* Fix building with pre c++20 standards (#214)
* Fixed crash in SidDatabase parser (#217)



2.15.1 2025-09-19
* resid/residfp: remove accidental DC offset (#205)
* residfp: clock voice 3 even if muted (#211)
* resid: fix silenced tunes (#212)
* fixed load performance regression (#207)



2.15.0 2025-06-29
* Compile with fast math, without unsafe optimizations
* residfp: reworked the SIMD support, removed the intrinsics code leaving the compiler vectorize the loop
* Extended the new play API
* Marked old play API functions as deprecated



2.14.0 2025-05-11
* Rough approximation of MDAC saturation for the 6581 (NetBSD#177) (#185)
* New play API for client side mixing (NetBSD#41) (#184)
* Minor fixes and optimizations



2.13.1 2025-04-25
* Fix build with inlining disabled (#181)
* Add missing files to the tarball (#182)
* Update exsid driver
* Fixed an uninitialized warning



2.13.0 2025-04-13
* Add support for c++23 where available
* Reworked power on delay (NetBSD#82)
* Correctly link to pthread library (NetBSD#179)
* Add proper compiler flag when enabling sse4 (NetBSD#172)
* resid/residfp: Use more bits for the 8580 filter cutoff (VICE bug 2098)
* resid: reduce aliasing noise (VICE bug 2116)



2.12.0 2024-12-01
* Better mixing for multi chip tunes (NetBSD#167)
* residfp: fixed voice sync when a saw-combined waveform is selected (NetBSD#169)
* residfp: updated CW parameters
* resid: properly adjusted 8580 Vref value
* switched to UTPP for unit tests (NetBSD#170)



2.11.0 2024-11-03
* Remove buffer size limit from mixer (fixes NetBSD#159)
* residfp: avoid quantization noise (NetBSD#156)
* residfp: implemented 6581 DC drift (NetBSD#155)
* residfp: properly adjusted 8580 Vref value



2.10.1 2024-10-20
* residfp: fix digiboost (NetBSD#157)
* residfp: fix combined waveforms (NetBSD#160)



2.10.0 2024-10-06
* Add support for c++20 where available
* residfp: retuned cw parameters after measuring waves RMS (NetBSD#143)
* residfp: code refactoring and minor performance optimizations (NetBSD#145)
* resid/residfp: scale down filter inputs in the mixer for 6581 (NetBSD#139)
* Centralized handling of muted voices and allow muting samples (NetBSD#136)
* new API to toggle the filter and deprecated sidplayfp::filter



2.9.0 2024-08-12
* residfp: use c++11 threads for building filter tables (NetBSD#92)
* residfp: code modernization and minor performance optimizations
* Performance optimizations (NetBSD#133, NetBSD#137)



2.8.0 2024-06-09
* Optimized event scheduler (NetBSD#131)
* Stop pretendig we support pre-c++11 compilers (NetBSD#130)
* Fixed thread unsafety for psid_driver (NetBSD#132)
* residfp: do not cache resampling tables (NetBSD#91)
* resid/residfp: tuned oscillator leakage



2.7.1 2024-05-19
* Sync resid with upstream
* Make strong CWs the default (NetBSD#127)
* Downtune the leakage parameter a bit (NetBSD#126)
* Fix UBSan complaint abount uninitialized var 'is6581'



2.7.0 2024-03-29
* residfp: refactor residfp filter (NetBSD#109)
* residfp: added ability to adjust the uCox parameter at runtime (NetBSD#101)
* residfp: allow setting the combined waveforms strength (NetBSD#110)
* resid/residfp: emulate oscillator leakage (NetBSD#102)



2.6.0 2024-01-01
* residfp is now thread-safe (NetBSD#71)
* residfp: fixed SSE2 version of convolve (NetBSD#105)
* residfp: updated combined waveforms model (NetBSD#97)
* residfp: amplify the output by a model dependent scale factor (NetBSD#78, NetBSD#79)
* a couple of autotools fixes (NetBSD#103, NetBSD#104, NetBSD#108)
msk pushed a commit to msk/pkgsrc that referenced this pull request May 11, 2026
# Changelog

## 1.11.12 (2025-11-20)

* Fixes
  * Properly handle `nil` from Elixir maps when encoding with the builtin `json` Erlang/OTP module; see [#184](potatosalad/erlang-jose#184)
  * Drop required Elixir version back from 1.16 -> 1.13; see [#185](potatosalad/erlang-jose#185)

## 1.11.11 (2025-11-17)

* Fixes
  * EC key decode/encode issues in OTP 28; see [#180](potatosalad/erlang-jose#180), [#181](potatosalad/erlang-jose#181), [#182](potatosalad/erlang-jose#182), [NetBSD#179](potatosalad/erlang-jose#179)
  * EdDSA key issues with OTP 27.1.3+; see [NetBSD#177](potatosalad/erlang-jose#177)
* Notes
  * This will hopefully be one of the last 1.x releases, next release will be [2.x](https://github.com/potatosalad/erlang-jose/tree/2.x)
msk pushed a commit to msk/pkgsrc that referenced this pull request May 11, 2026
Version 6.1.2
=============

Code Fixes
----------

* Fix for low-severity CVE-2026-23868 affecting gifponge, giftool, and gifbuild,
  but not the core library - library clients need not be alarned.

Version 6.1.1
=============

This release bumps the major version, but only one entry point -
EGifSpew() - has changed signature and behavior (in order to be able
to pass out a detailed error code). The internal error
codes in the E_GIF_ERR series have changed value so none of them
collides with GIF_ERROR.

This code has been systematically audited and hardened wuth
ChatGPT-5.2. The only library fixes reported by users or found by
robot were for some memory leaks that could only triggered by severely
malformed GIFs. Other bugs are edge-case failures in the CLI tools.

The gif2rbg CLI tool has been moved to the "obsolete" bin, because its
only deployment case in 2026 is as a piñata at fuzzer parties.

Warning: the CLI tools in the obsolete category will soon be removed
from the distribution entirely. The maintainer is tired of fielding
junk bugs filed against them by would-be coup-counters who found yet
another edge case, and the rest of the world doesn't need noisy CVEs
that aren't actually DoS or security issues for giflib clients.

Code Fixes
----------

* Fix for CVE-2021-40633.

* Fix SF bug NetBSD#165 EGifSpew leaks GifFileOut->SColorMap

* Fix SF bug NetBSD#171 ImageMagick required to build giflib on non-Darwin Platforms

* Fix SF bug NetBSD#172 Incorrect object files in shared libutil on darwin

* Fix SF bug NetBSD#173 installation of manual pages and html documentation

* Fix SF bug NetBSD#175 Memory leaks in gifecho.c's main() and in gifalloc.c's GifMakeMapObject

* Fix SF bug NetBSD#177 wrong pointer used in giftool getbool

* Fix SF bug NetBSD#179 Path Traversal vulnerability

* Fix SF bug #180: -Wformat-truncation likely pointing out an actual bug

* Fix SF bug #182 out‐of‐bounds writes in Icon2Gif

* Fix SF bug #184 uninitialized buffer in DumpScreen2RGB

* Fix SF bug #185 integer overflow in gifbg.c

* Fix SF bug #186 integer overflow in Icon2Gif

* Fix SF bug #187: CVE-2025-31344

* Fix SF bug NetBSD#170 Tests failing on Ubuntu Noble, giftext buffer overflow

* Fix SF bug NetBSD#165 EGifSpew leaks GifFileOut->SColorMap

* Fix SF bug NetBSD#162 detected memory leaks in GifMakeSavedImage giflib/gifalloc.c

* Fix SF bug NetBSD#161 detected memory leaks in EGifOpenFileHandle giflib/egif_lib.c

* Fix SF bug NetBSD#142 ABI break public symbol GifQuantizeBuffer

Other bugs that duplicate these have breen addressesed by these fixes

* SF bug NetBSD#156 EGifSpew leaks SavedImages (and more); won't fix, caller
  might want to write a GIF, modify the in-memory data, then write
  again.

Tests
-----

Test suite now emits TAP (Test Anything Protocol).
msk pushed a commit to msk/pkgsrc that referenced this pull request May 11, 2026
2.51 2026-03-20 (by Todd Rinaldo)

  Fixes:
    - PR #184 GH #182 Fix compile warnings from Fedora gcc: unhandled enum
      value in switch and uninitialized variables in parse_stream
    - PR #186 GH #183 Add explicit case labels for XML_CTYPE_EMPTY and
      XML_CTYPE_ANY in generate_model switch to fix -Wswitch on BSD/clang
    - PR NetBSD#175 GH NetBSD#174 Add XML_DTD/XML_GE compile-time guards to AllocTracker
      and BillionLaughs XS bindings to fix warnings when expat lacks these flags
    - PR #187 GH #185 Require proper declaration in AllocTracker feature
      detection to prevent implicit function declaration on BSD

  Improvements:
    - PR #189 GH #188 Add tests for XS functions modified in PR #184 covering
      XML_ErrorString, XML_GetBase/XML_SetBase, and generate_model

  Maintenance:
    - PR #181 GH #180 Add Fedora 43 container job to CI test matrix
    - PR NetBSD#178 Add BSD testing (FreeBSD, OpenBSD, NetBSD) to CI
    - PR NetBSD#179 Add no-lwp CI job to validate test suite without LWP::UserAgent
    - Update MANIFEST

2.49 2026-03-19 (by Todd Rinaldo)

  Improvements:
    - PR NetBSD#171 Expose expat library version at runtime via expat_version()
      and expat_version_info() class methods on XML::Parser::Expat
    - PR NetBSD#169 GH NetBSD#168 Expose Expat 2.7.2 AllocTracker security APIs
      (AllocTrackerMaximumAmplification, AllocTrackerActivationThreshold)

  Maintenance:
    - PR NetBSD#170 Clean up build configuration: remove dead CAPI code from
      Makefile.PL and Expat/Makefile.PL, add test dependencies to cpanfile
msk pushed a commit to msk/pkgsrc that referenced this pull request May 11, 2026
Drop support for Python 3.9, 3.8, and 3.7 (#305, #242, #206)
Add support and Python 3.13 and 3.14 (#201, #282)
Add --overwrite-existing CLI option (#216)
Add --validate-record CLI option (NetBSD#161)
Support installing multiple wheels (#203)
Handle invalid hash algorithms (NetBSD#179)
Stream-based validation instead of in-memory (NetBSD#98)
Add validate_stream methods (NetBSD#99)
Consolidate and refine validation APIs (NetBSD#108, NetBSD#111)
Sort entries before writing RECORD (#245)
Do not install pycache from wheels (#307)
Fix a path traversal bug (#317)
Update launcher scripts and Windows behavior (#212, #181)
Fix Windows relpath bug (#286)
Migrate to dataclasses (#200)
Use cached_property for memoization (#243)
Refactor installer.scripts (#239)
Decouple test modules (NetBSD#104)
Avoid cross-module imports from .utils (NetBSD#102)
Lazy imports for performance (#226)
Complete type annotations and enforce strict mypy (NetBSD#173)
Deprecate RecordEntry.validate (#186)
Fix documentation typos and grammar (#309, #210)
Improve docstrings and internal documentation (NetBSD#100)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant