summaryrefslogtreecommitdiff
path: root/systest/all_SUITE_data
diff options
context:
space:
mode:
authorFred Hebert <mononcqc@ferd.ca>2017-12-04 09:34:52 -0500
committerFred Hebert <mononcqc@ferd.ca>2017-12-04 09:44:39 -0500
commitfb67eb0ee95b2f03dc6c51535ab4b18ea70d315f (patch)
tree4164583568675aa18bb461df2414fc8989c683df /systest/all_SUITE_data
parentf81f144f38f51efd9ab2d312b1a61dc464fd4738 (diff)
Fix Plugin path handling (again!)
The path reloading of plugins had been fixed properly, but the problem is that the paths it was using to re-load only considered the current compile step, rather than the overall state of plugins. As such, the reloaded paths after plugin compilation only reloaded the *latest* plugin and not the other ones. This fix forces the addition of all built plugin paths to the code paths after a plugin compile job is run. This ensures that the path is clean for initial plugin deps (only add those that are required), and is re-made total after the fact (add all the plugins possible). This commit also includes a system tests suite that can be run optionally; the problem with this plugin mechanism was impossible to find through mocked dependencies, and a working counterexample was provided to us. The systest suite can be run against real projects without conflict to make sure no regressions are hit.
Diffstat (limited to 'systest/all_SUITE_data')
-rw-r--r--systest/all_SUITE_data/resource_plugins/rebar.config23
1 files changed, 23 insertions, 0 deletions
diff --git a/systest/all_SUITE_data/resource_plugins/rebar.config b/systest/all_SUITE_data/resource_plugins/rebar.config
new file mode 100644
index 0000000..7baec1f
--- /dev/null
+++ b/systest/all_SUITE_data/resource_plugins/rebar.config
@@ -0,0 +1,23 @@
+%% Sample provided by @tothlac
+{plugins, [
+ {rebar_tidy_deps, ".*", {git, "https://github.com/ferd/rebar3-tidy-deps-plugin.git"}},
+ {rebar_alias, {git, "https://github.com/tsloughter/rebar_alias.git"}},
+ rebar3_appup_plugin
+]}.
+
+{deps, [
+ {hackney, {git, "https://github.com/benoitc/hackney.git", {tag, "1.10.1"}}}
+ ]}.
+
+
+%% Make work despite compat issues with strings and warnings
+{overrides, [
+ {override, rebar3_appup_plugin, [
+ {erl_opts, [
+ {platform_define, "^19", brutal_purge_fixed},
+ {platform_define, "^2", brutal_purge_fixed},
+ %% warnings_as_errors,
+ debug_info
+ ]}
+ ]}
+]}.