-
-
Notifications
You must be signed in to change notification settings - Fork 563
Changelog
This page contains all updates in the official releases. For information about what's been updated in the pre-releases, please refer to Pre-release Changelog.
2019-08-19
Starting with this version the Manager interface has changed technology stack and is now built with
Razor Pages
andVueJs
. Projects developed with earlier versions of Piranha CMS will need to update their view components for custom blocks and custom fields in order for them to work in the new Manager. For guidance on how to implement custom components, please refer to the official documentation.
Known issues
- Manager menu doesn't remove items not valid for the current user. #756
- Add WebApi module for accessing the IApi. #229
- Reference fields should use cached data. #588
- Archive service doesn't populate category/tag. #620
- Updated posts are not purged from cache. #603
- Save drafts of already published content. #622
- Saving a copied page throws exception. #626
- Null checks of fields. #692
- Move texts to resources for translation. #39
- Media card/gallery view. #62
- Update font awesome. #406
- New manager interface. #460
- Add possibility to add custom buttons to the manager. #508
- Horizontal block groups. #599
- Possibility to collapse all blocks. #613
- Two imagefields on one page aren't updating right. #614
- Description on fields. #621
- Documents displayed as videos in media. #629
- Page ordering past depth of 5. #636
- PageField & PostField can cause circular reference. #260
- Sitemap caching issues when updating pages. #725
2019-05-01
Starting with this version all project templates have been merged into a single package
Piranha.Templates
. This is to simplify setup on your local development machine and make sure you get all future templates as well when updating this package.
Big thanks to @i-love-code and @stefanolsen for their contributions.
- DisplayTemplate missing in example for VideoBlock. #548
- Null-checking a PageField causes a NullReferenceException. #572
- Full caching still causes repeated SQL queries. #574
- Add interfaces for all services exposed in the Api. #576
- Archive page returns 404 when request URL has trailing slash. #580
- SimpleCache should use ConcurrentDictionary. #583
- Aliases are cached only if found. #587
- Manager ajax urls when deployed to virtual directory. #372
- Media folders do not take in account other folders as items. #565
- Using Manager Login - ReturnUrl in LoginModel is always null. #579
- Blocks without Custom Editor Templates / Checkbox Field Serialization. #585
- Hide menu group when no item is visible. #593
- Publish/unpublish content does not reflect when CacheLevel=Full. #568
- GetSitemap in for EF does not take scheduled pages into account. #569
- Items on a BlockGroup does not gets serialized on posts. #577
2019-04-03
Piranha.Manager 6.0.2
By mistake outdated
.css
and.js
files where bundled with the manager causing theImageBlock
andVideoBlock
to behave incorrectly.
2019-04-02
Piranha 6.0.1
, Piranha.Data.EF 6.0.1
, Piranha.Manager 6.0.1
- Sitemap cache is not clear when publishing a drafted page. #555
- Items on BlockGroup still not gets serialized. #558
- IsUnlisted is ignored on the first add-block on a post. #559
2019-03-31
As of
6.0
all data mappings for Entity Framework Core as been moved into the new packagePiranha.Data.EF
. To ensure backwards compatibility, make sure you include this package into your project.
As of
6.0
the entire application pipeline and all allApi
metods are now async. To ensure backwards compatibility for sync code, make sure you include the packagePiranha.Extensions.Sync
, however it is of course our recommendation that all code should be migrated to use the async methods.
Methods in the
ArchiveService
has been revised to allow loading just the posts without the containing page. Existing code must be updated from making one call to making two separate calls, one for the page itself, and a second one for the post archive.
// Old code
var model = _api.Archives.GetById<MyArchivePage>(...);
// New code
var model = await _api.Pages.GetByIdAsync<MyArchivePage>(...);
model.Archive = await _api.Archives.GetByIdAsync(...);
The
TagService
andCategoryService
has been removed to simplify repository implementation forNoSql
databases. Methods for getting these taxonomies can now be found in thePostService
api.Posts.GetAllCategoriesAsync
api.Posts.GetCategoryBySlugAsync
api.Posts.GetAllTagsAsync
api.Posts.GetTagBySlugAsync
- Make API async. #102
- Optimize queries for large sets of non cached data. #198
- Add VideoBlock. #458
- Async Pipeline. #478
- Add hooks for content models. #513
- Add block type to serialized JSON. #518
- Multiple Blocks with Archive listing slow down page. #519
- MemoryCaches should clone object on Get. #522
- Items on BlockGroup does not get serialized to JSON. #543
- Add allowed PostTypes to Archive page. #276
- Add item count on media folders. #484
- Restrict so that not empty media folders can't be deleted. #485
- Recalculating block indexes is missing some attributes. #450
- Placeholder does not get printed for Posts & Sites. #552
2019-03-01
Note that
Piranha.Cache.MemCache
has been renamed toPiranha.Cache.SimpleCache
. Update your code to reflect the changes, or change it to use one of the new cache services available.
- Added support for
IDistributedCache
. #249 - Added support for
IMemoryCache
. #482 - Upgraded
ImageSharp
to beta6. #492
- Updated
Piranha.Manager
toRazor Class Library
. #527 - Updated
Piranha.AspNetCore.Identity
toRazor Class Library
. #527
- When uploading media, file extensions is case sensitive. #483
- Delete role is missing from
AspNetCore.Identity
. #525 - Last role assignment on each row is not saved. #526
2019-02-16
Piranha.Azure.BlobStorage 5.3.1
- Replaced
WindowsAzure.Storage
withMicrosoft.Azure.Storage.Blob
. #487 - Create BlobStorage with connection string. #491
2018-12-08
Piranha 5.3.1
, Piranha.AspNetCore 5.3.1
, Piranha.Manager 5.3.1
Service release containing some minor bug fixes and updates on routing in multiple site scenarios.
- Redesign how sites are fetched from hostname. #449
- Routing with Two Different Sites. #437
- Adding a region to page is not backward-compatible. #446
- Api is always null in ApplicationService. #447
- The DateField EditorTemplate renders with different format than expected. #451
2018-11-19
Big thanks to @filipjansson, @Talagozis, @MCNorthwood, @DraagrenKirneh and @be4i for their contributions.
- Mobile Friendly Hamburger menu. #302
- Culture / Language Support on Site level. #308
- Add config to FileStorage extension method. #422
- Document media preview. #69
- Default block template. #411
- Improve add user email field. #412
- Add loading animation to AJAX actions on Manager. #413
- Tooltip support. #414
- Allow HTML in region descriptions. #415
- Don't show inner HTML in link dialog. #419
- Published post from unpublished archive page is accessible. #323
- Updating image-link in the HTML-editor. #420
- Pdfs show last image viewed in modal. #421
- Fix hardcoded item title for single field list regions #435
2018-10-17
This is primarily a security update to address the Denial of Service vulnerability in
AspNetCore 2.1
. For more information regarding this, please read Microsofts official announcement at https://github.com/dotnet/announcements/issues/67. This release is updated to the latest packages and .NET Core2.1.5
.
2018-10-15
Big thanks to @Talagozis for his contribution.
- Page redirects in sitemap for better SEO. #340
- Remove IApi from ContentTypeBuilder. #363
- Keep all Content Types in memory. #369
- Add placeholder option for fields. #370
- Add support for async
Init()
on Fields. #374 - Adding information text for a region. #388
- Rename BlogPage to ArchivePage. #391
- Extension method for adding Mem Cache. #398
- Extension method for adding Blob Storage. #399
- BrowserLink for live updated preview. #287
- Better support for multiple sites. #351
- Change Login Logo via Manager / Config. #359
- Ability to filter the manager media list. #360
- Add possibility to inject partials into the manager. #373
- Make buttons fixed for Page & Post edit. #393
- Fix button layout for Post & Page field. #395
- Post link dialog doesn't support multiple sites. #405
- Display group icon instead of placeholder icon. #402
- Cannot add hyperlink to image in HTML editor. #343 #343
- Raw SQL in migration breaks in MySQL. #375
- Markdown Fields not saved on first click. #392
- 24 hour time format in manager date picker? #394
- Can't remove last block from Page. #396
2018-08-10
Please note that the HTML-editor initialization has been updated due to the new Ajax save. If you have a custom TinyMCE setup in your project, make sure you add the following lines to your TinyMCE init:
setup: function (editor) {
editor.on('change', function () {
editor.save();
});
}
- Missing Content Type for
Sitemap.xml
. #350 - EF Migration error on Npgsql. #352
- Bug when saving static HTML fields in the manager. #358
2018-07-24
- Bug in Sitemap Caching. #337
- After changing sort order wrong site is loaded. #346
- Problem adding pages with multiple sites. #347
- Meta description limitations not updated. #349
2018-07-10
Please note that this version switches from AspNetCore and EF Core
2.0
to2.1.1
Big thanks to @filipjansson and @aatmmr for their contributions.
A new service component have been added to hold information for the request context, such as current Site
, Sitemap
and other info. After upgrading you must add this service in your Startup.cs
.
public IServiceProvider ConfigureServices(IServiceCollection services)
{
...
services.AddPiranhaApplication();
...
}
To access the new features in your views, add the following in your _ViewImports.cshtml
.
@inject Piranha.AspNetCore.Services.IApplicationService WebApp
- Add support for Block Groups. #291
- Support for site-global content. #295
- Support multiple file formats in image scaling. #296
- Upgrade to .NET Core 2.1.1 & EF Core 2.1.1 #297
- Added MySQL support for Identity. #298
- Change Page & Post edit to save via Ajax. #292
- Improve error message on failed login. #294
- Improve UX on media fields. #299
- Show Block icon and name on hover. #303
- Visual placeholders for empty HTML blocks. #307
- Set new Block dialog position depending on screen position. #318
- Add support for "unlisted" block types. #324
- Add ApplicationService to simplify application development. #333
- Adding blog post to not saved draft of a new archive causes exception. #321
2018-05-25
- Fixed so the login page doesn't say
5.0.0-beta1
2018-05-25
This release contains some minor breaking changes. Application startup needs to be updated to incorporate new services & features. For more information, please refer to Project Setup in the Wiki.
Big thanks to @filipjansson and @lukethenuke for their contributions.
- Added block-based content. #202
- Add checkbox field. #230
- Add support for custom search queries. #232
- Add Hook for slug generation. #243
- Add tag filtering for archives. #246
- Support DI in field Init(). #250
- Rename Piranha.Extend.FieldAttribute. #251
- Support for Page Copies. #252
- Add security module for AspNetCore Identity. #271
- Add number Field. #277
- Updated slug generation. 278
- Support for loading content without regions & blocks. #285
- Auto register fields used by content types. #288
- Add media link to TinyMCE. #242
- Add module info to the Manager. #248
- Add custom css/js to the Manager. #273
- Add font awesome to the Manager. #275
- Added column swap for column blocks. #281
- Make scheduled entries more visible. #283
- Sitemap middleware includes unpublished posts. #195
- Archive router bug for Razor pages. #248
- Requesting a non-existing post should throw 404. #261
- Image resize not working in TinyMCE. #282
2018-04-02
Intermediate release with some bug fixes for the manager UI.
- SimpleMDE not initialized correctly in new List Region. #224
- Moving list region items sometimes crash. #225
2018-03-23
General improvements and new content features.
- Add Select field. #56
- Add support for Generic fields. #56
- Split caching into different levels. #96
- Allow aliases to point to http:// urls. #204
- CDN support for media storage. #205
- Allow prefix in hostnames. #209
- Store requested SiteId in HttpContext. #210
- Drag n Drop for moving media assets. #67
- Drag and drop media upload. #67
- Toolbar for Markdown fields. #85
- Suggest alias when changing slugs. #184
- Show Page type name in site tree. #212
- IApi should be injected in middleware Invoke(). #213
- Old media isn't removed when updated with new filename. #218
- Collection regions not working for posts. #219
2018-03-01
Service release with some bug fixes and minor updates.
- Markdown preview doesn't limit image width. #192
- Published date format error for pages & posts. #200
2018-02-22
This release expands the functionality with more features like alias management, image cropping and more.
- Added alias model. #97
- Added hooks for aliases. #105
- Added hooks for categories. #105
- Added hooks for media. #105
- Added hooks for media folders. #105
- Added hooks for params. #105
- Added hooks for sites. #105
- Added hooks for tags. #105
- Made IStorage & IStorageSession async. #109
- Added image scaling & image versions. #119
- Added sitemap.xml generator. #150
- Added basic project template. #167
- Fixed bug in PostRouter for multiple sites. #181
- Fixed so start page router can handle blog pages. #187
- Added support for Azure Blob Storage. #23
- Added alias management views. #97
- Fixed format error on post published date. #183
- Updated save behavior for posts. #185
- Added post search in the blog archive. #188
- Added manual publish date for pages. #189
2018-01-22
Intermediate release that adds some features for blogging to support larger amounts of posts.
- Added methods for deleting unused categories & posts. #172
- Added support for setting a future publish date for posts. #170
- Added post type filter to the blog list. #168
- Added category filter to the blog list. #165
2018-01-14
This version adds blogging support with Posts, Categories, Tags and Archive Pages. It also includes some bug fixes & general improvements.
Thanks to @gyretech for testing and feedback.
- Added category model. #76
- Added tag model. #77
- Added post model. #78
- Added document field. #157
- Added video field. #158
- Added media field. #159
- Added post field. #160* Fixed bug with empty collection regions. #162
- Added page field. #163
- Added archive category filter. #164
- Added custom TinyMCE plugin for Page & Post links. #153
- Added sitemap reload after move. 6ede7ac
- Prohibited recursive page delete. 83b3176
2017-12-12
Intermediate release that addresses the following problems.
- Added policy permissions support for menu. #151
- Fixed initialization for dynamically inserted HTML-editors. #152
2017-12-02
Intermediate release that addresses the following problems.
- Fixed bug in media modal c5b65aa
2017-12-01
First official release with support for building page based sites.
With contributions by: @gyretech & @filipjansson
- Completely rewritten for NetStandard 2.0 & EF Core
- Smart pluggable caching
- Pluggable file storage
- SEO-friendly URL’s & meta-data
- Claims-based admin permissions
- Templated page types
- Multiple sites with hostname-based routing
- HTML and Markdown content
- Hierarchical media library
- Simple and intuitive interface
- Responsive down to portrait tablets
- Extensible