Внести изменения

Редактировать эту документацию

Переведите документацию или откройте весь проект на своём компьютере.

Ничего не будет опубликовано, пока вы не решите отправить свою работу.

Начало работы

Как начать вносить вклад в Wails v3

Добро пожаловать в сообщество участников!

Спасибо за интерес к участию в разработке Wails! Это руководство поможет вам внести свой первый вклад.

Предварительные требования

Прежде чем начать, убедитесь, что у вас есть:

  • Установленный Go 1.25+ (скачать)
  • Node.js 20+ и npm (скачать)
  • Git, настроенный для вашей учётной записи GitHub
  • Базовое знание Go и JavaScript/TypeScript

Требования для отдельных платформ

macOS:

  • Инструменты командной строки Xcode: xcode-select --install

Windows:

  • Рекомендуется MSYS2 или аналогичная Unix-подобная среда
  • Среда выполнения WebView2 (обычно уже установлена в Windows 11)

Linux:

  • gcc, pkg-config, libgtk-4-dev, libwebkitgtk-6.0-dev (стек GTK4 по умолчанию)
  • Установите с помощью: sudo apt install build-essential pkg-config libgtk-4-dev libwebkitgtk-6.0-dev (Debian/Ubuntu)
  • Для устаревшего варианта сборки -tags gtk3 также установите libgtk-3-dev и libwebkit2gtk-4.1-dev

Обзор процесса внесения вклада

Обычно процесс внесения вклада состоит из следующих этапов:

  1. Создание форка и клонирование — создайте собственную копию репозитория Wails
  2. Настройка — соберите Wails CLI и проверьте свою среду
  3. Ветка — создайте ветку для своих изменений
  4. Разработка — внесите изменения в соответствии с нашими стандартами написания кода
  5. Тестирование — запустите тесты, чтобы убедиться, что всё работает
  6. Коммит — зафиксируйте изменения с понятными сообщениями в формате Conventional Commits
  7. Отправка — откройте пул-реквест для проверки
  8. Доработка — отвечайте на замечания и вносите необходимые изменения
  9. Слияние — после одобрения ваши изменения станут частью Wails!

Пошаговое руководство

Выберите тип вклада:

1

Найдите ошибку или сообщите о ней

  • Проверьте, не зарегистрирована ли уже эта ошибка в GitHub Issues
  • Если нет, создайте новую задачу и укажите шаги для воспроизведения
  • Прежде чем приступать к работе, дождитесь подтверждения
2

Создайте форк и клонируйте его

Создайте форк репозитория на странице github.com/wailsapp/wails/fork

Клонируйте свой форк:

bash
git clone https://github.com/YOUR_USERNAME/wails.git
cd wails
git remote add upstream https://github.com/wailsapp/wails.git
3

Соберите и проверьте

Соберите Wails и убедитесь, что можете воспроизвести ошибку:

bash
cd v3
go build -o ../wails3 ./cmd/wails3

# Reproduce the bug to understand it
4

Создайте ветку для исправления ошибки

Создайте ветку для своего исправления:

bash
git checkout -b fix/issue-123-window-crash
5

Исправьте ошибку

  • Внесите только минимально необходимые для исправления ошибки изменения
  • Не выполняйте рефакторинг кода, не связанного с ошибкой
  • Добавьте или обновите тесты, чтобы предотвратить регрессию
bash
# Make your changes
# Add tests in *_test.go files
6

Протестируйте исправление

Запустите тесты, чтобы убедиться, что исправление работает:

bash
go test ./...

# Test the specific package
go test ./pkg/application -v

# Run with race detector
go test ./... -race
7

Зафиксируйте исправление

Создайте коммит с понятным сообщением:

bash
git commit -m "fix: prevent window crash when closing during initialization

Fixes #123"
8

Отправьте пул-реквест

Отправьте ветку и создайте пул-реквест:

bash
git push origin fix/issue-123-window-crash

В описании пул-реквеста:

  • Объясните суть и первопричину ошибки
  • Опишите своё исправление
  • Добавьте ссылку на задачу: «Fixes #123»
  • Опишите поведение до и после исправления
9

Ответьте на замечания

Учтите замечания проверяющих и при необходимости обновите пул-реквест.

Поиск задач для работы

Получение помощи

  • Discord: присоединитесь к серверу Wails в Discord
  • Обсуждения: опубликуйте сообщение в GitHub Discussions
  • Issue: создайте issue для воспроизводимой ошибки; для вопросов используйте Discussions, а для улучшений — PR с WEP

Кодекс поведения

Проявляйте уважение, конструктивность и доброжелательность. Мы создаём дружелюбное сообщество, участники которого вместе работают над отличным программным обеспечением.

Следующие шаги

Редактировать страницу

Последнее обновление: