Is this your first time submitting a feature request?
Describe the feature
When writing doc blocks, sometimes it's useful to include formulas of the calculation so other users know precisely how a particular metric is defined. Currently, DBT supports Markdown rendering in its docs. LaTeX is the typical way to write formulae, and is supported by a large range of Markdown "flavours". It should be fairly simple to add a LaTeX preprocessor to the DocumentationParser.parse_block() method, which could be bundled as an optional dependency to ensure no performance hit for existing users.
Describe alternatives you've considered
- Writing code blocks into the doc string helps sometimes, but choice of language and implementation details sometimes make the intent unclear.
- "Verbal" descriptions work for simple formulae, but sometimes things like algebraic substitutions get messy if using words to describe formula substitutions
- External documentation breaks one of the nice things about DBT, that it all lives in one codebase!
Who will this benefit?
- Maintainers of the DBT model who are governing more complex metrics
- Anyone who needs a little more flexibility in writing their docs
- Teams that work closely with data scientists or other Jupyter-like markdown standards
It also keeps DBT in line with how Markdown works on a lot of platforms (e.g. Github)
Are you interested in contributing this feature?
I'd be happy to implement, given some road rules esp. about bundling additional packages
Anything else?
Not a huge priority, obviously, but would be a nice QoL boost for better docs.
Is this your first time submitting a feature request?
Describe the feature
When writing doc blocks, sometimes it's useful to include formulas of the calculation so other users know precisely how a particular metric is defined. Currently, DBT supports Markdown rendering in its docs. LaTeX is the typical way to write formulae, and is supported by a large range of Markdown "flavours". It should be fairly simple to add a LaTeX preprocessor to the
DocumentationParser.parse_block()method, which could be bundled as an optional dependency to ensure no performance hit for existing users.Describe alternatives you've considered
Who will this benefit?
It also keeps DBT in line with how Markdown works on a lot of platforms (e.g. Github)
Are you interested in contributing this feature?
I'd be happy to implement, given some road rules esp. about bundling additional packages
Anything else?
Not a huge priority, obviously, but would be a nice QoL boost for better docs.