sqids/sqids-haskell

Initial release

4kimov opened this issue ยท 6 comments

4kimov commented

Hey @laserpants, thanks for getting this codebase going! I'm trying to get this out of the door, so have a few questions:

  1. I've noticed some tests are not 1:1 with the spec. My Haskell knowledge is limited, is there any way to get them to cover the same scenarios?
  2. I've added a basic README. Think you could help me fill in the examples?
  3. Would you like to publish the package?

Anything else we're missing? If not, I can update the site whenever this is good to go!

Edit: 4. Is there a way to setup Github Actions for auto-testing? (so the badge shows tests are passing)

Hi @4kimov,

Thanks for checking in. There is still a bit of work to be done here. I was initially pushing the code to a temporary repository under my own account, but I decided to move it here once access was enabled, even though it is not quite ready. Not sure if that was the idea? ๐Ÿค” Otherwise I could move the code back to a less visible place, or push everything on a dev branch in the meantime. What do you think, please? A preliminary timeline is to get this ready for more serious testing sometime this coming week.

Approximate progress bar:

[==============================>                 ]
  1. The tests are just sanity checks as this point, while still implementing the core encoding/decoding logic (decoding is mostly done). Certainly these must be replaced/complemented with the official tests.
  2. I suggest that this will follow after verifying that the official tests pass.
  3. Same as for previous item.
  4. I will look into this as well.
  • Finish implementation of encoding
  • Clean up/finalize API and project structure
  • Add "official" tests
  • Publish (on Hackage)
  • Set up GitHub actions (CI)
  • Update README file
  • Comment code/API docs

  • Release party in the Bahamas? โ›ฑ๏ธ ๐Ÿ˜„
4kimov commented

Hi @laserpants,

Great, thank you for the quick reply. I think at this point it's absolutely fine to keep going with the main branch, it's a brand new repo. Later once people start using it, we can be more detailed about it and create extra branches as needed :)

Everything you're doing is great! Keep it up & let me know how I can help ๐Ÿ™

4kimov commented

Just FYI: I adjusted the spec to match Microsoft's a bit better, so pushed an update to this repo as well.

@4kimov: This is mostly done now. I have added all the tests from the spec, set up CI, published the package to Hackage and update the README-file. The docs can be improved, so I added a separate issue for that here. Feel free to re-open this ticket if you think something is still missing.

4kimov commented

@laserpants I think your docs are excellent. They're so full of information & even have a gif. Well done ๐Ÿ‘

I've updated the website @ https://sqids.org/haskell. I don't see anything else to update for this repo (I also see you've gotten the tests to match the spec, which is great). Thank you for doing all of this!

For now looks like this repo is set. The next approximate steps are:

  1. For me to give Js + Rust + Go a bit of a push
  2. See if the org can get a few more popular languages going (doesn't have to be all 40 of them)
  3. A few days/weeks from now start redirecting (for example from https://hashids.org/haskell/ to https://sqids.org/haskell?hashids)

๐Ÿ™