diff --git a/CHANGELOG.md b/CHANGELOG.md index 7714a32c439..ee94915120a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,6 +18,7 @@ - Use mashumaro for serialization in event logging ([#4504](https://github.com/dbt-labs/dbt-core/issues/4504), [#4505](https://github.com/dbt-labs/dbt-core/pull/4505)) - Drop support for Python 3.7.0 + 3.7.1 ([#4584](https://github.com/dbt-labs/dbt-core/issues/4584), [#4585](https://github.com/dbt-labs/dbt-core/pull/4585), [#4643](https://github.com/dbt-labs/dbt-core/pull/4643)) - Re-format codebase (except tests) using pre-commit hooks ([#3195](https://github.com/dbt-labs/dbt-core/issues/3195), [#4697](https://github.com/dbt-labs/dbt-core/pull/4697)) +- Add deps module README ([#4686](https://github.com/dbt-labs/dbt-core/pull/4686/)) Contributors: - [@NiallRees](https://github.com/NiallRees) ([#4447](https://github.com/dbt-labs/dbt-core/pull/4447)) diff --git a/core/dbt/deps/README.md b/core/dbt/deps/README.md index 62a97515f9a..a00802cefbf 100644 --- a/core/dbt/deps/README.md +++ b/core/dbt/deps/README.md @@ -1 +1,35 @@ # Deps README + +The deps module is responsible for installing dbt packages into dbt projects. A dbt package is a standalone dbt project with models and macros that solve a specific problem area. More specific information on dbt packages is available on the [docs site](https://docs.getdbt.com/docs/building-a-dbt-project/package-management). + + +# What's a package? + +See [How do I specify a package?](https://docs.getdbt.com/docs/building-a-dbt-project/package-management#how-do-i-specify-a-package) on the docs site for a detailed explination of the different types of packages supported and expected formats. + + +# Files + +## `base.py` + +Defines the base classes of `PinnedPackage` and `UnpinnedPackage`. + +`downloads_directory` sets the directory packages will be downloaded to. + +## `git.py` + +Extends `PinnedPackage` and `UnpinnedPackage` specific to dbt packages defined with git urls. + +## `local.py` + +Extends `PinnedPackage` and `UnpinnedPackage` specific to dbt packages defined locally. + +## `registry.py` + +Extends `PinnedPackage` and `UnpinnedPackage` specific to dbt packages defined on the dbt Hub registry. + +`install` has retry logic if the download or untarring process hit exceptions (see `dbt.utils._connection_exception_retry`). + +## `resolver.py` + +Resolves the package definition into package objects to download.