vendored/puppet/lib/puppet/pops/loader/loader_paths.rb in bolt-0.15.0 vs vendored/puppet/lib/puppet/pops/loader/loader_paths.rb in bolt-0.16.0
- old
+ new
@@ -249,11 +249,11 @@
def typed_name(type, name_authority, relative_path, module_name)
n = ''
n << module_name unless module_name.nil?
- # Remove extension regardless of what it is. A task name cannot contain dots
- relative_path = relative_path.sub(/\.[^\/]*\z/, '')
+ # Remove the file extension, defined as everything after the *last* dot.
+ relative_path = relative_path.sub(%r{\.[^/.]*\z}, '')
if relative_path == 'init' && !(module_name.nil? || module_name.empty?)
TypedName.new(type, module_name, name_authority)
else
relative_path.split('/').each do |segment|