Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,12 @@ indent_size = 2
indent_size = 2

# PowerShell files
# PowerShell uses CRLF to maintain compatibility with Windows and PowerShell conventions
# This overrides the global end_of_line = lf setting and aligns with .gitattributes line 14
# Use LF + no BOM so the `#!/usr/bin/env pwsh` shebang works on Linux/macOS.
# (CR breaks kernel exec lookup; BOM before `#!` prevents shebang recognition.)
# Modern PowerShell 7+ handles LF on Windows transparently; users with
# autocrlf=true still get CRLF in their working tree on checkout.
[*.ps1]

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed in 55fb82a — went with the "fix the comment" path rather than adding explicit end_of_line / charset, because every other [*.xxx] section in this file only overrides what differs from the [*] defaults. Adding explicit settings here would be inconsistent with the rest of the file's pattern. Updated the comment to accurately describe that LF + no-BOM come from the global section above (and why it matters — the shebang).

indent_size = 4
end_of_line = crlf
charset = utf-8-bom

# C# files
[*.cs]
Expand Down
13 changes: 8 additions & 5 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,14 @@
*.fsx text eol=lf

# Scripts
# PowerShell scripts: CRLF line endings (intentional override)
# Both .gitattributes and .editorconfig consistently configure PowerShell files
# to use CRLF (Windows-style) line endings for PowerShell convention compliance.
# See .editorconfig [*.ps1] section for the matching configuration.
*.ps1 text eol=crlf
# PowerShell scripts: LF line endings, no BOM. Required for the
# `#!/usr/bin/env pwsh` shebang to work on Linux/macOS — the kernel
# parses CR as part of the interpreter name (looking for `pwsh\r`),
# and a UTF-8 BOM before `#!` prevents shebang recognition entirely.
# Modern PowerShell 7+ handles LF on Windows transparently; Git's
# autocrlf still gives Windows users CRLF in their working tree if
# desired without forcing CRLF into the index.
*.ps1 text
Comment on lines +12 to +19

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 55fb82a — changed *.ps1 text to *.ps1 text eol=lf to match the explicit-eol convention every other entry in this file uses. Both files are now self-consistent with their own surrounding conventions.



# Build and configuration files
Expand Down
Loading