*** tpb has joined #tp | 00:00 | |
*** ChanServ sets mode: +o tpb | 00:00 | |
Greywhind | tansell: ping? | 00:04 |
---|---|---|
*** bddebian has quit IRC | 00:07 | |
cherez | I fear he has abandoned us! | 00:12 |
Greywhind | i prefer the term "left temporarily due to other duties" | 00:18 |
llnz | bbl | 00:30 |
*** llnz has quit IRC | 00:30 | |
*** tansell-laptop has joined #tp | 00:38 | |
tansell-laptop | Greywhind, ping? | 00:39 |
tansell-laptop | Greywhind, sorry I'm late - I got caught up with a previous meeting | 00:39 |
Greywhind | tansell-laptop: no worries | 00:40 |
Greywhind | just wondering about two things | 00:40 |
Greywhind | first, do you have any idea where I should be looking to try to resolve this error: | 00:41 |
Greywhind | http://pastebin.com/d428a7aee | 00:41 |
tpb | Title: pastebin - collaborative debugging tool (at pastebin.com) | 00:41 |
Greywhind | seems to happen when an order completes itself | 00:41 |
cherez | mithro: Ping? | 00:55 |
tansell-laptop | in the ChangeDict code and the StateTracker | 00:58 |
*** Greywhind has quit IRC | 00:58 | |
*** Greywhind has joined #tp | 01:06 | |
tansell-laptop | Greywhind, ping? | 01:35 |
Greywhind | tansell-laptop: pong | 01:39 |
tansell-laptop | Greywhind, so | 01:39 |
*** llnz has joined #tp | 01:39 | |
tansell-laptop | we where are we at? | 01:39 |
Greywhind | tansell-laptop: did you get my question about the error? | 01:40 |
Greywhind | tansell-laptop: http://pastebin.com/d428a7aee | 01:40 |
tpb | Title: pastebin - collaborative debugging tool (at pastebin.com) | 01:40 |
tansell-laptop | <tansell-laptop> in the ChangeDict code and the StateTracker | 01:40 |
*** llnz has quit IRC | 01:44 | |
cherez | tansell-laptop: http://thousandparsec.net/~cherez/html/ | 01:45 |
tpb | Title: Coverage report (at thousandparsec.net) | 01:45 |
tansell-laptop | cherez, that is looking very impressive | 01:47 |
*** llnz has joined #tp | 01:47 | |
cherez | tansell-laptop: Are the ifs at 386 or 398 important? | 01:50 |
tansell-laptop | cherez, file? | 01:50 |
cherez | Oops. xstruct.py | 01:50 |
cherez | 386 is dead code, that looks like it tries to identify when the time is incompatible with datetime and avoid throwing an exception. | 01:51 |
cherez | 397 lets you convert floats to times, but pack doesn't allow that. | 01:52 |
cherez | So neither should ever be called without internal changes. | 01:54 |
*** llnz has quit IRC | 02:06 | |
*** llnz has joined #tp | 02:12 | |
CIA-46 | llnz tpserver-cpp-multiqueue * r87a425924dc1 /modules/games/minisec/ (minisec.cpp planet.cpp): | 02:15 |
CIA-46 | Added second orderqueue to Planets in minisec for TP04 testing. | 02:15 |
CIA-46 | This branch is NOT to be merged into the master branch | 02:15 |
llnz | Greywhind: there is now the multiqueue branch in tpserver-cpp | 02:16 |
Greywhind | llnz: awesome, thanks | 02:17 |
*** llnz2 has joined #tp | 02:25 | |
Greywhind | tansell-laptop: i've posted today's summary, along with my weekly update | 02:29 |
CIA-46 | joelboh tpclient-pyweb * r6a64182ba136 /frontend/ (index.html scripts/map.js): | 02:36 |
CIA-46 | Frontend: Make sure that the login ui is on top. Transparency is now | 02:36 |
CIA-46 | working in all browsers. | 02:36 |
*** llnz has quit IRC | 02:40 | |
*** greenlion has joined #tp | 02:46 | |
tansell | Greywhind, hey | 02:52 |
tansell | Greywhind, sorry about today | 02:52 |
tansell | it's been really hectic at work | 02:52 |
tansell | cherez, same | 02:52 |
cherez | No worries. | 02:52 |
tansell | cherez, if you can confirm it's dead code, get rid of it | 02:52 |
Greywhind | tansell: no worries | 02:53 |
tansell | we have RCS so we can always get it back :) | 02:53 |
tansell | so any CL's you want me to review? | 02:53 |
tansell | cherez, did you send the tabs/spaces patch upstream? | 02:53 |
tansell | cherez, how close is ListProxy to a normal list? | 02:54 |
cherez | tansell: I sent the fix to the coverage.py guy, not sure when it will be added. | 02:55 |
tansell | cherez, does he support templates? | 02:56 |
tansell | it would be nice to mark files which have greater then 95% coverage in green | 02:56 |
cherez | Not the way it's written now. | 02:56 |
tansell | thoughs above 70% in yellow and the rest in red | 02:57 |
cherez | Ooh, that would be nice. | 02:57 |
cherez | I'll implement that in my local copy some time. | 02:57 |
cherez | list has a lot of functions.... | 02:57 |
cherez | 24 more functions to implement. | 03:00 |
cherez | Well, time to get to work. | 03:00 |
*** llnz2 is now known as llnz | 03:01 | |
*** Greywhind has quit IRC | 03:17 | |
CIA-46 | landon tpclient-pyogre * rf53e9bb78fd4 /src/battleviewer.py: Added the {Battle,Round}Manager classes to keep track of battle progression | 03:18 |
CIA-46 | landon tpclient-pyogre * ra1dbcc644852 /src/battleviewer.py: Replaced TestBattle with BattleManager, started fleshing out the RoundManager. All cosmetic changes so far. | 03:18 |
CIA-46 | landon tpclient-pyogre * r314cf1e97270 /src/battleviewer.py: Started moving some of the general battle details (round/side info) away from BattleScene to BattleManager | 03:18 |
*** nash has quit IRC | 03:23 | |
CIA-46 | joelboh tpclient-pyweb * r5610f0699e5a / (3 files in 2 dirs): | 03:29 |
CIA-46 | Added exception middleware to easier find errors. Also created a config | 03:29 |
CIA-46 | module. | 03:29 |
CIA-46 | landon tpclient-pyogre * r002d106763f0 /src/battleviewer.py: Now using RoundManagers instead of a straight BattleScene. RoundManagers are also created for each round now. | 03:49 |
* Landon bed now | 03:49 | |
*** jmtan has quit IRC | 05:13 | |
* llnz wanders off | 08:03 | |
llnz | later all | 08:03 |
*** llnz has quit IRC | 08:03 | |
*** jmtan has joined #tp | 09:55 | |
*** bddebian has joined #tp | 10:00 | |
bddebian | Heya | 10:03 |
*** tansell-laptop has quit IRC | 11:30 | |
*** alanp_ has joined #tp | 11:39 | |
*** Noughmad has joined #tp | 11:56 | |
*** Noughmad has quit IRC | 12:29 | |
*** DTRemenak has quit IRC | 12:59 | |
*** DTRemenak has joined #tp | 13:06 | |
*** tuna-fish has quit IRC | 13:47 | |
*** jmtan has quit IRC | 13:55 | |
*** JLP_ has joined #tp | 13:56 | |
*** JLP has quit IRC | 13:56 | |
alanp_ | ping | 15:17 |
alanp_ | having problems | 15:17 |
ezod | alanp_: specify? | 15:18 |
alanp_ | moved components to xml import, erroring out on connection now :( | 15:18 |
ezod | any luck isolating the problem yet? | 15:19 |
alanp_ | it's erroring out in tpguile.cpp | 15:19 |
alanp_ | i think i have it, will advise | 15:41 |
*** alanp_ has quit IRC | 15:59 | |
*** JLP_ has quit IRC | 16:12 | |
*** JLP has joined #tp | 16:13 | |
*** greenlion has quit IRC | 16:33 | |
*** greenlion has joined #tp | 16:34 | |
CIA-46 | joelboh tpclient-pyweb * r94481e8ee53d /frontend/ (images/loading.gif index.html scripts/map.js): Disable login button when clicked and added a loading animation. | 17:16 |
*** llnz has joined #tp | 17:21 | |
epyon | hmm bug? | 17:21 |
epyon | BoardManager::addMessage always returns true | 17:21 |
llnz | it shouldn't | 17:23 |
llnz | if it's not able to save the message, then it will return false | 17:23 |
llnz | if the persistence is not able to, that is | 17:23 |
*** greenlion has quit IRC | 17:28 | |
*** bddebian has quit IRC | 17:39 | |
epyon | okay, now it will | 17:48 |
epyon | btw, is there a big "no!" to exceptions? | 17:54 |
CIA-46 | epyon tpserver-cpp-refactor * r893810d5ccc0 /tpserver/ (boardmanager.cpp boardmanager.h): | 17:57 |
CIA-46 | Basic doxyfication and corrections on BoardManager | 17:57 |
CIA-46 | * doxymentation for the header file | 17:57 |
CIA-46 | * style fixups | 17:57 |
CIA-46 | * removal of unused code | 17:57 |
CIA-46 | * simplification | 17:57 |
CIA-46 | * fixed boolean results of addMessage and removeMessage | 17:57 |
CIA-46 | epyon tpserver-cpp-refactor * re7e222e1b9c6 /tpserver/boardmanager.cpp: | 18:15 |
CIA-46 | BoardManager optimizations | 18:15 |
CIA-46 | * removed the unneccessary temporary stored id list from get/add/remove message | 18:15 |
CIA-46 | * getMessage simplified | 18:15 |
*** jnengland77 has joined #tp | 18:28 | |
*** jnengland77 has left #tp | 18:28 | |
*** Greywhind has joined #tp | 18:55 | |
CIA-46 | epyon tpserver-cpp-refactor * rbb7d532ddbde /tpserver/ (boardmanager.cpp boardmanager.h player.cpp): | 18:56 |
CIA-46 | postToBoard for BoardManager | 18:56 |
CIA-46 | * added postToBoard to BoardManager | 18:56 |
CIA-46 | * made Player use the new function instead of requesting a board | 18:56 |
Greywhind | llnz: ping? | 19:10 |
llnz | Greywhind: pong | 19:10 |
Greywhind | llnz: when i try to build the new branch for multiple queues: | 19:10 |
Greywhind | CXX mapimport.o | 19:10 |
Greywhind | make[4]: *** No rule to make target `tinystr.cpp', needed by `tinystr.lo'. Stop. | 19:10 |
Greywhind | make[3]: *** [all-recursive] Error 1 | 19:10 |
llnz | i may have to go shortly to talk to the cops (work broken into this morning) | 19:10 |
Greywhind | woah | 19:10 |
epyon | Greywhind: did you try make clean then autogen and configure? | 19:20 |
epyon | seems as your Makefiles are out of date | 19:20 |
llnz | Greywhind: you need to run autogen.sh and configure again | 19:21 |
Greywhind | hm. i definitely did configure. i might not have rememberd to do autogen first though | 19:21 |
epyon | configure is not enough | 19:21 |
epyon | make clean, then autogen | 19:22 |
epyon | the configue | 19:22 |
Greywhind | yeah, seems to have fixed it. sorry. | 19:22 |
epyon | :) | 19:22 |
*** nash has joined #tp | 19:25 | |
* epyon is just blowing up the Board system | 19:26 | |
Greywhind | well, now i'm getting a segfault whenever i try to start the server running minisec | 19:28 |
Greywhind | http://pastebin.com/d4a53f34f | 19:29 |
tpb | Title: pastebin - collaborative debugging tool (at pastebin.com) | 19:29 |
epyon | llnz, still around? | 19:39 |
epyon | I think I found a potential segfault | 19:39 |
llnz | i'm here | 19:41 |
epyon | take a look at BoardManager::removeMessage | 19:41 |
epyon | if msg retrieved from message cache is NULL, we do a retrieve from persistence, and then.... delete it... and leave a pointer dangling... | 19:42 |
llnz | ah, true | 19:43 |
Greywhind | llnz: any idea on my segfault? | 19:44 |
llnz | Greywhind: looking now | 19:44 |
epyon | llnz, on refactor it will be corrected | 19:44 |
llnz | Greywhind: odd | 19:47 |
llnz | Greywhind: there is a line of code missing in the setup of the orderqueue parameter | 19:49 |
llnz | in creating the planets | 19:49 |
llnz | in particular from mars onwards | 19:50 |
llnz | i will fix it when i get a chance | 19:51 |
Greywhind | llnz: i think i see it | 19:54 |
llnz | it's missing "oqop->setQueueId(planetoq->getQueueId());" before the setDefaultOrderTypes | 19:55 |
llnz | mars, acprime, s1 all missing it | 19:56 |
*** bddebian has joined #tp | 20:12 | |
Greywhind | llnz: http://pastebin.com/d10c0b85 | 20:19 |
tpb | Title: pastebin - collaborative debugging tool (at pastebin.com) | 20:19 |
tansell | morning | 20:21 |
tansell | epyon, I would prefer exceptions | 20:23 |
epyon | tansell: thank goodness! :D | 20:26 |
epyon | I'd like to add it to my timeline then :) | 20:26 |
* epyon is currently adding "here should be an error" comments in the code... | 20:27 | |
tansell | epyon, I don't develop the server however :P | 20:34 |
tansell | I would prefer better error handling for sure :) | 20:40 |
Greywhind | llnz: so it seems that the property it's trying to get is 'Order Queue', but the only one that exists is 'Order Queue 2' | 20:41 |
Greywhind | Orders | 20:41 |
Greywhind | [Order Queue 2: [queueid(I): 0, numorders(I): 0, ordertypes([I]): []]] | 20:41 |
Greywhind | Order Queue | 20:41 |
Greywhind | Order Queue | 20:41 |
Greywhind | [<ObjectParamOrderQueue 0xa3cab0c Order Queue 2>] | 20:41 |
Greywhind | so somewhere, it's not getting added, it's replacing the old one, i think | 20:42 |
llnz | Greywhind: the parameters could be called anything, so look up by type | 20:42 |
Greywhind | well, it's getting "order queue" from inside the object's property list, it's not hard coded | 20:42 |
tansell | llnz, it's invalid to have two parameters of the same name on an object | 20:42 |
Greywhind | Orders | 20:43 |
Greywhind | [Order Queue 2: [queueid(I): 0, numorders(I): 0, ordertypes([I]): []]] | 20:43 |
Greywhind | Order Queue | 20:43 |
Greywhind | Order Queue | 20:43 |
Greywhind | [<ObjectParamOrderQueue 0xa3cab0c Order Queue 2>] | 20:43 |
Greywhind | err | 20:43 |
Greywhind | from tp.netlib.objects.parameters import ObjectParamOrderQueue | 20:43 |
Greywhind | for group in object.properties: | 20:43 |
Greywhind | for property in group.structures: | 20:43 |
Greywhind | if not isinstance(property, ObjectParamOrderQueue): | 20:43 |
Greywhind | continue | 20:43 |
Greywhind | print group.name | 20:43 |
Greywhind | print getattr(object, group.name) | 20:43 |
Greywhind | print property.name | 20:43 |
Greywhind | property.name is "order queue" | 20:43 |
Greywhind | but there's no property of that name | 20:43 |
llnz | tansell: they are not the same name | 20:43 |
Greywhind | this is the line that fails: value = getattr(getattr(object, group.name), property.name) | 20:45 |
CIA-46 | epyon tpserver-cpp-refactor * r6e4ae58b46a2 / (5 files in 2 dirs): (log message trimmed) | 20:49 |
CIA-46 | Board system refactoring | 20:49 |
CIA-46 | * main change -- moved id list of messages on board to Board class | 20:49 |
CIA-46 | * removed setBoardID from Board, to dangerous | 20:49 |
CIA-46 | * instead added ID to constructor, and blocked default constructor | 20:49 |
CIA-46 | * add/remove/get message in BoardManager only operate on messagecache | 20:49 |
CIA-46 | * add/remove/get message in Board and BoardManager cleaned up | 20:49 |
epyon | duh, trimming commit messages sucks ^^ | 20:50 |
llnz | epyon: the email has it all | 20:50 |
llnz | except it put it all in the subject line | 20:55 |
Greywhind | llnz: so... any idea why it would have the "Order Queue" property in the structures, but not in the group's attributes? | 20:57 |
llnz | don't know, maybe it used tp03 | 21:00 |
Greywhind | 2009-06-11 17:40:48 < Info > Client has version 4 of protocol | 21:01 |
Greywhind | maybe the Order Queue 2 attribute is somehow replacing the Order Queue attribute, rather than being added on? | 21:02 |
llnz | i have no idea how the internals of libtpproto-py/libtpclient-py work | 21:02 |
llnz | ask mithro instead | 21:04 |
Greywhind | well, it's odd, because that code seems to work for all the other objects i've downloaded from tpservers | 21:05 |
Greywhind | mithro: ping? | 21:05 |
CIA-46 | epyon tpserver-cpp-refactor * r1e11ae226065 / (5 files in 2 dirs): | 21:05 |
CIA-46 | Board refactoring cont'd | 21:05 |
CIA-46 | * made constructor take name and desc, removed the setters | 21:05 |
CIA-46 | * moved persistence-related (dangerous) setters to one clearly named function | 21:05 |
Greywhind | aha. | 21:14 |
Greywhind | ---------- | 21:17 |
Greywhind | group: <GroupStructure 0xa4bb88c Orders> | 21:17 |
Greywhind | ------------------- | 21:17 |
Greywhind | group.structures: [<ObjectParamOrderQueue 0xa4bb8ac Order Queue>] | 21:17 |
Greywhind | property: <ObjectParamOrderQueue 0xa4bb8ac Order Queue> | 21:17 |
Greywhind | property.name: Order Queue | 21:17 |
Greywhind | getattr(object, group.name: [Order Queue 2: [queueid(I): 0, numorders(I): 0, ordertypes([I]): []]] | 21:17 |
CIA-46 | epyon tpserver-cpp-refactor * rc690996cb4b2 /tpserver/ (board.cpp board.h): | 21:18 |
CIA-46 | Board refactoring, cont'd | 21:18 |
CIA-46 | * moved all retrieveMessageList into one common private function | 21:18 |
Greywhind | tansell: ping? | 21:19 |
llnz | epyon: cool | 21:27 |
epyon | Okay, Boards are now more or less consistent and safer. | 21:28 |
llnz | that sort of thing was added in much latter than the orginal coding, not very cleanly done | 21:28 |
epyon | Also a blog post done, time to go to sleep :) | 21:28 |
llnz | cya | 21:29 |
epyon | g'night! ^_^ | 21:30 |
tansell | Greywhind, pong - but heading to lunch now | 22:09 |
tansell | epyon, you want to put a new line between your subject and your extra comments | 22:10 |
Greywhind | tansell: let me know when you get back | 22:21 |
*** Erroneous has quit IRC | 22:26 | |
tansell | back | 22:46 |
Greywhind | tansell: do you have any idea what might be causing the error i pasted about earlier? | 22:46 |
tansell | which part? | 22:47 |
Greywhind | tansell: http://pastebin.com/d10c0b85 | 22:47 |
tpb | Title: pastebin - collaborative debugging tool (at pastebin.com) | 22:47 |
Greywhind | it seems like object.properties has a property called Order Queue, but getattr() is only seeing Order Queue 2 | 22:48 |
tansell | can you print out the following | 22:49 |
tansell | gettattr(object, group.name) | 22:49 |
tansell | and | 22:49 |
tansell | property.name | 22:49 |
Greywhind | [18:17] Greywhind : group: <GroupStructure 0xa4bb88c Orders> | 22:50 |
Greywhind | [18:17] Greywhind : ------------------- | 22:50 |
Greywhind | [18:17] Greywhind : group.structures: [<ObjectParamOrderQueue 0xa4bb8ac Order Queue>] | 22:50 |
Greywhind | [18:17] Greywhind : property: <ObjectParamOrderQueue 0xa4bb8ac Order Queue> | 22:50 |
Greywhind | [18:17] Greywhind : property.name: Order Queue | 22:50 |
Greywhind | [18:17] Greywhind : getattr(object, group.name: [Order Queue 2: [queueid(I): 0, numorders(I): | 22:50 |
tansell | what is getattr(object, group.name) ? | 22:55 |
tansell | are the groups name the same? | 23:04 |
tansell | or are they both in the same group? | 23:04 |
Greywhind | tansell: getattr(object, group.name) is [Order Queue 2: [queueid(I): 0, numorders(I) | 23:09 |
Greywhind | 0, ordertypes([I]): []]] | 23:09 |
tansell | what about the other order queue? | 23:09 |
Greywhind | there is none | 23:10 |
Greywhind | supposedly | 23:10 |
Greywhind | or at least it doesn't show up | 23:10 |
tansell | Greywhind, maybe it's time to write a pretty printer for objects which prints all the attributes? | 23:11 |
Greywhind | tansell: maybe a good idea at some point | 23:11 |
tansell | Greywhind, your suppose to have two order queues right? | 23:11 |
Greywhind | tansell: yep | 23:12 |
tansell | the only thing I can guess is that you have multiple things with the same name | 23:12 |
Greywhind | tansell: it seems like the ObjectParamOrderQueue "Order Queue" exists, but it's not in getattr(object, "Orders") | 23:12 |
Greywhind | which makes no sense | 23:13 |
Greywhind | especially since this code has worked for all the other attributes we've ever encountered | 23:13 |
Greywhind | but it is in object.properties | 23:13 |
Greywhind | and in the "Order" property gruop's structures | 23:14 |
tansell | Greywhind, can you just wrap it in a try/except so you can pring group.structures and property/property.name | 23:14 |
cherez | tansell: I think ListProxy has all of list's functionality now. | 23:14 |
Greywhind | tansell: but i already printed group.structures and property.name | 23:14 |
Greywhind | group.structures: [<ObjectParamOrderQueue 0xa4bb8ac Order Queue>] | 23:15 |
Greywhind | property.name: Order Queue | 23:15 |
Greywhind | property: property: <ObjectParamOrderQueue 0xa4bb8ac Order Queue> | 23:15 |
tansell | so how do you know it's in object.properties? | 23:15 |
Greywhind | because object.properties is where group comes from | 23:16 |
Greywhind | for group in object.properties: | 23:16 |
Greywhind | for property in group.structures: | 23:16 |
Greywhind | but getattr(object, group.name) only has Order Queue 2 | 23:16 |
Greywhind | where is all this constructed? | 23:17 |
tansell | OrderDesc.py | 23:17 |
tansell | oh sorry | 23:17 |
tansell | ObjectDesc.py | 23:18 |
tansell | line 261 | 23:22 |
Greywhind | Groupname: Orders | 23:22 |
Greywhind | name: Order Queue | 23:22 |
Greywhind | property.name: Orders | 23:22 |
Greywhind | Groupname: Orders | 23:22 |
Greywhind | name: Order Queue 2 | 23:22 |
Greywhind | property.name: Orders | 23:22 |
Greywhind | i think it's overwriting the Orders attr. with Order Queue 2 instead of adding to it | 23:22 |
tansell | umm | 23:23 |
tansell | so there are two groups | 23:23 |
tansell | both with the same name? | 23:23 |
Greywhind | sounds like that might be the case | 23:24 |
cherez | Jeeze, Python is... weird with slicing. | 23:31 |
*** tansell-laptop has joined #tp | 23:35 | |
Greywhind | tansell: so is this a server-side problem? | 23:45 |
Greywhind | that it's giving two groups named orders, rather than two queues inside the same group? | 23:45 |
*** zzorn has quit IRC | 23:46 | |
Greywhind | llnz: ping? | 23:48 |
*** zzorn has joined #tp | 23:51 | |
*** greenlion has joined #tp | 23:58 |
Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!