summaryrefslogtreecommitdiff
path: root/buildstream/_sourcefactory.py
Commit message (Collapse)AuthorAgeFilesLines
* Refactor plugin factory creationValentin David2018-08-021-3/+10
|
* Remove shebangs from python filesGökçen Nurlu2018-06-191-1/+0
| | | | Fixes #424
* Clean up element/source instantiation code paths.Tristan Van Berkom2018-04-161-3/+2
| | | | | | This removes the extra `kind` parameter from all of the related codepaths, it is redundant since the `kind` attribute is already stored on the MetaElement and MetaSource objects.
* Make external plugin loading require explicit configuration in project.confJonathan Maw2017-12-131-7/+3
| | | | | | In addition, it changes the "plugins" and "required-versions" fields, combining them for plugins and adding a new "required-project-version" field.
* Add support for YAML default config loadingTristan Maat2017-09-141-1/+1
|
* Refactor: Untangling element/source namesTristan Van Berkom2017-03-181-3/+2
| | | | | | | | | | | | | | | | | | | | | | | o The metaelements and metasources now carry the name, the loader resolves source names now. o Element/Source factories dont require a name anymore as they are already in the meta objects o Pipeline no longer composes names o Element.name is now the original project relative filename, this allows plugins to identify that name in their dependencies, allowing one to express configuration which identifies elements by the same name that the user used in the dependencies. o Removed plugin._get_display_name() in favor of the plugin.name o Added Element.normal_name, for the cases where we need to have a normalized name for creating directories and log files o Updated frontend and test cases and all callers to use the new naming
* _sourcefactory.py: Constructor now takes display_nameTristan Van Berkom2017-01-121-2/+3
|
* _sourcefactory.py: Updated with real Source constructor argumentsTristan Van Berkom2016-12-151-5/+11
|
* pep8 fixes in _sourcefactory.pyTristan Van Berkom2016-12-101-2/+3
|
* Principle of least underscoresTristan Van Berkom2016-11-151-2/+2
| | | | | | | | | PluginContext, ElementFactory and SourceFactory reside in entirely private modules, as such they do not need a leading underscore to indicate that they are private. This makes the code nicer to read without causing private things to be considered public.
* _site.py: simplify this fileTristan Van Berkom2016-11-151-2/+2
| | | | | | | | | | Now modules import as: from . import _site And refer to things as _site.root, _site.default_config etc. Also now follow principal of least underscores
* Move config.py -> _site.pyTristan Van Berkom2016-11-141-1/+1
| | | | | | This file is for site installation relative path names for convenience, it's not where configuration stuff is stored and it's an entirely private detail.
* Split up factory objects and base data model objects.Tristan Van Berkom2016-11-121-0/+56
Better to have a separate file for each class clearly addressing it's purpose with it's filename. Source base data model -> source.py SourceFactory -> _sourcefactory.py Element base data model -> element.py ElementFactory -> _elementfactory.py Also moved the _plugin.py to _plugincontext.py, since the object is infact _PluginContext, lets follow this rule all around for code clarity.