Comments (3)
I'm currently able to restore cleanly from a non-Microsoft computer. I think it's a point in time issue: with #729 the feed was populated with all the current packages. However, a future .NET SDK servicing release could cause one of the runtime packages (such as microsoft.netcore.app.host.osx-x64 mentioned above) to be bumped to a newer version; that then requires that an authorized user push that package into the libman feed (i.e. the point in time can and will come up again).
I tried going back to before we had the consolidated feed in #731. It failed because some of the internal packages are no longer available on the msft_consumption feed. It does, however, benefit from having the dotnet-public feed in the list, which would be populated with any newly serviced packages in the future.
So, one fix would be to do something like 44c5cb3 where it uses the dotnet-public feed for runtime packages, and uses the libman feed for vs-internal packages (the dotnet-myget-legacy can also probably be dropped if using the libman feed). Maybe revive the PR if that seems like an appropriate way to address the problem...
There's still a potential issue that any external contribution that wants to adopt a new package not present in the dotnet-public feed would be unable to have a successful PR builds without some intervention - without authorization to push new packages into the libman feed, the CI build would fail.
As a workaround, external users can add nuget.org locally to be able to restore any public packages. However, I know the policies for MSFT CI builds is to use authenticated feeds as much as possible.
/cc @phil-allen-msft for all this context.
from librarymanager.
Yep, it builds now thanks. I'll keep an eye out for those transition periods
from librarymanager.
Lo and behold, I ran into this issue again already trying to adopt a new package that was on nuget.org but not in the libman feed. I ended up working around it by replacing my local nuget.config with:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<clear />
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
<add key="libman" value="https://pkgs.dev.azure.com/azure-public/vswebtools/_packaging/libman/nuget/v3/index.json" />
</packageSources>
<packageSourceMapping>
<packageSource key="libman">
<package pattern="*" />
</packageSource>
<packageSource key="nuget.org">
<package pattern="The library I was trying to use" />
</packageSource>
</packageSourceMapping>
</configuration>
If I was trying to adopt a library with many dependencies, I'd probably have to list each of those as a package pattern, unless they were already in the feed (at presumably the exact version). That'd be even more tedious to try to get right.
Even worse, when I send a PR, the build does indeed fail, and there's no workaround aside from having an authorized user get the necessary packages into the feed and requeuing the build.
@phil-allen-msft this is really frustrating to have to work around when trying to make a new contribution. Can you look into what the right way to handle this would be?
from librarymanager.
Related Issues (20)
- Library Manager tool does not work on Visual Studio 2022 HOT 20
- Package Microsoft.Web.LibraryManager.Cli 2.1.175 is not compatible with net6.0 HOT 1
- Allow specifying destination per file HOT 7
- Lowering importance of informational messages from `RestoreTask`
- Add macOS Arm64 support to the CLI tool HOT 4
- libman does not allow defining the bootstrap package twice (without ignoring one of them).
- Restore operations happen in foreground in Class Library projects in Visual Studio
- libman: library could not be resolved by 'cdnjs' provider AGAIN HOT 8
- Switch to MIT license
- Consolidate Nuget feed
- version 2.1.175 doesn't support .Net 7.0.11 HOT 9
- Error during restore mentioning libman.config.json in use.
- "[email protected]" library could not be resolved HOT 6
- Expose latest version via CLI, without updating
- dotnet libman update installs deprecated package versions HOT 1
- Libman restore failed in Abp Boilerplate demo HOT 1
- libman command error after installed the Microsoft.Web.LibraryManager.Cli HOT 1
- Proposal for more granular file mappings per library
- @latest tag needs to handle fluctuating version
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from librarymanager.