Skip to content

Commit 43e6b30

Browse files
committed
Release v4.7.2
1 parent 732945e commit 43e6b30

File tree

16 files changed

+156
-25
lines changed

16 files changed

+156
-25
lines changed

CHANGELOG.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,17 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres
66
to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). All scales should have the 'format' parameter.
77

8+
## [4.7.2] - 2024-04-25
9+
10+
This release is 100% compatible with [Lets-Plot v 4.3.2](https://github.com/JetBrains/lets-plot/releases/tag/v4.3.2).
11+
12+
### Fixed
13+
14+
- LP occasionally crashes when drawing polygons [[#1084](https://github.com/JetBrains/lets-plot/issues/1084)].
15+
- Regression of issue [[#966](https://github.com/JetBrains/lets-plot/issues/966)].
16+
- Linetype doesn't work for `geomTile()` [[LPK-241](https://github.com/JetBrains/lets-plot-kotlin/issues/241)].
17+
18+
819
## [4.7.1] - 2024-04-22
920

1021
This release is 100% compatible with [Lets-Plot v 4.3.1](https://github.com/JetBrains/lets-plot/releases/tag/v4.3.1).

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ In this case the latest `library descriptor` will be pulled from the [Kotlin Jup
102102
#### Library Descriptor Parameters
103103

104104
```
105-
%use lets-plot(api=4.7.1, lib=4.3.1, js=4.3.1, isolatedFrame=false)
105+
%use lets-plot(api=4.7.2, lib=4.3.2, js=4.3.2, isolatedFrame=false)
106106
```
107107
- `api` - version of the Lets-Plot Kotlin API.
108108
- `lib` - version of the Lets-Plot Multiplatform (JARs).

USAGE_BATIK_JFX_JS.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -52,9 +52,9 @@ plugins {
5252

5353
dependencies {
5454
// Lets-Plot Kotlin API
55-
implementation("org.jetbrains.lets-plot:lets-plot-kotlin-jvm:4.7.1")
55+
implementation("org.jetbrains.lets-plot:lets-plot-kotlin-jvm:4.7.2")
5656
// Lets-Plot Multiplatform (Batik rendering)
57-
implementation("org.jetbrains.lets-plot:lets-plot-batik:4.3.1")
57+
implementation("org.jetbrains.lets-plot:lets-plot-batik:4.3.2")
5858
}
5959
```
6060

@@ -75,9 +75,9 @@ plugins {
7575

7676
dependencies {
7777
// Lets-Plot Kotlin API
78-
implementation("org.jetbrains.lets-plot:lets-plot-kotlin-jvm:4.7.1")
78+
implementation("org.jetbrains.lets-plot:lets-plot-kotlin-jvm:4.7.2")
7979
// Lets-Plot Multiplatform (JFX Scene rendering)
80-
implementation("org.jetbrains.lets-plot:lets-plot-jfx:4.3.1")
80+
implementation("org.jetbrains.lets-plot:lets-plot-jfx:4.3.2")
8181
}
8282
```
8383

@@ -95,7 +95,7 @@ kotlin {
9595
named("jsMain") {
9696
dependencies {
9797
// Lets-Plot Kotlin API
98-
implementation("org.jetbrains.lets-plot:lets-plot-kotlin-js:4.7.1")
98+
implementation("org.jetbrains.lets-plot:lets-plot-kotlin-js:4.7.2")
9999
}
100100
}
101101
}
@@ -193,7 +193,7 @@ val rawSpec = figure.toSpec()
193193
```kotlin
194194
val html: String = PlotHtmlExport.buildHtmlFromRawSpecs(
195195
plotSpec = rawSpec,
196-
scriptUrl = PlotHtmlHelper.scriptUrl(version="4.3.1"),
196+
scriptUrl = PlotHtmlHelper.scriptUrl(version="4.3.2"),
197197
iFrame = true
198198
)
199199
```

build.gradle.kts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@ if (project.file("local.properties").exists()) {
2525
allprojects {
2626
group = "org.jetbrains.lets-plot"
2727
version = when (name) {
28-
"dokka" -> "4.7.1"
29-
else -> "4.7.2-SNAPSHOT"
28+
"dokka" -> "4.7.2"
29+
else -> "4.7.2"
3030
// else -> "0.0.0-SNAPSHOT" // for local publishing only
3131
}
3232

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
/*
2+
* Copyright (c) 2020. JetBrains s.r.o.
3+
* Use of this source code is governed by the MIT license that can be found in the LICENSE file.
4+
*/
5+
6+
package kotlinIsland
7+
8+
import org.geotools.api.feature.Feature
9+
import org.geotools.api.feature.type.FeatureType
10+
import org.geotools.feature.FeatureCollection
11+
import org.geotools.geojson.feature.FeatureJSON
12+
import java.io.File
13+
import java.nio.file.Paths
14+
15+
/**
16+
* Loads data and geometries from "Kotlin Island" GeoJSON files.
17+
*/
18+
internal object KotlinIslandGeojson {
19+
fun loadPlaces(): FeatureCollection<FeatureType, Feature> {
20+
// return loadResource("docs/examples/data/kotlin_places.geojson")
21+
return loadResource("docs/examples/data/kotlin_places_no_crs.geojson")
22+
}
23+
24+
@Suppress("SameParameterValue")
25+
private fun loadResource(relativePathname: String): FeatureCollection<FeatureType, Feature> {
26+
val fileName: String = Paths.get(relativePathname).toAbsolutePath().normalize().toString()
27+
28+
val geoJSONFile = File(fileName)
29+
val featureCollection = FeatureJSON().readFeatureCollection(geoJSONFile.reader())
30+
return featureCollection
31+
}
32+
}
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
/*
2+
* Copyright (c) 2021. JetBrains s.r.o.
3+
* Use of this source code is governed by the MIT license that can be found in the LICENSE file.
4+
*/
5+
6+
package kotlinIsland
7+
8+
import org.jetbrains.letsPlot.batik.plot.component.PlotViewerWindowBatik
9+
import org.jetbrains.letsPlot.geom.geomPoint
10+
import org.jetbrains.letsPlot.intern.toSpec
11+
import org.jetbrains.letsPlot.label.ggtitle
12+
import org.jetbrains.letsPlot.letsPlot
13+
import org.jetbrains.letsPlot.toolkit.geotools.toSpatialDataset
14+
import java.awt.Dimension
15+
16+
fun main() {
17+
// GeoTools
18+
val places = KotlinIslandGeojson.loadPlaces()
19+
20+
// Lets-Plot
21+
val placesSD = places.toSpatialDataset()
22+
val p = letsPlot() +
23+
geomPoint(map = placesSD, color = "red") +
24+
ggtitle("Kotlin Island Tourists Attractions")
25+
26+
PlotViewerWindowBatik(
27+
"Spatial plot demo",
28+
rawSpec = p.toSpec(),
29+
windowSize = Dimension(800, 500),
30+
preserveAspectRatio = false,
31+
repaintDelay = 300
32+
).open()
33+
34+
}

demo/geotools-batik/src/main/kotlin/naturalEarth/NaturalEarthShp.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import java.nio.file.Paths
1212
/**
1313
* Loads the world boundaries from naturalearth_lowres.shp
1414
*/
15-
object NaturalEarthShp {
15+
internal object NaturalEarthShp {
1616
fun loadPolygon(): SimpleFeatureCollection {
1717
return loadResource("docs/examples/shp/naturalearth_lowres/naturalearth_lowres.shp")
1818
}

demo/js-frontend-app/src/jsMain/resources/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
</head>
1111
<body>
1212
<script type="text/javascript"
13-
src="https://cdn.jsdelivr.net/gh/JetBrains/lets-plot@v4.3.0/js-package/distr/lets-plot.min.js"></script>
13+
src="https://cdn.jsdelivr.net/gh/JetBrains/lets-plot@v4.3.2/js-package/distr/lets-plot.min.js"></script>
1414
<script src="js-frontend-app.js"></script>
1515
<div>
1616
<h2>Lets-Plot Kotlin/JS Demo.</h2>

devdocs/PUBLISHING.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ Specify "x.y.z-SNAPSHOT" version in `build.gradle.kts` file.
3535
> You can find published SNAPSHOT artifacts here https://oss.sonatype.org/index.html#view-repositories;snapshots~browsestorage \
3636
> In the "Browse Storage" tab enter ‘Path lookup’: org/jetbrains/lets-plot
3737
38+
> **Note**: SNAPSHOT artifacts are available at "https://oss.sonatype.org/content/repositories/snapshots" repository.
3839
3940
#### "Release" version
4041

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{
2+
"type": "FeatureCollection",
3+
"crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:OGC::CRS84" } },
4+
"features": [
5+
{ "type": "Feature", "properties": { "name": "Kronstadt Naval Cathedral", "type": "church" }, "geometry": { "type": "Point", "coordinates": [ 29.777455, 59.991744 ] } },
6+
{ "type": "Feature", "properties": { "name": "Kronstadt History Museum", "type": "museum" }, "geometry": { "type": "Point", "coordinates": [ 29.791317, 59.986777 ] } },
7+
{ "type": "Feature", "properties": { "name": "Kronstadt Naval Museum", "type": "museum" }, "geometry": { "type": "Point", "coordinates": [ 29.763422, 59.996108 ] } },
8+
{ "type": "Feature", "properties": { "name": "City Russian Cemetery", "type": "cemetery" }, "geometry": { "type": "Point", "coordinates": [ 29.70613, 60.019788 ] } },
9+
{ "type": "Feature", "properties": { "name": "Kronstadt Lutheran Cemetery", "type": "cemetery" }, "geometry": { "type": "Point", "coordinates": [ 29.749861, 60.002212 ] } },
10+
{ "type": "Feature", "properties": { "name": "Vladimir Church", "type": "church" }, "geometry": { "type": "Point", "coordinates": [ 29.766254, 59.998515 ] } }
11+
]
12+
}

0 commit comments

Comments
 (0)