U4-5544 - Update data access layer to NPoco to replace PetaPoco

Created by Shannon Deminick 25 Sep 2014, 21:57:59 Updated by Shannon Deminick 12 Apr 2016, 13:13:34

Depends on: U4-8257

Depends on: U4-8287

Subtask of: U4-5482

Since NPoco is active and up-to-date with bug fixes and enhancements.


Stephan 26 Feb 2016, 16:12:29

How shall we bring NPoco in, considering that we ''may'' have to customize it (eg for retry policies)? Fork + use our own NuGet, embed code, git submodule?

Stephan 01 Mar 2016, 16:08:32

Progress report: have v8 building with NPoco but still a few things to adjust + need to figure out NPoco caching which seems weird.

Stephan 08 Mar 2016, 11:14:41

Which version of NPoco should we use? See https://github.com/schotime/NPoco/issues/233 => should be 3.1.

Stephan 08 Mar 2016, 13:22:40

Progress report: fixing v8 so it builds on top of NPoco 3.1.

Stephan 08 Mar 2016, 18:15:21

Progress report: code is in branch dev-v8-npoco and works with a slightly modified version of NPoco that lives in branch dev3.1-umbraco in https://github.com/zpqrtbnk/NPoco - builds, no idea if it runs

Jeroen Breuer 09 Mar 2016, 11:29:30

Another branch I can experiment with :p

Stephan 14 Mar 2016, 09:08:30

Moved -> sprint 11

Shannon Deminick 30 Mar 2016, 10:12:41

@zpqrtbnk please make notes about this task for this sprint, it needs to be split up into smaller tasks

Stephan 30 Mar 2016, 10:53:18

Mmmm... plan was to merge it this week, and add "whatever remains to be done so it's perfect" as additional tasks - making sense?

Shannon Deminick 30 Mar 2016, 10:57:11

Yup so long as this merge 'this week' doesn't take longer than by tomorrow?

Stephan 30 Mar 2016, 10:58:50


Stephan 30 Mar 2016, 14:50:52

Have pushed to https://github.com/zpqrtbnk/NPoco branch dev3.1-umbraco tag 3.1.0-u001. It's stock NPoco + ''one'' difference that will need to be sorted out later. Have uploaded the corresponding NuGet package to MyGet/UmbracoCore.

Have pushed Umbraco changes to branch dev-v8-npoco and created PR https://github.com/umbraco/Umbraco-CMS/pull/1207 For review and merge.

Review: it should mostly work, including tests. Not sure ''everything'' can be reviewed though. To sooner this is merged, the sooner we'll discover issues, if any.

Stephan 30 Mar 2016, 14:57:35

Related tasks: U4-8257, U4-8258, U4-8259.

Shannon Deminick 31 Mar 2016, 13:48:04

@zpqrtbnk I've committed some fixes and now many more tests pass but there are still quite a lot of Services and Persistence tests failing. Do you want to have a look or would you rather me look into these to see if i can fix?

Stephan 31 Mar 2016, 16:04:48

I can look into these failing tests + the 3-4 comments you've added to the PR. Like, spend 1 day cleaning things up. Then we'll see.

Shannon Deminick 31 Mar 2016, 16:15:08

Cool sounds good, i'll put in reopened

Stephan 07 Apr 2016, 13:48:11

Status: failing tests have been fixed, comments on the PR have been dealt with, so this should be merge-able. Still, looking into merging the UmbracoSql class into NPoco & fixing a few things.

Stephan 08 Apr 2016, 12:03:51

Have fixed tests, and a good deal of misc issues. Runs on a custom NPoco but the differences have been submitted as a PR and are being discussed with Adam.

Priority: Normal

Type: Task

State: Fixed


Difficulty: Normal


Backwards Compatible: True

Fix Submitted:

Affected versions:

Due in version: 8.0.0

Sprint: Sprint 13

Story Points: