canyongbs/common
canyongbs/common is a shared Laravel/PHP utility package from Canyon PBS, bundling common helpers, support classes, and conventions for reuse across applications. It helps reduce duplication and standardize project foundations. Install via Composer.
Architecture fit. canyongbs/common is a horizontal, first-party utility package for Laravel applications — shared traits, base classes, config defaults, and test conventions. It is not load-bearing: nothing in the package is required to build a Laravel app. Its fit is therefore organisational rather than technical. It scores well if we are building inside the Canyon GBS product family or deliberately want to inherit their conventions; it scores poorly as a general-purpose dependency, because we would be adopting one vendor's internal house style as our own.
Integration feasibility. Mechanically trivial: composer require canyongbs/common:^2.43, package discovery registers the service provider, publishable config (if any) lands via vendor:publish. Consumption is by trait composition and static helpers, both of which are easy to graft onto an existing codebase incrementally. The real constraint is not engineering effort — it is that there is no public API reference. Beyond the README and changelog, an engineer must read src/ to know what is actually available. Budget a discovery spike before committing to a scope.
Technical risk. Three risks dominate, and only one is about this release.
NOASSERTION on GitHub while the description explicitly states the software is copyrighted and trademarked by Canyon GBS Inc. That is a procurement and legal question, not an engineering one, and it gates everything else. Redistribution, modification, and derivative-work rights must be established in writing before this enters a production dependency graph.Key questions.
Stack fit. Laravel with PHP 8.x, Composer, and — for the deprecated surface — a Pest test suite with Livewire coverage. Teams on PHPUnit-only testing or without Livewire can ignore the 2.43.0 deprecation entirely; they simply have less of the package's surface area to worry about.
Migration path. No migration is required to adopt 2.43.0. Adoption itself should be opt-in per helper, not a big-bang swap: pick one model or service that duplicates logic the package already provides, replace it with the package trait, and run the existing suite against it. That validates integration in isolation and gives a concrete data point for the go/no-go on broader rollout. The only standing action item is process-level — stop writing new tests against the deprecated Pest helper, and inventory existing usages.
Compatibility. Constrain to ^2.43 if we want the CI improvements; ^2.42 with a lockfile refresh is otherwise sufficient. Do not patch vendor/ — with this release cadence a patch survives weeks at most. Where the package exposes configuration, publish it, commit it, and treat it as app config. Where it exposes static helpers, wrap them behind a thin app-level adapter so they are mockable and the package reference stays greppable.
Sequencing for a TPM.
src/ and config/ to produce an inventory of what we would actually consume.Maintenance. Low per release, non-trivial in aggregate. Nothing in 2.43.0 touches runtime paths, so no monitoring, alerting, or runbook work is created. The ongoing cost is cadence management: batch upgrades monthly rather than per-release, and read each changelog rather than trusting the version bump — the one-line "deprecate X" entry is exactly what gets lost in a bulk composer update.
Support. First-party maintenance with PR-linked changelog entries and named reviewer involvement, which is a reasonable supportability signal. But there is no published SLA, no issue triage commitment, and no external community to absorb questions. We are effectively dependent on a small team's goodwill and priorities. That is acceptable for a convenience layer; it is not acceptable for anything we would call critical path.
Scaling. None. No runtime, query, caching, or queue implications in this release or in the package's stated scope.
Failure modes.
Ramp-up. Trivial for a Laravel/Pest engineer — one changelog read and the deprecation note. The non-obvious cost is discovery, because there is no API documentation; the half-day src/ inventory in the sequencing above is the realistic onboarding budget. Total engineering time for the bump plus helper inventory is roughly an hour; total time for a responsible adoption decision, including legal, is measured in days.
How can I help you explore Laravel packages today?