Reminder - no plan survives breakfast.
- Feel free to send pull requests to the repo!
- Here’s a contributing guide!
- Here’s the guide for creating pull requests that smurfd used and recommends!
Today
- A very spoooOOOOOooky episode!
Let's get back to the WindowsJumpList stuff.
Goal: I want the JumpListManager to only ever be accessed off of the main thread, so that the main thread in the parent process never has to await a lock.
- [x] Get rid of maxListItems, since it doesn't appear to be used
- [x] Get rid of isListCommitted
- [x] Make .available return a Promise
- [x] Make abortListBuild return a Promise
- [x] Make deleteActiveList return a Promise
- [x] Make SetAppUserModelId return a Promise
- [ ] Add WebIDL for JumpListShortcutDescription and add populateJumpList method to JumpListBuilder.
- [ ] Figure out how to make the above testable.
- [ ] Make addListToBuild return a Promise
- [ ] Make commitListBuild return a Promise instead of using that old callback mechanism
- [ ] Update all of the callers of the above methods!
- [ ] Remove locks and monitors
- [ ] Migrate off of dedicated lazy thread to background thread pool
Q: I have many preferences in about:config that start with "services.sync.prefs.sync-seen.". I know these have to do with syncing prefs, but I don't remember the "-seen" part. What does the -seen mean? is it new?
- https://bugzilla.mozilla.org/show_bug.cgi?id=1731249#c13
Chat
- Join us in the Livehacking room on Mozilla’s Matrix instance! Here’s documentation on how to join. I’m only sorta monitoring the Twitch chat. A bot will try to bridge Matrix and Twitch (joc-bridgebot).
Links
- Felicia Bacon
- nbp hacks on the SpiderMonkey JS engine
- Alessandro Castellani has been streaming himself livehacking on Thunderbird
- emilio hacks on Firefox!
- Compiler Compiler - watch a Mozilla engineer hack on the SpiderMonkey JavaScript engine!
- How mconley uses Mercurial
- Andreas Kling hacks on a custom browser engine for a hand-rolled OS called SerenityOS
- The Joy of Coding: Community-Run Episode guide
- Feel free to send pull requests to the repo!
- Here’s the guide for creating pull requests that smurfd used and recommends!
- I've been mirroring the episodes to YouTube
- Code Therapy with Danny O’Brien
- Watch a developer put together a Windows game from scratch (no third-part engines) - really great explanations: https://handmadehero.org/
- /r/WatchPeopleCode for more livehacking!
Glossary
- BHR - “Background Hang Reporter”, a thing that records information about when Firefox performs poorly and sends it over Telemetry
- e10s ("ee ten ESS") - short for Electrolysis, which is the multi-process Firefox project
- CPOW ("ka-POW" or sometimes "SEE-pow") = Cross-Process Object Wrapper. See this blog post.
- Deserialize - "turn a serialized object back into the complex object”
- Serialize - "turn a complex object into something that can be represented as primitives, like strings, integers, etc
- Regression - something that made behaviour worse rather than better. Regress means to “go backward”, more or less.
- l10n - localization
- a11y - accessibility
- i18n - internationalization
- k8s - kubernetes
Feedback
- @mconley@mastodon.social on Mastodon
- @mike_conley on Twitter
- You can chat with me on Matrix at @mconley:mozilla.org
- mikeconley.ca/blog
- mconley at mozilla dot com