Flavour 0.3.2 is now live on Maven Central. It includes these enhancements: Routing enhancements for Dates (contributed by linuxfun) The archetype has been updated with support for routing and deep linking. (The old archetype is now archetype-minimal, still useful for projects that don't need routing.) For more information on Flavour: Flavour Book: https://frequal.com/Flavour/book.html Flavour Home Page: https://flavour.sf.net/
The "flavour" repo is new and contains the standard svn branches and tags folders now. Java 8 development will take place in the "tail" 0.x branch: https://sourceforge.net/p/flavour/flavour/HEAD/tree/branches/0.x/ * Java 8 releases will use the major version number 0, like the recently-released 0.3.2 Java 17+ development will take place in the "tip", which is trunk: https://sourceforge.net/p/flavour/flavour/HEAD/tree/trunk/ * Java 17 releases (which should work fine with Java 21) will use the major...
Add path-based routing deep link support to archetype
This has been included in an all-new archetype in 0.3.2. The old archetype is now in archetype-minimal.
Increase resiliency of routing Date parsing
This has been integrated into the 0.3.2 release. Thank you linuxfun!
Flavour 0.3.2 is released and available on maven central.
2.0.0 Initial cut with TeaVM 0.11.0 changes from linuxfun and konsoletyper and additional upgrade to Java 17
Start of 2.x development for new tip (Java 17, Jakarta EE, and newer TeaVM versions)
Creating 0.x branch for Java 8 tail development
Migrated to svn recommended repo layout
New root for the flavour SPA framework code (to allow for other projects in the same repo)
Updated version and whys; new list of contributor steps
Add Java 11+ Support
In-browser Flavour playground
[maven-release-plugin] prepare release teavm-flavour-0.3.2
Website updates: design doc and links
Add path-based routing deep link support to archetype
Add path-based routing deep link support to archetype
Just committed a new archetype that demonstrates routing and allows path-based routing. The old archetype is moved to archetype-minimal.
Updated archetype to demonstrate routing; Moved old archetype to archetype-minimal
Add standard component for 'selected' like 'checked'
Add standard component for 'selected' like 'checked'
The cleaner way to handle this is to use the existing html:bidir-value on the parent select element. Then there is no need to manipulate the selected attribute on options. For example: <select html:bidir-value='myProperty'> binds the JavaBeans property 'myProperty' to the select. The value is fetched via getMyProperty() for rendering, and when the selected value changes, setMyProperty is called.
Increase resiliency of routing Date parsing
This will be included in 0.3.2
This has been committed.
Updated POM version in example to align with others
Integrated Date parsing enhancements to routing (from a patch by linuxfun)
Increase resiliency of routing Date parsing
Add path-based routing deep link support to archetype
Add standard component for 'selected' like 'checked'
Add Java 11+ Support
Allow spaces in path parameters
Closing -- fixed in 0.3.1
Improve error for missing setter with html:bidir-value
Closing -- fixed in 0.3.1
Flavour 0.3.1 is now live on Maven Central. It includes these enhancements: Ticket #11 is resolved: Spaces are allowed in path parameters Ticket #3 is resolved: Fixed vague error message for missing setter in html:bidir-value Fixed archetype to hide static message after startup For more information on Flavour: Flavour Book: https://frequal.com/Flavour/book.html Flavour Home Page: https://flavour.sf.net/
0.3.2-SNAPSHOT development begins
[maven-release-plugin] prepare release teavm-flavour-0.3.1
Ticket #11: Allow spaces in path parameters
Allow spaces in path parameters
Update to teavm 0.11.0
Thank you again for the patch! I am going to apply it in several smaller changes. Some, like the routing changes, seem to be universally applicable, so I will commit them first. For the Jakarta EE changes, I will be planning a strategy to not break existing Java 8/Java EE customers. I value backwards compatibility highly and I think this is one of the many features which sets Flavour apart from the competition. I will look at whether this can be done with different Java packages in one maven artifact,...
Just added: a new section in the Flavour Book: 6.2 Importing Classes and Enums https://frequal.com/Flavour/book.html#org1cdb8dc
Thank you for submitting this! I will take a look. A couple of questions: * Does this preserve Java 8 compatibility? * Does this require service interfaces to upgrade to the jakarta.* packages to continue to work?
I've added a new chapter on Modal Dialogs to the Flavour Book. It is Chapter 9. You can read this new chapter (and the entire book) here: https://frequal.com/Flavour/book.html
Flavour will remain on Sourceforge and svn. Github has negative externalities and git lacks svn's clean, readable revision numbers and sane command line (see https://svnvsgit.com/). Patches are welcome. There is a small amount of information here: https://flavour.sourceforge.io/guidelines.html. To generate a diff file, use "svn di" from the top of a trunk copy, then create a bug in Tickets (https://sourceforge.net/p/flavour/tickets/) and attach the patch there. Thank you!
I've added this info to the Flavour book, section 7.3.2: https://frequal.com/Flavour/book.html
Add path-based routing deep link support to archetype
The web app must redirect 404 to the application home page, allowing routing to work for alternate paths. Add this in your web.xml: <error-page> <location>/</location> </error-page> This should be in the Flavour archetype, I'll make a ticket to add it there to save a step. Thanks for pointing this out.
Thank you Matthias! I too want to ensure that Flavour is usable with the latest versions of TeaVM and Java. I published an article here that offers a quick fix for using recent Java versions: https://frequal.com/java/EnablingFlavourInJava1117And21.html I am working on a major new Flavour feature right now, details coming soon. Once it is ready I will have a chance to look at the changes to make Flavour work with newer version of TeaVM.
The Lanterna project ( https://github.com/mabe02/lanterna ) offers Pure Java TUIs. For people with jcurses-based UIs, however, it is lacking some components (like List). Would it be possible to implement an alternate jcurses Toolkit that uses the Lanterna screen buffer? Then jcurses could drop the native code, yet still provide the same rich jcurses components.
Localization for Flavour apps
Upgrade instructions are now here: https://frequal.com/java/EnablingFlavourInJava1117And21.html
To use Flavour with Java 11, 17, or 21, you simply need to update 4 versions in your pom.xml. Information here: https://frequal.com/java/EnablingFlavourInJava1117And21.html
Add Java 11+ Support
A belated happy birthday to Flavour! In April Flavour turned 9 years old. I've been building apps with Flavour for the past 6 years. It is still the fastest, cleanest, and lightest solution to building web apps with Java. If you're fed up with long build times and complicated frameworks with conflicting build processes, give Flavour a try!
Add standard component for 'selected' like 'checked'
Nested std:if intermittently not reevaluated
Flavour is now being actively maintained here on Sourceforge. The new maven coordinates: New Group ID: com.frequal.flavour Artifact IDs are unchanged: teavm-flavour-widgets, teavm-flavour-rest, etc. The source code is here: https://sourceforge.net/p/flavour/trunk/ The current TeaVM dependency is on version 0.6.1. This is a stable, fast version of TeaVM that has worked well for many years. There are newer versions of TeaVM now, but they include breaking changes. That work is planned for the 2.0 release...
Flavour is now being actively maintained here on Sourceforge. The source code is here: https://sourceforge.net/p/flavour/trunk/ The current TeaVM dependency is on version 0.6.1. This is a stable, fast version of TeaVM that has worked well for many years. There are newer versions of TeaVM now, but they include breaking changes. That work is planned for the 2.0 release and is documented here: https://sourceforge.net/p/flavour/tickets/4/ Note: The 2.0 release is currently unscheduled and is at least...
Upgrade TeaVM Dependencies
We are pleased to announce the latest release of Flavour, version 0.3.0. This long-awaited release adds: Path-based routing SVG support EL error resilience during rendering Enhanced error reporting Note that with this release, the Maven coordinates have changed slightly. The group is now com.frequal.flavour (formerly org.teavm.flavour). In your POM, update the group for any Flavour dependencies to this: <groupId>com.frequal.flavour</groupId> and the version to: <version>0.3.0</version> Flavour 0.3.0...
It works, thank you!
Can't make Announcements forum public
Improve error for missing setter with html:bidir-value
Needs a mechanism to turn off if needed.
Add event:input
Released in 0.3.0
Improve error for missing setter with html:bidir-value
Fixed in recent commit. To be included in release 0.3.1.
Fix for vague error message when setter missing for bidirectional expression (like html:bidir-value), issue #3
We are pleased to announce the latest release of Flavour, version 0.3.0. This long-awaited release adds: Path-based routing SVG support EL error resilience during rendering Enhanced error reporting Note that with this release, the Maven coordinates have changed slightly. The group is now com.frequal.flavour (formerly org.teavm.flavour). In your POM, update the group for any Flavour dependencies to this: <groupId>com.frequal.flavour</groupId> and the version to: <version>0.3.0</version> Flavour 0.3.0...
In archetype, fixed hiding static message at startup
Updated README
Release 0.3.1-SNAPSHOT
Release 0.3.0
Website: New coordinates for archetype
POM tweaks to help with signing
Updated maven groupIds; Fixed parent POM bundle upload; Modernized archetype
I've posted a new chapter in the Flavour book on Data Resource Loading: https://frequal.com/Flavour/book.html#org7a7c842 This shows you how to load text and structured data (JSON-serialized objects) into your Flavour app. This way you can bundle everything together neatly for convenience and offline use.
Website: Improved project descriptions and formatting
Website: Project scoping estimates
Added GSoC proposal guidelines
Minor website project update
Minor website project update
Minor website project update
Minor website project update
Minor website formatting
Minor project description improvement
Current website contents
I've posted new updates to the Flavour book: https://frequal.com/Flavour/book.html The new sections just added include Custom Components and Common Error Messages. Many sections of the book draw from, and link to, the Flavourcast podcast. Examples from the podcast are available in the book text. Flavourcast: https://castini.frequal.com/cast/show/Flavourcast/f7e171e8-22de-4f3b-adbb-5462991343c5
There's a new episode of Flavourcast: State Management in Flavour gives your app powerful capabilities. It can respond instantly to user interaction. It can operate offline. Learn how to manage state effectively in this episode. Episode: https://castini.frequal.com/cast/ep/Flavourcast/c33ed638-dbc5-45ac-97e1-c37e5fd94c64 Flavourcast: https://castini.frequal.com/cast/show/Flavourcast/f7e171e8-22de-4f3b-adbb-5462991343c5 Flavour home page: https://flavour.sourceforge.io/ Subscribe on Spotify, Google...
Improve error for missing setter with html:bidir-value
I have finished two major sections in Chapter 10, Custom Components in Flavour, including examples. https://frequal.com/Flavour/book.html A demo of custom attributes is now available in Tea Sampler. Clicking on the name allows editing, hitting the escape key cancels and reverts the edit. The cancel functionality is reusable and can be applied easily. https://frequal.com/tea-sampler/cancelComponent
I have completed Chapter 12 about State management in Flavour, including examples. https://frequal.com/Flavour/book.html The first demo is here. Once saved, the name is in Local Storage and survives refreshes. https://frequal.com/tea-sampler/localState The other demo is here. State survives page changes but not refreshes: https://frequal.com/tea-sampler/stateSingleton
I have published a new live demo of an interactive SVG scene using Flavour. The demo is here: https://frequal.com/tea-sampler/svgTreesDynamic The techniques used are described in Chapter 11 of the Flavour book here: https://frequal.com/Flavour/book.html It covers some SVG basics, how to make an SVG component, and how to make an SVG scene respond to user interaction via a slider.
New partial chapters have been posted: * SVG * State * CSS https://frequal.com/Flavour/book.html
New sections have been added for: * Expressions * Routing * Background Activity * Service Calls https://frequal.com/Flavour/book.html