Replies: 4 comments
-
Note: I tried to record this but it was 💩, alas. |
Beta Was this translation helpful? Give feedback.
-
Here are my personal comments w.r.t to some of those notes. Hope you don't mind me chiming in late!
Was macOS engulfed by Microsoft Windows too 😉? I may be able to help with that, if that helps.
I'm not against breaking some things before a 1.0 (at least the ones we know about, like those 2 PRs). I would like to add #4316 to the list (though I'm not disagreeing about @pks-t's sentiment that it lacks reasoning so I need to refresh my memory on that one).
I have some configs for a bunch of machine-learning-based formatting tools (whatstyle, unformat) I've tried (around 8 run hour on my 2017 MBP), which I was planning to submit after human-checking them, the goal being to "Just clang-format everything and be done with it". I've also tried uncrustify in case it was more flexible but haven't really compared the output to see if it's better (for example, the 4-space indent rule on multiline function declarations and multiline |
Beta Was this translation helpful? Give feedback.
-
> Breaking API before 1.0
I'm not against breaking some things before a 1.0 (at least the
ones we know about, like those 2 PRs). I would like to add
#4316 to the list
(though I'm not disagreeing about @pks-t's sentiment that it
lacks reasoning so I need to refresh my memory on that one).
Maybe we should just mark those "mis-behaving" functions as
deprecated so we can point people toward the new/"fixed"
version (IOW function declaration changes are not allowed
anymore) ?
That's exactly where I want to go in the future. I've created a
new `GIT_DEPRECATED` macro which is being used for `git_buf_free`
as a first user. This has just been merged yesterday via #4436.
The obvious downside of going down this path is that APIs might
get a bit awkward in some places. As soon as we have our first
`git_whatever_fixed_really_fixed_v3` it'll start to get nasty.
But that's a bullet we'll have to bite, as we need to be more
responsible towards our users.
Furthermore, I think that we can establish a reasonable way to
deprecate things, by marking functions as deprecated with an
EOL-date. As soon as the end of life date is reached, we remove
that function. Assuming we give at least two major releases of
time, that should help people to migrate code previous to us
breaking the API.
> Formatting.
I have some configs for a bunch of machine-learning-based
formatting tools ([whatstyle], [unformat]) I've tried (around 8
run hour on my 2017 MBP), which I was planning to submit after
human-checking them, the goal being to "Just clang-format
everything and be done with it". I've also tried uncrustify in
case it was more flexible but haven't really compared the
output to see if it's better (for example, the 4-space indent
rule on multiline function declarations and multiline `if`
expressions was not possible to express in clang-format).
Oh, that's nice. I thought about writing a small tool which tries
to find a diff-minimum automatically, but quickly discarded that
as I didn't think benefit would outweigh the effort. It's cool
that such things seem to alreay exist. I hope what is being
generated by those tools is a clang-format configuration and not
some arcane blob you feed into a small niche-tool?
|
Beta Was this translation helpful? Give feedback.
-
I'm 👍 then. Note that at least clang has support for an I'm slightly cautious about #4316 though, cause I feel like our reflog management could be extracted from the refdb itself (right now as an external backend provider you have to handle nasty transaction issues, like the deletion failures #4316 is trying to fix). I was thinking about having passing some kind of
IIRC unformat is clang-format only. whatstyle supports most formatting tools I'm aware of. Both output their respective tool configuration file. I'll try to have PRs ready for comparison, as soon as dust settles at work. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
We met up for the first contributors conference call in a while to discuss progress. In attendance: @carlosmn, @ethomson, @pks-t.
Beta Was this translation helpful? Give feedback.
All reactions