You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It should be possible mark specific features as "experimental", for the purpose of communicating to users how solid they should expect specific features to be, and to define a stable subset. Using experimental features should require some kind of opt-in.
Notes on requirements:
Since Fornjot is intended to be language-agnostic (with Rust just being the currently supported modeling language), opting into experimental features can't be based on Rust language features, and can't happen at compile-time.
It should be possible to opt-into experimental features per-model, possibly even finer-grained. A component used in a model might use a known-working subset of an experimental feature, but that doesn't mean the author of the model wants to opt into that feature.
Notes on implementation:
I believe the best place to handle experimental features is the fj-operations crate. The kernel itself is probably not suitable for this, as the concepts it uses don't map well to user-facing concepts.
Which subset of a model opts into which experimental feature should probably be tracked through flags within the fj data structures. I haven't worked out how exactly to do this, but I'm sure a solution can be found.
It should be possible mark specific features as "experimental", for the purpose of communicating to users how solid they should expect specific features to be, and to define a stable subset. Using experimental features should require some kind of opt-in.
Notes on requirements:
Notes on implementation:
fj-operations
crate. The kernel itself is probably not suitable for this, as the concepts it uses don't map well to user-facing concepts.fj
data structures. I haven't worked out how exactly to do this, but I'm sure a solution can be found.This issue replaces #46.
The text was updated successfully, but these errors were encountered: