Commits on Source (15)
-
I hit the following backtrace running `bst --debug push` and `bst --debug build`: pid:16736 id:000[--:--:--][][] START Push pid:16736 id:000[--:--:--][][] START Loading pipeline pid:16736 id:000[00:00:00][][] SUCCESS Loading pipeline pid:16736 id:000[--:--:--][][] START Resolving pipeline pid:16736 id:000[--:--:--][][] BUG 'MesonElement' object has no attribute '_Element__cache_key' Traceback (most recent call last): File "/home/sam/.local/bin/bst", line 8, in <module> sys.exit(cli()) File "/home/sam/.local/lib/python3.6/site-packages/click/core.py", line 722, in __call__ return self.main(*args, **kwargs) File "/home/sam/.local/lib/python3.6/site-packages/buildstream/_frontend/cli.py", line 162, in override_main standalone_mode=standalone_mode, **extra) File "/home/sam/.local/lib/python3.6/site-packages/click/core.py", line 697, in main rv = self.invoke(ctx) File "/home/sam/.local/lib/python3.6/site-packages/click/core.py", line 1066, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/home/sam/.local/lib/python3.6/site-packages/click/core.py", line 895, in invoke return ctx.invoke(self.callback, **ctx.params) File "/home/sam/.local/lib/python3.6/site-packages/click/core.py", line 535, in invoke return callback(*args, **kwargs) File "/home/sam/.local/lib/python3.6/site-packages/click/decorators.py", line 27, in new_func return f(get_current_context().obj, *args, **kwargs) File "/home/sam/.local/lib/python3.6/site-packages/buildstream/_frontend/cli.py", line 471, in push app.stream.push(elements, selection=deps, remote=remote) File "/home/sam/.local/lib/python3.6/site-packages/buildstream/_stream.py", line 341, in push fetch_subprojects=True) File "/home/sam/.local/lib/python3.6/site-packages/buildstream/_stream.py", line 814, in _load fetch_subprojects=fetch_subprojects) File "/home/sam/.local/lib/python3.6/site-packages/buildstream/_pipeline.py", line 119, in load for meta in meta_elements File "/home/sam/.local/lib/python3.6/site-packages/buildstream/_pipeline.py", line 119, in <listcomp> for meta in meta_elements File "/home/sam/.local/lib/python3.6/site-packages/buildstream/element.py", line 894, in _new_from_meta element = project.create_element(artifacts, meta) File "/home/sam/.local/lib/python3.6/site-packages/buildstream/_project.py", line 184, in create_element element = self._element_factory.create(self._context, self, artifacts, meta) File "/home/sam/.local/lib/python3.6/site-packages/buildstream/_elementfactory.py", line 57, in create return element_type(context, project, artifacts, meta, default_config) File "/home/sam/.local/lib/python3.6/site-packages/buildstream/element.py", line 196, in __init__ super().__init__(meta.name, context, project, meta.provenance, "element") File "/home/sam/.local/lib/python3.6/site-packages/buildstream/plugin.py", line 171, in __init__ self.debug("Created: {}".format(self)) File "/home/sam/.local/lib/python3.6/site-packages/buildstream/plugin.py", line 407, in debug self.__message(MessageType.DEBUG, brief, detail=detail) File "/home/sam/.local/lib/python3.6/site-packages/buildstream/plugin.py", line 652, in __message self.__context.message(message) File "/home/sam/.local/lib/python3.6/site-packages/buildstream/_context.py", line 338, in message self._message_handler(message, context=self) File "/home/sam/.local/lib/python3.6/site-packages/buildstream/_frontend/app.py", line 665, in _message_handler text = self.logger.render(message) File "/home/sam/.local/lib/python3.6/site-packages/buildstream/_frontend/widget.py", line 585, in render return self._render(message) File "/home/sam/.local/lib/python3.6/site-packages/buildstream/_frontend/widget.py", line 620, in _render text += widget.render(message) File "/home/sam/.local/lib/python3.6/site-packages/buildstream/_frontend/widget.py", line 228, in render _, key, missing = plugin._get_display_key() File "/home/sam/.local/lib/python3.6/site-packages/buildstream/element.py", line 1138, in _get_display_key cache_key = self._get_cache_key() File "/home/sam/.local/lib/python3.6/site-packages/buildstream/element.py", line 991, in _get_cache_key return self.__cache_key AttributeError: 'MesonElement' object has no attribute '_Element__cache_key' The issue here is that when `--debug` is enabled, Plugin.__init__() tries to log a message like this: pid:16929 id:001[--:--:--][????????][ main:tracker.bst ] DEBUG Created: meson element at tracker.bst [line 1 column 0] The log formatter is trying to get the cache key of the element in order to show it in the log, but the attribute hasn't yet been set because we've not got to the Element() constructor.
-
Valentin David authored
Fix crash when --debug is passed See merge request !648
-
Do not rely on `StopIteration` bubbling up. https://www.python.org/dev/peps/pep-0479/
-
Valentin David authored
Python 3.7 support See merge request !649
-
tests/frontend/workspace.py: Added tests
-
Valentin David authored
_stream.py: Added functionality for workspace open -f See merge request !651
-
Before this option was listed in help but was ignored when creating the source-bundle. Issue #468
-
Valentin David authored
source-bundle: Enable --except option See merge request !650
-
Element paths should always be completed from the root element folder defined by the element-path key in project.conf. Fix complete_path() to always search into its given base_directory argument. See issue #448
-
Valentin David authored
Fix autocompletion for elements in sub-folders See merge request !652
-
Add test to ensure gracefull handling of exception thrown while loading a pipeline due the python's max recursion depth being exceeded. This is part of the work for issue #203
-
Because the RecursionError exception was introduced in Python 3.5, until we drop support for for Python 3.4, we must use RuntimeError.
-
Tristan Van Berkom authored
203 build stream crashes when dependency tree too deep See merge request !654
-
Trying to checkout an element that has no cached artifacts should be and handled failure. See #447.
-
Showing
- buildstream/_artifactcache/cascache.py 5 additions, 2 deletionsbuildstream/_artifactcache/cascache.py
- buildstream/_frontend/app.py 4 additions, 0 deletionsbuildstream/_frontend/app.py
- buildstream/_frontend/cli.py 2 additions, 1 deletionbuildstream/_frontend/cli.py
- buildstream/_frontend/complete.py 4 additions, 3 deletionsbuildstream/_frontend/complete.py
- buildstream/_stream.py 9 additions, 3 deletionsbuildstream/_stream.py
- buildstream/element.py 9 additions, 2 deletionsbuildstream/element.py
- tests/completions/completions.py 4 additions, 0 deletionstests/completions/completions.py
- tests/completions/sub-folders/base/unwanted.bst 4 additions, 0 deletionstests/completions/sub-folders/base/unwanted.bst
- tests/completions/sub-folders/elements/base.bst 5 additions, 0 deletionstests/completions/sub-folders/elements/base.bst
- tests/completions/sub-folders/elements/base/wanted.bst 4 additions, 0 deletionstests/completions/sub-folders/elements/base/wanted.bst
- tests/completions/sub-folders/elements/hello.bst 4 additions, 0 deletionstests/completions/sub-folders/elements/hello.bst
- tests/completions/sub-folders/project.conf 4 additions, 0 deletionstests/completions/sub-folders/project.conf
- tests/frontend/buildcheckout.py 10 additions, 0 deletionstests/frontend/buildcheckout.py
- tests/frontend/show.py 58 additions, 1 deletiontests/frontend/show.py
- tests/frontend/workspace.py 52 additions, 0 deletionstests/frontend/workspace.py
tests/completions/sub-folders/project.conf
0 → 100644