| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
As discussed over the mailing list, reformat code using Black. This is a
one-off change to reformat all our codebase. Moving forward, we
shouldn't expect such blanket reformats. Rather, we expect each change
to already comply with the Black formatting style.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Use the 'identifier' argument of PluginBase's make_plugin_source(), to
ensure that the plugins have a consistent namespace when pickled and
then unpickled in another process.
This means that we can pickle plugins that are more than an entrypoint,
e.g. ones that have multiple classes in the same file.
This enables the `tests/frontend/mirror.py::test_mirror_fetch_multi`
test to pass, which uses `fetch_source` plugin. That plugin has more
than one class in it's file.
|
| |
|
|
|
|
|
|
|
| |
Pave the way toward supporting the 'spawn' method of creating jobs, by
adding support for pickling ChildJobs. Introduce a new 'jobpickler'
module that provides an entrypoint for this functionality.
This also makes replays of jobs possible, which has made the debugging
of plugins much easier for me.
|
| |
|
|
|
|
| |
All of the errors which subclass from BstError have their first
positional argument as message, LoadError should follow this
ordering for consistency.
|
| |
|
|
|
|
| |
`mapping.get_sequence(...).as_str_list()` is a very common
pattern seen both in plugins and the core. Adding a helper to reduce
the number of operations will make usage smoother
|
| |
|
|
|
|
|
|
|
| |
- Adding 'get_sequence' on MappingNode to access sequences in a mapping
- Adding 'sequence_at' on SequenceNode to access sequences in a sequence
- Adding 'mapping_at' on SequenceNode to access mappings in a sequence
Using "*_at" in sequences allows us to quickly understand if we are
dealing with a sequence or a mapping.
|
| |
|
|
|
|
|
|
|
|
| |
- 'get_scalar()' allows retrieving a scalar node from a mapping.
- 'as_str()' casts a ScalarNode into a string (thus removing the node
information).
Both together, those replace 'node_get(mapping, key, type=str)' but
also allow retrieving the 'Node' itself, which will allow in the future
lazier provenance computation.
|
| |
|
|
| |
Also document the pre-existing format_versions parameter.
|
| |
|
|
|
| |
Add shortened local vars to make this statement easier to read and fit
onto one line.
|
|
|
This was discussed in #1008.
Fixes #1009.
|