| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
I need to be able to deduplicate a list of morphologies. Putting it in a
set is the easiest way, but it needs to be hashable.
It's not included in dicts by default, since they're stored by
reference, and you can change them while they're in the dict, so the
hash value can change.
I don't need to deduplicate morphologies by their contents, just by
reference though, so using `id` as the hash function is sufficient.
|
|
|
|
|
| |
This means we can remove some complication from the MorphologyFactory
class.
|
|
|
|
|
|
| |
Instead of leaving morph3 with a potentially confusing name, rename it
to `morphology` since it is now the only implementation of the
Morphology class.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
The code isn't making it easy to test just the size parsing code.
This code shouldn't even be in morph, it should be re-using a
library (such as the one in cliapp, but cliapp doesn't expose it
nicely). All of this should be fixed, but for now, I'll just
exclude things from test coverage. Shame be on me.
|
|
|
|
| |
The mkimage.sh script should now be unnecessary again.
|
|
|
|
|
|
|
|
|
|
|
|
| |
This requires build-single to take a dependency context tuple when
building chunks of a stratum. This context tuple is the surrounding
stratum which is used to construct the dependency graph in the worker
and then do a breadth-first search to collect all dependencies that need
to be added to the staging area.
Implementing this required a few hash/eq changes in Blob, Morphology
and Treeish as well as a few adjustments in the corresponding unit
tests.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This affects pretty much every part of morph, so this might not be fully
working and stable yet.
This commit also introduces the "update-gits" command that can be used
to update all cached repositories from the list of base URLs. The tree
walk when resolving the Treeish objects in Builder.get_cache_id() is a
bit similar to what we do in BuildDependencyGraph, maybe we can merge
that one day.
|
| |
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
The "show-dependencies" command takes a series of build tuples and dumps
the resulting dependency graph (including strata and chunks at the
moment) to the standard output. It also dumps the resulting build order
which is a list of groups. These groups indicate which chunks and strata
can be built in parallel and are not dependent on each other.
|
|/
|
|
| |
instead of busybox
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This is a short-cut for providing the configure, build, test, and
install commands explicitly.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In other words, consider the follow bit of stratum morphology:
{
"name": "foo",
"kind": "stratum",
"sources": {
"bar": {
"repo": "bar",
"ref": "baserock"
}
}
}
The "repo" field duplicates the name of the key in "sources". This is
unnecessary now, so the "repo" field can be removed.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
The implementation was painful to write, more painful to maintain,
and that clashed badly with the need to be able to make changes
easily during an exploratory, experimental phase of development.
Validation should come back later, when things stabilize.
|
|
|
|
|
| |
No validation at this time. The current approach to implementing
validation is too much work.
|
| |
|
|
|