adrianbaez/easysf-bundle
Symfony bundle that simplifies working with Salesforce by providing basic configuration and helper services to connect, authenticate, and run common API operations in Symfony apps. Useful for quick SF integration without heavy setup.
easysf-bundle appears to be a Symfony bundle (Laravel-compatible via Symfony Bridge) designed to integrate with Salesforce via Simple Salesforce (easysf). Its architecture is procedural and tightly coupled to the underlying easysf library, which may not align with modern Laravel’s dependency injection (DI) and service container paradigms.config/app.php, AppServiceProvider) may not be followed.easysf (v1.x) may pull in old Symfony components (e.g., symfony/http-foundation:3.x), which could conflict with Laravel’s dependencies.| Risk Area | Severity | Mitigation Strategy |
|---|---|---|
| Deprecated Code | High | Fork/replace with jedwards28/sfdc or salesforce-marketing-cloud/salesforce-marketing-cloud-php-sdk. |
| Laravel Incompatibility | High | Abstract behind a facade or wrapper to isolate Symfony dependencies. |
| No Async Support | Medium | Implement queued jobs for API calls. |
| Lack of Testing | High | Write Pest/PHPUnit tests for critical paths (auth, bulk API). |
| Security Risks | Medium | Audit for hardcoded credentials or insecure OAuth flows. |
easysf uniquely supports?jedwards28/sfdc or the official Salesforce PHP Toolkit?HttpFoundation versions).jedwards28/sfdc (more active, Laravel-friendly).// app/Services/SalesforceService.php
class SalesforceService {
public function __construct(private EasySfClient $client) {}
public function syncLeads() { /* ... */ }
}
jedwards28/sfdc.| Component | Risk Level | Notes |
|---|---|---|
| PHP 8.1+ | High | Bundle may fail on named args, union types, or attributes. |
| Laravel 9/10 | High | Symfony Bridge changes may break DI. |
| Composer Dependencies | High | Conflicts with symfony/http-foundation:3.x. |
| Salesforce API v50+ | Medium | easysf may not support latest API versions. |
| Laravel Queues | Low | Can be added as a wrapper layer. |
// config/services.php
'salesforce' => [
'client' => \App\Services\SalesforceService::class,
];
jedwards28/sfdc.composer.json to avoid surprises.return_type_declaration polyfill").InvalidSessionId").jedwards28/sfdc) ready.How can I help you explore Laravel packages today?