Releases: codenameone/CodenameOne
Releases · codenameone/CodenameOne
7.0.244
What's Changed
- docs: route cn1lib creation through the Maven cn1lib-archetype by @shai-almog in #4952
- Inline cn1app/cn1lib archetypes; bring to initializr parity by @shai-almog in #4953
- Move Hashnode syndication off the deprecated GraphQL API by @shai-almog in #4956
- Status-bar tap: scroll the visible scroll pane, not the first one by @shai-almog in #4958
- iOS Metal: fix stale framebuffer on rotation (#4954) by @shai-almog in #4961
- StickyHeaderContainer: add TRANSITION_COVER and standalone fade-out flag by @shai-almog in #4959
- Ignore common local artifacts in Initializr projects by @jsfan3 in #4967
- Simulate->Larger Text: refresh the simulator instantly (#4963) by @shai-almog in #4964
- Fix agent tool Codename One version selection by @jsfan3 in #4965
- Support side border shorthands in CSSBorder by @jsfan3 in #4966
- Initializr: clean up generated zips to avoid IndexedDB quota exhaustion by @shai-almog in #4969
- iOS Metal: fix debug-only first-paint crashes by @shai-almog in #4972
- Treat developer guide vale and asciidoc warnings as build errors by @shai-almog in #4971
- Picker: support custom default date via setDefaultDate (#4973) by @shai-almog in #4974
- Refresh Skin Designer device database by @github-actions[bot] in #4975
- Expand CSS gradient + filter:blur support across framework, ports, docs by @shai-almog in #4957
- iOS: size status-bar tap proxy to real safe-area inset (#4978) by @shai-almog in #4981
- Simulator: split Skins menu, fix Native Theme menu, add regression test by @shai-almog in #4984
- Fix #4979: dim backdrop persists after Dialog from on-top side menu by @shai-almog in #4983
- Hardware keyboard + hover support on Android and iOS (#3498) by @shai-almog in #4982
- Commit native theme .res files; add native-themes-sync workflow by @shai-almog in #4976
- Iterative GC mark to fix iOS stack overflow on deep graphs (#3136) by @shai-almog in #4980
- Fix #3108: don't rely on C arg eval order in PUTFIELD/MULTIANEWARRAY by @shai-almog in #4985
- iOS UTF-8 codec: replace-char semantics, NEON ASCII fast-path, benchmark by @shai-almog in #4989
- Fix Purchase.synchronizeReceipts re-submitting same receipt and firing callback multiple times by @shai-almog in #4990
- Fix #4188: RGBImage scaled drawImage renders blank by @shai-almog in #4986
- Update graphics.asciidoc by @Ngosti2000 in #4992
- Simulator: data-driven menu hooks for cn1libs by @shai-almog in #4988
- Add com.codename1.security: biometric auth + secure storage by @shai-almog in #4987
- Fix #4997: guard pointerDragged against empty pointer arrays by @shai-almog in #4998
- Add com.codename1.security crypto API + OtpField widget by @shai-almog in #4994
- Update Animations.asciidoc by @Ngosti2000 in #5000
- Add com.codename1.nfc: NDEF read/write, ISO-DEP/MIFARE/FeliCa, HCE by @shai-almog in #4996
- Add grammar checks to developer guide CI by @shai-almog in #5002
- Fix iOS 26 tap regressions + ParparVM BGPainter NPE by @shai-almog in #5003
New Contributors
- @Ngosti2000 made their first contribution in #4992
Full Changelog: 7.0.243...7.0.244
7.0.243
initializr: default to Java 17, drop Experimental label, bundle Claud…
7.0.242
Skip archetype integration tests on release deploy The cn1-maven-archetypes repo added archetype-post-generate ITs on 2026-05-07 that generate a test project pinned to cn1Version=8.0-SNAPSHOT and then invoke the codenameone-maven-plugin. That SNAPSHOT is not on Maven Central, so the ITs fail during release deploy even though the archetype packages cleanly. The ITs are upstream CI coverage, not release coverage -- pass -Darchetype.test.skip=true (and -DskipTests for symmetry) so the release deploy doesn't run them. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
7.0.237
Add website-targeted JavaScript Skin Designer integration (#4758)
7.0.236
Fix POSIX character classes for non-ASCII letters in RE (#4841) (#4843)
* Fix POSIX character classes for non-ASCII letters in RE (#4841)
RECharacter.getType() returned UNASSIGNED for any char >= 128, so
[[:alpha:]], [[:alnum:]], [[:lower:]], and [[:upper:]] silently failed
to match non-Latin letters. As reported in #4841, the regex
"test:\s*([[:alpha:]][[:alnum:]]*)" did not match "test: c123" when the
identifier began with a non-ASCII letter.
Delegate to java.lang.Character.getType(c) for c >= 128 in the
non-RE_UNICODE branch. The RECharacter constants (UPPERCASE_LETTER=1,
LOWERCASE_LETTER=2, ...) are the Unicode general-category numeric codes
and match Character.getType()'s return values exactly, so a byte cast
is safe. The RE_UNICODE preprocessor branch keeps its existing
table-based lookup with a UNASSIGNED fallthrough.
Add five tests covering Latin-with-cedilla, Greek, Cyrillic, CJK
ideographs, vulgar fractions, and currency symbols, including a
regression test for the exact failing case from the issue. Tests use
\uXXXX escapes to keep sources ASCII-only (CI javac uses the platform
default encoding).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* Avoid Character.getType in RE; the framework compiles against CLDC11 stub
The CI Ant build sets -bootclasspath to Ports/CLDC11/dist/CLDC11.jar,
whose java.lang.Character stub does not expose getType, isLetter, or
isLetterOrDigit. The previous fix used Character.getType(c), which
compiled fine under the maven build (full JDK rt.jar) but fails the
Ant build with "cannot find symbol: method getType(char)".
Compose the same effect from the methods that the CLDC11 stub does
expose: isLowerCase, isUpperCase, isDigit, isSpaceChar. This covers
cased letters in Latin (with diacritics), Greek, and Cyrillic, plus
decimal digits and space separators -- enough to fix the reported
case from #4841 ("test: c-cedilla 123" matching
"test:\\s*([[:alpha:]][[:alnum:]]*)").
Limitation: characters whose Unicode general category is OTHER_LETTER
(CJK ideographs, Hebrew, Arabic, Devanagari, ...), TITLECASE_LETTER,
MODIFIER_LETTER, or LETTER_NUMBER cannot be distinguished from
UNASSIGNED with the CLDC11 API surface and remain unmatched by
[[:alpha:]] / [[:alnum:]]. Lifting that limitation requires either
the RE_UNICODE preprocessor branch or extending the CLDC11 stub --
both out of scope for this fix. Tests document the limitation by
asserting only on cased scripts.
Verified: javac -bootclasspath CLDC11.jar -source 1.5 -target 1.5
compiles RECharacter and RE cleanly; mvn test from core-unittests
runs all 10 RETest tests, including the regression for the exact
failing input from the issue.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Shai Almog <67850168+shai-almog@users.noreply.github.com>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
7.0.235
Revise security policy for supported versions and reporting Updated the security policy to clarify supported versions and reporting process. Signed-off-by: Shai Almog <67850168+shai-almog@users.noreply.github.com>
7.0.234
Update Material Icons font and FontImage constants (#4766)
7.0.233
Fixed kotlin native interfaces and removed reflection nonsense (#4728) Related to #3274
7.0.232
Make static Dialog.show use legacy Dialog when interaction mode is di…
7.0.231
Replace LocationSimulation JavaFX usage with JCEF + graceful fallback