Skip to content

Commit 73a48f2

Browse files
authored
Publishing v3.0.0 (#45)
Release v3.0.0
1 parent 85753ba commit 73a48f2

File tree

10 files changed

+100
-151
lines changed

10 files changed

+100
-151
lines changed

CHANGELOG.md

Lines changed: 44 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,53 @@
1-
# Lets-Plot Skia Frontend Changelog
1+
# Lets-Plot Compose Frontend Changelog
22

33
All notable changes to this project will be documented in this file.
44

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+
## [3.0.0] - 2025-09-19
9+
10+
> [!NOTE]
11+
> The GitHub repository was renamed from `lets-plot-skia` to `lets-plot-compose`.
12+
13+
### Compatibility
14+
15+
All artifacts were built with the following versions of dependencies:
16+
- Compose Multiplatform: [1.8.2](https://github.com/JetBrains/compose-multiplatform/releases/tag/v1.8.2)
17+
- Lets-Plot Kotlin API: [4.11.2](https://github.com/JetBrains/lets-plot-kotlin/releases/tag/v4.11.2)
18+
- Lets-Plot Multiplatform: [4.7.3](https://github.com/JetBrains/lets-plot/releases/tag/v4.7.3)
19+
20+
### Added
21+
22+
- Multiplatform project example, see: [Lets-Plot Compose Demos](https://github.com/JetBrains/lets-plot-compose-demos/tree/main/compose-multiplatform)
23+
24+
### Changed
25+
26+
- [**BREAKING**] `PlotPanel` has been moved to package `org.jetbrains.letsPlot.compose` (from `org.jetbrains.letsPlot.skia.compose`).
27+
28+
#### Android
29+
30+
- Removed dependency on the Skiko library. \
31+
This eliminates Skiko compatibility issues, \
32+
ensures all library artifacts are built with the latest Compose Multiplatform version, \
33+
and simplifies integration of the Lets-Plot Compose Library in Android projects.
34+
35+
#### Desktop
36+
37+
- Pure compose implementation.
38+
- The following artifacts are no longer provided:
39+
- `platf-skia-awt`
40+
- `lets-plot-swing-skia`
41+
42+
### Fixed
43+
44+
- When zooming the page with the mouse, a black layer appears when refreshing [[#12](https://github.com/JetBrains/lets-plot-compose/issues/12)]
45+
- When using a dark theme, white lines appear on the sides of the plot [[#37](https://github.com/JetBrains/lets-plot-compose/issues/37)]
46+
- Plot rendering issues when switching between tabs in the tabbed pane [[#38](https://github.com/JetBrains/lets-plot-compose/issues/38)]
47+
- Display problem of lets-plot-skia when switching pages [[#42](https://github.com/JetBrains/lets-plot-compose/issues/42)]
48+
- Markdown: missing bold and italic text style support [[#44](https://github.com/JetBrains/lets-plot-compose/issues/44)]
49+
50+
851
## [2.2.1] - 2025-06-11
952

1053
### Compatibility

README.md

Lines changed: 35 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -1,97 +1,74 @@
1-
# Lets-Plot Skia Frontend
1+
# Lets-Plot Compose Frontend
22

33
[![Experimental](https://kotl.in/badges/experimental.svg)](https://kotlinlang.org/docs/components-stability.html)
44
[![JetBrains incubator project](https://jb.gg/badges/incubator.svg)](https://confluence.jetbrains.com/display/ALL/JetBrains+on+GitHub)
5-
[![License MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://raw.githubusercontent.com/JetBrains/lets-plot-skia/master/LICENSE)
6-
[![Latest Release](https://img.shields.io/github/v/release/JetBrains/lets-plot-skia)](https://github.com/JetBrains/lets-plot-skia/releases/latest)
5+
[![License MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://raw.githubusercontent.com/JetBrains/lets-plot-compose/master/LICENSE)
6+
[![Latest Release](https://img.shields.io/github/v/release/JetBrains/lets-plot-compose)](https://github.com/JetBrains/lets-plot-compose/releases/latest)
77

8-
**Lets-Plot Skia Frontend** is a Kotlin Multiplatform library that allows you to embed \
9-
[Lets-Plot](https://github.com/JetBrains/lets-plot) charts in a [Compose Multiplatform](https://github.com/JetBrains/compose-multiplatform), Java Swing or Android application.
8+
**Lets-Plot Compose Frontend** is a Kotlin Multiplatform library that allows you to embed \
9+
[Lets-Plot](https://github.com/JetBrains/lets-plot) charts in a [Compose Multiplatform](https://github.com/JetBrains/compose-multiplatform) (Desktop, Android) application.
1010

1111
### Supported Targets
12-
- **Compose Desktop** (macOS, Windows, Linux)\
13-
For more information see [Compose multiplatform compatibility and versioning overview](https://www.jetbrains.com/help/kotlin-multiplatform-dev/compose-compatibility-and-versioning.html).
14-
- **Android** (`lets-plot-skia` <= v2.0.0. New versions temporarily don't support Android due to [SKIKO-761](https://youtrack.jetbrains.com/issue/SKIKO-761))
15-
- **Java Swing**
12+
13+
- **Desktop** (macOS, Windows, Linux)
14+
- **Android**
15+
16+
For more details see [Compose multiplatform compatibility and versioning overview](https://www.jetbrains.com/help/kotlin-multiplatform-dev/compose-compatibility-and-versioning.html).
17+
1618

1719
![Splash](img-2.png)
1820

1921
## Dependencies
2022

21-
See release notes for the latest version of the dependencies: [v2.2.1](https://github.com/JetBrains/lets-plot-skia/blob/main/CHANGELOG.md#compatibility)
23+
See release notes for the latest version of the dependencies: [v2.2.1](https://github.com/JetBrains/lets-plot-compose/blob/main/CHANGELOG.md#compatibility)
2224

23-
### Compose Desktop
25+
### Compose Multiplatform for Desktop
2426

2527
```kotlin
2628
dependencies {
27-
...
28-
29-
// Lets-Plot Kotlin API
30-
implementation("org.jetbrains.lets-plot:lets-plot-kotlin-kernel:4.10.0")
29+
// Lets-Plot Kotlin API
30+
implementation("org.jetbrains.lets-plot:lets-plot-kotlin-kernel:4.11.2")
3131

32-
// Lets-Plot Multiplatform
33-
implementation("org.jetbrains.lets-plot:lets-plot-common:4.6.2")
34-
implementation("org.jetbrains.lets-plot:platf-awt:4.6.2")
32+
// Lets-Plot Multiplatform
33+
implementation("org.jetbrains.lets-plot:lets-plot-common:4.7.3")
34+
// Lets-Plot 'image export' (optional - enables exporting to raster formats)
35+
implementation("org.jetbrains.lets-plot:lets-plot-image-export:4.7.3")
3536

36-
// Lets-Plot Skia Frontend
37-
implementation("org.jetbrains.lets-plot:lets-plot-compose:2.2.1")
37+
// Lets-Plot Compose UI
38+
implementation("org.jetbrains.lets-plot:lets-plot-compose:3.0.0")
3839
}
3940
```
4041
See example: [Compose desktop](https://github.com/JetBrains/lets-plot-compose-demos/blob/main/compose-desktop/build.gradle.kts) demo.
4142

42-
### Compose Android
43-
44-
#### Note: the latest supported version is `lets-plot-skia` v2.0.0. The new versions temporarily don't support Android due to [SKIKO-761](https://youtrack.jetbrains.com/issue/SKIKO-761).
43+
### Compose Multiplatform for Android
4544

4645
```kotlin
4746
dependencies {
48-
...
49-
50-
implementation("org.jetbrains.skiko:skiko-android:0.8.4")
47+
// Lets-Plot Kotlin API
48+
implementation("org.jetbrains.lets-plot:lets-plot-kotlin-kernel:4.11.2")
5149

52-
// Lets-Plot Kotlin API
53-
implementation("org.jetbrains.lets-plot:lets-plot-kotlin-kernel:4.10.0")
50+
// Lets-Plot Multiplatform
51+
implementation("org.jetbrains.lets-plot:lets-plot-common:4.7.3")
52+
// Lets-Plot Multiplatform Android-specific dependencies
53+
implementation("org.jetbrains.lets-plot:canvas:4.7.3")
54+
implementation("org.jetbrains.lets-plot:plot-raster:4.7.3")
5455

55-
// Lets-Plot Multiplatform
56-
implementation("org.jetbrains.lets-plot:lets-plot-common:4.6.2")
57-
58-
// Lets-Plot Skia Frontend
59-
implementation("org.jetbrains.lets-plot:lets-plot-compose:2.0.0")
56+
// Lets-Plot Compose UI
57+
implementation("org.jetbrains.lets-plot:lets-plot-compose:3.0.0")
6058
}
6159
```
6260

6361
See example: [Android minimal](https://github.com/JetBrains/lets-plot-compose-demos/blob/main/compose-android-min/build.gradle.kts) demo.
6462

65-
### Java Swing
66-
67-
```kotlin
68-
dependencies {
69-
...
70-
71-
implementation("org.jetbrains.skiko:skiko:0.8.4")
72-
// The host OS and architecture should be specified explicitly.
73-
implementation("org.jetbrains.skiko:skiko-awt-runtime-macos-x64:0.8.4")
74-
75-
// Lets-Plot Kotlin API
76-
implementation("org.jetbrains.lets-plot:lets-plot-kotlin-kernel:4.10.0")
77-
78-
// Lets-Plot Multiplatform
79-
implementation("org.jetbrains.lets-plot:lets-plot-common:4.6.2")
80-
implementation("org.jetbrains.lets-plot:platf-awt:4.6.2")
81-
82-
// Lets-Plot Skia Frontend
83-
implementation("org.jetbrains.lets-plot:lets-plot-swing-skia:2.2.1")
84-
}
85-
```
8663

8764
## Examples
8865

89-
You will find complete examples of using **Lets-Plot Kotlin API** with **Lets-Plot Skia Frontend** in the following\
66+
You will find complete examples of using **Lets-Plot Kotlin API** with **Lets-Plot Compose Frontend** in the following\
9067
GitHub repository: [JetBrains/lets-plot-compose-demos](https://github.com/JetBrains/lets-plot-compose-demos).
9168

9269
## Change Log
9370

94-
See [CHANGELOG.md](https://github.com/JetBrains/lets-plot-skia/blob/master/CHANGELOG.md).
71+
See [CHANGELOG.md](https://github.com/JetBrains/lets-plot-compose/blob/master/CHANGELOG.md).
9572

9673
## Code of Conduct
9774

@@ -102,5 +79,5 @@ Please make sure you read it.
10279
## License
10380

10481
Code and documentation released under
105-
the [MIT license](https://github.com/JetBrains/lets-plot-skia/blob/master/LICENSE).
106-
Copyright © 2023-2025, JetBrains s.r.o.
82+
the [MIT license](https://github.com/JetBrains/lets-plot-compose/blob/master/LICENSE).
83+
Copyright © 2023, JetBrains s.r.o.

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ if (project.file("local.properties").exists()) {
4242

4343
allprojects {
4444
group = "org.jetbrains.lets-plot"
45-
version = "3.0.0-SNAPSHOT"
45+
version = "3.0.1-SNAPSHOT"
4646
// version = "0.0.0-SNAPSHOT" // for local publishing only
4747

4848
tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile>().all {

demo/plot/shared/src/main/kotlin/plotSpec/HyperlinkSpec.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,8 +86,8 @@ class HyperlinkSpec : PlotDemoFigure {
8686
),
8787
Item(
8888
name = "Lets-Plot\nCompose Multiplatform",
89-
documentationUrl = "https://github.com/JetBrains/lets-plot-skia",
90-
sourcesUrl = "https://github.com/JetBrains/lets-plot-skia",
89+
documentationUrl = "https://github.com/JetBrains/lets-plot-compose",
90+
sourcesUrl = "https://github.com/JetBrains/lets-plot-compose",
9191
x = 80.0, y = 250.0, size = 7.0, shape = 15, angle = 30.0
9292
),
9393
Item(

devdocs/DEVELOPMENT.md

Lines changed: 4 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -1,38 +1,3 @@
1-
### Skiko and Compose Multiplatform Versions
2-
3-
| Compose Multiplatform | Skiko |
4-
|--------------------------------------------------------------------------------------------------------|--------|
5-
| [1.7.0](https://repo1.maven.org/maven2/org/jetbrains/compose/ui/ui-desktop/1.7.0/ui-desktop-1.7.0.pom) | 0.8.15 |
6-
| [1.7.1](https://repo1.maven.org/maven2/org/jetbrains/compose/ui/ui-desktop/1.7.1/ui-desktop-1.7.1.pom) | 0.8.18 |
7-
| [1.7.3](https://repo1.maven.org/maven2/org/jetbrains/compose/ui/ui-desktop/1.7.3/ui-desktop-1.7.3.pom) | 0.8.18 |
8-
| [1.8.0](https://repo1.maven.org/maven2/org/jetbrains/compose/ui/ui-desktop/1.8.0/ui-desktop-1.8.0.pom) | 0.9.4 |
9-
| [1.8.1](https://repo1.maven.org/maven2/org/jetbrains/compose/ui/ui-desktop/1.8.1/ui-desktop-1.8.1.pom) | 0.9.4.2 |
10-
| [1.8.2](https://repo1.maven.org/maven2/org/jetbrains/compose/ui/ui-desktop/1.8.2/ui-desktop-1.8.2.pom) | 0.9.4.2 |
11-
12-
13-
Changing the version of `Skiko` or `Compose Multiplatform` may lead to compatibility issues and runtime errors like `MethodNotFound` or `ClassNotFound`.
14-
15-
The safest way to avoid these issues is to use the version of `Skiko` that was used to build your version of `Compose Multiplatform`.
16-
17-
To find the correct `Skiko` version:
18-
19-
1. Open the `.pom` file corresponding to your `Compose Multiplatform` version.
20-
2. Search within the `.pom` file for the `Skiko` version.
21-
22-
For example, if you're using `ui-desktop-1.6.10.pom`, the link will be:
23-
>https://repo1.maven.org/maven2/org/jetbrains/compose/ui/ui-desktop/1.6.10/ui-desktop-1.6.10.pom
24-
25-
At the bottom of the file, you will find the `skiko` version used to build the library.
26-
```xml
27-
<dependency>
28-
<groupId>org.jetbrains.skiko</groupId>
29-
<artifactId>skiko-awt</artifactId>
30-
<version>0.8.4</version>
31-
<scope>compile</scope>
32-
</dependency>
33-
```
34-
35-
361
### Configuring IntelliJ IDEA for Android Development
372

383
- #### Android Plugin
@@ -52,7 +17,6 @@ For example:
5217
```
5318
sdk.dir=/Users/john/Library/Android/sdk
5419
```
55-
5620
- #### Android Device
5721

5822
From menu `Tools -> Android -> Device Manager` setup Android device.
@@ -66,25 +30,17 @@ Make sure the Java 11 toolchain is installed. Otherwise, the following error may
6630
>
6731
>No locally installed toolchains match and toolchain download repositories have not been configured.
6832
69-
<a id="building-skiko-for-android"></a>
7033

71-
### Running Android demos
34+
### Running Android Demos
7235

73-
In `Run configurations`
74-
- Select `demo-plot-compose-android-min` or `demo-plot-compose-android-median` application
36+
In IDEA `Run Configurations`
37+
- Select `demo-plot-compose-android-min`, `demo-plot-compose-android-median` or another _Android App Run Configuration_
7538
- Select the `Android` device
7639
- Click `Run`
7740

41+
7842
### See also
7943

8044
[Compose-multiplatform iOS/Android Template](https://github.com/JetBrains/compose-multiplatform-ios-android-template)
8145
[Compose-multiplatform Versioning](https://github.com/JetBrains/compose-multiplatform/blob/master/VERSIONING.md)
8246

83-
### Problems with updating tools and dependencies:
84-
85-
86-
#### Compose Desktop:
87-
Since JetBrains compose version `1.4.1`, `PlotComponentProvider` do not show plot if the `repaintDelay` value is grater than 0.
88-
The reason is yet unknown.
89-
90-

devdocs/RELEASE.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,10 @@ Check all artifacts were uploaded and validated, then push the "Publish" button.
3838

3939
### Add the GitHub Release:
4040

41-
* Open the link: https://github.com/JetBrains/lets-plot-skia/releases/new
41+
* Open the link: https://github.com/JetBrains/lets-plot-compose/releases/new
4242
* Fill `Tag version` and `Release title` with the released version: "vX.X.X"
4343
* Fill the description field - copy from the CHANGELOG.md
4444

4545
### Update Dependant Projects
4646

47-
- Update the version of the `lets-plot-skia` dependency in the [lets-plot-compose-demos](https://github.com/JetBrains/lets-plot-compose-demos) project.
47+
- Update the version of the `lets-plot-compose` dependency in the [lets-plot-compose-demos](https://github.com/JetBrains/lets-plot-compose-demos) project.

future_changes.md

Lines changed: 6 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,15 @@
1-
## [3.0.0] - 2025-mm-dd
2-
3-
> [!NOTE]
4-
> The GitHub repository was renamed from `lets-plot-skia` to `lets-plot-compose`.
1+
## [3.0.1] - 2025-mm-dd
52

63
### Compatibility
7-
8-
All artifacts were built with the following versions of dependencies:
9-
- Compose Multiplatform : [1.8.2](https://github.com/JetBrains/compose-multiplatform/releases/tag/v1.8.2)
10-
- Lets-Plot Kotlin API : [4.11.2](https://github.com/JetBrains/lets-plot-kotlin/releases/tag/v4.11.2)
11-
- Lets-Plot Multiplatform : [4.7.3](https://github.com/JetBrains/lets-plot/releases/tag/v4.7.3)
124

5+
All artifacts were built with the following versions of dependencies:
6+
- Compose Multiplatform: [1.8.2](https://github.com/JetBrains/compose-multiplatform/releases/tag/v1.8.2)
7+
- Lets-Plot Kotlin API: [4.11.2](https://github.com/JetBrains/lets-plot-kotlin/releases/tag/v4.11.2)
8+
- Lets-Plot Multiplatform: [4.7.3](https://github.com/JetBrains/lets-plot/releases/tag/v4.7.3)
139

1410
### Added
1511

1612
### Changed
1713

18-
- [ **BREAKING** ] `PlotPanel` has been moved to package `org.jetbrains.letsPlot.compose` (from `org.jetbrains.letsPlot.skia.compose`).
19-
20-
21-
#### Android
22-
23-
- Removed dependency on the Skiko library.
24-
-
25-
26-
#### Desktop
27-
28-
- Pure compose implementation.
29-
- The following artifacts are no longer provided:
30-
- `platf-skia-awt`
31-
- `lets-plot-swing-skia`
32-
3314
### Fixed
34-
35-
- When zooming the page with the mouse, a black layer appears when refreshing [[#12](https://github.com/JetBrains/lets-plot-skia/issues/12)]
36-
- When using a dark theme, white lines appear on the sides of the plot [[#37](https://github.com/JetBrains/lets-plot-skia/issues/37)]
37-
- Plot rendering issues when switching between tabs in the tabbed pane [[#38](https://github.com/JetBrains/lets-plot-skia/issues/38)]
38-
- Display problem of lets-plot-skia when switching pages [[#42](https://github.com/JetBrains/lets-plot-skia/issues/42)]
39-
- Markdown: missing bold and italic text style support [[#44](https://github.com/JetBrains/lets-plot-skia/issues/44)]
15+

gradle.properties

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ kotlin.mpp.androidSourceSetLayoutVersion=2
1414
org.jetbrains.compose.experimental.uikit.enabled=true
1515

1616
#Android
17-
kotlin.android.version=2.1.0
1817
agp.version=8.6.0
1918
android.useAndroidX=true
2019
android.compileSdk=35

lets-plot-compose/build.gradle.kts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ kotlin {
6666
}
6767

6868
android {
69-
namespace = "org.jetbrains.letsPlot.skia.compose"
69+
namespace = "org.jetbrains.letsPlot.compose"
7070

7171
compileSdk = (findProperty("android.compileSdk") as String).toInt()
7272

@@ -105,13 +105,13 @@ afterEvaluate {
105105
artifact(tasks.jarJavaDocs)
106106

107107
pom {
108-
name.set("Lets-Plot Skia Frontend")
109-
description.set("Skia frontend for Lets-Plot multiplatform plotting library.")
110-
url.set("https://github.com/JetBrains/lets-plot-skia")
108+
name.set("Lets-Plot Compose Frontend")
109+
description.set("Compose frontend for Lets-Plot multiplatform plotting library.")
110+
url.set("https://github.com/JetBrains/lets-plot-compose")
111111
licenses {
112112
license {
113113
name.set("MIT")
114-
url.set("https://raw.githubusercontent.com/JetBrains/lets-plot-skia/master/LICENSE")
114+
url.set("https://raw.githubusercontent.com/JetBrains/lets-plot-compose/master/LICENSE")
115115
}
116116
}
117117
developers {
@@ -122,7 +122,7 @@ afterEvaluate {
122122
}
123123
}
124124
scm {
125-
url.set("https://github.com/JetBrains/lets-plot-skia")
125+
url.set("https://github.com/JetBrains/lets-plot-compose")
126126
}
127127
}
128128
}

0 commit comments

Comments
 (0)