Skip to content

Commit 5e73b5e

Browse files
authored
Merge pull request #9 from orxfun/migrate-to-2024edition
Migrate to 2024edition
2 parents a5955af + e8b9503 commit 5e73b5e

File tree

3 files changed

+64
-4
lines changed

3 files changed

+64
-4
lines changed

.github/workflows/ci.yml

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
name: Rust
2+
3+
on:
4+
push:
5+
branches: [ "main" ]
6+
pull_request:
7+
branches: [ "main" ]
8+
9+
env:
10+
CARGO_TERM_COLOR: always
11+
12+
jobs:
13+
build:
14+
15+
runs-on: ubuntu-latest
16+
strategy:
17+
matrix:
18+
toolchain: ["stable"]
19+
20+
steps:
21+
- uses: actions/checkout@v4
22+
23+
- name: Install toolchain
24+
uses: dtolnay/rust-toolchain@master
25+
with:
26+
toolchain: ${{ matrix.toolchain }}
27+
28+
- name: Install 32bit target
29+
run: rustup target add i686-unknown-linux-musl
30+
- name: Install wasm target
31+
run: rustup target add wasm32v1-none
32+
- name: Install miri
33+
run: rustup component add --toolchain nightly-x86_64-unknown-linux-gnu miri
34+
- name: Install no-std-check
35+
run: cargo install cargo-no-std-check
36+
37+
- name: Build
38+
run: cargo build --verbose
39+
- name: Build-32bit
40+
run: cargo build --verbose --target i686-unknown-linux-musl
41+
- name: Build-wasm
42+
run: cargo build --verbose --no-default-features --target wasm32v1-none
43+
44+
- name: Test
45+
run: cargo test --verbose
46+
- name: Test-32bit
47+
run: cargo test --verbose --target i686-unknown-linux-musl
48+
- name: Check-wasm
49+
run: cargo check --verbose --no-default-features --target wasm32v1-none
50+
51+
- name: Clippy
52+
run: cargo clippy -- -D warnings --verbose
53+
54+
- name: Miri
55+
run: cargo +nightly miri test --verbose
56+
57+
- name: NoStd
58+
run: cargo +nightly no-std-check --no-default-features

Cargo.toml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[package]
22
name = "orx-iterable"
3-
version = "1.2.0"
4-
edition = "2021"
3+
version = "1.3.0"
4+
edition = "2024"
55
authors = ["orxfun <orx.ugur.arikan@gmail.com>"]
66
description = "Defines and implements Iterable, Collection and CollectionMut traits to represent types that can be iterated over multiple times."
77
license = "MIT OR Apache-2.0"
@@ -10,11 +10,11 @@ keywords = ["iterable", "collection", "iterator", "intoiterator", "enumerable"]
1010
categories = ["data-structures", "rust-patterns", "no-std"]
1111

1212
[dependencies]
13-
orx-self-or = "1.1.1"
13+
orx-self-or = "1.2.0"
1414

1515
[dev-dependencies]
1616
arrayvec = { version = "0.7.6", default-features = false }
17-
smallvec = { version = "1.13.2", default-features = false }
17+
smallvec = { version = "1.15.0", default-features = false }
1818

1919
[features]
2020
default = ["std"]

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ Not all iterables are collections storing elements. For instance, a *Range* is i
1818
1919
In addition, **object safe variants** of these traits, `IterableObj`, `CollectionObj` and `CollectionMutObj` are provided, please see section E for details.
2020

21+
> **no-std**: This crate supports **no-std**; however, *std* is added as a default feature. Please include with **no-default-features** for no-std use cases: `cargo add orx-iterable --no-default-features`.
22+
2123
## A. Collection and CollectionMut
2224

2325
The core method of the Collection trait is `iter(&self)` which returns an iterator yielding shared references; i.e., `&Item`.

0 commit comments

Comments
 (0)