Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update notes.org #90

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from
Draft

Update notes.org #90

wants to merge 1 commit into from

Conversation

jayvdb
Copy link
Collaborator

@jayvdb jayvdb commented May 19, 2023

No description provided.

+ incremental save
+ Many backreferences
+ Column renames in migrations
+ Column renames in migrations [[https://github.com/Electron100/butane/issues/89]]
+ prepared/reusable queries
+ Improved custom support, including raw sql where clauses
+ More precise spans in macro errors for invalid field names
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These are likely a few easy improvements. Do we know some instances that need improvement?

notes.org Show resolved Hide resolved
+ incremental save
+ Many backreferences
+ Column renames in migrations
+ Column renames in migrations [[https://github.com/Electron100/butane/issues/89]]
+ prepared/reusable queries
+ Improved custom support, including raw sql where clauses
+ More precise spans in macro errors for invalid field names
+ Remove timestamp from migration names
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I quite like the timestamp being in the name, but it is problematic when git rebasing a change. I can write up an issue about this, but I probably wont be able to fully capture the original intent of this item.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#91

+ incremental save
+ Many backreferences
+ Column renames in migrations
+ Column renames in migrations [[https://github.com/Electron100/butane/issues/89]]
+ prepared/reusable queries
+ Improved custom support, including raw sql where clauses
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"raw sql where clauses" is a reasonable clear enhancement. Im not sure what else falls under "Improved custom support"

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is probably best covered by issue #1 now

+ incremental save
+ Many backreferences
+ Column renames in migrations
+ Column renames in migrations [[https://github.com/Electron100/butane/issues/89]]
+ prepared/reusable queries
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IMO this isnt a limitation - there are some performance gains here, but ... I doubt typical users of butane would see this as a priority.

* Roadmap
** vNext
+ foreign key constraints in db, cascade setting
+ foreign key constraints in db, cascade setting [[https://github.com/Electron100/butane/issues/21]]
+ incremental save
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This one isnt clear to me.
does this mean doing writes immediately when changing a struct instance? sounds crazy.
or Many.add writing immediately?

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The original intention of this line was save being able to do an update with only the fields that have actually changed, as a performance enhancement. However that really doesn't fit well with the current architecture of assigning directly to struct fields and I'm not sure I think it's a good idea any more. I think at this point I'd do something like DataResult (or like what Diesel does) to allow updates with a struct containing only a subset of the model fields.

* Roadmap
** vNext
+ foreign key constraints in db, cascade setting
+ foreign key constraints in db, cascade setting [[https://github.com/Electron100/butane/issues/21]]
+ incremental save
+ Many backreferences
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess this is simply a function to take the caller from a Many instance to the instance that "(owner table, key)" points to?
Seems so, and seems not too hard to do, and also quite useful.

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Correct

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants