Releases: linkdotnet/Blog
Releases · linkdotnet/Blog
v8.0
Improvements
- Changed to NCronJob for scheduling jobs to make it more predictable
- General Test-Setup is easier and more maintainable
- Fixed a bug where Copy&Paste did not work on MacOS/Safari
- Update Packages
Bug Fixes
- The Dashboard showed incorrect (values) due to a bug in the implementation of a background service
v7.0
Improvements
- Reading time is moved when creating the blog post and not calculated on the fly
- Refactoring the
AppConfiguration
into theIOptions
pattern
Migration
SQL
For SQL databases the following script will create the new ReadingTimeInMinutes
column and populate the values:
ALTER TABLE BlogPosts
ADD ReadingTimeInMinutes INT
GO
UPDATE BlogPosts
SET ReadingTimeInMinutes = CEILING(
(LEN(Content) - LEN(REPLACE(Content, ' ', '')) + 1) / 250.0
+
(LEN(Content) - LEN(REPLACE(Content, '![', ''))) / 2.0
)
SELECT * FROM BlogPosts ORDER BY UpdatedDate DESC
Option migrations
Some changes to the appsettings.json
have to be made:
{
//other configuration
- "AuthenticationProvider": "Auth0",
- "Auth0": {
+ "Authentication": {
+ "Provider": "Auth0"
Also for AboutMeProfileInformation
:
{
- "AboutMeProfileInformation": {
+ "ProfileInformation": {
v6.0
With .net 8 GA - also a new version of the blog is "released".
New Features
- .net 8 GA upgrade!
- Added Healthcheck for cloud hosting
- Cleanup of the application.settings
- Big improvement for UserRecords. Now, there is an hourly job consolidating those into a new table for quicker Dashboard results.
- Some improvements thanks to EF 8 - making Tags inline into the BlogPost entity
Improvements
- Using NSubstitue instead of Moq
- Update other NuGet packages and js dependencies
v5.2
v5.1
New release - new features!
Features
- Reading Indicator that takes only the content without comments into account
Improvements
- Better indication between drafts and scheduled blog post in Draft Blog Post page
- Better frequency of checks for publishing (minutely instead of hourly)
- Support for MySQL (Thanks to @manishtiwari25
- Use EF8 pre-release and remove some dependencies
- Auto-Index for EF Code-First
- Smaller other improvements
v5.0
A new release after quite some time. There are a lot of new features:
Features
- Using Bootstrap 5.3 to use dark and light mode
- Ability to schedule posts to publish in the future
Improvements
- Use the custom paged list to improve scalability
- Better way of counting words (faster and fewer allocations)
DateOnly
instead ofDateTime
for records- Don't allow press the publish button multiple times to publish the same article twice
- Use sliding window for caching
There are some breaking changes:
BlogPost
has a new ScheduledPublishDate
column as well as UserRecord
DateClicked
is a Date
instead of DateTime2
.
v4.2
Features
- Full support for light and dark theme (currently it is just reading the system preference and is not selectable)
- docker files for easier setup in containers
Improvements
- Smaller refactorings and rem
- Better toast design thanks to updated packages
v4.1
This release brings smaller improvements and updates
Improvements
- Better SEO handling with additional tags (canonical URL as well as discover tags for Google)
- Bumped some packages from preview to stable release
v4.0
This is the first new major release aka v4
. It brings a lot of improvements and some new features and bug-fixes
New features
- Ability to add Talks to the AboutMe page
- Better handling of
dirty
flag aka getting a pop-up when a blog post has unsaved changes - Tags in the blog post page itself to allow users to see similar content
Improvements
- Big performance improvements across the board
- Dashboard shows way quicker results
- Removed unnecessary allocations across a lot of pages
- Using pooled DbContext
- Code highlighting in the blog post editor
- Blog post error validation errors are aligned what the database is capable off
- Updated to .net 7
Breaking changes
SqliteServer
is renamed just toSqlite
. This has to be adopted in yourappsettings.json
- For migration (SqlServer/Sqlite) you have to add the following table:
CREATE TABLE [dbo].[Talks](
[Id] [nvarchar](450) NOT NULL,
[PresentationTitle] [varchar](256) NOT NULL,
[Place] [varchar](256) NOT NULL,
[PublishedDate] [datetime2](7) NOT NULL,
[Description] [varchar](max) NOT NULL
)
GO
ALTER TABLE [dbo].[Talks] ADD CONSTRAINT [PK_Talks] PRIMARY KEY CLUSTERED
(
[Id] ASC
)
v3.12
This release brings two major bug fixes, which are long overdue:
Bug-Fixes
- Dashboard can now be used with RavenDb or InMemory storage provider as well
- Use DbContextFactory to overcome some exceptions