Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add dbt-assertions package to hub #301

Merged
merged 1 commit into from
Jan 24, 2024
Merged

Conversation

AxelThevenot
Copy link
Contributor

@AxelThevenot AxelThevenot commented Jan 16, 2024

Description

dbt-assertions is a package designed for data testing capabilities at the row level integrated into the data pipeline flagging each row based on specific assertions it fails.

Link to your package's repository: https://github.com/AxelThevenot/dbt-assertions

Checklist

This checklist is a cut down version of the best practices that we have identified as the package hub has grown. Although meeting these checklist items is not a prerequisite to being added to the Hub, we have found that packages which don't conform provide a worse user experience.

First run experience

  • The package includes a README which explains how to get started with the package and customise its behaviour
  • The README indicates which data warehouses/platforms are expected to work with this package

Customisability

  • The package uses ref or source, instead of hard-coding table references.

Packages for data transformation (delete if not relevant):

  • provide a mechanism (such as variables) to customise the location of source tables.
  • do not assume database/schema names in sources.

Dependencies

Dependencies on dbt Core

  • The package has set a supported require-dbt-version range in dbt_project.yml. Example: A package which depends on functionality added in dbt Core 1.2 should set its require-dbt-version property to [">=1.2.0", "<2.0.0"].

Dependencies on other packages defined in packages.yml:

  • Dependencies are imported from the dbt Package Hub when available, as opposed to a git installation.
  • Dependencies contain the widest possible range of supported versions, to minimise issues in dependency resolution.
  • In particular, dependencies are not pinned to a patch version unless there is a known incompatibility.

Interoperability

  • The package does not override dbt Core behaviour in such a way as to impact other dbt resources (models, tests, etc) not provided by the package.
  • The package uses the cross-database macros built into dbt Core where available, such as {{ dbt.except() }} and {{ dbt.type_string() }}.
  • The package disambiguates its resource names to avoid clashes with nodes that are likely to already exist in a project. For example, packages should not provide a model simply called users.

Versioning

  • (Required): The package's git tags validates against the regex defined in version.py
  • The package's version follows the guidance of Semantic Versioning 2.0.0. (Note in particular the recommendation for production-ready packages to be version 1.0.0 or above)

@AxelThevenot
Copy link
Contributor Author

Update for a generic test and better documentation in 0.1.1
Everything ok now 😇

@joellabes , @dbeatty10

Copy link
Contributor

@joellabes joellabes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is wildly cool, I love it 🤩

Two comments:

  • now that this will be on the hub, please update the readme's sample code to a hub reference instead of installing directly from git
  • the dbt-assertions image header is clever, but I think it runs afoul of our trademark guidelines as it's "combined with another logo". Can you also update that?

ty!

@AxelThevenot
Copy link
Contributor Author

Oh my bad, let me change this during the day. I though it was a good idea but you're right

Thank you for the feedback I return to you as fast as possible

@AxelThevenot
Copy link
Contributor Author

AxelThevenot commented Jan 23, 2024

What about this image if I keep the for dbt part ?
Good for you, @joellabes ?
I'll update the documentation according to your answer, thank you 😄

image

@joellabes
Copy link
Contributor

Thanks for the quick turnaround @AxelThevenot! I have checked internally, and the takeaway is that you can't use the logo at all - the relevant part of the trademark guidelines is:

You may use the word Marks, but not the logo Marks, to truthfully describe the relationship between your software or services and ours

However you could do something like this:
image

(as long as the word mark includes the ™, which your current version does)

or use the name dbt-assertions on its own because of this carve out:

dbt packages [...] may use the word mark “dbt” as part of the project name

image

Hopefully that makes sense - lmk if not, either here or @joellabes on the community Slack

@AxelThevenot
Copy link
Contributor Author

Everything is now updated (image and install)
Thank you very much for your feedbacks !

@joellabes
Copy link
Contributor

YAY I am so excited to take this for a spin!

@joellabes joellabes merged commit 9fdae37 into dbt-labs:main Jan 24, 2024
3 checks passed
@AxelThevenot
Copy link
Contributor Author

You'll tell me :)

I have an other package I create the PR

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants