Anders Evensen

Results 31 issues of Anders Evensen

Second attempt at probing with features. First attempt was #33. This PR adds two methods to `AutoCfg`: `enable_feature()`, which enables a nightly feature to be used in probes, and `disable_feature()`,...

Introduces an `assert_err_eq!` macro, which asserts that a `Result` value is an `Err` and that its contained value is equal to the provided value. Also defines a `debug_assert_err_eq!` macro. This...

Is there any way to test types that implement `DeserializeSeed`, as opposed to `Deserialize`, using the `serde_test` crate? I am looking for some equivalent of `assert_de_tokens`, but that would accept...

Adding [`brood`](https://crates.io/crates/brood) to the benchmark suite. I included the benchmark results as well. From the other PRs I looked at, it seems that's the common practice, although my machine will...

It seems that larger schedules cause large blow-ups in compile time. I just compiled a schedule with 3 components and 14 systems, and the whole thing took over 11 minutes...

C - Bug
S - Needs Investigation
P - High
F - rayon
A - Scheduling
C - Usability

Currently, adding or removing components requires moving the components from one archetype to another, which requires an allocation here: https://github.com/Anders429/brood/blob/master/src/archetype/mod.rs#L461 Since the components are canonically ordered, this can be optimized...

C - Performance
C - Code Quality
P - Low
A - Storage

Using heterogeneous list tricks, we should be able to remove the dynamic type checking in these two spots: - https://github.com/Anders429/brood/blob/master/src/registry/sealed/storage.rs#L644 - https://github.com/Anders429/brood/blob/master/src/registry/sealed/storage.rs#L754 Instead, these can be checked at the type...

S - Needs Investigation
C - Code Quality
P - Low
A - Storage

Just an idea I had this afternoon: There may be times where we want to have a view on exactly one of two component types. For example, a system could...

C - Enhancement
S - Needs Investigation
P - Low
A - Querying
V - Minor Breaking Change
C - Usability

Like `World::reserve()`, but returns an error instead of panicking when the additional allocation is unable to occur. This is currently blocked on the fact that [`alloc::collections::TryReserveError`](https://doc.rust-lang.org/std/collections/struct.TryReserveError.html)'s internals are unstable.

C - Enhancement
P - Low
A - Storage
V - Minor Breaking Change
S - Blocked on Rust Feature

This could give way to running sub-queries or sub-systems, among other things. This would provide a subset of `World`'s methods, similar to how the query `Entry` access provides a subset...

C - Enhancement
S - Needs Investigation
P - Low
A - Querying
V - Major Breaking Change