Skip to content

Commit

Permalink
Upgrade to Orchard Core RC1
Browse files Browse the repository at this point in the history
- Change target framework to .NET core 3.0
- Add `AddRazorSupportForMvc` to signify class library contains UI
components for MVC
- Update all Orchard Core dependencies to point to rc1 release
- Swap `Microsoft.AspNetCore` references for `FrameworkReference`
- Update permission providers to be async
- Update `Startup` overrides to have updated API
- Switch `MapAreaRoute` for `MapAreaControllerRoute`
- Update handler to be async
- Change vmImage used in Azure pipelines to target .NET core 3.0
- Update Travis build script to use .NET core 3.0
- Update docs for Orchard Core reference
- Remove redundant `nuget.config` file
  • Loading branch information
peterkeating committed Oct 8, 2019
1 parent dc5e7c2 commit 45ea0e4
Show file tree
Hide file tree
Showing 15 changed files with 51 additions and 55 deletions.
6 changes: 3 additions & 3 deletions .travis.yml
@@ -1,10 +1,10 @@
language: csharp
mono: none
dist: bionic
dotnet: 2.2.100
dotnet: 3.0

install:
- dotnet restore
- dotnet restore

script:
- dotnet build
- dotnet build
23 changes: 12 additions & 11 deletions Etch.OrchardCore.SEO.csproj
@@ -1,7 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk.Razor">

<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<TargetFramework>netcoreapp3.0</TargetFramework>
<AddRazorSupportForMvc>true</AddRazorSupportForMvc>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<Version>0.4.4-beta</Version>
<PackageId>Etch.OrchardCore.SEO</PackageId>
Expand All @@ -15,19 +16,19 @@

<ItemGroup>
<PackageReference Include="FluentExcel" Version="2.2.0" />
<PackageReference Include="OrchardCore.Admin" Version="1.0.0-beta3-71077" />
<PackageReference Include="OrchardCore.Autoroute" Version="1.0.0-beta3-71077" />
<PackageReference Include="OrchardCore.ContentManagement" Version="1.0.0-beta3-71077" />
<PackageReference Include="OrchardCore.ContentManagement.Display" Version="1.0.0-beta3-71077" />
<PackageReference Include="OrchardCore.Data.Abstractions" Version="1.0.0-beta3-71077" />
<PackageReference Include="OrchardCore.Media.Services" Version="1.0.0-beta3-71077" />
<PackageReference Include="OrchardCore.Module.Targets" Version="1.0.0-beta3-71077" />
<PackageReference Include="OrchardCore.Navigation.Core" Version="1.0.0-beta3-71077" />
<PackageReference Include="OrchardCore.ResourceManagement" Version="1.0.0-beta3-71077" />
<PackageReference Include="OrchardCore.Admin" Version="1.0.0-rc1-10004" />
<PackageReference Include="OrchardCore.Autoroute" Version="1.0.0-rc1-10004" />
<PackageReference Include="OrchardCore.ContentManagement" Version="1.0.0-rc1-10004" />
<PackageReference Include="OrchardCore.ContentManagement.Display" Version="1.0.0-rc1-10004" />
<PackageReference Include="OrchardCore.Data.Abstractions" Version="1.0.0-rc1-10004" />
<PackageReference Include="OrchardCore.Media.Services" Version="1.0.0-rc1-10004" />
<PackageReference Include="OrchardCore.Module.Targets" Version="1.0.0-rc1-10004" />
<PackageReference Include="OrchardCore.Navigation.Core" Version="1.0.0-rc1-10004" />
<PackageReference Include="OrchardCore.ResourceManagement" Version="1.0.0-rc1-10004" />
</ItemGroup>

<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Mvc" Version="2.2.0" />
<FrameworkReference Include="Microsoft.AspNetCore.App" />
<PackageReference Include="Microsoft.AspNetCore.Rewrite" Version="2.2.0-preview3-35497" />
</ItemGroup>

