Issue1368955
This issue tracker has been migrated to GitHub,
and is currently read-only.
For more information,
see the GitHub FAQs in the Python's Developer Guide.
Created on 2005-11-29 08:58 by ping, last changed 2022-04-11 14:56 by admin. This issue is now closed.
Files | ||||
---|---|---|---|---|
File name | Uploaded | Description | Edit | |
uuid.py | ping, 2005-11-30 11:53 | UUID object and generator for v1, v3, v4, v5 UUIDs |
Messages (14) | |||
---|---|---|---|
msg49139 - (view) | Author: Ka-Ping Yee (ping) * | Date: 2005-11-29 08:58 | |
I recently tossed off a module to generate UUIDs because i needed one. Fredrik Lundh suggested i submit it here for inclusion in the standard library. See http://zesty.ca/python/uuid.html for a pydoc page. The module provides a UUID class for representing UUIDs and can generate version 1, 3, 4, or 5 UUIDs. One drawback of the implementation is that it currently runs external programs ("ipconfig" or "ifconfig") to obtain the Ethernet hardware address used in a version 1 UUID. The version 1 UUID implementation also does not use persistent storage to determine the clock sequence number. |
|||
msg49140 - (view) | Author: Ka-Ping Yee (ping) * | Date: 2005-11-29 09:14 | |
Logged In: YES user_id=45338 This update fixes __repr__ to return a proper expression and adds the use of os.urandom (if available) to generate randomness for version 4 UUIDs. |
|||
msg49141 - (view) | Author: Ka-Ping Yee (ping) * | Date: 2005-11-29 09:14 | |
Logged In: YES user_id=45338 This update fixes __repr__ to return a proper expression and adds the use of os.urandom (if available) to generate randomness for version 4 UUIDs. |
|||
msg49142 - (view) | Author: Ka-Ping Yee (ping) * | Date: 2005-11-29 09:14 | |
Logged In: YES user_id=45338 This update fixes __repr__ to return a proper expression and adds the use of os.urandom (if available) to generate randomness for version 4 UUIDs. |
|||
msg49143 - (view) | Author: Ka-Ping Yee (ping) * | Date: 2005-11-30 11:54 | |
Logged In: YES user_id=45338 This update fixes the order of the bytes in a hash-generated UUID. With this fix, the interpretation of RFC 4122 is that "octet 0" refers to the MOST significant octet, i.e. the one printed on the left. |
|||
msg49144 - (view) | Author: Michael Ströder (stroeder) | Date: 2005-12-07 23:47 | |
Logged In: YES user_id=64920 I'd like to see some constants pre-calculated for gaining performance, e.g. during mass data handling. E.g. the MAC address should only determined once after startup. Or at least as key-word argument so that the caller can decide to cache the MAC address. def uuid1(node=None): [..] node = node or getaddr() |
|||
msg49145 - (view) | Author: Ian Bicking (ianbicking) * | Date: 2006-03-07 08:06 | |
Logged In: YES user_id=210337 We had some minor problems backporting this to Python 2.3; this fixed it: - uuid = UUID(randrange(1<<32L), randrange(1<<16), randrange(1<<16), - randrange(1<<8), randrange(1<<8), randrange(1<<48L)) + uuid = UUID(randrange(1<<32), randrange(1<<16), randrange(1<<16), + randrange(1<<8), randrange(1<<8), randrange(1<<48)) I'm not sure what the most current version looks like, so this might not be a problem anymore (e.g. if the values get precalculated) |
|||
msg49146 - (view) | Author: Tim Peters (tim.peters) * | Date: 2006-03-07 15:45 | |
Logged In: YES user_id=31435 On c.l.py, Thomas Heller noted: """ I haven't used this module, but: The wingetaddr() function doesn't work on a german version of windows (there is no line in the output that starts with 'physical address'). In getaddr(), what if windows is installed on the D: drive? """ |
|||
msg49147 - (view) | Author: George Yoshida (quiver) | Date: 2006-03-07 16:27 | |
Logged In: YES user_id=671362 One more thing about getaddr function. On Win 2k, "C:\WINNT" is used instead of XP- like "C:\windows". (If I remember correctly, Win 2k is still supportted. Am I right?) |
|||
msg49148 - (view) | Author: Georg Brandl (georg.brandl) * | Date: 2006-03-07 17:58 | |
Logged In: YES user_id=849994 Instead of hardcoding directories for ipconfig, why not try spawnp directly on UNIX or use something like webbrowser._iscommand? Minor nit: a,b,c = [1,2,3] is better a,b,c=1,2,3 |
|||
msg49149 - (view) | Author: Trent Mick (tmick) | Date: 2006-03-07 18:20 | |
Logged In: YES user_id=34892 > On Win 2k, "C:\WINNT" is used instead of XP-like > "C:\windows". Perhaps uuid.py could use the "windir" environment variable. It is defined on (at least) WinXP, Win2k, WinMe that I could check and points to C:\WINDOWS (on WinXP and WinMe) and C:\WINNT (on Win2k). It would first be good to verify if it is defined on WinNT and Win9x. |
|||
msg49150 - (view) | Author: Trent Mick (tmick) | Date: 2006-03-07 18:28 | |
Logged In: YES user_id=34892 > use something like webbrowser._iscommand I have a Python implementation of `which`: http://trentm.com/projects/which/ http://trentm.com/projects/which/which.py though that is likely overkill for this case. |
|||
msg49151 - (view) | Author: Trent Mick (tmick) | Date: 2006-03-07 18:57 | |
Logged In: YES user_id=34892 Would require a C extension but perhaps this could be used to get the MAC address on Windows instead of running and grepping (unreliable for different locales as Thomas pointed out) ipconfig.exe: http://support.microsoft.com/default.aspx?scid=kb;en-us;118623 How To Get the MAC Address for an Ethernet Adapter |
|||
msg49152 - (view) | Author: Georg Brandl (georg.brandl) * | Date: 2006-07-03 13:32 | |
Logged In: YES user_id=849994 This module was now added to the stdlib. |
History | |||
---|---|---|---|
Date | User | Action | Args |
2022-04-11 14:56:14 | admin | set | github: 42641 |
2005-11-29 08:58:44 | ping | create |