{"id":124128,"date":"2026-06-08T09:47:43","date_gmt":"2026-06-08T09:47:43","guid":{"rendered":"https:\/\/foojay.io\/?p=124128"},"modified":"2026-06-08T10:25:31","modified_gmt":"2026-06-08T10:25:31","slug":"metal-default-a-new-build-cloud-and-a-new-format","status":"publish","type":"post","link":"https:\/\/foojay.io\/today\/metal-default-a-new-build-cloud-and-a-new-format\/","title":{"rendered":"Codename One: Metal Default, A New Build Cloud, And A New Format"},"content":{"rendered":"\n    <div class=\"article__table\">\n        <div class=\"article__table-header\">\n            <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                <path d=\"M8 6H21\" stroke=\"#3562E5\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" \/>\n                <path d=\"M8 12H21\" stroke=\"#3562E5\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" \/>\n                <path d=\"M8 18H21\" stroke=\"#3562E5\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" \/>\n                <path d=\"M3 6H3.01\" stroke=\"#3562E5\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" \/>\n                <path d=\"M3 12H3.01\" stroke=\"#3562E5\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" \/>\n                <path d=\"M3 18H3.01\" stroke=\"#3562E5\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" \/>\n            <\/svg>\n            Table of Contents\n            <svg class=\"chevron\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                <path d=\"M18 15L12 9L6 15\" stroke=\"#3562E5\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n            <\/svg>\n        <\/div>\n        <div class=\"article__table-body\"><span><a href=\"#h2-0--etal-is-the-default-on-i-\">Metal is the default on iOS<\/a><\/span><span><a href=\"#h2-1--he-new-uild-loud-console-is-now-the-default-link\">The new Build Cloud console is now the default link<\/a><\/span><span><a href=\"#h2-2--pcoming-attractions\">Upcoming attractions<\/a><\/span><span><a href=\"#h2-3--rapping-up\">Wrapping up<\/a><\/span><\/div><\/div><!DOCTYPE html PUBLIC \"-\/\/W3C\/\/DTD HTML 4.0 Transitional\/\/EN\" \"http:\/\/www.w3.org\/TR\/REC-html40\/loose.dtd\">\n<?xml encoding=\"utf-8\" ?><html><body><figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/www.codenameone.com\/blog\/metal-default-new-build-cloud-and-a-new-format.jpg\" alt=\"Metal Default, A New Build Cloud, And A New Format\"><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>This week's release post looks different on purpose. The Friday omnibus has been getting longer and longer, and that has been working against us in two ways. SEO ignores 5,000 word pages that cover twelve unrelated topics, so the actual material gets buried instead of indexed against the queries that should find it. And when a single release post covers ten things, it becomes hard to point a colleague at \"that one Codename One change from a few weeks ago\" without scrolling for ten minutes.<\/p>\n\n\n\n<aside style=\"border-left: 4px solid #007aff; padding: 14px 18px; margin: 24px 0; border-radius: 4px; font-size: 0.95em;\"><strong>What is Codename One?<\/strong> Codename One is an open-source framework for building native iOS, Android, desktop, and web apps from a single Java or Kotlin codebase. Learn more at <a target=\"_blank\" href=\"https:\/\/www.codenameone.com\/\">codenameone.com<\/a>.<\/aside>\n\n\n\n<p>So from this week onwards the Friday post is the short one. A quick set of headline items, a \"what is coming next\" list, and that is it. The specific features get their own posts over the following days, with their own slugs, their own searchable titles, and their own discussion threads. The weekly post lives at the top of the homepage as the index; the deeper posts back-link to it; and you can read whichever ones are actually relevant to your project.<\/p>\n\n\n\n<p><strong>Important:<\/strong> it seems that if developer mode is on in your device you might get an information dialog on the right side of your UI. <a target=\"_blank\" href=\"https:\/\/github.com\/codenameone\/CodenameOne\/issues\/5108\">This issue<\/a> explains how you can turn it off.<\/p>\n\n\n\n<p>If you only have thirty seconds, here is what changed this week.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h2-0--etal-is-the-default-on-i-\">Metal is the default on iOS<\/h2>\n\n\n\n<p><a target=\"_blank\" href=\"https:\/\/github.com\/codenameone\/CodenameOne\/pull\/5065\">PR #5065<\/a> flips the <code>ios.metal=true<\/code> build hint to the default. New iOS builds now link against <code>CAMetalLayer<\/code> instead of the deprecated <code>CAEAGLLayer<\/code>. We mentioned this <a target=\"_blank\" href=\"https:\/\/www.codenameone.com\/blog\/metal-and-skins\/\">three weeks ago in Metal and Skins<\/a>, decided to push it back by one week <a target=\"_blank\" href=\"https:\/\/www.codenameone.com\/blog\/nfc-crypto-biometrics-and-build-cloud\/\">last week<\/a> because a couple of regressions still needed work, and shipped it this week with that list at zero.<\/p>\n\n\n\n<p>If you have not rebuilt since this commit, your next cloud build picks Metal up automatically. No hint to add, no setting to change. The build server flipped at the same time so local builds and cloud builds match.<\/p>\n\n\n\n<p>If you need to opt out for any reason, the hint still works in reverse:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">ios.metal=false<\/pre>\n\n\n\n<p>A few things worth a glance on your first Metal build: gradient fidelity (multi-stop, conic, and repeating gradients now hit the GPU directly through <a target=\"_blank\" href=\"https:\/\/github.com\/codenameone\/CodenameOne\/pull\/4957\">PR #4957<\/a>), the color space (sRGB by default, flip to <code>displayP3<\/code> via <code>ios.metal.colorSpace<\/code> if your assets are wide gamut), and anything that draws <code>filter: blur(...)<\/code> or <code>backdrop-filter<\/code>. Everything else should look unchanged. That is the point.<\/p>\n\n\n\n<p>A specific thank you to the community testers who flipped the hint over the past three weeks, took screenshots, and filed issues against real apps. The Metal default landed in materially better shape than it would have without you.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h2-1--he-new-uild-loud-console-is-now-the-default-link\">The new Build Cloud console is now the default link<\/h2>\n\n\n\n<p>The <a target=\"_blank\" href=\"https:\/\/www.codenameone.com\/blog\/nfc-crypto-biometrics-and-build-cloud\/#a-new-build-cloud-ui--preview\">preview of the new Build Cloud UI<\/a> went up last week. The bugs you found are fixed, and as of this PR every Dashboard link on the website now points at the new console:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">https:\/\/cloud.codenameone.com\/console\/index.html<\/pre>\n\n\n\n<p>The navigation Dashboard link in the header, the Sign Up CTA on the pricing page, and the entries on the site map all moved. Old bookmarks still work; the <a target=\"_blank\" href=\"https:\/\/cloud.codenameone.com\/secure\/index.html\">legacy console<\/a> stays online for the time being so you can fall back to it if something is missing or wrong in the new UI. Please tell us when you hit one of those things, because the goal is to retire the legacy URL eventually.<\/p>\n\n\n\n<p>Historical blog posts that mention the <code>\/secure\/<\/code> URL in their text were left alone.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h2-2--pcoming-attractions\">Upcoming attractions<\/h2>\n\n\n\n<p>Three deeper posts will follow this one over the next week, each one bundling several related PRs under a single theme so the index stays small. Dates are best effort.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Developer workflow (Saturday).<\/strong> On-device debugging on iOS and Android, and JUnit 5 tests for Codename One apps. Codename One always had on-device debugging in the technical sense; you just had to drop into Xcode or Android Studio and jump through a depressing number of hoops. The new pipeline wires JDWP through to the real device so <code>jdb<\/code>, IntelliJ, VS Code, Eclipse, or NetBeans just attaches. The JUnit half lets you write standard <code>@Test<\/code> methods against the simulator with first-class annotations for the visual configuration (<code>@Theme<\/code>, <code>@DarkMode<\/code>, <code>@LargerText<\/code>, <code>@Orientation<\/code>, <code>@RTL<\/code>). PRs <a target=\"_blank\" href=\"https:\/\/github.com\/codenameone\/CodenameOne\/pull\/4999\">#4999<\/a>, <a target=\"_blank\" href=\"https:\/\/github.com\/codenameone\/CodenameOne\/pull\/5012\">#5012<\/a>, <a target=\"_blank\" href=\"https:\/\/github.com\/codenameone\/CodenameOne\/pull\/5032\">#5032<\/a>.<\/li>\n\n\n\n<li><strong>Platform APIs in the core (Monday).<\/strong> Four things that move from \"you need a cn1lib for this\" to \"it is in the framework\": built-in WiFi \/ Bonjour \/ USB \/ network-type APIs, a modern OIDC + WebAuthn passkey identity stack (<code>ASWebAuthenticationSession<\/code> on iOS, Custom Tabs on Android), share-sheet result callbacks, and a <code>com.codename1.ai<\/code> package with <code>LlmClient<\/code> for OpenAI \/ Anthropic \/ Gemini \/ Ollama plus a streaming <code>ChatView<\/code>, <code>SpeechRecognizer<\/code> \/ <code>TextToSpeech<\/code>, and the new ML Kit cn1libs. All four share the same scanner-driven auto-injection of Android permissions and iOS entitlements that NFC and biometrics moved to two weeks ago. PRs <a target=\"_blank\" href=\"https:\/\/github.com\/codenameone\/CodenameOne\/pull\/5021\">#5021<\/a>, <a target=\"_blank\" href=\"https:\/\/github.com\/codenameone\/CodenameOne\/pull\/5018\">#5018<\/a>, <a target=\"_blank\" href=\"https:\/\/github.com\/codenameone\/CodenameOne\/pull\/5039\">#5039<\/a>, <a target=\"_blank\" href=\"https:\/\/github.com\/codenameone\/CodenameOne\/pull\/5036\">#5036<\/a>, <a target=\"_blank\" href=\"https:\/\/github.com\/codenameone\/CodenameOne\/pull\/5035\">#5035<\/a>, <a target=\"_blank\" href=\"https:\/\/github.com\/codenameone\/CodenameOne\/pull\/5057\">#5057<\/a>.<\/li>\n\n\n\n<li><strong>Build-time codegen (Wednesday).<\/strong> The architectural one. A reusable bytecode <code>AnnotationProcessor<\/code> SPI in the Maven plugin, the declarative router (<code>@Route(\"\/path\")<\/code>, deep links, route guards, per-tab navigation shells) that is its first concrete consumer, then a SQLite ORM (<code>@Entity<\/code> \/ <code>@Id<\/code> \/ <code>@Column<\/code>), a JSON \/ XML mapper (<code>@Mapped<\/code> \/ <code>@JsonProperty<\/code> \/ <code>@XmlElement<\/code>), a component binder (<code>@Bindable<\/code> \/ <code>@Bind<\/code>) with field-level validation, and the build-time SVG \/ Lottie transcoder that emits Codename One <code>Image<\/code> subclasses for every asset in <code>src\/main\/svg\/<\/code> or <code>src\/main\/lottie\/<\/code>. The grab-bag PR (<a target=\"_blank\" href=\"https:\/\/github.com\/codenameone\/CodenameOne\/pull\/5055\">#5055<\/a>, driven by porting a substantial mobile client app onto Codename One as the regression fixture) lands here too because the ORM and mapping work share the porting exercise that drove it. PRs <a target=\"_blank\" href=\"https:\/\/github.com\/codenameone\/CodenameOne\/pull\/5037\">#5037<\/a>, <a target=\"_blank\" href=\"https:\/\/github.com\/codenameone\/CodenameOne\/pull\/5047\">#5047<\/a>, <a target=\"_blank\" href=\"https:\/\/github.com\/codenameone\/CodenameOne\/pull\/5062\">#5062<\/a>, <a target=\"_blank\" href=\"https:\/\/github.com\/codenameone\/CodenameOne\/pull\/5055\">#5055<\/a>, <a target=\"_blank\" href=\"https:\/\/github.com\/codenameone\/CodenameOne\/pull\/5042\">#5042<\/a>, <a target=\"_blank\" href=\"https:\/\/github.com\/codenameone\/CodenameOne\/pull\/5049\">#5049<\/a>, <a target=\"_blank\" href=\"https:\/\/github.com\/codenameone\/CodenameOne\/pull\/5066\">#5066<\/a>.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h2-3--rapping-up\">Wrapping up<\/h2>\n\n\n\n<p>That is the new format. Short post on Friday; deeper posts during the week; every change in its own place. Please tell us how it lands.<\/p>\n\n\n\n<p>Issue tracker is <a target=\"_blank\" href=\"https:\/\/github.com\/codenameone\/CodenameOne\/issues\">here<\/a>, the discussion forum is <a target=\"_blank\" href=\"https:\/\/www.codenameone.com\/discussion-forum.html\">here<\/a>, and the new Build Cloud console is at <a target=\"_blank\" href=\"https:\/\/cloud.codenameone.com\/console\/index.html\"><code>\/console\/<\/code><\/a>. The <a target=\"_blank\" href=\"https:\/\/www.codenameone.com\/playground\/\">Playground<\/a>, <a target=\"_blank\" href=\"https:\/\/www.codenameone.com\/initializr\/\">Initializr<\/a>, and <a target=\"_blank\" href=\"https:\/\/www.codenameone.com\/skindesigner\/\">Skin Designer<\/a> are all still where they were.<\/p>\n<\/body><\/html>\n","protected":false},"excerpt":{"rendered":"<p>The iOS Metal renderer is now the default, the new Build Cloud console is wired into every Dashboard link on the site, and the weekly release blog is moving to a shorter format with deeper follow-up posts during the week.<\/p>\n","protected":false},"author":209,"featured_media":124127,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1722],"tags":[2561],"class_list":["post-124128","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-java","tag-codenameone"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Metal Default, A New Build Cloud, And A New Format<\/title>\n<meta name=\"description\" content=\"The iOS Metal renderer is now the default, the new Build Cloud console is wired into every Dashboard link on the site, and the weekly release blog is movin\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.codenameone.com\/blog\/metal-default-new-build-cloud-and-a-new-format\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Metal Default, A New Build Cloud, And A New Format\" \/>\n<meta property=\"og:description\" content=\"The iOS Metal renderer is now the default, the new Build Cloud console is wired into every Dashboard link on the site, and the weekly release blog is movin\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.codenameone.com\/blog\/metal-default-new-build-cloud-and-a-new-format\/\" \/>\n<meta property=\"og:site_name\" content=\"foojay\" \/>\n<meta property=\"article:published_time\" content=\"2026-06-08T09:47:43+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-08T10:25:31+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/foojay.io\/wp-content\/uploads\/2026\/06\/metal-default-new-build-cloud-and-a-new-format.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"512\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Shai Almog\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Shai Almog\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.codenameone.com\\\/blog\\\/metal-default-new-build-cloud-and-a-new-format\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/foojay.io\\\/today\\\/metal-default-a-new-build-cloud-and-a-new-format\\\/\"},\"author\":{\"name\":\"Shai Almog\",\"@id\":\"https:\\\/\\\/foojay.io\\\/#\\\/schema\\\/person\\\/46104af2a92bab35013722d995ffc85b\"},\"headline\":\"Codename One: Metal Default, A New Build Cloud, And A New Format\",\"datePublished\":\"2026-06-08T09:47:43+00:00\",\"dateModified\":\"2026-06-08T10:25:31+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/foojay.io\\\/today\\\/metal-default-a-new-build-cloud-and-a-new-format\\\/\"},\"wordCount\":952,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/foojay.io\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.codenameone.com\\\/blog\\\/metal-default-new-build-cloud-and-a-new-format\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/foojay.io\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/metal-default-new-build-cloud-and-a-new-format.jpg\",\"keywords\":[\"Codename One\"],\"articleSection\":[\"Java\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.codenameone.com\\\/blog\\\/metal-default-new-build-cloud-and-a-new-format\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/foojay.io\\\/today\\\/metal-default-a-new-build-cloud-and-a-new-format\\\/\",\"url\":\"https:\\\/\\\/www.codenameone.com\\\/blog\\\/metal-default-new-build-cloud-and-a-new-format\\\/\",\"name\":\"Metal Default, A New Build Cloud, And A New Format\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/foojay.io\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.codenameone.com\\\/blog\\\/metal-default-new-build-cloud-and-a-new-format\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.codenameone.com\\\/blog\\\/metal-default-new-build-cloud-and-a-new-format\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/foojay.io\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/metal-default-new-build-cloud-and-a-new-format.jpg\",\"datePublished\":\"2026-06-08T09:47:43+00:00\",\"dateModified\":\"2026-06-08T10:25:31+00:00\",\"description\":\"The iOS Metal renderer is now the default, the new Build Cloud console is wired into every Dashboard link on the site, and the weekly release blog is movin\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.codenameone.com\\\/blog\\\/metal-default-new-build-cloud-and-a-new-format\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.codenameone.com\\\/blog\\\/metal-default-new-build-cloud-and-a-new-format\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.codenameone.com\\\/blog\\\/metal-default-new-build-cloud-and-a-new-format\\\/#primaryimage\",\"url\":\"https:\\\/\\\/foojay.io\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/metal-default-new-build-cloud-and-a-new-format.jpg\",\"contentUrl\":\"https:\\\/\\\/foojay.io\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/metal-default-new-build-cloud-and-a-new-format.jpg\",\"width\":1024,\"height\":512,\"caption\":\"Metal Default, A New Build Cloud, And A New Format\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.codenameone.com\\\/blog\\\/metal-default-new-build-cloud-and-a-new-format\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/foojay.io\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Codename One: Metal Default, A New Build Cloud, And A New Format\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/foojay.io\\\/#website\",\"url\":\"https:\\\/\\\/foojay.io\\\/\",\"name\":\"foojay\",\"description\":\"a place for friends of OpenJDK\",\"publisher\":{\"@id\":\"https:\\\/\\\/foojay.io\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/foojay.io\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/foojay.io\\\/#organization\",\"name\":\"foojay\",\"url\":\"https:\\\/\\\/foojay.io\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/foojay.io\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/foojay.io\\\/wp-content\\\/uploads\\\/2020\\\/04\\\/cropped-Favicon.png\",\"contentUrl\":\"https:\\\/\\\/foojay.io\\\/wp-content\\\/uploads\\\/2020\\\/04\\\/cropped-Favicon.png\",\"width\":512,\"height\":512,\"caption\":\"foojay\"},\"image\":{\"@id\":\"https:\\\/\\\/foojay.io\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/x.com\\\/foojay2020\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/foojay.io\\\/#\\\/schema\\\/person\\\/46104af2a92bab35013722d995ffc85b\",\"name\":\"Shai Almog\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/foojay.io\\\/wp-content\\\/uploads\\\/2024\\\/05\\\/shaialmog-96x96.png\",\"url\":\"https:\\\/\\\/foojay.io\\\/wp-content\\\/uploads\\\/2024\\\/05\\\/shaialmog-96x96.png\",\"contentUrl\":\"https:\\\/\\\/foojay.io\\\/wp-content\\\/uploads\\\/2024\\\/05\\\/shaialmog-96x96.png\",\"caption\":\"Shai Almog\"},\"description\":\"Author, DevRel, Blogger, Open Source Hacker, Java Rockstar, Conference Speaker, Instructor and Entrepreneur.\",\"sameAs\":[\"https:\\\/\\\/debugagent.com\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/shai-almog-81a42\\\/\",\"https:\\\/\\\/x.com\\\/debugagent\",\"https:\\\/\\\/youtube.com\\\/@debugagent\\\/\"],\"url\":\"https:\\\/\\\/foojay.io\\\/today\\\/author\\\/shai-almog\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Metal Default, A New Build Cloud, And A New Format","description":"The iOS Metal renderer is now the default, the new Build Cloud console is wired into every Dashboard link on the site, and the weekly release blog is movin","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:\/\/www.codenameone.com\/blog\/metal-default-new-build-cloud-and-a-new-format\/","og_locale":"en_US","og_type":"article","og_title":"Metal Default, A New Build Cloud, And A New Format","og_description":"The iOS Metal renderer is now the default, the new Build Cloud console is wired into every Dashboard link on the site, and the weekly release blog is movin","og_url":"https:\/\/www.codenameone.com\/blog\/metal-default-new-build-cloud-and-a-new-format\/","og_site_name":"foojay","article_published_time":"2026-06-08T09:47:43+00:00","article_modified_time":"2026-06-08T10:25:31+00:00","og_image":[{"width":1024,"height":512,"url":"https:\/\/foojay.io\/wp-content\/uploads\/2026\/06\/metal-default-new-build-cloud-and-a-new-format.jpg","type":"image\/jpeg"}],"author":"Shai Almog","twitter_misc":{"Written by":"Shai Almog","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.codenameone.com\/blog\/metal-default-new-build-cloud-and-a-new-format\/#article","isPartOf":{"@id":"https:\/\/foojay.io\/today\/metal-default-a-new-build-cloud-and-a-new-format\/"},"author":{"name":"Shai Almog","@id":"https:\/\/foojay.io\/#\/schema\/person\/46104af2a92bab35013722d995ffc85b"},"headline":"Codename One: Metal Default, A New Build Cloud, And A New Format","datePublished":"2026-06-08T09:47:43+00:00","dateModified":"2026-06-08T10:25:31+00:00","mainEntityOfPage":{"@id":"https:\/\/foojay.io\/today\/metal-default-a-new-build-cloud-and-a-new-format\/"},"wordCount":952,"commentCount":0,"publisher":{"@id":"https:\/\/foojay.io\/#organization"},"image":{"@id":"https:\/\/www.codenameone.com\/blog\/metal-default-new-build-cloud-and-a-new-format\/#primaryimage"},"thumbnailUrl":"https:\/\/foojay.io\/wp-content\/uploads\/2026\/06\/metal-default-new-build-cloud-and-a-new-format.jpg","keywords":["Codename One"],"articleSection":["Java"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.codenameone.com\/blog\/metal-default-new-build-cloud-and-a-new-format\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/foojay.io\/today\/metal-default-a-new-build-cloud-and-a-new-format\/","url":"https:\/\/www.codenameone.com\/blog\/metal-default-new-build-cloud-and-a-new-format\/","name":"Metal Default, A New Build Cloud, And A New Format","isPartOf":{"@id":"https:\/\/foojay.io\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.codenameone.com\/blog\/metal-default-new-build-cloud-and-a-new-format\/#primaryimage"},"image":{"@id":"https:\/\/www.codenameone.com\/blog\/metal-default-new-build-cloud-and-a-new-format\/#primaryimage"},"thumbnailUrl":"https:\/\/foojay.io\/wp-content\/uploads\/2026\/06\/metal-default-new-build-cloud-and-a-new-format.jpg","datePublished":"2026-06-08T09:47:43+00:00","dateModified":"2026-06-08T10:25:31+00:00","description":"The iOS Metal renderer is now the default, the new Build Cloud console is wired into every Dashboard link on the site, and the weekly release blog is movin","breadcrumb":{"@id":"https:\/\/www.codenameone.com\/blog\/metal-default-new-build-cloud-and-a-new-format\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.codenameone.com\/blog\/metal-default-new-build-cloud-and-a-new-format\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.codenameone.com\/blog\/metal-default-new-build-cloud-and-a-new-format\/#primaryimage","url":"https:\/\/foojay.io\/wp-content\/uploads\/2026\/06\/metal-default-new-build-cloud-and-a-new-format.jpg","contentUrl":"https:\/\/foojay.io\/wp-content\/uploads\/2026\/06\/metal-default-new-build-cloud-and-a-new-format.jpg","width":1024,"height":512,"caption":"Metal Default, A New Build Cloud, And A New Format"},{"@type":"BreadcrumbList","@id":"https:\/\/www.codenameone.com\/blog\/metal-default-new-build-cloud-and-a-new-format\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/foojay.io\/"},{"@type":"ListItem","position":2,"name":"Codename One: Metal Default, A New Build Cloud, And A New Format"}]},{"@type":"WebSite","@id":"https:\/\/foojay.io\/#website","url":"https:\/\/foojay.io\/","name":"foojay","description":"a place for friends of OpenJDK","publisher":{"@id":"https:\/\/foojay.io\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/foojay.io\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/foojay.io\/#organization","name":"foojay","url":"https:\/\/foojay.io\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/foojay.io\/#\/schema\/logo\/image\/","url":"https:\/\/foojay.io\/wp-content\/uploads\/2020\/04\/cropped-Favicon.png","contentUrl":"https:\/\/foojay.io\/wp-content\/uploads\/2020\/04\/cropped-Favicon.png","width":512,"height":512,"caption":"foojay"},"image":{"@id":"https:\/\/foojay.io\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/foojay2020"]},{"@type":"Person","@id":"https:\/\/foojay.io\/#\/schema\/person\/46104af2a92bab35013722d995ffc85b","name":"Shai Almog","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/foojay.io\/wp-content\/uploads\/2024\/05\/shaialmog-96x96.png","url":"https:\/\/foojay.io\/wp-content\/uploads\/2024\/05\/shaialmog-96x96.png","contentUrl":"https:\/\/foojay.io\/wp-content\/uploads\/2024\/05\/shaialmog-96x96.png","caption":"Shai Almog"},"description":"Author, DevRel, Blogger, Open Source Hacker, Java Rockstar, Conference Speaker, Instructor and Entrepreneur.","sameAs":["https:\/\/debugagent.com\/","https:\/\/www.linkedin.com\/in\/shai-almog-81a42\/","https:\/\/x.com\/debugagent","https:\/\/youtube.com\/@debugagent\/"],"url":"https:\/\/foojay.io\/today\/author\/shai-almog\/"}]}},"_links":{"self":[{"href":"https:\/\/foojay.io\/wp-json\/wp\/v2\/posts\/124128","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/foojay.io\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/foojay.io\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/foojay.io\/wp-json\/wp\/v2\/users\/209"}],"replies":[{"embeddable":true,"href":"https:\/\/foojay.io\/wp-json\/wp\/v2\/comments?post=124128"}],"version-history":[{"count":0,"href":"https:\/\/foojay.io\/wp-json\/wp\/v2\/posts\/124128\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/foojay.io\/wp-json\/wp\/v2\/media\/124127"}],"wp:attachment":[{"href":"https:\/\/foojay.io\/wp-json\/wp\/v2\/media?parent=124128"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/foojay.io\/wp-json\/wp\/v2\/categories?post=124128"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/foojay.io\/wp-json\/wp\/v2\/tags?post=124128"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}