Title: Apostrophe in filepath breaks Import-Module when the module has a class in it · Issue #4193 · PowerShell/PowerShell · GitHub
Open Graph Title: Apostrophe in filepath breaks Import-Module when the module has a class in it · Issue #4193 · PowerShell/PowerShell
X Title: Apostrophe in filepath breaks Import-Module when the module has a class in it · Issue #4193 · PowerShell/PowerShell
Description: When there is an apostrophe in the filepath to a module Import-Module will work with modules that only have functions in however will fail if there is a class in the module. The exact same code will work when the module is located on a d...
Open Graph Description: When there is an apostrophe in the filepath to a module Import-Module will work with modules that only have functions in however will fail if there is a class in the module. The exact same code wil...
X Description: When there is an apostrophe in the filepath to a module Import-Module will work with modules that only have functions in however will fail if there is a class in the module. The exact same code wil...
Opengraph URL: https://github.com/PowerShell/PowerShell/issues/4193
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Apostrophe in filepath breaks Import-Module when the module has a class in it","articleBody":"When there is an apostrophe in the filepath to a module Import-Module will work with modules that only have functions in however will fail if there is a class in the module. The exact same code will work when the module is located on a different path. \r\n\r\nThis situation was encountered due to the default OneDrive for Business path including an apostrophe. When using the user windowspowershell module with folder redirection all use modules now have an apostrophe in the path. \r\n\r\nThis affects both Version 5.1 and Version 6beta3\r\n\r\nSteps to reproduce\r\n------------------\r\nCreate Folder C:\\Te'mp\r\nSave the below code to C:\\Te'mp\\TypeName.psm1\r\n```powershell\r\n# Define a class\r\nclass TypeName\r\n{\r\n # Property with validate set\r\n [ValidateSet(\"val1\", \"Val2\")]\r\n [string] $P1\r\n\r\n # Constructor\r\n TypeName ([string] $s)\r\n {\r\n $this.P1 = $s \r\n }\r\n}\r\n\r\n```\r\n\r\n```powershell\r\nImport-Module 'C:\\te''mp\\TypeName.psm1'\r\n\r\n```\r\n\r\nExpected behavior\r\n-----------------\r\n\r\n```none\r\nModule Loaded Successfully / No Output\r\n```\r\n\r\nActual behavior\r\n---------------\r\n\r\n```none\r\nImport-Module : The given assembly name or codebase was invalid. (Exception from HRESULT: 0x80131047)\r\nAt line:1 char:1\r\n+ Import-Module 'C:\\Te''mp\\TypeName.psm1'\r\n+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n + CategoryInfo : NotSpecified: (:) [Import-Module], FileLoadException\r\n + FullyQualifiedErrorId : System.IO.FileLoadException,Microsoft.PowerShell.Commands.ImportModuleCommand\r\n```\r\n\r\nEnvironment data\r\n----------------\r\n\r\n\u003c!-- provide the output of $PSVersionTable --\u003e\r\n\r\n```powershell\r\n\u003e $PSVersionTable\r\nName Value\r\n---- -----\r\nPSVersion 6.0.0-beta\r\nPSEdition Core\r\nGitCommitId v6.0.0-beta.3\r\nOS Microsoft Windows 10.0.14393\r\nPlatform Win32NT\r\nPSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}\r\nPSRemotingProtocolVersion 2.3\r\nSerializationVersion 1.1.0.1\r\nWSManStackVersion 3.0\r\n\r\nName Value \r\n---- ----- \r\nPSVersion 5.1.15063.413 \r\nPSEdition Desktop \r\nPSCompatibleVersions {1.0, 2.0, 3.0, 4.0...} \r\nBuildVersion 10.0.15063.413 \r\nCLRVersion 4.0.30319.42000 \r\nWSManStackVersion 3.0 \r\nPSRemotingProtocolVersion 2.3 \r\nSerializationVersion 1.1.0.1\r\n```\r\n","author":{"url":"https://github.com/ld0614","@type":"Person","name":"ld0614"},"datePublished":"2017-07-06T15:39:38.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":8},"url":"https://github.com/4193/PowerShell/issues/4193"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:fa3778c5-9361-8b4d-c5fc-f35fdc7a75ed |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | E5DA:68889:642D52:8A1A17:6A57D607 |
| html-safe-nonce | 163502c61aa5f3d3e5783a2067e8966a5d2fb12f9dcf69af89349df039769706 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJFNURBOjY4ODg5OjY0MkQ1Mjo4QTFBMTc6NkE1N0Q2MDciLCJ2aXNpdG9yX2lkIjoiNzMzMjg0MDg3NzkxMDkwNjM3NSIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | b5fd812437c18fb5a1c22dd9af2b1370738923c7efe56ee686e8f88a5da1745f |
| hovercard-subject-tag | issue:240999293 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/PowerShell/PowerShell/4193/issue_layout |
| twitter:image | https://opengraph.githubassets.com/f6794e4a1f5dbf3e10aaa3aa2a5836804b183865f7369f8e76d85850c6aa18b7/PowerShell/PowerShell/issues/4193 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/f6794e4a1f5dbf3e10aaa3aa2a5836804b183865f7369f8e76d85850c6aa18b7/PowerShell/PowerShell/issues/4193 |
| og:image:alt | When there is an apostrophe in the filepath to a module Import-Module will work with modules that only have functions in however will fail if there is a class in the module. The exact same code wil... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | ld0614 |
| hostname | github.com |
| expected-hostname | github.com |
| None | 837767abbd14b05f219fd812ef2842c659968b63619e1b966dded83972ab5bca |
| turbo-cache-control | no-preview |
| go-import | github.com/PowerShell/PowerShell git https://github.com/PowerShell/PowerShell.git |
| octolytics-dimension-user_id | 11524380 |
| octolytics-dimension-user_login | PowerShell |
| octolytics-dimension-repository_id | 49609581 |
| octolytics-dimension-repository_nwo | PowerShell/PowerShell |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 49609581 |
| octolytics-dimension-repository_network_root_nwo | PowerShell/PowerShell |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 9044d0f867aa9892268d1f430238ff123e11ee91 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width