Skip to content
This repository was archived by the owner on Jun 13, 2024. It is now read-only.
This repository was archived by the owner on Jun 13, 2024. It is now read-only.

Install-Module naming inconsistencies leads to import-module failures on Linux #470

Closed
@johnmccrae

Description

@johnmccrae

Steps to reproduce

module.nuspec -> "mymodulename" Take your module name and make it lower case in the id section of your nuspec

Make your manifest file MyModule.psd1 (note filename case sensitivity)
Inside your manifest, change the RootModule = 'MyModule.psm1' (note case sensitivity)
Make your PSM1 file MyModule.psm1 (note filename case sensitivity)

Build and Deploy with Azure Pipelines to Windows, OSX and Linux (Ubuntu)

Failing on:
Distributor ID: Ubuntu
Description: Ubuntu 16.04.6 LTS
Release: 16.04
Codename: xenial

Expected behavior

build once, run everywhere

Actual behavior

Note the differences in file/folder creation and usability below based on platform. The only thing run has been install-module mymodule

Windows: Module folder named MyModule (note case). The PSM1 and PSD1 files are both MyModule (note the case). 
import-module mymodule - Works
import-module MyModule - Works

OSX: module folder named mymodule (note the case). The PSM1 and PSD1 files are both 'mymodule' (note the case).
import-module mymodule - Works
import-module MyModule - Works

Ubuntu: module folder named mymodule (note the case). The PSM1 and PSD1 files are both named MyModule (note the upper case).
import-module mymodule - fails
import-module MyModule - fails
import-module /home/Me/.local/share/powershell/Modules/0.0.0.43/MyModule.psd1 - works

rename the module folder to match the case of the PSM and PSD files
import-module mymodule - Works
import-module MyModule - Works


Environment data

> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      6.2.0
PSEdition                      Core
GitCommitId                    6.2.0
OS                             Linux 4.15.0-1041-azure #45-Ubuntu SMP Fri Mar 15 14:41:00 UTC 2019
Platform                       Unix
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0

> Get-Module -ListAvailable PowerShellGet,PackageManagement

    Directory: /opt/microsoft/powershell/6/Modules

ModuleType Version    Name                                PSEdition ExportedCommands
---------- -------    ----                                --------- ----------------
Script     1.3.1      PackageManagement                   Desk      {Find-Package, Get-Package, Get-PackageProvider, Get-PackageSource…}
Script     2.1.2      PowerShellGet                       Desk      {Find-Command, Find-DSCResource, Find-Module, Find-RoleCapability…}


> Get-PackageProvider -ListAvailable

Name                     Version          DynamicOptions
----                     -------          --------------
NuGet                    3.0.0.1          Destination, ExcludeVersion, Scope, SkipDependencies, Headers, FilterOnTag, Contains, AllowPrereleaseVersions, ConfigFile, SkipValidate
PowerShellGet            2.1.2.0          PackageManagementProvider, Type, Scope, AllowClobber, SkipPublisherCheck, InstallUpdate, NoPathUpdate, AllowPrereleaseVersions, Filter, Tag, Includes, DscResource, RoleCapability, Command, A…


Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions