Skip to content

Conversation

@liliankasem
Copy link
Member

@liliankasem liliankasem commented Nov 25, 2025

Issue describing the changes in this PR

n/a

Pull request checklist

  • My changes do not require documentation changes
    • Otherwise: Documentation issue linked to PR
  • My changes do not need to be backported to a previous version
    • Otherwise: Backport tracked by issue/PR #issue_or_pr
  • My changes should not be added to the release notes for the next release
    • Otherwise: I've added my notes to release_notes.md
  • I have added all required tests (Unit tests, E2E tests)

Additional information

This PR improves the help system for Azure Functions Core Tools to provide a cleaner, more organized user experience while ensuring no breaking changes to existing functionality. All changes are isolated to help display logic - no breaking changes to core functionality. Commands like func host start and func function new continue to work exactly as before; they're simply hidden from the main help list to reduce clutter while keeping commonly-used contexts visible.

Help Display Improvements

  • Added global Options section to func --help showing --script-root and --verbose flags before contexts and actions
  • Reordered top-level actions to follow logical workflow: initnewstartpack (instead of alphabetical)
  • Removed function and host contexts from general help display (still functional via func host start, func function new, etc.)
  • Controlled action visibility per context (e.g., logs hidden in general help but shown in func kubernetes --help)
  • Standardized formatting with consistent indentation and gray text for options (matching other commands)
  • Improve func init --help output to properly display options for each worker.

Bug Fixes

  • Fixed func azure --help treating --help as an unknown argument
  • Fixed validation errors when using --help with commands that require arguments:
    • settings add --help
    • settings delete/remove --help
    • azure functionapp publish --help
  • Suppressed DurableManager warnings during help display (no more "Could not find local metadata file" messages)
  • Early initialization of ScriptHostHelpers.IsHelpRunning flag to prevent file-based initialization during help

Testing

  • Created eng/scripts/validate-command-help-display.sh to verify all --help commands work without exceptions
  • Script tests 60+ command combinations and outputs results to out/help-command-outputs/ for validation
  • Works from both repo root and eng/scripts directory

@liliankasem liliankasem requested a review from a team as a code owner November 25, 2025 23:27
@liliankasem liliankasem changed the title Clean up func --help Cleanup & fix func --help & func init --help output Nov 25, 2025
@liliankasem liliankasem merged commit 6ee444f into main Dec 1, 2025
38 checks passed
@liliankasem liliankasem deleted the liliankasem/refactor/init-action-help branch December 1, 2025 21:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants