microsoft / microsoft/Documentarian

Ensure all public functions define and adhere to the `OutputType` attribute

Open
#118 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Documentarian Documentarian.DevX Documentarian.MarkdownLint Documentarian.MicrosoftDocs Documentarian.ModuleAuthor Documentarian.Vale enhancement
Dominant language
PowerShell
Stars
50
Forks
16
Avg merge
3h 54m
Merged PRs (30d)
2

Description

Prerequisites
  • Accepted Idea: Proposals in this project are created based on ideas that have been marked as Accepted in their Discussion. Before you file an issue for a feature or change, create a discussion. If you file an issue without a discussion, the team may convert it into one.
  • Existing Issue: Search the existing issues and discussions for this repository. If there is an issue or discussion that fits your needs do not file a new one. Subscribe, react, or comment on that issue or discussion instead.
  • Descriptive Title: Write the title for this issue as a short synopsis. If possible, provide context. For example, "Add Get-Foo cmdlet to Documentarian module" instead of "New cmdlet."
Module

Documentarian, Documentarian.DevX, Documentarian.MarkdownLint, Documentarian.MicrosoftDocs, Documentarian.ModuleAuthor, Documentarian.Vale

Summary

As a user, I want the best possible IntelliSense and validation when using the Documentarian modules.

Every public function should declare the OutputType attribute, even if they don't return any objects by default.

Details

When commands define their output type correctly, IntelliSense in the terminal and in editors can help users to write PowerShell code that processes the output of those commands. Without the output types defined, the users need to cast the output explicitly themselves to get IntelliSense to function.

Further, documenting the output types for a command adds sections for those outputs to the documentation, making it easier for users to discover and understand how, why, and when a command returns different objects.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the public functions across the listed Documentarian modules and the PowerShell OutputType attribute documentation linked in the issue. Inventory each command's outputs and determine how the attribute affects generated documentation. Done means every public function declares an accurate OutputType, including functions with no default objects, and the resulting output documentation is available.

Written by the indexing model from the issue text.

Assessment

Tech stack
powershell
Domain
documentation, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.