00:00 | <smaug____> | it is, but I was just wondering about the origin of the terminology |
00:01 | <smaug____> | you throw an exception object, but raise an error (which may be also an object nowadays). |
00:01 | <smaug____> | anyway, just guessing |
00:51 | <Hixie> | hmm |
00:51 | <Hixie> | if we do make HTMLMediaElement audioTracks and videoTracks into arrays of Tracks, it makes it hard for us to use the same API for Streams |
00:52 | <Hixie> | because we wouldn't want a Stream constructor that takes an array of Tracks to be able to be given an array of Tracks from a <video> |
00:52 | <Hixie> | only those from a Stream |
00:52 | <Hixie> | hmmmm |
01:25 | <nessy> | ups, sorry Hixie! wasn't aware that's how you used the severity flag |
01:25 | <Hixie> | np |
01:27 | <nessy> | glad you're looking at it right now |
01:28 | <nessy> | it's also got to do with the text track list, because they currently come as an array and not as another object |
01:30 | <nessy> | Hixie, could TextTrack also inherit from AbstractTrack ? |
01:30 | <ide> | is this channel appropriate for spec-related questions? I'm wondering about the content types of resources served from the offline application cache |
01:31 | <mpilgrim> | heycam: ping |
01:32 | <heycam> | mpilgrim, hi |
01:33 | <mpilgrim> | i have more stupid webidl questions |
01:33 | <heycam> | ask away |
01:33 | <mpilgrim> | i've finished migrating webkit's indexeddb implementation to strict required-argument checking |
01:33 | <mpilgrim> | it throws TypeError now |
01:33 | <heycam> | cool |
01:34 | <mpilgrim> | but its null handing is still fubar |
01:34 | <mpilgrim> | to clarify: what should indexedDB.open(null) do? |
01:35 | <heycam> | Ms2ger was right, it should be the same as indexedDB.open("null") |
01:36 | <mpilgrim> | sigh |
01:36 | <heycam> | we just had this bug about it: http://www.w3.org/Bugs/Public/show_bug.cgi?id=12798 |
01:39 | <mpilgrim> | ok, it's not a difficult fix |
01:39 | <Hixie> | nessy: why would we do that? |
01:50 | <nessy> | Hixie: depends on what attributes are in the AbstractTrack - I don't know what you're envisaging there |
01:53 | <nessy> | Hixie: are you planning to remove the TrackList object for media tracks and replace it with arrays then or is your design only for streams? |
01:58 | <roc> | what's the difference between a "buffered" track and a "streaming" track? |
02:07 | <othermaciej> | URL to a file vs something like HTTP live streaming where you get chunks and there's no such thing as the whole file? |
02:07 | <roc> | not in this context |
02:08 | <roc> | I'll wait for someone to explain it in the bug :-) |
02:17 | <nessy> | yeah, I am curious about that, too - as much as possible I would like to see the live streaming video data handled the same way as the file-based video data |
04:06 | <Hixie> | roc: the difference is between something where all you have is the data at this very second, and something where you can at least in theory seek to a different time |
04:07 | <roc> | so |
04:07 | <roc> | in my theory of everything, Streams are not seekable |
04:07 | <Hixie> | right |
04:07 | <roc> | and neither are tracks |
04:07 | <Hixie> | what do you mean by "tracks"? |
04:07 | <roc> | I'm not sure :-) |
04:08 | <roc> | what does seekability have to do with your tracks, though? |
04:08 | <Hixie> | here's the background: |
04:09 | <Hixie> | there are two APIs that currently happen to be the same API: HTMLMediaElement.videoTracks, and MediaStream.videoTracks |
04:09 | <Hixie> | HTMLMediaElement.videoTracks has as purpose the following: |
04:09 | <Hixie> | - expose what video streams are in the media resource |
04:09 | <Hixie> | - allow the author to introspect them |
04:09 | <Hixie> | - allow the author to switch between them |
04:10 | <Hixie> | MediaStream.videoTracks is currently misdesigned but in principle its purpose is to allow authors to turn off individual tracks before sending them to a peer |
04:10 | <Hixie> | to implement e.g. video mute |
04:10 | <Hixie> | (everything i'm saying here has a parallel with audioTracks, but for simplicity i'm just going to talk about videoTracks here) |
04:11 | <Hixie> | now the problem with the API that is used for both of the above is that it's awkward to use |
04:11 | <Hixie> | instead of saying media.videoTracks[0].kind you say media.videoTracks.getKind(0); |
04:11 | <Hixie> | it's less intuitive |
04:12 | <Hixie> | (getKind() et all is also slightly nicer from my standpoint because there's no extra object to worry about, so no lifetime issue, no edge cases to define like "what if you keep a reference to a track and ask for its kind after the video has changed number of tracks" |
04:12 | <Hixie> | or "what happens if the first track changes kind mid-way through the stream and you ask for its kind using a reference you picked up earlier") |
04:13 | <Hixie> | now i'm trying to fix two problems: |
04:13 | <Hixie> | 1. changing to the intuitive API for HTMLMediaElement.videoTracks, by having it return a Track object of some kind |
04:13 | <Hixie> | and defining all those edgecases somehow |
04:14 | <Hixie> | 2. making the "video mute" feature actually work |
04:14 | <Hixie> | to do 2, my current plan is to have a way to create a new MediaStream from an existing one, so you can manipulate the outputs on the second one without affecting the first one |
04:15 | <Hixie> | so you can getUserMedia() a (Generated)MediaStream, and plug that in (via getObjectURL) to <video> |
04:15 | <Hixie> | call that one userStream |
04:15 | <Hixie> | and you can also call new MediaStream(userStream) which returns a new MediaStream, call it secondStream |
04:15 | <Hixie> | on which you can disable the video without affecting the <video> |
04:16 | <Hixie> | and you would send secondStream to PeerConnection |
04:16 | <Hixie> | ok i'm shutting up now |
04:16 | <Hixie> | oh wait i never talked about seekabality |
04:16 | <Hixie> | so anyway, the concern was that at one point instead of new MediaStream(aStream) I was thinking of allowing new MediaStream([array, of, tracks]) |
04:17 | <Hixie> | and you wouldn't want to be able to take Track objects from the HTMLMediaElement.videoTracks list |
04:17 | <Hixie> | because those have nothing to do with the kinds of tracks in a MediaStream |
04:17 | <Hixie> | I mean, they're similar, but they're not compatible concepts |
04:17 | <Hixie> | but that's academic at this point since I don't think we need to allow that necessarily |
04:17 | <Hixie> | ok now i'm really done |
04:18 | <roc> | I see |
04:18 | <roc> | I agree building a Stream out of Tracks sounds dangerous |
04:19 | <roc> | what if you build a Stream out of Tracks, start playing it somewhere, and then change the media resource in the HTMLMediaElement you got the Tracks from? |
04:20 | <roc> | the resource loader that loaded the Tracks will have gone away |
04:20 | <roc> | you could define the Tracks to end or something, but it's not great |
04:21 | <roc> | The approach where you create a MediaStream that takes another stream as input and selects different tracks fits nicely with my work |
04:23 | <Hixie> | building a stream out of tracks from a <video> element just doesn't make sense to me |
04:23 | <Hixie> | i mean, what would the stream be? |
04:23 | <Hixie> | what's currently playing? |
04:23 | <Hixie> | that seems... bogus |
04:24 | <Hixie> | anyway, yeah, i think we're on the same page |
04:24 | <Hixie> | i need to figure out what it means if you create a MediaStream from a MediaStream that has disabled tracks |
04:24 | <Hixie> | do they come along as well but disabled? |
04:25 | <Hixie> | if so, it's kinda weird, because it means getting a url out of a MediaStream, or putting one in a PeerConnection, gets you something different than what you get if create a new MediaStream from one |
04:25 | <Hixie> | but if you don't, then you can never have more than one videoTrack per MediaStream constructed in this way |
04:25 | <Hixie> | so... |
04:25 | <Hixie> | not sure where to go with this exactly |
04:51 | <roc> | Maybe you want track enabling/disabling and track "pruning" to be separate features |
04:52 | <roc> | I can see use-cases for sending tracks over PeerConnection that are disabled by default |
04:55 | <karlcow> | http://research.microsoft.com/apps/pubs/default.aspx?id=150010 |
04:55 | <karlcow> | C3: An Experimental, Extensible, Reconfigurable Platform for HTML-based Applications |
05:32 | <Hixie> | roc: we definitely don't want it to be possible for someone to accidentally send tracks they didn't intend to send, so track pruning is my priority |
05:44 | <roc> | well then, maybe PeerConnection by default should not send disabled tracks, and later add the ability to opt-in to that |
05:44 | <Hixie> | yeah |
06:01 | <zewt> | apparently to browser vendors "faster release schedules" just means "we no longer understand version numbering", heh |
06:02 | <zewt> | i mean, firefox 5? really? |
06:06 | <Hixie> | what's wrong with firefox 5? |
06:06 | <zewt> | it's a minor release of firefox 4, heh |
06:07 | <roc> | version numbers are stupid for anything other than calculating "this is newer than that" |
06:07 | <Hixie> | hear hear |
06:07 | <zewt> | major version numbers should indicate major releases; this is definitely not a major release |
06:08 | <roc> | what difference does it make to anyone whether it's a "major" or "minor" release (if you can even get people to agree on what those mean)? |
06:09 | <zewt> | if people see "firefox 5", jump to upgrade because it looks like a major release, and then they quite literally can't tell the difference, then I wouldn't expect them to even bother when 6 comes around |
06:09 | <Hixie> | if you have a schedule like chrome's, which i believe is what firefox is now doing (right?), there's no such thing as a major release |
06:09 | <roc> | zewt: then they're fools, because every release has significant security improvements |
06:10 | <roc> | of course a lot of people are fools, so we'll auto-update them |
06:10 | <zewt> | not if it's competently maintained; older releases must have security updates for a reasonable amount of time |
06:11 | <roc> | we never get to backport all our security improvements, since some of them are too risky |
06:12 | <roc> | obviously things are different for known-in-the-wild security issuses |
06:13 | <roc> | anyway, the mentality of only updating when there are major UI changes is silly |
06:13 | <zewt> | firefox's history makes me very careful about upgrading, heh |
06:14 | <zewt> | which is alleviated with the updates being more frequent, of course, but still |
06:14 | <roc> | I don't believe that people are going to think "a minor update that doesn't change the UI is OK, I"ll update, but a major update that doesn't change the UI must have something wrong with it so I won't update" |
06:16 | <nessy> | people will run whatever latest version you give them |
06:17 | <Hixie> | tell the IE6 users that ;-) |
06:22 | <nessy> | they are not normal people - they are corporates ;) |
07:34 | <hsivonen> | Hixie: are you awere of compat issues preventing a spec change to make the task that fires DOMContentLoaded set readyState to "interactive" |
07:34 | <hsivonen> | *aware |
07:34 | <Hixie> | not off-hand |
07:34 | <Hixie> | what do browsers do today? |
07:39 | <hsivonen> | Hixie: Gecko does what the spec says |
07:39 | <hsivonen> | Hixie: I haven't tested others |
07:39 | <hsivonen> | I suppose I should |
08:31 | <hsivonen> | I guess I now need an EDITORIAL ASSISTANT'S RESPONSE boilerplate |
08:31 | <hsivonen> | should the "reconsider" bit say "editor" or "editorial assistant"? |
08:32 | <hsivonen> | I suppose Editor |
08:32 | <hsivonen> | does http://pastebin.mozilla.org/1255208 look ok? |
08:38 | <MikeSmith> | hsivonen: looks OK to me |
08:39 | <MikeSmith> | and I for one think it's great that we can now use the phrase “editorial assistants” as a synonym for the cabal |
08:40 | <Hixie> | aren't you just supposed to use the same boilerplate i use? |
08:41 | <Hixie> | not that i care one way or the other |
08:41 | <Ms2ger> | Enjoy the extra work, all :) |
08:41 | <MikeSmith> | hsivonen: you have "If you have additional information and would like the Editor reconsider, please..." in there |
08:41 | <MikeSmith> | don't know if original has that too |
08:42 | <Hixie> | wait how did ms2ger get away with not being one of these assistant thingies |
08:44 | <MikeSmith> | but seems like it should instead rather be either "information you would like the Editor reconsider" or "and would like the Editor reconsider it" |
08:44 | <hsivonen> | MikeSmith: I copied what I saw Hixie use |
08:44 | <Ms2ger> | We clearly lack a Process to define the boilerplate |
08:44 | <MikeSmith> | process is: monkey see, monkey do :) |
08:45 | <MikeSmith> | just kidding |
08:45 | <hsivonen> | Ms2ger: Indeed. I was bold enough to use a boilerplate without a Process: http://www.w3.org/Bugs/Public/show_bug.cgi?id=12950#c6 |
08:46 | <MikeSmith> | way to set an example |
08:46 | <MikeSmith> | good precedent |
08:46 | <MikeSmith> | let's have more of that |
08:46 | <Ms2ger> | Good, that was a bug in need of wontfixing :) |
08:47 | <Hixie> | you know, you could be wontfixing bugs too! |
08:47 | Hixie | dangles a wontfix hammer in front of ms2ger |
08:48 | Ms2ger | wontfixes the bug to become an EA |
08:48 | <MikeSmith> | a while back, I think I remember somebody saying we should add a resolution status of ONLYONEPERSONINTHEENTIREUNIVERSECARESABOUTTHIS |
08:48 | Ms2ger | hands it back |
08:48 | <MikeSmith> | I don't remember who said that |
08:48 | <Ms2ger> | Let's make it two, we don't want to exclude Julian |
08:48 | <MikeSmith> | but I'm just (re)noting it here for the record |
08:49 | <Ms2ger> | OTOH, Hixie would probably use it for all my bugs |
08:50 | <MikeSmith> | I think somebody else suggested "YAGNI" |
08:50 | <MikeSmith> | which whatever that is, I don't even know |
08:55 | <hsivonen> | dear lazy IRC, why is the gedit command-line command opening new gedit instances for me now? It used to open new tabs in an existing gedit process |
09:00 | <hsivonen> | hmm. how is the pageshow event supposed to work with the initial about:blank? |
09:00 | <Hixie> | an excellent question |
09:00 | <Hixie> | iirc the spec doesn't fire it |
09:00 | <hsivonen> | it appears I broke a whole bunch of chrome mochitests |
09:01 | <hsivonen> | but I don't know yet if my patch is bogus or if the tests are bogus |
09:06 | <Ms2ger> | Or both |
09:14 | <hsivonen> | anyway, about:blank now passes reftest, crashtest, mochitest-a11y and mochitest-plain (with a leak) |
09:14 | <hsivonen> | mochitest-chrome and mochitest-browser-chrome to go |
09:15 | <hsivonen> | looks like pageshow is a major issue |
09:29 | <hsivonen> | page loading is always even harder than it seems :-( |
09:38 | <annevk> | http://mobile.twitter.com/diveintomark/status/81701979130314752 is funny, wish I'd seen that one when it came along |
09:39 | <zcorpan> | Hixie: isn't it more useful to use labels instead of severity (and other fields) for categorization of bugs? |
09:40 | <zcorpan> | Hixie: like 'parsing', 'media', etc |
09:40 | <MikeSmith> | annevk: I guess no W3C team member would be allowed to officially condone that tweet |
09:41 | <zcorpan> | people will continue to change severity and not realize that 'critical' means 'parsing' |
09:41 | <annevk> | MikeSmith, I guess you only talk about your crazy uncle behind his back? |
09:42 | <MikeSmith> | I don't have any crazy uncle |
09:42 | <MikeSmith> | in my family, I am the crazy uncle |
09:43 | <MikeSmith> | so if the TAG is a crazy uncle, then, hey, I've found something I have in common with the TAG |
09:43 | <Ms2ger> | MikeSmith, not just in your family |
09:43 | <MikeSmith> | heh |
09:44 | <MikeSmith> | now, btw, that I would ever myself describe the TAG as a crazy uncle |
09:44 | <MikeSmith> | one of you Editorial Assistants please make sure that gets noted in the record |
09:44 | <zcorpan> | wait, is MikeSmith == TAG? |
09:45 | <MikeSmith> | zcorpan: hey, wait, you been reading more of my proposals for process improvements? |
09:45 | <MikeSmith> | I thought I had those set to Member-only |
09:46 | <zcorpan> | i can read Member stuff you know |
09:46 | <MikeSmith> | well, quit doing that |
09:47 | <hsivonen> | XUL makes about:blank even harder |
09:47 | <annevk> | what is the deal with the normative language spec? |
09:47 | <annevk> | is the TAG hoping for consumers of HTML to arise that are incompatible with other implementations? |
09:49 | MikeSmith | moves his proposals into secret Super Member space |
09:50 | <MikeSmith> | hsivonen: I was going to try to say something clever about XUL, but I'll bite my tongue instead |
09:50 | <zcorpan> | wait editorial assistants also need boilerplate? boo |
09:52 | zcorpan | wonders where to save the boilerplate for future copy-paste |
09:52 | <Ms2ger> | MikeSmith, Team space? |
09:53 | <hsivonen> | boo. OMG! Ubuntu uses Disqus for comments |
09:54 | <MikeSmith> | Ms2ger: hmm, how would that work in combination with the existing secret Super Team space? |
09:55 | <MikeSmith> | hey wait, I don't seem to have read access to secret Super Team space documents any more. Has to be some kind of bug |
09:55 | <Ms2ger> | Oh no, I changed that |
09:56 | <zcorpan> | hsivonen: where does it say that editorial assistants are to use the boilerplate? |
09:56 | <Ms2ger> | You hang around with the WHATWG too much |
10:00 | <annevk> | Ms2ger, for contentType and the various charset attributes I thought we could just give Document 4 additional internal variables |
10:01 | <annevk> | Ms2ger, we set them to the correct values for createDocument and createHTMLDocument calls, Hixie handles the rest |
10:01 | <Ms2ger> | WFM |
10:03 | Ms2ger | adds some warnings for Attr nodes |
10:07 | <annevk> | bug #? |
10:07 | <hsivonen> | zcorpan: It doesn't say that anywhere, but it seems obvious |
10:08 | <annevk> | yeah, we do the same as the editor |
10:08 | <Ms2ger> | 661327 |
10:11 | <annevk> | nice |
10:41 | <annevk> | Hmm, I wonder if a test suite for progress events makes sense |
10:41 | <annevk> | Maybe for the interface... |
10:45 | <annevk> | I am going to rename custom request headers in CORS to author request headers |
10:48 | <annevk> | Does not seem to affect HTML; good |
10:55 | <hsivonen> | soo... don't pageshow and friends not propagade from iframe's window object to the iframe element? |
10:55 | <jgraham> | How would a >TS for progress events not make sense? |
10:56 | <zcorpan> | hsivonen: why would they? |
10:56 | <hsivonen> | zcorpan: load does |
10:57 | <hsivonen> | when does the outer window of an iframe come to existence? |
10:57 | <annevk> | jgraham, apart from the interface, how would you test them? |
10:57 | <zcorpan> | hsivonen: so? |
10:57 | <hsivonen> | zcorpan: logic |
10:57 | <zcorpan> | hsivonen: use case? |
10:58 | <hsivonen> | zcorpan: understanding when they fire :-) |
10:58 | <jgraham> | annevk: I haven't looked at the spec in detail but I assume there are some requirements. Or can one "implment" it by implementing the interface and then never dispatching any events? |
10:58 | <annevk> | jgraham, other specs make the requirements |
10:58 | <annevk> | like XHR |
10:58 | <zcorpan> | hsivonen: WONTFIX :P |
10:58 | <annevk> | the only normative bit is the interface and its attributes, but what they return is set in other specs |
10:59 | <annevk> | I guess I should email webapps |
10:59 | <jgraham> | annevk: Well I guess that's what you can test then |
10:59 | <hsivonen> | zcorpan: Is there any way to add an event listener for pageshow to an iframe's window object before inserting the iframe into the document? |
11:00 | <hsivonen> | does .contentWindow always, by definition, emerge only upon the insertion? |
11:01 | <zliu> | Is PeerConnection 's audio/video content encrypted? |
11:02 | <hsivonen> | I guess the dual nature of browsing contexts in XUL and in the Web platform is the source of my troubles today |
11:02 | <zcorpan> | hsivonen: is the iframe's document about:blank? |
11:03 | <hsivonen> | zcorpan: yeah, but the document emerges only upon the creation of the browsing context, too |
11:04 | <zcorpan> | is pageshow fired sync or is it queued? |
11:04 | <hsivonen> | zcorpan: oh. good point |
11:05 | <zcorpan> | "If the Document is in a browsing context, then queue a task to fire a pageshow " |
11:05 | <annevk> | zliu, http://www.whatwg.org/specs/web-apps/current-work/complete.html#security-considerations |
11:07 | <zcorpan> | though maybe about:blank pages don't run the "the end" parsing steps? |
11:08 | <hsivonen> | I guess my problem today is annoying code sharing between the Web and XUL |
11:08 | <hsivonen> | and that code is a "here be dragons" area |
11:09 | <hsivonen> | so earlier I papered over it |
11:09 | <hsivonen> | but apparently not well enough! |
11:09 | <zewt-> | better cardboard over it next time |
11:11 | <zliu> | So PeerConnection's audio/video content is "data UDP media streams"? I had thought not. |
11:48 | <jgraham> | // It is defined here because jslint complains if it is declared |
11:48 | <jgraham> | // at the end of the function (which would be more logical and readable) |
11:49 | <annevk> | zliu, oh |
11:49 | <annevk> | hmm |
11:49 | annevk | didn't look int detail |
12:20 | <annevk> | is it "one or more is" or "one or more are" |
12:21 | <annevk> | "are" right? |
12:24 | <annevk> | oh, just read that CDATASection bug in Gecko |
12:24 | <annevk> | some people are not amused |
12:24 | <Ms2ger> | Speaking of which, I need to write some new patches |
12:26 | <annevk> | so is Gecko releasing every six weeks now? |
12:30 | <zcorpan> | firefox, yes |
12:38 | <remy> | Any folks around to answer an appcache question? |
12:39 | <zcorpan> | remy: don't ask to ask |
12:39 | <remy> | zcorpan: you'd think, right? I've asked in the past, but all I got was tumbleweed |
12:39 | <remy> | appcache - FALLBACK - I can't work out from the spec - should it support "star rules", ie. *.html offline.html ? |
12:40 | <remy> | because Firefox does support it, and Chrome and Opera don't |
12:40 | <remy> | yet, NETWORK uses that syntax |
12:40 | <remy> | bottom line - I can't work out from the spec what's correct - so a little help :) |
12:41 | <annevk> | remy, no |
12:41 | <annevk> | remy, bug in Firefox |
12:42 | <remy> | don't you think that it should be a feature of the appcache, i.e. firefox's "bug" should be in Chrome, et al? |
12:42 | <smaug____> | bug in Firefox or in the spec ;) |
12:43 | <annevk> | remy, if we want to make the spec more complex |
12:44 | <annevk> | remy, currently the first URL is resolved and is then prefix matched |
12:44 | <annevk> | remy, no regexp-like magic |
12:44 | <remy> | yet the NETWORK category *does* use regexp-like magic |
12:44 | <annevk> | no |
12:45 | <remy> | well - it does in the browsers |
12:45 | <remy> | I've got a site with a rule for /remote/* under network, and all browsers respect that rule |
12:45 | <annevk> | it can only be a single * |
12:46 | <remy> | I don't follow - are you saying that my /remote/* rule is fine? |
12:46 | <annevk> | sure, it's valid |
12:46 | <annevk> | but it doesn't do what you think it does |
12:46 | <remy> | but *.html isn't |
12:46 | <remy> | ah |
12:46 | <annevk> | *.html is also valid |
12:46 | <annevk> | also doesn't do what you think it does |
12:46 | <remy> | not for FALLBACK |
12:46 | <remy> | okay |
12:46 | <zcorpan> | if you have a file called "*.html" |
12:46 | <remy> | so I've got the wrong end of the stick - can you put me on the right path? |
12:47 | <remy> | zcorpan: sure - that'll work |
12:47 | <zcorpan> | i mean it'd match that file |
12:47 | <zcorpan> | not foo.html |
12:47 | <remy> | yeah, and I'm saying that it *should* match foo.html and I think it's a bug in the spec |
12:47 | <remy> | I know Firefox has gone and implemented this already |
12:48 | <remy> | and I know that the network rules work the same way (though annevk is going to explain why it really works) |
12:48 | <annevk> | well, maybe Firefox has some magic I don't know about |
12:49 | <remy> | Okay, let's ignore Firefox for a minute |
12:49 | <annevk> | but I'm pretty sure we never implemented anything like that |
12:49 | <remy> | well - it works, happy to upload a demo of it if you're unsure |
12:49 | <remy> | can I rewind for a min - the NETWORK rules |
12:49 | <remy> | I've got: /remote/* under network |
12:50 | <remy> | and requests to /remote/[anything here] are never cached |
12:50 | <remy> | suggesting there's a regex going on when the url is requested, it's matched to the rule, and therefore is under the whitelist |
12:50 | <remy> | is that a correct understanding of it? |
12:51 | <annevk> | do you also use *? |
12:51 | <annevk> | stuff not in the manifest is not cached by default |
12:51 | <remy> | stuff not in the manifest is never requested - regardless |
12:51 | <remy> | every browser currently has that bug |
12:51 | <annevk> | no that's a feature |
12:51 | <annevk> | well, per spec |
12:51 | <remy> | a feature? |
12:51 | <remy> | damn. |
12:52 | <annevk> | you should read the spec :) |
12:52 | <remy> | I have, several times and if I still can't get it right, I'm pretty sure there's many others that aren't. |
12:52 | <remy> | I'm now asking about three different things - but for the sake of getting it right - |
12:52 | <annevk> | i agree it's pretty tough |
12:53 | <remy> | can you point me to where in the spec, it says: if the manifest is used, any asset not mentioned by the manifest is never requested by the browser |
12:53 | <remy> | (i.e. resulting in broken images, etc) |
12:54 | <annevk> | sure |
12:54 | <remy> | (I'm not asking to be a dick, I really do want that info - because it's tripping folks up, and I want to put them on the right path) |
12:54 | annevk | looks |
12:54 | <remy> | annevk: ta |
12:55 | <annevk> | I realize it's useful if you know :) |
12:55 | <annevk> | http://www.whatwg.org/specs/web-apps/current-work/complete/offline.html#changesToNetworkingModel |
12:55 | <annevk> | the key here is step 5 |
12:56 | <annevk> | if there's no wildcard set (by using a single * in NETWORK) resource loads fail |
12:56 | <annevk> | this is primarily done to improve debugging if I remember correctly |
12:56 | <remy> | well - the note is the key thing in there for me! |
12:57 | <annevk> | oh yeah, the note is pretty clear too :) |
12:57 | <annevk> | I typically ignore the non-normative stuff :) |
12:57 | <remy> | by "blocking" or "open" - does "blocking" usually come about by not including anything in the network namespace? |
12:59 | <annevk> | remy, yes, that is the default |
12:59 | <remy> | okay. good - cheers. |
12:59 | <remy> | if you've still got a minute, I'd like to get this star rule stuff straight |
13:01 | smaug____ | can't immediately see any bug in Fx's appcache parsing. But he isn't familiar with that code. |
13:01 | <remy> | smaug____: I'll upload an example of FALLBACK using the star rule in a bit |
13:02 | <remy> | annevk: I *had* a network rule that read: /remote/* |
13:03 | <remy> | as per here (note that I've just commented it out): http://jsconsole.com/jsconsole.appcache |
13:03 | <smaug____> | in the fallback section I don't see any special handling for * in Fx |
13:03 | <remy> | was the /remote/* ever being used - or was it looking for a file called: /remote/* (as in a file called star)? |
13:04 | <smaug____> | as far as I see /remote/* is interpret as URL |
13:05 | <annevk> | remy, it is used as a prefix match /remote/* |
13:05 | <annevk> | remy, so every URL that starts with /remote/* would match |
13:05 | <remy> | as in a literal asterisk? |
13:06 | <annevk> | yeah sorry |
13:06 | <annevk> | so resources like "/remote/*test" |
13:06 | <hsivonen> | http://hsivonen.iki.fi/test/moz/about-blank-pageshow.html |
13:07 | <hsivonen> | why don't I see DOMContentLoaded and pageshow in Opera? |
13:07 | <annevk> | hsivonen, I am a little shocked you are still working on about:blank after three months (and I think it has been longer) |
13:07 | <remy> | annevk: blimey. okay, then a lot of the folk, including me, have been writing about this completely wrong! |
13:07 | <gsnedders> | hsivonen: we don't have pageshow/unshow |
13:08 | <hsivonen> | annevk: well, I've done other stuff, too, I haven't worked on this as my only task |
13:08 | <hsivonen> | annevk: but, yeah, it's pretty shocking |
13:08 | <annevk> | remy, oops, guess we should have some WHATWG regulars attend these conferences and read the tutorials |
13:08 | <remy> | annevk: => http://www.html5rocks.com/en/tutorials/appcache/beginner/ |
13:08 | <hsivonen> | annevk: note that this thing has been pending for over a year |
13:08 | <smaug____> | s/unshow/pagehide/ |
13:08 | <hsivonen> | annevk: I started working on this stuff over a year ago |
13:09 | <hsivonen> | annevk: but we decided to postpone this work past Firefox 4 |
13:09 | <gsnedders> | hsivonen: I also wouldn't be surprised if we didn't fire DOMContentLoaded on about:blank |
13:09 | <hsivonen> | gsnedders: ok |
13:09 | <gsnedders> | smaug____: Proof that we don't implement it that I don't have a clue what it is called. :) |
13:10 | <remy> | annevk: hmm, actually - some cases the star is working as a regex |
13:10 | <gsnedders> | hsivonen: We don't actually use the parser for about:blank. |
13:10 | <remy> | let me quickly change my demo |
13:10 | <hsivonen> | some of the slowness can be blamed on me, but I blame the rest of the slowness to our load event firing code, readyState code and XUL |
13:10 | <hsivonen> | none of those three is happy code |
13:10 | <smaug____> | gsnedders: does Opera not have anything like bfcache? |
13:12 | <jgraham> | We have bfcache |
13:12 | <jgraham> | We had taht before Gecko I believe |
13:12 | <remy> | annevk: okay, I used to have a rule that read: http://* - but we're saying that wouldn't match anything unless it had a star at the start |
13:12 | <smaug____> | remy: seems like http://www.html5rocks.com has buggy documentation |
13:13 | <remy> | smaug____: random, given that it's coming out of google - but the offline stuff has confused people for a long while - even the "appcachefacts.info" has some stuff incorrect (follow this chat today) |
13:13 | <annevk> | hsivonen, I see, well, best of luck :) |
13:14 | <annevk> | hsivonen, hopefully ten years from now about:blank is a solved problem |
13:14 | <remy> | annevk: is there an exception in the spec to say if the NETWORK rule is * only, it will open the whitelist? |
13:14 | <smaug____> | jgraham: just curious, in which cases is the bfcache disabled? In Gecko for example unload and beforeunload listeners disable it |
13:15 | <annevk> | remy, yeah |
13:15 | <remy> | aaaahhhh. |
13:15 | <annevk> | remy, let me give you a pointer |
13:15 | <hsivonen> | right now, I'm most worried about breaking XUL-based Firefox extensions if I make the initial about:blank sane for XUL-based browsing contexts, too |
13:15 | <gsnedders> | smaug____: IIRC it never is |
13:15 | <remy> | okay, that explains how the hell it's confused. |
13:15 | <hsivonen> | well, for Webby values of "sane" |
13:15 | <smaug____> | gsnedders: hmm, interesting |
13:15 | <annevk> | remy, http://www.whatwg.org/specs/web-apps/current-work/complete/offline.html#dfnReturnLink-0 |
13:15 | <annevk> | (that is for authors) |
13:16 | <smaug____> | gsnedders: what happens if you have an active XHR? |
13:16 | <gsnedders> | smaug____: Dunno. |
13:16 | <smaug____> | (Gecko also disables the bfcache if there are active requests like XHR) |
13:16 | <remy> | annevk: that link frag identifier isn't working for me :( stupid browser |
13:16 | <annevk> | remy, http://www.whatwg.org/specs/web-apps/current-work/complete/offline.html#parsing-cache-manifests (for user agents) step 28 under "online whitelist" |
13:16 | <annevk> | remy, oops |
13:17 | <remy> | got it |
13:17 | <remy> | cheers |
13:17 | <remy> | Well, I'm updating the offline chapter - which is why I'm asking all these questions. |
13:17 | <remy> | thank you annevk you've cleaned up a lot of misunderstanding I had |
13:17 | <annevk> | remy, http://www.whatwg.org/specs/web-apps/current-work/complete/offline.html#writing-cache-manifests under "Data for the current section" is for authors |
13:18 | <annevk> | remy, glad to help out |
13:19 | <annevk> | remy, if you want new functionality in the spec, best to email whatwg⊙wo with use cases (for best results avoid suggesting/starting with syntax) |
13:19 | <remy> | the irony being that the * character implies syntax already :) |
13:19 | <remy> | hence the confusion around the subject |
13:20 | <annevk> | e.g. "I'd like different fallback for HTML and GIF resources." |
13:20 | <annevk> | plus some rationale |
13:20 | <hsivonen> | gsnedders: IE9 fires DOMContentLoaded for about:blank, FWIW |
13:20 | <remy> | yeah, it's things like having a fallback for avatars to a default image |
13:20 | <hsivonen> | but not pageshow |
13:20 | <hsivonen> | does pageshow exist at all in IE9? |
13:21 | <annevk> | remy, on the other hand, if avatars are in /avatars you can do that by /avatars /avatars/fallback.png |
13:21 | <remy> | annevk: so it's kinda like a substring match? |
13:21 | <annevk> | yeah, HTML calls it a "prefix match" |
13:22 | <remy> | prefix being ambiguous since files have prefixes -- but yeah, I'm getting that now. |
13:22 | <gsnedders> | hsivonen: Ask jgraham what Ragnarök does. |
13:22 | <annevk> | (also not the URLs are resolved before this "prefix match" so you can use /avatars in the manifest but ../avatars/... in your HTML) |
13:22 | <remy> | wow, subtle differences in understanding leaving me feeling rather rodgered. |
13:23 | <remy> | annevk: okay, as in the browser works out what the resource url is before looking up against the manifest entries? |
13:24 | <annevk> | the browser turns /avatar in the manifest into http://example.org/avatar and uses that as prefix match |
13:25 | <annevk> | i.e. it doesn't use the actual string found in the manifest but turns it into an absolute URL first |
13:25 | <remy> | yep - that makes sense. |
13:25 | <Ms2ger> | Then you must misunderstand it :) |
13:25 | <Ms2ger> | Nothing ever makes sense on the web |
13:26 | <annevk> | Ms2ger, that sounds like logic |
13:26 | <annevk> | violating the house rules again! |
13:26 | <Ms2ger> | :( |
13:26 | <remy> | you've been a big help, I'll make sure this gets written up in lay-dev terms |
13:50 | <annevk> | http://www.youtube.com/watch?v=bqtdAGjLGzo this is pretty cool |
13:54 | <benschwarz> | remy! |
13:56 | <annevk> | already gone |
13:57 | <benschwarz> | oh. damn |
13:57 | <benschwarz> | never chatted with @rem live |
14:34 | <annevk> | I wonder how getUserMedia() is planned to be extended in the future |
14:34 | <annevk> | You'd think those four tokens could just be on the same level... |
14:47 | <annevk> | HTML has a bunch of "If callback is null, abort these steps." that can probably be replaced by simply not allowing the callback to be null |
14:47 | <annevk> | though I guess that would be inconsistent with e.g. addEventListener and friends |
14:47 | <annevk> | as you would get an exception |
14:50 | <zcorpan> | seems nicer to be able to use null instead of function(){} |
14:50 | <zcorpan> | if you e.g. don't care about the success callback but care about the error callback |
14:52 | <boblet> | normally the cite attribute for <blockquote> and <q> is for the quote’s source URL. I notice on the bottom of http://wiki.whatwg.org/wiki/Cite it’s been used to semantically link to an in-page link—an id on the author’s name |
14:52 | <annevk> | zcorpan, what API is that? |
14:53 | <zcorpan> | annevk: e.g. geolocation |
14:53 | <annevk> | PeerConnection says it is for client-to-client, but the descriptions are for servers. |
14:53 | <annevk> | zcorpan, why would you not care about success? |
14:54 | <annevk> | How do you use it client-to-client? |
14:55 | <zcorpan> | annevk: maybe you don't need geolocation right now but will need it later, and want to inform the user not to waste time if geolocation isn't available, or something |
14:55 | <boblet> | …putting aside the incorrect use of <cite> in that example, would <p>As <span id="quote-author1">George R. R. Martin</span> wrote, <q cite="#quote-author1">As soon as it’s released I’ll let you know</q></p> be a legit way to use @cite in <q>? |
14:56 | <annevk> | no |
14:57 | <annevk> | cite="" points to context |
14:58 | <boblet> | annevk: cool. thought it was iffy but couldn’t figure out why |
14:58 | <asmodai> | Heh cool |
14:58 | <boblet> | annevk: also welcome back you slacker :p |
14:58 | <asmodai> | talking with Rachel Blum who recently joined the Chrome team about BiDi stuff |
15:00 | <asmodai> | annevk: pointed her to a post of yours at least |
15:00 | <asmodai> | And some other pointers/hints. |
15:01 | <annevk> | "The q element must not be used in place of quotation marks that do not represent quotes; for example, it is inappropriate to use the q element for marking up sarcastic statements." that should be "should not", no? |
15:01 | <annevk> | boblet, hehe |
15:01 | <annevk> | boblet, the spec is not that clear it seems, but it seems really weird to just point back to the author |
15:01 | <annevk> | boblet, not really helping anyone |
15:02 | <annevk> | boblet, maybe file a bug? and ask for an example of cite=""; the spec has none |
15:02 | <boblet> | annevk: presume the reason is to explicitly associate author with quotation |
15:02 | <boblet> | ok, will do |
15:02 | <annevk> | thanks! |
15:03 | <annevk> | asmodai, :) you're on the Chrome team? |
15:05 | <adactio> | Actually, I *do* the q element for sarcastic comments but I use the class attribute to distinguish them: <q class="air">social media guru</q> |
15:05 | <adactio> | (I don't style them any differently though) |
15:05 | <boblet> | annevk: ? http://www.whatwg.org/specs/web-apps/current-work/multipage/text-level-semantics.html#the-q-element has an example of @cite (blockquote too) |
15:06 | <boblet> | no mention of a way to explicitly associate an author with a <q> though (possible with <blockquote> using <footer>) |
15:07 | <annevk> | oops |
15:08 | <asmodai> | annevk: nah |
15:09 | <asmodai> | annevk: I know someone who works there now though |
15:09 | <asmodai> | annevk: Who's digging into this whole BiDi stuff. |
15:09 | <annevk> | bidi is seriously complicated :/ |
15:12 | <asmodai> | annevk: I wonder how much of those algorithms make sense in the current day world though. |
15:18 | <annevk> | Ms2ger, suggestions for labeling the old initEvent()? dom-Event-initEvent-old ? |
15:25 | <annevk> | actually writing down InitEvent dictionaries is more complicated than I thought |
15:34 | <annevk> | so passing a dictionary to an event using a different interface than the dictionary is associated with should throw |
15:34 | <annevk> | it needs to be both easy to define a new dictionary and be clear that inherited members are also set |
15:40 | <annevk> | heycam|away, what if a passed dictionary has a key that is not allowed? |
15:41 | <annevk> | heycam|away, ah, it seems that it will be dropped |
15:42 | <smaug____> | annevk: what do you mean with initEvent dictionaries? |
15:42 | <smaug____> | what kind of changes are you making? |
15:43 | <annevk> | initEvent(dictionary) |
15:43 | <smaug____> | is it about passing { foo: bar} to init*Event ? |
15:43 | <annevk> | yes |
15:43 | <smaug____> | is it already defined how passing {} works? |
15:45 | <annevk> | smaug____, http://dev.w3.org/2006/webapi/WebIDL/#idl-dictionaries |
15:45 | <Ms2ger> | There was some discussion about unknown keys in IDB, I think we ended up not throwing |
15:46 | <smaug____> | annevk: so you propose that using dictionaries will be an additional way to initialize events? |
15:47 | <Ms2ger> | Maybe use initEvent-dict for the new one? |
15:47 | <annevk> | smaug____, as the only way forward |
15:47 | <annevk> | smaug____, only keep init*Event where required |
15:47 | <annevk> | once I figure out how to write it down :) |
15:49 | <smaug____> | not that this is at all agreed or anything - but I guess I could accept such syntax |
15:50 | <smaug____> | need to verify that Dictionaries work in a sane way |
15:50 | <annevk> | nobody objected on the list three months ago |
15:50 | <annevk> | and lots of people liked it |
15:50 | <annevk> | that's enough agreed for me |
15:51 | <smaug____> | how did webidl end up solving the getter problem |
15:53 | <annevk> | not sure |
15:53 | <annevk> | I think by converting objects to dictionaries somehow |
15:54 | <smaug____> | btw, the new init method should be probably called just init() |
15:54 | <annevk> | good idea |
15:54 | <smaug____> | since the object is already event, why call it initEvent |
15:55 | <annevk> | yeah |
16:11 | <annevk> | so we have some net neutrality law now |
16:11 | <annevk> | next Tuesday they're gonna vote to remove the amendment that accidentally made it in... |
16:12 | <annevk> | oh, too soon, Eerste Kamer has to approve it also |
16:13 | <mpilgrim> | heycam|away: once https://bugs.webkit.org/show_bug.cgi?id=63110 , https://bugs.webkit.org/show_bug.cgi?id=63114 , and https://bugs.webkit.org/show_bug.cgi?id=63140 land, WebKit's IndexedDB implementation will be fully spec-compliant w.r.t. missing and null arguments |
16:14 | <Ms2ger> | mpilgrim++ |
16:29 | <annevk> | the new way to initialize events: https://bitbucket.org/ms2ger/dom-core/changeset/b9bb17789db9 |
16:29 | <Ms2ger> | ...I heard my name? |
16:30 | <annevk> | review? |
16:30 | <annevk> | :) |
16:33 | <smaug____> | annevk: could you please make sure the getter handling is ok |
16:34 | <smaug____> | I mean, if getters are supported, it must be defined in which order they are called etc |
16:34 | <Ms2ger> | r=me, r?heycam ;) |
16:34 | <smaug____> | and when they are called |
16:34 | <annevk> | smaug____, that is up to heycam|away no? |
16:34 | <smaug____> | sure, but if it isn't defined yet, it is a bit strange to add event.init() |
16:35 | <annevk> | smaug____, I think that is what http://dev.w3.org/2006/webapi/WebIDL/#es-dictionary does |
16:35 | <annevk> | smaug____, but I do not really know for sure |
16:36 | <smaug____> | ok |
16:36 | <smaug____> | heycam|away: ^^^^ |
16:39 | <smaug____> | this all allows new kinds of loops. event.init({ getter type: function() { event.init(this) }}) |
16:39 | <smaug____> | but I guess browsers just need to handle that like they handle other endless loops |
16:40 | <annevk> | I thought the whole idea was that dictionary types prevented that |
16:40 | <smaug____> | perhaps |
16:43 | <Ms2ger> | The ES people didn't like that, IIRC |
16:46 | <Ms2ger> | http://dvcs.w3.org/hg/domcore/raw-file/tip/Overview.html#dom-event-init |
16:48 | <annevk> | hober, the IDL does not change based on a content attribute |
16:49 | <annevk> | Ms2ger, ta |
16:49 | <Ms2ger> | We should really get you set up some day ;) |
16:49 | <annevk> | this works |
16:49 | <annevk> | hober, the second statement is not for UAs |
16:50 | <hober> | annevk: ok. |
16:50 | <annevk> | hober, there is simply no defined UI for placeholder and type=range and therefore it does nothing |
16:50 | <annevk> | but reflection and all still works |
16:50 | <hober> | annevk: right |
16:50 | <hober> | annevk: that's what we thought internally, but the spec could be clearer |
16:50 | <smaug____> | seems like webidl does allow getters |
16:51 | <annevk> | smaug____, I guess you can ask sicking about the details |
16:51 | <annevk> | smaug____, Indexed DB uses it too |
16:51 | <smaug____> | yeah |
16:51 | <smaug____> | I should probably ask bent, not sicking |
18:34 | <linclark> | is there a microdata discussion list? |
18:34 | <Ms2ger> | whatwg⊙wo |
19:55 | <AryehGregor> | nodeList[nodeList.length - 1].parentNode.insertBefore(document.createElement("br"), nodeList[nodeList.length - 1].nextSibling); |
19:55 | <AryehGregor> | I hate JavaScript. And DOM in particular. |
19:56 | <AryehGregor> | That is a 127-character line just to insert a br after the last element of a list. |
19:56 | <Ms2ger> | Who does that? :) |
19:56 | <AryehGregor> | People writing JavaScript implementations for specs that have to do WYSIWYG DOM manipulations. |
19:56 | <Ms2ger> | Pushed a couple of changed to DOM Range, btw |
19:57 | <AryehGregor> | Like move some inline elements out of a block parent without putting them on the same line as their parents' siblings. |
19:57 | AryehGregor | looks |
19:57 | <Philip`> | Write yourself some helper functions, then you won't have to worry about the verbosity any more |
19:57 | <AryehGregor> | WebIDL stuff? |
19:58 | <Ms2ger> | Yeah |
19:58 | <Ms2ger> | Boring stuff |
19:58 | <AryehGregor> | It would reduce spec verbosity too, if I defined some terms like "add X as the next sibling of Y". |
19:59 | <Philip`> | Subroutines were a great invention |
20:01 | <zewt-> | RETURN WITHOUT GOSUB |
20:02 | <AryehGregor> | Is anyone else deeply suspicious when they rewrite something nontrivial and it causes nothing to break and no regression test failures? |
20:03 | <Ms2ger> | Yes |
20:03 | <zewt-> | everyone, I think, heh |
20:27 | <zewt-> | crippling history.pushState bug still happens in FF5, apparently :| time to update my workarounds... |
20:37 | <hsivonen> | zewt-: have you reported the bug? |
20:38 | <zewt-> | reported it in FF4, was fixed two months ago, but i guess the fix didn't make it into FF5 for some reason |
20:38 | <Ms2ger> | The target milestone field should tell you |
20:39 | <hsivonen> | zewt-: bug #? |
20:39 | <zewt-> | https://bugzilla.mozilla.org/show_bug.cgi?id=640387 |
20:40 | <zewt-> | just frustrating that a crippling bug that was fixed something like two months earlier didn't make it into the release, particularly because it's a bug I need to use browser version sniffing to work around |
20:40 | <hsivonen> | zewt-: ah. it will be in Firefox 6 |
20:40 | <zewt-> | okay, i'll stop ranting :P |
20:40 | <hsivonen> | 6 weeks from now |
20:42 | <AryehGregor> | Full releases are every six weeks now, like Chrome stable? |
20:43 | <AryehGregor> | I thought it was going to be more like once every three months. |
20:43 | <hsivonen> | AryehGregor: 4 to 5 took 3 months |
20:43 | <hsivonen> | from now on every 6 weeks |
20:43 | <AryehGregor> | Nice. |
20:43 | <zewt-> | sure feels like massive overcompensation (for the prior slow release cycle)--that seems much *too* frequent |
20:43 | <AryehGregor> | It matches Chrome stable. |
20:43 | <AryehGregor> | Which IMO is a good pace. |
20:44 | <AryehGregor> | You've got to have lots and lots of testing, but if you can deploy that frequently, it's awesome. |
20:44 | <zewt-> | we'll see what happens, I guess |
20:44 | <AryehGregor> | MediaWiki development was the best when we were deploying to Wikipedia every week. |
20:44 | <AryehGregor> | It means you only have to do out-of-band updates for really really critical stuff; and when you get a bug report you can say "oh, I remember what change must have caused that". |
20:45 | <AryehGregor> | The latter is especially great, everything is still fresh in your mind when the bug reports come in. |
20:45 | <AryehGregor> | I remember at least once when a user complained about something in #wikimedia-tech and I had a merge conflict when committing like two minutes later because another developer also immediately remembered the commit and pushed the same one-line fix right before I did. |
20:45 | <gsnedders> | AryehGregor: Well, unless bugs don't get found for ages. |
20:46 | <AryehGregor> | Plus, it's much more rewarding for volunteers. |
20:46 | <gsnedders> | AryehGregor: Which compiler bugs, for example, tend to be like. |
20:46 | <AryehGregor> | gsnedders, then you're in the same boat regardless, but you're not worse off with fast release cycles than slow ones. |
20:47 | AryehGregor | strongly holds the opinion that long release cycles are a relic of pre-Internet eras when pushing out patches was impractically expensive, and that everyone in a position to autoupdate should be pushing out updates very regularly instead of big huge irregular updates |
20:47 | <gsnedders> | AryehGregor: Indeed. But yeah, it does mean that you tend to find issues quicker |
20:47 | <zewt-> | seems like thinks would feel a little less silly if they used year-month for version numbers instead of numbers--it's going to look pretty goofy when we're on Chrome 63 and Firefox 52 |
20:47 | <AryehGregor> | Another big advantage is you keep a regular development cadence. You don't have to go through months of feature development, then months of testing, months of bug-fixing, etc. |
20:47 | gsnedders | wonders how much Fx stuff will break with sniffing at 10 |
20:47 | <Ms2ger> | Not really, because you won't see the version number |
20:48 | <gsnedders> | AryehGregor: Does anyone do that? Even those who have long-cycles? |
20:48 | <AryehGregor> | You also don't have to maintain multiple versions for long. |
20:48 | <Ms2ger> | gsnedders, IE, maybe? :) |
20:48 | <AryehGregor> | gsnedders, I have no idea. I'm sure it's not that extreme in most cases, but you tend to have code freezes, at least. |
20:49 | <gsnedders> | Ms2ger: As far as I can tell they do testing and bug-fixing all at once. |
20:49 | <AryehGregor> | You must get bug reports on an irregular cadence if you wait a long time before releasing betas, no? |
20:49 | <zewt-> | gsnedders: are we going to end up with yet another wart in our U-A's: "Firefox/9.0 Firefoxier/10", heh |
20:49 | <gsnedders> | AryehGregor: I dunno. |
20:50 | <AryehGregor> | Browsers other than IE and Safari have always had a release schedule of multiple non-bugfix releases per year, though. Lots of major software packages are only updated once every few years. |
20:51 | <gsnedders> | Well, if you ignore Opera 10, for example |
20:51 | <AryehGregor> | But this push for more rapid development is totally awesome, by the way. It's symptomatic of the pace at which browser development is going right now: if you don't release often, you'll be significantly worse on average than your frequently-releasing competitors. |
20:51 | <AryehGregor> | It's a sign of intense competition. Yay standards! |
20:53 | <gsnedders> | Gah, I really ought to write a blog post on Presto version numbering nowadays. |
20:53 | <gsnedders> | tl;dr version: everything but the third number in it is effectively meaningless to web developers |
20:53 | <gsnedders> | (except really really really really occasionally when the second number has meaning) |
20:53 | <AryehGregor> | Did Gecko's version number jump to match Firefox's, by the way? |
20:54 | <gsnedders> | (And the Wikipedia article makes claims about what the stable/preview releases of Presto are, which seems hard to do given Presto is a purely internal project.) |
20:56 | <Ms2ger> | Yes |
20:56 | <gsnedders> | (It basically goes by what the stable/preview versions of one product use) |
20:56 | <Ms2ger> | And Thunderbird is jumping as well |
21:39 | <heycam> | annevk, smaug____, getters are run, but in a defined order, and at a defined time |
21:40 | <heycam> | all argument conversion stuff happens at the start of a method call |
22:40 | <annevk> | where can one find the latest editor's response boilerplate? |
22:58 | <othermaciej> | annevk: there's a whatwg wiki page that links it and has collected resources for bug processing |
22:58 | <LoneStar99> | can i ask a canvas question here? |
22:58 | <othermaciej> | annevk: http://wiki.whatwg.org/wiki/Bugzilla_conventions |
22:58 | <othermaciej> | annevk: see the two links in the Resolutions section |
23:00 | <LoneStar99> | when using canvas and a new color eg. "#006699" is picked a drawing is completely colored in "#006699" ?? |
23:00 | <LoneStar99> | instead of keeping previous color and only painting new lines in "#006699"? |
23:00 | <annevk> | it has not changed since 2009? okay |
23:01 | <annevk> | I had found that page, just wasn't sure whether the email link represented the official version |
23:01 | <othermaciej> | I think that text might also be somewhere in decision-policy-v2 |
23:01 | <othermaciej> | but I also believe it has not changed |
23:01 | <TabAtkins> | AryehGregor: 'inside' list markers definitely cause a linebox. 'outside' list markers are crazier when the <li> is otherwise empty. |
23:01 | <jamesr> | LoneStar99: fillStyle applies to fills done after the new style is set, same for strokeStyle with strokes |
23:01 | <jamesr> | until the styles are set to something else |
23:02 | <othermaciej> | annevk: yeah, the Editor's Response boilerplate is also right above the bug resolution table |
23:03 | <annevk> | othermaciej, http://www.w3.org/Bugs/Public/show_bug.cgi?id=12822 |
23:03 | <LoneStar99> | jamesr: i am using strokeStyle |
23:03 | <annevk> | othermaciej, and I missed that somehow, thanks! |
23:03 | <annevk> | I see "Additional Information Needed" was added which I needed :) |
23:04 | <LoneStar99> | jamesr: for example: http://bobc.in/im/drop/cc/mb/uwqx-0 "color" is blue but will switch to red |
23:06 | <Philip`> | If you want to draw with two different colours, create two different paths and stroke them separately (with separate strokeStyles for each call to stroke()) |
23:06 | <othermaciej> | annevk: when you NEEDSINFO it's helpful to be more specific about what kinds of info would be good grounds for a reopen |
23:07 | <othermaciej> | although I can see that the bug was very vague |
23:07 | <othermaciej> | but I'd at least say something like "please be more specific about your request |
23:08 | <LoneStar99> | Phillip: oh so I have to start a new "ctx.beginPath();" that should do it... |
23:08 | <Philip`> | LoneStar99: Yes |
23:11 | <LoneStar99> | Philip: ok perfect, will move it down then thanks! |
23:13 | <annevk> | othermaciej, ok |
23:20 | <jamesr> | is there a spec anywhere for how document.cookies works? |
23:20 | <jamesr> | HTML's definition references the storage mutex |
23:20 | <jamesr> | so i guess there isn't one that reflects the racy reality :/ |
23:23 | <annevk> | file a bug on HTML if you want the racy reality |
23:24 | <jamesr> | http://www.w3.org/Bugs/Public/show_bug.cgi?id=13020 |
23:24 | <jamesr> | hm that didn't do quite what i wanted |
23:25 | <jamesr> | i'm curious what formal normative text would look like that accurately depicted what happens with document.cookie |
23:27 | <annevk> | "There be dragons." |
23:28 | <jamesr> | certainly, but in the spirit of capturing actual behavior in specs it'd be interesting to describe this dragon precisely |
23:37 | <LoneStar99> | jamesr: ok thanks got it --> http://bobc.in/im/drop/cc/mb/uwqx-0 |
23:42 | <annevk> | I closed some bugs, but there's a lot of them |