Zara | morning, storyboard! | 09:03 |
---|---|---|
pedroalvarez | morning Zara! | 09:08 |
SotK | morning folks | 09:30 |
pedroalvarez | o/ | 09:57 |
Zara | hi! | 10:12 |
Zara | let's have a never-ending circle of 'good morning!'s | 10:13 |
faybrocklebank | morning | 10:28 |
Zara | morning! | 10:28 |
SotK | morning :) | 10:29 |
pedroalvarez | must | 10:30 |
pedroalvarez | resist | 10:30 |
Zara | morning, sotk, pedroalvarez! | 10:30 |
*** alexismonville has joined #storyboard | 11:42 | |
Zara | I've been going through stories to remove characters that sb can't handle yet, so that scripts work better (horrible hacky workaround, yes) | 12:07 |
Zara | no idea how to fix https://storyboard.openstack.org/#!/story/2000251 | 12:07 |
pedroalvarez | oh yes, I remember that issue | 12:13 |
Zara | got it, it didn't like the quotation marks | 12:13 |
Zara | it doesn't cope well with unicode characters yet | 12:14 |
pedroalvarez | last time nobody was pasting unicode directly IIRC | 12:14 |
pedroalvarez | it was terminal color codes (like "[38;5;198mHello World") | 12:16 |
Zara | yeah, I've had some like that, too. the last one was an apostrophe that was U+2019; that was fun to find... | 12:17 |
Zara | on the plus side, I'm learning the unicode character codes xD | 12:18 |
pedroalvarez | at some point we should filter unicode, or just support it | 12:18 |
Zara | yyyyup | 12:19 |
Zara | I've been doing this as a workaround since it's fairly quick and these are ancient stories | 12:20 |
Zara | but it isn't a proper solution | 12:20 |
Zara | up to 385/690 (the old lp stories are fine)... | 12:22 |
pedroalvarez | I'm so happy that one can't put <script> tags in comments :) | 12:25 |
Zara | hahaha | 12:26 |
Zara | yeah, that would get exciting | 12:26 |
pedroalvarez | i was just reading about things related to the problem, and found the suggestion of filtering html tags | 12:27 |
pedroalvarez | looks like our markdown parser does that already | 12:28 |
Zara | yeah, they display right in the browser, there just doesn't seem to be any builtin support for things like the python client. now worried it's just my script that should account for it. | 12:29 |
Zara | but then some things are slower in the browser, so... hm. | 12:29 |
Zara | also, hm, story ids seem to go up to 2000690, but stories around 2000630 aren't there | 12:33 |
Zara | ah, I think a few were just deleted rather than anything more dramatic | 12:33 |
pedroalvarez | I think that's because the import from LP script reused their id's? | 12:34 |
pedroalvarez | (or something like that) | 12:34 |
Zara | yeah, that's earlier, around the 980000 mark; this was just a story that had been deleted. | 12:36 |
Zara | so my panic is over :) | 12:36 |
*** ttx has quit IRC | 12:38 | |
Zara | okay, done. python clienty scripts will still error when stories aren't found but they shouldn't panic at apostrophes any more | 12:48 |
Zara | this workaround won't be practical in the future; it's only possible with relatively few stories. | 12:49 |
Zara | and where the characters removed or replaced aren't vital to understanding | 12:49 |
Zara | still confused about why it gives an ascii codec error for a story that isn't there. | 13:06 |
Zara | (981278, presumably) | 13:07 |
pedroalvarez | with the client? | 13:10 |
Zara | yeah | 13:10 |
pedroalvarez | probably the client is not handling the case where the story doesn't exist | 13:11 |
SotK | do we know its giving the error for one which isn't there and not just one with an unexpected id? | 13:11 |
Zara | I'm not sure what's going on. This is the last thing I get: http://paste.openstack.org/show/545118/ | 13:13 |
Zara | so it gets to the end of story 981277. in all other cases, when that happens, it's the next story which is the problem | 13:13 |
Zara | but it might not be, much mystery! | 13:14 |
SotK | looking at a dump of the production db, https://storyboard.openstack.org/?#!/story/986212 is the next story after 981277 | 13:14 |
Zara | aha, huh | 13:15 |
Zara | my other script hasn't got there yet | 13:15 |
Zara | (the one that's printing each exception as it goes xD) | 13:15 |
Zara | goodness: https://storyboard.openstack.org/#!/story/986212 | 13:16 |
pedroalvarez | lol | 13:17 |
Zara | well, I can go through and remove those interesting characters, for now; it's from 2012 so I doubt the world will end. | 13:17 |
pedroalvarez | they are 'space's I think | 13:18 |
pedroalvarez | like in the first comment | 13:18 |
Zara | (I also like that the python error wasn't 'I don't understand this character here', but 'I don't understand all this stuff from here to here') | 13:18 |
Zara | it gave up quickly | 13:18 |
SotK | the ids in my db dump are here: http://sprunge.us/ChJF | 13:19 |
Zara | ah, thanks | 13:19 |
SotK | (from after 981277) | 13:20 |
Zara | I just ran the script again and discovered it disliked the one after 1016567 | 13:20 |
Zara | *why* there is a story there, I can't tell you | 13:20 |
SotK | I assume these ids were imported from LP somehow | 13:20 |
Zara | ah, actually, probably because just infra ones? | 13:20 |
SotK | and yeah, they ended up all scattered because its only the infra bugs | 13:21 |
Zara | oh well, at least I have an excuse to use my cute little command line interface | 13:23 |
Zara | though I wish it could handle the 'up' arrow like the shell | 13:27 |
* Zara idly wonders who the bug in https://storyboard.openstack.org/#!/story/1184647 was assigned to | 13:33 | |
SotK | Ionuț Arțăriși from the look of things | 13:34 |
Zara | aha, just found it in lp | 13:35 |
Zara | cool, I found one that crashes my browser: https://storyboard.openstack.org/#!/story/1194807 | 13:48 |
*** sparkycollier has quit IRC | 14:03 | |
*** jamesmcarthur has quit IRC | 14:03 | |
*** jjardon has quit IRC | 14:04 | |
*** carl_baldwin has quit IRC | 14:04 | |
Zara | I'm only about halfway down this db dump ;_; | 14:04 |
*** zaro has quit IRC | 14:04 | |
*** betherly has quit IRC | 14:04 | |
Zara | https://storyboard.openstack.org/#!/story/1280545 hm, not the most functional link | 14:04 |
Zara | ('The module is available in PyPI: https://pypi.python.org/pypi/scp‎') | 14:07 |
Zara | we should really have proper unicode support pre-migration, or scripts will break | 14:08 |
persia | What sort of unicode support don't you have? | 14:09 |
persia | The last time I remember a discussion of unicode support, it was actually about not having ANSI support, where supporting ANSI in a web page doesn't make much sense, really. | 14:10 |
Zara | not completely sure; at the moment if you try to browse to storyboard/api/v1/stories, you can't, and given that storyboard.stories.get_all() fails at each place where there's a non-ascii character, I've assumed they're related. | 14:11 |
persia | Any sort of non-ascii? | 14:11 |
*** sparkycollier has joined #storyboard | 14:12 | |
persia | Or just multibyte? | 14:12 |
Zara | no idea. some unicode codes have come up, but I don't know if that's because of the python client (or even just the script I'm running) not converting things properly | 14:12 |
Zara | but not the hardest variable to eliminate while trying to be able to browse to api/v1/stories | 14:13 |
Zara | just the most boring | 14:13 |
persia | Oh, if you're using python to check the codes, that might be the problem. | 14:16 |
persia | I don't understand the details, but my high-level understanding is that python2 and python3 both handle unicode differently, with the default being "not at all". | 14:17 |
persia | So if you want to deal with things safely in python, be sure to tell python the encoding you're using, and that there may be multibyte characters, etc. | 14:17 |
Zara | I know nothing about python 3 but that matches my basic understanding of python 2 | 14:17 |
persia | The underlying data may be fine, and uncorrupted, but the client could be causing issues. | 14:18 |
*** zaro has joined #storyboard | 14:18 | |
Zara | well, things are also displaying strangely in the browser (though they are displaying) | 14:18 |
*** jamesmcarthur has joined #storyboard | 14:18 | |
*** betherly has joined #storyboard | 14:19 | |
*** ttx has joined #storyboard | 14:19 | |
*** jjardon has joined #storyboard | 14:19 | |
Zara | and then there are still stories like that one that crashes the browser | 14:19 |
persia | For the browser, Does the Content-type specify an encoding, or are you using OS-defaults? | 14:19 |
persia | If the former, it probably makes sense to be sure the code is trying to use that encoding. If the latter, everyone's browser will get different sorts of breakage, so you can't trust your local results. | 14:20 |
persia | http://validator.w3.org/i18n-checker/ can help check some of that, but I don't know how well it deals with javascript, etc. | 14:21 |
*** carl_baldwin has joined #storyboard | 14:21 | |
SotK | fwiw my db dump shows nonsense in my terminal too | 14:23 |
Zara | \o/ | 14:23 |
persia | Is the DB encoding the same as the terminal encoding? | 14:24 |
persia | Did the content go through an encoding-aware pipe at any point? | 14:25 |
SotK | the DB encoding and my terminal encoding both appear to be utf8 | 14:26 |
SotK | I don't think our API pays attention to encoding, so probably not | 14:27 |
persia | Oh well. That usually means the DB data is bad, for any of the various ways to put bad data in the DB (like the ANSI issue we encountered months ago). | 14:27 |
persia | If the API doesn't pay any attention to encoding, it probably incorrectly recodes everything (because python does that if one isn't explicit, if python thinks the content is text). | 14:28 |
persia | Hrm. Found a confusing UI bit: in https://storyboard.openstack.org/#!/story/2000012, was the last update to task 2032 or 2033? How would we tell? | 15:08 |
persia | Note that the actual answer to the question isn't important in this case, but I can imagine it being confusing for someone in the future. | 15:09 |
SotK | do `GET https://storyboard.openstack.org/api/v1/stories/2000012/events?sort_dir=asc&sort_field=id` and look at the "task_id" field in the event info of the latest event | 15:11 |
SotK | but yeah, we should probably display that | 15:11 |
persia | Part of me wants to constrain tasks so that one story can't have two tasks with the same description, but that's probably harder to impose, plus there are some use cases for which people may actually want to use the same names for things, despite my opinions. | 15:14 |
Zara | storyboard.stories.get_all() should now work. but brosing to api/v1/stories still fails :( | 15:35 |
Zara | *browsing | 15:35 |
Zara | but now at least I can script to find it | 15:40 |
Zara | well hello there, https://storyboard.openstack.org/#!/story/1285593 | 15:40 |
Zara | your time is at hand | 15:40 |
Zara | ooh, and another one | 15:42 |
Zara | so much quicker doing this with get_all() :) | 15:42 |
Zara | browsing to api/v1/stories now works :) | 15:47 |
Zara | though it'll take a while | 15:47 |
Zara | to load them :P | 15:47 |
Zara | SotK: thanks for the db dump; the script to find stories is only at about 1000300 of 2000690 | 15:50 |
Zara | so that sped things up a lot :) | 15:50 |
Zara | (oh, actually, it was 1009300. still) | 15:50 |
SotK | hah, yw :) | 16:02 |
Zara | I'm heading off for the evening. 'night, all! :D | 16:51 |
*** dmsimard is now known as dmsimard|afk | 17:10 | |
Zara | I gave up on every picking up my scanner and drew these out again. it needs some fleshing out but hopefully someone somewhere can use it. https://storyboard.openstack.org/#!/story/2000667 | 19:54 |
Zara | *ever | 19:55 |
*** alexismonville has quit IRC | 21:18 | |
*** alexismonville has joined #storyboard | 23:15 |
Generated by irclog2html.py 2.14.0 by Marius Gedminas - find it at mg.pov.lt!