Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Atp Signals Laravel Package

socialdept/atp-signals

A Laravel package for working with AT Protocol signals, providing typed signal objects and integrations that make it easy to handle ATProto events and webhooks within your PHP applications.

View on GitHub
Deep Wiki
Context7

Getting Started

v1.1.0 is a breaking namespace release: SocialDept\Signals becomes SocialDept\AtpSignals. Treat this as a migration, not a routine minor update.

  1. Upgrade deliberately. If you are not ready to migrate, pin the package to the previous 1.0.* line so ^1.0 does not float into a breaking v1.1.0 install.
  2. Search the whole repository for SocialDept\Signals, not just app/. Start with app, config, database, routes, tests, resources, .env*, composer.json, and deployment/CI files.
  3. Replace package references with SocialDept\AtpSignals, then run composer dump-autoload and php artisan optimize:clear.
  4. Look first at the package service provider/config, EventServiceProvider::$listen, queued listeners/jobs, and any config values that store class names as strings.
  5. First use case: migrate one existing signal handler/listener end-to-end. Update its imports and type hints, run it against a local/test AT Protocol signal, confirm the event is received and the listener/queue job processes, then migrate the rest.

Implementation Patterns

  • Import package classes with the new namespace at the top of each file and use ::class constants in config/listener maps instead of hard-coded strings.
  • If you register listeners manually, update both the emitted event class and the listener class where they reference the package namespace.
  • Wrap package interaction behind an application-level adapter or service. Let your domain code depend on your own DTOs/events, not directly on package classes everywhere. This makes the next package rename or API change much smaller.
  • Queue expensive signal processing. AT Protocol signal handlers should be idempotent because retries/replays are common; use unique keys, upserts, or processed-message tracking.
  • Update tests that fake or mock package classes, for example Event::fake([SocialDept\AtpSignals\...::class]), queue assertions, and container resolution tests.
  • During a rolling deploy, consider a temporary class_alias bridge from the old namespace to the new one if old queued payloads or mixed workers may still reference SocialDept\Signals. Remove the alias once all workers, caches, and queues are on v1.1.0.
  • If the package publishes config containing class names, republish or diff it against the old config and replace any stale namespace strings.

Gotchas and Tips

  • This is namespace-wide breakage: update imports, type hints, config arrays, container bindings, facades, event/listener maps, morph maps, tests, and documentation.
  • The version number is misleading: v1.1.0 contains breaking changes. Do not let ^1.0 update production without a test run or a temporary 1.0.* pin.
  • Clear caches and restart workers after upgrading: php artisan optimize:clear, php artisan event:clear, php artisan queue:restart, and restart Octane/Horizon workers. Old cached config or long-running workers can keep the old namespace alive.
  • Search non-PHP files too: .env, YAML/JSON, seeders, migrations, CI workflows, deployment scripts, and database rows that store class names.
  • Queued and failed jobs may serialize old package class names. Drain queues before deploying, or keep old-namespace aliases available until jobs, failed_jobs, Redis/SQS payloads, and Horizon are clear.
  • Run composer dump-autoload -o after the update and verify package auto-discovery is using the new provider. If the old provider is cached, the app may fail before your code runs.
  • Add a CI grep or test that fails if SocialDept\Signals remains in source. Static analysis and IDE refactors will not catch string class references.
  • For debugging, check composer show, php artisan about, php artisan tinker with class_exists(...), and bootstrap/cache if stale classes still appear.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource