Skip to content

Commit c910697

Browse files
committed
fix: kcl native lib build edtions and deps
Signed-off-by: Peefy <xpf6677@163.com>
1 parent 6220cbc commit c910697

File tree

20 files changed

+1026
-966
lines changed

20 files changed

+1026
-966
lines changed

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[package]
22
name = "kcl-lang"
33
version = "0.12.0"
4-
edition = "2021"
4+
edition = "2024"
55
readme = "README.md"
66
documentation = "kcl-lang.io"
77
description = "KCL Rust SDK"

c/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[package]
22
name = "kcl-lib-c"
33
version = "0.12.0"
4-
edition = "2021"
4+
edition = "2024"
55
publish = false
66

77
[lib]

cpp/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[package]
22
name = "kcl-lib-cpp"
33
publish = false
4-
edition = "2021"
4+
edition = "2024"
55
version = "0.12.0"
66

77
[lib]

dotnet/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
name = "kcl-lib-dotnet"
33
publish = false
44
version = "0.12.0"
5+
edition = "2024"
56

67
[lib]
78
crate-type = ["cdylib"]

dotnet/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
extern crate kcl_api;
22

3-
#[no_mangle]
3+
#[unsafe(no_mangle)]
44
pub extern "C" fn callNative(
55
name_ptr: *const u8,
66
name_len: usize,

java/Cargo.lock

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

java/Cargo.toml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,21 +2,22 @@
22
name = "kcl-lib-jni"
33
publish = false
44
version = "0.12.0"
5+
edition = "2024"
56

67
[lib]
78
crate-type = ["cdylib"]
89
doc = false
910

1011
[dependencies]
1112
jni = "0.21.1"
12-
prost = "0.11.8"
13-
prost-types = "0.11.8"
1413
serde_json = "1"
1514
indexmap = "2.2.5"
1615
anyhow = "1"
1716
serde = { version = "1", features = ["derive"] }
1817
once_cell = "1.19.0"
1918
lazy_static = "1.4.0"
19+
prost = "0.14.1"
20+
prost-types = "0.14.1"
2021

2122
kcl-parser = { git = "https://github.com/kcl-lang/kcl", version = "0.12.0" }
2223
kcl-sema = { git = "https://github.com/kcl-lang/kcl", version = "0.12.0" }

java/pom.xml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,6 @@
3939
<maven.build.timestamp.format>yyyyMMddHHmmss</maven.build.timestamp.format>
4040
<maven.build.timestamp>${maven.build.timestamp}</maven.build.timestamp>
4141

42-
<protobuf-java.version>4.33.1</protobuf-java.version>
4342
<slf4j.version>1.7.30</slf4j.version>
4443
<jackson.version>2.13.2</jackson.version>
4544
<apache.commons-lang3.version>3.4</apache.commons-lang3.version>
@@ -58,7 +57,7 @@
5857
<dependency>
5958
<groupId>com.google.protobuf</groupId>
6059
<artifactId>protobuf-java</artifactId>
61-
<version>4.29.3</version>
60+
<version>4.33.1</version>
6261
</dependency>
6362
<dependency>
6463
<groupId>org.slf4j</groupId>

java/src/lib.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ lazy_static! {
3131
static ref SCOPE_CACHE: Mutex<OnceCell<KCLScopeCache>> = Mutex::new(OnceCell::new());
3232
}
3333

34-
#[no_mangle]
34+
#[unsafe(no_mangle)]
3535
pub extern "system" fn Java_com_kcl_api_API_callNative(
3636
mut env: JNIEnv,
3737
_: JClass,
@@ -44,15 +44,15 @@ pub extern "system" fn Java_com_kcl_api_API_callNative(
4444
})
4545
}
4646

47-
#[no_mangle]
47+
#[unsafe(no_mangle)]
4848
pub extern "system" fn Java_com_kcl_api_API_registerPluginContext(env: JNIEnv, obj: JObject) {
4949
let jvm = env.get_java_vm().unwrap();
5050
*JVM.lock().unwrap() = Some(jvm);
5151
let global_ref = env.new_global_ref(obj).unwrap();
5252
*CALLBACK_OBJ.lock().unwrap() = Some(global_ref);
5353
}
5454

55-
#[no_mangle]
55+
#[unsafe(no_mangle)]
5656
pub extern "system" fn Java_com_kcl_api_API_loadPackageWithCache(
5757
mut env: JNIEnv,
5858
_: JClass,
@@ -87,15 +87,15 @@ fn intern_load_package_with_cache(env: &mut JNIEnv, args: JByteArray) -> Result<
8787
let scope_cache = binding.get_or_init(|| KCLScopeCache::default());
8888
// Load package arguments from protobuf bytes.
8989
let args = env.convert_byte_array(args)?;
90-
let args: LoadPackageArgs = <LoadPackageArgs as Message>::decode(args.as_ref())?;
90+
let args: LoadPackageArgs = LoadPackageArgs::decode(args.as_ref())?;
9191
let svc = KclServiceImpl::default();
9292
// Call load package API and decode the result to protobuf bytes.
9393
let packages = svc.load_package_with_cache(&args, module_cache.clone(), scope_cache.clone())?;
9494
let j_byte_array = env.byte_array_from_slice(&packages.encode_to_vec())?;
9595
Ok(j_byte_array.into_raw())
9696
}
9797

98-
#[no_mangle]
98+
#[unsafe(no_mangle)]
9999
extern "C" fn plugin_agent(
100100
method: *const c_char,
101101
args: *const c_char,

kotlin/Cargo.lock

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

0 commit comments

Comments
 (0)