cake-build / cake-build/cake

Cake --boostrap should uninstall and/or use same as specified in #module directive

Open
#2,525 3 comments 0 reactions 0 assignees View on GitHub
:wrench: cake-module Improvement priority: high
Dominant language
C#
Stars
4.2k
Forks
778
Avg merge
1h 15m
Merged PRs (30d)
19

Description

I updated a script from
```
#module nuget:?package=Cake.DotNetTool.Module&version=0.1.0
```
to
```
#module nuget:?package=Cake.DotNetTool.Module&version=0.2.0
```

`--bootstrap` installed the new version of the module, but the old one is still there

```
tools\modules
+---Cake.DotNetTool.Module.0.1.0
| \---lib
| \---netstandard2.0
\---Cake.DotNetTool.Module.0.2.0
\---lib
\---netstandard2.0
```

and the old being loaded and warnings still present even new available
```diff
- The assembly 'Cake.DotNetTool.Module, Version=0.1.0.0, Culture=neutral, PublicKeyToken=null'
- is referencing an older version of Cake.Core (0.30.0).
- For best compatibility it should target Cake.Core version 0.33.0.
- Could not load module - '/tools/Modules/Cake.DotNetTool.Module.0.2.0/lib/netstandard2.0/Cake.DotNetTool.Module.dll'.
```

Expected behavior would be to load the new version.

Possible solutions would be to uninstall versions that don't match during bootstrap, load latest version of each module, find a way for assembly scanning to pick specified version.

@cake-build/cake-team thoughts?

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.