Skip to content

chore(deps): bump com.github.oshi:oshi-core from 6.9.0 to 7.4.2 - #399

Closed
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/maven/com.github.oshi-oshi-core-7.4.2
Closed

chore(deps): bump com.github.oshi:oshi-core from 6.9.0 to 7.4.2#399
dependabot[bot] wants to merge 1 commit into
masterfrom
dependabot/maven/com.github.oshi-oshi-core-7.4.2

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 8, 2026

Copy link
Copy Markdown
Contributor

Bumps com.github.oshi:oshi-core from 6.9.0 to 7.4.2.

Release notes

Sourced from com.github.oshi:oshi-core's releases.

Release 7.4.2

Bug Fixes and Improvements
  • #3493: Document the CPU/memory trade-off of reusing versus recreating SystemInfo when polling, with supporting benchmarks - @​dbwiddis.
  • #3499: Fix FreeBSD, NetBSD, and OpenBSD df -i inode parsing to include ZFS, tmpfs, devfs, and mfs filesystems that do not start with / - @​dbwiddis.
  • #3504: Fix AIX processor cache detection, which read the POWER generation from the hostname (uname -n) instead of prtconf's Processor Version field, causing getProcessorCaches() to return an empty list - @​dbwiddis.
  • #3505: Fix the AIX FFM backend reading perfstat_partition_config_t.processorMHz at the wrong struct offset (344 instead of 340), which reported the processor's vendor frequency as unknown - @​dbwiddis.
  • #3507: Extend the native-free provider (oshi-common alone, no JNA or FFM) to NetBSD, so NetBSD users without the JNA native library can depend on oshi-common without --enable-native-access, as Linux already can - @​dbwiddis.
  • #3518: Consolidate the duplicated sysctl utility code into shared command-line (BsdSysctlUtil), JNA (SysctlUtilJNA), and FFM (SysctlFFM) helpers, and fix a latent bug where reading an int-width sysctl (e.g. FreeBSD hw.clockrate) through the long API returned uninitialized bytes, intermittently reporting an absurd CPU vendor frequency such as 6.2 EHz - @​dbwiddis.
  • #3519: Fix the Solaris JNA Kstat2 processor identifier reporting the CPU vendor frequency in MHz instead of Hz (missing the clock_MHz to Hz conversion applied on the other code paths) - @​dbwiddis.
  • #3525: Carry the exception log level with a new oshi.util.LogLevel enum instead of org.slf4j.event.Level, so OSHI no longer class-loads a type added in slf4j-api 1.7.15 on non-exceptional code paths and works again against host-provided slf4j-api older than 1.7.15 (e.g. the 1.7.5 bundled by Apache Maven 3.3.x) - @​wolfs.

Full change log

Release 7.4.1

