You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: blog/2023-11-30-kcl-0.7.0-release/index.md
+27-52Lines changed: 27 additions & 52 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,5 @@
1
1
---
2
-
slug: 2023-09-15-kcl-0.7.0-release
2
+
slug: 2023-11-30-kcl-0.7.0-release
3
3
title: KCL v0.7.0 Release Blog
4
4
authors:
5
5
name: KCL Team
@@ -39,7 +39,7 @@ The new KCL CLI will continue to use `kcl` as the command prefix, and currently
39
39
40
40
We have tried to add repair suggestions in some error messages. If you are frustrated by the KCL compilation failure, you may wish to listen to the compiler's suggestions.
41
41
42
-
```
42
+
```python
43
43
import sub as s1
44
44
45
45
The_first_kcl_program = s.The_first_kcl_program
@@ -57,11 +57,11 @@ KCL cannot find the third-party library used in the package? Try `kcl mod add`,
57
57
58
58
#### Removed indentation check in some code blocks
59
59
60
-
In some code blocks, whether the indentation is aligned has become less important.
60
+
In some code blocks, whether the indentation is aligned has become less important.
61
61
62
62
If your code is written like this
63
63
64
-
```
64
+
```python
65
65
schema TestIndent:
66
66
name: str
67
67
msg: str
@@ -82,40 +82,32 @@ In the past, you may have encountered a lot of red errors, but now this is not a
82
82
83
83
In the new version of KCL, we have added type annotations for lambda expressions, and you can write lambda with type annotations in the new version of KCL.
- New KCL unit test API: _[https://github.com/kcl-lang/kcl/pull/904](https://github.com/kcl-lang/kcl/pull/904)_
100
-
101
99
- KCL schema parsing API enhancement version `GetFullSchemaType` supports obtaining KCL package related information with third-party libraries. _[https://github.com/kcl-lang/kcl/pull/906](https://github.com/kcl-lang/kcl/pull/906)_
102
-
103
100
- New KCL symbol renaming API: _[https://github.com/kcl-lang/kcl/pull/890](https://github.com/kcl-lang/kcl/pull/890)_
- KCL has designed and restructured a new semantic model, as well as an API that supports nearest symbol search and symbol semantic information query.
148
+
- The migration of IDE completion, jump, and hover functions to new semantic models significantly reduces the difficulty and code volume of IDE development.
149
+
- The KCL compiler supports syntax incremental parsing and semantic incremental checking, which improves the performance of KCL compilation, construction, and IDE plugin usage in most scenarios by **5-10 times**.
150
+
151
+
#### KCL IDE other updates and bug fixes
152
+
153
+
- KCL IDE extension for IntelliJ 2023.2+
155
154
- Fix the problem that the language service virtual file system related bug: the file dimension change will cause the language service to crash and must be restarted to recover, which has now been fixed.
156
155
- Support import statement completion of external package dependencies introduced by package management tools
157
156
- Fix the display position of the function parameter undefined type error
158
157
159
158
### Test Tool Updates
160
159
161
-
Are you worried that your KCL program is written incorrectly? Why not come and test it? This update provides a new KCL test tool.
160
+
Are you worried that your KCL program is written incorrectly? Why not come and test it? This update provides a new KCL test tool.
162
161
163
162
The new KCL test tool supports writing unit tests using KCL lambda and executing tests using the tool.
164
163
165
164
You can write your test cases through lambda expressions in the file with the suffix `_test.k`.
166
165
167
-
```
168
-
import manifests
169
-
166
+
```python
170
167
import .app
171
168
172
169
# Convert the `App` model into Kubernetes Deployment and Service Manifests
@@ -195,7 +192,6 @@ If your test fails, `kcl test` will output error information to help you trouble
The `update` command is added to the `kcl mod` command. The `update` command is used to automatically update local dependencies. `kcl mod update` will automatically download the missing third-party libraries for you. For details, please refer to: https://github.com/kcl-lang/kpm/pull/212
@@ -206,7 +202,7 @@ The KCL Import tool supports one-click generation of KCL configuration/models fr
206
202
207
203
If you have the following yaml file:
208
204
209
-
```
205
+
```yaml
210
206
apiVersion: apps/v1
211
207
kind: Deployment
212
208
metadata:
@@ -232,7 +228,7 @@ spec:
232
228
233
229
You can convert it to a KCL program through the command `kcl import test.yaml`.
234
230
235
-
```
231
+
```python
236
232
"""
237
233
This file was generated by the KCL auto-gen tool. DO NOT EDIT.
238
234
Editing this file might prove futile when you re-run the KCL auto-gen generate command.
@@ -280,7 +276,7 @@ More details: https://kcl-lang.io/docs/user_docs/guides/working-with-k8s/adopt-f
280
276
281
277
## Community Integrations & Extensions Updates
282
278
283
-
### KCL Marketplace artifacthub.io
279
+
### KCL Marketplace with ArtifactHub
284
280
285
281
Through the integration of artifacthub.io, we have built a KCL third-party library market, where you can share your KCL programs with us. You can also choose freely and find the KCL third-party library that suits you!
286
282
@@ -302,7 +298,7 @@ Contributing to KCL Marketplace: https://kcl-lang.io/docs/user_docs/guides/packa
302
298
303
299
## Other Updates
304
300
305
-
The Full Update and Error Fix List of KCL v0.7.0 can be found at: https://github.com/kcl-lang/kcl/compare/v0.6.0...v0.7.0
301
+
The full update and bugfix List of KCL v0.7.0 can be found at: https://github.com/kcl-lang/kcl/compare/v0.6.0...v0.7.0
306
302
307
303
## Document Updates
308
304
@@ -316,29 +312,9 @@ The versioning semantic option is added to the [KCL website](https://kcl-lang.io
316
312
317
313
More details - https://kcl-lang.io/blog/2023-09-19-kcl-joining-cncf-sandbox/
318
314
319
-
### Thanks to the community for their contributions
320
-
321
-
- Thanks to @jakezhu9 for his contribution to the KCL Import tool Terraform Schema to KCL Schema conversion π _[https://github.com/kcl-lang/kcl-go/pull/152](https://github.com/kcl-lang/kcl-go/pull/152)_
322
-
323
-
- Thanks to @jakezhu9 for his contribution to the KCL Import tool Terraform Schema to KCL Schema conversion _[https://github.com/kcl-lang/kpm/pull/194](https://github.com/kcl-lang/kpm/pull/194)_
324
-
325
-
- Thanks to @jakezhu9 for his contribution to the KCL Import tool Terraform Schema to KCL Schema conversion π _[https://github.com/kcl-lang/tree-sitter-kcl/pull/1](https://github.com/kcl-lang/tree-sitter-kcl/pull/1)_
326
-
327
-
- Thanks to @jakezhu9 for his contribution to the KCL Import tool Terraform Schema to KCL Schema conversion π _[https://github.com/kcl-lang/kcl/pull/794](https://github.com/kcl-lang/kcl/pull/794)_
328
-
329
-
- Thanks to @opsnull for his correction and contribution to the code examples in the KCL official website documentation π _[https://github.com/kcl-lang/kcl-lang.io/pull/182](https://github.com/kcl-lang/kcl-lang.io/pull/182)_
330
-
331
-
- Thanks to @prahaladramji for his correction and optimization of the KCL IntelliJ plugin formatting function π _[https://github.com/kcl-lang/intellij-kcl/pull/15](https://github.com/kcl-lang/intellij-kcl/pull/15)_
332
-
333
-
- Thanks to @jakezhu9 for his improvement of the KCL syntax parsing unit test, and unified some test cases to use the snaptest framework π _[https://github.com/kcl-lang/kcl-go/pull/170](https://github.com/kcl-lang/kcl-go/pull/170)_
334
-
335
-
- Thanks to @liangyuanpeng for his contribution of the karmada model package to the KCL model π _[https://github.com/kcl-lang/artifacthub/pull/48/files](https://github.com/kcl-lang/artifacthub/pull/48/files)_
336
-
337
-
- Thanks to @mrgleeco, @ghpu, @steeling, @prahaladramji, @zwpaper and others for their valuable feedback and discussion in the use of KCL and toolchain π
338
-
339
315
## Next Steps
340
316
341
-
-We expect to release KCL v0.8.0 in February 2024. For more details, please refer to KCL 2024 Roadmap and KCL v0.8.0 Milestone. If you have more ideas and needs, please feel free to raise Issues or Discussions in the KCL Github repository, and welcome to join our community for discussion π π π
317
+
We expect to release KCL v0.8.0 in February 2024. For more details, please refer to KCL 2024 Roadmap and KCL v0.8.0 Milestone. If you have more ideas and needs, please feel free to raise Issues or Discussions in the KCL Github repository, and welcome to join our community for discussion π π π
0 commit comments