-
Notifications
You must be signed in to change notification settings - Fork 2
Feedback #1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: feedback
Are you sure you want to change the base?
Feedback #1
Changes from all commits
16d61cf
b353bfd
8b49e81
cbd0f4f
c7f0b7a
7fd60bc
ade6a9c
091365f
1f0bf4f
8663dcd
e24f59d
56d338e
f12030b
4dd15fb
71fb6ef
ae06618
dff298d
e5d78cf
1b502cc
90b5330
16770f0
54da724
919ddeb
53aaa1b
9b44ff4
6e6b4c1
762199c
5151478
ae2b382
fea817d
866e988
240b427
982e7d8
be022fe
9ed7e6e
96b3116
1c1b259
a8494c2
4ccc489
cf69428
dfc6119
2142110
589d20d
cc54c3e
d789c11
151c7df
3858220
242456c
26d153c
f7cf2d9
66a9023
be9581f
1cfb44b
551ed22
4b4ff05
cadc5c5
d3d0c73
c33775a
5e177ce
61a9afc
d9434b3
a6965e0
1b55a67
f0a1c6e
556b3ba
b37efef
66c1d74
4a847cc
c6afb41
c771c3c
890117a
dcecdcb
535e7b8
d941b24
7d42ff1
d86d9a5
32b5697
d241f94
cb12f73
21caccb
59f5e5c
531ba90
78f0234
801a1f8
c92ff0a
bfa3491
55e7e91
4f2769f
b2c22f4
72fb6b7
e43b8e1
cde4644
b8f06cd
278d2d7
9e80c8f
b7f364b
03fbfe5
ba5a58c
619df6a
6390eec
caf7161
d5ec647
a5b6be2
b8c09e5
5b95a05
51879cb
38cc8e4
a1fb999
7bf09d1
3786191
4a6d2e0
add147e
a985741
d36a1ee
1e92fd4
6076d5b
71737ae
f4d7cc9
421955b
654756b
e93237b
068b53d
11a6b6e
c4ec1d9
97b26ac
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
# | ||
# https://help.github.com/articles/dealing-with-line-endings/ | ||
# | ||
# These are explicitly windows files and should use crlf | ||
*.bat text eol=crlf | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
version: 2 | ||
updates: | ||
- package-ecosystem: "github-actions" | ||
directory: "/" | ||
schedule: | ||
interval: "weekly" | ||
- package-ecosystem: "gradle" | ||
directory: "/" | ||
schedule: | ||
interval: "daily" |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
version: 2 | ||
mergeable: | ||
- when: pull_request.*, pull_request_review.* | ||
filter: | ||
# ignore 'Feedback' PR | ||
- do: payload | ||
pull_request: | ||
title: | ||
must_exclude: | ||
regex: ^Feedback$ | ||
regex_flag: none | ||
validate: | ||
- do: description | ||
no_empty: | ||
enabled: true | ||
message: "Description matter and should not be empty. Provide detail with **what** was changed, **why** it was changed, and **how** it was changed." | ||
- do: approvals | ||
min: | ||
count: 1 | ||
required: | ||
assignees: true | ||
|
||
- when: pull_request.opened | ||
name: "Remind about contributing guidelines" | ||
validate: [ ] | ||
pass: | ||
- do: comment | ||
payload: | ||
body: > | ||
Thanks for creating a pull request! Please, check that your pull request meets the [CONTRIBUTING](./CONTRIBUTING.md) requirements. |
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Плохое название файла для actions, imho. Я и так знаю, что это CI. Может лучше что-то по типу "gradle build" |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
name: Run full build | ||
|
||
on: | ||
push: | ||
jobs: | ||
build-gradle-project: | ||
runs-on: ${{ matrix.os }} | ||
|
||
strategy: | ||
matrix: | ||
os: [ macos-latest, ubuntu-latest, windows-latest ] | ||
|
||
steps: | ||
- name: Checkout project sources | ||
uses: actions/checkout@v3 | ||
- name: Setup Java 11 | ||
uses: actions/setup-java@v2 | ||
with: | ||
distribution: adopt | ||
java-version: 11 | ||
- name: Setup Gradle | ||
uses: gradle/gradle-build-action@v2 | ||
- name: Run build with Gradle Wrapper | ||
run: ./gradlew build | ||
|
||
- uses: actions/upload-artifact@v3 | ||
if: ${{ github.ref == 'refs/heads/main' }} | ||
with: | ||
name: Upload coverage report | ||
path: app/build/coverage/test/* |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
.gradle | ||
**/build/ | ||
!src/**/build/ | ||
|
||
# Ignore Gradle GUI config | ||
gradle-app.setting | ||
|
||
# Cache of project | ||
.gradletasknamecache | ||
|
||
# Eclipse Gradle plugin generated files | ||
# Eclipse Core | ||
.project | ||
# JDT-specific (Eclipse Java Development Tools) | ||
.classpath | ||
|
||
# Compiled class file | ||
*.class | ||
|
||
# Log file | ||
*.log | ||
|
||
# BlueJ files | ||
*.ctxt | ||
|
||
# Mobile Tools for Java (J2ME) | ||
.mtj.tmp/ | ||
|
||
# Package Files # | ||
*.jar | ||
*.war | ||
*.nar | ||
*.ear | ||
*.zip | ||
*.tar.gz | ||
*.rar | ||
|
||
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml | ||
hs_err_pid* | ||
replay_pid* | ||
|
||
.idea | ||
|
||
# Gradle and Maven with auto-import | ||
# When using Gradle or Maven with auto-import, you should exclude module files, | ||
# since they will be recreated, and may cause churn. Uncomment if using | ||
# auto-import. | ||
# .idea/artifacts | ||
# .idea/compiler.xml | ||
# .idea/jarRepositories.xml | ||
# .idea/modules.xml | ||
# .idea/*.iml | ||
# .idea/modules | ||
# *.iml | ||
# *.ipr | ||
|
||
# CMake | ||
cmake-build-*/ | ||
|
||
# Mongo Explorer plugin | ||
.idea/**/mongoSettings.xml | ||
|
||
# File-based project format | ||
*.iws | ||
|
||
# IntelliJ | ||
out/ | ||
|
||
# mpeltonen/sbt-idea plugin | ||
.idea_modules/ | ||
|
||
# JIRA plugin | ||
atlassian-ide-plugin.xml | ||
|
||
# Crashlytics plugin (for Android Studio and IntelliJ) | ||
com_crashlytics_export_strings.xml | ||
crashlytics.properties | ||
crashlytics-build.properties | ||
fabric.properties | ||
|
||
# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored) | ||
!gradle-wrapper.jar | ||
|
||
# Avoid ignore Gradle wrappper properties | ||
!gradle-wrapper.properties |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
# Внесение правок | ||
|
||
## Основные советы | ||
|
||
1. Никогда не используйте merge, только rebase для сохранения линейной истории коммитов | ||
2. **Осторожно** с изменениями в чужих ветках. Придется больно и мучительно делать rebase. Лучше не трогайте чужие | ||
ветки | ||
3. Перепроверьте историю коммитов перед созданием пулл реквеста | ||
4. Каждый коммит должен быть осознанным и быть одним логическим элементом | ||
5. Каждый пулл реквест должен быть осознанным и быть одним логическим элементом | ||
6. **Перепроверьте, что вы в правильной ветке**, никогда не коммитьте напрямую в main | ||
|
||
## Правила добавления коммитов | ||
|
||
Коммиты добавляются в соответствии с conventional commits. Т.е | ||
`<type>(<scope>): <body>`. | ||
|
||
Поле `<type>` должно принимать одно из этих значений: | ||
|
||
* `feat` для добавления новой функциональности | ||
* `fix` для исправления бага в программе | ||
* `refactor` для рефакторинга кода, например, переименования переменной | ||
* `test` для добавления тестов, их рефакторинга | ||
* `struct` для изменений связанных с изменением структуры проекта (НО НЕ КОДА), например изменение | ||
расположения папок | ||
* `ci` для различных задач ci/cd | ||
|
||
Поле `<scope>` опционально и показывает к какому модулю, классу, методу функции и т.п применены изменения. | ||
|
||
Поле `<body>` содержит суть изменений в повелительном наклонении настоящего времени на английском языке без точки в | ||
конце, первое слово - глагол с большой буквы. Текст сообщения должен включать мотивацию к изменению и контрасты с | ||
предыдущим поведением. | ||
|
||
Примеры: | ||
|
||
* Хорошо: "Add module for future BST implementations" | ||
* Плохо: "Added module for future BST implementations." | ||
* Плохо: "Adds module". | ||
* Очень плохо: "new bug." | ||
|
||
## Правила именования и создания веток | ||
|
||
Ветка под одно (большое) логическое изменение. Формат для веток `<type>/<short-body>`. Тип аналогичен тому же в | ||
коммитах, | ||
а `<short-body>` представляет собой короткое описание назначения ветки в kebab-case стиле. | ||
|
||
Примеры хороших названий: | ||
|
||
* `feat/add-avl-tree` | ||
* `ci/add-klint` | ||
|
||
После одобрения пулл реквеста, ветка удаляется. А новая функциональность разрабатывается в новой ветке. | ||
|
||
## Правила для пулл реквестов | ||
|
||
Пулл реквесты оформляются на любом удобном языке. Но должны четко отвечать на 3 вопроса: | ||
|
||
1. Что? | ||
2. Зачем? | ||
3. Почему? | ||
|
||
Ответ на вопрос что должен содержаться в заголовке пулл реквеста. На остальные вопросы ответ должен быть в описании. | ||
|
||
**НЕ ТЫКАТЬ НА ЗЕЛЕНУЮ КНОПОЧКУ `REBASE AND MERGE` БЕЗ РЕВЬЮ** | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. А вы не просили добавить настройку, чтобы нельзя было смержить без обязательного ревью хотя бы одного? |
||
|
||
**Запрещено** сливать свой пулл реквест в ветку самостоятельно. | ||
|
||
Если тыкаете на зеленую кнопочку, то **убедитесь**, что на ней написано `REBASE AND MERGE` | ||
|
||
Ревью происходит в виде комметариев к пулл реквестам, обсуждения в чате команды и личном общении. |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
MIT License | ||
|
||
Copyright (c) 2023-present Yakshigulov Vadim, Dyachkov Vitaliy, Perevalov Efim | ||
|
||
Permission is hereby granted, free of charge, to any person obtaining a copy | ||
of this software and associated documentation files (the "Software"), to deal | ||
in the Software without restriction, including without limitation the rights | ||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
copies of the Software, and to permit persons to whom the Software is | ||
furnished to do so, subject to the following conditions: | ||
|
||
The above copyright notice and this permission notice shall be included in all | ||
copies or substantial portions of the Software. | ||
|
||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||
SOFTWARE. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.