[Bug] Bump the lower bound of `dbt-adapters` within `1.8.latest`
- Dominant language
- Rust
- Stars
- 13.8k
- Forks
- 2.6k
- Avg merge
- 21h 31m
- Merged PRs (30d)
- 56
Description
### Is this a new bug in dbt-core?
- [X] I believe this is a new bug in dbt-core
- [X] I have searched the existing issues, and I could not find an existing issue for this bug
### Current Behavior
These PRs across dbt-core and dbt-adapters are tightly coupled and need to be installed together:
- https://github.com/dbt-labs/dbt-core/pull/10290 (dbt-core>=1.8.6)
- https://github.com/dbt-labs/dbt-adapters/pull/236 (dbt-adapters>=1.4.1)
- https://github.com/dbt-labs/dbt-core/pull/10755 (dbt-core>=TBD)
The first was released in dbt-core==1.8.6, the second in dbt-adapters==1.4.1. The third has yet to be released.
The net effect is that:
- `dbt-core<=1.8.5 and dbt-adapters<=1.4.0` are compatible
- `dbt-core>=1.8.6 and dbt-adapters>=1.4.1` are compatible\*
- `dbt-core<=1.8.5 and dbt-adapters>=1.4.1` are **not** compatible
- `dbt-core>=1.8.6 and dbt-adapters<=1.4.0` are **not** compatible
\* but has its own bugs (https://github.com/dbt-labs/dbt-core/issues/10754, https://github.com/dbt-labs/dbt-core/issues/10763) because https://github.com/dbt-labs/dbt-core/pull/10755 was not included in `dbt-core==1.8.6`.
### Expected Behavior
On `main`, we ensure [dbt-adapters 1.7+](https://github.com/dbt-labs/dbt-core/blob/a8d4ba2b4a04d76ad03e563aefd1fcf3ba86fe00/core/setup.py#L75).
On `1.8.latest`, we [lower bound to dbt-adapters 1.1.1](https://github.com/dbt-labs/dbt-core/blob/e3e4c977e0e491f11c9fc338d027eeb82794083f/core/setup.py#L79).
We should use either requirements (or constraints) to ensure that either all 3 are installed together or none are.
### Steps To Reproduce
With the `1.8.latest` branch of dbt-core, install `dbt-adapters==1.4.0`, then run the functional tests. Although I didn't try this out, I expect there to be failing tests. If not, then we should add the tests that would cause it to fail!
### Alternative Steps to Reproduce
Or within a virtual environment, do either of these:
```shell
python -m pip install dbt-core==1.8.5 and dbt-adapters==1.4.1
python -m pip install dbt-core==1.8.6 and dbt-adapters==1.4.0
```
Then replicate the situation described here:
- https://github.com/dbt-labs/dbt-core/issues/10667
### More Alternative Steps to Reproduce
Or alternatively, do these install commands:
```shell
python -m pip install dbt-core==1.8.6 and dbt-adapters==1.4.1
```
And follow any of these reproducible examples:
- https://github.com/dbt-labs/dbt-core/issues/10754#issuecomment-2368218706
- https://github.com/dbt-labs/dbt-core/issues/10763#issuecomment-2369068205
### Relevant log output
_No response_
### Environment
```markdown
- OS:
- Python:
- dbt:
```
### Which database adapter are you using with dbt?
_No response_
### Additional Context
We had a series of regressions due to the feature in https://github.com/dbt-labs/dbt-adapters/pull/236 being released. While dbt-core and dbt-adapters were decoupled beginning in dbt-core v1.8, https://github.com/dbt-labs/dbt-adapters/pull/236 actually depended upon corresponding PRs in dbt-core to work properly (namely, https://github.com/dbt-labs/dbt-core/pull/10290 and https://github.com/dbt-labs/dbt-core/pull/10755).
So https://github.com/dbt-labs/dbt-adapters/pull/236 shouldn't have been merged + released until the corresponding dbt-core PRs were also ready to be merged + released (and lower bound of dbt-adapters bumped up). Since these PRs were related to a feature request, this shouldn't have happened until a minor release of dbt-core.
Contributor guide
Assessment
This issue has not been assessed yet.