!lymvtcwDJ7ZA9Npq:lix.systems

Lix Development

417 Members
(Technical) development of Lix, the package manager, a Nix implementation. Please be mindful of ongoing technical conversations in this channel.139 Servers

Load older messages


SenderMessageTime
1 Aug 2025
@emilazy:matrix.orgemilyif the decision is as overdetermined as it sounds I probably won't have energy to open a Forgejo issue sadly16:27:23
@emilazy:matrix.orgemilyI will probably just keep creating non-formatted diffs, since… well, CI is happy with it16:27:34
@emilazy:matrix.orgemily (the algorithm is simply: to rebase a commit that takes state A to state B across formatting, format A and B to produce A' and B' and diff B' against A'. Git mergetools or jj fix or whatever only enter the picture in how you make this happen; the algorithm itself works 100% reliably to produce the commit you would have produced if the change was written post-format) 16:29:20
@raitobezarius:matrix.orgraitobezarius

I understand limited time to deal with such decisions but I feel like "we can spend time talking about how to patch your/others' problems with the current workflow but not spend equivalent time explaining our problems with the proposed workflow" is somewhat imbalanced :(

It's totally is and I'm sorry for that, I don't consider formatting discussions table stakes compared to other high profiles debates we may have here, especially given that it will impact first and foremost the people who are the most active sending patches & working on Lix (and I realize that this may discourage people who are not sending patches or work on Lix, but I don't know how many of them exist and if patches would happen if the codebase is reformatted that way), so it's a bit of I prioritize the regularity that I know right now

16:30:18
@raitobezarius:matrix.orgraitobezarius
In reply to @emilazy:matrix.org
I will probably just keep creating non-formatted diffs, since… well, CI is happy with it
and I'm totally happy with that as well
16:30:53
@raitobezarius:matrix.orgraitobezarius
In reply to @emilazy:matrix.org
(the algorithm is simply: to rebase a commit that takes state A to state B across formatting, format A and B to produce A' and B' and diff B' against A'. Git mergetools or jj fix or whatever only enter the picture in how you make this happen; the algorithm itself works 100% reliably to produce the commit you would have produced if the change was written post-format)
Don't get me wrong, I totally believe you that this is achievable
16:31:08
@raitobezarius:matrix.orgraitobezariusFormatting is, to me, more than a technical discussion so I don't want you to lose time over something that I believe will disappoint more the participants than the ultimate achieved outcome16:31:55
@emilazy:matrix.orgemily(I find it discouraging that I am having to manually do code formatting tasks (albeit likely formatting-standard-noncompliant ones) because I cannot reasonably use the tooling fwiw)16:32:02
@raitobezarius:matrix.orgraitobezariusObviously, this can be revisited in the future16:32:04
@emilazy:matrix.orgemily(I do know there are other Lix contributors using Jujutsu so I wonder what the workflow being used to deal with this is, but I suspect it involves editor hooks)16:32:56
@raitobezarius:matrix.orgraitobezariusMaybe I should forcibly switch myself to Jujutsu to understand what can be achieved16:33:15
@qyriad:katesiria.orgQyriadwe are likely doing that soon16:33:30
@raitobezarius:matrix.orgraitobezariusBut really, this is the best I can offer at this point in time16:33:28
@charles:computer.surgeryCharlesdo iiiiiiit16:33:31
@qyriad:katesiria.orgQyriadpuck uses Jujutsu iwrc16:33:41
@qyriad:katesiria.orgQyriadidk what she does with Lix with it16:33:47
@emilazy:matrix.orgemily I have seen jade_ active in Jujutsu spaces too at least 16:33:55
@helle:tacobelllabs.nethelle (just a stray cat girl)yes, she has been trying to convince me to use it as well16:35:08
@emilazy:matrix.orgemily

as long as you have a formatting tool that can work in-memory on entire files (treefmt with the right configuration achieves this, clang-format can do it, nixfmt can do it, etc.) you can jj fix -s X on any X that has formatting-related conflicts (e.g., from a rebase or merge or revert) and the remaining conflicts in X and its children will be exactly the non-formatting ones. (jj fix -s X is also the tool that fixes formatting in X and its children in the absence of any conflicts)

I wouldn't call this a Jujutsu perk though because as I said the exact same results can be achieved with Git and insofar as it is more awkward to do so it is only the usual Jujutsu–Git delta of awkwardness

16:36:02
@charles:computer.surgeryCharlesjj is great. i was hesitant to try it because i felt pretty comfortable with git despite its terrible ux but i regret not trying jj sooner because it's genuinely a huge improvement16:36:08
@raitobezarius:matrix.orgraitobezarius
In reply to @emilazy:matrix.org

as long as you have a formatting tool that can work in-memory on entire files (treefmt with the right configuration achieves this, clang-format can do it, nixfmt can do it, etc.) you can jj fix -s X on any X that has formatting-related conflicts (e.g., from a rebase or merge or revert) and the remaining conflicts in X and its children will be exactly the non-formatting ones. (jj fix -s X is also the tool that fixes formatting in X and its children in the absence of any conflicts)

I wouldn't call this a Jujutsu perk though because as I said the exact same results can be achieved with Git and insofar as it is more awkward to do so it is only the usual Jujutsu–Git delta of awkwardness

yes but let's be clear again
16:36:35
@raitobezarius:matrix.orgraitobezariusi don't want to make Lix a project that is jj-only16:36:43
@raitobezarius:matrix.orgraitobezariusor usable very much only if you use jj16:36:49
@emilazy:matrix.orgemilysee my second paragraph :(16:36:54
@raitobezarius:matrix.orgraitobezariusok sorry :(16:37:01
@emilazy:matrix.orgemilyI really feel like there is a knowledge gap in how much simple merge tooling that Git supports as well as Jujutsu will resolve all formatting conflict issues automatically and that a small amount of documentation could resolve this, but I also understand that it's effectively not up for discussion16:37:27
@raitobezarius:matrix.orgraitobezariusbecause when you drum it too hard, I hear "let's make the experience great for jj users and for git… well doable but enjoy"16:37:27
@emilazy:matrix.orgemilyalright. I was replying to you talking about the Jujutsu workflow around this. if you had asked about Git I could have given that information too :)16:37:54
@raitobezarius:matrix.orgraitobezariusit's a risk aversion thing16:37:54
@raitobezarius:matrix.orgraitobezariusyeah what i was focusing on is "emilazy cannot format their diffs nicely with jj on lix contributions, so i will try jj and understand what is broken or what could be improved"16:38:29

Show newer messages


Back to Room ListRoom Version: 10