Re:Formatting code should be unnecessary
by saagarjha on Monday September 08, 2025 @06:56AM
(#45166796)
This makes it really annoying to grep for log messages. I can't control what you do in your codebase but I will always argue against this the ones I work on.
Re:Formatting code should be unnecessary
by layer8 on Monday September 08, 2025 @07:06AM
(#45166860)
I haven’t found this to be a problem in practice. You generally can’t grep for the complete message anyway due to inserted arguments. Picking a distinctive formulation from the log message virtually always does the trick. I do take care to not place line breaks in the middle of a semantic unit if possible.
Re:Formatting code should be unnecessary
by saagarjha on Monday September 08, 2025 @07:09AM
(#45166880)
Yes, I find the part of the message that doesn't have interpolated arguments in it. The problem is that the literal part of the string might be broken up across lines.
Re:Formatting code should be unnecessary
by bogomog on Monday September 08, 2025 @06:12PM
(#45174720)
And to add to this, you rarely need to read a log message when just visually scanning code, its fine going off the screen.
Re:Formatting code should be unnecessary
by maleldil on Monday September 08, 2025 @08:37AM
(#45167523)
Nitpick: this looks like Python. You don't need + to concatenate string literal. This is the type of thing a linter can catch.
Re:Formatting code should be unnecessary
by layer8 on Monday September 08, 2025 @02:30PM
(#45171983)
It’s actually Java, where the “+” is necessary.
Re:Formatting code should be unnecessary
by Sohcahtoa82 on Monday September 08, 2025 @03:36PM
(#45172866)
IMO, implicit string concatenation is a bug, not a feature.
I once made a stupid mistake of having a list of directories to delete:
directories_to_delete = (
"/some/dir"
"/some/other/dir"
)
for dir in directories_to_delete:
shutil.rmtree(dir)
Can you spot the error? I somehow forgot the comma in the list. That meant that rather than creating a tuple of directories, I created a single string. So when the `for` loop ran, it iterated on individual characters of the string. What was the first character? "/" of course.I essentially did an `rm -rf /` because of the implicit concatenation.
Re:Formatting code should be unnecessary
by forrestthewoods on Monday September 08, 2025 @11:21PM
(#45177014)
Splitting log messages across lines like that is pure evil. Your punishment is death by brazen Bull. Sorry I don’t make the rules, just how it is. :(
I like splitting long text as in log statements into appropriate source lines, just like you would a Markdown paragraph. As in:
I agree that many formatters are bad about this, like introducing an indent for all but the first content line, or putting the concatenation operator in the front instead of the back, thereby also causing non-uniform alinkemt of the text content.