Skip to content
Commit 19cad981 authored by Tristan Van Berkom's avatar Tristan Van Berkom
Browse files

Fix #248 - Support project.refs in the core.

This adds a new Source.load_ref() API which is technically optional to
implement, projects which make use of a project.refs file must only
use source plugins which implement the new load_ref() method.

  * source.py: Added load_ref() API to load a ref from a specified node.

    This also adds _load_ref() and _save_ref() wrappers which handle
    the logistics of when to load and save a ref to which location.

    This also fixes _set_ref() to apply the ref to the node unconditionally,
    this must be done independantly of whether the ref actually changed.

  o Modifications to the loading process such that Source now can have
    access to the element name and source index.

  o _pipeline.py: Delegate abstract loading of source refs to Source._load_ref()

    - Print a summarized warning about redundant source references

    - Assert that one cannot track cross-junction elements without project.refs.

  o _scheduler/trackqueue.py: Delegate saving refs to Source._save_ref()
parent e2392ce7
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment