Skip to content

Releases: makbn/java_leaflet

Leaflet v2.0.0

06 Oct 06:20
7121229

Choose a tag to compare

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 unified JLMapView API
  • Layer Refactoring: All Leaflet layers renamed and centralized in JLMapController with 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: ResizeEvent for map responsiveness
  • Enhanced documentation for ClickEvent, DragEvent, MoveEvent, LayerEvent, ZoomEvent

Map Provider Flexibility

  • Custom map type support via JLMapProvider
  • Separated from JLProperties for 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.skip property for deployment control
  • Project description and URL in POM

Code Quality

  • Removed obsolete JLFunctionBase interface
  • Added placeholder JLConversionException
  • Static variable optimization in journey demo
  • Removed redundant NpmPackage annotation
  • Enhanced marker animation logic

Transport Layer

  • JavaScript call transport with default return types
  • JLServerToClientTransporter with detailed documentation
  • JLTransportRequest record 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:

What's Changed

Full Changelog: v1.9.5...v2.0.0

Leaflet v1.9.5

29 Jul 07:31
d5ce875

Choose a tag to compare

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

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

12 Sep 07:56
8a083e9

Choose a tag to compare

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:

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:

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.