fulcrologic / fulcro

A library for development of single-page full-stack web applications in clj/cljs
http://fulcro.fulcrologic.com
MIT License
1.55k stars 140 forks source link

Regression in forms #554

Closed yenda closed 1 month ago

yenda commented 1 month ago

Since that commit, when the form becomes dirty, the identities in subforms turn into nils and these changes can't be cancelled. as a result when saving the form the values of the subforms end up in the delta with the after being a vector of nils. (which for me means all items were deleted)

https://github.com/fulcrologic/fulcro/commit/5392b484517216abb6d26f9fb17f326b135d0f24

actually the tests started to fail https://app.circleci.com/pipelines/github/fulcrologic/fulcro/852/workflows/3a0d1d55-8335-45f3-99cd-1f86866f71c8/jobs/3789?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-checks-link&utm_content=summary

awkay commented 1 month ago

I fixed that problem in later versions, and those tests were already passing again.

I did, however, make an API change that evidently was not 100% bw compatible, so I've pushed a snapshot that makes the API change in a more compatible way, and that should fix it.

I am interested: Are you using remove-entity yourself, or are you speaking of just the interaction with normal form-state?

The only way it may have affected forms is on calls to delete-child! I think. Is that the use-case you're talking about?

awkay commented 1 month ago

Did you test the latest commit? I think that should fix it.

awkay commented 1 month ago

Released 3.7.10

yenda commented 1 month ago

I haven't found the time to test the latest commit yet, but the cause was an entity picker which has the use-gc hook