Socket
Socket
Sign inDemoInstall

uuid

Package Overview
Dependencies
Maintainers
4
Versions
39
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

uuid - npm Package Compare versions

Comparing version 2.0.3 to 3.0.0

AUTHORS

23

LICENSE.md

@@ -1,2 +0,21 @@

Copyright (c) 2010-2012 Robert Kieffer
MIT License - http://opensource.org/licenses/mit-license.php
The MIT License (MIT)
Copyright (c) 2010-2012 Robert Kieffer
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

36

package.json
{
"name": "uuid",
"version": "2.0.3",
"description": "Rigorous implementation of RFC4122 (v1 and v4) UUIDs.",
"version": "3.0.0",
"description": "RFC4122 (v1 and v4) generator",
"keywords": [

@@ -10,17 +10,9 @@ "uuid",

],
"author": "Robert Kieffer <robert@broofa.com>",
"contributors": [
{
"name": "Christoph Tavan <dev@tavan.de>",
"github": "https://github.com/ctavan"
},
{
"name": "Vincent Voyer <vincent@zeroload.net>",
"github": "https://github.com/vvo"
}
],
"license": "MIT",
"main": "./uuid.js",
"bin": {
"uuid": "./bin/uuid"
},
"devDependencies": {
"mocha": "1.8.0"
"mocha": "3.1.2"
},

@@ -31,18 +23,8 @@ "scripts": {

"browser": {
"./rng.js": "./rng-browser.js"
"./lib/rng.js": "./lib/rng-browser.js"
},
"repository": {
"type": "git",
"url": "https://github.com/defunctzombie/node-uuid.git"
},
"testling": {
"browsers": [
"ie6..latest",
"firefox/3.6..latest",
"chrome/22..latest",
"safari/5.1..latest"
],
"harness": "mocha-tdd",
"files": "test/*.js"
"url": "https://github.com/kelektiv/node-uuid.git"
}
}
}

@@ -1,5 +0,3 @@

