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

Full revision of rid catalog topic for 2.0 #3079

Merged
merged 8 commits into from
Sep 8, 2017
Merged

Full revision of rid catalog topic for 2.0 #3079

merged 8 commits into from
Sep 8, 2017

Conversation

mairaw
Copy link
Contributor

@mairaw mairaw commented Sep 7, 2017

compatibility statements. That means that a RID that has an imported RID in it can be a target for restoring packages
for that RID. Slightly confusing, but let's look at an example. Let's take a look at macOS:
RID is short for *Runtime IDentifier*. RID values are used to identify target platforms where the application runs.
They're used by .NET packages to represent runtime-specific assets in NuGet packages. The following values are examples of RIDs: `linux-x64`, `ubuntu.14.04-x64`, `win7-x64`, or `osx.10.11-x64`.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Its not "runtime specific assets", it's "platform specific assets".

When NuGet restores packages, it tries to find an exact match for the specified runtime.
If an exact match is not found, NuGet walks back the graph until it finds the closest compatible system according to the RID graph.

The following example is the actual entry for the `osx.10.11-x64` RID:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

May be better to use a platform that is still supported? 10.12?

> [!NOTE]
> We are working towards getting this information into a more interactive form.
> When that happens, this page will be updated to point to that tool and/or its usage documentation.
To be able to use RIDs, you have to know which RIDs exist. New values are added regularly to the platform.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is a way for a package to extend the graph if needed. Should we doc that?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@robrrelyea / @emgarten? I recall that previous NuGet owners didn't want to doc this. Now with the prevalence of distros we may need to.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Dependencies through runtime.json is considered something that only system packages should use. I'm not sure on the RID graph itself which is also part of runtime.json.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm a bit confused on what exactly to do here. cc @rrelyea

@rrelyea
Copy link
Contributor

rrelyea commented Sep 8, 2017

Let's make this part of Netcore 2.1 planning process if this change is a significantly important change to ask of Nuget. Would have to balance with other asks.

- `debian.8-x64`
- Fedora
- `fedora-x64`
- `fedora.23-x64`
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we can remove fedora.23 and opensuse.13.2 since they've been "end of life'd".

Copy link
Member

@eerhardt eerhardt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. Thanks for the good documentation @mairaw.

@mairaw mairaw merged commit 16f8fe2 into master Sep 8, 2017
@mairaw mairaw deleted the mairaw-patch-1 branch September 8, 2017 22:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants