zzzprojects / GraphDiff

GraphDiff is a library that allows the automatic update of a detached graph using Entity Framework code first.
https://entityframework-graphdiff.net/overview
MIT License
333 stars 101 forks source link

Is this project still supported? #181

Closed Bykiev closed 4 years ago

Bykiev commented 4 years ago

Hi @JonathanMagnan,

I'd like to know is this project dead? There is no updates since end of the last year, do you have any plans to fix known bugs? Also there are a lot of pull requests which need to be approved...

JonathanMagnan commented 4 years ago

Hello @Bykiev ,

Sure it is!

We fixe new issues and look to new pull requests (there is nothing in 2020).

However, I must admit we do not have really the time to go in the past and fix or look to everything.

We might eventually do a big cleanup as we did with some other free library but at this moment, we just try to answer and make new requests.

Do it answer correctly to your question.

Best Regards,

Jon


Performance Libraries context.BulkInsert(list, options => options.BatchSize = 1000); Entity Framework ExtensionsEntity Framework ClassicBulk OperationsDapper Plus

Runtime Evaluation Eval.Execute("x + y", new {x = 1, y = 2}); // return 3 C# Eval FunctionSQL Eval Function

Bykiev commented 4 years ago

@JonathanMagnan, thank you for your quick response!

Indeed, all open pull requests are old, but still valid (I've reviewed #142, #161, #174). I faced with most of the issues described and nothing was fixed...

JonathanMagnan commented 4 years ago

Hello @Bykiev ,

Thank you for reporting which one you would like we look at. If there is more, just wait a few days until we complete those first.

I have assigned one of my developers to it.

JonathanMagnan commented 4 years ago

Hello @Bykiev ,

The fix for the pull for #142 and #161 has been merged and released.

My developer refused the #174, so I will look at it to understand more why.

JonathanMagnan commented 4 years ago

After discussion with my developer,

From what we understand is the pull try to make the following example work:

var node1 = new ModelRoot()
{
    Id = Guid.NewGuid(),
    MyModelsLevel1 = new List<ModelLevel1>()
    {
        new ModelLevel1() {Id = guid},
        new ModelLevel1() {Id = guid}
    }
};

There is 2 distinct object with the same Id, it doesn't make sense to make this situation works. Even Entity Framework will throw an error.

It's the developer's responsibility to use the same entity instance for the same Id. Making this work will only add some weird behavior as if other properties have different values, then only values from the first entity found will be taken.

That's currently our opinion on this pull, we will wait for your feedback before closing it.

Bykiev commented 4 years ago

Hi @JonathanMagnan,

Thank you for your time and work! I've reviewed this PR again. indeed there is smth wrong with the tests, but test in PR #143 covers the issue described in #116 and after applying PR #174 test will be passed.

Bykiev commented 4 years ago

@JonathanMagnan, is any news?

JonathanMagnan commented 4 years ago

Hello @Bykiev ,

It seems I missed your last comment.

I will try to make an initial check today on those PRs.

JonathanMagnan commented 4 years ago

I started to look at it and I believe my developer misunderstood the purpose of the PR #174, we already merged the pull #143 and we now better understand the problem.

So we are working on it at this moment :)

JonathanMagnan commented 4 years ago

Hello @Bykiev ,

I now better understand why my developer initially refused it.

There is in fact, 2 different fix in this pull.

The first fix is about duplicate entities (#116) which have been accepted.

The second fix is about 2 different entity with the same id which have been refused (could eventually be done by enabling an option).

The v3.1.2 has been released.

Let us know if something else is missing ;)

Have a great day,

Best Regards,

Jon

Bykiev commented 4 years ago

@JonathanMagnan, thanks!