Releases: makbn/java_leaflet
Leaflet v2.0.0
Java Leaflet v2.0.0 Release Notes
Major Release - Architecture Redesign
Java Leaflet v2.0.0 represents a complete architectural overhaul with multi-framework support and improved modularity.
Install
Vaadin
<dependency>
    <groupId>io.github.makbn</groupId>
    <artifactId>jlmap-vaadin</artifactId>
    <version>2.0.0</version>
</dependency>
Java FX
<dependency>
    <groupId>io.github.makbn</groupId>
    <artifactId>jlmap-fx</artifactId>
    <version>2.0.0</version>
</dependency>
Breaking Changes
- API Layer Separation: API layer separated from JavaFX implementation
- Removed: Deprecated JLJavaFXMapView- replaced with unifiedJLMapViewAPI
- Layer Refactoring: All Leaflet layers renamed and centralized in JLMapControllerwith new package structure
- Migration Required: See migration guide for upgrading from v1.x
New Features
Vaadin Framework Support
- Full Vaadin integration with dedicated layer implementations
- Vaadin demo application with multiple examples
- Vaadin map component with JavaFX-like API
Context Menu System
- Context menu support for maps and markers
- Framework-specific mediator implementations for JavaFX and Vaadin
Enhanced Layers & GeoJSON
- Vector layer support completed
- GeoJSON conversion methods for:
- CircleMarker, ImageOverlay, Marker
- Polygon, Polyline
 
- Property update methods for all layers
Event System Improvements
- New Events: ResizeEventfor map responsiveness
- Enhanced documentation for ClickEvent,DragEvent,MoveEvent,LayerEvent,ZoomEvent
Map Provider Flexibility
- Custom map type support via JLMapProvider
- Separated from JLPropertiesfor better extensibility
- Map option selector in demo
Demo Enhancements
- Addde a Vadin Demo module with the ability to work with map features
- Animated journey visualization across cities
- Interactive UI with back navigation
Documentation
- Comprehensive JavaDoc for transport layer interfaces
- Architecture overview and usage examples
- Enhanced README with:
- Project Wiki link
- Additional code examples
- Method and field documentation following standards
Technical Improvements
Build System
- Maven release profile (excludes flow-build-info.json from JAR)
- SCM information and central publishing plugin
- maven.deploy.skipproperty for deployment control
- Project description and URL in POM
Code Quality
- Removed obsolete JLFunctionBaseinterface
- Added placeholder JLConversionException
- Static variable optimization in journey demo
- Removed redundant NpmPackageannotation
- Enhanced marker animation logic
Transport Layer
- JavaScript call transport with default return types
- JLServerToClientTransporterwith detailed documentation
- JLTransportRequestrecord for type-safe requests
- Framework-agnostic transport implementations
Changes
- 102 commits merged
- 211 files changed
- +20,983 additions, −3,474 deletions
Getting Started
Check out the updated documentation:
- [Project Wiki](#)
- [Demo Examples](#)
- [Migration Guide](#) (for v1.x users)
What's Changed
- Release/1.9.5 by @makbn in #29
- Release/1.9.5 by @makbn in #31
- Release/1.9.5 by @makbn in #33
- Dev/v2.0.0 by @makbn in #39
Full Changelog: v1.9.5...v2.0.0
Leaflet v1.9.5
Version 1.9.5
- Major: Upgraded to Java Platform Module System (JPMS)
- Major: Updated to Java 17 compatibility
- Major: Removed internal JavaFX API dependencies
- Enhancement: Improved module structure and encapsulation
- Enhancement: Updated Maven configuration for module support
- Fix: Resolved Lombok annotation processing in module environment
What's Changed
- Release/1.9.4 by @makbn in #22
- Release/1.9.4 by @makbn in #24
- Dev/1.9.5 jpms by @makbn in #28
- Dev/1.9.5 jpms by @makbn in #30
- fixed version number by @makbn in #32
Full Changelog: v1.9.4...v1.9.5
Uploaded to github: https://maven.pkg.github.com/makbn/java_leaflet/io/github/makbn/jlmap/1.9.5/jlmap-1.9.5.jar
Uploaded to github: https://maven.pkg.github.com/makbn/java_leaflet/io/github/makbn/jlmap/1.9.5/jlmap-1.9.5-jar-with-dependencies.jar
Downloading from github: https://maven.pkg.github.com/makbn/java_leaflet/io/github/makbn/jlmap/maven-metadata.xml
Downloaded from github: https://maven.pkg.github.com/makbn/java_leaflet/io/github/makbn/jlmap/maven-metadata.xml
Uploading to github: https://maven.pkg.github.com/makbn/java_leaflet/io/github/makbn/jlmap/maven-metadata.xml
Uploaded to github: https://maven.pkg.github.com/makbn/java_leaflet/io/github/makbn/jlmap/maven-metadata.xml
Leaflet v1.9.4
Release Description - Version 1.9.4
We are excited to announce the release of version 1.9.4, packed with numerous enhancements, bug fixes, and new features that improve the functionality and maintainability of our project. Here's a summary of the key changes introduced in this release:
Continuous Integration (CI):
- Added a CI action (Commit: b38f73e) to automate the build and testing processes, streamlining our development workflow.
Dependency Updates and Logging:
- Updated project dependencies and introduced a logger configuration file (Commit: ebdeefc), ensuring that we stay up to date with external libraries and enhancing our logging capabilities.
Leaflet Version Update and New Functions:
- Updated Leaflet version, added new functions, and conducted code cleanup (Commit: f5a041d), enhancing our mapping capabilities and code quality.
Model Classes Refinement:
- Removed unnecessary model classes, added toString methods, and related tests (Commits: 2b294b3, 7ff1fc9), improving the structure and usability of our models.
GeoJson Support:
- Added support for GeoJson and related wrappers (Commits: f77422a, 7b262c5), improving code quality and documentation for model classes and expanding our data format support.
Leaflet Control Layer Interface:
- Introduced the LeafletControlLayerInt interface (Commit: f5002fa) for map control and interaction, making it easier to customize and extend our maps.
Enhancements and Code Cleanup:
- A series of commits (Commits: 089cbd9, 5a320b4, 030b320, 3329f3c, cc1d5e8, 7095163, 31d95b6, 497a22e, 9af96ca, 7f4930e) bring various enhancements, refactoring, code cleanup, and documentation improvements to our project, resulting in a more maintainable codebase.
Exception Handling:
- Added a new constructor for passing root exceptions and updated dependencies (Commits: 5bca55d, ad186f1), improving error handling within the project.
Deploy Action:
- Implemented a deploy action for release branches (Commits: 31b3149, 5239fd8, c39ee2c, 5ba9bae), improved documentation, and added distribution and license information to facilitate smoother project distribution.
JS Event Names and Testing:
- Added JS event names to actions and introduced tests for the model package (Commits: f337108, c331544), enhancing our testing coverage and making the project more robust.
Workflow and CI Enhancements:
- A series of commits (Commits: c5c2978, d3778d5, a1152c9, 2ef4cc6, 82c67b1, 3ae54d6, 1b9fd13, 87a3e7c, 4e6d593, f65c751, 3abf706, 5b2e585, 14229a3, 4817576) introduce various workflow and CI-related improvements, including branch constraints, job conditions, and settings updates, streamlining our development processes.
Readme Update:
- Updated the readme (Commit: 074118d) to include descriptions of new functionalities and features, ensuring that users can easily understand and utilize the latest additions to our project.
I encourage all users to update to version 1.9.4 to take advantage of these improvements and enhancements. Thank you for your support and feedback.