Pre-release

1.12.3b0

@gorhill gorhill released this Apr 23, 2017

Closed as fixed:

Downloads

Latest release

1.12.1

@gorhill gorhill released this Apr 15, 2017 · 6 commits to master since this release

Oops... This stable release should have been version 1.12.2 (even number).


No code change, just a re-package with more recent filter lists to ensure uBlock Origin works out of the box with EasyPrivacy without breaking Facebook upload feature: a filter in EasyPrivacy was causing a false positive.

For existing installations, just force an update of EasyPrivacy.

I did not look into the details, but at first glance it seems the false positive appeared as a result of Facebook changing its code. It's unlikely sites such as Facebook (who would rather not encourage the use of blockers) would test their pages when using a blocker in order to ensure their site still works fine with a blocker.

Today I learned: a whole lot of users have no clue that most blockers work based on filter lists which can cause false positives. The Facebook issue would have happened with any blocker making use of EasyPrivacy.

False positives must be reported to filter list maintainers (not here), and often just forcing an update of filter lists may resolve an issue (because maybe somebody else reported the issue and it was fixed by maintainers).

Downloads

1.12.0

@gorhill gorhill released this Apr 9, 2017 · 9 commits to master since this release

Changes

New static network filter option: badfilter. Using this option will prevent another filter to be loaded in memory. See uBlockOrigin/uAssets#192 for rationale for having such a filter option.

Chromium/Firefox WebExtension

Ability to support more request types from webRequest API: csp-report, font, media, websocket, and actually whatever is part of webRequest.ResourceType. This means uBO will be able to natively filter websocket connection attempts starting with Chromium 58.

Firefox

The webext version for Firefox has been converted into a hybrid version, to allow seamless migration of uBO's settings/data from a legacy extension to webext extension. I consider this webext version of uBO to be fit to release to AMO if the current stable Firefox version (52) supported all the proper WebExtensions API required by uBO. All the blocking issues have been resolved, but the fixes will be available in a future stable version of Firefox.

Update: due to auto-update snafu, the webext version of uBO has been given a different id than the official one, this will guarantee that auto-update won't cause issue (you will have to update manually if using the webext version).

Important: If you install the webext version of uBO (you need the most recent build of Nightly), this is what will happen:

When you launch uBO/webext for the first time, it will read all your settings/data from the old storage and migrate them to the new webext storage. This happens only if uBO/webext can find a file named ublock0.sqlite. This will happens only once, the first time you install uBO/webext. Depending of how much data there is to migrate, this may cause your browser to work hard during that first launch and delay readiness.

Once the data from the uBO/legacy has been migrated to uBO/webext, each version of uBO will only see its own data, meaning no change in settings in one version will be seen by the other version. If you remove uBO/webext, this also removes the storage associated to it, meaning re-installing uBO/webext following removal will cause the storage migration code to kick in again.

Closed as fixed:

Chromium

Edge

Firefox

Firefox/Webextension

Core

Downloads

Pre-release

1.11.5rc8

@gorhill gorhill released this Apr 4, 2017 · 14 commits to master since this release

Changes

New static network filter option: badfilter. Using this option will prevent another filter to be loaded in memory. See uBlockOrigin/uAssets#192 for rationale for having such a filter option.

Chromium/Firefox WebExtension

Ability to support more request types from webRequest API: csp-report, font, media, websocket, and actually whatever is part of webRequest.ResourceType. This means uBO will be able to natively filter websocket connection attempts starting with Chromium 58.

Firefox

The webext version for Firefox has been converted into a hybrid version, to allow seamless migration of uBO's settings/data from a legacy extension to webext extension. Update: due to auto-update snafu, the webext version of uBO has been given a different id than the official one, this will guarantee that auto-update won't cause issue (you will have to update manually if using the webext version).

Important: If you install the webext version of uBO (you need the most recent build of Nightly), this is what will happen:

When you launch uBO/webext for the first time, it will read all your settings/data from the old storage and migrate them to the new webext storage. This happens only if uBO/webext can find a file named ublock0.sqlite. This will happens only once, the first time you install uBO/webext. Depending of how much data there is to migrate, this may cause your browser to work hard during that first launch and delay readiness.

Once the data from the uBO/legacy has been migrated to uBO/webext, each version of uBO will only see its own data, meaning no change in settings in one version will be seen by the other version. If you remove uBO/webext, this also removes the storage associated to it, meaning re-installing uBO/webext following removal will cause the storage migration code to kick in again.

Closed as fixed:

Chromium

Edge

Firefox

Firefox/Webextension

Core

Downloads

1.11.2

@gorhill gorhill released this Mar 3, 2017 · 73 commits to master since this release

Changes

Better support for selecting broad cosmetic filters (Ctrl-click) in element picker (1c4347d).

Closed as fixed:

Edge

Firefox

Core

Downloads

1.11.0

@gorhill gorhill released this Feb 5, 2017 · 93 commits to master since this release

Changes

Asset managements was refactored: details.

The user interface of the "3rd-party filters" pane has been revisited:

  • To render better in devices with smaller screen.
  • Clicking "Update now" is no longer a blocking operation.
  • The home icon is a link to the support site for a given filter list.
  • The clock icon replaces the "purge cache" label.
    • Click to mark a filter list as out-of-date.
  • The custom filter lists input field has been repurposed to import external filter lists, as opposed to declare external filter lists as was the case before.
    • An imported filter list will have an X icon aside its name, to be used to remove the custom filter list.
  • You can now hide unused filter lists by clicking the global filter count at the top.

Procedural cosmetic filters can now be chained and recursive (something which was planned) .

New procedural cosmetic filter operators:

  • :has-text(argument): to filter elements according to whether they have a specific text string found in them. Use /.../ to match a literal regular expression instead of plain text.
  • :if()/:if-not(argument): use to implement recursion, argument is itself a valid procedural cosmetic filter, but can also be a plain CSS selector.

The cost of parsing procedural cosmetic filters has been moved from content script-time to filter list compile-time, i.e. done only once when a filter list is updated.

Documentation about procedural cosmetic filters has been updated.

The element picker supports all procedural cosmetic filters, i.e. it will also provide visual feedback as you enter manually such filters in the input field. Invalid filters, procedural or not, will be labelled with a bright red E.

Closed as fixed

Firefox

Firefox for Android

Core

Downloads

1.10.2

@gorhill gorhill released this Dec 14, 2016 · 177 commits to master since this release

Changes

Cosmetic filtering

Implementation of cosmetic filter operator :matches-css has been revised according to the discussion at #1930 (comment) and request in uBlockOrigin/uAssets#212:

  • :matches-css now accept no more than one single style property. If more than one style property must be matched on the same node, you will need to chain them (i.e. div##matches-css(...):matches-css(...) -- ability to chain is coming for next release). Since there is only one style property, do not use trailing ;.
  • :matches-css-before() and :matches-css-after() are now also available to specifically match style property for the pseudo elements :before and :after on a node.
  • Support the use of regexes for property matching: if the first and last character of the value to match is /, the value will be deemed to be a literal regular expression which must be matched.

Dashboard

The last dashboard's pane you visited will be automatically opened next time you open the dashboard (issue #2206).


Closed as fixed:

Edge

Firefox

Core

Downloads