# uuid [![Build Status](https://secure.travis-ci.org/defunctzombie/node-uuid.svg?branch=master)](http://travis-ci.org/defunctzombie/node-uuid) #
# uuid [![Build Status](https://secure.travis-ci.org/kelektiv/node-uuid.svg?branch=master)](http://travis-ci.org/kelektiv/node-uuid) #
[![browser support](https://ci.testling.com/defunctzombie/node-uuid.png)](https://ci.testling.com/defunctzombie/node-uuid)
Simple, fast generation of [RFC4122](http://www.ietf.org/rfc/rfc4122.txt) UUIDS.

@@ -10,18 +8,9 @@

* Generate RFC4122 version 1 or version 4 UUIDs
* Runs in node.js and all browsers.
* Cryptographically strong random # generation on supporting platforms
* 1185 bytes minified and gzip'ed (Want something smaller? Check this [crazy shit](https://gist.github.com/982883) out! )
* [Annotated source code](http://broofa.github.com/node-uuid/docs/uuid.html)
* Runs in node.js and browsers
* Cryptographically strong random number generation on supporting platforms
* Small footprint (Want something smaller? [Check this out](https://gist.github.com/982883) out!)
## Getting Started
## Quickstart - nodejs
Install it in your browser:
```html
<script src="uuid.js"></script>
```
Or in node.js:
```
```shell
npm install uuid

@@ -31,9 +20,19 @@ ```

```javascript
var uuid = require('uuid');
const uuid = require('uuid');
// Generate a v4 (random) id
uuid() // -> '110ec58a-a0f2-4ac4-8393-c866d813b8d1'
// Generate a v1 (time-based) id
uuid.v1(); // -> '6c84fb90-12c4-11e1-840d-7b25c5ee775a'
```
// Generate a v4 (random) id
uuid.v4(); // -> '110ec58a-a0f2-4ac4-8393-c866d813b8d1'
## Quickstart - browser
** Not recommende for production or even semi-production use. Use a bundling tool instead (i.e. webpack, browserify, rollup, etc)**
[wzrd.in](https://github.com/jfhbrook/wzrd.in) will serve up any npm module after performing basic bundling and minification.
```html
<script src="https://wzrd.in/standalone/uuid@latest"></script>
```

@@ -43,2 +42,6 @@

### uuid(...)
Generate a V4 uuid. See uuid.v4 documentation below.
### uuid.v1([`options` [, `buffer` [, `offset`]]])

@@ -79,3 +82,3 @@

// Generate two ids in an array
var arr = new Array(32); // -> []
const arr = new Array(32); // -> []
uuid.v1(null, arr, 0); // -> [02 a2 ce 90 14 32 11 e1 85 58 0b 48 8e 4f c1 15]

@@ -118,3 +121,3 @@ uuid.v1(null, arr, 16); // -> [02 a2 ce 90 14 32 11 e1 85 58 0b 48 8e 4f c1 15 02 a3 1c b0 14 32 11 e1 85 58 0b 48 8e 4f c1 15]

```javascript
var buffer = new Array(32); // (or 'new Buffer' in node.js)
const buffer = new Array(32); // (or 'new Buffer' in node.js)
uuid.v4(null, buffer, 0);

@@ -124,88 +127,10 @@ uuid.v4(null, buffer, 16);

### uuid.parse(id[, buffer[, offset]])
### uuid.unparse(buffer[, offset])
Parse and unparse UUIDs
* `id` - (String) UUID(-like) string
* `buffer` - (Array | Buffer) Array or buffer where UUID bytes are to be written. Default: A new Array or Buffer is used
* `offset` - (Number) Starting index in `buffer` at which to begin writing. Default: 0
Example parsing and unparsing a UUID string
```javascript
var bytes = uuid.parse('797ff043-11eb-11e1-80d6-510998755d10'); // -> <Buffer 79 7f f0 43 11 eb 11 e1 80 d6 51 09 98 75 5d 10>
var string = uuid.unparse(bytes); // -> '797ff043-11eb-11e1-80d6-510998755d10'
```
### uuid.noConflict()
(Browsers only) Set `uuid` property back to it's previous value.
Returns the uuid object.
Example:
```javascript
var myUuid = uuid.noConflict();
myUuid.v1(); // -> '6c84fb90-12c4-11e1-840d-7b25c5ee775a'
```
## Deprecated APIs
Support for the following v1.2 APIs is available in v1.3, but is deprecated and will be removed in the next major version.
### uuid([format [, buffer [, offset]]])
uuid() has become uuid.v4(), and the `format` argument is now implicit in the `buffer` argument. (i.e. if you specify a buffer, the format is assumed to be binary).
## Testing
In node.js
```
> cd test
> node test.js
npm test
```
In Browser
## Legacy node-uuid package
```
open test/test.html
```
### Benchmarking
Requires node.js
```
cd benchmark/
npm install
node benchmark.js
```
For a more complete discussion of uuid performance, please see the `benchmark/README.md` file, and the [benchmark wiki](https://github.com/broofa/uuid/wiki/Benchmark)
For browser performance [checkout the JSPerf tests](http://jsperf.com/node-uuid-performance).
## Release notes
### 2.0.0
* Removed uuid.BufferClass
### 1.4.0
* Improved module context detection
* Removed public RNG functions
### 1.3.2
* Improve tests and handling of v1() options (Issue #24)
* Expose RNG option to allow for perf testing with different generators
### 1.3.0
* Support for version 1 ids, thanks to [@ctavan](https://github.com/ctavan)!
* Support for node.js crypto API
* De-emphasizing performance in favor of a) cryptographic quality PRNGs where available and b) more manageable code
The code for the legacy node-uuid package is available in the `node-uuid` branch.

@@ -97,10 +97,1 @@ var assert = require('assert');

});
test('parse/unparse', function() {
var id = '00112233445566778899aabbccddeeff';
assert(uuid.unparse(uuid.parse(id.substr(0,10))) ==
'00112233-4400-0000-0000-000000000000', 'Short parse');
assert(uuid.unparse(uuid.parse('(this is the uuid -> ' + id + id)) ==
'00112233-4455-6677-8899-aabbccddeeff', 'Dirty parse');
});

@@ -1,10 +0,5 @@

// uuid.js
//
// Copyright (c) 2010-2012 Robert Kieffer
// MIT License - http://opensource.org/licenses/mit-license.php
// Unique ID creation requires a high quality random # generator. We feature
// detect to determine the best RNG source, normalizing to a function that
// returns 128-bits of randomness, since that's what's usually required
var _rng = require('./rng');
var _rng = require('./lib/rng');

@@ -14,3 +9,3 @@ // Maps for number <-> hex string conversion

var _hexToByte = {};
for (var i = 0; i < 256; i++) {
for (var i = 0; i < 256; ++i) {
_byteToHex[i] = (i + 0x100).toString(16).substr(1);

@@ -20,24 +15,5 @@ _hexToByte[_byteToHex[i]] = i;

// **`parse()` - Parse a UUID into it's component bytes**
function parse(s, buf, offset) {
var i = (buf && offset) || 0, ii = 0;
buf = buf || [];
s.toLowerCase().replace(/[0-9a-f]{2}/g, function(oct) {
if (ii < 16) { // Don't overflow!
buf[i + ii++] = _hexToByte[oct];
}
});
// Zero out remaining bytes if string was short
while (ii < 16) {
buf[i + ii++] = 0;
}
return buf;
}
// **`unparse()` - Convert UUID byte array (ala parse()) into a string**
function unparse(buf, offset) {
var i = offset || 0, bth = _byteToHex;
function buff_to_string(buf, offset) {
var i = offset || 0;
var bth = _byteToHex;
return bth[buf[i++]] + bth[buf[i++]] +

@@ -142,7 +118,7 @@ bth[buf[i++]] + bth[buf[i++]] + '-' +

var node = options.node || _nodeId;
for (var n = 0; n < 6; n++) {
for (var n = 0; n < 6; ++n) {
b[i + n] = node[n];
}
return buf ? buf : unparse(b);
return buf ? buf : buff_to_string(b);
}

@@ -171,3 +147,3 @@

if (buf) {
for (var ii = 0; ii < 16; ii++) {
for (var ii = 0; ii < 16; ++ii) {
buf[i + ii] = rnds[ii];

@@ -177,3 +153,3 @@ }

return buf || unparse(rnds);
return buf || buff_to_string(rnds);
}

@@ -185,5 +161,3 @@

uuid.v4 = v4;
uuid.parse = parse;
uuid.unparse = unparse;
module.exports = uuid;

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc