Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

About the next version 6.0 #55

Closed
LaurentDardenne opened this issue Oct 24, 2023 · 0 comments
Closed

About the next version 6.0 #55

LaurentDardenne opened this issue Oct 24, 2023 · 0 comments
Assignees
Labels
enhancement New feature or request

Comments

@LaurentDardenne
Copy link
Collaborator

LaurentDardenne commented Oct 24, 2023

After several months of testing and building scenarios (there are still some left) I will soon deliver a version which corrects some defects of the last version.

Changes :

Breaking changes

  • Now we check the existence of at least one repository.

  • The existence of a module with the same name in several PSRepositories will cause a blocking error.
    We must now prefix a name of the duplicated module with the name of the desired repository.
    Previously we sorted the elements by version number then we selected the first in the list.

Known issues

  • The following setting is allowed:
    - name: Known issue
      uses: potatoqualitee/psmodulecache@v6.0
      with:
        modules-to-cache: Pester:5.3.0
        modules-to-cache-prerelease: Pester:5.3.0-beta1

In this case we consider and record both versions but it is the prerelease version which will be saved last in the ".\Pester\5.3.0" directory.

The following setting can also produce the same effect (we assume that at least one stable version exists and that its version number is lower than 2.0.0):

    - name: Known issue
      uses: potatoqualitee/psmodulecache@v6.0
      with:
        modules-to-cache: "WipModule::"
        modules-to-cache-prerelease: WipModule:2.0.0-beta

The problem will occur as soon as version 2.0.0 is released.

If we authorize the configuration with the same module of different version but coming from two repositories:

    - name: Known issue
      uses: potatoqualitee/psmodulecache@v6.0
      with:
        modules-to-cache: ProdStableRepository\MyModule:1.0.0
        modules-to-cache-prerelease: "DevPrereleaseRepository\MyModule::"

we implicitly authorize the following case:

    - name: Known issue
      uses: potatoqualitee/psmodulecache@v6.0
      with:
        modules-to-cache: PSModuleCache\Duplicate,PSGallery\string

Here we register two versions of the 'String' module but each package has a different module GUID.
We let the user check the consistency of what they configure.

Note : Under Powershell Core this last setting works some times and other times causes an error (caused by PSmoduleCache) ...

  • Module name collision under Linux.

  • The management of external dependencies (PrivateData.PSData.ExternalModuleDependencies) is the responsibility of the user.
    That is to say that external dependencies must be specified in the settings, regardless of the order of declaration.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant