--- Log opened Sun Aug 07 00:00:21 2011 |
00:05 | < gnolam> | Honestly, I don't think the users they're trying to help even notices the difference. But the rest of us do. So why the fuck do it? |
00:06 | < gnolam> | And most of all: why not /let us turn it off/. |
00:30 | | kwsn [t1gg@Nightstar-5a8951e9.res.rr.com] has quit [[NS] Quit: brb] |
00:53 | | * ToxicFrog constructs a library for reading and writing VDF files. |
00:54 | < gnolam> | VDF? |
00:56 | < ToxicFrog> | The file format Steam uses to store textual data. |
00:56 | < ToxicFrog> | Used to store things like friend list information, game categories, and whatnot. |
00:57 | < ToxicFrog> | It's a heirarchical key-value affair resembling stripped-down JSON. |
01:00 | <@McMartin> | How do you strip down JSON even further? |
01:00 | | * McMartin wishes JSON at least allowed comments >_< |
01:00 | <@McMartin> | (The fact that many JSON parsers permit it does not mean it's actually allowed.) |
01:00 | | * gnolam takes a look. |
01:00 | < gnolam> | Ah. That format that Source uses everywhere. Didn't know it had a name. :) |
01:01 | < gnolam> | (As, at least in Half-Life 2, files in that format are simply named .txt) |
01:01 | < ToxicFrog> | McMartin: VDF := PAIR+; PAIR := KEY VALUE; KEY = '"' string '"'; VALUE = KEY | '{' VDF '}'; |
01:02 | < ToxicFrog> | gnolam: the ones that Steam itself uses all have a .vdf extension. |
01:02 | <@McMartin> | TF: ... that looks like all of JSON. What does JSON have that that doesn't? |
01:03 | <@McMartin> | Oh. Equals signs. |
01:03 | < ToxicFrog> | A bunch of punctuation and data types boolean, number, array, and nil. |
01:03 | < ToxicFrog> | VDF strips out the : and , and all data types except object and string. |
01:04 | < gnolam> | Also: Half-Life 2 was released in 2004. The JSON RFC is from 2006. |
01:04 | <@McMartin> | I wasn't implying direct descent :) |
01:08 | < ToxicFrog> | alright. VDF reader and writer implemented. |
01:09 | < ToxicFrog> | Just need to test it and then I can start work on the actual program. |
02:10 | | * ToxicFrog glares at Steam |
02:11 | | Derakon[AFK] is now known as Derakon |
02:11 | <@McMartin> | ? |
02:13 | < ToxicFrog> | So, in order to do this properly, I need the following: |
02:13 | < ToxicFrog> | - the user's Steam ID |
02:13 | < ToxicFrog> | - the set of all games (as steam appIDs) the user has on Steam |
02:13 | < ToxicFrog> | - an appID -> name mapping |
02:14 | < ToxicFrog> | #1 can be trivially obtained by examining the contents of $STEAM/userdata and, if more than one profile exists, asking the user which is theirs. |
02:14 | < ToxicFrog> | #2 and #3 turn out to be fairly tricky. |
02:14 | | Syloqs_AFH [Syloq@NetworkAdministrator.Nightstar.Net] has joined #code |
02:15 | <@McMartin> | Aha |
02:15 | | Syloqs_AFH is now known as Syloqs-AFH |
02:20 | < ToxicFrog> | Steam does not appear to store anywhere locally a list of all games the user has licenses to. |
02:21 | < ToxicFrog> | I can trivially get #2 and #3 by scraping the user's steamcommunity page, but there's only two ways to access that - the custom URL and the full steamID. |
02:21 | < ToxicFrog> | The custom URL is basically arbitrary and there's no way to determine it from user ID. |
02:21 | < ToxicFrog> | The full steamID consists of three parts of which the local user ID is only one. |
02:23 | < ToxicFrog> | I may have to settle for just asking the user what their steamcommnity ID is. |
02:29 | | Attilla [Some.Dude@Nightstar-f29f718d.cable.virginmedia.com] has quit [Ping timeout: 121 seconds] |
03:24 | | kwsn [Alexandria@Nightstar-5a8951e9.res.rr.com] has joined #code |
03:29 | | gnolam [lenin@Nightstar-202a5047.priv.bahnhof.se] has quit [[NS] Quit: Z?] |
03:40 | | Kindamoody is now known as Kindamoody[zZz] |
04:46 | | kwsn is now known as kw\t-2 |
04:51 | | kw\t-2 [Alexandria@Nightstar-5a8951e9.res.rr.com] has quit [[NS] Quit: moo] |
04:56 | < ToxicFrog> | Steam categorization widget: success! |
05:15 | | Vash [Vash@Nightstar-f03c5637.sd.cox.net] has joined #code |
05:44 | | Vash [Vash@Nightstar-f03c5637.sd.cox.net] has quit [[NS] Quit: I <lovecraft3 Vorn!] |
06:45 | | Derakon is now known as Derakon[AFK] |
06:46 | | Syloqs_AFH [Syloq@NetworkAdministrator.Nightstar.Net] has joined #code |
06:48 | | Syloqs-AFH [Syloq@NetworkAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds] |
06:52 | | Rhamphoryncus [rhamph@Nightstar-14eb6405.abhsia.telus.net] has joined #code |
06:55 | | AnnoDomini [annodomini@Nightstar-e253d9bc.adsl.tpnet.pl] has quit [Ping timeout: 121 seconds] |
06:56 | | cpux is now known as shade_of_cpux |
06:57 | | AnnoDomini [annodomini@Nightstar-22909972.adsl.tpnet.pl] has joined #code |
07:01 | | shade_of_cpux is now known as cpux |
08:14 | | Kindamoody[zZz] is now known as Kindamoody |
08:16 | | Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has quit [Client closed the connection] |
09:28 | | Syloqs_AFH [Syloq@NetworkAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds] |
09:34 | | Syloqs_AFH [Syloq@NetworkAdministrator.Nightstar.Net] has joined #code |
09:35 | | Syloqs_AFH is now known as Syloqs-AFH |
10:10 | | You're now known as TheWatcher |
11:48 | | Attilla [Some.Dude@Nightstar-f29f718d.cable.virginmedia.com] has joined #code |
12:31 | | Kindamoody is now known as Kindamoody|out |
12:47 | | gnolam [lenin@Nightstar-202a5047.priv.bahnhof.se] has joined #code |
14:01 | | Netsplit *.net <-> *.split quits: Alek, Tarinaky, Kazriko, @McMartin, Kindamoody|out, jerith, PinkFreud |
14:02 | | Netsplit over, joins: Alek |
14:04 | | jerith [jerith@510B1D.77FBDC.BAA20B.2BB773] has joined #code |
14:05 | | Tarinaky [tarinaky@Nightstar-dd7e4a05.net] has joined #code |
14:06 | | Tarinaky [tarinaky@Nightstar-dd7e4a05.net] has quit [[NS] Quit: leaving] |
14:06 | | Tarinaky [tarinaky@Nightstar-dd7e4a05.net] has joined #code |
14:07 | | Tarinaky [tarinaky@Nightstar-dd7e4a05.net] has quit [[NS] Quit: Changing server] |
14:07 | | Tarinaky [tarinaky@Nightstar-dd7e4a05.net] has joined #code |
14:08 | | Tarinaky [tarinaky@Nightstar-dd7e4a05.net] has quit [[NS] Quit: leaving] |
14:14 | | Tarinaky [tarinaky@Nightstar-dd7e4a05.net] has joined #code |
14:14 | | * gnolam WTFs at Python's CSV module. |
14:16 | < gnolam> | Explain to me why it's using double line breaks? |
14:17 | < TheWatcher> | The good old windows v unix newline problem with CSV? |
14:18 | < gnolam> | What? |
14:19 | < TheWatcher> | CSV has this hilarious problem where, if you check in code on one OS and then out on th eother, it screws up the newlines - either doubling them, or sometimes stripping them. |
14:19 | | Kazriko [kaz@Nightstar-d6e676ef.client.bresnan.net] has joined #code |
14:19 | < TheWatcher> | Oh, wait |
14:19 | | Kindamoody|out [Kindamoody@Nightstar-5507a6b5.tbcn.telia.com] has joined #code |
14:19 | < TheWatcher> | I was thing CVS, not CSV |
14:19 | < TheWatcher> | I'll just shut up now |
14:19 | < TheWatcher> | (I blame the migraine) |
14:20 | < gnolam> | ... it's seriously ending each row with CR + CRLF. |
14:20 | < gnolam> | Python: extensive standard library, but half the modules are shit. :P |
14:29 | | McMartin [mcmartin@Nightstar-11664913.pltn13.sbcglobal.net] has joined #code |
15:08 | | PinkFreud [WhyNot@NetworkAdministrator.Nightstar.Net] has joined #code |
15:45 | | Attilla [Some.Dude@Nightstar-f29f718d.cable.virginmedia.com] has quit [Client closed the connection] |
16:29 | | AnnoDomini [annodomini@Nightstar-22909972.adsl.tpnet.pl] has quit [Connection closed] |
16:37 | | AnnoDomini [annodomini@Nightstar-22909972.adsl.tpnet.pl] has joined #code |
17:03 | | Reiver [orthianz@ServerAdministrator.Nightstar.Net] has quit [Client closed the connection] |
17:03 | | Reiver [orthianz@9C034E.E649EA.3194C7.8381A3] has joined #code |
17:15 | | kwsn [kwsn@6824B1.5AFD35.C0F31F.42DAA5] has joined #code |
17:52 | | Reiver [orthianz@9C034E.E649EA.3194C7.8381A3] has quit [Client closed the connection] |
17:52 | | Reiver [orthianz@9C034E.E649EA.3194C7.8381A3] has joined #code |
18:03 | | AnnoDomini is now known as Birds |
18:17 | | Attilla [Some.Dude@Nightstar-f29f718d.cable.virginmedia.com] has joined #code |
18:51 | | Reiver [orthianz@9C034E.E649EA.3194C7.8381A3] has quit [Client closed the connection] |
18:52 | | Reiver [orthianz@9C034E.E649EA.3194C7.8381A3] has joined #code |
18:56 | | Kindamoody|out is now known as Kindamoody |
19:31 | | Derakon[AFK] is now known as Derakon |
20:22 | | Kindamoody is now known as Kindamoody|out |
20:30 | < gnolam> | "A datetime.datetime, datetime.date, or datetime.time instance is converted into Excel date format (a float representing the number of days since (typically) 1899-12-31T00:00:00, under the pretence that 1900 was a leap year)" |
20:30 | < gnolam> | ... mmm, Excel. |
20:50 | | Vash [Vash@Nightstar-f03c5637.sd.cox.net] has joined #code |
20:50 | | Vash is now known as Vornicus |
21:14 | | kwsn is now known as kws-not_here |
21:32 | | Kindamoody|out is now known as Kindamoody |
22:01 | | Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has joined #code |
22:04 | | Birds is now known as AnnoDomini |
22:05 | | kws-not_here is now known as kwsn |
22:27 | | Rhamphoryncus [rhamph@Nightstar-14eb6405.abhsia.telus.net] has quit [Client exited] |
23:08 | | * gnolam triumphs over natural uranium! |
23:10 | < TheWatcher> | \o/ |
23:13 | < gnolam> | (It was a feature request: having "U-nat" as a selectable nuclide when defining sources, where U-nat represents U-238 and U-235 in their natural activity ratios. I found a way to do this cleanly and with a minimum of new code.) |
23:43 | | cpux_ [chatzilla@Nightstar-c5874a39.dyn.optonline.net] has joined #code |
23:43 | | cpux [chatzilla@Nightstar-c5874a39.dyn.optonline.net] has quit [Ping timeout: 121 seconds] |
23:43 | | cpux_ is now known as cpux |
--- Log closed Mon Aug 08 00:00:36 2011 |