Uploaded image for project: 'Documentation'
  1. Documentation
  2. DOCUMENT-1020

Missing Puppet Data Types from documentation

    XMLWordPrintable

    Details

    • Template:
    • QA Risk Assessment:
      Needs Assessment

      Description

      I was doing a review of the Data Types documentation (https://puppet.com/docs/puppet/6.5/lang_data_type.html and https://puppet.com/docs/puppet/6.5/lang_data_abstract.html) and I think I noticed some Data Types that missing.

      So our documentation lists:

      Any
      Array
      Boolean
      Callable
      CatalogEntry
      Class
      Collection
      Data
      Default
      Enum
      Float
      Hash
      Integer
      NotUndef
      Numeric
      Optional
      Pattern
      Regexp
      Resource
      Scalar
      Sensitive
      String
      Struct
      Tuple
      Type
      Undef
      

      However the Puppet Specifications site (https://github.com/puppetlabs/puppet-specifications/blob/master/language/types_values_variables.md) also lists these additional Types which are not documented

      Binary
      Deferred
      Iterable
      Iterator
      Runtime
      ScalarData
      SemVer
      SemVerRange
      Timespan
      Timestamp
      URI
      Variant
       
      The following types are mentioned as Experimental so not surprised they're not documented
      Object
      TypeSet
      

      However the Puppet Type code also has definitions for these Types which are not documented either in the Puppet Specifications (which is odd) nor on the Puppet Documentation site

      Error
      Init
      TypeAlias
      TypeReference
      

      Error
      https://github.com/puppetlabs/puppet/blob/master/lib/puppet/pops/types/type_factory.rb#L531-L536

      Init
      https://github.com/puppetlabs/puppet/blob/master/lib/puppet/pops/types/type_factory.rb#L75

      TypeAlias
      https://github.com/puppetlabs/puppet/blob/master/lib/puppet/pops/types/type_factory.rb#L607-L613

      TypeRefrence
      https://github.com/puppetlabs/puppet/blob/master/lib/puppet/pops/types/type_factory.rb#L615-L621

      My expectation would be that all Types should be listed in the Puppet Specifications and should at least be worthy of a note in the Puppet Documentation site e.g.

      The following types exist but are not intended to be used by Module authors:
      Init
      TypeAlias
      ....
      

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              Unassigned Unassigned
              Reporter:
              glenn.sarti Glenn Sarti
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  Zendesk Support