[metadata] name = sentry version = 23.11.0.dev0 description = A realtime logging and aggregation server. long_description = file: README.md long_description_content_type = text/markdown url = https://sentry.io author = Sentry author_email = oss@sentry.io license = BSL-1.1 license_file = LICENSE classifiers = Framework :: Django Intended Audience :: Developers Intended Audience :: System Administrators License :: Other/Proprietary License Operating System :: POSIX :: Linux Programming Language :: Python :: 3 Programming Language :: Python :: 3.8 Programming Language :: Python :: 3 :: Only Topic :: Software Development [options] packages = find: python_requires = >=3.8 include_package_data = True package_dir = =src zip_safe = False [options.packages.find] where = src [options.entry_points] console_scripts = sentry = sentry.runner:main sentry.apps = # TODO: This can be removed once the getsentry tests no longer check for this app auth_activedirectory = sentry.auth.providers.saml2.activedirectory auth_auth0 = sentry.auth.providers.saml2.auth0 auth_github = sentry.auth.providers.github auth_jumpcloud = sentry.auth.providers.saml2.jumpcloud auth_okta = sentry.auth.providers.saml2.okta auth_onelogin = sentry.auth.providers.saml2.onelogin auth_rippling = sentry.auth.providers.saml2.rippling auth_saml2 = sentry.auth.providers.saml2.generic jira = sentry_plugins.jira opsgenie = sentry_plugins.opsgenie redmine = sentry_plugins.redmine sessionstack = sentry_plugins.sessionstack trello = sentry_plugins.trello twilio = sentry_plugins.twilio sentry.plugins = amazon_sqs = sentry_plugins.amazon_sqs.plugin:AmazonSQSPlugin asana = sentry_plugins.asana.plugin:AsanaPlugin bitbucket = sentry_plugins.bitbucket.plugin:BitbucketPlugin github = sentry_plugins.github.plugin:GitHubPlugin gitlab = sentry_plugins.gitlab.plugin:GitLabPlugin heroku = sentry_plugins.heroku.plugin:HerokuPlugin jira = sentry_plugins.jira.plugin:JiraPlugin opsgenie = sentry_plugins.opsgenie.plugin:OpsGeniePlugin pagerduty = sentry_plugins.pagerduty.plugin:PagerDutyPlugin phabricator = sentry_plugins.phabricator.plugin:PhabricatorPlugin pivotal = sentry_plugins.pivotal.plugin:PivotalPlugin pushover = sentry_plugins.pushover.plugin:PushoverPlugin redmine = sentry_plugins.redmine.plugin:RedminePlugin segment = sentry_plugins.segment.plugin:SegmentPlugin sessionstack = sentry_plugins.sessionstack.plugin:SessionStackPlugin slack = sentry_plugins.slack.plugin:SlackPlugin splunk = sentry_plugins.splunk.plugin:SplunkPlugin trello = sentry_plugins.trello.plugin:TrelloPlugin twilio = sentry_plugins.twilio.plugin:TwilioPlugin victorops = sentry_plugins.victorops.plugin:VictorOpsPlugin [options.package_data] sentry = static/sentry/dist/** static/sentry/images/** static/sentry/js/** static/sentry/vendor/** [options.exclude_package_data] sentry = static/sentry/app/** static/sentry/fonts/** static/sentry/less/** [flake8] # File filtering is taken care of in pre-commit. # B error codes come from flake8-bugbear. List of codes: https://github.com/PyCQA/flake8-bugbear#list-of-warnings # E error codes come from pycodestyle. List of codes: https://pycodestyle.pycqa.org/en/latest/intro.html#error-codes # F error codes come from flake8. List of codes: https://flake8.pycqa.org/en/latest/user/error-codes.html # S error codes come from sentry-flake8. List of codes: https://github.com/getsentry/sentry/blob/master/tools/flake8_plugin.py # E203 false positive, see https://github.com/PyCQA/pycodestyle/issues/373 # B011 We don't use PYTHONOPTIMIZE. # XXX: E501 is ignored, which disables line length checking. # Currently, the black formatter doesn't wrap long strings: https://github.com/psf/black/issues/182#issuecomment-385325274 # We already have a lot of E501's - these are lines black didn't wrap. # But rather than append # noqa: E501 to all of them, we just ignore E501 for now. extend-ignore = E203,E501,E402,E731,B007,B009,B010,B011,B020,B023,B024,B026,B027 per-file-ignores = # these scripts must have minimal dependencies so opt out of the usual sentry rules tools/*: S .github/*: S [flake8:local-plugins] paths = . extension = S=tools.flake8_plugin:SentryCheck [bdist_wheel] python-tag = py38 [coverage:run] omit = src/sentry/migrations/* plugins = covdefaults [coverage:report] # Setting this to 0 makes it falsy, and it gets ignored, so we set it to # a value we'll never fall below. (0 is the default, but it's changed to 100 by # covdefaults, so this just changes it back.) fail_under = 0.01