Giter VIP home page Giter VIP logo

Comments (6)

TheAnarchoX avatar TheAnarchoX commented on July 21, 2024 1

Missed your comment, it's just .NET 6 running EF Core and Azure SQL Server, our UUIDs are mostly database generated, I believe some are generate using .NET (Guid.NewGuid()) so nothing crazy tbh

from uuid.

broofa avatar broofa commented on July 21, 2024

variant field is invalid. Must be 8, 9, a or b per RFC4122.

CleanShot 2024-01-11 at 05 36 02@2x

from uuid.

TheAnarchoX avatar TheAnarchoX commented on July 21, 2024

No it does not, NCS backward compatible UUID's are a perfectly fine variant of v4 UUID's, as specified in the RFC. Yes they are reserved for backwards compatibility but that does not make them invalid, nowhere in the RFC does it say that variants other than 8-b are. Same goes for so called GUID's (Microsoft's UUID's, variant c-d). I think a documentation update is in place to clarify which variants it can and can't validate.

Also: Because of the above facts this package is unusable for anyone trying to validate anything generated by a Microsoft backed tech, e.g. .NET, SQL Server. Please make this clear somewhere

from uuid.

broofa avatar broofa commented on July 21, 2024

The only place RFC4122 alludes to NCS ids is to reserve the variants they're known to use. It does not speak to the NCS format or any other characteristics of NCS ids that may or may not make them "valid". The same can be said of the "Reserved, Microsoft" variant (0b110), by the way.

Per the spec, the 0b10x is the only variant specified by RFC4122. I.e. Ids with that variant are the only ones that can be validated with any degree of confidence.

If NCS ids are a concern for you, you'll need to distinguish them from RFC4122 UUIDs before calling validate().

from uuid.

TheAnarchoX avatar TheAnarchoX commented on July 21, 2024

That's a fair point, in reading the spec I interpreted it differently but coming back to it you are correct. Thanks for the reply! We switched to backend validation using an appropriate Microsoft-based solution as it didn't really matter where we validated the UUID.

from uuid.

broofa avatar broofa commented on July 21, 2024

@TheAnarchoX If you don't mind my asking, what application are you working on that's using NCS uuids ids? This is the first time in over a decade of maintaining this project that I've heard of anyone using them. 😮

from uuid.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.