lovasoa / marshmallow_dataclass

Automatic generation of marshmallow schemas from dataclasses.
https://lovasoa.github.io/marshmallow_dataclass/html/marshmallow_dataclass.html
MIT License
456 stars 78 forks source link

Fix memory leak issue #258

Closed mvanderlee closed 5 months ago

mvanderlee commented 5 months ago

Fixes: #198 Rebased and cherry picked but all work is credited to @dairiki

I tried rebasing #232 but ran into a few conflicts I didn't feel comfortable resolving. So figured I'd break it out into smaller PRs that can be merged individually so we can get some progress on some of these issues.

I've tested this with tox on python versions 38, 39, 310, 311, 312

dairiki commented 5 months ago

@lovasoa I'm currently away from home (for an extended period). I may or may not have a chance to take a close look at this (and #257) in the near future. I will try to look closer this week, but no guarantees. (Feel free to proceed without me.)

On first glance, both PRs look good.

@mvanderlee Thank you for picking up the ball. It's great to see progress on these issues.

lovasoa commented 5 months ago

I currently have 2 month old baby at home, and way less free time than before. I fully trust you to take the right decisions, don't hesitate to merge this and other PRs without me :)

mvanderlee commented 5 months ago

I currently have 2 month old baby at home, and way less free time than before. I fully trust you to take the right decisions, don't hesitate to merge this and other PRs without me :)

Congratulations!

LostInDarkMath commented 5 months ago

Since I also suffer from the memory leak, I quickly integrated this branch into my project (50 kLOC service-based architecture) and ran my tests (5k+) against it. It looks very good, everything works as expected. Perhaps this will help you decide whether to merge this PR in the near future.

lovasoa commented 5 months ago

@dairiki I think you can merge

dairiki commented 5 months ago

@dairiki I think you can merge

I've got a lot of pans in the fire at the moment. I will try to get to it before the end of the week.

dairiki commented 5 months ago

Merged and released as 8.6.1.

Thank you @mvanderlee for getting the ball rolling!