Skip to content

Commit

Permalink
Update daily build docs for 8.0 (#29616)
Browse files Browse the repository at this point in the history
  • Loading branch information
roji authored Nov 18, 2022
1 parent 6f02d4c commit e64fda2
Showing 1 changed file with 15 additions and 13 deletions.
28 changes: 15 additions & 13 deletions docs/DailyBuilds.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ Create a file called "NuGet.config" with the following contents and put it next
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<add key="dotnet7" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet7/nuget/v3/index.json" />
<add key="dotnet8" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet8/nuget/v3/index.json" />
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
</packageSources>
</configuration>
Expand All @@ -30,13 +30,13 @@ A disadvantage of using daily builds is that there can be significant API churn

The daily builds are not published to NuGet.org because the .NET build infrastructure is not set up for this. Instead they can be pulled from a custom NuGet package source. To access this custom source, create a `NuGet.config` file in the same directory as your .NET solution or projects.

For EF7 daily builds, `NuGet.config` should contain:
For EF8 daily builds, `NuGet.config` should contain:

```xml
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<add key="dotnet7" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet7/nuget/v3/index.json" />
<add key="dotnet8" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet8/nuget/v3/index.json" />
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
</packageSources>
</configuration>
Expand All @@ -45,27 +45,27 @@ For EF7 daily builds, `NuGet.config` should contain:
To install the daily build of `dotnet ef`:

```sh
dotnet tool install -g dotnet-ef --version 7.0.0-* --add-source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet7/nuget/v3/index.json
dotnet tool install -g dotnet-ef --version 8.0.0-* --add-source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet8/nuget/v3/index.json
```

To install the `dotnet new` templates:

```sh
dotnet new install Microsoft.EntityFrameworkCore.Templates::7.0.0-* --add-source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet7/nuget/v3/index.json
dotnet new install Microsoft.EntityFrameworkCore.Templates::8.0.0-* --add-source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet8/nuget/v3/index.json
```

## Package versions to use

### Using wildcards

The easiest way to use daily builds is with wildcards in project references. For example, for EF Core 7.0 daily builds:
The easiest way to use daily builds is with wildcards in project references. For example, for EF Core 8.0 daily builds:

```xml
<ItemGroup>
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="7.0.0-*" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="7.0.0-*" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="7.0.0-*" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer.NetTopologySuite" Version="7.0.0-*" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="8.0.0-*" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="8.0.0-*" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.0-*" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer.NetTopologySuite" Version="8.0.0-*" />
</ItemGroup>
```

Expand All @@ -83,12 +83,14 @@ Alternately, your IDE might provide auto-completion directly in the .csproj file

## What about Visual Studio and the SDK?

EF7 currently targets .NET 6. This means that:
EF8 currently targets .NET 6. This means that:

* Your application must target .NET 6 or later; .NET Framework, .NET Core 3.1, and .NET 5 are no longer supported targets.
* The daily builds should work with any IDE that supports .NET 6.
* The daily builds require that the .NET 6 SDK is installed.

However, it's likely that EF8 will be changed to target .NET 8 before it's released.

## Troubleshooting

### Missing packages
Expand All @@ -104,7 +106,7 @@ In addition, packages may be missing if the standard `nuget.org` package source
<clear />
</disabledPackageSources>
<packageSources>
<add key="dotnet7" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet7/nuget/v3/index.json" />
<add key="dotnet8" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet8/nuget/v3/index.json" />
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
</packageSources>
</configuration>
Expand All @@ -120,7 +122,7 @@ A good way to ensure you're dealing with a completely clean NuGet configuration
</disabledPackageSources>
<packageSources>
<clear />
<add key="dotnet7" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet7/nuget/v3/index.json" />
<add key="dotnet8" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet8/nuget/v3/index.json" />
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
</packageSources>
</configuration>
Expand Down

0 comments on commit e64fda2

Please sign in to comment.