From 4970d39b137b1731bbe6344dc3892a40a4918871 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Halberstadt?= Date: Tue, 13 Oct 2026 19:48:18 +0200 Subject: [PATCH] Rename namespace to Tezmanian and prepare for Packagist - Namespace Tez\Utils -> Tezmanian\Utils, package tez/* -> tezmanian/* - Add keywords, homepage, authors and support metadata - Drop VCS repositories (resolved via Packagist) - Remove stale composer.lock, set license holder --- LICENSE | 2 +- README.md | 34 +++++++++++++++++++++++++--------- composer.json | 4 ++++ tests/StepTraitTest.php | 2 +- 4 files changed, 31 insertions(+), 11 deletions(-) diff --git a/LICENSE b/LICENSE index ff3a818..f0a8205 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2026 Development +Copyright (c) 2026 René Halberstadt Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including diff --git a/README.md b/README.md index 07fab56..15f6c0e 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,10 @@ # tez-utils-enum +[![CI](https://github.com/tezmanian/tez-utils-enum/actions/workflows/php.yml/badge.svg)](https://github.com/tezmanian/tez-utils-enum/actions/workflows/php.yml) +[![Packagist Version](https://img.shields.io/packagist/v/tezmanian/utils-enum)](https://packagist.org/packages/tezmanian/utils-enum) +[![PHP](https://img.shields.io/packagist/php-v/tezmanian/utils-enum)](https://packagist.org/packages/tezmanian/utils-enum) +[![License: MIT](https://img.shields.io/packagist/l/tezmanian/utils-enum)](LICENSE) + Composable PHP 8.3 traits that extend native enums with lookup, comparison, navigation, bitmask, label, and collection helpers. **Zero dependencies** · **PHPStan level 9** · **MIT** @@ -7,9 +12,11 @@ Composable PHP 8.3 traits that extend native enums with lookup, comparison, navi ## Installation ```bash -composer require tez/utils-enum +composer require tezmanian/utils-enum ``` +Package: [`tezmanian/utils-enum`](https://packagist.org/packages/tezmanian/utils-enum) · Namespace: `Tezmanian\Utils\Enum` + Requires PHP ≥ 8.3. ## Traits @@ -31,7 +38,7 @@ Requires PHP ≥ 8.3. Base trait for pure (unit) enums. Use `BackedEnumTrait` instead when your enum has backing values. ```php -use Tez\Utils\Enum\EnumTrait; +use Tezmanian\Utils\Enum\EnumTrait; enum Status { @@ -78,7 +85,7 @@ Status::toArray(); // ['Draft' => 'Draft', 'Published' => 'Published', 'Archived Extends `EnumTrait` for string- or int-backed enums. Overrides `is()` to match by backing value, and `toArray()` to return `[value => name]`. ```php -use Tez\Utils\Enum\BackedEnumTrait; +use Tezmanian\Utils\Enum\BackedEnumTrait; enum Color: string { @@ -124,7 +131,7 @@ Bitmask helpers for int-backed enums used as flag sets. Case values must be powe Does not include `BackedEnumTrait` — combine them explicitly if needed. ```php -use Tez\Utils\Enum\BitFlagTrait; +use Tezmanian\Utils\Enum\BitFlagTrait; enum Permission: int { @@ -168,7 +175,7 @@ Permission::fromBitmask(0); // [] Comparison helpers for int-backed enums, comparing cases by their backing values. ```php -use Tez\Utils\Enum\ComparableTrait; +use Tezmanian\Utils\Enum\ComparableTrait; enum Priority: int { @@ -205,7 +212,7 @@ Navigate to adjacent cases by definition order. Designed for state machines and Order is determined by **definition order** (ordinal), not backing value. Returns `null` at boundaries — no wrap-around. ```php -use Tez\Utils\Enum\StepTrait; +use Tezmanian\Utils\Enum\StepTrait; enum CheckoutStep { @@ -238,7 +245,7 @@ CheckoutStep::PersonalInfo->prev(); // null (first step) Human-readable labels for enum cases, without any framework dependency. Override `labels()` to supply custom mappings keyed by case name. Falls back to the case name when no label is defined. ```php -use Tez\Utils\Enum\TranslatableTrait; +use Tezmanian\Utils\Enum\TranslatableTrait; enum UserRole { @@ -280,7 +287,7 @@ UserRole::labelsArray(); Collection-style selection helpers. Can be combined with `EnumTrait` or `BackedEnumTrait`. Works with any enum type. ```php -use Tez\Utils\Enum\EnumCollectionTrait; +use Tezmanian\Utils\Enum\EnumCollectionTrait; enum Suit { @@ -359,6 +366,15 @@ enum Permission: int - PHP 8.3+ - No runtime dependencies +## Development + +```bash +make build && make install +make ci # audit, PHPStan, code style, tests +``` + ## License -MIT +MIT — see [LICENSE](LICENSE). + +Author: René Halberstadt diff --git a/composer.json b/composer.json index 876f50d..02d5811 100644 --- a/composer.json +++ b/composer.json @@ -18,6 +18,10 @@ "email": "tezmanian@gmail.com" } ], + "support": { + "issues": "https://github.com/tezmanian/tez-utils-enum/issues", + "source": "https://github.com/tezmanian/tez-utils-enum" + }, "autoload": { "psr-4": { "Tezmanian\\Utils\\Enum\\": "src/" diff --git a/tests/StepTraitTest.php b/tests/StepTraitTest.php index d5246d2..f0440fc 100644 --- a/tests/StepTraitTest.php +++ b/tests/StepTraitTest.php @@ -2,7 +2,7 @@ declare(strict_types=1); -namespace Tez\Utils\Tests\Enum; +namespace Tezmanian\Utils\Tests\Enum; use PHPUnit\Framework\TestCase; use Tezmanian\Utils\Enum\EnumTrait;