Expand Down
6 changes: 4 additions & 2 deletions HostnameRedirects/Permissions.cs
@@ -1,15 +1,17 @@
using OrchardCore.Security.Permissions;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace Etch.OrchardCore.SEO.HostnameRedirects
{
public class Permissions : IPermissionProvider
{
public static readonly Permission ManageHostnameRedirects = new Permission("ManageHostnameRedirects", "Manage hostname redirects");

public IEnumerable<Permission> GetPermissions()
public Task<IEnumerable<Permission>> GetPermissionsAsync()
{
return new[] { ManageHostnameRedirects };
return Task.FromResult(new[] { ManageHostnameRedirects }.AsEnumerable());
}

public IEnumerable<PermissionStereotype> GetDefaultStereotypes()
Expand Down
7 changes: 4 additions & 3 deletions HostnameRedirects/Startup.cs
Expand Up @@ -16,7 +16,8 @@ namespace Etch.OrchardCore.SEO.HostnameRedirects {
[Feature("Etch.OrchardCore.SEO.HostnameRedirects")]
public class Startup : StartupBase
{
public override void ConfigureServices(IServiceCollection services) {
public override void ConfigureServices(IServiceCollection services)
{
services.AddScoped<INavigationProvider, AdminMenu>();
services.AddScoped<IDisplayDriver<ISite>, HostnameRedirectsSettingsDisplayDriver>();
services.AddScoped<IPermissionProvider, Permissions>();
Expand All @@ -26,14 +27,14 @@ public class Startup : StartupBase

}

public override void Configure(IApplicationBuilder app, IRouteBuilder routes, IServiceProvider serviceProvider) {
public override void Configure(IApplicationBuilder app, IEndpointRouteBuilder routes, IServiceProvider serviceProvider)
{
var rewriteOptionsService = app.ApplicationServices.GetService<IRewriteOptionsSevice>();

var rewriteOptions = new RewriteOptions();
rewriteOptions.Add((IRule)rewriteOptionsService);

app.UseRewriter(rewriteOptions);

}
}
}
4 changes: 2 additions & 2 deletions README.md
Expand Up @@ -8,7 +8,7 @@ Module for [Orchard Core](https://github.com/OrchardCMS/OrchardCore) that provid

## Orchard Core Reference

This module is referencing the beta 3 build of Orchard Core ([`1.0.0-beta3-71077`](https://www.nuget.org/packages/OrchardCore.Module.Targets/1.0.0-beta3-71077)).
This module is referencing the RC1 build of Orchard Core ([`1.0.0-rc1-10004`](https://www.nuget.org/packages/OrchardCore.Module.Targets/1.0.0-rc1-10004)).

## Features

Expand Down Expand Up @@ -36,7 +36,7 @@ When using this module you may notice the page title will include the display te
}
```

*Under development*
_Under development_

### Redirects

Expand Down
6 changes: 3 additions & 3 deletions Redirects/Handlers/RedirectPartHandler.cs
Expand Up @@ -28,7 +28,7 @@ public RedirectPartHandler(IRedirectEntries entries)

public override Task GetContentItemAspectAsync(ContentItemAspectContext context, RedirectPart part)
{
context.For<ContentItemMetadata>(metadata =>
return context.ForAsync<ContentItemMetadata>(metadata =>
{
if (metadata.DisplayRouteValues == null)
{
Expand All @@ -39,9 +39,9 @@ public override Task GetContentItemAspectAsync(ContentItemAspectContext context,
{"ContentItemId", context.ContentItem.ContentItemId}
};
}
});
return Task.CompletedTask;
return Task.CompletedTask;
});
}

public override Task PublishedAsync(PublishContentContext context, RedirectPart part)
Expand Down
10 changes: 5 additions & 5 deletions Redirects/Import/Startup.cs
Expand Up @@ -11,19 +11,19 @@ namespace Etch.OrchardCore.SEO.Redirects.Import
[Feature("Etch.OrchardCore.SEO.Redirects.Import")]
public class Startup : StartupBase
{
public override void Configure(IApplicationBuilder app, IRouteBuilder routes, IServiceProvider serviceProvider)
public override void Configure(IApplicationBuilder app, IEndpointRouteBuilder routes, IServiceProvider serviceProvider)
{
routes.MapAreaRoute(
routes.MapAreaControllerRoute(
name: "ImportRedirects",
areaName: "Etch.OrchardCore.SEO",
template: "Admin/SEO/Redirects/Import",
pattern: "Admin/SEO/Redirects/Import",
defaults: new { controller = "AdminImportRedirects", action = "Index" }
);

routes.MapAreaRoute(
routes.MapAreaControllerRoute(
name: "ImportRedirectsImport",
areaName: "Etch.OrchardCore.SEO",
template: "Admin/SEO/Redirects/Import/Submit",
pattern: "Admin/SEO/Redirects/Import/Submit",
defaults: new { controller = "AdminImportRedirects", action = "Import" }
);
}
Expand Down
1 change: 1 addition & 0 deletions Redirects/Services/IRedirectEntries.cs
@@ -1,4 +1,5 @@
using OrchardCore.Autoroute.Services;
using OrchardCore.ContentManagement.Routing;

namespace Etch.OrchardCore.SEO.Redirects.Services
{
Expand Down
2 changes: 1 addition & 1 deletion Redirects/Services/RedirectEntriesExtensions.cs
@@ -1,4 +1,4 @@
using OrchardCore.Autoroute.Model;
using OrchardCore.ContentManagement.Routing;

namespace Etch.OrchardCore.SEO.Redirects.Services
{
Expand Down
15 changes: 5 additions & 10 deletions Redirects/Startup.cs
@@ -1,16 +1,15 @@
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Routing;
using Microsoft.Extensions.DependencyInjection;
using Etch.OrchardCore.SEO.Redirects.Drivers;
using Etch.OrchardCore.SEO.Redirects.Handlers;
using Etch.OrchardCore.SEO.Redirects.Indexes;
using Etch.OrchardCore.SEO.Redirects.Models;
using Etch.OrchardCore.SEO.Redirects.Services;
using OrchardCore.Autoroute.Model;
using OrchardCore.Autoroute.Routing;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Routing;
using Microsoft.Extensions.DependencyInjection;
using OrchardCore.ContentManagement;
using OrchardCore.ContentManagement.Display.ContentDisplay;
using OrchardCore.ContentManagement.Handlers;
using OrchardCore.ContentManagement.Routing;
using OrchardCore.Data.Migration;
using OrchardCore.Modules;
using System;
Expand All @@ -37,17 +36,13 @@ public override void ConfigureServices(IServiceCollection services)
services.AddScoped<IDataMigration, Migrations>();
}

public override void Configure(IApplicationBuilder app, IRouteBuilder routes, IServiceProvider serviceProvider)
public override void Configure(IApplicationBuilder app, IEndpointRouteBuilder routes, IServiceProvider serviceProvider)
{
var entries = serviceProvider.GetRequiredService<IRedirectEntries>();
var session = serviceProvider.GetRequiredService<ISession>();
var redirects = session.QueryIndex<RedirectPartIndex>(o => o.Published).ListAsync().GetAwaiter().GetResult();

entries.AddEntries(redirects.Select(x => new AutorouteEntry { ContentItemId = x.ContentItemId, Path = x.Url }));

var redirectRoute = new AutorouteRoute(entries, routes.DefaultHandler);

routes.Routes.Insert(0, redirectRoute);
}
}
}
6 changes: 4 additions & 2 deletions RobotsTxt/Permissions.cs
@@ -1,15 +1,17 @@
using OrchardCore.Security.Permissions;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace Etch.OrchardCore.SEO.RobotsTxt
{
public class Permissions : IPermissionProvider
{
public static readonly Permission ManageRobotsTxt = new Permission("ManageRobotsTxt", "Manage robots.txt");

public IEnumerable<Permission> GetPermissions()
public Task<IEnumerable<Permission>> GetPermissionsAsync()
{
return new[] { ManageRobotsTxt };
return Task.FromResult(new[] { ManageRobotsTxt }.AsEnumerable());
}

public IEnumerable<PermissionStereotype> GetDefaultStereotypes()
Expand Down
6 changes: 3 additions & 3 deletions RobotsTxt/Startup.cs
Expand Up @@ -21,12 +21,12 @@ public override void ConfigureServices(IServiceCollection services)
services.AddScoped<IPermissionProvider, Permissions>();
}

public override void Configure(IApplicationBuilder app, IRouteBuilder routes, IServiceProvider serviceProvider)
public override void Configure(IApplicationBuilder app, IEndpointRouteBuilder routes, IServiceProvider serviceProvider)
{
routes.MapAreaRoute(
routes.MapAreaControllerRoute(
name: "Robots.txt",
areaName: "Etch.OrchardCore.SEO",
template: "robots.txt",
pattern: "robots.txt",
defaults: new { controller = "RobotsTxt", action = "Index" }
);
}
Expand Down
3 changes: 2 additions & 1 deletion azure-pipelines-prerelease.yml
@@ -1,5 +1,6 @@
pool:
name: Hosted VS2017
vmImage: 'windows-2019'

variables:
BuildConfiguration: 'Release'

Expand Down
3 changes: 2 additions & 1 deletion azure-pipelines-stable.yml
@@ -1,5 +1,6 @@
pool:
name: Hosted VS2017
vmImage: 'windows-2019'

variables:
BuildConfiguration: 'Release'

Expand Down
8 changes: 0 additions & 8 deletions nuget.config

This file was deleted.

0 comments on commit 45ea0e4

Please sign in to comment.