I changed my username from @ryannhg to @ryan-haskell, so I wanted to make a tiny post on Discourse for any folks using my Elm packages. Sorry for any inconvenience!
If you encounter any errors about “corrupt packages”, here’s what you can do:
Remove the “ryannhg” package dependency from your elm.json
Replace it with the corresponding “ryan-haskell” package below
Thanks for letting us know @RyanNHG, our project is using this dependency and I was confused at why the Corrupted package issue was being thrown. Can you please also put some note on the original package ?, it’s the first place I looked for.
To my understanding, I cannot update the @ryannhg packages after changing my username– this is something I wish I had thought of before changing my username.
For anyone wondering if they are the maintainer of a package that needs to update this dependency (or depend on one of those packages), you can see all the packages with ryannhg/* direct dependencies at https://segakcap.com/search?q=ryannhg. Very handy tool.
Thanks @dillonkearns, I think terezka/elm-charts is a really important dependency affected by this (we use it, so currently CI will still fail). @RyanNHG do you know if these package maintainers are aware of this change?
Note: This mthiems/elm-charts-3 version should be the correct one, corresponding to version 3.0.0 of terezka’s package. The previous one I mentioned here (mthiems/elm-charts), which was incorrect, is gone from github so that no one accidentally uses it. I apologize for my initial mistake.
I also had to fork terezka/intervals to remove the unnecessary dependency on ryannhg/date-format. That is published as mthiems/intervals.
I would suggest that instead of changing username, you create another account with the new name and leave the old one be? However, maybe Github is not so friendly to this approach, for one thing 2-factor is now required on github so you would still have to keep a valid email address and 2-factor credentials for the old account.
Hm I changed my github username as well but just published a last version with a note in the README and then published the package again under the new username.
For those with supply chain paranoia, here is an excerpt from the commit message for bumping the downstream packages in our app:
It is worth stopping to think about this kind of change as a possible maneuver for abusing an established package as malware vector. Someone could impersonate Ryan on Discourse, either by making a fake account or obtaining access to only his Discourse account. They could then post a misleading notice and get downstream packages/applications to switch to a package published by a completely unconnected GitHub account.
If it’s not too much to ask, could we get an update to line-charts as well? Would unblock our CI, but I’m taking this as an incentive for us to migrate to elm-charts regardless!