kcl

KCL Programming Language (CNCF Sandbox Project). https://kcl-lang.io

APACHE-2.0 License

Downloads
11.9K
Stars
1.2K
Committers
31

Bot releases are hidden (Show)

kcl - v0.4.4 Release

Published by Peefy over 1 year ago

v0.4.4 Release

  • PR #392 Feat(kclvm-win): remove the "kclvm.requirements.done.txt" on windows.
  • PR #391 Fix config if entry type unsoundness
  • PR #385 Refactor(kclvm-win): rm python39 for kclvm-windows.
  • PR #384 fix: resolver ty mismatch in the assign statement with the schema type annotation
  • PR #383 refactor: using absolute path in exec program api.
  • PR #382 Feat(kclvm-win): rm py39-libs in kclvm-windows.

Full Change Log v0.4.3...v0.4.4

kcl - v0.4.4-beta.2 Release

Published by Peefy almost 2 years ago

v0.4.4-beta.2 Release

  • PR #381 fix: package global variable reference in schema
  • PR #378 fix: module type optional chain error message.
  • PR #376 docs: update developing guide about windows and building scripts.
  • PR #375 fix: kcl docker image release in action
  • PR #374 refactor: release github action.
  • PR #371 Delete debug_api.rs
  • PR #370 feat: image release with release badge.
  • PR #369 feat: add docker image CD in github actions and format all action YAML files.
  • PR #363 refactor: upgrade kclvm dockerfile ubuntu version
  • PR #362 fix: config entry identifier key type infer.
  • PR #361 fix: input relative path in the exec_program function.
  • PR #359 Feat(kclvm-win): Before calling the python version of kclvm in kcl.go check if kclvm is installed.
  • PR #358 Fix(kclvm-win): Added the missing kclvm-python in build.bat.
  • PR #356 chore: bump kcl website links in docs.
  • PR #355 chore: remove un-used code in building scripts
  • PR #353 Feat(compiler_base_error): Added methods to support redirection of compiler_base_error::emitter.
kcl - v0.4.4-beta.1 Release

Published by Peefy almost 2 years ago

v0.4.4-beta.1 Release

  • PR #347 docs: bump kcl-lang.github.io to kcl-lang.io
  • PR #345 Feat(kclvm): add linking args for cl.exe on windows and add build.bat for build kclvm on windows.
  • PR #344 refactor: update readme content with the kcl website instead of the kusion stack website
  • PR #343 refactor : remove libkclvm
  • PR #340 Add Linker with external cc for windows release.
  • PR #324 Fix(kclvm-lexer): Get the source code str from 'SourceMap'.
  • PR #330 refactor : import kclvm capi function into src/lib.rs
  • PR #331 fix : support list/dict subscript format in KCL string
  • PR #329 refactor: add build target to cache path
  • PR #334 fix: yaml steam decode and sync API call in main.rs and lib.rs
  • PR #327 feat: add kclvm release dockerfile
  • PR #326 enhance: config unification conflict value error message
  • PR #321 fix : generate rule construct function correctly
  • PR #318 refactor: enhance panic info in schema
  • PR #319 docs: update README-zh header.
  • PR #317 refactor: remove rust std lib deps in libkclvm release
kcl - v0.4.4-alpha.2 Release

Published by Peefy almost 2 years ago

v0.4.4-alpha.2 Release

  • PR #312 chore: remove unused internal files.
  • PR #311 refactor: refine runtime kcl value yaml encoding and planning.
  • PR #310 refactor: remove internal kclvm python
  • PR #309 fix : encode yaml with opts
  • PR #308 feat: impl custom manifests output in the KCL UI and add more UI tests
  • PR #307 refactor: use external kclvm_py through pip in scripts
  • PR #305 chore: clean kclvm_py pip requirements.
  • PR #304 feat: auto-gen manifests yaml_stream runtime func.
  • PR #303 feat: reduce binaries size, remove internal python
  • PR #302 refactor: all ast ty filed remove #[serde(skip_serializing)]
  • PR #300 refactor: run cargo clippy --fix at the kclvm_tools crate.
  • PR #299 refactor: add index check error message in args check
  • PR #298 refactor: use default_factory field in dataclass because it will raise an error on python3.10+
  • PR #295 fix : use hoisting to avoid refer to uninitialized variable
  • PR #294 fix: long string quote in the AST printer tool
  • PR #289 fix : avoid borrowing same ref in ValRef.union
kcl - v0.4.4-alpha.1 Release

Published by Peefy almost 2 years ago

v0.4.4-alpha.1 Release

  • PR #288 fix : panic caused by duplicated keys in schema
  • PR #287 Fix(kclvm-codegen):rename kclvm function by 'pkgpath' and suffix 'kclvm_lambda'.
  • PR #284 chore: bump kclvm version to 0.4.4
  • PR #279 Fix(KCL-Vet): Turn the execution mode of kclvm-runner test cases from parallel to serial.
  • PR #278 Fix(KCL-Vet): Turn the execution mode of KCL-Vet's test cases from parallel to serial.
  • PR #276 refactor : use std::cell::RefCell to manege Value
  • PR #273 refactor: compiling kcl code to object file instead of dylib and packaging LLVM lld library statically into kclvm binary.
  • PR #272 Fix(kclvm-runner): Added different file locks depending on the curren…
  • PR #269 Feat(compiler-base-session): Update the new `compiler-base-error/Diag…
  • PR #267 Feat(compiler-base-error): add default() to DiagnosticHandler.
  • PR #264 refactor: refine kclvm codegen and runner for simplifying binary rele…
  • PR #262 refactor : use std::box to avoid unnecessary memory alloc
  • PR #261 Refactor: remove cargo clippy errors & warnings from runtime
  • PR #260 Feat(compiler-base-session): Add some methods for Session.
  • PR #259 Feat(compiler-base-error): impl trait Debug for DiagnosticHandler and DiagnosticHandlerInner.
  • PR #258 Feat(compiler-base-error): Implement trait Debug and PartialEq for Diagnostic.
  • PR #257 Feat(compiler-base-error): make StyledBuffer, StyledString pub in compiler-base-error.
  • PR #256 Feat(rustc_error): add trait Debug, PartialEq, Eq for StyledBuffer, StyledString and StyledChar
  • PR #255 Update compiler base version
  • PR #254 Feat(compiler_base_session): add a new contructor to Session.
  • PR #252 Feat(compiler-base-error): remove the newline at the end of component…
  • PR #249 Fix(compiler-base-error): CodeSnippet component generates the line …
  • PR #248 Feat(compiler_base):add codecov for compiler_base in CI.
  • PR #246 Refactor(compiler-base): refactor method in DiagnosticHandler.
  • PR #245 Feat(compiler-base-session): Add some method for 'Session'.
  • PR #244 Feat(kclvm-version): change new checksum for new version.
kcl - v0.4.3 Release

Published by Peefy about 2 years ago

v0.4.3 Release

  • PR #242 Fix(kclvm-runner): Before returning the result information, add 'Result::Ok' or 'Result::Err'.
  • PR #239 Refactor(kcl-vet): Add method 'validate()' as the entry point of KCL-Vet.
  • PR #238 feat: add community link in readme.
  • PR #237 Fix(kclvm-parser): return loading file failed error message from meth…
  • PR #235 refactor: replace json_minimal with serde_json
  • PR #234 Feat(kclvm-sema): Update outdated bench tests.
  • PR #233 Fix(kclvm-runner): fix linker bug.
  • PR #232 Fix(kclvm-codegen): fix schema back ref.
  • PR #230 refactor(kcl-vet): move 'schema_name' from struct to mathod generate.
  • PR #229 refactor(kclvm-tools): move 'query' out of 'kclvm-tools'.
  • PR #228 Refactor(kclvm-tools): move 'printer' from 'kclvm-tools' to 'kclvm-ast'.
  • PR #227 Create CODE_OF_CONDUCT.md using the default template.
  • PR #224 Feat(kcl-vet): add ast builder for kcl-vet.
  • PR #221 refactor: enhance config override at compile time.
  • PR #219 Feat(kclvm-tools): add json/yaml file loader for KCL-Vet.
  • PR #218 refactor: refine cli functions with api and evaluation error into the…
  • PR #217 chore: bump protobuf deps to 3.19.5
  • PR #216 Delim recovery
  • PR #215 Fix(kclvm-runner): Fixed file locks in kclvm-runner.
  • PR #211 refactor(compiler_base): new version for crate.io
  • PR #210 Fix(compiler_base): fix file path bug in DiagnosticHandler::default().
  • PR #209 Refactor(compiler_base): refactor struct Session.
  • PR #208 Fix(compiler_base): Refactoring the way imports Compiler_Base.
  • PR #207 feat(compiler_base): add config for crate.io.
  • PR #206 Feat(compiler_base): add compiler_base_session
  • PR #205 chore: bump cli clap deps to latest, use new apis and remove unused a…
  • PR #204 refactor(compiler-base): remove compiler-base in kclvm.
  • PR #203 refactor: refine links in readme.
  • PR #199 chore: add the constraints word link.
  • PR #197 Feat(Compiler-Base): Add package config in cargo.toml and README.md.
  • PR #195 Enhance readme: add how-to-choose
  • PR #194 refactor(compiler_base): fix warnings by 'cargo clippy' for Compiler_Base.
  • PR #192 refactor(compiler-base): move 'compiler_base' from 'KCLVM/kclvm' to 'KCLVM'.
  • PR #190 Feat(Compiler-Base): Add code snippet component
  • PR #186 Feat(compiler-base): add util functions to span.
  • PR #185 Refactor(compiler-base): refactor trait component and add errors.
  • PR #182 docs: refine KCLVM readme
  • PR #181 Fix: lint docs error
  • PR #179 feat: add override print args in the exec function.
  • PR #177 chorm : remove kclvm/hello.k
  • PR #176 Fix(compiler-base): fix doc string mistakes.
kcl - v0.4.3-alpha.1 Release

Published by Peefy about 2 years ago

v0.4.3-alpha.1 Release

  • PR #167 chore: bump kclvm version to 0.4.3
  • PR #175 fix : memory leak caused by closure
  • PR #173 feat: support call kclvm service by go rpc server
  • PR #172 feat: impl format and override relative import and add more unit test cases
  • PR #169 feat : support kclvm cli capi call
  • PR #168 Kclvm capi call
  • PR #166 perf : kclvm runtime memory management
  • PR #164 Feat(compiler-base): add error message.
  • PR #163 refactor: use YAML plan with delimiter in KCLVM Rust ver
  • PR #161 re: config merge when input same files on load_program.
  • PR #160 Refactor: KCL Lint(Rust ver.)
  • PR #159 fix: unification statement resolve with package schema.
  • PR #158 Fix: Record used module
  • PR #157 Feat: add warning kind diagnostic
  • PR #156 Feat: add kclvm_cli lint command to kclvm_cli
  • PR #155 refactor: remove in-place union operator |= UI test cases.
  • PR #154 Feat(Compiler-Base): Reuse kclvm emitter
  • PR #152 Refactor(compiler-base): Replaced DiagnosticStyle in trait Component with generic T: Clone + PartialEq + Eq + Style.
  • PR #151 Feat(compiler-base): reuse kclvm bug macro.
  • PR #150 Feat(compiler-base): reuse 'rustc_span' for code location.
  • PR #148 chore: add rust code format check in github actions.
  • PR #146 Feat(compiler-base): add 'Diagnostic' to compiler_base/error
  • PR #145 Feat(compiler-base): add diagnostic style.
  • PR #142 Feat(compiler-base-error): reuse rustc_error 'StyledBuffer' in compiler-base.
kcl - v0.4.2-alpha.5

Published by Peefy about 2 years ago

v0.4.2-alpha.5 Release

  • PR #140 Fix kclvm cli args parse for -Y
  • PR #138 Refactor kclvm exec api using cli
  • PR #133 feat: record whether a module has been used in ScopeObject
  • PR #131 Fix(github action): modify rust toolchain version.
  • PR #128 Fix(resolver): fix incorrect position info of CannotFindModule Error.
  • PR #124 refactor: add macos build and test github actions and refine windows …
  • PR #120 refactor: support import deduplication for different aliased packages…
  • PR #119 chore: format all code ready for adding cargo format check point in G…
  • PR #114 refactor: deprecate the ./CONTRIBUTING.md and use ./docs/dev_guide/1.…
  • PR #113 test: add grammar and runtime tests on rust kclvm in the github acti…
  • PR #110 test: add exec benchmark and unit test suites.
  • PR #108 refactor: refine cycle reference error messages and add unit test cases.
  • PR #100 Refine illegal attr ty err msg
  • PR #98 fix: script remove extended attributes
  • PR #95 refactor: upgrade rust-crypto deps because of the miscomputation when…
  • PR #91 fix: issue #90 on config_expr type infer.
  • PR #88 fix: ast printer issue on if stmt and unary expr.
  • PR #87 fix: schema init in same pkg and add more unit test cases.
  • PR #85 feat: add rust code coverage in makefile and github actions.
  • PR #83 fix: kclvm-builder-centos8 docker image
  • PR #80 chore(plugins): bump plugins submodule
  • PR #78 fix: list if expression unpacking type error.
  • PR #76 chore: bump regex crate version to 1.5.5 because of CVE-2022-24713.
kcl - v0.4.2-alpha.4 Release

Published by Peefy over 2 years ago

v0.4.2-alpha.4

Changes

  • PR #74 refactor: use temp main codegen output and more documents on dylib cache read/write.
  • PR #64 chore: bump plugins submodule to 23fc581d
  • PR #63 Create cla.yml
  • PR #60 refactor: remove internal Issue and PR templates and use .github temp…
  • PR #56 doc: Update setup document for m1 mac: install llvm@12 via homebrew
  • PR #51 fix: the panic output information of "invalid number" is formatted using PanicInfo.

Documentation

Detailed documentation is available at https://kusionstack.io/

kcl - v0.4.2-alpha.3 Release

Published by Peefy over 2 years ago

v0.4.2-alpha.3

Changes

  • PR #42 refactor: modify main pkg front import.
  • PR #41 fix: fix an array out of bounds issue in parser/src/lexer/lex_token()
  • PR #40 fix: main so not found on ubuntu issue.
  • PR #38 fix: the panic output information of "invalid binary operation" is formatted using PanicInfo.
  • PR #36 fix: ast printer on comment and lambda nodes because of the parser is…
  • PR #33 fix clang path
  • PR #32 feat: add a fuzz test for kclvm-parser.parse_expr.

Documentation

Detailed documentation is available at https://kusionstack.io/

kcl - v0.4.2-alpha.2 Release

Published by Peefy over 2 years ago

v0.4.2-alpha.2

Changes

  • PR #31 Fix cargo test
  • PR #30 fix: disable print panic info
  • PR #28 chore: bump version to 0.4.2
  • PR #27 refactor: parser return recoverable Errors with Result
  • PR #26 refactor: modify error output.
  • PR #25 Fix rest api compiler err
  • PR #24 Remove statistics for some code types
  • PR #23 Dev/peefy/refactor kclvm code
  • PR #22 refactor: Upgrade PyYAML dependencies.
  • PR #21 fix: string key node unify in the config.
  • PR #20 refactor: adjusted some macros in kclvm-parser and add some methods in kclvm-ast
  • PR #19 refactor: a temporary adjustment for aborting after error in kclvm-sema.
  • PR #18 Dev/peefy/refactor sema code
  • PR #14 feat: add kclvm-windows.zip build to windows github action
  • PR #13 feat: add cargo build to windows github action
  • PR #12 refactor: refine some code and comments in the sema crate.
  • PR #9 feat: add plugins submodule.
  • PR #8 refactor: move script folder into internal.
  • PR #7 refactor: refine KCLVM repo.
  • PR #6 fix: add pos to comment node
  • PR #5 Dev/peefy/feat printer tool
  • PR #4 fix: comment parser
  • PR #3 Dev/peefy/query tools
  • PR #2 feat: add tools::printer module.
  • PR #1 fix: pkgpath prefix replace.

Documentation

Detailed documentation is available at https://kusionstack.io/

kcl - v0.4.2-alpha.1 Release

Published by Peefy over 2 years ago

v0.4.2-alpha.1

Changes

The first open-source release mainly includes a KCL compiler and multiple language tools.

  • kcl. The language compiler.
  • kcl-fmt. The KCL format tool.
  • kcl-test. The KCL test tool.
  • kcl-vet. The KCL validation tool.
  • kcl-lint. The KCL lint tool.
  • kcl-doc. The KCL document tool.
  • kcl-plugin. The KCL plugin tool.

Documentation

Detailed documentation is available at https://kusionstack.io

Package Rankings
Top 8.23% on Crates.io
Top 6.02% on Proxy.golang.org
Top 37.78% on Pypi.org
Badges
Extracted from project README
 GitHub Codespaces FOSSA Status