Skip to content

Releases: halildurmus/win32_registry

v2.0.0

02 Nov 10:57
ef1c449
Compare
Choose a tag to compare

This release introduces significant changes to the API with a streamlined
structure, new methods for specific registry data handling, and enhanced support
for monitoring registry key changes.

🔄 Breaking Changes

  • AccessRights:
    • win32Value field renamed to value.
  • Registry:
    • Now an abstract final class.
    • Removed performanceData static getter.
  • RegistryHive:
    • Constructor is now private.
    • win32Value field renamed to value.
  • RegistryKey:
    • Now a final class.
  • RegistryValue:
    • Now a sealed class.
    • Removed fromWin32 factory constructor.
    • Removed toWin32 getter.
    • Removed data field.
  • RegistryValueType:
    • Constructor is now private.
    • win32Value field renamed to value.
    • Removed unknown value.
    • Removed win32Type getter.

✨ New Features

  • Registry Hive Construction:
    • Added RegistryHive.fromWin32 factory constructor for creating hives based
      on Win32 constants.
  • Enhanced Data Retrieval:
    • Added type-specific methods to RegistryKey: getBinaryValue,
      getIntValue, getStringValue, and getStringArrayValue for retrieving
      data in specific formats.
    • Deprecated getValueAsInt and getValueAsString methods in favor of the
      new type-specific methods.
  • Registry Change Notifications:
    • Introduced RegistryKey.onChanged stream for monitoring registry key
      changes, with optional subkey tracking.
  • Typed Registry Values:
    • Introduced specialized subclasses in RegistryValue for each registry value
      type, enhancing clarity and simplifying data handling.
  • Registry Value Type Construction:
    • Added RegistryValueType.fromWin32 factory constructor to handle value type
      creation based on Win32 constants.

🚨 Dart SDK Requirement

  • Bumped the minimum required Dart SDK version to 3.5.0.

v1.1.5

13 Sep 08:39
fd20025
Compare
Choose a tag to compare
  • Fix issue where creating REG_SZ or REG_EXPANDED_SZ string registry values
    resulted in malformed data. The null terminator for string values was
    incorrectly encoded as a single byte instead of the required two bytes for
    UTF-16 encoding (#22, thanks to @dancarrollg).

v1.1.4

28 Jul 10:31
334abda
Compare
Choose a tag to compare
  • Fix issue where RegistryValue.data for binary-type registry values might be
    freed before being read (#19, thanks @tylerlacey).
  • Bump minimum required Dart SDK version to 3.4.0

v1.1.3

14 Apr 11:07
e15a945
Compare
Choose a tag to compare
  • Fix deprecation warnings
  • Update links
  • Bump minimum required Dart SDK version to 3.3.0