Yesterday I had a problem with GroupedOpenApi
in my Spring Boot 3 project. It seemed like Swagger was completely ignoring it. Swagger was working fine, it used settings provided by OpenAPI
bean, but it wasn’t dividing my APIs into any groups.
Do you like to customize things? I do. And Jenkins is not the exclusion. If you would like to customize it like me, maybe you’ll be interested in the Jenkins Theme Generator.
Мне нравится писать чейнджлоги. В процессе их написания появляется приятное чувство от ощущения проделанной работы. Сравнение двух состояний - до и после. Вот так было, вот так стало. Вот столько-то поменялось. Вот настолько-то стало лучше. Каждое изменение, я считаю, должно быть отмечено в журнале изменений, зафиксировано, и опубликовано. Даже если их немного. В любом случае, вести чейнджлог лучше чем не вести.
I ran into a java.io.FileNotFoundException: … (File name too long)
error one day, and it turned out to be much deeper than it seems. That’s why I started exploring it, and wrote this note.
One day my coworker sent me a code snippet with a simple question “What will be written in test2 variable?”:
1
2
Boolean test = null;
Boolean test2 = (true) ? test : false;
MDI (Material Design Icons) is a popular icon library. It is very useful for both designers and developers: the library contains hundreds of free and ready-to-use icons, designers can use a Figma plugin and developers can use NPM packages like MDI font. Even if you don’t want to see the whole library as part of your project, you can import icons as images.

В процессе работы мне часто приходится ресерчить, искать ответы на какие-то вопросы, собирать вместе информацию из разных источников, изучать что-то новое. Из полученных таким образом знаний составлялись заметки, чтобы потом к ним можно было вернуться. В какой-то момент я понял что хочу иметь не просто записную книжку, а блог, в котором я мог бы тренироваться в оформлении своих заметок и мыслей в статьи.
To build your pipelines, you may need the name of the branch on which the pipeline is running. In most cases, the predefined variables CI_COMMIT_BRANCH
or CI_COMMIT_REF_NAME
can be used for this. According to GitLab Docs:

Our team maintained a large Mercurial (Hg) monorepo containing 3 significant projects and several smaller ones, with an 8-year history and approximately 30,000 commits.We set a goal to split the monorepo into multiple separated repositories and migrate each to Git with saving all the history. The goal looked unreachable, but the solution appeared to be quite simple.
While working on the reporting system, I needed to pass a test by comparing .xlsx
spreadsheets built with our system with those created with BIRT. Reports were compared by scripts, row-by-row. I identified and resolved all apparent differences, but the test was still failed.
В lombok уже достаточно давно, а так же в самом языке Java начиная с 10 версии существует возможность объявления переменных через var
. Это позволяет не указывать тип явно, а позволить компилятору определить его автоматически. Так же, в lombok, Kotlin и Scala (но не в самом Java) есть его “финализированный” собрат val
.