Вклад в код
Вклад в пакеты dbt
Обзор
Пакеты dbt — это самый простой способ для аналитиков-инженеров внести свой вклад в код сообщества dbt, потому что пакеты dbt — это просто стандартные проекты dbt. Если вы можете создать проект dbt, написать макрос и сослаться на модель, вы можете создать пакет dbt. Пакеты функционируют так же, как библиотеки в других языках программирования. Они позволяют заранее писать и модульно разрабатывать код для решения общих задач в анали тической инженерии. Вы можете просмотреть все пакеты dbt на dbt Package Hub.
Возможности для вклада
- Создайте новый пакет для dbt Package Hub. Это может быть новый набор макросов или тестов, которые были полезны вам в ваших проектах, набор моделей для работы с часто используемым источником данных или что-то еще, что можно сделать в рамках проекта dbt.
- Улучшите существующий пакет: вы также можете помочь улучшить существующий пакет. Это можно сделать, создавая и участвуя в обсуждении Issues или добавляя функциональность для решения существующей проблемы через открытие PR.
Примеры вкладов
Начало работы
- Используйте пакеты в своих собственных проектах! Лучший способ узнать, как улучшить пакет, — это использовать его в производственной среде, а затем искать способы его модификации или улучшения.
- Прочитайте следующие ресурсы по разработке пакетов:
- Нужна помощь: посетите #package-ecosystem в Slack-сообществе dbt
Вклад в open source программное обеспечение dbt
Обзор
dbt Core, адаптеры, инструменты и сайты, поддерживающие Package Hub и Developer Hub, — это все активные open source проекты. В отличие от пакетов dbt, вклад в код этих проектов обычно требует некоторого знания языков программирования, кроме SQL и Jinja, но поддерживающее сообщество вокруг этих репозиториев может помочь вам развить эти навыки. Даже без вклада в код, есть много способов стать частью open source разработки в этих проектах, описанных ниже. Вы можете найти список самых активных OSS проектов, которые поддерживает dbt Labs, здесь.
Возможности для вклада
Существует три основных способа внести вклад в OSS проекты dbt. Мы используем dbt Core в качестве примера, так как это самый активный и зрелый OSS проект, который мы поддерживаем, и отличное место для нач ала для новичков:
- Откройте issue, чтобы предложить улучшение или оставить отзыв.
- Комментируйте / участвуйте в существующих issues или обсуждениях. Это может быть голосование за issues, которые были бы полезны для вашей организации, комментирование для добавления нюансов к запросу функции или деление тем, как функция повлияет на использование dbt.
- Создайте pull request, который решает открытый Issue. Это включает написание кода и тестов, которые добавляют функцию/решают ошибку, описанную в Issue, а затем прохождение процесса рецензирования кода асинхронно с инженером dbt Labs.
Примеры вкладов
- Ознакомьтесь с этим issue об улучшении сообщений об ошибках и PR, который сообщество внесло для его исправления.
- Из вышеупомянутого issue было создано другое issue, чтобы изменить не только сообщение об ошибке, но и улучшить поведение. Это добродетельный цикл развития open source сообщества! Шаг за шагом мы, сообщество, создаем инструмент, чтобы он лучше соответствовал нашим нуждам.
Начало работы
- Прочитайте руководство по вкладу в dbt Core и ожидания от open source программного обеспечения.
- Если вы вносите вклад в dbt Core, найдите issue с меткой “good first issue”, или ищите аналогичные метки в других репозиториях. Если сомневаетесь, также не стесняйтесь спрашивать у мейнтейнеров о хорошем первом issue, они будут рады вас приветствовать!
Нужна помощь?
Следующие каналы в Slack-сообществе dbt — отличное место для вопросов:
- #dbt-core-development
- #adapter-ecosystem