Week Notes?
Week Notes. I'm not sure I will be able to commit to this. But they have a bit of revival around my blogging reading echo chamber. Per revival, I mean I see them again.
The Open Data Institute just started one with a round about them. I subscribed again to the feed of Brian Suda and his own week notes. Alice Bartlett has also a very cool personal, down to earth and simple summary of her week. I love that she calls them weaknotes She's on week 63 by now.
So these will not be personal but more covering a bit of the things I (we?) do, learn, fail about webcompat. The only way to do that is to write down properly things. The possible issues: redundancy in writing things elsewhere, the fatigue associated with the regularity. I did a stretch of worklogs in the past.
Bugs
- Apple is using HLS for their videos. This is only implemented in Safari, but still this is working in Chrome, because of
HLS.js
. But this library fails in Firefox because this is using RegExp named groups, which are not yet implemented. - Second bug this week showing serious performance issue when the
blur
filter is applied to a large context in the page. - There was an issue about the image viewer on Wikipedia, so I ran
mozregression
and found this changelog. Gecko 3 months made history navigation asynchronous. Kohei Yoshino had already written about it in his excellent Firefox Site Compatibility notes. wikimedia is aware of it. - Another regression related to Make CSP frame-ancestors work with fission enabled
- An additional
input
event is fired aftercompositionend
. It probably should not and that might create a webcompat issue. - There are still issues and differences in the Quirks mode. In this issue, the top relative positioning is not handled properly in quirks mode, it was closed as a duplicate of this previously reported bug.
- missing images are not rendered the same in Chrome, Safari and Firefox. I created tests and I need to file bugs at the appropriate places.
data:text/html,<!DOCTYPE html><html><head><meta charset="UTF-8"><style>body,html {height: 100%;}body {width: 100%;}</style></head><body><div id="app"><div><div><img src="http://example.org/foo" alt=""></div></div></div></body></html>
Update: bugs already exists, see the comment by Emilio. - a code using
Event.path
(only in Blink) instead ofEvent.composedPath
. I wonder if it's a recurrent issue. So there was an issue to drop it on Blink on July 2017. And it was not because it had 2.19% usage on Chromium. And this is even worse now… it has above 15% of usage. WebKit hadEvent.deepPath
in the past, but it was renamed ascomposedPath
.
Firefox Usage Counters
I need to better understand how counters are working inside Firefox so the numbers become more meaningful. And probably it would be good to understand how they operate at Chrome too. How the counter works when a property is used inside a condition. For example in JavaScript with a construct like:
var mypath = event.path || event.composedPath()
These are probably questions for Boris Bzarsky. Maybe a presentation at All Hands Berlin would be cool on the topic.
- What is happening if the browser implements both, how are they counted?
- What is happening if the browser implements one of these, how are they counted?
- Is the order matters for the counter?
- What are the induced differences if the counter is tracking only one of the property and not the two?
- Can a counter track something which is in the source code but not implemented in the engine. For instance, tracking
event.path
which is undefined.
Python tests
We currently do AB testing for webcompat.com for a new form with the goal to improve the quality of the bugs reported. The development has not been an entirely smooth road, and there are still a lot of things to fix, and particulary the missing tests. Our objective is that if the AB testing experiment is successful. We will be rewriting properly the code, and more specifically the tests. So instead of fixing the code, I was thinking that we could just add the tests, so we have a solid base when it's time for rewriting. We'll see. Then Mike was worried that we would break continuous integration. We use nose for running our unittest tests. There is a plugin in nose for creating groups of tests by setting an attr
.
from nose.plugins.attrib import attr
@attr(form='wizard')
class WizardFormTest:
def test_exclusive_wizard(self):
pass
So we could probably deactivate these specific tests. So this is something to explore.
Webcompat dev
- Discussions with Kate about DB migrations.
- Trying to understand what GitHub really does with linked images, because it might have consequences for our own images hosting.
- Making a local prototype of image upload with the Bottle framework. So I can think differently about it. Bottle is super nice for quick prototyping/thinking. That looks doable. In the end it will be probably done with Flask. It helped identified some issues and some cool things we do.
Writings
- Wrote a blog post about my talk at Mozilla Dev Roadshow in Asia.
- Some thoughts on separating the images upload on webcompat.com from the rest of the app.
Reading
- I have the feeling I could write a counterpart for this blog post about work commuting. There's probably something about work and the circumstances of your country.
- This blog post was followed by a series of internal discussions on the nature of commuting, the reason to commute or not, etc. As usual, a lot of things need to be unpacked when we talk about commuting.
- Impressive and interesting to look at the differences. from hackerrank
System abuse? or goofing
- A user reported two invalid bugs and deleted his accounts. It's always for me a surprise when people try to abuse a system which has no power.
Some notes about the week notes
- Should adding pieces be about a linear timeline of events when they happen OR should it be about categories like I did above?
- Was it too long? Oversharing? All of these are notes taken on the last 5 days. And I'm surprised by the amount.
- My work is not linear on one task, which means updates to many tasks are happening in a couple of hours or days.
Otsukare!