Skip to content

Conversation

@sh-rp
Copy link
Collaborator

@sh-rp sh-rp commented Sep 18, 2025

Description

Updates CONTRIBUTING.md:

  • Formatting and grammar checking
  • Remove outdated information about testing
  • Add information about CI setup
  • Update most testing sections with tips and tricks

Updates README.md:

  • Add links to release list, wasm playground and code examples section on website

@netlify
Copy link

netlify bot commented Sep 18, 2025

Deploy Preview for dlt-hub-docs ready!

Name Link
🔨 Latest commit 1d6337c
🔍 Latest deploy log https://app.netlify.com/projects/dlt-hub-docs/deploys/68cbf2a5c74dd20008f6c969
😎 Deploy Preview https://deploy-preview-3101--dlt-hub-docs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@sh-rp sh-rp changed the title Updates contributing guide (CONTRIBUTING.md) Updates CONTRIBUTING.md and README.md to remove outdated information and add more info Sep 18, 2025
Copy link
Contributor

@anuunchin anuunchin left a comment

Choose a reason for hiding this comment

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

🧠

7. Create a pull request targeting the **devel** branch of the main repository.

**Note:** for some special cases, you'd need to contact us to create a branch in this repository (not fork). See below.
6. If you’ve added, removed, or updated dependencies in `pyproject.toml`, make sure `uv.lock` is up to date by running `uv lock`.
Copy link
Contributor

Choose a reason for hiding this comment

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

I understood that if uv.lock changes even though there are no new dependencies it's still fine - maybe we should mention this somewhere 👀

Copy link
Collaborator

Choose a reason for hiding this comment

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

uv.lock should only change if you update pyproject.toml. The lockfile guarantees that "the code works with these exact dependencies" and allows devs to work using the same deps.

Now, imagine you have in pyproject.toml duckdb >= 1.0.0; < 2.0.0. When you install or build dlt locally via pip install ., you will get the latest duckdb (let's say 1.4.0) which may be different from the uv.lock which has 1.3.2. You don't need to update the uv.lock because any version between 1 and 2 should be valid.

^to avoid this situation, you should uv sync instead of pip installing (this is what make dev does)


We use **master** branch for hot fixes (including documentation) that needs to be released out of the normal schedule.
- **devel** (default GitHub branch): Used to prepare the next release of `dlt`. We accept all regular contributions here (including most bug fixes).
- **master**: Used for hotfixes (including documentation) that must be released outside of the normal schedule.
Copy link
Contributor

Choose a reason for hiding this comment

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

omg, i somehow wasn't aware that we have an actual schedule 👀 - should we mention what the schedule is?

Copy link
Collaborator Author

@sh-rp sh-rp Sep 18, 2025

Choose a reason for hiding this comment

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

Probably not, since we kind of have a schedule but often don't manage to adhere to it :)

## Local Development
Use Python 3.9 for development, as it's the lowest supported version for `dlt`. You can select (and if needed download) the python version you need with `uv venv --python 3.11.6`, [uv python version docs](https://docs.astral.sh/uv/concepts/python-versions/#managed-and-system-python-installations).
Use Python 3.9 for development, as it is the lowest supported version. You can select (and download if necessary) the version with:
Copy link
Contributor

Choose a reason for hiding this comment

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

Should we replace 3.9 with 3.10 right away? As @zilto mentioned, understood that it won't be managed very soon and therefore we would stop supporting it as well 👀

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I think i would do this all in one go. Mid october 3.9. will be deprecated and 3.14 will be released and we should do a PR that handles both.


We suggest that you allow only `patch` level updates automatically:
* Using the [Compatible Release Specifier](https://packaging.python.org/en/latest/specifications/version-specifiers/#compatible-release). For example **dlt~=1.0** allows only versions **>=1.0** and less than **<1.1**
* Poetry [caret requirements](https://python-poetry.org/docs/dependency-specification/). For example **^1.0** allows only versions **>=1.0** to **<1.0**
Copy link
Contributor

Choose a reason for hiding this comment

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

Do we still use poetry somewhere 👀 or should we remove this part

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

This section is about installing dlt in your project, so it does not apply to using uv in our repo, but to any tool the end-user uses to manage dependencies, it could be plain pip, uv or poetry for example.

@anuunchin anuunchin assigned anuunchin and sh-rp and unassigned anuunchin Sep 22, 2025
@sh-rp sh-rp marked this pull request as ready for review September 22, 2025 11:03
@sh-rp sh-rp merged commit 7d2dcaa into devel Sep 22, 2025
66 of 67 checks passed
@sh-rp sh-rp deleted the docs/developer_testing_notes branch September 22, 2025 16:07
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.

4 participants