# Imports from billing/ into web/ (fictional Quillrow app), generated by grep on main # Goal: billing/ imports nothing from web/, so the nightly batch worker (worker/nightly.py) # can import billing without starting the web framework. billing/invoices.py:4 from web.request_context import current_tenant billing/invoices.py:5 from web.templates import render_pdf billing/proration.py:3 from web.settings import BILLING_ROUNDING billing/proration.py:9 from web.request_context import current_tenant billing/dunning.py:2 from web.mailer import send_mail billing/dunning.py:3 from web.templates import render_email billing/tax.py:6 from web.settings import TAX_REGION # Imports inside web/ that the above pull in web/request_context.py imports web.app (starts the framework on import) web/templates.py imports web.app web/mailer.py imports web.templates web/settings.py no web imports # Callers of billing from outside billing/ web/views/invoices.py billing.invoices.issue_invoice web/views/plans.py billing.proration.prorate worker/nightly.py (wants) billing.dunning.run_dunning, billing.invoices.issue_invoice