Skip to content

feat: Remove database dependency and use property values for reading …#182

Merged
jcdcdev merged 1 commit intojcdcdev:dev/v17from
Matthew-Wise:feature/no-more-database-table
Feb 16, 2026
Merged

feat: Remove database dependency and use property values for reading …#182
jcdcdev merged 1 commit intojcdcdev:dev/v17from
Matthew-Wise:feature/no-more-database-table

Conversation

@Matthew-Wise
Copy link
Copy Markdown

@Matthew-Wise Matthew-Wise commented Feb 11, 2026

Hi James,

According to Claude this is only 30% of the files so not that big... :D

Removes the custom database table. Reading times are now calculated by
IReadingTimeService and stored directly on content properties.

Why a HealthCheck instead of a migration?
Doing this in a migration with the need to publish, can cause issues so needed to avoid that.

I have tested it from a new install point of view but I haven't had chance or the data to test the migration sadly.

Oh and seen as this is v17 I removed Nested Content support

Happy to chat over anything either on here on on slack :)

Matt

…time storage

Replace the custom database table and API layer with native Umbraco property values.
Reading times are now calculated via IReadingTimeService and stored directly on content
properties. Data migration from the legacy table is handled via a batched HealthCheck
instead of a startup migration, giving users feedback and avoiding issues on large sites.

- Remove Web API controller, repository, persistence layer, and DTOs
- Remove client-side API client, context, repository, and datasource
- Add ReadingTimeHealthCheck with batch processing (300 items per run)
- Drop legacy database table via migration, delegate data recalculation to HealthCheck
- Move TimeSpan conversion to SourceToIntermediate in property value converter

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@jcdc-bot
Copy link
Copy Markdown
Collaborator

Snyk checks have passed. No issues have been found so far.

Status Scanner Critical High Medium Low Total (0)
Open Source Security 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

@jcdcdev
Copy link
Copy Markdown
Owner

jcdcdev commented Feb 16, 2026

Hi @Matthew-Wise, this is an awesome refactor! 🚀

I am so pleased you have removed the dependency on the custom db table. I also love the FE simplicity now that the data is stored with the content itself.

In principle this PR looks good to go 😄

In the absence of automated testing in the solution I will get this published into an alpha release and test on my blog site. I might write some tests while I'm there.

Thank you again for contributing to the project. H5YR 🦄

@jcdcdev jcdcdev changed the base branch from v17 to dev/v17 February 16, 2026 21:05
@jcdcdev jcdcdev linked an issue Feb 16, 2026 that may be closed by this pull request
@jcdcdev jcdcdev merged commit d5405e7 into jcdcdev:dev/v17 Feb 16, 2026
2 checks passed
@Matthew-Wise
Copy link
Copy Markdown
Author

All good mate, I do have v16 version I did for the client and we have seen a big drop in SQL usage on staging at least :D

Hopefully the testing goes well :D

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.

Database hit on page render

4 participants