Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Version 3 #11

Closed
14 tasks done
jeanlescure opened this issue Apr 14, 2020 · 3 comments · Fixed by #27
Closed
14 tasks done

Version 3 #11

jeanlescure opened this issue Apr 14, 2020 · 3 comments · Fixed by #27

Comments

@jeanlescure
Copy link
Collaborator

jeanlescure commented Apr 14, 2020

On May 14th this tiny yet widely useful library will reach the 3 year mark since its first commit.

To rise up to the occasion, as well as to match up with Deno's proposed release date for version 1, I've decided to revamp short-unique-id to better match the ethos which originally led me to Ankit Kuwadekar's source code: to have at disposal an open source, atomic, and tiny library which could generate truly unique and random ids with as little code as possible.

With the previous in mind I have the following (mostly breaking) changes in mind:

Features

  • Re-write the development workflow to use Deno for building releases (this one might be tricky as I still want to support npm) Re-write development workflow #13
  • Refactor the syntax uid.randomUUID(6) to uid()
  • Refactor the syntax uid.randomUUID(n) to uid(n)
  • Refactor the syntax uid.sequentialUUID() to uid.seq()
  • Refactor the skipShuffle option to shuffle and default it to true
  • Add a length initialization option
  • Add a uniqueness value (probability of collision, more info in Calculate the Uniqueness #19)

Documentation

  • Add all-contributors
  • Add proper typedoc API reference documentation
  • Document why 6 was chosen as the default character length for a short uid (with actual math that I originally used for my short url project)
  • Add more details to the initialization options section
  • Add Deno usage example
  • Add README.md to short_uuid explaining relationship with this repo

Release

  • Remove -rc1 on docs and import examples

I'll leave this issue open for the following month up to May 13th in case anyone would like to take ownership over any of the listed items or contribute any other changes that might enhance short-unique-id.

@jeanlescure
Copy link
Collaborator Author

@jeanlescure jeanlescure added this to the Version 3 milestone Apr 15, 2020
@jeanlescure jeanlescure changed the title Version 3 feature proposals Version 3 Apr 24, 2020
@jeanlescure
Copy link
Collaborator Author

jeanlescure commented Apr 26, 2020

All contributors avatar template:

<svg xmlns=http://www.w3.org/2000/svg xmlns:xlink=http://www.w3.org/1999/xlink width=100 height=100><defs><rect id=rect width=100 height=100 rx=50% /><clipPath id=clip><use xlink:href=#rect /></clipPath></defs><use xlink:href=#rect /><image xlink:href="https://avatars1.githubusercontent.com/u/3330339?s=88&v=4" width=100 height=100 clip-path=url(#clip) /></svg>

@jeanlescure
Copy link
Collaborator Author

Given the way the work has been handled and the expected conflicts, when moving the work to master we better steer away from merging: https://stackoverflow.com/a/7188232/2731075

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant