Details
-
Improvement
-
Status: Closed
-
Blocker
-
Resolution: Fixed
-
None
-
None
-
Platform Core
-
Platform Core KANBAN, Tasks Kanban
-
Major
-
3 - 25-50% of Customers
-
4 - Major
-
4 - $$$$$
-
-
32385
-
1
-
New Feature
-
It is no longer required to have a dependency listed in a module's metadata.json on another module (b) in order to use functions or data types from module b.
-
Automate
Description
The Problem
See PUP-6952 and PUP-6953 for backgound but essentially, puppet can't find puppet 4.x functions in other modules unless they are declared as a dependency of the module trying to use the function.
OR if the module just doesn't declare any dependencies.
The Change
The behavior of finding functions should not be dependent on the modules dependencies as defined in metadata.json for the module.
We should search the entire modulepath for a function and not just in the declared dependencies.
We can retain some of the optimization by searching in declared dependencies first and then if not found extend the search to all modules. This makes the optimization opt-in and not required.
Attachments
Issue Links
- blocks
-
PDK-956 pdk should not enforce an empty array for dependencies if no dependencies are given
-
- Closed
-
-
PUP-6953 Puppet should give a more direct error when it can't find a 4.x function because of a missing module dependency
-
- Closed
-
- causes
-
PUP-9268 5.5.7 breaks custom function
-
- Closed
-
- is duplicated by
-
PUP-9077 Inconsistent undef value received by 4.x API Ruby functions after touched by 3.x Ruby function
-
- Closed
-
- relates to
-
PUP-9509 Puppet 3 API functions should be loaded from the pluginsync location as part of the cache system loader
-
- Resolved
-
-
PDK-956 pdk should not enforce an empty array for dependencies if no dependencies are given
-
- Closed
-
-
PUP-8559 puppet-agent : Datatypes not loaded when using dependencies
-
- Closed
-