René's URL Explorer Experiment


Title: Output custom object with headers when no values are present by jshigetomi · Pull Request #25096 · PowerShell/PowerShell · GitHub

Open Graph Title: Output custom object with headers when no values are present by jshigetomi · Pull Request #25096 · PowerShell/PowerShell

X Title: Output custom object with headers when no values are present by jshigetomi · Pull Request #25096 · PowerShell/PowerShell

Description: PR Summary Fixes: #24698 This pull request includes changes to improve the handling of empty and null values in the ConvertFrom-Csv command and updates the corresponding unit tests to verify the new behavior. The most important changes include modifying the Import method in CsvCommands.cs and adding new unit tests in ConvertFrom-Csv.Tests.ps1. Enhancements to ConvertFrom-Csv command: src/Microsoft.PowerShell.Commands.Utility/commands/utility/CsvCommands.cs: Updated the Import method to skip empty lines only when using Import-CSV, but to keep them when using ConvertFromCSV. Unit tests updates: test/powershell/Modules/Microsoft.PowerShell.Utility/ConvertFrom-Csv.Tests.ps1: Added new unit tests to verify that ConvertFrom-Csv handles empty and null values correctly. PR Context Improve CSV parsing edge case handling and add comprehensive unit tests PR Checklist PR has a meaningful title Use the present tense and imperative mood when describing your changes Summarized changes Make sure all .h, .cpp, .cs, .ps1 and .psm1 files have the correct copyright header This PR is ready to merge and is not Work in Progress. If the PR is work in progress, please add the prefix WIP: or [ WIP ] to the beginning of the title (the WIP bot will keep its status check at Pending while the prefix is present) and remove the prefix when the PR is ready. Breaking changes None OR Experimental feature(s) needed Experimental feature name(s): User-facing changes Not Applicable OR Documentation needed - [ ] Issue filed: Testing - New and feature N/A or can only be tested interactively OR Make sure you've added a new test if existing tests do not effectively test the code changed Tooling I have considered the user experience from a tooling perspective and don't believe tooling will be impacted. OR I have considered the user experience from a tooling perspective and opened an issue in the relevant tool repository. This may include: Impact on PowerShell Editor Services which is used in the PowerShell extension for VSCode (which runs in a different PS Host). Issue filed: Impact on Completions (both in the console and in editors) - one of PowerShell's most powerful features. Issue filed: Impact on PSScriptAnalyzer (which provides linting & formatting in the editor extensions). Issue filed: Impact on EditorSyntax (which provides syntax highlighting with in VSCode, GitHub, and many other editors). Issue filed:

Open Graph Description: PR Summary Fixes: #24698 This pull request includes changes to improve the handling of empty and null values in the ConvertFrom-Csv command and updates the corresponding unit tests to verify the ne...

X Description: PR Summary Fixes: #24698 This pull request includes changes to improve the handling of empty and null values in the ConvertFrom-Csv command and updates the corresponding unit tests to verify the ne...

Opengraph URL: https://github.com/PowerShell/PowerShell/pull/25096

X: @github

direct link

Domain: github.com

route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:d7c19d5f-6f47-98e7-9d07-c6574f8a5dc6
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idB10E:3D9361:DA6908:124FEA2:6A5CF772
html-safe-nonceed4bdefa16fb8e6667dc27acbc215e0be97fdb6ff011e75d05ece91832ad598f
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJCMTBFOjNEOTM2MTpEQTY5MDg6MTI0RkVBMjo2QTVDRjc3MiIsInZpc2l0b3JfaWQiOiIxMDQ1Nzc1Nzk5MDcxNjAyNTQ3IiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0=
visitor-hmacd31204f0956cb8d7fdb72b1d74d7bc960c0e06ad29fe733a6df345dcf40b7cd2
hovercard-subject-tagpull_request:2360117043
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///pull_requests/show/files
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/PowerShell/PowerShell/pull/25096/files
twitter:imagehttps://avatars.githubusercontent.com/u/124807742?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/124807742?s=400&v=4
og:image:altPR Summary Fixes: #24698 This pull request includes changes to improve the handling of empty and null values in the ConvertFrom-Csv command and updates the corresponding unit tests to verify the ne...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
None5290d7e14309ad1e76106a9c4237bd1041517e83ea182c8ab756752cb0c6940b
turbo-cache-controlno-preview
diff-viewunified
go-importgithub.com/PowerShell/PowerShell git https://github.com/PowerShell/PowerShell.git
octolytics-dimension-user_id11524380
octolytics-dimension-user_loginPowerShell
octolytics-dimension-repository_id49609581
octolytics-dimension-repository_nwoPowerShell/PowerShell
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id49609581
octolytics-dimension-repository_network_root_nwoPowerShell/PowerShell
turbo-body-classeslogged-out env-production page-responsive full-width
disable-turbotrue
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release9c975978430e9ad293956f2bbdaf153b1bd84a99
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/PowerShell/PowerShell/pull/25096/files#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2FPowerShell%2FPowerShell%2Fpull%2F25096%2Ffiles
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/open-source/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/open-source/accelerator
GitHub Starshttps://stars.github.com
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/enterprise/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2FPowerShell%2FPowerShell%2Fpull%2F25096%2Ffiles
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fpull_requests%2Fshow%2Ffiles&source=header-repo&source_repo=PowerShell%2FPowerShell
Reloadhttps://github.com/PowerShell/PowerShell/pull/25096/files
Reloadhttps://github.com/PowerShell/PowerShell/pull/25096/files
Reloadhttps://github.com/PowerShell/PowerShell/pull/25096/files
Please reload this pagehttps://github.com/PowerShell/PowerShell/pull/25096/files
PowerShell https://github.com/PowerShell
PowerShellhttps://github.com/PowerShell/PowerShell
Notifications https://github.com/login?return_to=%2FPowerShell%2FPowerShell
Fork 8.4k https://github.com/login?return_to=%2FPowerShell%2FPowerShell
Star 54.4k https://github.com/login?return_to=%2FPowerShell%2FPowerShell
Code https://github.com/PowerShell/PowerShell
Issues 1.3k https://github.com/PowerShell/PowerShell/issues
Pull requests 289 https://github.com/PowerShell/PowerShell/pulls
Discussions https://github.com/PowerShell/PowerShell/discussions
Actions https://github.com/PowerShell/PowerShell/actions
Projects https://github.com/PowerShell/PowerShell/projects
Security and quality 3 https://github.com/PowerShell/PowerShell/security
Insights https://github.com/PowerShell/PowerShell/pulse
Code https://github.com/PowerShell/PowerShell
Issues https://github.com/PowerShell/PowerShell/issues
Pull requests https://github.com/PowerShell/PowerShell/pulls
Discussions https://github.com/PowerShell/PowerShell/discussions
Actions https://github.com/PowerShell/PowerShell/actions
Projects https://github.com/PowerShell/PowerShell/projects
Security and quality https://github.com/PowerShell/PowerShell/security
Insights https://github.com/PowerShell/PowerShell/pulse
Sign up for GitHub https://github.com/signup?return_to=%2FPowerShell%2FPowerShell%2Fissues%2Fnew%2Fchoose
terms of servicehttps://docs.github.com/terms
privacy statementhttps://docs.github.com/privacy
Sign inhttps://github.com/login?return_to=%2FPowerShell%2FPowerShell%2Fissues%2Fnew%2Fchoose
jshigetomihttps://github.com/jshigetomi
masterhttps://github.com/PowerShell/PowerShell/tree/master
fixNoValueCSVInputhttps://github.com/PowerShell/PowerShell/tree/fixNoValueCSVInput
Conversation 37 https://github.com/PowerShell/PowerShell/pull/25096
Commits 34 https://github.com/PowerShell/PowerShell/pull/25096/commits
Checks 35 https://github.com/PowerShell/PowerShell/pull/25096/checks
Files changed https://github.com/PowerShell/PowerShell/pull/25096/files
Please reload this pagehttps://github.com/PowerShell/PowerShell/pull/25096/files
Output custom object with headers when no values are present https://github.com/PowerShell/PowerShell/pull/25096/files#top
Show all changes 34 commits https://github.com/PowerShell/PowerShell/pull/25096/files
df47ac8 Output custom object with headers when no values are present Feb 26, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/df47ac88663c90994fb1444aec12baf8ff11c5a2
4ccc9ad Merge branch 'master' into fixNoValueCSVInput jshigetomi Feb 26, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/4ccc9ad2f5b6e3eb6df1598d1ebef3a7be377414
ba25fa7 Remove if statement that skips blank lines Feb 26, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/ba25fa7df67189eb79151c1b7ca5546bdc3781bd
7ef2c8b Merge branch 'master' into fixNoValueCSVInput jshigetomi Feb 26, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/7ef2c8b07d8d0068a2ce5e32edd18fd5f5c734f4
83a53ef Only remove the if statement for ConvertFrom-CSV Feb 26, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/83a53efd43e42d4fb198a07684824584e7587f73
b7f491d Merge branch 'fixNoValueCSVInput' of https://github.com/powershell/po… Feb 26, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/b7f491d4299eec6b087adf92c72d6866812c366b
3786536 Add test for testing null values and empty string values Feb 26, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/37865364c11fab95be07b3fe60c5483e915e41b3
50db112 Add comment about skiping lines Feb 26, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/50db112723105c0937f3b670d1f734924502e01c
c4950da Delete trailing whitespace Feb 26, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/c4950dab7a188d5f7d30015f9898d59821ffadef
472c6d0 Add more test cases for empty and null values Feb 26, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/472c6d0eefd2fbec2af6b769e7abdc6b399fa4a1
bfdc498 Fix test to make it pester 4.10 compatible Feb 26, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/bfdc498c1ec69da14f82e3d383add5c529ca7683
64e6de8 Add iSazonov's changes Mar 4, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/64e6de8e2b35d1f02b07a119f1accf7984f74063
8dd4a66 Remove skip no values check and add skip blank check Mar 6, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/8dd4a66a173c22f6e389e58aabc7b226e4391269
6c2c6c7 Revert to private feed Mar 6, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/6c2c6c7e97e150ad05c314f89a3df74328acc287
e965e78 Revert nuget.config Mar 6, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/e965e7818a40ae7059fc2ce557c4709913da17dd
918eadd Add test null and empty string cases for ConvertFrom-Csv and Import-Csv Mar 11, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/918eadd93d52c3ef4705901df497ae19f867717f
e1729e6 Merge branch 'master' into fixNoValueCSVInput jshigetomi Mar 27, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/e1729e63c7868a9af59ee249fde5b09dce2ba25c
0ea9e53 Add NoNewLine to test and revert test cases to be the same Mar 27, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/0ea9e5377e9b0ae701f0e95d8572d4bd6e6378d4
6e3fa23 Added tests for edge cases and updated old test for Context and typo jshigetomi Aug 4, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/6e3fa232c3051e89a98de73ebe433d34f85ea6f6
de52856 adjust import-csv tests jshigetomi Aug 4, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/de52856de89b870f53e9efe850de3e28d5a72c38
87c5def Adjust ConvertFrom csv tests jshigetomi Aug 4, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/87c5def27e4342d139870fb144ae2549f5ad5b4b
1ba4e61 fix header param test jshigetomi Aug 4, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/1ba4e61635fd2e649f9bafea46fc4f9273ff2b3d
7a24009 Merge branch 'master' into fixNoValueCSVInput jshigetomi Aug 4, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/7a24009de86cac64a92de338a161be1bcdc96463
effd7b2 Clean up comments jshigetomi Aug 5, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/effd7b21fe567fe9c5cc3afbbe5a1cc0c6129461
5bd8b40 Merge branch 'fixNoValueCSVInput' of https://github.com/powershell/po… jshigetomi Aug 5, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/5bd8b404eeab10d907e3b55f1e334a66dbc554e2
db0bbea Merge branch 'master' into fixNoValueCSVInput jshigetomi Aug 27, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/db0bbeab11d5beb028e0b893ef6489c210cea98c
f693967 Merge branch 'master' into fixNoValueCSVInput jshigetomi Sep 2, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/f69396739669d04af279b14666b56d16bb700d21
0b22c87 Merge branch 'master' into fixNoValueCSVInput jshigetomi Sep 29, 2025 https://github.com/PowerShell/PowerShell/pull/25096/commits/0b22c87353112cd9ffe8967553e12f1374e78b21
903393f Make tests platform aware jshigetomi Jan 13, 2026 https://github.com/PowerShell/PowerShell/pull/25096/commits/903393ff371e4d183957b27655930d4d30ab63bc
f1001ab Update test/powershell/Modules/Microsoft.PowerShell.Utility/ConvertFr… jshigetomi Jan 13, 2026 https://github.com/PowerShell/PowerShell/pull/25096/commits/f1001ab384a9611601aa606fe40a43a87a8ed34f
bc9f972 Merge branch 'master' into fixNoValueCSVInput jshigetomi Jan 13, 2026 https://github.com/PowerShell/PowerShell/pull/25096/commits/bc9f972676ce4ad7983927d4a621cd5efd674079
890f695 Merge branch 'master' into fixNoValueCSVInput jshigetomi Apr 14, 2026 https://github.com/PowerShell/PowerShell/pull/25096/commits/890f695a98760a3252f711cf34b12669543b7754
010fdb1 Use BeExactly Apr 14, 2026 https://github.com/PowerShell/PowerShell/pull/25096/commits/010fdb1c0ec1e4d30e9a7583f38a5001cad3aa08
297c2fb Merge branch 'master' into fixNoValueCSVInput jshigetomi Jun 22, 2026 https://github.com/PowerShell/PowerShell/pull/25096/commits/297c2fbfbc1a041edf81327e66687b5a2f0e7bc5
Clear filters https://github.com/PowerShell/PowerShell/pull/25096/files
Please reload this pagehttps://github.com/PowerShell/PowerShell/pull/25096/files
Please reload this pagehttps://github.com/PowerShell/PowerShell/pull/25096/files
CsvCommands.cs https://github.com/PowerShell/PowerShell/pull/25096/files#diff-2b77454e7d234e46e6ebdb6c1be4ac0cb9c02b88bbe0e61c9acdfa3f66491e81
ConvertFrom-Csv.Tests.ps1 https://github.com/PowerShell/PowerShell/pull/25096/files#diff-3a4434cbea380f63ee146bf222d6b8e30787cac8c4ee7111bc7293f8e1102484
Import-Csv.Tests.ps1 https://github.com/PowerShell/PowerShell/pull/25096/files#diff-2e7f4b8ac0ed459d37627ed4c90a6a088c76ea73a0fd69675a07a2c20b66247f
https://github.com/PowerShell/PowerShell/blob/master/.github/CODEOWNERS#L7
src/Microsoft.PowerShell.Commands.Utility/commands/utility/CsvCommands.cshttps://github.com/PowerShell/PowerShell/pull/25096/files#diff-2b77454e7d234e46e6ebdb6c1be4ac0cb9c02b88bbe0e61c9acdfa3f66491e81
View file https://github.com/PowerShell/PowerShell/blob/297c2fbfbc1a041edf81327e66687b5a2f0e7bc5/src/Microsoft.PowerShell.Commands.Utility/commands/utility/CsvCommands.cs
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/PowerShell/PowerShell/pull/25096/{{ revealButtonHref }}
https://github.com/PowerShell/PowerShell/pull/25096/files#diff-2b77454e7d234e46e6ebdb6c1be4ac0cb9c02b88bbe0e61c9acdfa3f66491e81
https://github.com/PowerShell/PowerShell/pull/25096/files#diff-2b77454e7d234e46e6ebdb6c1be4ac0cb9c02b88bbe0e61c9acdfa3f66491e81
https://github.com/PowerShell/PowerShell/pull/25096/files#diff-2b77454e7d234e46e6ebdb6c1be4ac0cb9c02b88bbe0e61c9acdfa3f66491e81
https://github.com/PowerShell/PowerShell/pull/25096/files#diff-2b77454e7d234e46e6ebdb6c1be4ac0cb9c02b88bbe0e61c9acdfa3f66491e81
https://github.com/PowerShell/PowerShell/pull/25096/files#diff-2b77454e7d234e46e6ebdb6c1be4ac0cb9c02b88bbe0e61c9acdfa3f66491e81
https://github.com/PowerShell/PowerShell/pull/25096/files#diff-2b77454e7d234e46e6ebdb6c1be4ac0cb9c02b88bbe0e61c9acdfa3f66491e81
https://github.com/PowerShell/PowerShell/pull/25096/files#diff-2b77454e7d234e46e6ebdb6c1be4ac0cb9c02b88bbe0e61c9acdfa3f66491e81
https://github.com/PowerShell/PowerShell/pull/25096/files#diff-2b77454e7d234e46e6ebdb6c1be4ac0cb9c02b88bbe0e61c9acdfa3f66491e81
Please reload this pagehttps://github.com/PowerShell/PowerShell/pull/25096/files
Please reload this pagehttps://github.com/PowerShell/PowerShell/pull/25096/files
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.