| 00:15 | batok | |
| 00:19 | richkazin | #pylons |
| 00:27 | mattikus | |
| 00:31 | cedric303 | #pylons |
| 00:32 | MarkB1 | #pylons |
| 00:33 | jmesquita | |
| jmesquita | #pylons | |
| 00:39 | Ergo^ | |
| 00:44 | THC4k | #pylons |
| 00:48 | Saizan | |
| 00:52 | MarkB1 | |
| 00:55 | elpargo | |
| 00:56 | zzzeek | #pylons |
| 01:01 | elpargo | #pylons |
| 01:01 | eomh | #pylons |
| 01:12 | fxhp | |
| 01:15 | abchirk | |
| 01:36 | mopemope | #pylons |
| 01:38 | dialtone | |
| 01:39 | cedric303 | |
| 01:45 | mopemope_ | #pylons |
| mopemope_ | ||
| 01:46 | THC4k | |
| 01:47 | mopemope | |
| 01:52 | emanuel | |
| 01:53 | zvart | |
| 01:57 | wendall911 | |
| 02:11 | richkazin | |
| 02:23 | richkazin | #pylons |
| 02:35 | dialtone | #pylons |
| 02:40 | whuuu | |
| 02:41 | w0lfy | #pylons |
| 02:41 | elpargo | |
| 02:42 | dialtone | |
| 02:49 | tholo | #pylons |
| 03:07 | justsomedood | |
| justsomedood | #pylons | |
| 03:09 | inklesspen | |
| 03:13 | osmosis | |
| 03:18 | kmcb_ | #pylons |
| 03:19 | kmcb | |
| 03:19 | kmcb_ | kmcb |
| 03:30 | ignas | |
| 03:30 | inklesspen | #pylons |
| 03:37 | dagnachew | #pylons |
| 03:39 | inklesspen | |
| 03:44 | richkazin | |
| 03:45 | richkazin | #pylons |
| 03:45 | NoPyGod | #pylons |
| 03:46 | richkazin | |
| richkazin | #pylons | |
| 03:47 | dialtone | #pylons |
| dialtone | ||
| dialtone | #pylons | |
| 03:47 | greg8si | #pylons |
| 03:51 | inklesspen | #pylons |
| 03:55 | mopemope | #pylons |
| 04:16 | nosklo | |
| 04:22 | dagnachew | |
| 04:31 | mopemope | |
| 04:32 | elpargo | #pylons |
| 04:35 | mopemope | #pylons |
| 04:45 | Matjong | #pylons |
| 05:18 | fairwinds | |
| 05:19 | _diana_ | |
| 05:20 | _diana_ | #pylons |
| 05:26 | zzzeek | |
| 05:34 | marianom | |
| 05:38 | emanuel | #pylons |
| 06:17 | masted | |
| 06:19 | mopemope | |
| 06:28 | mengu | #pylons |
| 06:28 | masted | #pylons |
| 06:33 | Matjong | |
| 06:35 | Matjong | #pylons |
| 06:40 | emanuel | |
| 06:41 | mopemope | #pylons |
| 06:41 | slango | #pylons |
| 06:44 | mopemope_ | #pylons |
| 06:46 | mopemope | |
| 06:49 | kanru | |
| 06:53 | mopemope | #pylons |
| 06:55 | drtjr | |
| 06:55 | brandini | |
| 06:56 | mopemope_ | |
| 06:58 | emanuel | #pylons |
| 07:02 | emanuel1 | #pylons |
| 07:04 | jmesquita | |
| 07:04 | emanuel2 | #pylons |
| 07:06 | emanuel | |
| 07:06 | emanuel1 | |
| 07:07 | brandini | #pylons |
| 07:08 | kanru | #pylons |
| 07:11 | btami | #pylons |
| 07:18 | D-vo | |
| 07:23 | emanuel2 | |
| 07:28 | richkazin | |
| 07:30 | atomekk | #pylons |
| 07:36 | percious | #pylons |
| 07:37 | percious | |
| 07:38 | mopemope_ | #pylons |
| 07:39 | mopemope | |
| 07:40 | emanuel | #pylons |
| 07:42 | greg8si | |
| 07:45 | mopemope | #pylons |
| 07:48 | mopemope_ | |
| 07:53 | THC4k | #pylons |
| 08:06 | Matjong1 | #pylons |
| 08:07 | sharoon | #pylons |
| 08:09 | Matjong | |
| 08:15 | rawler_ | #pylons |
| 08:17 | rawler_ | heya.. I've got a problem with TemplateLookups in Mako.. :S |
| 08:17 | inklesspen | ok |
| 08:18 | rawler_ | I <%include file="ibsdata.inc"/> from my template, but I immediately get an error message "Cant locate template for uri", and then the complete filesystem-path to the template I requested.. (which exists and is readable) |
| 08:18 | Saizan | #pylons |
| 08:18 | rawler_ | any tips of where to look to resolve this? |
| 08:19 | rawler_ | it works nicely if I put the included file in the root, and <%include file="/ibsdata.inc"/> |
| 08:20 | inklesspen | no idea, but maybe someone else will |
| 08:20 | mindlace | #pylons |
| 08:21 | rawler_ | I'm using Mako directly in this case.. (using it to render XML which is later transformed to HTML, and rendered in the Pylons-Mako) |
| could it be a problem with using Template() directly to load the "inital template" ? | ||
| 08:21 | inklesspen | yes |
| yes, I think so | ||
| 08:22 | rawler_ | so, I should basically setup the TemplateLookup, and make sure to only load pages through it? |
| 08:22 | inklesspen | can you pastebin your code please? |
| 08:23 | rawler_ | http://pastebin.com/MDJRvkgd |
| 08:24 | rawler_ | basically that.. |
| but, I can try rewriting into just using the TemplateLookup, I think.. | ||
| 08:24 | inklesspen | okay, you're using the lookup keyword argument. that's good. |
| 08:25 | inklesspen | I want you to also add the uri keyword argument. |
| 08:25 | emanuel | |
| 08:25 | inklesspen | where uri is the path you _would_ use if you used the TemplateLookup |
| 08:26 | inklesspen | it may be simpler to just use the TemplateLookup |
| 08:27 | rawler_ | yeah, but let's try this first.. maybe I'll gain some better understanding how it _really_ works in the process.. :) |
| it worked.. | ||
| _very_ strange, since it obviously managed to do the resolve right without it.. :S | ||
| 08:27 | inklesspen | heh |
| look at http://www.makotemplates.org/trac/browser/mako/trunk/mako/lookup.py | ||
| 08:28 | inklesspen | particularly get_template on line 100 and _load on line 149 |
| the uri is necessary for the Template to know where it is. | ||
| which is necessary for that relative path | ||
| 08:29 | rawler_ | yes, I understand that.. but as I said, somehow it still managed to resolve the right file without it, just failed to load it.. |
| 08:29 | inklesspen | yes |
| 08:29 | rawler_ | in any case, re-writing to complete Template-lookup.. much better solution anyways.. :) |
| 08:30 | rawler_ | I.E. template-caching could be a good thing.. :) |
| 08:31 | inklesspen | yeah |
| 08:31 | Saizan | |
| 08:32 | Saizan | #pylons |
| 08:32 | mopemope | |
| mopemope | #pylons | |
| 08:33 | rawler_ | there.. much shorter, probably faster, and above all, works.. :) |
| inklesspen, thanks for your help.. :) | ||
| 08:34 | inklesspen | glad to be of service |
| 08:37 | Matjong | #pylons |
| 08:39 | Matjong1 | |
| 08:41 | Matjong1 | #pylons |
| 08:42 | Matjong | |
| 08:49 | knoba | |
| knoba | #pylons | |
| 08:51 | bbinet | #pylons |
| 08:58 | rawler_ | |
| 09:07 | Shyde | #pylons |
| 09:13 | mopemope_ | #pylons |
| 09:15 | mopemope | |
| 09:29 | mindlace | |
| 09:29 | Matjong | #pylons |
| 09:29 | liato | |
| 09:31 | eomh_ | #pylons |
| 09:31 | knoba | |
| 09:31 | knoba` | #pylons |
| 09:32 | Matjong1 | |
| 09:33 | eomh | |
| 09:40 | jarrod_007 | #pylons |
| 09:41 | loxs | #pylons |
| 09:42 | Matjong | |
| 09:43 | Matjong | #pylons |
| 09:46 | loxs | |
| 09:49 | liato | #pylons |
| 09:51 | knoba` | |
| 09:51 | knoba | #pylons |
| 09:52 | apoirier | #pylons |
| 09:55 | thepix | #pylons |
| 10:00 | mopemope_ | |
| 10:00 | mopemope | #pylons |
| 10:01 | mopemope | |
| 10:14 | mindlace | #pylons |
| 10:23 | abchirk | #pylons |
| 10:37 | Shyde | |
| 10:40 | Matjong | |
| 10:43 | Matjong | #pylons |
| 10:44 | Matjong | |
| Matjong | #pylons | |
| 10:48 | andref_dias | #pylons |
| 10:56 | jarrod_007 | |
| 11:01 | nosklo | #pylons |
| 11:02 | NoPyGod2 | #pylons |
| 11:05 | NoPyGod | |
| 11:10 | sharoon | |
| 11:15 | btami | |
| 11:19 | maxpn | #pylons |
| 11:27 | abchirk | |
| 11:33 | kanru | |
| 11:33 | masted | |
| 11:34 | Matjong | |
| 11:36 | ignas | #pylons |
| 11:47 | maxpn | |
| 11:52 | NoPyGod2 | |
| 11:55 | marianom | #pylons |
| 12:09 | relo_san | |
| 12:12 | kmcb | #pylons |
| 12:15 | OramahMaalhur | #pylons |
| 12:17 | asabil | #pylons |
| 12:23 | fairwinds | #pylons |
| 12:26 | jarrod_007 | #pylons |
| 12:32 | abchirk | #pylons |
| 12:35 | diofeher | #pylons |
| 12:41 | abchirk | |
| 12:43 | adamhutton | #pylons |
| 12:54 | abchirk | #pylons |
| 12:54 | Matjong | #pylons |
| 13:01 | OramahMaalhur | |
| 13:02 | jarrod_007 | |
| 13:02 | OramahMaalhur | #pylons |
| 13:02 | btami | #pylons |
| 13:04 | diofeher | |
| 13:09 | jarrod_007 | #pylons |
| 13:09 | mreggen | |
| 13:09 | Matjong1 | #pylons |
| 13:10 | diofeher | #pylons |
| 13:11 | my_haz | |
| 13:13 | Matjong | |
| 13:20 | mengu | |
| 13:26 | MarkB1 | #pylons |
| 13:30 | MarkB1 | MarkB1_rsn |
| 13:41 | brandini | |
| brandini | #pylons | |
| 13:44 | D-vo | #pylons |
| 13:55 | jarrod_007 | |
| 13:56 | mindlace | |
| 13:58 | MarkB1_rsn | MarkB1 |
| 14:01 | jarrod_007 | #pylons |
| 14:01 | zenom_ | #pylons |
| 14:03 | relo_san | #pylons |
| 14:05 | OramahMaalhur | |
| 14:07 | zenom_ | |
| zenom_ | #pylons | |
| 14:08 | jeansch | #pylons |
| 14:13 | relo_san | |
| 14:14 | mvt | #pylons |
| 14:19 | _markb1_ | #pylons |
| 14:20 | redir | #pylons |
| 14:21 | wsantos | #pylons |
| 14:22 | vpol | #pylons |
| vpol | ||
| 14:23 | MarkB1 | |
| 14:24 | _markb1_ | #pylons |
| 14:43 | thepix | |
| 14:48 | superfly | |
| 14:49 | drubin | |
| 14:52 | zzzeek | #pylons |
| 14:53 | zzzeek | #pylons |
| 14:53 | superfly | #pylons |
| 14:56 | Matjong1 | |
| 14:57 | Matjong | #pylons |
| 14:57 | drubin | #pylons |
| 15:01 | sanjiv | #pylons |
| 15:12 | drtjr | #pylons |
| 15:17 | asabil | |
| 15:22 | diofeher | |
| 15:25 | Matjong | |
| 15:28 | relo_san | #pylons |
| 15:44 | [diecast] | anyone use mercurial/git/svn to push code into production? |
| 15:49 | relo_san | |
| 15:52 | Ergo^ | #pylons |
| 15:53 | brandini | [diecast]: I used to... but that's not really a good practice |
| 15:54 | relo_san | #pylons |
| 15:54 | [diecast] | why not? if you maintain a branch for production/qa and 'svn update /website' in a QA environment, then let it pass QA and push to production.. its an easy method to ensure the code has remained as you want |
| 15:58 | drtjr | |
| 16:03 | drtjr | #pylons |
| 16:03 | jarrod_007 | |
| 16:05 | magustenebrarum | #pylons |
| 16:06 | inklesspen | [diecast]: I know benbangert is fond of that method |
| 16:08 | redir | |
| 16:09 | Matjong | #pylons |
| 16:09 | atomekk | |
| 16:21 | brandini | [diecast]: the reason I really hate deploying code in that method is that you have all the source sitting right there for someone to change |
| at least with an egg you've got less chance of things like that happening | ||
| 16:22 | brandini | I can't tell you the number of "source" files we've got laying around that have been modified in production and break every time we promote code over top the change |
| 16:23 | btami | #pylons |
| 16:24 | Ergo^ | hmm.... zepolen is gone |
| maybe greece sold him to slavers for debts | ||
| 16:24 | [diecast] | code changes are inevitable at all stages, but the ability to roll back in a timely fashion is very valuable. especially with the ability to have accountability. |
| 16:24 | inklesspen | maybe he drank himself into death |
| 16:25 | dialtone | |
| 16:25 | Ergo^ | inklesspen, thats not possible |
| he is half pole, he is immune | ||
| like me | ||
| 16:25 | brandini | [diecast]: that's a broken model if you're editing production code |
| 16:25 | inklesspen | maybe if he's drinking vodka |
| 16:25 | [diecast] | only qa/staging |
| 16:25 | inklesspen | knowing him, he's drinking everclear |
| 16:25 | sophacles_work | #pylons |
| 16:26 | brandini | [diecast]: qa/staging should be based on the egg that goes into production |
| 16:32 | sanjiv_ | #pylons |
| 16:33 | sanjiv | |
| 16:42 | mvt | |
| 16:53 | Matjong1 | #pylons |
| 16:56 | Matjong | |
| 17:03 | richkazin | #pylons |
| 17:07 | emanuel | #pylons |
| 17:09 | bbinet | |
| 17:15 | drhodes | #pylons |
| 17:17 | ianbicking | #pylons |
| 17:18 | richkazin | |
| 17:25 | marianom | |
| 17:28 | zvart | #pylons |
| 17:29 | febb | hi all |
| 17:30 | febb | (m inklesspen Hi ... you are the guy of the Central Library demo screencast, right? |
| 17:40 | BlueSilver39 | #pylons |
| 17:41 | BlueSilver39 | : in mako the lookup = TemplateLookup(directories=['/templates'] is this relative to the path the file is in or the OS itself? |
| 17:43 | apoirier | #pylons |
| 17:53 | mreggen | #pylons |
| 17:54 | pluma | |
| 17:55 | febb | |
| 18:05 | mindlace | #pylons |
| 18:10 | dialtone | #pylons |
| 18:17 | nocale | #pylons |
| 18:20 | nosk1o | #pylons |
| 18:27 | mindlace | |
| 18:27 | tarek | #pylons |
| 18:27 | mindlace | #pylons |
| 18:27 | kmcb | #pylons |
| 18:36 | blaflamme | #pylons |
| 18:37 | D-vo | |
| 18:38 | justsomedood | FormAlchemy is pretty cool. That is all, carry on. |
| 18:40 | D-vo | #pylons |
| 18:41 | nocale | |
| nocale | #pylons | |
| 18:41 | jeansch | |
| 18:50 | mindlace | |
| 18:58 | brandini | justsomedood: sure is, I finally got it working like I want it to |
| 18:59 | brandini | just created a custom template to render an ExtJs grid for me for free :) |
| quite pleased! | ||
| 19:00 | relo_san | |
| 19:01 | redir | #pylons |
| 19:03 | relo_san | #pylons |
| 19:08 | andref_dias | |
| 19:15 | Matjong | #pylons |
| 19:18 | Matjong2 | #pylons |
| 19:18 | Matjong1 | |
| 19:19 | emanuel | |
| emanuel | #pylons | |
| 19:20 | Matjong | |
| 19:23 | mengu | #pylons |
| 19:28 | abchirk | |
| 19:36 | magustenebrarum | |
| 19:40 | magustenebrarum | #pylons |
| 19:41 | whuuuu | #pylons |
| 19:42 | nosk1o | |
| 19:43 | whuuu | #pylons |
| 19:43 | whuuuu | #pylons |
| 19:44 | nosk1o | #pylons |
| 19:49 | mindlace | #pylons |
| 19:49 | tarek | |
| 19:49 | whuuu | Hey, what could cause my uploads to be not completed? There are always only a few bytes missing at the end |
| 19:50 | [diecast] | how are you implementing upload |
| 19:53 | whuuu | [diecast]: http://pylonshq.com/pasties/afc4d81a147ec8170d4dcf25639c1091 |
| 19:54 | dialtone | |
| 19:55 | dialtone | #pylons |
| dialtone | ||
| dialtone | #pylons | |
| 19:56 | tarek | #pylons |
| 19:57 | whuuu | [diecast]: no exception is raised, the uploaded file is just too small.... |
| 20:02 | tarek | |
| 20:03 | tarek | #pylons |
| 20:10 | [diecast] | this is from an old site of mine that you are welcome to hack apart - http://codepad.org/zPTQW5QN |
| some of it may no longer be valid as it was pre-0.9.6 even | ||
| 20:11 | [diecast] | use of popen2 is not encouraged but maybe something in there will help you |
| 20:12 | whuuu | [diecast]: there is no real difference to my implementation |
| 20:12 | tarek | |
| 20:12 | whuuu | [diecast]: I just copied the code from the 0.9.7 docs |
| 20:14 | [diecast] | you're not closing permanent_file |
| 20:15 | whuuu | damn |
| 20:15 | [diecast] | and i dont use open |
| 20:15 | eomh_ | |
| 20:15 | whuuu | thanks |
| 20:15 | eomh | #pylons |
| 20:15 | whuuu | closing the file just did it |
| 20:15 | [diecast] | cool ;) |
| i really need to redo that site. its almost 3 years old now. hah | ||
| 20:16 | [diecast] | maybe when 1.0 is official |
| 20:18 | iElectric | |
| 20:18 | [diecast] | #pylons |
| 20:24 | tarek | #pylons |
| 20:29 | NoPyGod | #pylons |
| 20:30 | [diecast] | #pylons |
| 20:34 | slango | #pylons |
| 20:34 | NoPyGod | |
| 20:36 | emanuel | |
| 20:37 | nocale | |
| 20:58 | mengu | |
| 20:58 | tarek | |
| 21:00 | emanuel | #pylons |
| 21:03 | tamentis | |
| 21:04 | wsantos | |
| 21:05 | tamentis | #pylons |
| 21:06 | ianbicking | |
| ianbicking | #pylons | |
| 21:06 | febb | #pylons |
| 21:09 | x-ip | |
| 21:10 | justsomedood | does anybody use FormAlchemy and Session.mapper? |
| 21:11 | justsomedood | (with SQLAlchemy) |
| 21:13 | inklesspen | I use Session.mapper, but not FA |
| 21:15 | kmcb | |
| 21:21 | wisemanby | |
| 21:22 | tarek | #pylons |
| 21:27 | sanjiv_ | |
| 21:31 | adamhutton | |
| 21:40 | NottsMancs | #pylons |
| 21:52 | marianom | #pylons |
| 21:59 | Daishiman | #pylons |
| 22:03 | Daishiman | #pylons |
| 22:12 | Ergo^ | |
| 22:14 | atomekk | #pylons |
| 22:14 | tarek | |
| 22:15 | dagnachew | #pylons |
| 22:18 | taziden | |
| 22:19 | atomekk | |
| 22:31 | ianbicking | benbangert: I'm looking at that Routes example you gave http://pastebin.com/BscY527q |
| benbangert: the use of environ['wsgiorg.routing_args'] doesn't make sense to me | ||
| 22:35 | benbangert | yea, thats kind of lame |
| I agree | ||
| I just couldn't change it as it'd break backwards compat severly :( | ||
| the url generator uses that to pick out the current routing args | ||
| 22:36 | benbangert | well, I mean, I can fix it |
| its just not trivial, so I haven't yet | ||
| 22:36 | gregeh_ | #pylons |
| 22:37 | benbangert | ianbicking: 1.12.1 fixes an issue with using callables as route defaults, which I'm using in my own stripped down Pylons customization actually |
| in my little pared down app, I replaced PylonsApp entirely, and used a different BaseController that makes it more of a webob type app | ||
| 22:38 | benbangert | and no globals |
| 22:38 | ianbicking | benbangert: but isn't that first argument a URLGenerator object? It should be a tuple of positional arguments |
| 22:38 | benbangert | oh, that bit, yea, thats wrong I guess |
| you don't need to put the url object in there, nothing is going to use it | ||
| 22:39 | ianbicking | ok, it should probably be () |
| 22:39 | benbangert | yea |
| 22:39 | ianbicking | can Routes produce positional arguments? |
| 22:39 | benbangert | it only makes a dictionary |
| 22:39 | ianbicking | ok |
| benbangert: does it mean anything if match is empty? | ||
| 22:39 | benbangert | it means none of the routes matched |
| 22:39 | ianbicking | there's a test for that, but it doesn't make much sense to me either |
| 22:40 | ianbicking | oh, right |
| 22:41 | benbangert | I'm using the callable approach so I don't have to write import machinery |
| 22:41 | ianbicking | benbangert: ammended for webob, I think: http://pastebin.com/re5AHdVN |
| 22:41 | benbangert | ie, map.connect('home', '/', controller=MyController) |
| 22:41 | ianbicking | benbangert: like, you just do match.pop('view')(req, **match) ? |
| 22:41 | benbangert | yup |
| 22:42 | iElectric | #pylons |
| 22:42 | benbangert | I started with a Pylons app in this case, cause I retained the PylonsConfig stuff, since having it parse and setup the basic stuff based on the ini file was still handy |
| 22:42 | zepolen | #pylons |
| 22:43 | ianbicking | benbangert: can you give me commit to routes? I might document the pattern in there. |
| 22:43 | benbangert | sure |
| 22:46 | BlueSilver39 | #pylons |
| 22:46 | ianbicking | benbangert: are you pointing the connections to a class you are writing, or a method, or...? |
| 22:46 | zenom | |
| 22:46 | ianbicking | like, are you pointing directly at wsgi apps? |
| 22:47 | benbangert | I'm pointing at classes |
| class is instantiated with the webob object, then just called | ||
| 22:48 | benbangert | so the class pulls out the action itself |
| ianbicking: http://pastebin.com/vMtk6mcu | ||
| it means I have controller almost exactly like Pylons controllers still | ||
| they just have to fetch stuff off 'self' | ||
| oh, and they return webob response's | ||
| 22:49 | ianbicking | right |
| you could pass the url resolver in as an argument, instead of stuffing it in routing_args | ||
| (since that is not valid) | ||
| 22:49 | benbangert | as Pylons is substantially more flexible both in dispatch and in controller calling, this wipes out a lot of that flexibility for a much shorter call-stack |
| and also removes the globals | ||
| 22:50 | benbangert | and the RegistryMiddleware and RoutesMiddleware |
| ah, thats true | ||
| 22:50 | dagnachew | |
| 22:50 | ianbicking | or stuff it somewhere else, just not quite where you've put it ;) |
| 22:51 | benbangert | http://pastebin.com/FLBz1Y35 is my new WSGI app that replaced PylonsApp |
| I can trim that a little with the bit you point out about results of course :) | ||
| 22:57 | magustenebrarum | |
| 23:00 | ianbicking | benbangert: here's what I'm thinking: http://pastebin.com/yz6DPcGT |
| 23:01 | benbangert | ah, yea, thats a bit nicer |
| 23:02 | ianbicking | doesn't include sessions, though |
| 23:02 | redir | |
| 23:07 | gregeh_ | |
| 23:07 | iElectric | |
| 23:08 | benbangert | ianbicking: I just put the session middleware in front of it, and attached session to request |
| 23:08 | ianbicking | sure; it would require editing that code, at least |
| 23:09 | ianbicking | though I think it could also be done with a Request subclass |
| 23:09 | benbangert | instead of the middleware? |
| 23:09 | ianbicking | just the attribute |
| 23:09 | benbangert | or instead of attaching it to the request |
| ah | ||
| right | ||
| 23:09 | ianbicking | you'd still use the middleware |
| 23:10 | ianbicking | maybe putting the middleware around Application.__call__ ? Hm. |
| 23:10 | kanru | #pylons |
| 23:21 | gregeh_ | #pylons |
| 23:25 | sophacles_work | |
| 23:37 | nosk1o | |
| 23:38 | fxhp | #pylons |
| 23:39 | NoPyGod | #pylons |
| 23:39 | Chryson | #pylons |
| 23:48 | whuuu | |
| 23:50 | NottsMancs |




