Commit Graph

70 Commits

Author SHA1 Message Date
Will Hopper a5a3d6b48c (PDOC-95) Properly group and display multiple provider `defaultfor`s
Prior to this commit, strings did not properly handle providers
which had multiple related `defaultfor`s. In code, these are written
as comma-separated constraints. This commit updates strings' puppet
provider handler, as well as the template which generates HTML for
`defaultfor` statements.

Note that it was necessary to make a breaking change to the JSON
schema to accomodate multiple AND'ed defaults. Previously, provider
defaults were contained in a single key-value map. Now, they are
contained in an array of key-value lists, which allows multiple
constraints to be associated with each other.
2016-10-11 13:57:00 -07:00
Will Hopper ca98890cdd (PDOC-122) Properly parse `newfunction` calls with newlines
When `newfunction` is separated from the Puppet::Parser::Functions module name by a
newline, YARD ignores the namespace and uses `newfunction` as the source of the
first statement.

Prior to this commit, strings didn't recognize this case, and 3.x functions written
in this way were not parsed as functions. This commit updates the ruby function handler
to identify and properly parse 3.x functions that include a newline between the
Puppet::Parser::Function namespace and the newfunction method call.
2016-10-10 15:27:23 -07:00
Peter Huene 7897c70a52
(maint) RuboCop fixes.
This commit fixes a few RuboCop related failures.
2016-09-15 17:15:54 -07:00
Peter Huene cf77ef1379
(PDOC-63) Add specs to test the new implementation.
This commit adds specs to cover parts of the new implementation of Puppet
Strings.
2016-09-15 17:15:54 -07:00
Peter Huene f2aa7d00c5
(PDOC-63) Implement the Puppet Strings rake tasks.
This commit implements the `strings:generate` and `strings:gh_pages:update`
rake tasks.

The `strings:generate` task is responsible for generating Puppet Strings
documentation.

The `strings:gh_pages:update` task is responsible for updating the `gh_pages`
branch of a GitHub repository with the latest Puppet Strings documentation.
2016-09-15 17:15:53 -07:00
Peter Huene 1be391ee87
(PDOC-63) Implement JSON output.
This commit implements the JSON output for Puppet strings.
2016-09-15 17:15:50 -07:00
Peter Huene f025efe557
(PDOC-63) Implement a Puppet function YARD handler.
This commit implements a YARD handler for Puppet functions and the
associated code object and templates.
2016-09-15 13:55:00 -07:00
Peter Huene b1a15bd43a
(PDOC-63) Implement a Puppet provider YARD handler.
This commit implements a YARD handler for Puppet providers and the
associated code object and templates.
2016-09-15 13:54:55 -07:00
Peter Huene 22396a13d0
(PDOC-63) Implement a Puppet resource type YARD handler.
This commit implements a YARD handler for Puppet resource types and the
associated code object and templates.
2016-09-15 13:54:50 -07:00
Peter Huene 187dec9cee
(PDOC-63) Implement a Puppet defined type YARD handler.
This commit implements a YARD handler for Puppet defined types and the
associated code object and templates.
2016-09-15 13:54:45 -07:00
Peter Huene 7c3cd5463c
(PDOC-63) Implement a Puppet class YARD handler.
This commit implements a YARD handler for Puppet classes and the associated
code object and templates.
2016-09-15 13:54:37 -07:00
Peter Huene f2e41a9c23
(PDOC-63) Implement the Puppet parser.
This commit implements the Puppet language parser that future handlers will use
to generate YARD code objects for classes, defined types, and functions written
in Puppet.
2016-09-15 13:54:32 -07:00
Peter Huene d4bab8a5ab
(PDOC-63) Add initial YARD configuration.
This commit adds the initial YARD configuration.  Subsequent commits will
integrate the code objects, handlers, parsers, tags, and templates to support
Puppet code.
2016-09-15 13:54:27 -07:00
Peter Huene ea9dd0c846
(PDOC-63) Delete the old implementation.
This commit deletes the old implementation to assist in cleaner code reviews of
the upcoming reimplementation.

This commit also moves YARD to version 0.9.5 and lays down a bare bones
implementation of Puppet Strings that currently does nothing.
2016-09-15 13:54:18 -07:00
Peter Huene 56f266db4b
(maint) Rename puppetlab-strings to puppet-strings where appropriate.
This commit changes the source and documentation to reference this project as
`puppet-strings` rather than `puppetlabs-strings`.

This makes the source and project match the gem name.
2016-09-14 13:42:28 -07:00
David Danzilio 825614067a Handling existing doc directory 2016-07-05 15:52:06 -04:00
David Danzilio 84e6ade587 Adding GitHub Pages tasks 2016-07-05 15:52:06 -04:00
Jan Vansteenkiste 9f349dca9e PDOC-77: Add a new rake task which can be configured 2016-05-06 11:54:36 +02:00
Gareth Rushgrove 9160e6f970 (PDOC-70) Always generate the JSON doc when running the rake task
I'm super enthusiastic about the potential for folks to build things on
top of the JSON output, we've had several related conversations at
Config Management Camp and on puppet-dev recently. I think this is a
sane default, and calling the file strings.json seems a nice
reinforcement.
2016-03-13 12:15:03 +00:00
David Danzilio aac19e67b7 (PDOC-28) Make puppet strings available as a gem 2015-09-16 13:00:00 -04:00