From 5a287f808d4ede4bdf7bb31645f399e2f9916fc8 Mon Sep 17 00:00:00 2001 From: Shai Almog <67850168+shai-almog@users.noreply.github.com> Date: Sat, 7 Mar 2026 18:16:14 +0200 Subject: [PATCH 1/3] Polish blog tone and highlight UIScene rollout --- ...e-26-migration-and-localization-bundles.md | 64 +++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 docs/website/content/blog/xcode-26-migration-and-localization-bundles.md diff --git a/docs/website/content/blog/xcode-26-migration-and-localization-bundles.md b/docs/website/content/blog/xcode-26-migration-and-localization-bundles.md new file mode 100644 index 0000000000..e32bacdb82 --- /dev/null +++ b/docs/website/content/blog/xcode-26-migration-and-localization-bundles.md @@ -0,0 +1,64 @@ +--- +title: Xcode 26 Migration, UIScene Rollout, Initializr Localization Bundles, and More +date: '2026-03-07' +author: Shai Almog +slug: xcode-26-migration-and-localization-bundles +url: /blog/xcode-26-migration-and-localization-bundles/ +description: We started the Xcode 26 migration rollout, Initializr now generates localization resource bundles, and there are several useful platform updates you should know about. +--- + +A lot landed since the last update, so I want to give you a practical summary of what changed and what matters. + +## Xcode 26 Migration Has Started + +We started the Xcode 26 migration process. + +This is a staged rollout, which means some iOS builds now run on the newer Xcode and others still run on the previous setup. If you hit a suspicious failure, please report it quickly so we can separate migration fallout from ordinary regressions. + +The migration is tracked in issue [#4456](https://github.com/codenameone/CodenameOne/issues/4456). + +## UIScene Support: Start Testing with `ios.uiscene` + +We also added initial UIScene support and this is one you should start testing now. The `ios.uiscene` flag enables this behavior and we expect UIScene support to become an Apple requirement starting with iOS 27, so we are trying to be ready ahead of time instead of scrambling at the last minute. + +## Initializr Now Generates Localization Resource Bundles + +The new Initializr now generates localization bundles as part of project creation, including UI support and preview in the wizard. + +That means i18n starts as part of the default app flow instead of becoming cleanup work later on. We also fixed follow-up l10n path issues and updated CSS tooling so localization directories are detected and passed correctly to the compiler/watch workflow. + +If you haven’t looked at localization recently, we now support property resource bundles as part of the standard workflow. This is documented in the [Developer Guide](/manual/), and it aligns much better with modern project structure. + +Another detail that is easy to miss: Codename One has implicit localization behavior. When a resource bundle is installed, `Label` text (and subclasses of [`Label`](/javadoc/com/codename1/ui/Label/)) is localized automatically by key unless you explicitly disable it for a specific component. + +For day to day work, the simulator has a very useful mode under **Simulator > Auto Update Default Bundle**. When enabled, missing keys are implicitly added to your default properties bundle while you run the app, which makes it much easier to iterate on UI text and l10n coverage. + +## Other Updates Worth Calling Out + +Android now has support for adaptive icons, with documentation updates to clarify background image path behavior. + +On iOS we fixed local notification replacement behavior, so newer notifications can override previous ones correctly. If you rely on notifications heavily, check the [`LocalNotification`](/javadoc/com/codename1/notifications/LocalNotification/) JavaDoc for the API details. + +In the UI layer, [`ImageViewer`](/javadoc/com/codename1/components/ImageViewer/) now supports optional navigation arrows and a thumbnail strip. We also introduced `EditableResources` and [`CSSThemeCompiler`](/javadoc/com/codename1/ui/css/CSSThemeCompiler/), which should make theme and resource workflows easier to automate and evolve. + +We also expanded regex support to include nested POSIX character classes, with additional tests around that behavior. + +## Looking Ahead: JDK 17 Support + +I also want to close with something I have been working on for the past few months: JDK 17 support, tracked in issue [#4577](https://github.com/codenameone/CodenameOne/issues/4577). + +This is a big effort. It requires major rework across platforms and targets. Java 9 introduced serious compatibility breaks for us between the module system, removed packages, and invokedynamic implications, so getting this right is not a small patch. + +Newer VMs beyond 17 will likely need separate tracking because that transition is another major shift by itself. Android already supports 17, so that is our first target milestone. + +Right now CI runs with JDK 11, 17, and 21, but you still can’t build a Codename One application with JDK 17 end-to-end just yet. + +Streams are a special case since they are mostly an API layer issue. We may include that as part of this effort, although there is already a cn1lib for streams: [CN1-Stream](https://github.com/diamonddevgroup/CN1-Stream) by [Diamond Mubaarak](https://github.com/diamondobama). + +--- + +## Discussion + +_Join the conversation via GitHub Discussions._ + +{{< giscus >}} From 05d49b10b32fd6f473b0d2668bf02cb71dd48aee Mon Sep 17 00:00:00 2001 From: Shai Almog <67850168+shai-almog@users.noreply.github.com> Date: Sat, 7 Mar 2026 18:26:42 +0200 Subject: [PATCH 2/3] Adding hero image Signed-off-by: Shai Almog <67850168+shai-almog@users.noreply.github.com> --- ...de-26-migration-and-localization-bundles.jpg | Bin 0 -> 54929 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/website/static/blog/xcode-26-migration-and-localization-bundles.jpg diff --git a/docs/website/static/blog/xcode-26-migration-and-localization-bundles.jpg b/docs/website/static/blog/xcode-26-migration-and-localization-bundles.jpg new file mode 100644 index 0000000000000000000000000000000000000000..132f135aad97a7dfa4fad9516c0bb5c01725dad1 GIT binary patch literal 54929 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 Hu;2d=zgPgE literal 0 HcmV?d00001 From 59bbed54e8f2b24998426c306823dadb41626dbb Mon Sep 17 00:00:00 2001 From: Shai Almog <67850168+shai-almog@users.noreply.github.com> Date: Sat, 7 Mar 2026 18:30:33 +0200 Subject: [PATCH 3/3] Added the hero image to the blog post Signed-off-by: Shai Almog <67850168+shai-almog@users.noreply.github.com> --- .../blog/xcode-26-migration-and-localization-bundles.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/website/content/blog/xcode-26-migration-and-localization-bundles.md b/docs/website/content/blog/xcode-26-migration-and-localization-bundles.md index e32bacdb82..591a1b7a8f 100644 --- a/docs/website/content/blog/xcode-26-migration-and-localization-bundles.md +++ b/docs/website/content/blog/xcode-26-migration-and-localization-bundles.md @@ -5,8 +5,11 @@ author: Shai Almog slug: xcode-26-migration-and-localization-bundles url: /blog/xcode-26-migration-and-localization-bundles/ description: We started the Xcode 26 migration rollout, Initializr now generates localization resource bundles, and there are several useful platform updates you should know about. +feed_html: 'Xcode 26 Migration, UIScene Rollout, Initializr Localization Bundles, and More We started the Xcode 26 migration rollout, Initializr now generates localization resource bundles, and there are several useful platform updates you should know about.' --- +![Xcode 26 Migration, UIScene Rollout, Initializr Localization Bundles, and More](/blog/xcode-26-migration-and-localization-bundles.jpg) + A lot landed since the last update, so I want to give you a practical summary of what changed and what matters. ## Xcode 26 Migration Has Started