diff --git a/CHANGELOG.md b/CHANGELOG.md index b6cfaa1..5ac1b82 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [[v0.3.2](https://github.com/The-FireHub-Project/Runtime/compare/v0.3.1...v0.3.2)] – 2026-09-29 + +### Added +* Upgrade PHP compatibility to 8.2 and enforce readonly properties for runtime classes by @dieselxxx + ## [[v0.3.1](https://github.com/The-FireHub-Project/Runtime/compare/v0.3.0...v0.3.1)] – 2026-09-16 ### Added diff --git a/README.md b/README.md index ec20b88..dbe7ebf 100644 --- a/README.md +++ b/README.md @@ -7,12 +7,12 @@ PHP Runtime Foundation
release version @@ -22,25 +22,46 @@ /> -[![PHPStan](https://github.com/The-FireHub-Project/Runtime/actions/workflows/PHPStan.yml/badge.svg?branch=develop)](https://github.com/The-FireHub-Project/Runtime/actions/workflows/PHPStan.yml) -[![PHPUnit](https://github.com/The-FireHub-Project/Runtime/actions/workflows/PHPUnit.yml/badge.svg?branch=develop)](https://github.com/The-FireHub-Project/Runtime/actions/workflows/PHPUnit.yml) -[![Codecov](https://codecov.io/gh/The-FireHub-Project/Runtime/branch/develop/graph/badge.svg?token=XW2YEONF51)](https://app.codecov.io/gh/The-FireHub-Project/Runtime/tree/develop) -

- + + GitHub created at + GitHub last commit (branch) - + GitHub activity (branch) - + + GitHub contributors + GitHub commit difference between two branches + + GitHub top language + + GitHub repo size + + GitHub code size

@@ -54,47 +75,55 @@ Its role is to provide a consistent execution foundation between native PHP capa --- -## FireHub Icon Development Branch +## FireHub Icon Repository Purpose -⚠️ **This is the `develop` branch** +This repository provides a lightweight PHP runtime abstraction layer that wraps native PHP functionality into clean, consistent, and deterministic APIs. -- Unstable -- APIs may change without notice -- Not intended for production use +Its purpose is to reduce boilerplate and standardize common execution patterns across the FireHub ecosystem by offering ergonomic helper classes for arrays, strings, files, environment access, and other low-level runtime operations. -## FireHub Icon Branch Purpose +It is strictly focused on execution-level concerns and does not contain domain logic, business rules, or framework-level orchestration. It exists to improve developer productivity while preserving native PHP behavior and ensuring zero framework coupling. -The `develop` branch is the **primary integration branch** for all ongoing development. +## FireHub Icon Security -It serves as the staging area where: -- Feature branches are merged -- Bug fixes are integrated -- Experimental work is stabilized -- Code is prepared for upcoming releases +For security reporting and guidelines, please refer to our [SECURITY.md](https://github.com/The-FireHub-Project/.github/blob/master/.github/SECURITY.md) file. -All **release branches** are created **from `develop`**. +## FireHub Icon Community -## Stability Guarantee +![GitHub watchers](https://img.shields.io/github/watchers/The-FireHub-Project/Runtime?style=social) +![GitHub Repo stars](https://img.shields.io/github/stars/The-FireHub-Project/Runtime?style=social) +![GitHub forks](https://img.shields.io/github/forks/The-FireHub-Project/Runtime?style=social) -❌ No backward compatibility guarantee -❌ APIs may change without notice -❌ Behavior may be incomplete or inconsistent -❌ Breaking changes are expected +- Be sure to review the [Code of Conduct](https://github.com/The-FireHub-Project/.github/blob/master/.github/CODE_OF_CONDUCT.md). +- Read a [Contributing](https://github.com/The-FireHub-Project/.github/blob/master/.github/CONTRIBUTING.md) file to see how you can contribute to this project. +- Read our [Security policy](https://github.com/The-FireHub-Project/.github/blob/master/.github/SECURITY.md) file to see how you can report a vulnerability. +- Review the project [Governance model](https://github.com/The-FireHub-Project/.github/blob/master/.github/GOVERNANCE.md), including roles, decision-making, RFC process, and releases. -This branch is intended **only for contributors and advanced testers**. +## FireHub Icon Support -## FireHub Icon Composer Usage (Not Recommended) +

+ + GitHub in-progress issues + + GitHub total issues + + GitHub opened pull requests +

-For internal testing only: +For help with FireHub products, please refer to the following resources: -```json -{ - "require": { - "the-firehub-project/runtime": "dev-develop" - } -} -``` -⚠️ Never use dev-develop in production. +- **General questions & discussions**: [GitHub Discussions](https://github.com/orgs/The-FireHub-Project/discussions) +- **Bug reports & issues**: [Support](https://github.com/The-FireHub-Project/Runtime/issues) +- **Documentation & guides**: [FireHub Docs](https://the-firehub-project.github.io) +- **Commercial support** (Pro/Enterprise): contact your account manager ## FireHub Icon Authors and Contributors diff --git a/src/Arr/Access.php b/src/Arr/Access.php index e7fbdd2..4c70af6 100644 --- a/src/Arr/Access.php +++ b/src/Arr/Access.php @@ -43,7 +43,7 @@ * without introducing domain logic, framework coupling, or additional abstraction overhead. * @since 1.0.0 */ -final class Access extends NativeRuntime { +final readonly class Access extends NativeRuntime { /** * ### Checks if the given key or index exists in the array diff --git a/src/Arr/Composition.php b/src/Arr/Composition.php index c8ef5d3..257c578 100644 --- a/src/Arr/Composition.php +++ b/src/Arr/Composition.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -34,7 +34,7 @@ * without introducing domain logic, framework coupling, or additional abstraction overhead. * @since 1.0.0 */ -final class Composition extends NativeRuntime { +final readonly class Composition extends NativeRuntime { /** * ### Creates an array by using one array for keys and another for its values diff --git a/src/Arr/Inspection.php b/src/Arr/Inspection.php index 0b09cc5..8b862f9 100644 --- a/src/Arr/Inspection.php +++ b/src/Arr/Inspection.php @@ -38,7 +38,7 @@ * This component contains no domain logic, no framework coupling, and no business rules. * @since 1.0.0 */ -final class Inspection extends NativeRuntime { +final readonly class Inspection extends NativeRuntime { /** * ### Checks if all array elements satisfy a callback function diff --git a/src/Arr/Math.php b/src/Arr/Math.php index e4e770c..2b41c17 100644 --- a/src/Arr/Math.php +++ b/src/Arr/Math.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=8.0 + * @php-version >=8.2 * @package Runtime */ @@ -28,7 +28,7 @@ * without introducing domain logic, framework coupling, or additional abstraction overhead. * @since 1.0.0 */ -final class Math extends NativeRuntime { +final readonly class Math extends NativeRuntime { /** * ### Calculate the product of values in an array diff --git a/src/Arr/Mutation.php b/src/Arr/Mutation.php index 0a510ab..bf4825a 100644 --- a/src/Arr/Mutation.php +++ b/src/Arr/Mutation.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=8.0 + * @php-version >=8.2 * @package Runtime */ @@ -30,7 +30,7 @@ * without introducing domain logic, framework coupling, or additional abstraction overhead. * @since 1.0.0 */ -final class Mutation extends NativeRuntime { +final readonly class Mutation extends NativeRuntime { /** * ### Pop the element off the end of an array diff --git a/src/Arr/Ordering.php b/src/Arr/Ordering.php index fc63e8b..b5dc932 100644 --- a/src/Arr/Ordering.php +++ b/src/Arr/Ordering.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=8.1 + * @php-version >=8.2 * @package Runtime */ @@ -41,7 +41,7 @@ * without introducing domain logic, framework coupling, or additional abstraction overhead. * @since 1.0.0 */ -final class Ordering extends NativeRuntime { +final readonly class Ordering extends NativeRuntime { /** * ### Sorts array diff --git a/src/Arr/Pointer.php b/src/Arr/Pointer.php index c3f4cd6..bc6bf72 100644 --- a/src/Arr/Pointer.php +++ b/src/Arr/Pointer.php @@ -34,7 +34,7 @@ * operations without introducing domain logic, framework coupling, or additional abstraction overhead. * @since 1.0.0 */ -final class Pointer extends NativeRuntime { +final readonly class Pointer extends NativeRuntime { /** * ### Return the current element in an array diff --git a/src/Arr/SetOperation.php b/src/Arr/SetOperation.php index bf625ac..8ace44e 100644 --- a/src/Arr/SetOperation.php +++ b/src/Arr/SetOperation.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -42,7 +42,7 @@ * without introducing domain logic, framework coupling, or additional abstraction overhead. * @since 1.0.0 */ -final class SetOperation extends NativeRuntime { +final readonly class SetOperation extends NativeRuntime { /** * ### Computes the difference of arrays using values for comparison diff --git a/src/Arr/Structure.php b/src/Arr/Structure.php index d040866..088ecc1 100644 --- a/src/Arr/Structure.php +++ b/src/Arr/Structure.php @@ -39,7 +39,7 @@ * without introducing domain logic, framework coupling, or additional abstraction overhead. * @since 1.0.0 */ -final class Structure extends NativeRuntime { +final readonly class Structure extends NativeRuntime { /** * ### Split an array into chunks diff --git a/src/Arr/Transform.php b/src/Arr/Transform.php index 3018242..1dcd249 100644 --- a/src/Arr/Transform.php +++ b/src/Arr/Transform.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=8.1 + * @php-version >=8.2 * @package Runtime */ @@ -42,7 +42,7 @@ * operations without introducing domain logic, framework coupling, or additional abstraction overhead. * @since 1.0.0 */ -final class Transform extends NativeRuntime { +final readonly class Transform extends NativeRuntime { /** * ### Iteratively reduce the array to a single value using a callback function diff --git a/src/Binary.php b/src/Binary.php index ba47951..5ffc5b9 100644 --- a/src/Binary.php +++ b/src/Binary.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -28,7 +28,7 @@ * API while preserving the behavior and semantics of the underlying PHP runtime. * @since 1.0.0 */ -final class Binary extends NativeRuntime { +final readonly class Binary extends NativeRuntime { /** * ### Pack data into a binary string diff --git a/src/Char/MB.php b/src/Char/MB.php index d6d1701..4824c12 100644 --- a/src/Char/MB.php +++ b/src/Char/MB.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=8.1 + * @php-version >=8.2 * @package Runtime */ @@ -31,7 +31,7 @@ * processing while preserving native PHP behavior, encoding support, and runtime performance. * @since 1.0.0 */ -final class MB { +final readonly class MB { /** * ### Return character by Unicode code point value diff --git a/src/Char/SB.php b/src/Char/SB.php index 92432c1..9d2ce0a 100644 --- a/src/Char/SB.php +++ b/src/Char/SB.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.0 + * @php-version >=8.2 * @package Runtime */ @@ -30,7 +30,7 @@ * processing while preserving native PHP behavior, performance, and compatibility. * @since 1.0.0 */ -final class SB { +final readonly class SB { /** * ### Generate a single-byte string from a number diff --git a/src/Constant.php b/src/Constant.php index c84a789..82ea4a7 100644 --- a/src/Constant.php +++ b/src/Constant.php @@ -31,7 +31,7 @@ * additional abstraction or changing PHP semantics. * @since 1.0.0 */ -final class Constant extends NativeRuntime { +final readonly class Constant extends NativeRuntime { /** * ### Checks whether a given named constant exists diff --git a/src/Copy.php b/src/Copy.php index d360080..4608df6 100644 --- a/src/Copy.php +++ b/src/Copy.php @@ -32,7 +32,7 @@ * Circular object references are preserved during the copy operation. * @since 1.0.0 */ -final class Copy extends NativeRuntime { +final readonly class Copy extends NativeRuntime { /** * ### Creates a deep copy of the given value diff --git a/src/Data.php b/src/Data.php index 2c11da0..387098e 100644 --- a/src/Data.php +++ b/src/Data.php @@ -37,7 +37,7 @@ * without introducing domain logic, framework coupling, or additional abstraction overhead. * @since 1.0.0 */ -final class Data extends NativeRuntime { +final readonly class Data extends NativeRuntime { /** * ### Gets the type name of a variable in a way that is suitable for debugging diff --git a/src/DataIs.php b/src/DataIs.php index 33dc172..2ce117f 100644 --- a/src/DataIs.php +++ b/src/DataIs.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -39,7 +39,7 @@ * without introducing conversion, transformation, or additional abstraction logic. * @since 1.0.0 */ -final class DataIs extends NativeRuntime { +final readonly class DataIs extends NativeRuntime { /** * ### Checks whether the value is an array diff --git a/src/Date/Calendar.php b/src/Date/Calendar.php index 08e5a27..d2ad76e 100644 --- a/src/Date/Calendar.php +++ b/src/Date/Calendar.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=8.0 + * @php-version >=8.2 * @package Runtime */ @@ -26,7 +26,7 @@ * while preserving native runtime behavior. * @since 1.0.0 */ -final class Calendar extends NativeRuntime { +final readonly class Calendar extends NativeRuntime { /** * ### Check for a valid date diff --git a/src/Date/Format.php b/src/Date/Format.php index 9c23d98..eaa7445 100644 --- a/src/Date/Format.php +++ b/src/Date/Format.php @@ -26,7 +26,7 @@ * Provides low-level wrappers for formatting Unix timestamps into human-readable date and time representations while * preserving native PHP formatting behavior. */ -final class Format extends NativeRuntime { +final readonly class Format extends NativeRuntime { /** * ### Format a Unix timestamp diff --git a/src/Date/Parse.php b/src/Date/Parse.php index 0d4ba0b..96d0609 100644 --- a/src/Date/Parse.php +++ b/src/Date/Parse.php @@ -30,7 +30,7 @@ * native PHP behavior. * @since 1.0.0 */ -final class Parse extends NativeRuntime { +final readonly class Parse extends NativeRuntime { /** * ### Returns associative array with detailed info about the given date/time diff --git a/src/Date/Solar.php b/src/Date/Solar.php index 6acef70..6bfcd5e 100644 --- a/src/Date/Solar.php +++ b/src/Date/Solar.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -24,7 +24,7 @@ * PHP date functions. * @since 1.0.0 */ -final class Solar extends NativeRuntime { +final readonly class Solar extends NativeRuntime { /** * ### Gets information about sunset/sunrise and twilight begin/end diff --git a/src/Date/Timestamp.php b/src/Date/Timestamp.php index 0294d45..14964e6 100644 --- a/src/Date/Timestamp.php +++ b/src/Date/Timestamp.php @@ -26,7 +26,7 @@ * native runtime behavior. * @since 1.0.0 */ -final class Timestamp extends NativeRuntime { +final readonly class Timestamp extends NativeRuntime { /** * ### Format a Unix timestamp diff --git a/src/Date/Timezone.php b/src/Date/Timezone.php index 2b9862c..295f82b 100644 --- a/src/Date/Timezone.php +++ b/src/Date/Timezone.php @@ -30,7 +30,7 @@ * native runtime behavior. * @since 1.0.0 */ -final class Timezone extends NativeRuntime { +final readonly class Timezone extends NativeRuntime { /** * ### Gets the default timezone used by all date/time functions in a script diff --git a/src/FileSystem/File.php b/src/FileSystem/File.php index 0c8371d..6d216d0 100644 --- a/src/FileSystem/File.php +++ b/src/FileSystem/File.php @@ -46,7 +46,7 @@ * altering native runtime semantics. * @since 1.0.0 */ -final class File extends NativeRuntime { +final readonly class File extends NativeRuntime { /** * ### Checks whether a file or folder exists diff --git a/src/FileSystem/Folder.php b/src/FileSystem/Folder.php index 3ed0ab4..b4ffcd7 100644 --- a/src/FileSystem/Folder.php +++ b/src/FileSystem/Folder.php @@ -46,7 +46,7 @@ * altering native runtime semantics. * @since 1.0.0 */ -final class Folder extends NativeRuntime { +final readonly class Folder extends NativeRuntime { /** * ### Tells whether the filename is a regular folder diff --git a/src/FileSystem/Link.php b/src/FileSystem/Link.php index b59fae6..d7d188f 100644 --- a/src/FileSystem/Link.php +++ b/src/FileSystem/Link.php @@ -37,7 +37,7 @@ * altering native runtime semantics. * @since 1.0.0 */ -final class Link extends NativeRuntime { +final readonly class Link extends NativeRuntime { /** * ### Tells whether the path is a symbolic link diff --git a/src/FileSystem/Metadata.php b/src/FileSystem/Metadata.php index 4bfeb9e..e4a736f 100644 --- a/src/FileSystem/Metadata.php +++ b/src/FileSystem/Metadata.php @@ -52,7 +52,7 @@ * altering native runtime semantics. * @since 1.0.0 */ -final class Metadata extends NativeRuntime { +final readonly class Metadata extends NativeRuntime { /** * ### Gets file size diff --git a/src/FileSystem/Path.php b/src/FileSystem/Path.php index 4c29460..242d177 100644 --- a/src/FileSystem/Path.php +++ b/src/FileSystem/Path.php @@ -33,7 +33,7 @@ * native runtime semantics. * @since 1.0.0 */ -final class Path extends NativeRuntime { +final readonly class Path extends NativeRuntime { /** * ### Returns a trailing name component of a path diff --git a/src/FileSystem/Permission.php b/src/FileSystem/Permission.php index 865a737..3ec94d4 100644 --- a/src/FileSystem/Permission.php +++ b/src/FileSystem/Permission.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -29,7 +29,7 @@ * altering native runtime semantics. * @since 1.0.0 */ -final class Permission extends NativeRuntime { +final readonly class Permission extends NativeRuntime { /** * ### Tells whether the path is executable diff --git a/src/FileSystem/Storage.php b/src/FileSystem/Storage.php index 6d14e86..75220ee 100644 --- a/src/FileSystem/Storage.php +++ b/src/FileSystem/Storage.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -29,7 +29,7 @@ * altering native runtime semantics. * @since 1.0.0 */ -final class Storage extends NativeRuntime { +final readonly class Storage extends NativeRuntime { /** * ### Gets total size of a filesystem or disk partition diff --git a/src/Func.php b/src/Func.php index 1b6d71a..1bd4465 100644 --- a/src/Func.php +++ b/src/Func.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -29,7 +29,7 @@ * altering function invocation semantics. * @since 1.0.0 */ -final class Func extends NativeRuntime { +final readonly class Func extends NativeRuntime { /** * ### Checks if the function name exists diff --git a/src/Hash.php b/src/Hash.php index 94b9217..33d84ef 100644 --- a/src/Hash.php +++ b/src/Hash.php @@ -40,7 +40,7 @@ * hashing semantics. * @since 1.0.0 */ -final class Hash extends NativeRuntime { +final readonly class Hash extends NativeRuntime { /** * ### Generates a hash value diff --git a/src/Introspection.php b/src/Introspection.php index 716ed83..78b97e4 100644 --- a/src/Introspection.php +++ b/src/Introspection.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -31,7 +31,7 @@ * altering PHP execution semantics. * @since 1.0.0 */ -final class Introspection extends NativeRuntime { +final readonly class Introspection extends NativeRuntime { /** * ### Gets the declared classes diff --git a/src/Iterator.php b/src/Iterator.php index 7be1990..9bb5784 100644 --- a/src/Iterator.php +++ b/src/Iterator.php @@ -30,7 +30,7 @@ * without altering PHP iterator semantics. * @since 1.0.0 */ -final class Iterator extends NativeRuntime { +final readonly class Iterator extends NativeRuntime { /** * ### Copy the iterator into an array diff --git a/src/Json.php b/src/Json.php index c9ee254..a14cc08 100644 --- a/src/Json.php +++ b/src/Json.php @@ -36,7 +36,7 @@ * without altering PHP JSON semantics. * @since 1.0.0 */ -final class Json extends NativeRuntime { +final readonly class Json extends NativeRuntime { /** * ### JSON representation of a value diff --git a/src/Math.php b/src/Math.php index 29345f0..8ba125c 100644 --- a/src/Math.php +++ b/src/Math.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=8.1 + * @php-version >=8.2 * @package Runtime */ @@ -63,7 +63,7 @@ * without altering PHP math semantics. * @since 1.0.0 */ -final class Math extends NativeRuntime { +final readonly class Math extends NativeRuntime { /** * ### Finds whether a value is a legal finite number diff --git a/src/Math/DecimalEngine.php b/src/Math/DecimalEngine.php index ca72296..43e031a 100644 --- a/src/Math/DecimalEngine.php +++ b/src/Math/DecimalEngine.php @@ -31,7 +31,7 @@ * developer-facing API remain the responsibility of the Decimal Value Object. * @since 1.0.0 */ -final class DecimalEngine extends NativeRuntime { +final readonly class DecimalEngine extends NativeRuntime { /** * ### Implements operations diff --git a/src/Number.php b/src/Number.php index 859a06a..bc586f2 100644 --- a/src/Number.php +++ b/src/Number.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=8.1 + * @php-version >=8.2 * @package Runtime */ @@ -30,7 +30,7 @@ * hexadecimal, as well as formatting numbers for display. * @since 1.0.0 */ -final class Number extends NativeRuntime { +final readonly class Number extends NativeRuntime { /** * ### Format a number with grouped thousands diff --git a/src/ObjectModel/Identity.php b/src/ObjectModel/Identity.php index 9be9a80..fbed7ed 100644 --- a/src/ObjectModel/Identity.php +++ b/src/ObjectModel/Identity.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -26,7 +26,7 @@ * This component exposes native PHP object identity operations used for object comparison, tracking, and indexing. * @since 1.0.0 */ -final class Identity extends NativeRuntime { +final readonly class Identity extends NativeRuntime { /** * ### Return the integer object handle for a given object diff --git a/src/ObjectModel/Inspection.php b/src/ObjectModel/Inspection.php index 60a70ad..4feddda 100644 --- a/src/ObjectModel/Inspection.php +++ b/src/ObjectModel/Inspection.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=8.1 + * @php-version >=8.2 * @package Runtime */ @@ -31,7 +31,7 @@ * existence of runtime-defined entities without introducing reflection abstractions or additional behavior. * @since 1.0.0 */ -final class Inspection extends NativeRuntime { +final readonly class Inspection extends NativeRuntime { /** * ### Checks if a class name exists diff --git a/src/ObjectModel/Metadata.php b/src/ObjectModel/Metadata.php index 06d639d..c66f969 100644 --- a/src/ObjectModel/Metadata.php +++ b/src/ObjectModel/Metadata.php @@ -34,7 +34,7 @@ * information without introducing reflection-based abstractions. * @since 1.0.0 */ -final class Metadata extends NativeRuntime { +final readonly class Metadata extends NativeRuntime { /** * ### Creates an alias for a class diff --git a/src/ObjectModel/Relation.php b/src/ObjectModel/Relation.php index a4eb59c..ddebfef 100644 --- a/src/ObjectModel/Relation.php +++ b/src/ObjectModel/Relation.php @@ -34,7 +34,7 @@ * runtime behavior. * @since 1.0.0 */ -final class Relation extends NativeRuntime { +final readonly class Relation extends NativeRuntime { /** * ### Checks whether the object or class is of a given type or subtype diff --git a/src/Random.php b/src/Random.php index 5c9fc5e..504930d 100644 --- a/src/Random.php +++ b/src/Random.php @@ -35,7 +35,7 @@ * without altering PHP randomness semantics. * @since 1.0.0 */ -final class Random extends NativeRuntime { +final readonly class Random extends NativeRuntime { /** * ### Generate a random value via the Mersenne Twister Random Number Generator diff --git a/src/ResourceManager.php b/src/ResourceManager.php index 144e0bd..3833ff4 100644 --- a/src/ResourceManager.php +++ b/src/ResourceManager.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=8.1 + * @php-version >=8.2 * @package Runtime */ @@ -30,7 +30,7 @@ * altering native resource semantics. * @since 1.0.0 */ -final class ResourceManager extends NativeRuntime { +final readonly class ResourceManager extends NativeRuntime { /** * ### Returns an integer identifier for the given resource diff --git a/src/Shutdown.php b/src/Shutdown.php index 5463d6e..5d4661a 100644 --- a/src/Shutdown.php +++ b/src/Shutdown.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -27,7 +27,7 @@ * shutdown lifecycle semantics. * @since 1.0.0 */ -final class Shutdown extends NativeRuntime { +final readonly class Shutdown extends NativeRuntime { /** * ### Register a function for execution on shutdown diff --git a/src/SplAutoload.php b/src/SplAutoload.php index cbe4798..ceecd80 100644 --- a/src/SplAutoload.php +++ b/src/SplAutoload.php @@ -28,7 +28,7 @@ * autoload execution semantics. * @since 1.0.0 */ -final class SplAutoload extends NativeRuntime { +final readonly class SplAutoload extends NativeRuntime { /** * ### Register a callback function as an autoloader diff --git a/src/Str/MB/Access.php b/src/Str/MB/Access.php index 42865e5..c956e15 100644 --- a/src/Str/MB/Access.php +++ b/src/Str/MB/Access.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=8.1 + * @php-version >=8.2 * @package Runtime */ @@ -35,7 +35,7 @@ * operations without introducing domain logic, framework coupling, or additional abstraction overhead. * @since 1.0.0 */ -final class Access extends NativeRuntime { +final readonly class Access extends NativeRuntime { /** * ### Get part of string diff --git a/src/Str/MB/Casing.php b/src/Str/MB/Casing.php index f6fea94..34d2d73 100644 --- a/src/Str/MB/Casing.php +++ b/src/Str/MB/Casing.php @@ -27,7 +27,7 @@ * transformation operations with support for Unicode-aware character processing. * @since 1.0.0 */ -final class Casing extends NativeRuntime { +final readonly class Casing extends NativeRuntime { /** * ### Perform case folding on a string diff --git a/src/Str/MB/Configuration.php b/src/Str/MB/Configuration.php index f864a4c..900e7d2 100644 --- a/src/Str/MB/Configuration.php +++ b/src/Str/MB/Configuration.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=8.1 + * @php-version >=8.2 * @package Runtime */ @@ -29,7 +29,7 @@ * runtime configuration while preserving native PHP behavior, encoding support, and runtime performance. * @since 1.0.0 */ -final class Configuration extends NativeRuntime { +final readonly class Configuration extends NativeRuntime { /** * ### Set/Get internal character encoding diff --git a/src/Str/MB/Inspection.php b/src/Str/MB/Inspection.php index 2aa2d45..d86d5aa 100644 --- a/src/Str/MB/Inspection.php +++ b/src/Str/MB/Inspection.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=8.1 + * @php-version >=8.2 * @package Runtime */ @@ -32,7 +32,7 @@ * operations without introducing domain logic, framework coupling, or additional abstraction overhead. * @since 1.0.0 */ -final class Inspection extends NativeRuntime { +final readonly class Inspection extends NativeRuntime { /** * ### Get string length diff --git a/src/Str/MB/Regex.php b/src/Str/MB/Regex.php index 7479071..7c10990 100644 --- a/src/Str/MB/Regex.php +++ b/src/Str/MB/Regex.php @@ -34,7 +34,7 @@ * functions while preserving native runtime behavior. * @since 1.0.0 */ -final class Regex extends NativeRuntime { +final readonly class Regex extends NativeRuntime { /** * ### Perform a regular expression match diff --git a/src/Str/MB/Search.php b/src/Str/MB/Search.php index a2af8db..b948e39 100644 --- a/src/Str/MB/Search.php +++ b/src/Str/MB/Search.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=8.1 + * @php-version >=8.2 * @package Runtime */ @@ -33,7 +33,7 @@ * or additional abstraction overhead. * @since 1.0.0 */ -final class Search extends NativeRuntime { +final readonly class Search extends NativeRuntime { /** * ### Find the position of the first occurrence for a substring in a string diff --git a/src/Str/MB/Transform.php b/src/Str/MB/Transform.php index 9cdadd9..100575b 100644 --- a/src/Str/MB/Transform.php +++ b/src/Str/MB/Transform.php @@ -40,7 +40,7 @@ * transformation operations with support for Unicode-aware character processing. * @since 1.0.0 */ -final class Transform extends NativeRuntime { +final readonly class Transform extends NativeRuntime { /** * ### Pad a multibyte string to a certain length with another multibyte string diff --git a/src/Str/SB/Access.php b/src/Str/SB/Access.php index 2e36035..bda6c54 100644 --- a/src/Str/SB/Access.php +++ b/src/Str/SB/Access.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -34,7 +34,7 @@ * operations without introducing domain logic, framework coupling, or additional abstraction overhead. * @since 1.0.0 */ -final class Access extends NativeRuntime { +final readonly class Access extends NativeRuntime { /** * ### Get part of string diff --git a/src/Str/SB/Casing.php b/src/Str/SB/Casing.php index 6fba48a..efc45eb 100644 --- a/src/Str/SB/Casing.php +++ b/src/Str/SB/Casing.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -31,7 +31,7 @@ * transformation operations without introducing domain logic, framework coupling, or additional abstraction overhead. * @since 1.0.0 */ -final class Casing extends NativeRuntime { +final readonly class Casing extends NativeRuntime { /** * ### Make string lowercase diff --git a/src/Str/SB/Compare.php b/src/Str/SB/Compare.php index e60663a..f4bd068 100644 --- a/src/Str/SB/Compare.php +++ b/src/Str/SB/Compare.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=8.0 + * @php-version >=8.2 * @package Runtime */ @@ -30,7 +30,7 @@ * comparison operations without introducing domain logic, framework coupling, or additional abstraction overhead. * @since 1.0.0 */ -final class Compare extends NativeRuntime { +final readonly class Compare extends NativeRuntime { /** * ### String comparison diff --git a/src/Str/SB/Delimiter.php b/src/Str/SB/Delimiter.php index 16418fa..4034406 100644 --- a/src/Str/SB/Delimiter.php +++ b/src/Str/SB/Delimiter.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -30,7 +30,7 @@ * concatenation operations without introducing domain logic, framework coupling, or additional abstraction overhead. * @since 1.0.0 */ -final class Delimiter extends NativeRuntime { +final readonly class Delimiter extends NativeRuntime { /** * ### Join array elements with a string diff --git a/src/Str/SB/Escape.php b/src/Str/SB/Escape.php index 95d0870..d741ab7 100644 --- a/src/Str/SB/Escape.php +++ b/src/Str/SB/Escape.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -32,7 +32,7 @@ * operations without introducing domain logic, framework coupling, or additional abstraction overhead. * @since 1.0.0 */ -final class Escape extends NativeRuntime { +final readonly class Escape extends NativeRuntime { /** * ### Quote string with slashes diff --git a/src/Str/SB/Inspection.php b/src/Str/SB/Inspection.php index 8acdedc..5c2ca76 100644 --- a/src/Str/SB/Inspection.php +++ b/src/Str/SB/Inspection.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -28,7 +28,7 @@ * inspection operations without introducing domain logic, framework coupling, or additional abstraction overhead. * @since 1.0.0 */ -final class Inspection extends NativeRuntime { +final readonly class Inspection extends NativeRuntime { /** * ### Get string length diff --git a/src/Str/SB/Regex.php b/src/Str/SB/Regex.php index 31f3f52..0c7e837 100644 --- a/src/Str/SB/Regex.php +++ b/src/Str/SB/Regex.php @@ -30,7 +30,7 @@ * regular expression engine while preserving native runtime behavior. * @since 1.0.0 */ -final class Regex extends NativeRuntime { +final readonly class Regex extends NativeRuntime { /** * ### Perform a regular expression match diff --git a/src/Str/SB/Replace.php b/src/Str/SB/Replace.php index a3126ec..3f1393c 100644 --- a/src/Str/SB/Replace.php +++ b/src/Str/SB/Replace.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.0 + * @php-version >=8.2 * @package Runtime */ @@ -30,7 +30,7 @@ * operations without introducing domain logic, framework coupling, or additional abstraction overhead. * @since 1.0.0 */ -final class Replace extends NativeRuntime { +final readonly class Replace extends NativeRuntime { /** * ### Replace all occurrences of the search string with the replacement string diff --git a/src/Str/SB/Search.php b/src/Str/SB/Search.php index 31b1999..455cd9b 100644 --- a/src/Str/SB/Search.php +++ b/src/Str/SB/Search.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=8.0 + * @php-version >=8.2 * @package Runtime */ @@ -35,7 +35,7 @@ * operations without introducing domain logic, framework coupling, or additional abstraction overhead. * @since 1.0.0 */ -final class Search extends NativeRuntime { +final readonly class Search extends NativeRuntime { /** * ### Checks if a string contains a value diff --git a/src/Str/SB/Transform.php b/src/Str/SB/Transform.php index 24b429e..9983f89 100644 --- a/src/Str/SB/Transform.php +++ b/src/Str/SB/Transform.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=8.1 + * @php-version >=8.2 * @package Runtime */ @@ -44,7 +44,7 @@ * transformation operations without introducing domain logic, framework coupling, or additional abstraction overhead. * @since 1.0.0 */ -final class Transform extends NativeRuntime { +final readonly class Transform extends NativeRuntime { /** * ### Repeat a string diff --git a/src/System/Clock.php b/src/System/Clock.php index ed5ce4f..24f110a 100644 --- a/src/System/Clock.php +++ b/src/System/Clock.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -29,7 +29,7 @@ * without altering native runtime semantics. * @since 1.0.0 */ -final class Clock extends NativeRuntime { +final readonly class Clock extends NativeRuntime { /** * ### Return current Unix timestamp diff --git a/src/System/Configuration.php b/src/System/Configuration.php index 37786e8..0a78437 100644 --- a/src/System/Configuration.php +++ b/src/System/Configuration.php @@ -38,7 +38,7 @@ * altering the underlying PHP configuration system. * @since 1.0.0 */ -final class Configuration extends NativeRuntime { +final readonly class Configuration extends NativeRuntime { /** * ### Retrieve a path to the loaded php.ini file diff --git a/src/System/Environment.php b/src/System/Environment.php index 7a7cd57..9c5d4b2 100644 --- a/src/System/Environment.php +++ b/src/System/Environment.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=8.0 + * @php-version >=8.2 * @package Runtime */ @@ -30,7 +30,7 @@ * operating system or process environment semantics. * @since 1.0.0 */ -final class Environment extends NativeRuntime { +final readonly class Environment extends NativeRuntime { /** * ### Gets the value of a single or all the environment variables diff --git a/src/System/Extension.php b/src/System/Extension.php index 1d43fe2..4879031 100644 --- a/src/System/Extension.php +++ b/src/System/Extension.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -30,7 +30,7 @@ * altering extension loading or execution semantics. * @since 1.0.0 */ -final class Extension extends NativeRuntime { +final readonly class Extension extends NativeRuntime { /** * ### Check if a PHP extension is loaded diff --git a/src/System/FileSystem.php b/src/System/FileSystem.php index 43c321e..5cefbb9 100644 --- a/src/System/FileSystem.php +++ b/src/System/FileSystem.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -28,7 +28,7 @@ * native runtime behavior. * @since 1.0.0 */ -final class FileSystem extends NativeRuntime { +final readonly class FileSystem extends NativeRuntime { /** * ### Array with the names of included or required files diff --git a/src/System/Memory.php b/src/System/Memory.php index 6f9e167..cbb027a 100644 --- a/src/System/Memory.php +++ b/src/System/Memory.php @@ -30,7 +30,7 @@ * altering native runtime behavior. * @since 1.0.0 */ -final class Memory extends NativeRuntime { +final readonly class Memory extends NativeRuntime { /** * ### Gets the amount of memory allocated to PHP diff --git a/src/System/Platform.php b/src/System/Platform.php index fab1450..d5570c5 100644 --- a/src/System/Platform.php +++ b/src/System/Platform.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -28,7 +28,7 @@ * operating system detection semantics. * @since 1.0.0 */ -final class Platform extends NativeRuntime { +final readonly class Platform extends NativeRuntime { /** * ### Gets OS information diff --git a/src/System/Process.php b/src/System/Process.php index 6a4d88b..6a5e828 100644 --- a/src/System/Process.php +++ b/src/System/Process.php @@ -28,7 +28,7 @@ * operating system process semantics. * @since 1.0.0 */ -final class Process extends NativeRuntime { +final readonly class Process extends NativeRuntime { /** * ### Gets PHP's process ID diff --git a/src/System/Runtime.php b/src/System/Runtime.php index e1d5e34..6bfdeb8 100644 --- a/src/System/Runtime.php +++ b/src/System/Runtime.php @@ -32,7 +32,7 @@ * runtime detection semantics. * @since 1.0.0 */ -final class Runtime extends NativeRuntime { +final readonly class Runtime extends NativeRuntime { /** * ### Type of interface between web server and PHP diff --git a/src/System/Time.php b/src/System/Time.php index d004851..aff7577 100644 --- a/src/System/Time.php +++ b/src/System/Time.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -32,7 +32,7 @@ * altering native runtime behavior. * @since 1.0.0 */ -final class Time extends NativeRuntime { +final readonly class Time extends NativeRuntime { /** * ### Delay execution diff --git a/src/Tick.php b/src/Tick.php index a6dc730..2f10ae7 100644 --- a/src/Tick.php +++ b/src/Tick.php @@ -7,7 +7,7 @@ * @copyright 2026-present The FireHub Project - All rights reserved * @license https://opensource.org/license/Apache-2-0 Apache License, Version 2.0 * - * @php-version >=7.4 + * @php-version >=8.2 * @package Runtime */ @@ -29,7 +29,7 @@ * semantics. * @since 1.0.0 */ -final class Tick extends NativeRuntime { +final readonly class Tick extends NativeRuntime { /** * ### Register a function for execution on each tick