Skip to content

3.4.4

Choose a tag to compare

@peterujah peterujah released this 02 Jan 13:42
· 80 commits to main since this release

Full Changelog: 3.4.3...3.4.4

New Features

  • Pipeline Chaining: Added support for processing chained tasks for transformations in the pipeline.

Optimizations

  • Lazy Object: Enhanced to support custom initialization arguments. Introduced the newLazyInstance method to create new instances of the lazy class with optional arguments.

  • IP Address Class: Optimized the IP address class with the following updates:

    • toIpv4: Converts a IPv6-mapped address to its IPv4 representation.
    • toIPv6: Converts an IPv4 address to its IPv6-mapped representation.
    • equals: Compares two IP addresses for equality.
    • Enhanced the toNumeric method and improved mapped IPv6 handling.

Bug Fixes

  • App Exception Class: Fixed an issue where exceptions were reported with incorrect file and line numbers when thrown via the throwException method.

    • throwAs Method: Now supports handling or rethrowing exceptions with a custom exception class.

    Example:

    use \Luminova\Exceptions\AppException;
    use \App\Utils\CustomException;
    use \Error;
    
    try {
      throw new Error('An error occurred');
    } catch (Exception $e) {
      if($e instanceof AppException) {
          $e->handle();
          return;
      }
    
      AppException::throwAs($e, CustomException::class);
    }