{"id":10041,"date":"2021-11-30T15:33:47","date_gmt":"2021-11-30T14:33:47","guid":{"rendered":"https:\/\/vived.io\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/"},"modified":"2022-09-19T13:10:44","modified_gmt":"2022-09-19T11:10:44","slug":"jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus","status":"publish","type":"post","link":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/","title":{"rendered":"JVM Tuesday vol. 66 \u2013 JetBrains Fleet,  JDK 18, Micronaut i Quarkus"},"content":{"rendered":"\n<h2 id=\"1-fleet-nowe-ide-od-jetbrains\" data-num=1>1. Fleet &#8211; nowe IDE od JetBrains \ud83d\udef3\ufe0f<\/h2>\n\n\n\n<p>Wprawdzie tydzie\u0144 temu przewidywa\u0142em, \u017ce je\u015bli b\u0119dziemy mieli \u201cspokojniejszy\u201d tydzie\u0144, to zrobimy sobie dzisiaj szersze opracowanie Projektu Loom. Ale dzi\u0119ki JetBrains, tydzie\u0144 wcale nie nale\u017cy do spokojnych.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d118fa90.png\" alt=\"\"\/><\/figure>\n\n\n\n<p>Nie ulega tajemnicy, \u017ce to w\u0142a\u015bnie IDE od tej firmy nale\u017cy do najpopularniejszych w\u015br\u00f3d programist\u00f3w JVM &#8211; w zasadzie ka\u017cda statystyka mocno to potwierdza. Dlatego te\u017c nie mogli\u015bmy nie przekaza\u0107 Wam informacji o chyba najwi\u0119kszej rewolucji w produktach JetBrains od d\u0142ugiego czasu. Pokazano bowiem JetBrains Fleet &#8211; narz\u0119dzie szumnie nazywane IDE nowej generacji.&nbsp;<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d13e6021.png\" alt=\"\"\/><figcaption>W kontek\u015bcie tych bu\u0144czucznych zapowiedzi pewnie troch\u0119 zabawnym jest, \u017ce na pierwszy rzut oka m\u00f3wimy tutaj o wizualnym klonie Visual Studio Code. Wida\u0107, \u017ce rozwi\u0105zanie Microsoftu sporo na tym rynku zamiesza\u0142o.&nbsp;<\/figcaption><\/figure><\/div>\n\n\n<p>Fleet ma by\u0107 lekki, ale r\u00f3wnie pot\u0119\u017cny je\u015bli chodzi o wsparcie u\u017cytkownika jak jego starszy brat, oferuj\u0105c najlepszej klasy podpowiadanie kodu i sugestie zmian. G\u0142\u00f3wn\u0105 cech\u0105 nowego rozwi\u0105zania ma by\u0107 jednak jego \u201czdalnie-natywno\u015b\u0107\u201d. Zamiast uruchamia\u0107 edytor po prostu jako aplikacje, mo\u017cna dystrybuowa\u0107 go r\u00f3wnie\u017c jako dockerowy kontener, a tak\u017ce uruchomi\u0107 w ramach chmury lub Space &#8211; zintegrowanej us\u0142ugi do wytwarzania oprogramowania od paru lat rozwijanej przez JetBrains, zawieraj\u0105cej mo\u017cliwo\u015b\u0107 komunikacji, code-review czy zarz\u0105dzania zadaniami. Firma chwali si\u0119, \u017ce to w\u0142a\u015bnie zdalna kolaboracja jest sercem Fleeta, dzi\u0119ki czemu nie zabraknie w nim r\u00f3wnie\u017c funkcjonalno\u015bci wspieraj\u0105cych np. zdalny pair-programming.&nbsp;<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d14f24fe.gif\" alt=\"\"\/><figcaption>Niestety, na razie Fleet znajduje si\u0119 w zamkni\u0119tej becie. Mam jednak nadziej\u0119, \u017ce uda mi si\u0119 po\u0142o\u017cy\u0107 na niej moje \u0142apki i b\u0119d\u0119 m\u00f3g\u0142 si\u0119 z Wami podzieli\u0107 wra\u017ceniami.<\/figcaption><\/figure><\/div>\n\n\n<p>Oczywi\u015bcie, nie oznacza to, \u017ce JetBrains ko\u0144czy prace nad Intellij Idea. Na dniach powinni\u015bmy si\u0119 spodziewa\u0107 wydania 2021.3, kt\u00f3re aktualnie znajduje si\u0119 w <a href=\"https:\/\/blog.jetbrains.com\/idea\/2021\/11\/intellij-idea-2021-3-rc2-is-out\/\">publicznym preview<\/a>. Nowe wydanie przyniesie dalsze wsparcie Kotlina (min. ulepszony debugger), ale r\u00f3wnie\u017c obs\u0142ug\u0119 Groovy\u2019ego w wersji czwartej, a tak\u017ce sporo nowo\u015bci dla u\u017cytkownik\u00f3w Dockera. G\u0142\u00f3wnym daniem jednak &#8211; podobnie jak ma to miejsce w wypadku Fleeta &#8211; jest wsp\u00f3\u0142praca zdalna. Nowa wersja IDE to wi\u0119c dalsza integracja ze <a href=\"https:\/\/www.jetbrains.com\/space\/\">Space<\/a> i <a href=\"https:\/\/blog.jetbrains.com\/blog\/2021\/11\/29\/introducing-remote-development-for-jetbrains-ides\/\">wspomnian\u0105 ju\u017c mo\u017cliwo\u015b\u0107 tworzenia \u015brodowisk programistycznych w chmurze.<\/a>&nbsp;<\/p>\n\n\n\n<p>Wida\u0107, \u017ce wy\u015bcig ekosystem\u00f3w do pracy zdalnej nie zwalnia, a \u015bmiem powiedzie\u0107, \u017ce nawet coraz \u015bmielej przyspiesza. My\u015bl\u0119, \u017ce rok 2022 jeszcze nas w tym aspekcie sporo zaskoczy.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0179r\u00f3d\u0142a<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/www.jetbrains.com\/fleet\/\">JetBrains Fleet: The Next-Generation IDE by JetBrains<\/a><\/li><li><a href=\"https:\/\/blog.jetbrains.com\/blog\/2021\/11\/29\/introducing-remote-development-for-jetbrains-ides\/\">Introducing Remote Development for JetBrains IDEs | JetBrains News<\/a><\/li><li><a href=\"https:\/\/www.jetbrains.com\/space\/\">An all-in-one solution for software projects and teams<\/a><\/li><li><a href=\"https:\/\/blog.jetbrains.com\/idea\/2021\/11\/intellij-idea-2021-3-rc2-is-out\/\">IntelliJ IDEA 2021.3 RC2 is out! | The IntelliJ IDEA Blog<\/a><\/li><\/ul>\n\n\n\n<h2 id=\"2-dwa-nowe-jepy-grzebiace-w-internalach-trafia-do-jdk-18\" data-num=2>2. Dwa nowe JEPy grzebi\u0105ce w internalach trafi\u0105 do JDK 18 \ud83d\udc77<\/h2>\n\n\n\n<p>Tak jak ju\u017c wspomina\u0142em w poprzedniej edycji, dochodzi do nas coraz wi\u0119cej ciekawych informacji dotycz\u0105cych nowo\u015bci, kt\u00f3rych mo\u017cemy spodziewa\u0107 si\u0119 po JDK 18. Kilka z zapowiedzi to po prostu kolejne iteracje nad ju\u017c pokazanymi funkcjonalno\u015bciami (<a href=\"https:\/\/openjdk.java.net\/jeps\/419\">JEP 419: Foreign Function &amp; Memory API (Second Incubator)<\/a> oraz <a href=\"https:\/\/openjdk.java.net\/jeps\/420\">JEP 420: Pattern Matching for switch (Second Preview)<\/a> &#8211; na Was si\u0119 patrz\u0119), ale ostatnie tygodnie to te\u017c zapowied\u017a dw\u00f3ch bardzo interesuj\u0105cych zmian \u201cpod mask\u0105\u201d, kt\u00f3re zobaczymy w kolejnej wersji Javy.<\/p>\n\n\n\n<p>Pierwszy z nich to <a href=\"https:\/\/openjdk.java.net\/jeps\/416\">JEP 416 &#8211; Reimplement Core Reflection with Method Handles<\/a>. Mieli\u015bmy ju\u017c okazj\u0119 pisa\u0107 o nim przy okazji jednej z naszych poprzednich edycji, ale nie spodziewa\u0142em si\u0119, \u017ce tak szybko zobaczymy go w JDK. JEP ten przynosi bowiem unifikacje sposobu, w jaki dzia\u0142a refleksja w Javie. W jego ramach dochodzi do reimplementacji java.lang.reflect.Method, java.lang.reflect.Constructor, and java.lang.reflect.Field na mechanizm invoke, wprowadzony w JDK 1.7. Jest to rodzaj sp\u0142aty d\u0142ugu technicznego przez zesp\u00f3\u0142 pracuj\u0105cy nad j\u0119zykiem i maszyn\u0105 wirtualn\u0105, jako u\u017cytkownicy nie zauwa\u017cymy wi\u0119c jakich\u015b znacz\u0105cych zmian. My\u015bl\u0119 jednak, \u017ce wszyscy programi\u015bci rozumiej\u0105, jakie znaczenie ma regularne czyszczenie kodu tak z\u0142o\u017conego i skomplikowanego jak runtime Javy. Na d\u0142u\u017csz\u0105 met\u0119 tego typu sprz\u0105tanie wszystkim nam wyjdzie na dobre.<\/p>\n\n\n\n<p>Nieco bardziej afektuj\u0105c\u0105 przeci\u0119tnego programist\u0119 zmian\u0105 jest deprekacja mechanizmu finalizator\u00f3w (<a href=\"https:\/\/openjdk.java.net\/jeps\/421\">JEP 421: Deprecate Finalization for Removal<\/a>) &#8211; aczkolwiek wydaje mi si\u0119, \u017ce w 2021 wi\u0119kszo\u015b\u0107 z nas r\u00f3wnie\u017c przejdzie nad tym do porz\u0105dku dziennego. Dla tych, kt\u00f3rzy z finalizatorami nigdy nie mieli do czynienia, m\u00f3wimy o formie hooka, odpalanego bezpo\u015brednio przed zniszczeniami obiektu przez garbage collector. To, co w teorii brzmi jak do\u015b\u0107 przydatna mo\u017cliwo\u015b\u0107, w praktyce by\u0142o funkcj\u0105 mocno nieprzewidywaln\u0105 (istnia\u0142 szereg sytuacji, gdzie finalizer z r\u00f3\u017cnych powod\u00f3w nie by\u0142 odpalany) i dlatego r\u00f3wnie\u017c bardzo rzadko u\u017cywan\u0105.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d1647cb5.gif\" alt=\"\"\/><figcaption>Czasem po prostu GC nie dawa\u0142 szansy na prawid\u0142owe posprz\u0105tanie<\/figcaption><\/figure><\/div>\n\n\n<p>Dodatkowo, JDK 1.7 wprowadzi\u0142 du\u017co lepiej zaprojektowany mechanizm try-with-resources, kt\u00f3ry zast\u0105pi\u0142 finalizacje w najpopularniejszych przypadkach u\u017cycia, takich jak np. zamykanie po\u0142\u0105cze\u0144 do pliku. Dlatego pozostaje przy twierdzeniu, \u017ce dla wi\u0119kszo\u015bci ludzi usuni\u0119cie finalizator\u00f3w pozostaje ciekawostk\u0105, podobn\u0105 do nieco zbli\u017conej sytuacji z Security Managerem. Je\u015bli jednak czujecie, \u017ce zmiana Was afektuje, radz\u0119 zapozna\u0107 si\u0119 z oryginalnym JEPem albo z <a href=\"https:\/\/www.youtube.com\/watch?v=eDgBnjOid-g\">pi\u0119tnastym odcinkiem Inside Java Newscast<\/a> od Oracle. Oba \u017ar\u00f3d\u0142a do\u015b\u0107 szczeg\u00f3\u0142owo prezentuj\u0105 zar\u00f3wno zakres zmian, jak i potencjalne alternatywy.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0179r\u00f3d\u0142a<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/openjdk.java.net\/jeps\/421\">JEP 421: Deprecate Finalization for Removal<\/a><\/li><li><a href=\"https:\/\/openjdk.java.net\/jeps\/416\">JEP 416: Reimplement Core Reflection with Method Handles<\/a><\/li><li><a href=\"https:\/\/www.youtube.com\/watch?v=eDgBnjOid-g\">What Happens to Finalization in JDK 18? &#8211; Inside Java Newscast #15<\/a><\/li><\/ul>\n\n\n\n<h2 id=\"3-release-radar-micronaut-i-quarkus\" data-num=3>3. Release Radar: Micronaut i Quarkus \ud83d\udce1<\/h2>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d175845b.gif\" alt=\"\"\/><\/figure><\/div>\n\n\n<p>A na koniec &#8211; ma\u0142a edycja Release Radaru, poniewa\u017c dwa istotne Frameworki dosta\u0142y swoje nowe edycje. Obie nie s\u0105 na tyle du\u017ce, \u017ceby otrzyma\u0107 osobne punkty, ale na pewno nale\u017cy si\u0119 im cho\u0107by wzmianka.<\/p>\n\n\n\n<p>Pierwszym z nich jest Micronaut, kt\u00f3ry je\u015bli chodzi o zmiany jest nieco bogatszy. Ten wraz z wydaniem 3.2 wprowadza podbicie sporej ilo\u015bci zale\u017cno\u015bci &#8211; wspierana jest teraz wersja Kotlina 1.6, GraalVM 21.3.0 a tak\u017ce nowa wersja pluginu do Groovy\u2019ego. Je\u017celi chodzi o nowe funkcje, to te\u017c jest ich sporo, aczkolwiek nie mo\u017cemy tu raczej m\u00f3wi\u0107 o jakich\u015b zmianach wywracaj\u0105cych do\u015bwiadczenia programisty. Dodane zosta\u0142o wsparcie anotacji @JsonView, a tak\u017ce ulepszono mechanizmy server pushy oraz websocket\u00f3w.&nbsp; U\u017cytkownicy JPA z pewno\u015bci\u0105 uciesz\u0105 si\u0119 te\u017c ze wsparcia Jakarta Criteria API w wersji trzeciej. Wi\u0119ksze i mniejsze zmiany dotkn\u0119\u0142y np. Micronaut Security czy modu\u0142u Reactive Libraries, ale tu ju\u017c po szczeg\u00f3\u0142y odsy\u0142am do oryginalnych <a href=\"https:\/\/micronaut.io\/2021\/11\/23\/micronaut-framework-3-2-released\/\">release notes<\/a>.<\/p>\n\n\n\n<p><a href=\"https:\/\/quarkus.io\/blog\/quarkus-2-5-0-final-released\/\">Quarkus 2.5.0<\/a> to r\u00f3wnie\u017c nowy GraalVM w wersji 21.3.0, ale to nie on jest g\u0142\u00f3wnym punktem tego wydania. Tw\u00f3rcy chwal\u0105 si\u0119 g\u0142\u00f3wnie zmianami w module Security, kt\u00f3ry pozwala teraz u\u017cywa\u0107 niekt\u00f3rych dostawc\u00f3w to\u017csamo\u015bci OAuth2 r\u00f3wnie\u017c jako provider\u00f3w OpenID. Opr\u00f3cz tego z wi\u0119kszych zmian mo\u017cna wymieni\u0107 ulepszone wsparcie nag\u0142\u00f3wk\u00f3w HTTP, kt\u00f3re teraz mog\u0105 by\u0107 dostarczane r\u00f3wnie\u017c z poziomu plik\u00f3w konfiguracyjnych oraz wsparcie JPA entity listeners nie tylko w trybie JVM, ale r\u00f3wnie\u017c GraalVM.&nbsp;&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0179r\u00f3d\u0142a<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/micronaut.io\/2021\/11\/23\/micronaut-framework-3-2-released\/\">Micronaut\u00ae Framework 3.2 Released<\/a><\/li><li><a href=\"https:\/\/quarkus.io\/blog\/quarkus-2-5-0-final-released\/\">Quarkus 2.5.0.Final released &#8211; GraalVM\/Mandrel 21.3 and usability improvements all over the place<\/a><\/li><\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Mia\u0142 by\u0107 Loom, ale jednak nazbiera\u0142o si\u0119 sporo ciekawych informacji. W dzisiejszej edycji min. nowe IDE od JetBrains. Stwierdzili\u015bmy, \u017ce jest to te\u017c odpowiedni czas, \u017ceby poinformowa\u0107 o kolejnych JEP kt\u00f3re trafi\u0142y do JDK 18. Ca\u0142o\u015b\u0107 zamykaj\u0105 za\u015b nowo\u015bci w Micronaucie i Quarkusie.<\/p>\n","protected":false},"author":10,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[259],"tags":[],"class_list":["post-10041","post","type-post","status-publish","format-standard","hentry","category-jvm-pl"],"acf":{"estimated_reading_time":"6","weekly_summary":true,"push_notification_image":false,"feature_image_visible":false,"feature_image_blog":false},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>JVM Tuesday vol. 66 \u2013 JetBrains Fleet, JDK 18, Micronaut i Quarkus - Vived<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"JVM Tuesday vol. 66 \u2013 JetBrains Fleet, JDK 18, Micronaut i Quarkus - Vived\" \/>\n<meta property=\"og:description\" content=\"Mia\u0142 by\u0107 Loom, ale jednak nazbiera\u0142o si\u0119 sporo ciekawych informacji. W dzisiejszej edycji min. nowe IDE od JetBrains. Stwierdzili\u015bmy, \u017ce jest to te\u017c odpowiedni czas, \u017ceby poinformowa\u0107 o kolejnych JEP kt\u00f3re trafi\u0142y do JDK 18. Ca\u0142o\u015b\u0107 zamykaj\u0105 za\u015b nowo\u015bci w Micronaucie i Quarkusie.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/\" \/>\n<meta property=\"og:site_name\" content=\"Vived\" \/>\n<meta property=\"article:published_time\" content=\"2021-11-30T14:33:47+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-09-19T11:10:44+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/vived.io\/wp-content\/uploads\/2021\/11\/Screenshot-2021-11-30-at-15.33.03.png\" \/>\n\t<meta property=\"og:image:width\" content=\"2336\" \/>\n\t<meta property=\"og:image:height\" content=\"1216\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Artur Skowro\u0144ski\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/\"},\"author\":{\"name\":\"Artur Skowro\u0144ski\",\"@id\":\"https:\/\/vived.io\/pl\/#\/schema\/person\/0eb0878110cb27edfbfe46e841fe6db3\"},\"headline\":\"JVM Tuesday vol. 66 \u2013 JetBrains Fleet, JDK 18, Micronaut i Quarkus\",\"datePublished\":\"2021-11-30T14:33:47+00:00\",\"dateModified\":\"2022-09-19T11:10:44+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/\"},\"wordCount\":1217,\"publisher\":{\"@id\":\"https:\/\/vived.io\/pl\/#organization\"},\"image\":{\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d118fa90.png\",\"articleSection\":[\"JVM\"],\"inLanguage\":\"pl-PL\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/\",\"url\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/\",\"name\":\"JVM Tuesday vol. 66 \u2013 JetBrains Fleet, JDK 18, Micronaut i Quarkus - Vived\",\"isPartOf\":{\"@id\":\"https:\/\/vived.io\/pl\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d118fa90.png\",\"datePublished\":\"2021-11-30T14:33:47+00:00\",\"dateModified\":\"2022-09-19T11:10:44+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/#primaryimage\",\"url\":\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d118fa90.png\",\"contentUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d118fa90.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Strona g\u0142\u00f3wna\",\"item\":\"https:\/\/vived.io\/pl\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"JVM Tuesday vol. 66 \u2013 JetBrains Fleet, JDK 18, Micronaut i Quarkus\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/vived.io\/pl\/#website\",\"url\":\"https:\/\/vived.io\/pl\/\",\"name\":\"Vived\",\"description\":\"platform empowering IT people and technology companies to synergic growth\",\"publisher\":{\"@id\":\"https:\/\/vived.io\/pl\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/vived.io\/pl\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pl-PL\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/vived.io\/pl\/#organization\",\"name\":\"Vived\",\"url\":\"https:\/\/vived.io\/pl\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/vived.io\/pl\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/vived.io\/wp-content\/uploads\/2020\/03\/logo_vived_color.png\",\"contentUrl\":\"https:\/\/vived.io\/wp-content\/uploads\/2020\/03\/logo_vived_color.png\",\"width\":136,\"height\":45,\"caption\":\"Vived\"},\"image\":{\"@id\":\"https:\/\/vived.io\/pl\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/vived.io\/pl\/#\/schema\/person\/0eb0878110cb27edfbfe46e841fe6db3\",\"name\":\"Artur Skowro\u0144ski\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/vived.io\/pl\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/29055786486c8b9dc1507f2744221c5bdb8d7ef6e6217ced0326dd3296aea6ed?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/29055786486c8b9dc1507f2744221c5bdb8d7ef6e6217ced0326dd3296aea6ed?s=96&d=mm&r=g\",\"caption\":\"Artur Skowro\u0144ski\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"JVM Tuesday vol. 66 \u2013 JetBrains Fleet, JDK 18, Micronaut i Quarkus - Vived","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/","og_locale":"pl_PL","og_type":"article","og_title":"JVM Tuesday vol. 66 \u2013 JetBrains Fleet, JDK 18, Micronaut i Quarkus - Vived","og_description":"Mia\u0142 by\u0107 Loom, ale jednak nazbiera\u0142o si\u0119 sporo ciekawych informacji. W dzisiejszej edycji min. nowe IDE od JetBrains. Stwierdzili\u015bmy, \u017ce jest to te\u017c odpowiedni czas, \u017ceby poinformowa\u0107 o kolejnych JEP kt\u00f3re trafi\u0142y do JDK 18. Ca\u0142o\u015b\u0107 zamykaj\u0105 za\u015b nowo\u015bci w Micronaucie i Quarkusie.","og_url":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/","og_site_name":"Vived","article_published_time":"2021-11-30T14:33:47+00:00","article_modified_time":"2022-09-19T11:10:44+00:00","og_image":[{"width":2336,"height":1216,"url":"https:\/\/vived.io\/wp-content\/uploads\/2021\/11\/Screenshot-2021-11-30-at-15.33.03.png","type":"image\/png"}],"author":"Artur Skowro\u0144ski","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/#article","isPartOf":{"@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/"},"author":{"name":"Artur Skowro\u0144ski","@id":"https:\/\/vived.io\/pl\/#\/schema\/person\/0eb0878110cb27edfbfe46e841fe6db3"},"headline":"JVM Tuesday vol. 66 \u2013 JetBrains Fleet, JDK 18, Micronaut i Quarkus","datePublished":"2021-11-30T14:33:47+00:00","dateModified":"2022-09-19T11:10:44+00:00","mainEntityOfPage":{"@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/"},"wordCount":1217,"publisher":{"@id":"https:\/\/vived.io\/pl\/#organization"},"image":{"@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/#primaryimage"},"thumbnailUrl":"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d118fa90.png","articleSection":["JVM"],"inLanguage":"pl-PL"},{"@type":"WebPage","@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/","url":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/","name":"JVM Tuesday vol. 66 \u2013 JetBrains Fleet, JDK 18, Micronaut i Quarkus - Vived","isPartOf":{"@id":"https:\/\/vived.io\/pl\/#website"},"primaryImageOfPage":{"@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/#primaryimage"},"image":{"@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/#primaryimage"},"thumbnailUrl":"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d118fa90.png","datePublished":"2021-11-30T14:33:47+00:00","dateModified":"2022-09-19T11:10:44+00:00","breadcrumb":{"@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/#primaryimage","url":"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d118fa90.png","contentUrl":"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d118fa90.png"},{"@type":"BreadcrumbList","@id":"https:\/\/vived.io\/pl\/jvm-tuesday-vol-66-jetbrains-fleet-jdk-18-micronaut-i-quarkus\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Strona g\u0142\u00f3wna","item":"https:\/\/vived.io\/pl\/"},{"@type":"ListItem","position":2,"name":"JVM Tuesday vol. 66 \u2013 JetBrains Fleet, JDK 18, Micronaut i Quarkus"}]},{"@type":"WebSite","@id":"https:\/\/vived.io\/pl\/#website","url":"https:\/\/vived.io\/pl\/","name":"Vived","description":"platform empowering IT people and technology companies to synergic growth","publisher":{"@id":"https:\/\/vived.io\/pl\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vived.io\/pl\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"},{"@type":"Organization","@id":"https:\/\/vived.io\/pl\/#organization","name":"Vived","url":"https:\/\/vived.io\/pl\/","logo":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/vived.io\/pl\/#\/schema\/logo\/image\/","url":"https:\/\/vived.io\/wp-content\/uploads\/2020\/03\/logo_vived_color.png","contentUrl":"https:\/\/vived.io\/wp-content\/uploads\/2020\/03\/logo_vived_color.png","width":136,"height":45,"caption":"Vived"},"image":{"@id":"https:\/\/vived.io\/pl\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/vived.io\/pl\/#\/schema\/person\/0eb0878110cb27edfbfe46e841fe6db3","name":"Artur Skowro\u0144ski","image":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/vived.io\/pl\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/29055786486c8b9dc1507f2744221c5bdb8d7ef6e6217ced0326dd3296aea6ed?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/29055786486c8b9dc1507f2744221c5bdb8d7ef6e6217ced0326dd3296aea6ed?s=96&d=mm&r=g","caption":"Artur Skowro\u0144ski"}}]}},"blocks_vived":[{"blockName":"core\/heading","attrs":[],"innerBlocks":[],"innerHTML":"\n<h2>1. Fleet - nowe IDE od JetBrains \ud83d\udef3\ufe0f<\/h2>\n","innerContent":["\n<h2>1. Fleet - nowe IDE od JetBrains \ud83d\udef3\ufe0f<\/h2>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Wprawdzie tydzie\u0144 temu przewidywa\u0142em, \u017ce je\u015bli b\u0119dziemy mieli \u201cspokojniejszy\u201d tydzie\u0144, to zrobimy sobie dzisiaj szersze opracowanie Projektu Loom. Ale dzi\u0119ki JetBrains, tydzie\u0144 wcale nie nale\u017cy do spokojnych.<\/p>\n","innerContent":["\n<p>Wprawdzie tydzie\u0144 temu przewidywa\u0142em, \u017ce je\u015bli b\u0119dziemy mieli \u201cspokojniejszy\u201d tydzie\u0144, to zrobimy sobie dzisiaj szersze opracowanie Projektu Loom. Ale dzi\u0119ki JetBrains, tydzie\u0144 wcale nie nale\u017cy do spokojnych.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":[],"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d118fa90.png\" alt=\"\"\/><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d118fa90.png\" alt=\"\"\/><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Nie ulega tajemnicy, \u017ce to w\u0142a\u015bnie IDE od tej firmy nale\u017cy do najpopularniejszych w\u015br\u00f3d programist\u00f3w JVM - w zasadzie ka\u017cda statystyka mocno to potwierdza. Dlatego te\u017c nie mogli\u015bmy nie przekaza\u0107 Wam informacji o chyba najwi\u0119kszej rewolucji w produktach JetBrains od d\u0142ugiego czasu. Pokazano bowiem JetBrains Fleet - narz\u0119dzie szumnie nazywane IDE nowej generacji.&nbsp;<\/p>\n","innerContent":["\n<p>Nie ulega tajemnicy, \u017ce to w\u0142a\u015bnie IDE od tej firmy nale\u017cy do najpopularniejszych w\u015br\u00f3d programist\u00f3w JVM - w zasadzie ka\u017cda statystyka mocno to potwierdza. Dlatego te\u017c nie mogli\u015bmy nie przekaza\u0107 Wam informacji o chyba najwi\u0119kszej rewolucji w produktach JetBrains od d\u0142ugiego czasu. Pokazano bowiem JetBrains Fleet - narz\u0119dzie szumnie nazywane IDE nowej generacji.&nbsp;<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d13e6021.png\" alt=\"\"\/><figcaption>W kontek\u015bcie tych bu\u0144czucznych zapowiedzi pewnie troch\u0119 zabawnym jest, \u017ce na pierwszy rzut oka m\u00f3wimy tutaj o wizualnym klonie Visual Studio Code. Wida\u0107, \u017ce rozwi\u0105zanie Microsoftu sporo na tym rynku zamiesza\u0142o.&nbsp;<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d13e6021.png\" alt=\"\"\/><figcaption>W kontek\u015bcie tych bu\u0144czucznych zapowiedzi pewnie troch\u0119 zabawnym jest, \u017ce na pierwszy rzut oka m\u00f3wimy tutaj o wizualnym klonie Visual Studio Code. Wida\u0107, \u017ce rozwi\u0105zanie Microsoftu sporo na tym rynku zamiesza\u0142o.&nbsp;<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Fleet ma by\u0107 lekki, ale r\u00f3wnie pot\u0119\u017cny je\u015bli chodzi o wsparcie u\u017cytkownika jak jego starszy brat, oferuj\u0105c najlepszej klasy podpowiadanie kodu i sugestie zmian. G\u0142\u00f3wn\u0105 cech\u0105 nowego rozwi\u0105zania ma by\u0107 jednak jego \u201czdalnie-natywno\u015b\u0107\u201d. Zamiast uruchamia\u0107 edytor po prostu jako aplikacje, mo\u017cna dystrybuowa\u0107 go r\u00f3wnie\u017c jako dockerowy kontener, a tak\u017ce uruchomi\u0107 w ramach chmury lub Space - zintegrowanej us\u0142ugi do wytwarzania oprogramowania od paru lat rozwijanej przez JetBrains, zawieraj\u0105cej mo\u017cliwo\u015b\u0107 komunikacji, code-review czy zarz\u0105dzania zadaniami. Firma chwali si\u0119, \u017ce to w\u0142a\u015bnie zdalna kolaboracja jest sercem Fleeta, dzi\u0119ki czemu nie zabraknie w nim r\u00f3wnie\u017c funkcjonalno\u015bci wspieraj\u0105cych np. zdalny pair-programming.&nbsp;<\/p>\n","innerContent":["\n<p>Fleet ma by\u0107 lekki, ale r\u00f3wnie pot\u0119\u017cny je\u015bli chodzi o wsparcie u\u017cytkownika jak jego starszy brat, oferuj\u0105c najlepszej klasy podpowiadanie kodu i sugestie zmian. G\u0142\u00f3wn\u0105 cech\u0105 nowego rozwi\u0105zania ma by\u0107 jednak jego \u201czdalnie-natywno\u015b\u0107\u201d. Zamiast uruchamia\u0107 edytor po prostu jako aplikacje, mo\u017cna dystrybuowa\u0107 go r\u00f3wnie\u017c jako dockerowy kontener, a tak\u017ce uruchomi\u0107 w ramach chmury lub Space - zintegrowanej us\u0142ugi do wytwarzania oprogramowania od paru lat rozwijanej przez JetBrains, zawieraj\u0105cej mo\u017cliwo\u015b\u0107 komunikacji, code-review czy zarz\u0105dzania zadaniami. Firma chwali si\u0119, \u017ce to w\u0142a\u015bnie zdalna kolaboracja jest sercem Fleeta, dzi\u0119ki czemu nie zabraknie w nim r\u00f3wnie\u017c funkcjonalno\u015bci wspieraj\u0105cych np. zdalny pair-programming.&nbsp;<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d14f24fe.gif\" alt=\"\"\/><figcaption>Niestety, na razie Fleet znajduje si\u0119 w zamkni\u0119tej becie. Mam jednak nadziej\u0119, \u017ce uda mi si\u0119 po\u0142o\u017cy\u0107 na niej moje \u0142apki i b\u0119d\u0119 m\u00f3g\u0142 si\u0119 z Wami podzieli\u0107 wra\u017ceniami.<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d14f24fe.gif\" alt=\"\"\/><figcaption>Niestety, na razie Fleet znajduje si\u0119 w zamkni\u0119tej becie. Mam jednak nadziej\u0119, \u017ce uda mi si\u0119 po\u0142o\u017cy\u0107 na niej moje \u0142apki i b\u0119d\u0119 m\u00f3g\u0142 si\u0119 z Wami podzieli\u0107 wra\u017ceniami.<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Oczywi\u015bcie, nie oznacza to, \u017ce JetBrains ko\u0144czy prace nad Intellij Idea. Na dniach powinni\u015bmy si\u0119 spodziewa\u0107 wydania 2021.3, kt\u00f3re aktualnie znajduje si\u0119 w <a href=\"https:\/\/blog.jetbrains.com\/idea\/2021\/11\/intellij-idea-2021-3-rc2-is-out\/\">publicznym preview<\/a>. Nowe wydanie przyniesie dalsze wsparcie Kotlina (min. ulepszony debugger), ale r\u00f3wnie\u017c obs\u0142ug\u0119 Groovy\u2019ego w wersji czwartej, a tak\u017ce sporo nowo\u015bci dla u\u017cytkownik\u00f3w Dockera. G\u0142\u00f3wnym daniem jednak - podobnie jak ma to miejsce w wypadku Fleeta - jest wsp\u00f3\u0142praca zdalna. Nowa wersja IDE to wi\u0119c dalsza integracja ze <a href=\"https:\/\/www.jetbrains.com\/space\/\">Space<\/a> i <a href=\"https:\/\/blog.jetbrains.com\/blog\/2021\/11\/29\/introducing-remote-development-for-jetbrains-ides\/\">wspomnian\u0105 ju\u017c mo\u017cliwo\u015b\u0107 tworzenia \u015brodowisk programistycznych w chmurze.<\/a>&nbsp;<\/p>\n","innerContent":["\n<p>Oczywi\u015bcie, nie oznacza to, \u017ce JetBrains ko\u0144czy prace nad Intellij Idea. Na dniach powinni\u015bmy si\u0119 spodziewa\u0107 wydania 2021.3, kt\u00f3re aktualnie znajduje si\u0119 w <a href=\"https:\/\/blog.jetbrains.com\/idea\/2021\/11\/intellij-idea-2021-3-rc2-is-out\/\">publicznym preview<\/a>. Nowe wydanie przyniesie dalsze wsparcie Kotlina (min. ulepszony debugger), ale r\u00f3wnie\u017c obs\u0142ug\u0119 Groovy\u2019ego w wersji czwartej, a tak\u017ce sporo nowo\u015bci dla u\u017cytkownik\u00f3w Dockera. G\u0142\u00f3wnym daniem jednak - podobnie jak ma to miejsce w wypadku Fleeta - jest wsp\u00f3\u0142praca zdalna. Nowa wersja IDE to wi\u0119c dalsza integracja ze <a href=\"https:\/\/www.jetbrains.com\/space\/\">Space<\/a> i <a href=\"https:\/\/blog.jetbrains.com\/blog\/2021\/11\/29\/introducing-remote-development-for-jetbrains-ides\/\">wspomnian\u0105 ju\u017c mo\u017cliwo\u015b\u0107 tworzenia \u015brodowisk programistycznych w chmurze.<\/a>&nbsp;<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Wida\u0107, \u017ce wy\u015bcig ekosystem\u00f3w do pracy zdalnej nie zwalnia, a \u015bmiem powiedzie\u0107, \u017ce nawet coraz \u015bmielej przyspiesza. My\u015bl\u0119, \u017ce rok 2022 jeszcze nas w tym aspekcie sporo zaskoczy.<\/p>\n","innerContent":["\n<p>Wida\u0107, \u017ce wy\u015bcig ekosystem\u00f3w do pracy zdalnej nie zwalnia, a \u015bmiem powiedzie\u0107, \u017ce nawet coraz \u015bmielej przyspiesza. My\u015bl\u0119, \u017ce rok 2022 jeszcze nas w tym aspekcie sporo zaskoczy.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":{"level":3},"innerBlocks":[],"innerHTML":"\n<h3>\u0179r\u00f3d\u0142a<\/h3>\n","innerContent":["\n<h3>\u0179r\u00f3d\u0142a<\/h3>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/list","attrs":[],"innerBlocks":[],"innerHTML":"\n<ul><li><a href=\"https:\/\/www.jetbrains.com\/fleet\/\">JetBrains Fleet: The Next-Generation IDE by JetBrains<\/a><\/li><li><a href=\"https:\/\/blog.jetbrains.com\/blog\/2021\/11\/29\/introducing-remote-development-for-jetbrains-ides\/\">Introducing Remote Development for JetBrains IDEs | JetBrains News<\/a><\/li><li><a href=\"https:\/\/www.jetbrains.com\/space\/\">An all-in-one solution for software projects and teams<\/a><\/li><li><a href=\"https:\/\/blog.jetbrains.com\/idea\/2021\/11\/intellij-idea-2021-3-rc2-is-out\/\">IntelliJ IDEA 2021.3 RC2 is out! | The IntelliJ IDEA Blog<\/a><\/li><\/ul>\n","innerContent":["\n<ul><li><a href=\"https:\/\/www.jetbrains.com\/fleet\/\">JetBrains Fleet: The Next-Generation IDE by JetBrains<\/a><\/li><li><a href=\"https:\/\/blog.jetbrains.com\/blog\/2021\/11\/29\/introducing-remote-development-for-jetbrains-ides\/\">Introducing Remote Development for JetBrains IDEs | JetBrains News<\/a><\/li><li><a href=\"https:\/\/www.jetbrains.com\/space\/\">An all-in-one solution for software projects and teams<\/a><\/li><li><a href=\"https:\/\/blog.jetbrains.com\/idea\/2021\/11\/intellij-idea-2021-3-rc2-is-out\/\">IntelliJ IDEA 2021.3 RC2 is out! | The IntelliJ IDEA Blog<\/a><\/li><\/ul>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":[],"innerBlocks":[],"innerHTML":"\n<h2>2. Dwa nowe JEPy grzebi\u0105ce w internalach trafi\u0105 do JDK 18 \ud83d\udc77<\/h2>\n","innerContent":["\n<h2>2. Dwa nowe JEPy grzebi\u0105ce w internalach trafi\u0105 do JDK 18 \ud83d\udc77<\/h2>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Tak jak ju\u017c wspomina\u0142em w poprzedniej edycji, dochodzi do nas coraz wi\u0119cej ciekawych informacji dotycz\u0105cych nowo\u015bci, kt\u00f3rych mo\u017cemy spodziewa\u0107 si\u0119 po JDK 18. Kilka z zapowiedzi to po prostu kolejne iteracje nad ju\u017c pokazanymi funkcjonalno\u015bciami (<a href=\"https:\/\/openjdk.java.net\/jeps\/419\">JEP 419: Foreign Function &amp; Memory API (Second Incubator)<\/a> oraz <a href=\"https:\/\/openjdk.java.net\/jeps\/420\">JEP 420: Pattern Matching for switch (Second Preview)<\/a> - na Was si\u0119 patrz\u0119), ale ostatnie tygodnie to te\u017c zapowied\u017a dw\u00f3ch bardzo interesuj\u0105cych zmian \u201cpod mask\u0105\u201d, kt\u00f3re zobaczymy w kolejnej wersji Javy.<\/p>\n","innerContent":["\n<p>Tak jak ju\u017c wspomina\u0142em w poprzedniej edycji, dochodzi do nas coraz wi\u0119cej ciekawych informacji dotycz\u0105cych nowo\u015bci, kt\u00f3rych mo\u017cemy spodziewa\u0107 si\u0119 po JDK 18. Kilka z zapowiedzi to po prostu kolejne iteracje nad ju\u017c pokazanymi funkcjonalno\u015bciami (<a href=\"https:\/\/openjdk.java.net\/jeps\/419\">JEP 419: Foreign Function &amp; Memory API (Second Incubator)<\/a> oraz <a href=\"https:\/\/openjdk.java.net\/jeps\/420\">JEP 420: Pattern Matching for switch (Second Preview)<\/a> - na Was si\u0119 patrz\u0119), ale ostatnie tygodnie to te\u017c zapowied\u017a dw\u00f3ch bardzo interesuj\u0105cych zmian \u201cpod mask\u0105\u201d, kt\u00f3re zobaczymy w kolejnej wersji Javy.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Pierwszy z nich to <a href=\"https:\/\/openjdk.java.net\/jeps\/416\">JEP 416 - Reimplement Core Reflection with Method Handles<\/a>. Mieli\u015bmy ju\u017c okazj\u0119 pisa\u0107 o nim przy okazji jednej z naszych poprzednich edycji, ale nie spodziewa\u0142em si\u0119, \u017ce tak szybko zobaczymy go w JDK. JEP ten przynosi bowiem unifikacje sposobu, w jaki dzia\u0142a refleksja w Javie. W jego ramach dochodzi do reimplementacji java.lang.reflect.Method, java.lang.reflect.Constructor, and java.lang.reflect.Field na mechanizm invoke, wprowadzony w JDK 1.7. Jest to rodzaj sp\u0142aty d\u0142ugu technicznego przez zesp\u00f3\u0142 pracuj\u0105cy nad j\u0119zykiem i maszyn\u0105 wirtualn\u0105, jako u\u017cytkownicy nie zauwa\u017cymy wi\u0119c jakich\u015b znacz\u0105cych zmian. My\u015bl\u0119 jednak, \u017ce wszyscy programi\u015bci rozumiej\u0105, jakie znaczenie ma regularne czyszczenie kodu tak z\u0142o\u017conego i skomplikowanego jak runtime Javy. Na d\u0142u\u017csz\u0105 met\u0119 tego typu sprz\u0105tanie wszystkim nam wyjdzie na dobre.<\/p>\n","innerContent":["\n<p>Pierwszy z nich to <a href=\"https:\/\/openjdk.java.net\/jeps\/416\">JEP 416 - Reimplement Core Reflection with Method Handles<\/a>. Mieli\u015bmy ju\u017c okazj\u0119 pisa\u0107 o nim przy okazji jednej z naszych poprzednich edycji, ale nie spodziewa\u0142em si\u0119, \u017ce tak szybko zobaczymy go w JDK. JEP ten przynosi bowiem unifikacje sposobu, w jaki dzia\u0142a refleksja w Javie. W jego ramach dochodzi do reimplementacji java.lang.reflect.Method, java.lang.reflect.Constructor, and java.lang.reflect.Field na mechanizm invoke, wprowadzony w JDK 1.7. Jest to rodzaj sp\u0142aty d\u0142ugu technicznego przez zesp\u00f3\u0142 pracuj\u0105cy nad j\u0119zykiem i maszyn\u0105 wirtualn\u0105, jako u\u017cytkownicy nie zauwa\u017cymy wi\u0119c jakich\u015b znacz\u0105cych zmian. My\u015bl\u0119 jednak, \u017ce wszyscy programi\u015bci rozumiej\u0105, jakie znaczenie ma regularne czyszczenie kodu tak z\u0142o\u017conego i skomplikowanego jak runtime Javy. Na d\u0142u\u017csz\u0105 met\u0119 tego typu sprz\u0105tanie wszystkim nam wyjdzie na dobre.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Nieco bardziej afektuj\u0105c\u0105 przeci\u0119tnego programist\u0119 zmian\u0105 jest deprekacja mechanizmu finalizator\u00f3w (<a href=\"https:\/\/openjdk.java.net\/jeps\/421\">JEP 421: Deprecate Finalization for Removal<\/a>) - aczkolwiek wydaje mi si\u0119, \u017ce w 2021 wi\u0119kszo\u015b\u0107 z nas r\u00f3wnie\u017c przejdzie nad tym do porz\u0105dku dziennego. Dla tych, kt\u00f3rzy z finalizatorami nigdy nie mieli do czynienia, m\u00f3wimy o formie hooka, odpalanego bezpo\u015brednio przed zniszczeniami obiektu przez garbage collector. To, co w teorii brzmi jak do\u015b\u0107 przydatna mo\u017cliwo\u015b\u0107, w praktyce by\u0142o funkcj\u0105 mocno nieprzewidywaln\u0105 (istnia\u0142 szereg sytuacji, gdzie finalizer z r\u00f3\u017cnych powod\u00f3w nie by\u0142 odpalany) i dlatego r\u00f3wnie\u017c bardzo rzadko u\u017cywan\u0105.<\/p>\n","innerContent":["\n<p>Nieco bardziej afektuj\u0105c\u0105 przeci\u0119tnego programist\u0119 zmian\u0105 jest deprekacja mechanizmu finalizator\u00f3w (<a href=\"https:\/\/openjdk.java.net\/jeps\/421\">JEP 421: Deprecate Finalization for Removal<\/a>) - aczkolwiek wydaje mi si\u0119, \u017ce w 2021 wi\u0119kszo\u015b\u0107 z nas r\u00f3wnie\u017c przejdzie nad tym do porz\u0105dku dziennego. Dla tych, kt\u00f3rzy z finalizatorami nigdy nie mieli do czynienia, m\u00f3wimy o formie hooka, odpalanego bezpo\u015brednio przed zniszczeniami obiektu przez garbage collector. To, co w teorii brzmi jak do\u015b\u0107 przydatna mo\u017cliwo\u015b\u0107, w praktyce by\u0142o funkcj\u0105 mocno nieprzewidywaln\u0105 (istnia\u0142 szereg sytuacji, gdzie finalizer z r\u00f3\u017cnych powod\u00f3w nie by\u0142 odpalany) i dlatego r\u00f3wnie\u017c bardzo rzadko u\u017cywan\u0105.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d1647cb5.gif\" alt=\"\"\/><figcaption>Czasem po prostu GC nie dawa\u0142 szansy na prawid\u0142owe posprz\u0105tanie<\/figcaption><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d1647cb5.gif\" alt=\"\"\/><figcaption>Czasem po prostu GC nie dawa\u0142 szansy na prawid\u0142owe posprz\u0105tanie<\/figcaption><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Dodatkowo, JDK 1.7 wprowadzi\u0142 du\u017co lepiej zaprojektowany mechanizm try-with-resources, kt\u00f3ry zast\u0105pi\u0142 finalizacje w najpopularniejszych przypadkach u\u017cycia, takich jak np. zamykanie po\u0142\u0105cze\u0144 do pliku. Dlatego pozostaje przy twierdzeniu, \u017ce dla wi\u0119kszo\u015bci ludzi usuni\u0119cie finalizator\u00f3w pozostaje ciekawostk\u0105, podobn\u0105 do nieco zbli\u017conej sytuacji z Security Managerem. Je\u015bli jednak czujecie, \u017ce zmiana Was afektuje, radz\u0119 zapozna\u0107 si\u0119 z oryginalnym JEPem albo z <a href=\"https:\/\/www.youtube.com\/watch?v=eDgBnjOid-g\">pi\u0119tnastym odcinkiem Inside Java Newscast<\/a> od Oracle. Oba \u017ar\u00f3d\u0142a do\u015b\u0107 szczeg\u00f3\u0142owo prezentuj\u0105 zar\u00f3wno zakres zmian, jak i potencjalne alternatywy.<\/p>\n","innerContent":["\n<p>Dodatkowo, JDK 1.7 wprowadzi\u0142 du\u017co lepiej zaprojektowany mechanizm try-with-resources, kt\u00f3ry zast\u0105pi\u0142 finalizacje w najpopularniejszych przypadkach u\u017cycia, takich jak np. zamykanie po\u0142\u0105cze\u0144 do pliku. Dlatego pozostaje przy twierdzeniu, \u017ce dla wi\u0119kszo\u015bci ludzi usuni\u0119cie finalizator\u00f3w pozostaje ciekawostk\u0105, podobn\u0105 do nieco zbli\u017conej sytuacji z Security Managerem. Je\u015bli jednak czujecie, \u017ce zmiana Was afektuje, radz\u0119 zapozna\u0107 si\u0119 z oryginalnym JEPem albo z <a href=\"https:\/\/www.youtube.com\/watch?v=eDgBnjOid-g\">pi\u0119tnastym odcinkiem Inside Java Newscast<\/a> od Oracle. Oba \u017ar\u00f3d\u0142a do\u015b\u0107 szczeg\u00f3\u0142owo prezentuj\u0105 zar\u00f3wno zakres zmian, jak i potencjalne alternatywy.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":{"level":3},"innerBlocks":[],"innerHTML":"\n<h3>\u0179r\u00f3d\u0142a<\/h3>\n","innerContent":["\n<h3>\u0179r\u00f3d\u0142a<\/h3>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/list","attrs":[],"innerBlocks":[],"innerHTML":"\n<ul><li><a href=\"https:\/\/openjdk.java.net\/jeps\/421\">JEP 421: Deprecate Finalization for Removal<\/a><\/li><li><a href=\"https:\/\/openjdk.java.net\/jeps\/416\">JEP 416: Reimplement Core Reflection with Method Handles<\/a><\/li><li><a href=\"https:\/\/www.youtube.com\/watch?v=eDgBnjOid-g\">What Happens to Finalization in JDK 18? - Inside Java Newscast #15<\/a><\/li><\/ul>\n","innerContent":["\n<ul><li><a href=\"https:\/\/openjdk.java.net\/jeps\/421\">JEP 421: Deprecate Finalization for Removal<\/a><\/li><li><a href=\"https:\/\/openjdk.java.net\/jeps\/416\">JEP 416: Reimplement Core Reflection with Method Handles<\/a><\/li><li><a href=\"https:\/\/www.youtube.com\/watch?v=eDgBnjOid-g\">What Happens to Finalization in JDK 18? - Inside Java Newscast #15<\/a><\/li><\/ul>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":[],"innerBlocks":[],"innerHTML":"\n<h2>3. Release Radar: Micronaut i Quarkus \ud83d\udce1<\/h2>\n","innerContent":["\n<h2>3. Release Radar: Micronaut i Quarkus \ud83d\udce1<\/h2>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/image","attrs":{"align":"center"},"innerBlocks":[],"innerHTML":"\n<figure class=\"wp-block-image aligncenter\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d175845b.gif\" alt=\"\"\/><\/figure>\n","innerContent":["\n<figure class=\"wp-block-image aligncenter\"><img src=\"https:\/\/vived.io\/wp-content\/uploads\/2022\/06\/img_62a88d175845b.gif\" alt=\"\"\/><\/figure>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>A na koniec - ma\u0142a edycja Release Radaru, poniewa\u017c dwa istotne Frameworki dosta\u0142y swoje nowe edycje. Obie nie s\u0105 na tyle du\u017ce, \u017ceby otrzyma\u0107 osobne punkty, ale na pewno nale\u017cy si\u0119 im cho\u0107by wzmianka.<\/p>\n","innerContent":["\n<p>A na koniec - ma\u0142a edycja Release Radaru, poniewa\u017c dwa istotne Frameworki dosta\u0142y swoje nowe edycje. Obie nie s\u0105 na tyle du\u017ce, \u017ceby otrzyma\u0107 osobne punkty, ale na pewno nale\u017cy si\u0119 im cho\u0107by wzmianka.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p>Pierwszym z nich jest Micronaut, kt\u00f3ry je\u015bli chodzi o zmiany jest nieco bogatszy. Ten wraz z wydaniem 3.2 wprowadza podbicie sporej ilo\u015bci zale\u017cno\u015bci - wspierana jest teraz wersja Kotlina 1.6, GraalVM 21.3.0 a tak\u017ce nowa wersja pluginu do Groovy\u2019ego. Je\u017celi chodzi o nowe funkcje, to te\u017c jest ich sporo, aczkolwiek nie mo\u017cemy tu raczej m\u00f3wi\u0107 o jakich\u015b zmianach wywracaj\u0105cych do\u015bwiadczenia programisty. Dodane zosta\u0142o wsparcie anotacji @JsonView, a tak\u017ce ulepszono mechanizmy server pushy oraz websocket\u00f3w.&nbsp; U\u017cytkownicy JPA z pewno\u015bci\u0105 uciesz\u0105 si\u0119 te\u017c ze wsparcia Jakarta Criteria API w wersji trzeciej. Wi\u0119ksze i mniejsze zmiany dotkn\u0119\u0142y np. Micronaut Security czy modu\u0142u Reactive Libraries, ale tu ju\u017c po szczeg\u00f3\u0142y odsy\u0142am do oryginalnych <a href=\"https:\/\/micronaut.io\/2021\/11\/23\/micronaut-framework-3-2-released\/\">release notes<\/a>.<\/p>\n","innerContent":["\n<p>Pierwszym z nich jest Micronaut, kt\u00f3ry je\u015bli chodzi o zmiany jest nieco bogatszy. Ten wraz z wydaniem 3.2 wprowadza podbicie sporej ilo\u015bci zale\u017cno\u015bci - wspierana jest teraz wersja Kotlina 1.6, GraalVM 21.3.0 a tak\u017ce nowa wersja pluginu do Groovy\u2019ego. Je\u017celi chodzi o nowe funkcje, to te\u017c jest ich sporo, aczkolwiek nie mo\u017cemy tu raczej m\u00f3wi\u0107 o jakich\u015b zmianach wywracaj\u0105cych do\u015bwiadczenia programisty. Dodane zosta\u0142o wsparcie anotacji @JsonView, a tak\u017ce ulepszono mechanizmy server pushy oraz websocket\u00f3w.&nbsp; U\u017cytkownicy JPA z pewno\u015bci\u0105 uciesz\u0105 si\u0119 te\u017c ze wsparcia Jakarta Criteria API w wersji trzeciej. Wi\u0119ksze i mniejsze zmiany dotkn\u0119\u0142y np. Micronaut Security czy modu\u0142u Reactive Libraries, ale tu ju\u017c po szczeg\u00f3\u0142y odsy\u0142am do oryginalnych <a href=\"https:\/\/micronaut.io\/2021\/11\/23\/micronaut-framework-3-2-released\/\">release notes<\/a>.<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/paragraph","attrs":[],"innerBlocks":[],"innerHTML":"\n<p><a href=\"https:\/\/quarkus.io\/blog\/quarkus-2-5-0-final-released\/\">Quarkus 2.5.0<\/a> to r\u00f3wnie\u017c nowy GraalVM w wersji 21.3.0, ale to nie on jest g\u0142\u00f3wnym punktem tego wydania. Tw\u00f3rcy chwal\u0105 si\u0119 g\u0142\u00f3wnie zmianami w module Security, kt\u00f3ry pozwala teraz u\u017cywa\u0107 niekt\u00f3rych dostawc\u00f3w to\u017csamo\u015bci OAuth2 r\u00f3wnie\u017c jako provider\u00f3w OpenID. Opr\u00f3cz tego z wi\u0119kszych zmian mo\u017cna wymieni\u0107 ulepszone wsparcie nag\u0142\u00f3wk\u00f3w HTTP, kt\u00f3re teraz mog\u0105 by\u0107 dostarczane r\u00f3wnie\u017c z poziomu plik\u00f3w konfiguracyjnych oraz wsparcie JPA entity listeners nie tylko w trybie JVM, ale r\u00f3wnie\u017c GraalVM.&nbsp;&nbsp;<\/p>\n","innerContent":["\n<p><a href=\"https:\/\/quarkus.io\/blog\/quarkus-2-5-0-final-released\/\">Quarkus 2.5.0<\/a> to r\u00f3wnie\u017c nowy GraalVM w wersji 21.3.0, ale to nie on jest g\u0142\u00f3wnym punktem tego wydania. Tw\u00f3rcy chwal\u0105 si\u0119 g\u0142\u00f3wnie zmianami w module Security, kt\u00f3ry pozwala teraz u\u017cywa\u0107 niekt\u00f3rych dostawc\u00f3w to\u017csamo\u015bci OAuth2 r\u00f3wnie\u017c jako provider\u00f3w OpenID. Opr\u00f3cz tego z wi\u0119kszych zmian mo\u017cna wymieni\u0107 ulepszone wsparcie nag\u0142\u00f3wk\u00f3w HTTP, kt\u00f3re teraz mog\u0105 by\u0107 dostarczane r\u00f3wnie\u017c z poziomu plik\u00f3w konfiguracyjnych oraz wsparcie JPA entity listeners nie tylko w trybie JVM, ale r\u00f3wnie\u017c GraalVM.&nbsp;&nbsp;<\/p>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/heading","attrs":{"level":3},"innerBlocks":[],"innerHTML":"\n<h3>\u0179r\u00f3d\u0142a<\/h3>\n","innerContent":["\n<h3>\u0179r\u00f3d\u0142a<\/h3>\n"]},{"blockName":null,"attrs":[],"innerBlocks":[],"innerHTML":"\n\n","innerContent":["\n\n"]},{"blockName":"core\/list","attrs":[],"innerBlocks":[],"innerHTML":"\n<ul><li><a href=\"https:\/\/micronaut.io\/2021\/11\/23\/micronaut-framework-3-2-released\/\">Micronaut\u00ae Framework 3.2 Released<\/a><\/li><li><a href=\"https:\/\/quarkus.io\/blog\/quarkus-2-5-0-final-released\/\">Quarkus 2.5.0.Final released - GraalVM\/Mandrel 21.3 and usability improvements all over the place<\/a><\/li><\/ul>\n","innerContent":["\n<ul><li><a href=\"https:\/\/micronaut.io\/2021\/11\/23\/micronaut-framework-3-2-released\/\">Micronaut\u00ae Framework 3.2 Released<\/a><\/li><li><a href=\"https:\/\/quarkus.io\/blog\/quarkus-2-5-0-final-released\/\">Quarkus 2.5.0.Final released - GraalVM\/Mandrel 21.3 and usability improvements all over the place<\/a><\/li><\/ul>\n"]}],"_links":{"self":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/10041","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/comments?post=10041"}],"version-history":[{"count":1,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/10041\/revisions"}],"predecessor-version":[{"id":10545,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/posts\/10041\/revisions\/10545"}],"wp:attachment":[{"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/media?parent=10041"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/categories?post=10041"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vived.io\/pl\/wp-json\/wp\/v2\/tags?post=10041"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}