livebud / bud

The Full-Stack Web Framework for Go
MIT License
5.58k stars 179 forks source link

Experimental compiler refactor #133

Closed matthewmueller closed 2 years ago

matthewmueller commented 2 years ago

I'd like to take one more crack at the compiler refactor. It's important to get this process right because all the generators will fit within this overall process. Writing generators is the easy part.

The goal is to:

Additionally:

This will hopefully make the code base much easier to follow, without compromising on flexibility.

CLAassistant commented 2 years ago

CLA assistant check
All committers have signed the CLA.

matthewmueller commented 2 years ago

Woohoo, it's aliveeeeee. Just need to do a bit more cleanup and it's good to go!

matthewmueller commented 2 years ago

This PR concludes a large internal refactor I've been working on since launch. The goals of this PR:

In general, now that I'm starting to get a better understanding of what people are expecting from the framework, I can start moving the codebase more towards that.

The results of this PR:

Since so much of the codebase has changed, I'm pretty sure there's going to be a few minor regressions, but we can address them as they pop up. The core workflows have remained unchanged.

This PR pretty much wraps up v0.2. Have a look at the discussion to learn more about next steps.