Skip to content

Commit f7160c5

Browse files
chore(release): prepare v0.6.0
1 parent 5a1b39d commit f7160c5

21 files changed

Lines changed: 115 additions & 86 deletions

File tree

CHANGELOG.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,35 @@
22

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

5+
## [0.6.0](https://github.com/PLC-lang/rusty/releases/tag/v0.6.0) - 2026-06-03
6+
7+
### Added
8+
9+
- Add hwmap sidecar (#1731)
10+
- **codegen**: Embed compiler version in compiled artifacts via llvm.ident (#1733)
11+
12+
### Fixed
13+
14+
- **resolver**: Enum names should resolve correctly when they collide with pou names (#1761)
15+
- Only error out on non existing files (not globs) (#1762)
16+
- **validation**: Reject THIS.<member> without dereference (#1729)
17+
- **parser**: Recover from unexpected tokens in expression position (#1709)
18+
- **codegen**: Emit signext/zeroext on sub-32-bit integer parameters (#1708)
19+
- **validation**: Flag wrong assignment direction at call sites (#1710)
20+
- **project**: Validate file/include paths and reject empty input sets (#1713)
21+
- **preprocessor**: Bind POU-scoped AT addresses to backing __PI_* global (#1737)
22+
- **validation**: Reject FB-level VAR_TEMP referenced from a METHOD (#1746)
23+
- **typesystem**: Wrong downcast warning when assigning numeric literal to SINT (#1753)
24+
- **parser**: Focused diagnostic for reserved keywords in name slots (#1735)
25+
- Properties now support the REFERENCE TO type (#1701)
26+
- **linker**: Wrap spawn errors with diagnostic context and route long invocations through a response file (#1722)
27+
- **codegen**: Drop ptr→aggregate bitcast on by-ref argument pass (#1742)
28+
- **codegen**: Ptrtoint pointer operands in int binary arithmetic (#1751)
29+
- **lowering**: Disambiguate per-unit ctor symbols by path hash (#1724)
30+
31+
### Documentation
32+
33+
- Update AGENTS.md (#1754)
534
## [0.5.0](https://github.com/PLC-lang/rusty/releases/tag/v0.5.0) - 2026-05-06
635

736
### Added

Cargo.lock

Lines changed: 18 additions & 18 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "plc-compiler"
3-
version = "0.5.0"
3+
version = "0.6.0"
44
authors = [
55
"Ghaith Hachem <ghaith.hachem@gmail.com>",
66
"Mathias Rieder <mathias.rieder@gmail.com>",
@@ -18,19 +18,19 @@ default = []
1818
verify = []
1919

2020
[dependencies]
21-
plc_source = { path = "./compiler/plc_source", version = "0.5.0" }
22-
plc_ast = { path = "./compiler/plc_ast", version = "0.5.0" }
23-
plc_util = { path = "./compiler/plc_util", version = "0.5.0" }
24-
plc_diagnostics = { path = "./compiler/plc_diagnostics", version = "0.5.0" }
25-
plc_index = { path = "./compiler/plc_index", version = "0.5.0" }
26-
section_mangler = { path = "./compiler/section_mangler", version = "0.5.0" }
27-
plc_llvm = { path = "./compiler/plc_llvm", version = "0.5.0" }
21+
plc_source = { path = "./compiler/plc_source", version = "0.6.0" }
22+
plc_ast = { path = "./compiler/plc_ast", version = "0.6.0" }
23+
plc_util = { path = "./compiler/plc_util", version = "0.6.0" }
24+
plc_diagnostics = { path = "./compiler/plc_diagnostics", version = "0.6.0" }
25+
plc_index = { path = "./compiler/plc_index", version = "0.6.0" }
26+
section_mangler = { path = "./compiler/section_mangler", version = "0.6.0" }
27+
plc_llvm = { path = "./compiler/plc_llvm", version = "0.6.0" }
2828
logos.workspace = true
2929
clap = { version = "3.0", features = ["derive"] }
3030
indexmap = { workspace = true, features = ["serde"] }
3131
generational-arena = { version = "0.2.8", features = ["serde"] }
3232
shell-words = "1.1.0"
33-
plc_derive = { path = "./compiler/plc_derive", version = "0.5.0" }
33+
plc_derive = { path = "./compiler/plc_derive", version = "0.6.0" }
3434
which.workspace = true
3535
siphasher = "1"
3636
log.workspace = true
@@ -49,13 +49,13 @@ tempfile.workspace = true
4949
num = "0.4"
5050
insta.workspace = true
5151
pretty_assertions = "1.3.0"
52-
driver = { path = "./compiler/plc_driver/", package = "plc_driver", version = "0.5.0" }
53-
project = { path = "./compiler/plc_project/", package = "plc_project", version = "0.5.0", features = [
52+
driver = { path = "./compiler/plc_driver/", package = "plc_driver", version = "0.6.0" }
53+
project = { path = "./compiler/plc_project/", package = "plc_project", version = "0.6.0", features = [
5454
"integration",
5555
] }
56-
plc_xml = { path = "./compiler/plc_xml", version = "0.5.0" }
56+
plc_xml = { path = "./compiler/plc_xml", version = "0.6.0" }
5757
test_utils = { path = "./tests/test_utils" }
58-
plc_lowering = { path = "./compiler/plc_lowering", version = "0.5.0" }
58+
plc_lowering = { path = "./compiler/plc_lowering", version = "0.6.0" }
5959
serial_test = "*"
6060
tempfile.workspace = true
6161
encoding_rs.workspace = true

compiler/plc_ast/Cargo.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
[package]
22
name = "plc_ast"
3-
version = "0.5.0"
3+
version = "0.6.0"
44
edition = "2021"
55
license = "LGPL-3.0"
66
description = "AST types for the PLC Structured Text compiler"
77

88
[dependencies]
9-
plc_util = { path = "../plc_util", version = "0.5.0" }
10-
plc_source = { path = "../plc_source", version = "0.5.0" }
9+
plc_util = { path = "../plc_util", version = "0.6.0" }
10+
plc_source = { path = "../plc_source", version = "0.6.0" }
1111
chrono.workspace = true
1212
# Enabled the RC feature (for Arc<T>) see: https://serde.rs/feature-flags.html#-features-rc
1313
serde = { workspace = true, features = ["rc"] }

compiler/plc_derive/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "plc_derive"
3-
version = "0.5.0"
3+
version = "0.6.0"
44
edition = "2021"
55
license = "LGPL-3.0"
66
description = "Derive macros for the PLC Structured Text compiler"

compiler/plc_diagnostics/Cargo.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
[package]
22
name = "plc_diagnostics"
3-
version = "0.5.0"
3+
version = "0.6.0"
44
edition = "2021"
55
license = "LGPL-3.0"
66
description = "Diagnostics and error reporting for the PLC Structured Text compiler"
77

88
[dependencies]
99
codespan-reporting = "0.12"
10-
plc_ast = { path = "../plc_ast", version = "0.5.0" }
11-
plc_source = { path = "../plc_source", version = "0.5.0" }
10+
plc_ast = { path = "../plc_ast", version = "0.6.0" }
11+
plc_source = { path = "../plc_source", version = "0.6.0" }
1212
serde_json.workspace = true
1313
serde.workspace = true
1414
toml.workspace = true

compiler/plc_driver/Cargo.toml

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "plc_driver"
3-
version = "0.5.0"
3+
version = "0.6.0"
44
edition = "2021"
55
build = "build.rs"
66
license = "LGPL-3.0"
@@ -9,15 +9,15 @@ description = "IEC 61131-3 Structured Text compiler"
99
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
1010

1111
[dependencies]
12-
plc = { path = "../..", package = "plc-compiler", version = "0.5.0" }
13-
ast = { path = "../plc_ast/", package = "plc_ast", version = "0.5.0" }
14-
project = { path = "../plc_project/", package = "plc_project", version = "0.5.0" }
15-
source_code = { path = "../plc_source/", package = "plc_source", version = "0.5.0" }
16-
cfc = { path = "../plc_xml/", package = "plc_xml", version = "0.5.0" }
17-
plc_diagnostics = { path = "../plc_diagnostics/", version = "0.5.0" }
18-
plc_index = { path = "../plc_index", version = "0.5.0" }
19-
plc_lowering = { path = "../plc_lowering", version = "0.5.0" }
20-
plc_header_generator = { path = "../plc_header_generator", version = "0.5.0" }
12+
plc = { path = "../..", package = "plc-compiler", version = "0.6.0" }
13+
ast = { path = "../plc_ast/", package = "plc_ast", version = "0.6.0" }
14+
project = { path = "../plc_project/", package = "plc_project", version = "0.6.0" }
15+
source_code = { path = "../plc_source/", package = "plc_source", version = "0.6.0" }
16+
cfc = { path = "../plc_xml/", package = "plc_xml", version = "0.6.0" }
17+
plc_diagnostics = { path = "../plc_diagnostics/", version = "0.6.0" }
18+
plc_index = { path = "../plc_index", version = "0.6.0" }
19+
plc_lowering = { path = "../plc_lowering", version = "0.6.0" }
20+
plc_header_generator = { path = "../plc_header_generator", version = "0.6.0" }
2121

2222
serde.workspace = true
2323
serde_json.workspace = true
@@ -34,7 +34,7 @@ encoding_rs.workspace = true
3434
encoding_rs_io.workspace = true
3535
anyhow.workspace = true
3636
itertools.workspace = true
37-
plc_util = { path = "../plc_util", version = "0.5.0" }
37+
plc_util = { path = "../plc_util", version = "0.6.0" }
3838

3939
[dev-dependencies]
4040
pretty_assertions = "1.3.0"

compiler/plc_header_generator/Cargo.toml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
[package]
22
name = "plc_header_generator"
3-
version = "0.5.0"
3+
version = "0.6.0"
44
edition = "2021"
55
license = "LGPL-3.0"
66
description = "C header file generator for the PLC Structured Text compiler"
77

88
[dependencies]
9-
plc = { path = "../..", package = "plc-compiler", version = "0.5.0" }
10-
plc_diagnostics = { path = "../plc_diagnostics/", version = "0.5.0" }
11-
plc_ast = { path = "../plc_ast/", version = "0.5.0" }
12-
plc_source = { path = "../plc_source/", version = "0.5.0" }
9+
plc = { path = "../..", package = "plc-compiler", version = "0.6.0" }
10+
plc_diagnostics = { path = "../plc_diagnostics/", version = "0.6.0" }
11+
plc_ast = { path = "../plc_ast/", version = "0.6.0" }
12+
plc_source = { path = "../plc_source/", version = "0.6.0" }
1313
tera = "1"
1414
clap = { version = "3.0", features = ["derive"] }
1515
regex.workspace = true

compiler/plc_index/Cargo.toml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
[package]
22
name = "plc_index"
3-
version = "0.5.0"
3+
version = "0.6.0"
44
edition = "2021"
55
license = "LGPL-3.0"
66
description = "Symbol index and type system for the PLC Structured Text compiler"
77

88
[dependencies]
9-
plc_ast = { path = "../plc_ast", version = "0.5.0" }
10-
plc_source = { path = "../plc_source", version = "0.5.0" }
11-
plc_diagnostics = { path = "../plc_diagnostics", version = "0.5.0" }
9+
plc_ast = { path = "../plc_ast", version = "0.6.0" }
10+
plc_source = { path = "../plc_source", version = "0.6.0" }
11+
plc_diagnostics = { path = "../plc_diagnostics", version = "0.6.0" }
1212
#plc_project = { path = "../plc_project" } # TODO: This will create a circular dependency
1313
rustc-hash.workspace = true
1414
encoding_rs.workspace = true

compiler/plc_llvm/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "plc_llvm"
3-
version = "0.5.0"
3+
version = "0.6.0"
44
edition = "2024"
55
license = "LGPL-3.0"
66
description = "LLVM Wrapper for C++ functions not exposed by inkwell or in the C API"

0 commit comments

Comments
 (0)