Giter Site home page Giter Site logo

uuid-console's Introduction

ramsey/uuid-console

A console application for generating UUIDs with ramsey/uuid

Source Code Download Package PHP Programming Language Read License Build Status Codecov Code Coverage Psalm Type Coverage

About

ramsey/uuid-console is a console application for generating UUIDs with ramsey/uuid.

This project adheres to a code of conduct. By participating in this project and its community, you are expected to uphold this code.

Installation

Install this package as a dependency using Composer.

composer require ramsey/uuid-console

This will install a reference to the console tool in ./vendor/bin/uuid.

Usage

If installed in your project, you may execute the console application from the command line:

$ ./vendor/bin/uuid

If installed globally using Composer, ensure your global Composer installation is in your PATH (it's usually somewhere like ~/.composer/vendor/bin). Then, you may execute it:

$ uuid

Please be aware that some systems may already have a command line application named uuid installed, so this might create a conflict if anything using your PATH expects the other uuid tool.

You can generate UUIDs:

$ ./vendor/bin/uuid generate
afe1296a-660b-11e5-bd9f-3c15c2caed47

By default, the application generates version 1 (time-based) UUIDs, but you may specify other versions:

$ ./vendor/bin/uuid generate 4
54478f1d-8b9d-4bf9-8767-1a23010d48a7

You may also decode UUIDs to get information about them:

$ ./vendor/bin/uuid decode afe1296a-660b-11e5-bd9f-3c15c2caed47
 ========= ========== =========================================
  encode:   STR:       afe1296a-660b-11e5-bd9f-3c15c2caed47
            INT:       233784006064090443909084029429027106119
  decode:   variant:   RFC 4122
            version:   1 (time and node based)
            content:   time:  2015-09-28T18:06:49+00:00
                       clock: 15775 (usually random)
                       node:  3c:15:c2:ca:ed:47
 ========= ========== =========================================

For help, just type ./vendor/bin/uuid and read the help information.

Contributing

Contributions are welcome! To contribute, please familiarize yourself with CONTRIBUTING.md.

Coordinated Disclosure

Keeping user information safe and secure is a top priority, and we welcome the contribution of external security researchers. If you believe you've found a security issue in software that is maintained in this repository, please read SECURITY.md for instructions on submitting a vulnerability report.

Copyright and License

The ramsey/uuid-console library is copyright © Ben Ramsey and licensed for use under the MIT License (MIT). Please see LICENSE for more information.

uuid-console's People

Contributors

beryllium avatar carusogabriel avatar dependabot[bot] avatar garak avatar jmsfwk avatar kewlar avatar lewiscowles1986 avatar ma-si avatar martiis avatar peter279k avatar pkruithof avatar ramsey avatar sstok avatar sunkan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

uuid-console's Issues

[bug] Does not generate UUIDv5 with "name" argument equal to "0"

The command does not allow generating a UUIDv3 (and/or UUIDv5) with "name" argument equal to "0" (or an empty string).


I didn't find anything in the RFC4122 about empty names not being allowed. The closest was "Convert the name to a canonical sequence of octets (as defined by the standards or conventions of its name space); <...>", but a proprietary namespace may allow empty names, so why not accept them in the command, too.


Steps to reproduce

Call the command with parameters:

  • version: 3 (or 5)
  • namespace: any valid namespace (ex. "00000000-0000-0000-0000-000000000000")
  • name: "0"
uuid generate 5 00000000-0000-0000-0000-000000000000 "0"

Expected outcome

The command generates a UUID.

b6c54489-38a0-5f50-a60a-fd8d76219cae

Actual outcome

The command complains about name argument not being provided.

  [Ramsey\Uuid\Console\Exception]
  The name argument is required for version 3 or 5 UUIDs

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.