diff --git a/.gitignore b/.gitignore index 723ef36f4e4f32c4560383aa5987c575a30c6535..34142fe5c91654493d8dd95e68e432b6351f3196 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,3 @@ -.idea \ No newline at end of file +.idea +dist/ +release/ \ No newline at end of file diff --git a/.goreleaser.yml b/.goreleaser.yml new file mode 100644 index 0000000000000000000000000000000000000000..9682c3a35ae139aceb327b9c367ef0779bd59998 --- /dev/null +++ b/.goreleaser.yml @@ -0,0 +1,25 @@ +version: 2 + +gitlab_urls: + api: https://git.perx.ru/api/v4/ + download: https://git.perx.ru + use_package_registry: true + +before: + hooks: + - go mod tidy + +builds: + - skip: true + +snapshot: + name_template: "{{ incpatch .Version }}-next" + +release: + gitlab: + owner: perxis + name: perxis-go + +announce: + skip: "{{gt .Patch 0}}" + diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000000000000000000000000000000000000..f1a824cd5a893a27a2176d9eaf1357e1bfe292d0 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,124 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +## [0.27.0] - 2024-07-24 + +### рџљЂ Features + +- Добавлен пакет `localizer` для работы СЃ переводами данных ([#PRXS-2653](https://tracker.yandex.ru/PRXS-2653))-([53a37c4](https://git.perx.ru/perxis/perxis-go/-/commit/53a37c45a8a76e2b4cf7f2b5a7874b06465269b9)) +- *(core)* Внесены изменения для работы СЃ переводами через Items API -([ebf80bb](https://git.perx.ru/perxis/perxis-go/-/commit/ebf80bb317f126f85e69a813651054fbf77a2bae)) +- *(logs)* Обновление API логирования, релевантность результатов РїРѕРёСЃРєР° ([#PRXS-2665](https://tracker.yandex.ru/PRXS-2665))-([97077fb](https://git.perx.ru/perxis/perxis-go/-/commit/97077fbc800a3c3d865ee35a485ed8b6396f3444)) +- *(core)* Обновление References API: поддержка локализации контента -([87b92c5](https://git.perx.ru/perxis/perxis-go/-/commit/87b92c5bc30d1c26b280c85b447a0ca9d313df34)) +- *(core)* Реализована возможность загрузки схем РёР· YAML Рё JSON файлов ([#PRXS-2731](https://tracker.yandex.ru/PRXS-2731))-([bf29420](https://git.perx.ru/perxis/perxis-go/-/commit/bf294207182bbc0b5ce154029f98aaca00b9c831)) + +### рџђ› Bug Fixes + +- *(core)* Рсправлен РѕР±С…РѕРґ схемы Walk для типа Array, решена ошибка отсутствия схемы РїСЂРё вызове Introspect -([2f684ea](https://git.perx.ru/perxis/perxis-go/-/commit/2f684ea678c0bcd59b8faed69cace00c9a4d29e6)) +- *(core)* Рсправлена ошибка РїСЂРё которой РЅРµ логировались действия СЃ пространствами ([#PRXS-2609](https://tracker.yandex.ru/PRXS-2609))-([d0a7606](https://git.perx.ru/perxis/perxis-go/-/commit/d0a7606248f7e7a3a21075592d69d6845b546cce)) +- *(core)* Рсправлена ошибка РїСЂРё которой была возможность изменить обьект находящийся РІ кеше Items ([#PRXS-2697](https://tracker.yandex.ru/PRXS-2697))-([cd5724d](https://git.perx.ru/perxis/perxis-go/-/commit/cd5724d316f2a0a6738a6159bdfb974938e8fde2)) + +### вљ™пёЏ Miscellaneous Tasks + +- *(api)* Рсправлены ошибки linter`Р° связанные СЃ пропущенными именами переменных РїСЂРё получении результатов ([#PRXS-2610](https://tracker.yandex.ru/PRXS-2610))-([90269af](https://git.perx.ru/perxis/perxis-go/-/commit/90269aff2bae12a05d5394eb223e08ff6c2bdb2f)) +- *(core)* Рсправлена передача объектов РІ кэше сервисов ([#PRXS-2705](https://tracker.yandex.ru/PRXS-2705))-([9180ee7](https://git.perx.ru/perxis/perxis-go/-/commit/9180ee7aa4c433e02030659489adca91bc4c8401)) + +## [0.25.1] - 2024-06-13 + +### рџђ› Bug Fixes + +- *(core)* Рсправлен deadlock РїСЂРё одновременном вызове BufferedWriteSyncer.Stop Рё синхронизации РїРѕ интервалу ([#PRXS-2576](https://tracker.yandex.ru/PRXS-2576))-([3b823ed](https://git.perx.ru/perxis/perxis-go/-/commit/3b823ed00a22e142e25137dccb5f1c4fbb318d3f)) + +## [0.25.0] - 2024-05-08 + +### рџљЂ Features + +- *(core)* Добавлена возможность использовать СЃРёРјРІРѕР» "-" РІ названиях полей ([#PRXS-1439](https://tracker.yandex.ru/PRXS-1439))-([66b02b9](https://git.perx.ru/perxis/perxis-go/-/commit/66b02b9a6defdbe5e5d5502ff45d67c38c2a5fa4)) +- *(api)* Добавлен метод внутренний метод установки состояния пространства SetState для сервиса Spaces ([#PRXS-2223](https://tracker.yandex.ru/PRXS-2223))-([0057019](https://git.perx.ru/perxis/perxis-go/-/commit/005701931ea9c03d8e54ffa6bbcf351254ff578e)) +- Добавлен метод Find для сервиса Spaces ([#PRXS-2298](https://tracker.yandex.ru/PRXS-2298))-([4135690](https://git.perx.ru/perxis/perxis-go/-/commit/41356904837085adc48f4c8c6edaf8ad7d7fd014)) +- *(core)* Добавлено системное поле SearchScore РІ Item ([#PRXS-2445](https://tracker.yandex.ru/PRXS-2445))-([087edb3](https://git.perx.ru/perxis/perxis-go/-/commit/087edb39bbe6d22e12dedd9d4795336556f7b844)) + +### вљ™пёЏ Miscellaneous Tasks + +- Перенесено содержимое пакета pkg/id РЅР° уровень выше РІ пакет id -([d13399f](https://git.perx.ru/perxis/perxis-go/-/commit/d13399fd6c26349f7ddf36c4d4e81568a2503a9c)) +- *(core)* Возврат GRPC-ошибки РІ сервисах -([c6bf265](https://git.perx.ru/perxis/perxis-go/-/commit/c6bf265699d5e9a99c0f583d7b6782b53cda3674)) + +## [0.24.0] - 2024-04-12 + +### рџљЂ Features + +- Добавлен OID для Locales -([221d730](https://git.perx.ru/perxis/perxis-go/-/commit/221d730e552dd64d0dc32b21e799a75c6adf4503)) +- Добавлены методы Space, Environment, Collection, Organization для объекта System, который используется РІ шаблонах ([#PRXS-1813](https://tracker.yandex.ru/PRXS-1813))-([d017315](https://git.perx.ru/perxis/perxis-go/-/commit/d017315e664a9c5fcd84e377e5ba4f3635308f0b)) + +### рџђ› Bug Fixes + +- *(core)* Рзменено название Рё значение констант событий РІ logging_middleware для коллекций ([#PRXS-2199](https://tracker.yandex.ru/PRXS-2199))-([0cb42c5](https://git.perx.ru/perxis/perxis-go/-/commit/0cb42c57c0b976e9f9dd2f21e326f17d84580969)) + +## [0.22.0] - 2024-03-06 + +### рџљЂ Features + +- Р’ пакет data добавлена проверка РїСЂРё установке значения РЅР° то, инициализирована ли map -([978a2c9](https://git.perx.ru/perxis/perxis-go/-/commit/978a2c9dc0c6c554ed35f046e33321e2c250fcf2)) +- *(core)* Добавлены функции exists Рё len для языка запросов expr ([#PRXS-1883](https://tracker.yandex.ru/PRXS-1883))-([eae58bf](https://git.perx.ru/perxis/perxis-go/-/commit/eae58bf4c3cad9fe793b8ccf763bf9ada46266a3)) +- *(extensions)* Добавлена РїРѕ умолчанию для отображения Icon первой колонкой для коллекции "Настройки/Действия" ([#PRXS-1950](https://tracker.yandex.ru/PRXS-1950))-([9a3936b](https://git.perx.ru/perxis/perxis-go/-/commit/9a3936bea15bd80201b1ae9ffe1518b424dcb1d1)) +- Add filter_core.go -([37d3135](https://git.perx.ru/perxis/perxis-go/-/commit/37d313519b69d83d97560a5c09722cec959596a9)) +- Add unused v2 entry encoder -([79d8eef](https://git.perx.ru/perxis/perxis-go/-/commit/79d8eefc88b4b7c26b855df1492506131184f1a9)) + +### рџђ› Bug Fixes + +- Рсправлена потенциальная утечка ресурсов РІ HTTP-загрузчике файлов (используется РІ сервисе Images) ([#PRXS-1977](https://tracker.yandex.ru/PRXS-1977))-([143766b](https://git.perx.ru/perxis/perxis-go/-/commit/143766b56f638a43281c26e9d79842198750db6b)) +- *(sync)* Рсправлена ошибка синхронизации "received message larger than max". Процесс синхронизации значительно ускорен ([#PRXS-2026](https://tracker.yandex.ru/PRXS-2026))-([083aaf1](https://git.perx.ru/perxis/perxis-go/-/commit/083aaf1f363093219bb58f67b1accbc5a31f097a)) +- Add id import -([6c0ecb0](https://git.perx.ru/perxis/perxis-go/-/commit/6c0ecb0ee0786ae6f388e486c6210e79354f4f88)) + +### вљ™пёЏ Miscellaneous Tasks + +- Обновлена библиотека github.com/expr-lang/expr РґРѕ версии v1.15.8 ([#PRXS-1667](https://tracker.yandex.ru/PRXS-1667))-([d0069ab](https://git.perx.ru/perxis/perxis-go/-/commit/d0069ab4893e7c0acf360b5a42759d74c6a5cb32)) + +## [0.21.0] - 2024-01-16 + +### рџљЂ Features + +- Добавлен интерфейс Cache ([#PRXS-1859](https://tracker.yandex.ru/PRXS-1859))-([c11dae6](https://git.perx.ru/perxis/perxis-go/-/commit/c11dae6a20e9ff04d3840ba4de87998d9eb72e6e)) +- Внесены правки РІ Spaces после изменений РІ perxis-proto, перегенерированны grpc-клиенты для Spaces ([#PRXS-1835](https://tracker.yandex.ru/PRXS-1835))-([2a0c015](https://git.perx.ru/perxis/perxis-go/-/commit/2a0c01544486fac5f5cb505a1dab7aa88d7858f4)) +- Добавлена метрика для кэша -([3a6a7a3](https://git.perx.ru/perxis/perxis-go/-/commit/3a6a7a300dd7bad9597c4583871813ac5edecd52)) +- Функция argsToLabels была вынесена РІ пакет metrics Рё переименована РІ GetLabelsFromKV. Теперь функция игнорирует значение без ключа -([b0b4312](https://git.perx.ru/perxis/perxis-go/-/commit/b0b4312d8399b3933af35b88bad301a89488f353)) +- Добавлены metrics middleware для остальных сервисов -([8808371](https://git.perx.ru/perxis/perxis-go/-/commit/8808371cc465b0c16e6c41bd1ab5bf89a466a0ef)) +- *(core)* Добавлена СЃР±РѕСЂРєР° метрик кэша Рё запросов ([#PRXS-1219](https://tracker.yandex.ru/PRXS-1219))-([706b266](https://git.perx.ru/perxis/perxis-go/-/commit/706b2666190347d594c13d5d3f0f13586463be2a)) +- *(extension)* Добавлен middleware для СЃР±РѕСЂР° телеметрии -([221a13f](https://git.perx.ru/perxis/perxis-go/-/commit/221a13f8d19df03106afda566cad011178b1489a)) +- *(core)* Добавлен СЃР±РѕСЂ телеметрии РІ менеджере расширений ([#PRXS-1898](https://tracker.yandex.ru/PRXS-1898))-([1f18b52](https://git.perx.ru/perxis/perxis-go/-/commit/1f18b5226a8473a5b509ce0cf7001f2e1525b395)) + +### рџђ› Bug Fixes + +- *(items)* Рсправлены тесты -([57e7765](https://git.perx.ru/perxis/perxis-go/-/commit/57e776563ae3f6b14338f7fbb2d073ad40496d51)) +- *(items)* Добавлена метрика РІ CachingMiddleware -([68796ee](https://git.perx.ru/perxis/perxis-go/-/commit/68796ee090f68e16092a88e480900807e229ba80)) +- *(delivery)* Добавлена метрика РІ CachingMiddleware -([3f182d1](https://git.perx.ru/perxis/perxis-go/-/commit/3f182d11c13c914f6b7b8556f4082ce03ce937cb)) + +### рџ“љ Documentation + +- Добавлен комментарий -([c715ad8](https://git.perx.ru/perxis/perxis-go/-/commit/c715ad8d8123ca244f8eaa92f7456c9e99101fb4)) +- Добавлены подсказки Рє метрикам -([2387dac](https://git.perx.ru/perxis/perxis-go/-/commit/2387dac81918f252ac293a0f385d6e9149ec5924)) + +## [0.20.0] - 2023-12-01 + +### рџђ› Bug Fixes + +- *(extensions)* Рсправлена ошибка, РїСЂРё которой РїСЂРё обновлении расширений для некоторых коллекций всегда переустанавливались схемы, РІ которых РЅРµ было изменений. Добавлен возврат ошибки РїСЂРё любом действии СЃ расширением РІ случае неправильной его конфигурации ([#PRXS-1695](https://tracker.yandex.ru/PRXS-1695))-([998f3e8](https://git.perx.ru/perxis/perxis-go/-/commit/998f3e84ba73b241740a404d097d2b7c65cd352a)) +- *(core)* Рсправлена ошибка, РїСЂРё которой запрещенные правилами поля РІРѕ вложенных объектах РІСЃРµ равно были доступны пользователю ([#PRXS-1673](https://tracker.yandex.ru/PRXS-1673))-([0e1bec9](https://git.perx.ru/perxis/perxis-go/-/commit/0e1bec99fa78ad6f55e74e4cf6c38ee90cc5f205)) + +## [0.19.0] - 2023-11-03 + +### рџљЂ Features + +- *(core)* Добавлено поле метадата РІ схему коллекций, для хранения дополнительной информации Рѕ коллекции -([05a7965](https://git.perx.ru/perxis/perxis-go/-/commit/05a7965aa95768f1053854947cf4f4365ce81fd7)) +- *(extensions)* Переработана процедура установки коллекций (Установка расширений) учитывающая что коллекция могла быть создана пользователем Рё предотвращающая перезапись Рё потерю данных ([#PRXS-1380](https://tracker.yandex.ru/PRXS-1380))-([1f00274](https://git.perx.ru/perxis/perxis-go/-/commit/1f00274400637dd64d83176f1b650c8b7c129f72)) +- *(extension)* РџСЂРё установке расширения схемы коллекций принадлежащих расширению РїРѕ-умолчанию Р±СѓРґСѓС‚ обновлены. ([#PRXS-1380](https://tracker.yandex.ru/PRXS-1380))-([0dc7312](https://git.perx.ru/perxis/perxis-go/-/commit/0dc7312912999b811d5e48f247afbed3d737c9d7)) +- *(extensions)* РџСЂРё установке расширения больше РЅРµ перезаписывают конфликтные схемы коллекций. (Удален временный флаг _alwaysSetSchema РІ Setup) ([#PRXS-1472](https://tracker.yandex.ru/PRXS-1472))-([278b2cb](https://git.perx.ru/perxis/perxis-go/-/commit/278b2cbc96e4ebfbf34e21dccffb929754f9a829)) + +### рџђ› Bug Fixes + +- *(core)* Пакеты 'service' РІ которых лежат middlewares переименованы РЅР° 'middleware' ([#PRXS-1163](https://tracker.yandex.ru/PRXS-1163))-([75f3153](https://git.perx.ru/perxis/perxis-go/-/commit/75f31532aa7b3007d9ff32c89ec6b62877b93085)) +- *(core)* Рсправлена ошибка, РёР·-Р·Р° которой проверка РЅР° принадлежность пользователя Рє разным организациям отрабатывала некорректно. Добавлена очистка кэша РїСЂРё переносе пространства ([#PRXS-1297](https://tracker.yandex.ru/PRXS-1297))-([7aa1d49](https://git.perx.ru/perxis/perxis-go/-/commit/7aa1d497cbd84e4e7b08508d645d794ef77a27ac)) +- *(sdk)* Рсправлена ошибка 'failed to uninstall client: not found', возникающая РїСЂРё удалении расширения, клиент которого СѓР¶Рµ РЅРµ существует ([#PRXS-1342](https://tracker.yandex.ru/PRXS-1342))-([a170724](https://git.perx.ru/perxis/perxis-go/-/commit/a1707249ff2b82589a990cf08352debb58d467df)) +- *(core)* Рсправлена выгрузка лишних полей ("published_at", "published_by", "archived_at","archived_by") РІ файл РїСЂРё экспорте данных ([#PRXS-1390](https://tracker.yandex.ru/PRXS-1390))-([6dc87f8](https://git.perx.ru/perxis/perxis-go/-/commit/6dc87f8bf1acf2e12a7dc9858ab6407b9ac9ee78)) + +<!-- generated by git-cliff --> diff --git a/Taskfile.yaml b/Taskfile.yaml index 8a16d687681a42527f9dca01dd01fef0790c0aca..a75ab1d82db97c1725b2de039d57ab0e8d20b882 100644 --- a/Taskfile.yaml +++ b/Taskfile.yaml @@ -1,11 +1,31 @@ version: '3' - vars: PROTODIR: perxis-proto/proto PBDIR: pb + CURRENT_VERSION: + sh: svu current + RELEASE_VERSION: + sh: svu next tasks: + changelog: + cmds: + - git-cliff > CHANGELOG.md --tag {{ .RELEASE_VERSION }} + +# release +# - Сделать changelog +# - Закоммитить РІСЃРµ изменения +# - Пометить тэгом версию +# пререлиз - `git tag "$(svu pr --pre-release alpha.1 --build 9)"` +# пререлиз - `git tag "$(svu next)"` +# - Запушить РєРѕРґ Рё тэги РЅР° сервер (иначе будет непонятная ошибка goreleaser Not found) + release: + cmds: + - mkdir -p release + - git-cliff {{ .CURRENT_VERSION }}.. --tag {{ .RELEASE_VERSION }} > release/CHANGELOG.md + - goreleaser release --clean --release-notes=release/CHANGELOG.md + mocks: deps: - mocks.proto