Прошло много времени с тех пор как я начал делать этот блог и собирался подключить к нему комментарии. Наконец, я сделал это. В своей прошлой заметке я упоминал utteranc.es в качестве движка для комментариев на Github. Но за прошедшее время появилось новое решение (и успело стать более популярным) - giscus. Его-то подключением я и занялся.
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 to the 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.
Я занимаюсь веб-разработкой на Linux. Как правило, это не та веб-разработка где нужно обеспечить совместимость со всеми версиями браузеров в 90% случаев, но под актуальные версии Chrome/Firefox/Safari тестировать сайты и веб-приложения обычно нужно. Сложнее всего приходится с Safari: он работает только под MacOS, что затрудняет тестирование в нем разработчикам, использующим другие ОС.
В lombok уже достаточно давно, а так же в самом языке Java начиная с 10 версии существует возможность объявления переменных через var. Это позволяет не указывать тип явно, а позволить компилятору определить его автоматически. Так же, в lombok, Kotlin и Scala (но не в самом Java) есть его “финализированный” собрат val.