<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/buildstream.git/tests/cachekey/project/sources/patch2.expected, branch traveltissues/splitdepkeys</title>
<subtitle>gitlab.com: buildstream/buildstream.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/'/>
<entry>
<title>[WIP]Split dependencies into dependency-names and dependency-keys</title>
<updated>2019-11-04T14:07:38+00:00</updated>
<author>
<name>Darius Makovsky</name>
<email>traveltissues@protonmail.com</email>
</author>
<published>2019-11-04T11:47:01+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/commit/?id=1a1d4592d32d96604aa72bc169388a8f5e42238d'/>
<id>1a1d4592d32d96604aa72bc169388a8f5e42238d</id>
<content type='text'>
In Element._calculate_cache_key the dependency field of the cache key
dictionary is replaced with the dependency-names field and the
dependency-keys field. The first is only populated in the case where the
weak dependencies are passed and the second is only populated when the
strong dependencies are passed. Additionally, in the case where the
element holds at least one source advertising BST_NO_REF, the new fields
are both initialised to `[]` in order to correctly update dependencies.
Failing to reinitialise dependency fields in this case will lead to
erroneous dependencies from old states of BST_NO_REF sources.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In Element._calculate_cache_key the dependency field of the cache key
dictionary is replaced with the dependency-names field and the
dependency-keys field. The first is only populated in the case where the
weak dependencies are passed and the second is only populated when the
strong dependencies are passed. Additionally, in the case where the
element holds at least one source advertising BST_NO_REF, the new fields
are both initialised to `[]` in order to correctly update dependencies.
Failing to reinitialise dependency fields in this case will lead to
erroneous dependencies from old states of BST_NO_REF sources.
</pre>
</div>
</content>
</entry>
<entry>
<title>Split dependencies in the cache key dict into strong and weak</title>
<updated>2019-11-04T12:54:55+00:00</updated>
<author>
<name>Darius Makovsky</name>
<email>traveltissues@protonmail.com</email>
</author>
<published>2019-10-30T17:25:52+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/commit/?id=861f9636a503f6dbd5acc132e2f8ba6743762216'/>
<id>861f9636a503f6dbd5acc132e2f8ba6743762216</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>element.py: remove call to _source_cached()</title>
<updated>2019-10-05T13:56:44+00:00</updated>
<author>
<name>Darius Makovsky</name>
<email>traveltissues@protonmail.com</email>
</author>
<published>2019-09-26T13:50:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/commit/?id=06206c3ae5ae93f03777ed3eb7e6bbc3d848ff1e'/>
<id>06206c3ae5ae93f03777ed3eb7e6bbc3d848ff1e</id>
<content type='text'>
Remove call to Element._source_cached() in _calculate_cache_key and
do not recalculate workspace keys.

tests: shell browsing of workspaces is currently broken
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove call to Element._source_cached() in _calculate_cache_key and
do not recalculate workspace keys.

tests: shell browsing of workspaces is currently broken
</pre>
</div>
</content>
</entry>
<entry>
<title>element.py: always check sources for caching</title>
<updated>2019-09-24T15:58:25+00:00</updated>
<author>
<name>Darius Makovsky</name>
<email>traveltissues@protonmail.com</email>
</author>
<published>2019-09-05T13:33:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/commit/?id=b9e2af22bc94d108a27fc9a40f698b4822c7118e'/>
<id>b9e2af22bc94d108a27fc9a40f698b4822c7118e</id>
<content type='text'>
Check that sources are cached even if they are workspaced and do not
reset workspace cache data

partially reverts !1470
closes #1088

element.py: remove workspaces in cache key calc

Using the workspace source plugin, workspaces should now be handled like
sources for the purpose of calculating element cache keys.

partially reverts !1470
works towards #1073

Since the source keys are now calculated using the unique keys of the
workspace source, this change will break external tracking for open
workspaces. In future attempting to track an open workspace might raise
a SourceError. The test is rewritten to close the workspace before
tracking.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Check that sources are cached even if they are workspaced and do not
reset workspace cache data

partially reverts !1470
closes #1088

element.py: remove workspaces in cache key calc

Using the workspace source plugin, workspaces should now be handled like
sources for the purpose of calculating element cache keys.

partially reverts !1470
works towards #1073

Since the source keys are now calculated using the unique keys of the
workspace source, this change will break external tracking for open
workspaces. In future attempting to track an open workspace might raise
a SourceError. The test is rewritten to close the workspace before
tracking.
</pre>
</div>
</content>
</entry>
<entry>
<title>artifact.proto: Add the project name to the build dependency information</title>
<updated>2019-08-19T11:14:49+00:00</updated>
<author>
<name>James Ennis</name>
<email>james.ennis@codethink.co.uk</email>
</author>
<published>2019-08-13T16:07:57+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/commit/?id=20a636d3fb0422c54acd5783200288dbeecb09cf'/>
<id>20a636d3fb0422c54acd5783200288dbeecb09cf</id>
<content type='text'>
We also need to store the project name of dependencies in
the proto in order to reconstruct the graph.

This also means that we must include the project name of the
dependencies in the cache key, otherwise the proto and the
cache keys may fall out of sync.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We also need to store the project name of dependencies in
the proto in order to reconstruct the graph.

This also means that we must include the project name of the
dependencies in the cache key, otherwise the proto and the
cache keys may fall out of sync.
</pre>
</div>
</content>
</entry>
<entry>
<title>element.py: clobber sources with workspace</title>
<updated>2019-07-22T15:45:27+00:00</updated>
<author>
<name>Darius Makovsky</name>
<email>traveltissues@protonmail.com</email>
</author>
<published>2019-07-10T16:26:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/commit/?id=3953bcc652577925ef0c77f202f7d76bb4b61b71'/>
<id>3953bcc652577925ef0c77f202f7d76bb4b61b71</id>
<content type='text'>
add name to sources in cache key dict
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
add name to sources in cache key dict
</pre>
</div>
</content>
</entry>
<entry>
<title>element.py: change cache key dict fields</title>
<updated>2019-07-12T15:57:35+00:00</updated>
<author>
<name>Darius Makovsky</name>
<email>traveltissues@protonmail.com</email>
</author>
<published>2019-07-10T14:14:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/commit/?id=53e4fc57f9f9a97bb36f309a17dd0e149f897391'/>
<id>53e4fc57f9f9a97bb36f309a17dd0e149f897391</id>
<content type='text'>
relates to #1073
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
relates to #1073
</pre>
</div>
</content>
</entry>
<entry>
<title>Bump artifact version for changes in symlink handling</title>
<updated>2019-02-14T15:05:38+00:00</updated>
<author>
<name>Jürg Billeter</name>
<email>j@bitron.ch</email>
</author>
<published>2019-02-01T14:52:34+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/commit/?id=94c6d59b1cf0e7c223b910ab5bd19d54049de966'/>
<id>94c6d59b1cf0e7c223b910ab5bd19d54049de966</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Cache Keys: Update to use JSON rather than pickle</title>
<updated>2019-02-14T13:02:07+00:00</updated>
<author>
<name>Daniel Silverstone</name>
<email>daniel.silverstone@codethink.co.uk</email>
</author>
<published>2019-02-14T11:25:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/commit/?id=c2c10d68a5e3ed12d13adce2cb10feed789f8f8c'/>
<id>c2c10d68a5e3ed12d13adce2cb10feed789f8f8c</id>
<content type='text'>
This affects the cache key version (updated to 7) and introduces
a dependency on `ujson` which is BSD licenced as of the version
locked in `requirements.txt`

Signed-off-by: Daniel Silverstone &lt;daniel.silverstone@codethink.co.uk&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This affects the cache key version (updated to 7) and introduces
a dependency on `ujson` which is BSD licenced as of the version
locked in `requirements.txt`

Signed-off-by: Daniel Silverstone &lt;daniel.silverstone@codethink.co.uk&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>projectconfig.yaml: Consistently include directories in split rules</title>
<updated>2019-02-13T10:48:45+00:00</updated>
<author>
<name>Jürg Billeter</name>
<email>j@bitron.ch</email>
</author>
<published>2019-02-02T04:46:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/buildstream.git/commit/?id=14db3287d37e31f54ccc6a94917cd62dd2b2ec0c'/>
<id>14db3287d37e31f54ccc6a94917cd62dd2b2ec0c</id>
<content type='text'>
Most split rules already included the relevant directories themselves in
addition to the directory contents.  Add the missing bin, sbin, and
libexec directories.

This is required to fix tests with the following commit that changes
list_relative_paths() to return all directories.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Most split rules already included the relevant directories themselves in
addition to the directory contents.  Add the missing bin, sbin, and
libexec directories.

This is required to fix tests with the following commit that changes
list_relative_paths() to return all directories.
</pre>
</div>
</content>
</entry>
</feed>
