Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Maintenance #77

Merged
merged 9 commits into from
Sep 18, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
*.zip filter=lfs diff=lfs merge=lfs -text
*.blend filter=lfs diff=lfs merge=lfs -text
*.exr filter=lfs diff=lfs merge=lfs -text
*.obj filter=lfs diff=lfs merge=lfs -text
*.mtl filter=lfs diff=lfs merge=lfs -text
4 changes: 2 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,10 @@ jobs:
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
- uses: taiki-e/upload-rust-binary-action@v1.17.1
- uses: taiki-e/upload-rust-binary-action@v1.21.1
with:
bin: raytracing
tar: unix
zip: windows
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
2 changes: 1 addition & 1 deletion .github/workflows/rust-linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Build
run: cargo build --verbose
- name: Run tests
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/rust-macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
runs-on: macos-latest

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Build
run: cargo build --verbose
- name: Run tests
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/rust-windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
runs-on: windows-latest

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Build
run: cargo build --verbose
- name: Run tests
Expand Down
30 changes: 15 additions & 15 deletions .github/workflows/rustdoc.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
name: rustdoc
on:
push:
branches:
- main
branches:
- main

env:
CARGO_INCREMENTAL: 0
Expand All @@ -15,19 +15,19 @@ jobs:
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Checkout repository
uses: actions/checkout@v4

- name: Install Rust toolchain
run: rustup update --no-self-update stable
- name: Install Rust toolchain
run: rustup update --no-self-update stable

- name: Build Documentation
run: cargo doc --no-deps
- name: Build Documentation
run: cargo doc --no-deps

- name: Deploy Docs
uses: peaceiris/actions-gh-pages@v3.9.3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_branch: rustdoc
publish_dir: ./target/doc
keep_files: true
- name: Deploy Docs
uses: peaceiris/actions-gh-pages@v4.0.0
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_branch: rustdoc
publish_dir: ./target/doc
keep_files: true
68 changes: 47 additions & 21 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,8 +1,17 @@
[package]
name = "raytracing"
name = "trayracer"
version = "1.0.0"
edition = "2021"
description = "Rust Raytracer."
description = "A Raytracer written in Rust."
authors = [
"bircni",
"Fabus1184",
"LesKlugi",
"MarcelQ5",
"phaman09",
"GitNether",
"HermanoGranger",
]

[package.metadata.bundle]
name = "TrayRacer"
Expand All @@ -20,70 +29,87 @@ version = "1.0.0"
resources = ["./../res/mac-icons/icon*.png"]
copyright = "© 2024 Team TrayRacer"
category = "Developer Tool"
short_description = "A Raytracer."
short_description = "A Raytracer written in Rust."

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]

# error handling
anyhow = "1.0.83"
anyhow = "1.0.89"

# image loading and saving
image = { version = "0.25.1", default-features = false, features = [
image = { version = "0.25.2", default-features = false, features = [
"png",
"jpeg",
"tiff",
"exr",
] }

# logging
log = "0.4.21"
log = "0.4.22"
simplelog = "0.12.2"

# linear algebra
nalgebra = { version = "0.32.5", features = ["glam022"] }
nalgebra = { version = "0.33.0", features = ["glam022"] }
rand = "0.8.5"

# obj file loading
obj = "0.10.2"

# automatic parallelization
rayon = "1.10.0"
bytemuck = { version = "1.15.0", features = ["derive"] }
bytemuck = { version = "1.18", features = ["derive"] }

# total order for floats
ordered-float = "4.2.0"
ordered-float = "4.2.2"

# generic serialization / deserialization
serde = { version = "1.0.201", features = ["derive"] }
serde_yml = "0.0.5"
serde = { version = "1.0.210", features = ["derive"] }
serde_yml = "0.0.12"

# GUI
eframe = { version = "0.27.2", features = [
eframe = { version = "0.28.1", features = [
"wgpu",
"accesskit",
"default_fonts",
"wayland",
"x11",
], default-features = false }
egui = { version = "0.27.2", features = ["log", "color-hex"] }
egui-wgpu = { version = "0.27.2" }
egui_file = "0.17.0"
egui_extras = { version = "0.27.2", features = ["svg", "image"] }
color-hex = "0.2.0"
egui = { version = "0.28.1", features = ["log", "color-hex"] }
egui-wgpu = { version = "0.28.1" }
egui_file = "0.18.0"
egui_extras = { version = "0.28.1", features = ["svg", "image"] }

# BVH
bvh = "0.9.0"
rust-i18n = "3.0.1"
bvh = "0.10.0"
rust-i18n = "3.1.2"
sys-locale = "0.3.1"

[lints.rust]
unsafe_code = "forbid"
[build-dependencies]
anyhow = "1.0.89"
winresource = "0.1.17"

[profile.dev]
opt-level = 3

[profile.perftest]
inherits = "release"
debug = true

[lints.rust]
unsafe_code = "forbid"

[lints.clippy]
nursery = { level = "deny", priority = 0 }
pedantic = { level = "deny", priority = 1 }
enum_glob_use = { level = "deny", priority = 2 }
module_name_repetitions = { level = "allow", priority = 3 }
cast_precision_loss = { level = "allow", priority = 4 }
cast_possible_truncation = { level = "allow", priority = 5 }
cast_sign_loss = { level = "allow", priority = 6 }
out_of_bounds_indexing = { level = "allow", priority = 7 }
perf = { level = "warn", priority = 8 }
style = { level = "warn", priority = 9 }
unwrap_used = { level = "deny", priority = 10 }
expect_used = { level = "deny", priority = 11 }
9 changes: 9 additions & 0 deletions build.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
fn main() -> anyhow::Result<()> {
let target = std::env::var("CARGO_CFG_TARGET_OS")?;
if target == "windows" {
let mut res = winresource::WindowsResource::new();
res.set_icon("./res/icon.ico");
res.compile()?;
}
Ok(())
}
Loading