Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: cfrenette/iced
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: master
Choose a base ref
...
head repository: iced-rs/iced
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
Loading
Showing 482 changed files with 55,562 additions and 26,259 deletions.
54 changes: 2 additions & 52 deletions .cargo/config.toml
Original file line number Diff line number Diff line change
@@ -1,53 +1,3 @@
[alias]
lint = """
clippy --workspace --no-deps -- \
-D warnings \
-A clippy::type_complexity \
-D clippy::semicolon_if_nothing_returned \
-D clippy::trivially-copy-pass-by-ref \
-D clippy::default_trait_access \
-D clippy::match-wildcard-for-single-variants \
-D clippy::redundant-closure-for-method-calls \
-D clippy::filter_map_next \
-D clippy::manual_let_else \
-D clippy::unused_async \
-D clippy::from_over_into \
-D clippy::needless_borrow \
-D clippy::new_without_default \
-D clippy::useless_conversion
"""

nitpick = """
clippy --workspace --no-deps -- \
-D warnings \
-D clippy::pedantic \
-A clippy::type_complexity \
-A clippy::must_use_candidate \
-A clippy::return_self_not_must_use \
-A clippy::needless_pass_by_value \
-A clippy::cast_precision_loss \
-A clippy::cast_sign_loss \
-A clippy::cast_possible_truncation \
-A clippy::match_same_arms \
-A clippy::missing-errors-doc \
-A clippy::missing-panics-doc \
-A clippy::cast_lossless \
-A clippy::doc_markdown \
-A clippy::items_after_statements \
-A clippy::too_many_lines \
-A clippy::module_name_repetitions \
-A clippy::if_not_else \
-A clippy::redundant_else \
-A clippy::used_underscore_binding \
-A clippy::cast_possible_wrap \
-A clippy::unnecessary_wraps \
-A clippy::struct-excessive-bools \
-A clippy::float-cmp \
-A clippy::single_match_else \
-A clippy::unreadable_literal \
-A clippy::explicit_deref_methods \
-A clippy::map_unwrap_or \
-A clippy::unnested_or_patterns \
-A clippy::similar_names \
-A clippy::unused_self
"""
lint = "clippy --workspace --benches --all-features --no-deps -- -D warnings"
lint-fix = "clippy --fix --allow-dirty --workspace --benches --all-features --no-deps -- -D warnings"
18 changes: 17 additions & 1 deletion .github/ISSUE_TEMPLATE/BUG-REPORT.yml
Original file line number Diff line number Diff line change
@@ -6,6 +6,22 @@ body:
attributes:
value: |
Thanks for taking the time to fill out this bug report!
- type: checkboxes
attributes:
label: Is your issue REALLY a bug?
description: |
This issue tracker is for __BUG REPORTS ONLY__.
It's obvious, right? This is a bug report form, after all! Still, some crazy users seem to forcefully fill out this form just to ask questions and request features.
The core team does not appreciate that. Don't do it.
If you want to ask a question or request a feature, please [go back here](https://github.com/iced-rs/iced/issues/new/choose) and read carefully.
options:
- label: My issue is indeed a bug!
required: true
- label: I am not crazy! I will not fill out this form just to ask a question or request a feature. Pinky promise.
required: true
- type: checkboxes
attributes:
label: Is there an existing issue for this?
@@ -28,7 +44,7 @@ body:
If you have any issues running any of the examples, make sure your graphics drivers are up-to-date. If the issues persist, please report them to the authors of the libraries directly!
[the `wgpu` examples]: https://github.com/gfx-rs/wgpu/tree/master/wgpu/examples
[the `wgpu` examples]: https://github.com/gfx-rs/wgpu/tree/trunk/examples
[the `glow` examples]: https://github.com/grovesNL/glow/tree/main/examples
options:
- label: My hardware is compatible and my graphics drivers are up-to-date.
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -3,7 +3,7 @@ contact_links:
- name: I have a question
url: https://discourse.iced.rs/c/learn/6
about: Ask and learn from others in the Discourse forum.
- name: I want to start a discussion
- name: I want to request a feature or start a discussion
url: https://discourse.iced.rs/c/request-feedback/7
about: Share your idea and gather feedback in the Discourse forum.
- name: I want to chat with other users of the library
24 changes: 12 additions & 12 deletions .github/workflows/audit.yml
Original file line number Diff line number Diff line change
@@ -8,7 +8,7 @@ jobs:
vulnerabilities:
runs-on: ubuntu-latest
steps:
- uses: hecrj/setup-rust-action@v1
- uses: hecrj/setup-rust-action@v2
- name: Install cargo-audit
run: cargo install cargo-audit
- uses: actions/checkout@master
@@ -17,14 +17,14 @@ jobs:
- name: Audit vulnerabilities
run: cargo audit

artifacts:
runs-on: ubuntu-latest
steps:
- uses: hecrj/setup-rust-action@v1
- name: Install cargo-outdated
run: cargo install cargo-outdated
- uses: actions/checkout@master
- name: Delete `web-sys` dependency from `integration` example
run: sed -i '$d' examples/integration/Cargo.toml
- name: Find outdated dependencies
run: cargo outdated --workspace --exit-code 1
# artifacts:
# runs-on: ubuntu-latest
# steps:
# - uses: hecrj/setup-rust-action@v2
# - name: Install cargo-outdated
# run: cargo install cargo-outdated
# - uses: actions/checkout@master
# - name: Delete `web-sys` dependency from `integration` example
# run: sed -i '$d' examples/integration/Cargo.toml
# - name: Find outdated dependencies
# run: cargo outdated --workspace --exit-code 1 --ignore raw-window-handle
20 changes: 10 additions & 10 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -7,7 +7,7 @@ jobs:
todos_linux:
runs-on: ubuntu-latest
steps:
- uses: hecrj/setup-rust-action@v1
- uses: hecrj/setup-rust-action@v2
- name: Install cargo-deb
run: cargo install cargo-deb
- uses: actions/checkout@master
@@ -19,7 +19,7 @@ jobs:
- name: Build todos binary
run: cargo build --verbose --profile release-opt --package todos
- name: Archive todos binary
uses: actions/upload-artifact@v1
uses: actions/upload-artifact@v4
with:
name: todos-x86_64-unknown-linux-gnu
path: target/release-opt/todos
@@ -28,15 +28,15 @@ jobs:
- name: Rename todos .deb package
run: mv target/debian/*.deb target/debian/iced_todos-x86_64-debian-linux-gnu.deb
- name: Archive todos .deb package
uses: actions/upload-artifact@v1
uses: actions/upload-artifact@v4
with:
name: todos-x86_64-debian-linux-gnu
path: target/debian/iced_todos-x86_64-debian-linux-gnu.deb

todos_windows:
runs-on: windows-latest
steps:
- uses: hecrj/setup-rust-action@v1
- uses: hecrj/setup-rust-action@v2
- uses: actions/checkout@master
- name: Enable static CRT linkage
run: |
@@ -48,15 +48,15 @@ jobs:
- name: Build todos binary
run: cargo build --verbose --profile release-opt --package todos
- name: Archive todos binary
uses: actions/upload-artifact@v1
uses: actions/upload-artifact@v4
with:
name: todos-x86_64-pc-windows-msvc
path: target/release-opt/todos.exe

todos_macos:
runs-on: macOS-latest
steps:
- uses: hecrj/setup-rust-action@v1
- uses: hecrj/setup-rust-action@v2
- uses: actions/checkout@master
- name: Build todos binary
env:
@@ -65,29 +65,29 @@ jobs:
- name: Open binary via double-click
run: chmod +x target/release-opt/todos
- name: Archive todos binary
uses: actions/upload-artifact@v1
uses: actions/upload-artifact@v4
with:
name: todos-x86_64-apple-darwin
path: target/release-opt/todos

todos_raspberry:
runs-on: ubuntu-latest
steps:
- uses: hecrj/setup-rust-action@v1
- uses: hecrj/setup-rust-action@v2
- uses: actions/checkout@master
- name: Install cross
run: cargo install cross
- name: Build todos binary for Raspberry Pi 3/4 (64 bits)
run: cross build --verbose --profile release-opt --package todos --target aarch64-unknown-linux-gnu
- name: Archive todos binary
uses: actions/upload-artifact@v1
uses: actions/upload-artifact@v4
with:
name: todos-aarch64-unknown-linux-gnu
path: target/aarch64-unknown-linux-gnu/release-opt/todos
- name: Build todos binary for Raspberry Pi 2/3/4 (32 bits)
run: cross build --verbose --profile release-opt --package todos --target armv7-unknown-linux-gnueabihf
- name: Archive todos binary
uses: actions/upload-artifact@v1
uses: actions/upload-artifact@v4
with:
name: todos-armv7-unknown-linux-gnueabihf
path: target/armv7-unknown-linux-gnueabihf/release-opt/todos
20 changes: 9 additions & 11 deletions .github/workflows/check.yml
Original file line number Diff line number Diff line change
@@ -1,20 +1,12 @@
name: Check
on: [push, pull_request]
jobs:
widget:
runs-on: ubuntu-latest
steps:
- uses: hecrj/setup-rust-action@v1
- uses: actions/checkout@master
- name: Check standalone `iced_widget` crate
run: cargo check --package iced_widget --features image,svg,canvas

wasm:
runs-on: ubuntu-latest
env:
RUSTFLAGS: --cfg=web_sys_unstable_apis
steps:
- uses: hecrj/setup-rust-action@v1
- uses: hecrj/setup-rust-action@v2
with:
rust-version: stable
targets: wasm32-unknown-unknown
@@ -25,5 +17,11 @@ jobs:
run: cargo build --package tour --target wasm32-unknown-unknown
- name: Check compilation of `todos` example
run: cargo build --package todos --target wasm32-unknown-unknown
- name: Check compilation of `integration` example
run: cargo build --package integration --target wasm32-unknown-unknown

widget:
runs-on: ubuntu-latest
steps:
- uses: hecrj/setup-rust-action@v2
- uses: actions/checkout@master
- name: Check standalone `iced_widget` crate
run: cargo check --package iced_widget --features image,svg,canvas
6 changes: 4 additions & 2 deletions .github/workflows/document.yml
Original file line number Diff line number Diff line change
@@ -6,17 +6,17 @@ jobs:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
steps:
- uses: hecrj/setup-rust-action@v1
- uses: hecrj/setup-rust-action@v2
with:
rust-version: nightly
- uses: actions/checkout@v2
- name: Generate documentation
run: |
RUSTDOCFLAGS="--cfg docsrs" \
cargo doc --no-deps --all-features \
-p futures-core \
-p iced_core \
-p iced_highlighter \
-p iced_style \
-p iced_futures \
-p iced_runtime \
-p iced_graphics \
@@ -28,6 +28,8 @@ jobs:
-p iced
- name: Write CNAME file
run: echo 'docs.iced.rs' > ./target/doc/CNAME
- name: Copy redirect file as index.html
run: cp docs/redirect.html target/doc/index.html
- name: Publish documentation
if: github.ref == 'refs/heads/master'
uses: peaceiris/actions-gh-pages@v3
2 changes: 1 addition & 1 deletion .github/workflows/format.yml
Original file line number Diff line number Diff line change
@@ -4,7 +4,7 @@ jobs:
all:
runs-on: ubuntu-latest
steps:
- uses: hecrj/setup-rust-action@v1
- uses: hecrj/setup-rust-action@v2
with:
components: rustfmt
- uses: actions/checkout@master
9 changes: 7 additions & 2 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
@@ -2,11 +2,16 @@ name: Lint
on: [push, pull_request]
jobs:
all:
runs-on: macOS-latest
runs-on: ubuntu-latest
steps:
- uses: hecrj/setup-rust-action@v1
- uses: hecrj/setup-rust-action@v2
with:
components: clippy
- uses: actions/checkout@master
- name: Install dependencies
run: |
export DEBIAN_FRONTED=noninteractive
sudo apt-get -qq update
sudo apt-get install -y libxkbcommon-dev libgtk-3-dev
- name: Check lints
run: cargo lint
9 changes: 5 additions & 4 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -5,12 +5,13 @@ jobs:
runs-on: ${{ matrix.os }}
env:
RUSTFLAGS: --deny warnings
ICED_TEST_BACKEND: tiny-skia
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest]
rust: [stable, beta]
rust: [stable, beta, "1.85"]
steps:
- uses: hecrj/setup-rust-action@v1
- uses: hecrj/setup-rust-action@v2
with:
rust-version: ${{ matrix.rust }}
- uses: actions/checkout@master
@@ -22,5 +23,5 @@ jobs:
sudo apt-get install -y libxkbcommon-dev libgtk-3-dev
- name: Run tests
run: |
cargo test --verbose --workspace
cargo test --verbose --workspace --all-features
cargo test --verbose --workspace -- --ignored
cargo test --verbose --workspace --all-features -- --ignored
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
target/
pkg/
**/*.rs.bk
Cargo.lock
dist/
traces/
Loading