Puppet: System Administration Automated

Support

Ticket #83 (new defect)

Opened 3 years ago

Last modified 7 months ago

Puppet should be lexically scoped, not dynamically scoped

Reported by: luke Assigned to: luke
Priority: low Milestone:
Component: language Version: 0.17.0
Severity: critical Keywords: None
Cc: None Triage Stage: Needs design decision
Attached Patches: None Complexity: Unknown

Description

In the following code:

$s = "outer"

define print(msg) {
  exec { echo:
    command => "/bin/echo printing $s:",
    logoutput => true
  }
}

define otherprint {
  $s = "otherprint"
  print { msg => "otherprint" }
}

otherprint {}

'print' should find the $s bound in the outer scope, not the otherprint scope.

Change History

06/17/06 19:31:59 changed by Samantha

  • severity changed from normal to critical.
  • cc set to None.
  • component changed from parser to types.
  • priority changed from normal to low.
  • version set to 0.17.0.
  • keywords set to None.
  • type set to defect.

04/19/07 22:42:05 changed by luke

  • specification set to Unnecessary.
  • patch set to None.
  • complexity set to Unknown.
  • approval set to Unnecessary.
  • type set to defect.
  • compatibility set to Unknown.
  • stage set to Needs design decision.

04/24/08 06:46:09 changed by luke

  • component changed from types to language.