Bug Fixes and Improvements
  • #3441: Wrap AppKit/Cocoa display-name calls in an autorelease pool, extract ObjCFunctions FFM bindings, and use ExceptionUtil for consistent error handling - @​dbwiddis.
  • #3442: Convert static memoized suppliers to instance fields, allowing cached data to be reclaimed when users create new SystemInfo instances - @​dbwiddis.
  • #3443: Share memoized iostat supplier across disk instances; cache pluggable hardware lists (displays, USB, sound cards, graphics cards) in the HAL with a 3-second TTL - @​dbwiddis.
  • #3444: Consolidate try/catch-log-return-default patterns to use ExceptionUtil - @​dbwiddis.
  • #3459: Deduplicate the Windows CentralProcessor frequency queries into the shared base, and fix the JNA per-processor current-frequency numbering, which mis-assigned frequencies to logical processors on multi-processor-group/NUMA systems - @​dbwiddis.
  • #3473: Fix several macOS bugs: correct Intel Mac sensor temperatures that were under-reported by the SP78 fractional byte, decode process working directories and login sessions as UTF-8, and add missing null/bounds guards on native results - @​dbwiddis.
  • #3478: Fix several Windows bugs: stop reporting a UPS/non-system battery as the system battery, restore the WMI fallback (and avoid an NPE) when a PDH wildcard collection fails, drop phantom file stores for volumes that can't be queried, keep enumerating sound cards past an incomplete registry key, retain sessions without a client address, and include processors in NUMA nodes spanning more than 64 logical processors - @​dbwiddis.
  • #3479: Fix several Windows bugs: return all configured DNS servers instead of an empty list when more than one is present, keep querying the OpenHardwareMonitor/LibreHardwareMonitor namespaces after an initial failure so late-started sensors still appear, and classify CD-ROM drives as non-local - @​dbwiddis.
  • #3480: Align remaining JNA/FFM inconsistencies: report disk type (Removable/SSD/HDD/Unknown) on the native-free Linux backend, allocate a large enough buffer for long UTF-16 device names in the Windows JNA DeviceTree, fix WMI query when COM is already initialized in another apartment, returning zeroed TCP/UDP stats instead of null on a query failure, detecting x86 via GetNativeSystemInfo (correct under WOW64), and retrying the initial PDH_NO_DATA performance-counter sample - @​dbwiddis.
  • #3481: Share one registry-value parser between the JNA and FFM Windows installed-applications backends, so an application is resolved identically regardless of backend even when a value is stored as REG_DWORD or REG_BINARY rather than a string - @​dbwiddis.
  • #3482: Fix macOS getThreadCount() on the default JNA backend, which under-reported the thread count (a proc_listpids buffer size passed as an element count, and stale reused-buffer data counted for processes proc_pidinfo could not fill), and release the CoreFoundation device dictionary and lookup keys leaked per disk enumeration in the JNA disk-type detection - @​dbwiddis.
  • #3483: Fix several Windows backend issues: guard against a hard crash when enumerating a network session with a null client name, allocate the AMD ADL callback buffer from the C heap so the driver's free() is valid, close leaked system event-log handles, and read REG_QWORD/REG_BINARY registry values in the FFM backend so graphics-card VRAM is reported consistently with the JNA backend - @​dbwiddis.
  • #3484: Fix several parsing and consistency issues: return empty instead of throwing from ParseUtil.getStringBetween on a single unmatched delimiter, throw the documented IllegalArgumentException (not ArrayIndexOutOfBoundsException) for mismatched tick arrays, correct an off-by-one bounds guard in Solaris Prtvtoc, decode FreeBSD/Solaris utmpx session strings as UTF-8, and read native utmpx for Solaris sessions in the FFM backend to match the JNA backend - @​dbwiddis.

Full change log

Release 7.4.0

New Features
  • #3415: Add Display.getDisplayInfo() and a new DisplayInfo interface (exposing decoded attributes including isEdidSynthetic()), plus EDID-encoding methods in EdidUtil, allowing display attributes to be exposed without a raw EDID - @​dbwiddis.
  • #3436: Detect the Apple Silicon built-in Retina display via IOMobileFramebuffer and synthesize a DisplayInfo from CoreGraphics and NSScreen properties (resolution, physical size, serial, model name) - @​dbwiddis.
Bug Fixes and Improvements
  • #3424: Fix WrongMethodTypeException when freeing BSTR strings on the Windows FFM WMI path, caused by a void invokeExact in an expression lambda inferring an Object return - @​dbwiddis.
  • #3425: Fix the Windows perf-counter process and thread maps occasionally mis-keying a real process/thread under ID 0, when PDH reports its "ID Process"/"ID Thread" sentinel for one that is starting or exiting - @​dbwiddis.
  • #3432: Replace Logger#atLevel/setCause/isEnabledForLevel usage in ExceptionUtil, PerfDataUtil, and ForeignFunctions with level-switches to the classic SLF4J methods, so oshi no longer requires slf4j-api 2.x at runtime - @​wolfs.
  • #3431: Declare the optional jlibrehardwaremonitor OSGi package imports as optional, so oshi-common resolves in OSGi environments that do not provide it - @​MrEasy.
  • #3433: Restore optional JNA native access for NetBSD, falling back to the command-line implementation when the JNA native library is not installed - @​dbwiddis.
  • #3437: Add ParseUtil.decodeIntOrDefault/decodeLongOrDefault and forbid direct use of Integer.decode, Long.decode, parseUnsignedInt, and parseUnsignedLong - @​dbwiddis.
  • #3438: Deprecate Display.getEdid() in favor of Display.getDisplayInfo().getEdid(), consolidating display data access under DisplayInfo - @​dbwiddis.

Full change log

... (truncated)

Changelog

Sourced from com.github.oshi:oshi-core's changelog.

7.4.0 (2026-07-08), 7.4.1 (2026-07-18), 7.4.2 (2026-07-24), 7.4.3 (2026-07-31), 7.4.4 (2026-08-06)

New Features
  • #3415: Add Display.getDisplayInfo() and a new DisplayInfo interface (exposing decoded attributes including isEdidSynthetic()), plus EDID-encoding methods in EdidUtil, allowing display attributes to be exposed without a raw EDID - @​dbwiddis.
  • #3436: Detect the Apple Silicon built-in Retina display via IOMobileFramebuffer and synthesize a DisplayInfo from CoreGraphics and NSScreen properties (resolution, physical size, serial, model name) - @​dbwiddis.
Bug Fixes and Improvements
  • #3424: Fix WrongMethodTypeException when freeing BSTR strings on the Windows FFM WMI path, caused by a void invokeExact in an expression lambda inferring an Object return - @​dbwiddis.
  • #3425: Fix the Windows perf-counter process and thread maps occasionally mis-keying a real process/thread under ID 0, when PDH reports its "ID Process"/"ID Thread" sentinel for one that is starting or exiting - @​dbwiddis.
  • #3432: Replace Logger#atLevel/setCause/isEnabledForLevel usage in ExceptionUtil, PerfDataUtil, and ForeignFunctions with level-switches to the classic SLF4J methods, so oshi no longer requires slf4j-api 2.x at runtime - @​wolfs.
  • #3431: Declare the optional jlibrehardwaremonitor OSGi package imports as optional, so oshi-common resolves in OSGi environments that do not provide it - @​MrEasy.
  • #3433: Restore optional JNA native access for NetBSD, falling back to the command-line implementation when the JNA native library is not installed - @​dbwiddis.
  • #3437: Add ParseUtil.decodeIntOrDefault/decodeLongOrDefault and forbid direct use of Integer.decode, Long.decode, parseUnsignedInt, and parseUnsignedLong - @​dbwiddis.
  • #3438: Deprecate Display.getEdid() in favor of Display.getDisplayInfo().getEdid(), consolidating display data access under DisplayInfo - @​dbwiddis.
  • #3441: Wrap AppKit/Cocoa display-name calls in an autorelease pool, extract ObjCFunctions FFM bindings, and use ExceptionUtil for consistent error handling - @​dbwiddis.
  • #3442: Convert static memoized suppliers to instance fields, allowing cached data to be reclaimed when users create new SystemInfo instances - @​dbwiddis.
  • #3443: Share memoized iostat supplier across disk instances; cache pluggable hardware lists (displays, USB, sound cards, graphics cards) in the HAL with a 3-second TTL - @​dbwiddis.
  • #3444: Consolidate try/catch-log-return-default patterns to use ExceptionUtil - @​dbwiddis.
  • #3459: Deduplicate the Windows CentralProcessor frequency queries into the shared base, and fix the JNA per-processor current-frequency numbering, which mis-assigned frequencies to logical processors on multi-processor-group/NUMA systems - @​dbwiddis.
  • #3473: Fix several macOS bugs: correct Intel Mac sensor temperatures that were under-reported by the SP78 fractional byte, decode process working directories and login sessions as UTF-8, and add missing null/bounds guards on native results - @​dbwiddis.
  • #3478: Fix several Windows bugs: stop reporting a UPS/non-system battery as the system battery, restore the WMI fallback (and avoid an NPE) when a PDH wildcard collection fails, drop phantom file stores for volumes that can't be queried, keep enumerating sound cards past an incomplete registry key, retain sessions without a client address, and include processors in NUMA nodes spanning more than 64 logical processors - @​dbwiddis.
  • #3479: Fix several Windows bugs: return all configured DNS servers instead of an empty list when more than one is present, keep querying the OpenHardwareMonitor/LibreHardwareMonitor namespaces after an initial failure so late-started sensors still appear, and classify CD-ROM drives as non-local - @​dbwiddis.
  • #3480: Align remaining JNA/FFM inconsistencies: report disk type (Removable/SSD/HDD/Unknown) on the native-free Linux backend, allocate a large enough buffer for long UTF-16 device names in the Windows JNA DeviceTree, fix WMI query when COM is already initialized in another apartment, returning zeroed TCP/UDP stats instead of null on a query failure, detecting x86 via GetNativeSystemInfo (correct under WOW64), and retrying the initial PDH_NO_DATA performance-counter sample - @​dbwiddis.
  • #3481: Share one registry-value parser between the JNA and FFM Windows installed-applications backends, so an application is resolved identically regardless of backend even when a value is stored as REG_DWORD or REG_BINARY rather than a string - @​dbwiddis.
  • #3482: Fix macOS getThreadCount() on the default JNA backend, which under-reported the thread count (a proc_listpids buffer size passed as an element count, and stale reused-buffer data counted for processes proc_pidinfo could not fill), and release the CoreFoundation device dictionary and lookup keys leaked per disk enumeration in the JNA disk-type detection - @​dbwiddis.
  • #3483: Fix several Windows backend issues: guard against a hard crash when enumerating a network session with a null client name, allocate the AMD ADL callback buffer from the C heap so the driver's free() is valid, close leaked system event-log handles, and read REG_QWORD/REG_BINARY registry values in the FFM backend so graphics-card VRAM is reported consistently with the JNA backend - @​dbwiddis.
  • #3484: Fix several parsing and consistency issues: return empty instead of throwing from ParseUtil.getStringBetween on a single unmatched delimiter, throw the documented IllegalArgumentException (not ArrayIndexOutOfBoundsException) for mismatched tick arrays, correct an off-by-one bounds guard in Solaris Prtvtoc, decode FreeBSD/Solaris utmpx session strings as UTF-8, and read native utmpx for Solaris sessions in the FFM backend to match the JNA backend - @​dbwiddis.
  • #3493: Document the CPU/memory trade-off of reusing versus recreating SystemInfo when polling, with supporting benchmarks - @​dbwiddis.
  • #3499: Fix FreeBSD, NetBSD, and OpenBSD df -i inode parsing to include ZFS, tmpfs, devfs, and mfs filesystems that do not start with / - @​dbwiddis.
  • #3504: Fix AIX processor cache detection, which read the POWER generation from the hostname (uname -n) instead of prtconf's Processor Version field, causing getProcessorCaches() to return an empty list - @​dbwiddis.
  • #3505: Fix the AIX FFM backend reading perfstat_partition_config_t.processorMHz at the wrong struct offset (344 instead of 340), which reported the processor's vendor frequency as unknown - @​dbwiddis.
  • #3507: Extend the native-free provider (oshi-common alone, no JNA or FFM) to NetBSD, so NetBSD users without the JNA native library can depend on oshi-common without --enable-native-access, as Linux already can - @​dbwiddis.
  • #3518: Consolidate the duplicated sysctl utility code into shared command-line (BsdSysctlUtil), JNA (SysctlUtilJNA), and FFM (SysctlFFM) helpers, and fix a latent bug where reading an int-width sysctl (e.g. FreeBSD hw.clockrate) through the long API returned uninitialized bytes, intermittently reporting an absurd CPU vendor frequency such as 6.2 EHz - @​dbwiddis.
  • #3519: Fix the Solaris JNA Kstat2 processor identifier reporting the CPU vendor frequency in MHz instead of Hz (missing the clock_MHz to Hz conversion applied on the other code paths) - @​dbwiddis.
  • #3525: Carry the exception log level with a new oshi.util.LogLevel enum instead of org.slf4j.event.Level, so OSHI no longer class-loads a type added in slf4j-api 1.7.15 on non-exceptional code paths and works again against host-provided slf4j-api older than 1.7.15 (e.g. the 1.7.5 bundled by Apache Maven 3.3.x) - @​wolfs.
  • #3526: Fix a potential NullPointerException in the macOS FFM process backend when an IOPlatformDevice entry has no readable name, and guard the native passwd/group struct dereferences against a null return - @​dbwiddis.
  • #3527: Consolidate the SLF4J log level dispatch duplicated in ExceptionUtil and PerfDataUtil into a new oshi.util.LogUtil, whose isEnabled method offers the slf4j 1.x-compatible equivalent of Logger#isEnabledForLevel - @​dbwiddis.
  • #3531: Stop reporting an implausible CPU or GPU temperature on Apple Silicon. An idle core cluster is power-gated and its die sensors then report a fixed parked value below room ambient, which was previously returned as a reading; Sensors#getCpuTemperature now reports 0 (unavailable) instead - @​dbwiddis.
  • #3535: Fix Sensors#getCpuTemperature returning 0 on Apple Silicon chips whose per-core SMC keys differ from the hardcoded set (e.g. the M3 Pro, where all five are absent). Prefer the chip-independent, firmware-computed CPU-die aggregate keys TCMb (die average) and TCMz (die max) before the per-core keys, reporting the die average - @​dbwiddis.
  • #3536: Discover Apple Silicon GPU temperature SMC keys at runtime instead of reading a fixed list of four chip-specific keys, and report the hottest GPU cluster rather than the first one found. Adds oshi.os.mac.sensors.gputemperature.keys to override the discovered keys - @​dbwiddis.
  • #3541: Identify Apple Silicon chips at runtime rather than from hardcoded tables that stopped at the M4. PhysicalProcessor#getEfficiency now classifies performance and efficiency cores from the IORegistry cluster-type property, fixing an all-zero classification (and the degraded per-core frequencies that followed from it) on newer chips, and ProcessorIdentifier#getMicroarchitecture falls back to a description derived from the core codenames instead of reporting unknown. An entry in oshi.architecture.properties still takes precedence where one exists - @​dbwiddis.
  • #3555: Fix Linux graphics cards all reporting the same VRAM, DRM device and GPU metrics: request the stable lspci -vnnmm machine-readable format so the Slot: field exists, stop discarding the PCI slot when entering a card record, and identify display controllers by PCI class 0x03 rather than a VGA substring match (expands to include XGA and others) - @​Krillsson.
  • #3561: Fix AIX reporting the current instant as its boot time, and an uptime of zero, when the uptime command transiently failed; parse the year-less who -b format AIX 7.3 emits, and add ParseUtil.parseYearlessDateToEpoch - @​dbwiddis.
  • #3562: Make Linux getMaxFreq() reproducible by resolving it from the cpufreq policy, lshw, and the vendor frequency rather than folding in a live frequency reading, returning -1 when none of those reports a maximum - @​dbwiddis.
  • #3564: Fix Linux getSoftOpenFileLimit() returning -1 for a process whose hard open-file limit is unlimited, discarding a valid soft limit - @​dbwiddis.
  • #3566: Read the OpenBSD host name from gethostname rather than resolving it, so getHostName() no longer reports localhost on a host whose name is not resolvable - @​dbwiddis.
  • #3568: Fix the Windows FFM getProcess(pid) and getProcesses(pids) returning a process that getProcesses() does not list, reporting a recently exited process as running with no path, no threads, and no CPU time - @​dbwiddis.
  • #3569: Fix three JNA/FFM divergences on the file-system and network paths: the macOS FFM file store never bailed when the DiskArbitration session failed to open (the guard tested a foreign pointer for Java null, which it can never be); Windows volumes whose mount-point list exceeds the buffer were dropped rather than re-read on ERROR_MORE_DATA (missing entirely on JNA, keyed on the wrong error code on FFM); and the Windows FFM TCP/UDP connection queries could transiently return no connections under connection churn, where JNA retries on ERROR_INSUFFICIENT_BUFFER - @​dbwiddis.

