From 955ccb1d23e64f8a6b52ff7d35a6908324499071 Mon Sep 17 00:00:00 2001 From: "Nikita P. Shupeyko" Date: Wed, 1 Mar 2017 15:43:41 +0300 Subject: [PATCH] Prevent PyCharm from formatting raven and opbeat imports Since raven and opbeat are required in production only, imports might (most surely will) be wiped out during PyCharm code clean up started in other environments. --- .../taskapp/celery.py | 26 ++++++++++++++----- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/taskapp/celery.py b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/taskapp/celery.py index 8346f837d..5f3c82787 100644 --- a/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/taskapp/celery.py +++ b/{{cookiecutter.project_slug}}/{{cookiecutter.project_slug}}/taskapp/celery.py @@ -28,22 +28,34 @@ class CeleryConfig(AppConfig): {% if cookiecutter.use_sentry_for_error_reporting == 'y' -%} if hasattr(settings, 'RAVEN_CONFIG'): # Celery signal registration - from raven import Client as RavenClient +{% if cookiecutter.use_pycharm == 'y' -%} # Since raven is required in production only, + # imports might (most surely will) be wiped out + # during PyCharm code clean up started + # in other environments. + # @formatter:off +{%- endif %}from raven import Client as RavenClient from raven.contrib.celery import register_signal as raven_register_signal - from raven.contrib.celery import register_logger_signal as raven_register_logger_signal - + from raven.contrib.celery import register_logger_signal as raven_register_logger_signal{% if cookiecutter.use_pycharm == 'y' -%} + # @formatter:on +{%- endif %} raven_client = RavenClient(dsn=settings.RAVEN_CONFIG['DSN']) raven_register_logger_signal(raven_client) raven_register_signal(raven_client) {%- endif %} {% if cookiecutter.use_opbeat == 'y' -%} - if hasattr(settings, 'OPBEAT'): - from opbeat.contrib.django.models import client as opbeat_client + if hasattr(settings, 'OPBEAT'):{% if cookiecutter.use_pycharm == 'y' -%} + # Since opbeat is required in production only, + # imports might (most surely will) be wiped out + # during PyCharm code clean up started + # in other environments. + # @formatter:off +{%- endif %}from opbeat.contrib.django.models import client as opbeat_client from opbeat.contrib.django.models import logger as opbeat_logger from opbeat.contrib.django.models import register_handlers as opbeat_register_handlers - from opbeat.contrib.celery import register_signal as opbeat_register_signal - + from opbeat.contrib.celery import register_signal as opbeat_register_signal{% if cookiecutter.use_pycharm == 'y' -%} + # @formatter:on +{%- endif %} try: opbeat_register_signal(opbeat_client) except Exception as e: