bug icon indicating copy to clipboard operation
bug copied to clipboard

Don't put loose files like `.scala_history_jline3` in the root of user dirs

Open twome opened this issue 2 years ago • 5 comments

This puts a file named .scala_history_jline3 in the root of my home folder. I have no idea what "JLine3" is, nor do I imagine most people who have ever installed Scala and used the REPL, however briefly, and no-one should ever need to websearch a mysterious file that appears in, again, the root directory of their home folder to figure out what it's for. Can you please respect your users and at least put history/configuration/cache files inside a single folder named .scala?

twome avatar Jul 29 '22 17:07 twome

It is commensurate with, for example, .node_repl_history.

I respect the user enough to figure out prefixes of hidden files. But this is annoying:

.dotty_history
.scala_history
.scala_history_jline3

Trying out a snippet on different versions requires tiresome pasting, because the REPLs do not share history.

On the upside, there is no .scalarc (though it has been requested).

A related issue is trying to clean .cache and .ivy2 and who knows what else. On WSL, one must check both the Linux home and the Windows home.

Also, I still haven't forgiven scala-cli for deleting everything in /tmp. On that occasion, I did feel disrespected.

som-snytt avatar Jul 29 '22 18:07 som-snytt

No-one should have to spend a millisecond thinking about or cleaning up after your software when they're not using it. Stop fucking littering. I am so fucking sick of all this terrible, terrible, terrible software.

I hate to be a tone police here, but no one deserves this kind of discourse, let alone from a random stranger who downloaded free application on the internet, and you're monitoring the bug tracker as a volunteer. @scala/admins, please enforce https://scala-lang.org/conduct/

eed3si9n avatar Jul 29 '22 21:07 eed3si9n

For sbt, I've been nudging contributor to adopt XDG Base Directory Specification where possible - https://github.com/sbt/sbt/pull/6887#issuecomment-1114139151 This mean first looking at XDG_RUNTIME_DIR, then falling back to /tmp/.sbt/ for some of the files.

eed3si9n avatar Jul 29 '22 21:07 eed3si9n

@eed3si9n "free applications" that harm a user's computer are malware. I'm not getting angry at devs for not letting me do what I want with the free labour of their love, I'm getting angry at them because they're harming users' computers. You're conflating two very different scenarios. I'm not trying to use Scala at all. I'm trying to remove Scala's influence from my computer, and telling devs to stop adding confusing clutter to the root of the user directory of every single person who ever tries Scala, which it's probably fair to say comprises more than a million people. In this situation, the fact that Scala is FOSS is, ethically speaking, completely irrelevant. So, yes, the people who authored this particular change do actually deserve this kind of discourse, and particularly so from a random stranger, as a reminder that their software is being executed on a lot of random strangers' computers, and there is a high level of responsibility inherent to that. If I ever make a program that writes garbage to millions of people's digital bedrooms, I encourage you to get angry at me too, because I'll deserve it.

twome avatar Jul 30 '22 05:07 twome

Relatedly, ditto for sbt at https://github.com/sbt/sbt/issues/6914

som-snytt avatar Aug 10 '22 07:08 som-snytt

Trying out a snippet on different versions requires tiresome pasting, because the REPLs do not share history.

Maybe replacing two of the files with a symlink to the third one would solve that annoyance in a hack way. :nerd_face:

mims-github avatar Dec 01 '22 15:12 mims-github

I do support that ISSUE, this is really annoying:

.dotty_history
.scala_history
.scala_history_jline3

It should stick to the XDG specification, and these files should be in $XDG_CACHE_HOME directory.

untainsYD avatar Sep 01 '23 00:09 untainsYD