... (truncated)

Commits
  • ec6945c [maven-release-plugin] prepare release oshi-parent-7.4.2
  • e99828c 7.4.2 Release
  • 1166d60 Replace org.slf4j.event.Level with an OSHI-owned LogLevel enum (#3525)
  • 416d7d7 Update dependency org.apache.maven.plugins:maven-jar-plugin to v3.5.1 (#3522)
  • 6bf9fea Update github/codeql-action digest to e4fba86 (#3521)
  • d70c915 Guard null listFiles in MacOperatingSystem.getServices (Coverity CID 1673010)...
  • 4f9f2cd Test Advapi32UtilFFM registry DWORD/QWORD/BINARY reads (#3520)
  • f403790 Fix Solaris Kstat2 vendor frequency reported in MHz instead of Hz (#3519)
  • 5d304e0 Consolidate sysctl utilities into shared helpers and fix int-width sysctl mis...
  • 1d0803b Assign volatile path field once in LinuxOSProcess (Coverity CID 1673009) (#3516)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [com.github.oshi:oshi-core](https://github.com/oshi/oshi) from 6.9.0 to 7.4.2.
- [Release notes](https://github.com/oshi/oshi/releases)
- [Changelog](https://github.com/oshi/oshi/blob/master/CHANGELOG.md)
- [Commits](oshi/oshi@oshi-parent-6.9.0...oshi-parent-7.4.2)

---
updated-dependencies:
- dependency-name: com.github.oshi:oshi-core
  dependency-version: 7.4.2
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file java Pull requests that update java code labels Aug 8, 2026
@kaboombot kaboombot closed this Aug 8, 2026
@dependabot @github

dependabot Bot commented on behalf of github Aug 8, 2026

Copy link
Copy Markdown
Contributor Author

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot
dependabot Bot deleted the dependabot/maven/com.github.oshi-oshi-core-7.4.2 branch August 8, 2026 01:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file java Pull requests that update java code

Development

Successfully merging this pull request may close these issues.

1 participant