There’s been a project that’s been going on for several years to move Firefox’s bookmarks processing off the main thread and to happen in the background – to help reduce possible jerkiness when dealing with bookmarks.
One part of this (Places Transactions) has been enabled in Nightly for about 4-5 weeks. We think we’ve fixed all the regressions for this, and we’d now like more people testing.
So, when you’re checking out the improved performance of Firefox Nightly, please also keep an eye on Bookmarks – if you’re moving/copying/editing them, and you undo/redo actions, check that everything behaves as it should.
If it doesn’t, please file a bug with how to reproduce and we’ll take a look. If you can also test with the preference
browser.places.useAsyncTransactions set to false (after a restart) to know if it happens with the old style transactions – that will help us finding the issue.
We know there’s still some performance issues with the new async transactions which we’re currently working on and hope to be landing fixes for those soon.
A while ago, Dave Townsend wrote a commit hook for Mercurial for ESLint. I’ve just extended the code to create a commit hook for Git users.
To install the Git hook, go into the top-level of your mozilla-central Git repository, and enter (assuming you don’t already have a pre-commit hook):
ln -s ../../tools/git/git-lint-commit-hook.sh .git/hooks/pre-commit
That’s all you need to do. If you do have an existing pre-commit hook, then you’ll need to incorporate running git-lint-commit-hook.sh as well.
This will run ESLint on the affected files when committing and print warnings if they fail. The commit will still happen, but you should fix the issues up before pushing them for review.
As Jared has been posting, we have gradually been enabling ESLint rules for the Firefox code base.
We’ve created a page on devmo for ESLint help & hints.
In particular, there’s links to details on how to integrate it into your editor and also hints and tips for fixing issues.
If you have questions or comments, feel free to join us in the #eslint channel on IRC.