| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of redundantly documenting "directory" configuration option in
each source plugin, refer to the built-in functionality documentation of
the Source class.
* source.py: Add anchor for built-in functionality.
* sources/plugins/*.py: Remove directory config option, and add reference to
Source's built-in functionality.
Fixes #713.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of copying metadata on files staged by local, we manually set
mode to 0755 or 0644 depending on whether user execution was enabled
on source file.
This makes file modes deterministic independently on the way source
was distributed.
Non-deterministic mode copying all metadata can still be enabled by
disable 'deterministic' Boolean configuration on the plugin.
Fixes #527.
|
|
|
|
|
|
| |
The autotools example had to be copied over inside of the junction
example, as referring to a path outside of the project directory is
now disallowed.
|
|
|
|
| |
Fixes #424
|
|
|
|
|
|
|
|
|
|
|
|
| |
o Now the page titles are declared in plugins, allowing for
a more descriptive ToC
o Makefile and plugin.rsttemplate updated to not produce the title,
to no longer use `:orphan:` for plugin pages, and to ignore any
private modules in the plugin directories.
o Interestingly, now the docs will fail to build if you add
a new plugin and forget to add it to the documentation.
|
|
|
|
|
| |
Plugins set their attributes in configure(), because the
constructor is not public API.
|
| |
|
|
|
|
|
|
|
|
| |
Technically this breaks cache keys for the local source, but as
this comes in a branch which fixes local source cache keys to be
stable (they were random before this branch), we wont bother with
considering this enhancement a separate API break, the cache key
breakage was inescapable anyway.
|
|
|
|
|
|
|
|
| |
The local plugin is always Consistency.CACHED, this means that
fetch(), set_ref() and get_ref() methods will never be called.
Instead of omitting them, just "pragma: nocover" on the `pass`
statements, making our coverage report more realistic.
|
|
|
|
|
| |
This avoid multiple file system traversal when the key is requested multiple
times.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This required adding two new APIs to make up for it on the Source
o get_project_directory()
Added here because elements should not be accessing external
resources, Sources needed for local files and GPG keys and such
o translate_url()
Used by sources to mish-mash the project aliases and create
real urls.
|
| |
|
| |
|
|
|
|
|
| |
This was otherwise throwing an exception when trying
the create the checksum for a symlink.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of declaring per operation exceptions, like PreflightError
and FetchError etc, just declare exceptions per domain. Replaced
the former errors with SourceError for Source implementations
and ElementError for element implementations.
The core will be able to report errors differently depending on
what they asked given plugins to do, and handle a reduced set
of exceptions.
|
|
|
|
| |
Specify the common 'directory' attribute
|
|
|