๐ Bus Framework 8.6.12 Release Notes / ๅๅธ่ฏดๆ
Changes since 8.6.11 / ่ช 8.6.11 ไปฅๆฅ็ๅๆด
- Version / ็ๆฌ๏ผ8.6.12
- Tag / ๆ ็ญพ๏ผ8.6.12
๐ฃ New Features / ๆฐ็นๆง
- โจ Add Validate typed error-code constants 115000-115027 for Parameter, Blank, Chinese, CitizenId, Compare, Date, Each, Email, English, Equals, False, In, InEnum, IntRange, IPAddress, Length, Mobile, Multiple, NotBlank, NotEmpty, NotIn, NotNull, Null, Phone, Reflect, Regex, Size, and True validators (d791153)
- โจ Add Validate default message templates for each validator and preserve placeholders such as field, value, min, max, enumClass, and regexp (d791153)
- โจ Add BSD Systat parser for CPU temperature, fan RPM, voltage, battery names, and battery capacity fields from
systat -ab sensors(e8f5414) - โจ Add OpenBSD sensor support backed by Systat for CPU temperature, fan speed, and voltage reporting (e8f5414)
- โจ Add Linux encrypted device-mapper partition support for CRYPT volumes with
/dev/mappernaming and holders fallback (bfe7944) - โจ Add DicomStowConfig HTTP protocol version option with HTTP/1.1 default and builder support (7274676)
- โจ Add Volume trilinear interpolation support for byte, short, int, float, and double MPR sample types (7274676)
- โจ Add Attributes.containsBulkData and removeAllBulkData(boolean) to detect and remove nested bulk-data sequences (7274676)
๐ Bug Fixes / Bug ไฟฎๅค
- ๐ Fix LinuxHWDiskStore device-mapper model selection to distinguish LVM logical volumes, CRYPT encrypted volumes, and generic mapper devices (bfe7944)
- ๐ Fix LinuxHWDiskStore mount resolution for encrypted volumes by checking
/dev/mappernames, devnodes, and holders-directory dependencies (bfe7944) - ๐ Fix MacCentralProcessor CPU tick parsing by converting Mach CPU tick counters to unsigned integer values (bfe7944)
- ๐ Fix MacHWDiskStore DiskArbitration, IOKit, and CoreFoundation lifecycle handling with nested try/finally releases (bfe7944)
- ๐ Fix MacFileSystem UUID lookup to avoid leaking IORegistry entries when non-IOMedia results are returned (bfe7944)
- ๐ Fix Windows registry session queries to close opened HKEY handles after volatile environment lookups (bfe7944)
- ๐ Fix Windows WTS process and session queries to release native process/session buffers on success, skip, and failure paths (bfe7944)
- ๐ Fix Windows RDP session parsing to guard empty WTS protocol, session-info, and client-address buffers before reading them (bfe7944)
- ๐ Fix Windows TCP and UDP connection table reads to close resized native Memory buffers after IP helper calls (bfe7944)
- ๐ Fix Validate Collector flattening so leaf criteria return themselves and aggregate pass state is computed recursively (d791153)
- ๐ Fix Validate non-fast mode to localize and interpolate failed criterion messages before storing Collector results (d791153)
- ๐ Fix Validate message interpolation by moving Criterion from HighMultiReplacer to two-pass StringTemplate placeholder formatting (d791153)
- ๐ Fix Errors.localizedMessage fallback order to prefer resource bundles, explicit annotation messages, registered errors, and then fallback text (d791153)
- ๐ Fix I18n lookup to return raw bundle values or keys when no MessageFormat arguments are supplied (d791153)
- ๐ Fix StowRS failed upload handling to read error streams, log bounded response bodies, throw on HTTP 4xx/5xx, and always disconnect (7274676)
- ๐ Fix EnumConverter custom converter fallback when a matching static conversion method returns null (7274676)
- ๐ Fix HexKit.format for odd-length hexadecimal input by normalizing to byte pairs before applying prefixes and separators (7274676)
๐ Refactoring / ้ๆ
- โป๏ธ Refactor Health Unix package layout by removing
org.miaixz.bus.health.unix.platformand moving AIX, FreeBSD, OpenBSD, and Solaris directly underorg.miaixz.bus.health.unix.*(0e985e9) - โป๏ธ Refactor shared Unix drivers, hardware helpers, and JNA bindings into
org.miaixz.bus.health.unix.shared.*(0e985e9) - โป๏ธ Refactor Health module-info exports, Platform enum mapping, and OS imports for the flattened Unix package structure (0e985e9)
- โป๏ธ Refactor FreeBSD Procstat, virtual-memory, file-system, and power-source code around the updated BSD support layer (e8f5414)
- โป๏ธ Refactor OpenBSD power-source and sensor code to reuse Systat parsing for battery and telemetry fields (e8f5414)
- โป๏ธ Refactor Solaris KstatKit and processor/power-source queries with safer numeric parsing and updated package paths (e8f5414)
- โป๏ธ Refactor Validate annotations to reference ErrorCode constants instead of Builder.DEFAULT_ERRCODE and inline default messages (d791153)
- โป๏ธ Refactor Provider message resolution into resolve(Criterion) so exception creation and collected results use the same normalization path (d791153)
- โป๏ธ Refactor Image STOW multipart response handling into bounded body readers, response verifiers, and part-header helpers (7274676)
๐ Documentation / ๆๆกฃ
- ๐ Update Validate README and README_CN custom validator examples to use ErrorCode._PARAMETER_VALIDATE instead of Builder.DEFAULT_ERRCODE (317039a)
- ๐ Clarify Transcoder srcPath JavaDoc for dcm2jpg and dcm2dcm to require a single existing DICOM file rather than a directory (7274676)
- ๐ Add package-info metadata for Auth router, Cortex magic event and revision settings, Gitlab hooks, Image dict and geometry, Logger apache metric, Mapper schema, Spring options, and Health Unix BSD/shared packages (0e985e9)
๐งฐ Build and Release / ๆๅปบไธๅๅธ
- ๐ง Add GraalVM reflect-config entries for Cortex DefaultRegistryBatchExecutor (44b1968)
- ๐ง Add GraalVM reflect-config entries for Mapper AOT/runtime components: MapperEntityResolver, MapperMethodTypeResolver, ScopedProviderHandler, MapperOptionsResolver, MapperPluginFactory, and MapperPluginProviders (44b1968)
- ๐ง Add GraalVM reflect-config entries for Health CupsPrinter, shared Unix drivers, shared Unix JNA structs, BSD Systat, and Systat BatteryFields (44b1968)
- ๐ง Update Health native-image metadata to match relocated Unix packages across shared, AIX, FreeBSD, OpenBSD, Solaris, and BSD classes (0e985e9)
- ๐จ Update bus-bom dependency versions for amazon.s3 2.40.17 and beetl 3.21.2.RELEASE (7274676)
- ๐ Update root VERSION and every module native-image index to include 8.6.12 metadata (ea3955c)
๐ Other Changes / ๅ ถไปๅๆด
- ๐ 8.6.12 (ea3955c)