Age | Commit message (Collapse) | Author | |
---|---|---|---|
2021-10-24 | Move definition of Dependency into runner module | Matthias Schiffer | |
runner::TaskInput does not contain the dependency hashes anymore, this is handled internally in the runner module now. Unfortunately this also means that we can't use this struct directly for the InputHash anymore, but overall this reduces the complexity of the interface between runner and executor. | |||
2021-10-09 | Add layer hash to task output | Matthias Schiffer | |
For now, the hash is not actually computed. | |||
2021-10-08 | Switch from SHA256 to Blake3 for task hashes | Matthias Schiffer | |
Mostly relevant for output hashing, and the to-be-implemented workdir hashing. Passing data to the hasher is not optimized using a buffered writer yet. | |||
2021-09-26 | Pass path with dependencies instead of distinguishing build and host deps | Matthias Schiffer | |
2021-09-25 | Add recipe and task to TaskID as separate fields | Matthias Schiffer | |
2021-09-25 | Remove unnecessary TaskID traits | Matthias Schiffer | |
Preparation for making TaskID more structured. | |||
2021-09-19 | Use template variables instead of environment, parametrize all examples | Matthias Schiffer | |
This implements passing of various pieces of information through task arguments, as well as argument inheritance through different kinds of dependencies. | |||
2021-09-19 | Rename "target depends" to "depends" | Matthias Schiffer | |
Internally, the name "host depends" is used to match GNU build/host/target terms. | |||
2021-09-19 | Add map of JSON values to TaskArgs | Matthias Schiffer | |
2021-09-19 | Add TaskArgs to reference types | Matthias Schiffer | |
For now the struct is empty, and each task just passes its arguments to its dependencies. | |||
2021-09-19 | Introduce Context struct | Matthias Schiffer | |
TaskRef etc. get a lifetime that is bound to the Context lifetime. This way we can reduce cloning significantly. | |||
2021-09-18 | Separate definition types and reference types | Matthias Schiffer | |
We need to distinguish TaskID/Task/TaskRef, OutputDef/OutputRef for parametrized tasks. | |||
2021-09-18 | executor: use run string instead of action for TaskInput | Matthias Schiffer | |
2021-09-17 | Only pass path to runner, not whole Output structure | Matthias Schiffer | |
It seems that ipc-channel can't deal with BTreeSets. Avoid the type by sending only the necessary data to the runner. | |||
2021-09-17 | Introduce runtime dependencies of outputs and add to resolver | Matthias Schiffer | |
2021-09-17 | Have recipes specify outputs, verify in resolver | Matthias Schiffer | |
The outputs are not respected by the runner yet. | |||
2021-09-17 | Prepare for tasks with multiple outputs | Matthias Schiffer | |
For now, we always store the single output using the string "default" as a key. It is valid for a task not to generate all declared outputs. | |||
2021-09-15 | Unpack build dependencies over rootfs | Matthias Schiffer | |
2021-09-15 | Explicitly refer to "target dependencies" | Matthias Schiffer | |
2021-09-15 | Make 'fetch' a kind of dependency instead of a kind of task | Matthias Schiffer | |
2021-09-15 | types: remove Serialize from Task | Matthias Schiffer | |
Task describes the YAML task description, it only needs to be deserialized. | |||
2021-09-10 | Reduce repetitive StringHash newtype definitions using macro_rules | Matthias Schiffer | |
2021-09-10 | Remove now unneeded (Partial)Ord derives from Hash types | Matthias Schiffer | |
2021-09-10 | Introduce hashable Output enum | Matthias Schiffer | |
2021-09-10 | Rename OutputHash to ArchiveHash | Matthias Schiffer | |
2021-09-09 | Rename TaskAction to Action | Matthias Schiffer | |
Also use serde's rename_all feature. | |||
2021-09-07 | executor: to not include input hashes of dependencies in TaskInput | Matthias Schiffer | |
Avoid invalidating the cache for no reason. | |||
2021-09-02 | Make InputHash and OutputHash distinct types | Matthias Schiffer | |
2021-09-02 | Add inherit field to Task definition | Matthias Schiffer | |
For now, the inherit field is treated as a dependency for dep resolution and ignored otherwise. | |||
2021-09-02 | Store depends in HashSet | Matthias Schiffer | |
We don't want to deal with duplicate dependencies. | |||
2021-07-24 | Introduce "fetch" task type | Matthias Schiffer | |
No actual fetching for now, fetch tasks always succeed immediately. The runner ignores fetch tasks for unpacking. | |||
2021-07-24 | Separate runner input from InputHash input | Matthias Schiffer | |
We need dependencies' actions in the runner to handle sysroot unpacking, but we don't want them in the TaskOutput. To keep TaskInput and TaskOutput similar, a separate definition for passing tasks to the runner is introduced. The TaskInput and TaskOutput structs are simplified, and the depends TaskRef are replaced with the dependencies InputHashes. This allows to walk the dependency chain of TaskOutputs. | |||
2021-07-24 | Add TaskAction enum | Matthias Schiffer | |
More preparation for fetch tasks. | |||
2021-07-24 | Rename task types | Matthias Schiffer | |
Prepare for introduction of different action types: - Task -> RunTaskInput - TaskDef -> Task | |||
2021-07-24 | Don't include full TaskDef in Task | Matthias Schiffer | |
2021-07-24 | Replace TaskMap struct with type alias | Matthias Schiffer | |
2021-07-24 | Revert introduction of Dependency enum | Matthias Schiffer | |
We will represent all kinds of dependencies as tasks instead. | |||
2021-07-22 | Change StringHash Debug format to hex representation | Matthias Schiffer | |
2021-07-22 | Do not serialize Dependency as a single string | Matthias Schiffer | |
Removes our custom Serialize/Deserialize implementations. | |||
2021-07-22 | Flip Task depends map | Matthias Schiffer | |
Not having a Dependency as a key in Task gives us more freedom over its representation. | |||
2021-07-22 | Use Dependency type in Task and TaskOutput structs | Matthias Schiffer | |
2021-07-22 | Add task: prefix to task dependencies | Matthias Schiffer | |
2021-07-22 | Introduce Dependency enum for different kinds of dependencies | Matthias Schiffer | |
For now only task dependencies are supported. | |||
2021-07-22 | Make TaskRef a newtype wrapper | Matthias Schiffer | |
2021-07-22 | Rename TaskID back to TaskRef | Matthias Schiffer | |
The distinction will be important when we introduce parametrized tasks. | |||
2021-07-17 | Remove task output setting for now | Matthias Schiffer | |
For simplicity, always archive the contents of the "dest" directory | |||
2021-07-17 | Pass environment from executor, add to input hash | Matthias Schiffer | |
2021-06-21 | Use input hash for temporary task output filename | Matthias Schiffer | |
2021-06-21 | types: use hex::serde reexports | Matthias Schiffer | |
2021-06-21 | executor: calculate input hash | Matthias Schiffer | |