Adblock Plus and (a little) more

Checksum validation for subscription downloads added · 2008-10-30 10:19 by Wladimir Palant

A new Adblock Plus 0.7.5.5+ development build (2008103009) has been uploaded. Only en-US locale is available at the moment.

Installation

https://adblockplus.org/devbuilds/

Warning: Format of patterns.ini file changed in a way that is not backwards compatible. If you want to go back to an older version of Adblock Plus, keep a backup or you will loose all your filters.

Note: Due to extensive redesign, bugs are expected, especially around the Preferences dialog. Please report the issues you find.

Changes

  • Added new filter composer dialog that is opened to add a new filter
  • Moved warning that Adblock Plus is disabled from preferences to composer dialog, made it possible to enable with a single click (forum topic)
  • Blockable items: Changed default action for blocked items to “add exception rule” instead of “edit filter”
  • Blockable items: Tooltip now shows the filter source in addition to the filter itself (forum topic)
  • Blockable items: Added “Copy filter” item to the context menu (forum topic)
  • Blockable items: Multiple selection and copying of multiple addresses/filters now possible (forum topic)
  • Blockable items: Added “Select all” item to the context menu
  • Blockable items: Filters can now be disabled and re-enabled from the context menu (forum topic)
  • Fixed: Subscriptions are sometimes loaded from browser cache
  • For subscription downloads, a comment “! Checksum: abcd” is now interpreted and files with wrong checksum are rejected (forum topic, reference implementation to add checksums)
  • Added hidden preference extensions.adblockplus.savestats to allow turning off hit statistics (useful if patterns.ini is put into a version control system) (bug 18650)
  • Firefox 1.5, Thunderbird 1.5, SeaMonkey 1.0, Songbird 0.5/0.6 are no longer supported
  • Flock 1.2 and Songbird 0.7 are supported now
  • Cleaned up some backwards compatibility hacks
  • Removed ancient drag&drop handling code (not discoverable and not advertised anywhere)
  • Redesigned core classes for better maintainability, added code documentation and tests for large parts of the core
  • Changed patterns.ini format to allow user-defined filters to be stored in any filter group
  • Adblock Plus 0.6 preferences are no longer imported on upgrade
  • Adblock preferences are no longer imported on upgrade (filter list still imported)
  • Preferences: eliminated delay when Preferences window is opened and much of the delay when changes are applied
  • Preferences: Added View menu to control visible columns and sorting, removed column picker
  • Fixed: Dates in Preferences window would sometimes use wrong character encoding (bug 441370)
  • Fixed: “Edit filter in effect” might select the filter in a disabled subscription even though it exists in an enabled one (forum topic)
  • Preferences: Filter export inserts a checksum comment into the file (forum topic)
  • Preferences: Pasting filters that contain spaces (especially comments) now possible (bug 18920)
  • Preferences: Groups containing user-defined filters can now be disabled as well” (forum topic)
  • Preferences: Removed “Add filter” dummy from the list (forum topic)
  • Preferences: Comments can now be inserted in all filter groups, not only “Advertisement filters”
  • About dialog: Made it possible to select and copy version number
  • Made sure filter composer warns the user on regexps and too short filters
  • Preferences: Showing exclamation mark for too short filters as well now
  • Preferences: Added a tooltip explaining the meaning of the exclamation mark
  • Preferences: For invalid filters, the tooltip now explains why they are invalid
  • Preferences: Removed regular expressions warning and corresponding preference extensions.adblockplus.warnregexp (warning in composer and exclamation mark are enough) (forum topic)
  • Preferences: Removed dropdown list from filter editor (forum topic)
  • Preferences: Filter changes (with exception of element hiding) no longer apply immediately to the “current” window, this is only done for the composer (forum topic)
  • Preferences: “Add subscription” now opens a list of subscriptions instead of the “custom subscription” dialog
  • Preferences: Added a way to disable/enable filters and subscriptions from context menu
  • Fixed: Findbar in preferences dialog has no icons (Firefox 3)
  • Mac OS X: Preferences menu changed into toolbar to make sure it stays inside the window (forum topic)
  • Fixed: Object tabs show up on print (bug 19405)
  • New options $third-party and $~third-party restrict filters to third-party/first-party requests (forum topic)
  • Subscription download: Next attempt after failed download is after one day now rather than after one hour (preference extensions.adblockplus.subscriptions_fallbackerrors adjusted accordingly)
  • Fallback request can now disable automatic downloads for subscriptions that are no longer available
  • Fixed: Preferences dialog doesn’t immediately display changes to “downloaded automatically” status
  • Fixed: Blockable items list header is hidden in fullscreen mode
  • Preferences: “Reset filter statistics” now resets “Last hit” as well (bug 18650)
  • Preferences: using more obvious image for “enabled” state (forum topic)
  • Fixed: “Disable on this page only” won’t work for pages with query string
  • Significantly reduced the time for reading patterns list from disk as well as for writing it back
  • Reduced the amount of memory used for long filter lists
  • Made sure patterns file isn’t overwritten unless write was successful (bug 16488)

Known issues

  • Comments cannot be moved between filter groups
  • Preferences: Tooltip is being shown when hovering empty space
  • Preferences: No tooltip on overflowing cell text
  • Preferences: “Delete” context menu items isn’t enabled for filter subscriptions
  • Subscription download fails if the download location isn’t HTTP
  • Last line of patterns.ini isn’t read correctly when the browser starts
  • Filters in a newly added subscription are still being marked as “too short”
  • Filters of a disabled subscription show up as “too short” after restart
  • “Collapse blocked elements” option has no effect
  • A choice to make a column visible doesn’t always persist
  • Double-clicking a group title starts editing a new filter/filter subscription
  • Bug 462504 will lead to data loss if JIT is turned on for chrome (affects browser nightly builds 20081028 and later)

Source code revision: a989e0f4ee83

Tags:

Comment [5]

  1. chewey · 2008-10-30 13:13 · #

    Checksums! Great!

    Could you make some kind of validator available so that I can check if the file that comes out of my custom subscription creator contains the right hash?

  2. MonztA · 2008-10-30 22:36 · #

    Don’t forget to implement the Filterset.G warning. ;)

    Reply from Wladimir Palant:

    Don’t worry, I have a to-do list – and that one is next on the list.

  3. lovelywcm · 2008-10-31 01:25 · #

    Is mozdev repository changed the property of addChecksum.pl?

    It’s nice to ‘chmod 744’, and convert break format to Unix style. So can run it like ‘./addChecksum.pl’.

    Currently this will get error ‘/usr/bin/perl^M: bad interpreter’.

    Reply from Wladimir Palant:

    I fixed the line breaks.

  4. anonymous · 2008-10-31 02:52 · #

    after check “menu-view-last hint” the “last hint” column show…but when open the preferences dialog open again this column is not show…

    Reply from Wladimir Palant:

    Yes, I also noticed that it doesn’t always work reliably, that should be a Mozilla bug. Anyway, fixed: http://hg.mozdev.org/adblockplus/rev/30d71172b5e1

  5. Simon · 2008-10-31 03:04 · #

    As thanks for your continuous efforts, two nits:
    1. Double-clicking a tree parent should only (un)collapse its branch, not offer to either edit the subscription or add a new rule.
    2. Right-clicking the tree header should IMO allow to show/hide columns instead of displaying the context menu for the selected(?) item.

    BTW: What about allowing dev builds to automatically update to newer dev builds (similar to Firefox being either on a release or alpha/beta/nightly channel)?

    Reply from Wladimir Palant:

    Fixed both issues: http://hg.mozdev.org/adblockplus/rev/329dfad886fa and http://hg.mozdev.org/adblockplus/rev/411fa33eef1a. I’ll also check whether the View menu can become the context menu for the list header.

    As to a dev build update channel – I prefer it when people know what changed in the build they downloaded and how risky it is to use a particular build. However, if AMO implements this feature (they have been discussing it for a while now) I might start using it.

Commenting is closed for this article.