puppetlabs/puppet · error · ArgumentError

You must pass a callback for non-NONE events

Error message

You must pass a callback for non-NONE events

What it means

Error "You must pass a callback for non-NONE events" thrown in puppetlabs/puppet.

Source

Thrown at lib/puppet/relationship.rb:31

  attr_accessor :source, :target, :callback

  attr_reader :event

  def self.from_data_hash(data)
    source = data['source']
    target = data['target']

    args = {}
    args[:event] = :"#{data['event']}" if data["event"]
    args[:callback] = :"#{data['callback']}" if data["callback"]

    new(source, target, args)
  end

  def event=(event)
    # TRANSLATORS 'NONE' should not be translated
    raise ArgumentError, _("You must pass a callback for non-NONE events") if event != :NONE and !callback

    @event = event
  end

  def initialize(source, target, options = {})
    @source = source
    @target = target

    options = (options || {}).each_with_object({}) { |a, h| h[a[0].to_sym] = a[1]; }
    [:callback, :event].each do |option|
      value = options[option]
      send(option.to_s + "=", value) if value
    end
  end

  # Does the passed event match our event?  This is where the meaning
  # of :NONE comes from.
  def match?(event)

View on GitHub (pinned to e227c27540)

When it happens

Trigger: Thrown at lib/puppet/relationship.rb:31 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of puppetlabs/puppet@e227c27540 (2026-08-21). Data as JSON: /api/errors/36d3f4cdce6ab79e. Report an issue: GitHub.