Commit Graph

547 Commits

Author SHA1 Message Date
Will Hopper 8ec6a68d98 (maint) Pin YARD to 0.9.5
There is currently a parsing bug in YAD 0.9.6 and above
which causes errors on certain strings with '/' characters.
We'll pin to YARD 0.9.5 until the issue is resolved on YARD's
side.

See https://github.com/lsegal/yard/issues/1054.
2017-01-10 12:24:05 -08:00
Jesse Scott 2710e7a8e9 Merge pull request #131 from HAIL9000/maint/master/correct_param_tag_example
(maint) Fix @param type examples in README
2016-12-20 12:45:42 -08:00
Hailee Kenney 303c1eda1f (maint) Fix @param type examples in README
Correct the examples of using a parameter type in the @param tag
so that they match how the YARD documentation suggests the tag
should be used.

http://www.rubydoc.info/gems/yard/file/docs/Tags.md#param
2016-12-20 11:43:14 -08:00
Jesse Scott 5ae446fcba Merge pull request #130 from whopper/PDOC-143/windows-readme
(PDOC-143) Add installation instructions for PE 3.8 in Windows
2016-12-02 12:17:03 -08:00
Will Hopper 30ffd147f1 (maint) Turn off unnecessary rubocop Bundler warnings 2016-12-02 11:38:40 -08:00
Will Hopper 9d18af4114 (PDOC-143) Add installation instructions for PE 3.8 in Windows 2016-12-02 11:19:56 -08:00
Jesse Scott 1bd8575acb Merge pull request #129 from whopper/PDOC-107/1.0-release
(PDOC-137) Bump version to 1.0.0 and update CHANGELOG
2016-11-28 12:35:12 -08:00
Will Hopper 0123e8f79b (PDOC-137) Bump version to 1.0.0 and update CHANGELOG 2016-11-28 12:28:12 -08:00
Will Hopper 94605205b3 Merge pull request #128 from jbondpdx/master
(PDOC-133) revise+edit strings readme
2016-11-23 13:58:20 -08:00
jbondpdx 1f9a99a37a (PDOC-133) Edits to Strings README 2016-11-23 12:55:55 -08:00
Jesse Scott 95df5e6fa9 Merge pull request #127 from whopper/PDOC-125/acceptance
(PDOC-125) Update JSON acceptance test with signatures changes
2016-11-15 11:18:27 -08:00
Will Hopper bb9db53702 (PDOC-125) Update JSON acceptance test with signatures changes 2016-11-15 11:01:12 -08:00
Jesse Scott 6c35f889d4 Merge pull request #119 from whopper/PDOC-125/master/overload_refactor
(PDOC-125) Display all puppet function signatures in top-level signature key
2016-11-14 14:16:06 -08:00
Will Hopper f8c5628b66 (PDOC-125) Update JSON schema to reflect addition of `signatures` 2016-11-14 13:22:42 -08:00
Will Hopper e4df165489 (PDOC-125) Update JSON tests for `signatures` key 2016-11-14 13:05:07 -08:00
Will Hopper 6ad74b0500 (PDOC-125) Display all puppet function signatures in top-level signature array
This commit adds a new top-level key to the JSON schema for Ruby 3x/4x
puppet functions: `signatures`. This key is an array and is constructed entirely
with data from existing elements of the puppet function object. The data
structure itself remains unchanged, as this commit only affects the final
JSON output for functions.

In the case of a puppet 4x function with multiple dispatches (overloads),
the signatures key is populated with the equivalent of an overload tag
for each which includes the signature and any param or return tags for
the dispatch.

In the case of a puppet function with only one dispatch, the array is
simply populated with a single element containing a lone dispatch
and its param and return tags.

Note that this change does not affect the internal structure or
representation of puppet function objects, but rather only affects
its final display form when serialized into JSON. All prior data
has been left intact, and the only change here is the addition
of the `signatures` member to the JSON output.
2016-11-14 12:53:49 -08:00
Jesse Scott 70d5b1ccd7 Merge pull request #122 from whopper/PDOC-129/master/overload-empty-docstring
(PDOC-129) Include tags in overload objects when serialized as JSON
2016-11-14 12:51:38 -08:00
Will Hopper c56d9c60a4 (PDOC-129) Include tags in overload objects when serialized as JSON
Previously, overload objects were not displaying their tags when
they had no docstring text. This was due to an issue in the overload
`to_hash` method, which prevented the tags from being serialized when
the dispatch had no top-level text. This commit updates that logic
so that the tags will always be included in the hash if they exist.
2016-11-14 11:45:45 -08:00
Jesse Scott df8e58b0c8 Merge pull request #125 from whopper/PDOC-135/4x_dispatch_return_type
(PDOC-135) Detect `return_type` calls in 4.x function dispatches
2016-11-14 11:37:05 -08:00
Jesse Scott bf68ae0022 Merge pull request #126 from whopper/PDOC-136/3x_function_return
(PDOC-136) Detect return type syntax in Puppet Language functions
2016-11-14 11:36:40 -08:00
Will Hopper 36bc0dd98c (PDOC-135) Detect `return_type` calls in 4.x function dispatches
Previously, Strings ignored calls to `return_type` in Puppet 4.x API
function dispatches, preventing the return types of overloads from
being automatically determined. This commit adds a check for a node
with a `return_type` call and handles it properly.
2016-11-14 11:04:41 -08:00
Jesse Scott 7d5dd68593 Merge pull request #124 from puppetlabs/turbodog-patch-1
Update README install instructions for PE
2016-11-11 16:31:39 -08:00
Will Hopper 06617469c4 (maint) Run spec tests against Puppet 4.8 2016-11-11 14:48:02 -08:00
Will Hopper b3c8d52b25 (PDOC-136) Detect return type syntax in Puppet language functions
Previously, Strings ignored the return type in Puppet language functions
that used the following syntax:

function foo() >> String {}

This commit updates the FunctionStatement class to use the return
type from such a statement if it exists. In addition, Strings will
now emit a warning if the return type specified in the @return tag
doesn't match the type specified in the function definition.
2016-11-11 14:47:35 -08:00
Lindsey Smith de4bd41193 Update README install instructions for PE
Update the install instructions for the versions of Puppet Enterprise that contain Puppet 4.x
2016-11-09 17:37:51 -08:00
Jesse Scott c1dfeb9864 Merge pull request #123 from whopper/PDOC-93/search_bar_css
(PDOC-93) Ensure search bar doesn't overlap item list in nav bar
2016-11-07 16:47:20 -08:00
Will Hopper 46af92731d (PDOC-93) Ensure search bar doesn't overlap item list in nav bar 2016-11-07 14:23:45 -08:00
Jesse Scott 2e64a37327 Merge pull request #121 from whopper/PDOC-121/master/gh_pages_sha
(PDOC-121) Include tag or SHA in gh_pages task commit
2016-11-03 13:51:53 -07:00
Will Hopper 05806e7aee (PDOC-121) Include tag or SHA in gh_pages task commit
This commit updates the gh_pages task to reference the SHA
of the branch being documented in the documentation commit.

In addition, the description of each task except `update`
has been removed, as they are not useful on their own and
should be considered private. This is necessary in order
to hide the tasks from the output of `rake -T`.
2016-11-03 13:41:20 -07:00
Will Hopper 5427ee859f Merge pull request #116 from ghoneycutt/improve_testing
Test against specific, supported versions of Puppet
2016-11-02 11:10:46 -07:00
Garrett Honeycutt 3f94656398 (maint) Ignore more cops as rubocop changes quickly 2016-11-02 14:00:46 -04:00
Garrett Honeycutt 516b1594ba (maint) Test against specific, supported versions of Puppet 2016-11-02 14:00:41 -04:00
Jesse Scott b8970b4294 Merge pull request #118 from whopper/PDOC-126/master/ruby_quotes
(PDOC-126) Remove `%Q` ruby quotation syntax from parsed strings
2016-10-28 12:00:42 -07:00
Will Hopper c4705d9705 (PDOC-126) Add spec test for util module and scrub_string method 2016-10-28 11:54:48 -07:00
Will Hopper e291f8cfe9 (PDOC-126) Remove `%Q` ruby quotation syntax from parsed strings
Previously, YARD would parse ruby strings which used %Q notation
and return the syntax literally. This commit adds a new Util
module with a `scrub_string` method to check for such a string
and remove the errant %Q and %q's.
2016-10-28 11:54:34 -07:00
Jesse Scott fb10fdcd50 Merge pull request #117 from whopper/PDOC-130/readme-long-docstrings
(PDOC-130) Add example to README about multi-line tag descriptions
2016-10-26 14:08:22 -07:00
Will Hopper 57475208f8 (PDOC-130) Add example to README about multi-line tag descriptions 2016-10-25 12:55:16 -07:00
Henrik Lindberg bda361a047 Merge pull request #115 from whopper/PDOC-120/gh_pages_jekyll
(PDOC-120) Update gh_pages task to allow publishing of _index.html
2016-10-13 21:20:35 +02:00
Will Hopper 6e3c973868 (PDOC-120) Update gh_pages task to allow publishing of _index.html
Previously, due to Jekyll's default rule of not allowing files beginning
with an '_' to be published, the gh_pages rake task led to broken links.
This commit adds a step to the task which adds a _config.yml file to the
`doc` directory of the gh-pages branch which explicitly allows the file
to be published.
2016-10-13 12:12:13 -07:00
Henrik Lindberg 03d89c55b5 Merge pull request #114 from whopper/PDOC-128/readme/examples
(PDOC-128) Add explanation of @example tag usage in README
2016-10-13 01:53:08 +02:00
Will Hopper 89658718c8 (PDOC-128) Add explanation of @example tag usage in README 2016-10-12 15:00:35 -07:00
Peter Huene d057028975 Merge pull request #113 from whopper/maint/fix_line_num
(maint) Update line number in fixture to fix specs
2016-10-11 16:56:58 -07:00
Will Hopper be0e93e3d6 (maint) Update line number in fixture to fix specs 2016-10-11 16:49:36 -07:00
Peter Huene 4f3f1e639e Merge pull request #111 from whopper/PDOC-95/master/multiple_defaultfor
(PDOC-95) Properly group and display multiple provider `defaultfor`s
2016-10-11 15:33:39 -07:00
Peter Huene 8e911af5a9 Merge pull request #112 from whopper/PDOC-127/master/scrub-feature-docstrings
(PDOC-127) Strip whitespace from type feature docstrings
2016-10-11 15:32:33 -07:00
Will Hopper d0f1fb7174 (PDOC-127) Strip whitespace from type feature docstrings 2016-10-11 14:48:02 -07:00
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
Peter Huene d9c974aa99 Merge pull request #110 from whopper/PDOC-122/3x_newfunction
(PDOC-122) Properly parse `newfunction` calls with newlines
2016-10-10 16:32:11 -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 7df4f9e87c Merge pull request #108 from whopper/PDOC-118/ruby_version_req
(PDOC-119) Add required ruby version to gemspec
2016-10-07 13:58:22 -07:00