{"record":{"id":"37ee09bfcddb353c","repo":"puppetlabs/puppet","slug":"copyright-owner-must-be-a-string-or-an-array-of-st","errorCode":null,"errorMessage":"copyright owner must be a string or an array of strings","messagePattern":"copyright owner must be a string or an array of strings","errorType":"validation","errorClass":"ArgumentError","httpStatus":null,"severity":"error","filePath":"lib/puppet/interface/documentation.rb","lineNumber":281,"sourceCode":"      else\n        \"Unknown copyright owner and years.\"\n      end\n    end\n\n    # Sets the copyright owner\n    # @param value [String, Array<String>] The copyright owner or\n    #   owners.\n    # @return [String] Comma-separated list of copyright owners\n    # @api private\n    attr_reader :copyright_owner\n\n    def copyright_owner=(value)\n      case value\n      when String then @copyright_owner = value\n      when Array  then @copyright_owner = value.join(\", \")\n      else\n        # TRANSLATORS 'copyright' is an attribute name and should not be translated\n        raise ArgumentError, _(\"copyright owner must be a string or an array of strings\")\n      end\n    end\n\n    # Sets the copyright year\n    # @param value [Integer, Range<Integer>, Array<Integer, Range>] The\n    #   copyright year or years.\n    # @return [String]\n    # @api private\n    attr_reader :copyright_years\n\n    def copyright_years=(value)\n      years = munge_copyright_year value\n      years = (years.is_a?(Array) ? years : [years])\n              .sort_by do |x| x.is_a?(Range) ? x.first : x end\n\n      @copyright_years = years.map do |year|\n        if year.is_a? Range then\n          \"#{year.first}-#{year.last}\"","sourceCodeStart":263,"sourceCodeEnd":299,"githubUrl":"https://github.com/puppetlabs/puppet/blob/e227c27540975c25aa22d533a52424a9d2fc886a/lib/puppet/interface/documentation.rb#L263-L299","documentation":"Error \"copyright owner must be a string or an array of strings\" thrown in puppetlabs/puppet.","triggerScenarios":"Thrown at lib/puppet/interface/documentation.rb:281 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"e227c27540975c25aa22d533a52424a9d2fc886a","analyzedAt":"2026-08-21T20:49:46.650Z","schemaVersion":2},"datasetVersion":"2026-08-21T23:17:16.201Z"}