| search | hide | |||
|---|---|---|---|---|
|
|
Добавлено:
- Добавлена поддержка
CompletableFuture<RecordMetadata>иDeferred<RecordMetadata>возвращаемых значений в@KafkaPublisherдля Kotlin
Исправлено:
- Исправлен разбор имени параметра в запросах репозиториев базы данных
- Исправлены метрики
GET_*кэшаCaffeine - Исправлено правильное использование
KSType.toClassNameв KSP - Улучшены настройки
Swagger UIbundle.js конструктора
Добавлено:
- Добавлена аннотация
@Mdcдля аспекта логирования - Добавлена поддержка OpenAPI генератора множественной спецификации аутентификации HTTP-клиента через параметр конфигурации
- Добавлен
ProgrammaticDriverConfigLoaderBuilderв метод конфигурацииCassandraConfigurer - Добавлен виртуальный потоковый исполнитель и параметр
preconfigureдля движка Camunda BPMN - Добавлена поддержка
CORSдля Camunda BPMN REST модуля - Восстановлено поведение
OkHttpClientсо значением параметраretryOnConnectionFailure#trueпо умолчанию - Улучшен вывод сообщений об ошибках при обработке аннотаций
Исправлено:
- Исправлена поддержка функций
suspendв сгенерированныхPromisedProxy<T>на Kotlin - Исправлено поведение метода
AbstractRedisCache#invalidateAllдля удаления только ключей конкретного кэша (снижение производительности) - Исправлена подстановка параметров запроса к базе данных при совпадении префикса с другим параметром
- Исправлено отсутствие аннотации
@Tagв обработчике фабрики, сгенерированной для@KafkaListener - Исправлена трассировка кэша
Caffeineпо средствам ее отключения ввиду ее бесполезности - Исправлено NPE в
AwsS3ObjectMeta, если отсутствует параметр размера в ответе - Исправлена обработка пустой строкой для параметра конфигурации
Collection<T>как пустой коллекции - Исправлено поведение аннотации
@Mapping, чтобы она работала с реализациями абстрактных классов - Исправлен параметр фильтр
filterWithModelв OpenAPI генераторе для секцииrequests - Исправлено извлечение имени параметра аутентификации HTTP-клиента OpenAPI как аргумента
- Исправлено чтение тела запроса Camunda REST для POST-запросов
- Исправлено соответствие сигнатур в
@CodeMapperдля сложных обобщённых типов преобразователей - Исправлен проброс аннотаций
@Componentи@Rootв сгенерированныеHttpClientиRepositoryдля использования в тестовом графе
Добавлено:
- Добавлен улучшенный вывод ошибок и подсказок для
UnresolvedDependencyExceptionи других обработчиков аннотаций - Добавлена опция
forceIncludeNonRequiredгенератора OpenAPI - Добавлена обработка
Durationзначений конфигурации на основе формата JavaDuration
Исправлено:
- Исправлена некорректная работа
CircuitBreakerпри игнорировании исключений в состоянииHALF_OPEN - Исправлено некорректное кодирование пробела в параметре
@PathHTTP-клиента как символа%20 - Исправлено некорректное выполнение
@ScheduleWithCronзадачQuartzсразу при запуске сервиса - Исправлено отсутствие
@JsonInclude(ALWAYS)для Kotlin в генераторе OpenAPIforceIncludeOptional
Добавлено:
- Добавлен метод
ConsumerRecordWrapper#unwrapдля доступа к исходному событию потребителя
Исправлено:
- Исправлено и отключено по умолчанию поведение повторной попытки подключения
OkHttpClientвводившее в заблуждение - Исправлен
NPEвHttpServerResponseException.ofпри пустом сообщении в брошенной ошибке - Исправлено разрешение
HttpClientResponseMapperв аннотацииResponseCodeMapperв Kotlin - Исправлено некорректное поведение Resilient модуля
RetryприdisabledиattemptMax=0в Kotlin - Исправлена ошибка в OpenAPI генераторе, приводящая к
StackOverFlowпри проверке иерархии моделей для валидации сервера - Исправлено преобразование типа в OpenAPI генераторе для формата вида
type+format - Исправлен фильтр операций OpenAPI генератора при фильтрации моделей для разделов
responsesиrequests - Исправлено разрешение тегов OpenAPI генератора для Non-Json
Mapperв Java - Исправлено разрешение имени базы данных в трассировке
- Улучшен вывод исключений Resilient модуля для
CircuitBreaker,RetryиFallbackна уровнеTRACE
Добавлено:
- Добавлена поддержка распространения
@Tagна контроллеры HTTP-сервера - Добавлена опция
forceClusterдля подключения по одномуURIв кластерном режиме вRedis
Исправлено:
- Исправлена зависимость экспортера
OpentelemetrygRPC для клиентаOkHttp - Исправлена OpenAPI генерация
byte[]аргументов дляFormпараметров - Исправлена OpenAPI генерация
discriminatorу родительской модели - Исправлено OpenAPI генерация валидации для внутренних моделей
- Исправлено OpenAPI генерация
nullableэлементов вKotlin - Исправлена проверка
UndertowHttpServer для включенныхVirtual Threads - Улучшены некоторые сообщения об исключениях и ошибках инициализации
Исправлено:
- Исправлен контекст соединения
JDBC, совместно используемый при регистрации нескольких источников данных - Исправлено отсутствие статуса
OKвTracingв большинстве модулей - Исправлено NPE
OpentelemetryContext, возникавшее при отсутствии контекста Span
Требования обновления:
- Обновите плагин генератора OpenAPI до версии
7.14.0 - Если вы полагались на
@JsonInclude(ALWAYS)для полейisNullableиNonRequiredв генераторе OpenAPI, требуется вручную добавить в конфигурацию генератораforceIncludeOptional = "true"опцию
Добавлено:
- Добавлена поддержка виртуальных потоков для обработки запросов HTTP-сервера Undertow
- Добавлены аннотации
@DisallowConcurrentExecutionи@PersistJobDataAfterExecutionдля задач Quartz - Добавлена поддержка вызовов
postCommitиpostRollbackдля метода JdbcConnectionFactory#inTx - Добавлена поддержка
@Cookieпараметров в HTTP-клиент - Добавлена поддержка реализации методов из супер-интерфейсов в HTTP-клиенте
- Добавлена поддержка
Mockitoсессии и проверки неиспользуемых заглушек в JUnit-тестах - Добавлено прежнее поведение по умолчанию генератора OpenAPI без
@JsonInclude(Always)для полейisNullableиNonRequiredкак до версии 1.1.13 - Добавлена опция
forceIncludeOptionalдля добавления@JsonInclude(Always)для полейisNullableиNonRequiredв генератор OpenAPI - Добавлено маскирование заголовков
Cookie/Set-Cookieв HTTP по умолчанию - Добавлен LettuceConfigurator для Redis Lettuce клиента
- Добавлены метрики для Redis Lettuce клиента
- Добавлено больше данных для телеметрии
@KafkaProducer - Добавлен конфигуратор тегов метрик HTTP-клиента
- Добавлен конфигуратор тегов метрик gRPC-клиента
- Добавлена поддержка инкрементальной обработки Gradle
- Добавлена поддержка инкрементальной обработки Kotlin KSP
- Улучшены метрики
@KafkaListenerи@KafkaProducerи добавлены конфигураторы тегов - Улучшены метрики и логирование
@CircuitBreaker - Обновлены почти все зависимости до последних версий
Исправлено:
- Исправлено когда профиль
CassandraтребовалcontactPointsв конфигурации - Исправлен доступ к не примитивным
@Embeddedполям - Исправлен генератор OpenAPI не корректный префикс аннотации
param:в Kotlin - Исправлен генератор OpenAPI
Formдля полей, не являющихся строками - Исправлены параметры методов сохраняли аннотации AOP для сгенерированных классов
- Исправлено конфликт
System Propertiesв JUnit-тестах при одновременной инициализации нескольких графов - Исправлена валидация
@Validationпри обработке сигнатур методов@NotNullи@Nullable
Добавлено:
- Добавлена логика пропуска записей
@KafkaListenerчерез KafkaSkipRecordException - Добавлены параметры конфигурации
SSLдля кэшаRedis - Добавлены методы OpentelemetryContext для
getSpanиgetTraceId - Добавлена возможность постобработки конфигурации
Cassandraс помощьюCassandraConfigurer - Добавлена опция
delegateMethodBodyModeгенератора HTTP-сервера OpenAPI - Добавлен
Javadocв делегаты и улучшен стиль кода для сгенерированных классов в генератор OpenAPI
Исправлено:
- Исправлено кэширование IP-адреса прокси у
JdkProxySelectorHTTP-клиента - Исправлено
KafkaAssignConsumerпрекращал вычитывание топика при обновлении графа - Исправлена генерация читателя/писателя Json для запечатанных иерархий с типом
NothingвKotlin - Исправлено извлечение опции
implicitHeadersгенератора OpenAPI - Исправлена поддержка тестирования сложных
Wrapped<T>компонент вJUnit
Добавлен:
- Добавлена возможность передать
Mapсистемных свойств дляKoraConfigModificationв JUnit конфигурации - Добавлена улучшенная конфигурация сервера и клиента gRPC
- Добавлен статус результатов для метрик gRPC-клиента
Добавлено:
- Добавлена в
OpenAPIгенератор поддержка опцийImplicitHeadersиImplicitHeadersRegex - Добавлена опция
enabledдля всехresilientкомпонентов в конфигурацию - Добавлена поддержка
KafkaClientMetricsметрик Micrometer дляKafkaпотребителей - Добавлен провайдер серверных тегов Micrometer для
gRPC-сервера
Исправлено:
- Исправлена ленивая инициализация
content-typeдляJDK HTTP-клиента - Исправлено логирование тела для
HTTP-клиента
Исправлено:
- Исправлено сообщение об ошибке
Kotlin KSPдля неизвестного типа при построении графа
Добавлено:
- Добавлена поддержка в интерфейсе
Headконтракта дляAWS S3 Client - Добавлена поддержка конфигурации для
Mapс пользовательским объявлением ключей (Enum/UUID/итп) - Добавлены методы чтения
JsonReaderбез строгих исключений - Добавлен улучшенный вывод ошибок контейнера зависимостей во время обработки аннотаций
Исправлено:
- Исправлено зависание запроса и потеря сигнала
onCompleteв работеJDK HTTP-клиента - Исправлена реализация метода
objectMetaвAWS S3 Client - Исправлено извлечение
content-typeJDK HTTP-клиента - Исправлены ошибки совместимости Kotlin синтаксиса и компилятора Kotlin 2.0 для репозиториев JDBC
- Исправлена OpenAPI генерация
@Validаннотаций дляEnumтипов - Исправлена совместимость методов
KafkaConsumerTelemetryс библиотеками на устаревших версиях Kora - Исправлен OpenAPI
FILTERдля сложного сканирования рекурсии в иерархии моделей - Исправлено отсутствие свойств
overrideпри генерации OpenAPI полей моделей для Kotlin - Исправлена обработка ошибок перехватчика телеметрии
gRPCсервера
Добавлено:
- Обновлены минорные версии всех зависимостей
Исправлено:
- Исправлена ошибка счетчика
CircuitBreakerв полуоткрытом состоянии, появившийся в 1.1.24 - Исправлен порядок полей при чтении через
JsonObjectCodec - Исправлена поддержка AOP для
defaultметодов в интерфейсах обрабатываемых AP (например, интерфейс@HttpClient) - Исправлена обработка JSON для библиотеки
Enumпри вызове через расширение - Исправлено распространение JSON-типов для запечатанных (
sealed) типов при вызове через расширение - Исправлена OpenAPI генерация
Cookieавторизации для HTTP-сервера в Kotlin - Исправлена OpenAPI генерация валидации моделей в Kotlin
- Исправлена поддержка
Wrapped<T>компонент и заглушек при тестировании в JUnit
Добавлено:
- Добавлено больше конвертеров для
JsonиStringConverterпо умолчанию - Добавлена поддержка свойств Kotlin интерфейсов в
@ConfigSource
Исправлено:
- Исправлено OpenAPI именование полей и типизация
Enumмассивов - Исправлено OpenAPI именование полей при транслитерации с кириллицы
- Исправлена опция OpenAPI
filterWithModelsдля работы со сложными иерархиями и рекурсией - Исправлена поддержка приватных методов и свойств в реализациях
PromisedProxy - Исправлена генерация
JsonReaderдляsealedинтерфейсов
Добавлено:
- Добавлена OpenAPI поддержка транслитерации
Enumкириллических констант - Добавлена OpenAPI поддержка дополнительного именования
Enumконстант вSnakeCaseформате - Добавлена OpenAPI пользовательская опция
filterWithModelsдля фильтрации моделей, когда указанаopenapiNormalizerопция FILTER - Добавлено OpenAPI пользовательская опция
prefixPathдля генератора контроллеров HTTP-сервера - Добавлена OpenAPI оптимизация авторизации HTTP-сервера в Kotlin
- Добавлено больше настраиваемых опций экспортера трассировки
Исправлено:
- Исправлена KSP генерация
JsonWriterдля Java-классов - Исправлен корректный подсчет ошибок в
CircuitBreakerприHALF-OPENсостоянии - Исправлен потенциальный
NPEкэша Redis для операцииputAsync - Исправлен корректный экспорт значений метрики
KafkaConsumerreport lag - Исправлен OpenAPI дискриминатор именование
JsonFieldполей в моделях детей - Исправлен OpenAPI дискриминатор при обработке ошибок свободных форм данных в описании
- Исправлен OpenAPI модуль отображения, когда указанные пути контроллеров для HTTP-сервера блокировались, даже если были отключены
Добавлено:
- Добавлен метод записи в отформатированную строку в
JsonWriter - Добавлены опции конфигурации
maxConnectionAgeиmaxConnectionAgeGraceдля gRPC-сервера
Исправлено:
- Исправлена потенциальная возможность исчерпания всех потоков в
JDKпланировщике - Исправлена проверка доступа полей при генерации
JsonWriter/JsonReaderв Kotlin - Исправлен
JsonExtension, что он не должен пытаться генерироватьJsonWriter/JsonReaderдля неsealedинтерфейсов - Исправлено, что
Undertowне использовалIOпотоки для записи результатов приватного API/metricsи/health - Исправлено освобождение HTTP
Interceptor, которое должно вызываться после освобождения зависимых узлов - Исправлено извлечение булевых значений в
DefaultServiceConfigConfigValueExtractor - Исправлено внедрение полного графа в тестах через расширения
JUnitдля графов только с заглушками в тестах - Исправлено сообщение об ошибке
CircuitBreakerConfig - Исправлено сообщение о подсказке подключения зависимостей в графе и стратегия совпадения
- Исправлено и улучшено правильное выполнение параллельных тестов JUnit и
@Nestedтестов
Исправлено:
- Исправлен создаваемый
OpenAPIконструктор модели, где дискриминатор с1значением, был обязательным аргументом в Java - Исправлено именование полей модели с типом
Enumмассива создаваемогоOpenAPI
Добавлено:
- Добавлена поддержка сигнатуры
Cache<K, Optional<T>>в кешах в Java - Добавлена поддержка
Record/Dataклассов в качестве само-параметра в базах данных - Добавлена поддержка
nullableи/илиnon requiredпараметра OpenAPIadditionalProperties - Добавлен парсинг
BigDecimalс использованиемJsonReader<BigDecimal>из контейнера зависимостей, а не статической функции - Добавлен оптимизированный доступ к получению
HTTP-серверныхпараметров и заголовков - Добавлен оптимизированный
CassandraобработчикList<T>для пустых значений - Добавлена усиленная проверка конфигурации
CircuitBreakerна старте - Добавлено логирование медленно инициализируемых узлов в контейнере зависимостей
Исправлено:
- Исправлено поведение
HTTP Clientдля проверки кодов ответов только для методов аннотированных@Tag - Исправлен не основной конструктор в сгенерированном
S3Clientв Kotlin - Исправлена подстановка имени колонки из аннотации
@Columnбазы данных в Kotlin обработчиках - Исправлено именование параметров переменных
Enumв OpenAPI - Исправлена поддержка внедрения
Wrapped<T>в контейнере зависимостей Java - Исправлен правильный разбор параметров запросов
List<T>иSet<T>вHTTP-сервере - Исправлена обработка
SoapClientxml-элементовWrapped<T>для запросов/ответов - Исправлена обработка ошибки
JdbcMappersпри не предоставлении обработчиков дляT?сущностей в Kotlin - Исправлена ошибка, когда
JUnit5не находил@Mockкомпонент в контейнере зависимостей - Исправлено пометка
HttpServerRequest#routeкакnullable, при не сопоставлении ни с одним контроллером - Исправлено, что сгенерированный
HTTP Clientне должен использоватьthisдля доступа к статическим обработчикам - Исправлено, что сгенерированный
ConfigValueExtractorсодержал неиспользуемые поля
Добавлено:
- Добавлена аннотация
@EntityCassandraс процессорами. - Добавлен более гибкий способ настройки компонентов gRPC
- Добавлено предупреждение в расширениях
@Jsonдля не аннотированных типов - Заменено устаревшее использование OpenTelemetry
SemanticAttributes.
Исправлено:
- Исправлены обработчики Cassandra
UDTдля списков. - Исправлена частичная ошибка
T is not a sub type of the class/interface that containsв Kotlin - Исправлена работа дискриминаторов моделей в OpenApi генераторе
Добавлено:
- Добавлен обогащенный API разбора параметров HTTP-сервера с поддержкой
Set<T> - Добавлено больше конвертеров результата
Cassandraпо умолчанию - Улучшена обработка ошибок
ClientClassGeneratorпри несовпадении Пути/Параметров - Добавлена инъекция контекста
ViolationExceptionHttpServerResponseMapperперед выполнением
Исправлено:
- Исправлена операция получения по множеству ключей для кэша
Redis - Исправлены
Cassandraконвертеры результата для примитивных типов - Исправлено именование перечисления дискриминатора при генерации
OpenAPI - Исправлены значения свойств
Quartzпо умолчанию - Исправлена обработка пустых интерфейсов в качестве цели для
@ConfigValueExtractorв Kotlin - Исправлена обработка значений
nullдискриминатора для запечатанных интерфейсов при разбореJSON - Исправлена работа
OpenAPIпараметраtypeMappingдля примитивных типов Java - Исправлено обнаружение параметризованных общих классов в качестве конечных компонент контейнера
Добавлено:
- Добавлен Camunda Zeebe Worker экспериментальный модуль
- Добавлены транзакционные Kotlin
suspendметоды-расширения для базы данных - Улучшены сгенерированные
OpenAPIконтракты моделей с дискриминаторами
Исправлено:
- Исправлен неиспользуемый параметр
Kafkaв HandlerWrapper - Исправлен метод sendOffsetsToTransaction издателя транзакций
Kafka - Исправлена конфигурация планировщика
Quartzпо умолчанию для корректного поведения в кластере - Исправлена работа с
Wrappedкомпонентами вJUnitпри Mock/Spy/Replace - Исправлены незначительные обновления безопасности зависимостей
Добавлено:
- Добавлена метрика пакетной обработки Kafka потребителя и другие улучшения телеметрии
- Добавлен булевый тип в конфигурацию как родной тип
Исправлено:
- Исправлена обработка телеметрии клиента gRPC при отмене запроса
- Исправлена совместимость интерфейсов у общих компонент шаблона при построении графа
- Исправлено засыпание служебного HTTP-сервера при выключении
- Исправлено описание у
ResourceConfigOriginв конфигурации для улучшения сообщения об ошибках
Добавлено:
- Добавлены новые опции в конфигурации HTTP-сервера
Исправлено:
- Исправлена обработка типа
byte[]в JDBC - Исправлено ожидание правильного штатного завершения
JdkScheduler - Исправлена потенциальная ошибка NPE при регистрации задач Quartz
- Исправлено обновление заданий планировщика, вызывающее полное обновление планировщика
- Улучшено завершение работы Quartz планировщика
- Обновлены минорные версии зависимостей
Исправлено:
- Исправлено отсутствие трассировки HTTP-клиента
- Исправлена потенциальная коллизия метода конфигурации
QuartzModuleс планировщиком JDK - Исправлено ожидание штатного завершения работы Jdk планировщика
Добавлено:
- Добавлено принудительное завершение работы при сбое штатного завершения для gRPC-сервера, Kafka потребителя, планировщика
Исправлено:
- Исправлено отсутствие экстрактора конфигурации для Quartz
Добавлено:
- Добавлен специальный тип JsonNullable
- Добавлен параметр конфигурации KafkaConsumer, позволяющий обрабатывать пустые события после
poll() - Добавлена поддержка параметра OpenAPI enableJsonNullable (Изменено поведение по умолчанию, теперь nullable и non required поля Include.Always по умолчанию, если не включен
JsonNullable) - Добавлен Camunda Rest OpenAPI
- Улучшена телеметрия Camunda Rest
- Улучшено штатное завершение работы HTTP-сервера, KafkaListener, gRPC-сервера, планировщиков
Исправлено:
- Исправлена ошибка параметра
additionalContractAnnotationsOpenAPI кодогенерации без включенной валидации - Исправлена работа RebalanceListener для потребителя при конфигурации через топики
- Исправлена обработка исключений
HttpServerResponseв блокирующих потоках - Исправлены возможность добавлять не абстрактные методы в Kotlin Kafka продюсере
Добавлено:
- Добавлена опция OpenAPI для генерации авторизации HTTP-клиента в качестве аргумента метода
- Добавлен параметр
@KoraAppTest#modules - Добавлена возможность
@KoraAppгенерировать@SubModule, если это включено, для возможного расширения реального графа в других средах - Добавлена трассировка и логирование в телеметрии
SOAP
Исправлено:
- Исправлена обратная совместимость со старыми версиями представленной в
1.1.11конфигурации телеметрии HTTP-клиента (актуально библиотекам с версией до1.1.11) - Исправлена обработка отсутствующих тегов в метриках нескольких модулей
- Исправлена проверка Jdbc Kotlin
ResultSet.next()для опциональных параметров - Исправлено включение логирования определенных операций HTTP-клиента
- Исправлена трассировка отсутствующего кода состояния
ERRORдля нескольких модулей
Добавлено:
- Добавлено маскирование логов HTTP-клиента/сервера
- Добавлены обогащенные контракты метрик HTTP-клиента и сервера
- Добавлен параметр для указания собственных аннотаций над методами HTTP клиента/сервера в OpenAPI
- Добавлена дополнительная аннотация для создания преобразователей результатов JDBC
- Добавлена поддержка виртуальных потоков в повторителе и ограничителе времени
Исправлено:
- Исправлена утечка памяти метрик сервера/клиента
gRPC - Исправлена поддержка сложных дженерик типов для фабрик компонентов в
Java - Исправлено неправильное протоколирование ошибок в планировщике
Quartz - Исправлено сопоставление строк значений конфигурации для
Enumтипов - Исправлено чтение
JSONтиповSetиMapна реализацииLinkedколлекций для сохранения порядка элементов - Исправлена поддержка отсутствия попыток в конфигурации повторителя
- Исправлен
Content-Typeответа HTTP-клиента когда ответ строка
Добавлено:
- Добавлен доступ к
TypeSpec.Builderпри создании аспектов для конечного пользователя - Добавлена поддержка опции
additionalModelTypeAnnotationsдля OpenAPI генератора - Добавлена поддержка аннотации
@Deprecatedдля сгенерированных OpenAPI методов HTTP-клиента - Добавлена поддержка значений по умолчанию для Date-Time в случае
typeMappingв генераторе OpenAPI - Добавлены улучшенная конфигурация метрик Cassandra
Исправлено:
- Исправлены утечки байтовых буферов в Undertow
- Исправлена обязательность CodegenModel в OpenAPI при отсутствии валидации
- Исправлено логирование тела запроса в HTTP-клиенте при использовании
async-http-client - Исправлена обработка
nullтипов ответов для Kotlin в Cassandra - Исправлена проверка
nullаннотаций на стадии обработки аннотаций в Java - Исправлен ответ примитивного типа в HTTP-сервере в Java
- Исправлена поддержка
LocalDateв JDBC репозиториях для Kotlin
Добавлено:
- Добавлены Camunda BPMN и Camunda REST экспериментальные модули
- Добавлена поддержка нескольких файлов OpenAPI
- Добавлена поддержка ConsumerAwareRebalanceListener
- Добавлены дополнительные методы создаваемые OpenAPI, без необязательных параметров для HTTP-клиента со значениями по умолчанию
- Добавлена поддержка Kafka потребителем пользовательского тега
- Добавлена поддержка дополнительных сигнатур аспектами логгирования
- Включены по умолчанию метрики драйвера
Cassandra(см конфигурацию)
Исправлено:
- Исправлен
GraphInterceptorдля компонентов с аспектами - Исправлена конфигурация метрик
Cassandra - Исправлена обработка исключений аспектами логгирования
- Исправлена потенциальная коллизия имен JSON
- Исправлено отсутствие в
KSPконструктора внешнего писателя из библиотек - Исправлено присутствие телеметрии для пустых записей в
Kafkaпотребителе - Исправлена фиксация событий при обработке один за другим в
@KafkaListener - Исправлено сообщение об ошибке в случае не правильного использования
@Batchзапросов - Исправлено отсутствие
@Nullableаннотации при формировании@KoraSubmodule - Исправлено отсутствие HTTP-сервера
Content-Typeв исключениях с телом - Исправлены нестрочные значения по умолчанию в схемах OpenAPI
Добавлено:
- Добавлен модуль S3 Client экспериментальный
- Добавлен модуль Liquibase
- Добавлена опция конфигурации для указания файлов миграции в модуль Flyway
- Добавлен Тип размера
- Добавлена опция конфигурации Размера сообщения сервера gRPC
- Добавлен дополнительный Javadoc
Исправлено:
- Исправлено логгирование тела в HttpClientTelemetry, которое не читалось до конца
- Исправлен порядок выполнения перехватчика gRPC
- Исправлена фиксация записи Kafka Consumer только после пакетной обработки
- Исправлена длительность смещения KafkaAssignConsumerContainer
- Исправлено смешивание кодегена Openapi, ссылающегося на поля oneOf в корневом типе
Добавлено:
- Добавлено распространение
@Tagдля@Repository - Добавлена до настройка OkHttp
Исправлено:
- Исправлены JsonReader/JsonWriter для полей с символом
$ - Исправлено требование
ReactorContextKtдляCoroutineContextInjectInterceptor - Исправлен NPE в метриках GrpcServer
- Исправлена валидация аргументов метода через
@Patternв Kotlin - Исправлена установка
Content-Typeдля Response Entity - Исправлена коллизия псевдонимов в Kotlin для классов с одинаковыми именами
- Удалена зависимость Prometheus JMX
Исправлено:
- Исправлены ошибки Netty и gRPC зависимостей
Добавлено:
- Улучшено сообщение об ошибке HTTP Client header required в OpenAPI Generator
Исправлено:
- Исправлена
CompletionFutureсигнатура Cassandra репозиториев - Исправлено определение обязательности полей/колонок с использованием любой аннотации
@Nullableдля сущностей базы данных
Добавлено:
- Добавлена поддержка
@Nullableпараметров конструктора Record у баз данных - Добавлен выбор транспорта Netty
- Добавлена возможность отключение/включение наблюдателя за конфигураций
- Оптимизирована авторизация у генератора OpenAPI HTTP сервера
Исправлено:
- Исправлена доступность фабрики ByteBufferPool для служебного модуля HTTP-сервера
- Исправлено требование
@NonNullдля сигнатур CompletionStage в базах данных - Исправлена обработка потенциальных ошибок служебного HTTP-сервера
- Исправлена потенциальная коллизии имен у перехватчиков авторизации в OpenAPI
- Исправлены зависимости Netty transport у Async HTTP Client
- Исправлена обработка трассировки баз данных
- Исправлены шаблонизированные компоненты, которые должны работать с
@Component - Исправлены предупреждения Gradle при сборке
Исправлено:
- Исправлено предотвращения утечек памяти посредствам замены байтового буфера Undertow на наш собственный
- Исправлена поддержка типа
URIв OpenAPI - Исправлена поддержка асинхронных сигнатур в JDBC (требуется предоставить
Executor) - Исправлена аутентификация по Cookie в генерации OpenAPI севера
- Обновлены зависимости с версиями с исправлениями
- Помечен тегами исполнитель Undertow Xnio
Исправлено:
- Исправлено
@Retryдля сигнатуры CompletableFuture - Исправлена обработка ошибок Cache AOP
- Исправлена работа свойства primaryAuth генератора OpenAPI
- Исправлена телеметрия HttpClient, передающая Content-Length базовому клиенту
- Исправлена поддержка
Wrappedв расширении JUnit5 тестировании
Исправлено:
- Исправлен результат Void для методов
@HttpClientс мапперами по коду - Исправлен
@Cacheableаспект для реактивного контракта - Исправлена обработка HTTP Content-Length в реализациях
- Исправлен Kotlin Nullable enum в OpenAPI
- Исправлено отсутствие
equals & hashCodeв пустых классах Kotlin в OpenAPI - Исправлена ошибка GraalVM ReactorContextHook#init() во время выполнения
Добавлено:
- Добавлена поддержка метрик OpenTelemetry нового стандарта 1.23
- Добавлена поддержка GraalVM для большинства модулей и поддержка виртуальных потоков в GraalVM
- Обновлены и синхронизированы зависимости всех модулей
- Добавлено улучшенное сообщение при сборке компонент
- Стандартизированы сообщения компонент жизненного цикла
Исправлено:
- Исправлена некорректная сигнатура
HttpBody.contentLength(int->long) - Исправлено поведение
@ResponseCodeMapperкогда определен только код - Исправлено отсутствие метрик драйвера Cassandra
- Исправлена ошибка при записи в закрытое соединение Undertow игнорировавшее телеметрию
- Исправлено падение процессора аннотаций AOP без зависимостей Kora во время компиляции
- Исправлены незначительные ошибки в модуле отказоустойчивости
- Исправлено отсутствие аннотаций
@Generated - Исправлена ошибка ненужного обновление графа зависимостей
Добавлено:
- Добавлена поддержка gRPC Server Reflection
Исправлено:
- Исправлено отсутствие аннотаций
@Generated(влияло на отчеты JaCoCo)
Добавлено:
- Добавлен тег ошибок метрики баз данных
- Добавлены метрики драйвера Cassandra
- Добавлен контракт для повторителя для
CompletableStageи оптимизирован аспект дляCompletableStage
Исправлено:
- Исправлена поддержка OpenAPI Generation кодогенерации для Java 21
- Исправлены недостающие вызовы
Span.recordExceptionв телеметрии - Исправлена телеметрия HTTP-клиента с одно пакетными ответами в качестве
InputStream
Добавлено:
- Поддержка
@Nestedтестов - Поддержка сигнатуры
CompletionStage<Optional<T>>для кеша AOP - Поддержка освобождения Graph
AutoClosableна стадииrelease - Улучшено логирование процессора аннотаций Java
Исправлено:
- Исправлено генерирование OpenAPI не Json
Content-Typeпреобразователей - Исправлена опция OpenAPI для
java-async-server&java-reactive-server - Исправлена ошибка Undertow
exchange already complete - Исправлена ошибка кеша Redis AOP для контрактов
Mono
Исправлено:
- Исправлена поддержка метрик HTTP сервера/клиента по старым стандартам OpenTelemetry
Добавлено:
- Поддержка улучшена для всех конфигураций HTTP клиентов
- Поддержка метки партиции в метрике
messaging.kafka.consumer.lagдля KafkaProducer - Поддержка метрик и телеметрии HTTP сервера/клиента приведена к новым стандартам OpenTelemetry
- Поддержка перехватчиков для HTTP сервера/клиента в OpenAPI генераторе с помощью опции
interceptors - Поддержка типа
shortдля баз данных
Исправлено:
- Исправлена поддержка байтовых контрактов в HTTP сервере при создании через OpenAPI генераторе
Добавлено:
- Поддержка реализации OkHttp клиента HTTP
Исправлено:
- Исправлена ошибка обработки нескольких ссылочных значений в рамках одного значения в файле конфигурации
- Исправлено NPE в Kafka продюсере
- Исправлен экспортер трассировки OpenTelemetry по gRPC
Добавлено:
- Поддержка метрик Kafka совместимыми с семантическими соглашениями OpenTelemetry
- Поддержка экспортера трассировки OpenTelemetry через HTTP
- Поддержка сигнатуры
CompletionStageдля возврата в Kafka Publisher - Поддержка необязательных параметров в каноническом конструкторе для моделей Kotlin, сгенерированных OpenAPI
- Поддержка значений даты и времени в конфигурации
- Поддержка аннотаций псевдонимов типов (
Type Alias) в Kotlin
Исправлено:
- Исправлена ошибка захвата
CircuitBreakerв полу открытом состоянии (HalfOpen) - Исправлено переопределение диспетчера при вызове gRPC сервера
- Исправлено сохранение аннотаций аспектов для всех классов созданных фреймворком
Добавлено:
- Поддержка
HttpServerRequestкак параметра в сгенерированных OpenAPI контрактах - Поддержка необязательных заголовков в ответе в сгенерированных OpenAPI контрактах
Исправлено:
- Исправлена обработка повторяемых Cache аннотаций в Kotlin
- Исправлены обработка Type Alias аннотации в Kotlin
- Исправлены отсутствующие аннотации
@Rootв@KoraSubmodule
Добавлено:
- Поддержка HTTP клиентом параметров
@Queryи@HeaderтипаMapиHttpHeaders - Поддержка планировщиком
Quartz.propertiesпо умолчанию - Поддержка планировщиком JDK значения кол-ва потоков в конфигурации по умолчанию
Исправлено:
- Исправлена обработка перехватчиками исключения
405от HTTP сервера - Исправлена обработка перехватчиком исключения при отсутствии HTTP-параметров в HTTP сервере
- Исправлена обработка исключений в иерархии перехватчиков HTTP сервера
- Исправлены недостающие аннотации
@Generated - Исправлены отсутствующие аннотации
@Nullableв@KoraSubmodule - Исправлена обработка примитивных возвращаемых значений методов у аспекта логирования
Первая полностью стабилизированная версия с зафиксированным API.