Skip to content

Commit 2e4de62

Browse files
authored
Merge pull request #26 from ScaleWeather/dev-0.14
Publish v0.14-alpha.1
2 parents 0f94829 + b02eca0 commit 2e4de62

35 files changed

+2524
-3016
lines changed

.github/workflows/rust-dev.yml

Lines changed: 0 additions & 81 deletions
This file was deleted.

.github/workflows/rust.yml

Lines changed: 48 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name: cargo
22

3-
on:
3+
on:
44
push:
55
branches:
66
- main
@@ -22,72 +22,68 @@ jobs:
2222
uses: fkirc/skip-duplicate-actions@v5
2323
with:
2424
# All of these options are optional, so you can remove them if you are happy with the defaults
25-
concurrent_skipping: 'same_content_newer'
26-
skip_after_successful_duplicate: 'true'
25+
concurrent_skipping: "same_content_newer"
26+
skip_after_successful_duplicate: "true"
2727
paths_ignore: '["**/README.md"]'
2828
do_not_skip: '["pull_request", "workflow_dispatch", "schedule"]'
2929

3030
build:
31-
3231
name: Build on Ubuntu
3332
needs: pre_job
3433
if: needs.pre_job.outputs.should_skip != 'true'
3534
runs-on: ubuntu-latest
3635

3736
steps:
38-
- uses: actions/checkout@v4
39-
- name: Prepare environment
40-
run: |
41-
sudo apt-get update
42-
sudo apt-get install clang
43-
sudo apt-get install libclang1
44-
sudo apt-get install libeccodes-dev
45-
rustup update stable
46-
cargo install cargo-criterion
47-
cargo clean
48-
- name: Build with cargo
49-
run: |
50-
cargo build --release --features "experimental_index, message_ndarray"
51-
cargo clean
52-
- name: Test with cargo
53-
run: |
54-
cargo test --no-default-features
55-
cargo test --features "message_ndarray"
56-
cargo test --features "experimental_index"
57-
cargo test --features "experimental_index, message_ndarray"
58-
cargo clean
59-
- name: Benchmark with criterion
60-
run: |
61-
cargo criterion
62-
cargo clean
37+
- uses: actions/checkout@v4
38+
- name: Prepare environment
39+
run: |
40+
sudo apt-get update
41+
sudo apt-get install clang
42+
sudo apt-get install libclang1
43+
sudo apt-get install libeccodes-dev
44+
rustup update stable
45+
cargo install cargo-criterion
46+
cargo clean
47+
- name: Check release build
48+
run: |
49+
cargo build --release --features "ndarray"
50+
- name: Check with clippy
51+
run: |
52+
cargo clippy --features "ndarray" -- -D warnings
53+
- name: Check tests
54+
run: |
55+
cargo test --no-default-features
56+
cargo test --features "ndarray"
57+
- name: Benchmark with criterion
58+
run: |
59+
cargo criterion
60+
cargo clean
6361
6462
build-macos:
65-
6663
name: Build on MacOS
6764
needs: pre_job
6865
if: needs.pre_job.outputs.should_skip != 'true'
6966
runs-on: macos-latest
7067

7168
steps:
72-
- uses: actions/checkout@v4
73-
- name: Prepare environment
74-
run: |
75-
brew install eccodes
76-
rustup update stable
77-
cargo install cargo-criterion
78-
cargo clean
79-
- name: Build with cargo
80-
run: |
81-
cargo build --release --features "experimental_index, message_ndarray"
82-
cargo clean
83-
- name: Test with cargo
84-
run: |
85-
cargo test --no-default-features
86-
cargo test --features "message_ndarray"
87-
cargo test --features "experimental_index"
88-
cargo test --features "experimental_index, message_ndarray"
89-
cargo clean
90-
- name: Benchmark with criterion
91-
run: |
92-
cargo criterion
93-
cargo clean
69+
- uses: actions/checkout@v4
70+
- name: Prepare environment
71+
run: |
72+
brew install eccodes
73+
rustup update stable
74+
cargo install cargo-criterion
75+
cargo clean
76+
- name: Check release build
77+
run: |
78+
cargo build --release --features --features "ndarray"
79+
- name: Check with clippy
80+
run: |
81+
cargo clippy --features "ndarray" -- -D warnings
82+
- name: Check tests
83+
run: |
84+
cargo test --no-default-features
85+
cargo test --features "ndarray"
86+
- name: Benchmark with criterion
87+
run: |
88+
cargo criterion
89+
cargo clean

Cargo.toml

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
name = "eccodes"
33
description = "Unofficial high-level Rust bindings of the latest ecCodes release"
44
repository = "https://github.com/ScaleWeather/eccodes"
5-
version = "0.13.4"
5+
version = "0.14.0-alpha.1"
66
readme = "README.md"
77
authors = ["Jakub Lewandowski <scaleweather@gmail.com>"]
88
keywords = ["eccodes", "grib", "bufr", "meteorology", "weather"]
@@ -14,40 +14,41 @@ categories = [
1414
"science",
1515
]
1616
license = "Apache-2.0"
17-
edition = "2021"
17+
edition = "2024"
1818
exclude = [".github/*", ".vscode/*", ".idea/*", "data/*"]
19-
rust-version = "1.82.0"
19+
rust-version = "1.85.1"
2020

2121
[dependencies]
22-
eccodes-sys = { version = "0.6.0", default-features = false }
22+
eccodes-sys = { version = "0.7.0", default-features = false }
2323
libc = { version = "0.2", default-features = false }
2424
thiserror = { version = "2.0", default-features = false }
25-
log = { version = "0.4", default-features = false }
2625
errno = { version = "0.3", default-features = false }
2726
num-derive = { version = "0.4", default-features = false }
2827
num-traits = { version = "0.2", default-features = false }
2928
fallible-iterator = { version = "0.3", default-features = false }
30-
fallible-streaming-iterator = { version = "0.1.9", default-features = false }
31-
ndarray = { version = "0.16", default-features = false, optional = true, features = [
29+
ndarray = { version = "0.17", default-features = false, optional = true, features = [
3230
"std",
3331
] }
32+
tracing = { version = "0.1", default-features = false, features = [
33+
"std",
34+
"attributes",
35+
"log",
36+
] }
3437

3538
[dev-dependencies]
36-
reqwest = { version = "0.12", features = ["rustls-tls"] }
37-
criterion = "0.5"
38-
testing_logger = "0.1"
39-
rand = "0.8"
39+
reqwest = { version = "0.13", features = ["rustls"] }
40+
criterion = "0.8"
41+
rand = "0.9"
4042
anyhow = { version = "1.0", features = ["backtrace"] }
4143
float-cmp = "0.10"
4244

4345
[features]
44-
default = ["message_ndarray", "experimental_index"]
46+
default = ["ndarray"]
4547
docs = ["eccodes-sys/docs"]
46-
experimental_index = []
47-
message_ndarray = ["dep:ndarray"]
48+
ndarray = ["dep:ndarray"]
4849

4950
[package.metadata.docs.rs]
50-
features = ["docs", "experimental_index", "message_ndarray"]
51+
features = ["docs", "ndarray"]
5152

5253
[[bench]]
5354
name = "main"

0 commit comments

Comments
 (0)