# This file is the entry point to configure your own services. # Files in the packages/ subdirectory configure your dependencies. # Put parameters here that don't need to change on each machine where the app is deployed # https://symfony.com/doc/current/best_practices/configuration.html#application-related-configuration parameters: locale: 'en' env(TRACKER_LIST_FILE): '%kernel.project_dir%/config/public_trackers.json' env(NEW_USER_INVITES): '10' services: # default configuration for services in *this* file _defaults: autowire: true # Automatically injects dependencies in your services. autoconfigure: true # Automatically registers your services as commands, event subscribers, etc. public: false # Allows optimizing the container by removing unused services; this also means # fetching services directly from the container via $container->get() won't work. # The best practice is to be explicit about your dependencies anyway. bind: $publicTrackers: '%env(json:file:resolve:TRACKER_LIST_FILE)%' $newUserInvites: '%env(NEW_USER_INVITES)%' $fromAddress: '%env(MAILER_FROM)%' # makes classes in src/ available to be used as services # this creates a service per class whose id is the fully-qualified class name App\: resource: '../src/' exclude: '../src/{Api/V1/{DTO},Magnetico/{Entity,Migrations},Entity,FormRequest,Migrations,Tests,View,Kernel.php}' # Use array in exclude config from Symfony 4.2 #- '../src/Api/V1/{DTO}' #- '../src/Magnetico/{Entity,Migrations}' #- '../src/{Entity,FormRequest,Migrations,Tests,Kernel.php}' App\Controller\: resource: '../src/Controller' tags: ['controller.service_arguments'] App\Api\V1\Controller\: resource: '../src/Api/V1/Controller' tags: ['controller.service_arguments'] # Fast normalizer for Symfony Serializer get_set_method_normalizer: class: Symfony\Component\Serializer\Normalizer\GetSetMethodNormalizer public: false tags: - { name: serializer.normalizer, priority: 1 } # Torrent searcher App\Search\TorrentSearcher: arguments: $classMetadata: '@=service(''doctrine.orm.magneticod_entity_manager'').getClassMetadata(''App\\Magnetico\\Entity\\Torrent'')' Monolog\Processor\PsrLogMessageProcessor: tags: { name: monolog.processor, handler: sentry } # Pagerfanta overrides pagerfanta.view.bootstrap4_pageless: class: App\Pager\View\TwitterBootstrap4PagelessView public: false tags: [{ name: pagerfanta.view, alias: twitter_bootstrap4_pageless }]