1. 18 Apr, 2019 5 commits
  2. 17 Apr, 2019 9 commits
    • bst-marge-bot's avatar
      Merge branch 'tpollard/955' into 'master' · 9a20bbf9
      bst-marge-bot authored
      Follow-up from "Artifact 'abstraction' class"
      Closes #955
      See merge request !1271
    • Tom Pollard's avatar
      element.py: Discard __artifact/__strict_artifact in update_state() · c2673f4a
      Tom Pollard authored
      When we determine that current cache keys are to be discarded, we
      should also discard the associated members for correctness. This
      should act as a safeguard against accessing Artifact instances that
      have discarded cache keys.
      A side effect of this is the querying of element buildtree state
      from cli methods on elements that don't have a cached artifact
      would lead to the artifact member methods not being reachable.
      Ensuring the element is cached before trying to call said accessor
      methods resolves this.
    • Tom Pollard's avatar
      _artifact.py: Move element metadata caching to Artifact Class · 5790aa5b
      Tom Pollard authored
      As the artifact object now stores keys, it allows for the simplification
      of metadata methods. Transitioning the metadata members to Artifact
      also means the private accessor methods can be removed from Element
      which reduces the overhead of syncing private variables across the
      two classes via parameters.
      With the key and metadata handling now being internalised within
      Artifact, a temporary Artifact for the last_successful incremental
      build is created for correctness. This should help guarantee that an
      Artifact object is never used to access different artifacts.
    • Tom Pollard's avatar
      element.py: Remove redundant fully private __cached_success() · 6e3e5bf5
      Tom Pollard authored
      This was being accessed via a local private method that wasn't
      augmenting the output as such it can be moved to match
    • Tom Pollard's avatar
      element.py: Remove redundant fully private __get_build_result() · 68f5d92f
      Tom Pollard authored
      This was being accessed via a local private method that wasn't
      augmenting the output as such it can be moved.
    • Tom Pollard's avatar
      element.py: Instantiate the Artifact objects within update_state() · f3b7c221
      Tom Pollard authored
      The Artifact instance within Element is now initialised when the
      relevant keys are available, with the weak & strong keys being
      in the constructor. It also introduces the notion of a strict_artifact,
      which is used to make a distinction of the Artifact keys and cached
      state dependant on the context defined strictness. The keys are updated
      when a relevant key change occurs. As the keys are now internalised
      within Artifact, the majority of key determinsim and parameterisation
      in public Artifact method calls are now redundant.
    • Tom Pollard's avatar
      element.py: Assert cached in __load_public_data() · 5c7b90ba
      Tom Pollard authored
      This moves the cached assertion to happen before calling the
      Artifact method, which removes the need to loopback for the
      same purpose.
    • Tom Pollard's avatar
      _artifact.py: Use _get_subdirectory() in non meta* methods · 30ba6322
      Tom Pollard authored
      Switch to using the private _get_subdirectory() in places
      where we are interacting directly with a subdirectory of the
    • bst-marge-bot's avatar
      Merge branch 'phil/rename-plugintestutils' into 'master' · 316a0e49
      bst-marge-bot authored
      Rename 'plugintestutils' package to 'testing'
      See merge request !1291
  3. 16 Apr, 2019 3 commits
  4. 15 Apr, 2019 4 commits
  5. 12 Apr, 2019 19 commits