-
Notifications
You must be signed in to change notification settings - Fork 2
Поддержка semver в части пререлизов и метаданных билда #7
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
Merged
Merged
Changes from 13 commits
Commits
Show all changes
31 commits
Select commit
Hold shift + click to select a range
74c855f
Finish 0.5.0
khorevaa 5a36bc6
Finish 0.5.1
khorevaa 4b72bd0
Finish 0.5.1
khorevaa cbc8fa1
Finish 0.5.2
khorevaa 9e38162
Merge remote-tracking branch 'remotes/origin/master' into develop
EvilBeaver a0450cf
Модули добавлены в игнор
EvilBeaver 2f8ab48
Бамп версии
EvilBeaver 3cedf48
Новый парсер сегментов версии
EvilBeaver 4b2545f
Отказ от fluent в поиске максимума версий
EvilBeaver b104f24
Исправлена ошибка при поиске максимальной версии
sfaqer ad99219
Поднята зависимость от движка
sfaqer 073ede0
Merge branch 'develop'
sfaqer a118bb5
Влиты изменения из ствола
EvilBeaver 9b33f59
Работоспособный парсер семвера
EvilBeaver 1a9e7c3
Немножко рефакторинга
EvilBeaver afae911
Ошибочно вкоммичен launch.json
EvilBeaver ef1ade3
Добавил тесты на склейку дефисов и исправил ошибку
EvilBeaver 655a983
Замечания по ревью
EvilBeaver 10fc0a0
Красный тест сравнения пререлизов
EvilBeaver a678273
Сравнение версий с учетом пререлизов
EvilBeaver 7ba53eb
Тестирование OneUnit для dev
sfaqer 882b3d2
ПолучитьСписокТестов -> &Тест
sfaqer 03cc185
Убран импорт fluent
nixel2007 dedad74
Create qa.yaml
nixel2007 25d4331
Create sonar-project.properties
nixel2007 5dfe792
Потерянный экспорт
nixel2007 2ae472e
Зависимость от coverage
sfaqer d08cb2e
Update coverage.os
nixel2007 40dd5f7
Исправление замечаний кролика
sfaqer 6dc7e61
Исправлена ошибка сравнения релизной версии и однокомпонентного RC
sfaqer e9683ab
Merge branch 'master' into feature/prereleases-2
sfaqer File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,7 +4,7 @@ | |
// | ||
|
||
Описание.Имя("semver") | ||
.Версия("0.6.0") | ||
.Версия("1.0.0") | ||
.Автор("Khorev Aleksey") | ||
.АдресАвтора("[email protected]") | ||
.Описание("Эта библиотека облегчает работу с семантическими версиями") | ||
|
@@ -14,7 +14,6 @@ | |
.ВключитьФайл("tests") | ||
.ЗависитОт("logos") | ||
.ЗависитОт("strings") | ||
.ЗависитОт("fluent", "0.6.1") | ||
.РазработкаЗависитОт("1testrunner", "1.9.2") | ||
.ОпределяетМодуль("Версии", "src/core/Модули/Версии.os") | ||
.ОпределяетКласс("Версия", "src/core/Классы/Версия.os") | ||
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,122 @@ | ||
Перем СтрокаДляРазбора; | ||
Перем Индекс; | ||
nixel2007 marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
Перем ТипКонецТекста Экспорт; | ||
Перем ТипЧисло Экспорт; | ||
Перем ТипТекст Экспорт; | ||
Перем ТипРазделитель Экспорт; | ||
Перем ТипОшибка Экспорт; | ||
|
||
Перем ДиапазонЧислоНачало; | ||
Перем ДиапазонЧислоКонец; | ||
|
||
Перем ДиапазонЗаглавныеБуквыНачало; | ||
Перем ДиапазонЗаглавныеБуквыКонец; | ||
Перем ДиапазонСтрочныеБуквыНачало; | ||
Перем ДиапазонСтрочныеБуквыКонец; | ||
Перем Дефис; | ||
Перем Плюс; | ||
Перем Точка; | ||
|
||
Перем ТекущийТокен; | ||
|
||
nixel2007 marked this conversation as resolved.
Show resolved
Hide resolved
|
||
Процедура ПриСозданииОбъекта(Знач ВерсияСтрокой) | ||
СтрокаДляРазбора = ВерсияСтрокой; | ||
Если ПустаяСтрока(СтрокаДляРазбора) Тогда | ||
Индекс = -1; | ||
Иначе | ||
Индекс = 1; | ||
КонецЕсли; | ||
КонецПроцедуры | ||
|
||
Функция Токен(Знач Значение, Знач Тип) | ||
Возврат Новый Структура("Тип, Значение", Тип, Значение); | ||
КонецФункции | ||
|
||
Функция Следующий() Экспорт | ||
|
||
ТекущийТокен = ПолучитьСледующий(); | ||
Возврат ТекущийТокен; | ||
|
||
КонецФункции | ||
|
||
Функция Текущий() Экспорт | ||
|
||
Возврат ТекущийТокен; | ||
КонецФункции | ||
|
||
Функция Индекс() Экспорт | ||
|
||
Возврат Индекс; | ||
|
||
КонецФункции | ||
|
||
Функция ПолучитьСледующий() | ||
Если Индекс = -1 Тогда | ||
Возврат Токен("", ТипКонецТекста); | ||
КонецЕсли; | ||
|
||
ТипТокена = ТипЧисло; | ||
НачалоЗначения = Индекс; | ||
ЧислоСимволов = 0; | ||
|
||
Пока Истина Цикл | ||
|
||
Символ = Сред(СтрокаДляРазбора, Индекс, 1); | ||
КодСимвола = КодСимвола(Символ); | ||
Если ПустаяСтрока(Символ) Тогда | ||
Если ЧислоСимволов = 0 Тогда | ||
// Это последний прочитанный токен | ||
Индекс = -1; | ||
Возврат Токен("", ТипКонецТекста); | ||
КонецЕсли; | ||
Прервать; | ||
КонецЕсли; | ||
|
||
// Инлайн, чтобы было побыстрее и не тратило время на вызов метода | ||
Если (КодСимвола >= ДиапазонЗаглавныеБуквыНачало И КодСимвола <= ДиапазонЗаглавныеБуквыКонец) ИЛИ | ||
(КодСимвола >= ДиапазонСтрочныеБуквыНачало И КодСимвола <= ДиапазонСтрочныеБуквыКонец) Тогда | ||
ТипТокена = ТипТекст; | ||
ИначеЕсли КодСимвола >= ДиапазонЧислоНачало И КодСимвола <= ДиапазонЧислоКонец Тогда | ||
// обработка числа | ||
ИначеЕсли КодСимвола = Точка ИЛИ КодСимвола = Дефис ИЛИ КодСимвола = Плюс Тогда | ||
EvilBeaver marked this conversation as resolved.
Show resolved
Hide resolved
|
||
// разделитель | ||
Прервать; | ||
Иначе | ||
// ошибка | ||
Позиция = Индекс; | ||
Индекс = -1; // блокировка парсера | ||
Возврат Токен(СтрШаблон("Недопустимый символ '%1' в позиции %2", Символ, Позиция), ТипОшибка); | ||
КонецЕсли; | ||
|
||
Индекс = Индекс + 1; | ||
ЧислоСимволов = ЧислоСимволов + 1; | ||
КонецЦикла; | ||
|
||
Если ЧислоСимволов = 0 Тогда | ||
// Это разделитель | ||
Значение = Сред(СтрокаДляРазбора, Индекс, 1); | ||
Индекс = Индекс + 1; | ||
Возврат Токен(Значение, ТипРазделитель); | ||
КонецЕсли; | ||
|
||
Значение = Сред(СтрокаДляРазбора, НачалоЗначения, ЧислоСимволов); | ||
|
||
Возврат Токен(Значение, ТипТокена); | ||
КонецФункции | ||
|
||
ТипКонецТекста = 0; | ||
ТипЧисло = 1; | ||
ТипТекст = 2; | ||
ТипРазделитель = 3; | ||
ТипОшибка = 4; | ||
|
||
ДиапазонЧислоНачало = 48; | ||
ДиапазонЧислоКонец = 57; | ||
ДиапазонЗаглавныеБуквыНачало = 65; | ||
ДиапазонЗаглавныеБуквыКонец = 90; | ||
ДиапазонСтрочныеБуквыНачало = 97; | ||
ДиапазонСтрочныеБуквыКонец = 122; | ||
Дефис = КодСимвола("-"); | ||
Плюс = КодСимвола("+"); | ||
Точка = КодСимвола("."); |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.