Changes between Initial Version and Version 2 of Ticket #153


Ignore:
Timestamp:
03/21/2014 01:24:17 PM (6 years ago)
Author:
trev
Comment:

The implementation touched buildtools, adblockplus and adblockplustests repositories, created a review for each of them. The changes are mostly limited to lib/io.js internals, the only changes as far as our API is concerned:

  • IO.readFromFile() can no longer read from a URL (consistent with the Chrome implementation).
  • The decode parameter in IO.readFromFile() and encode parameter in IO.writeToFile() are unused, UTF-8 encoding is used for all files now (consistent with the Chrome implementation).
  • defaults/patterns.ini is no longer being used as fallback if no patterns.ini file is found, instead we set FilterStorage.firstRun flag. This allows removing our current hack in Chrome to detect missing patterns.ini, adjustments will be necessary there however.

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #153

    • Property Status changed from new to reviewing
    • Property Ready set
    • Property Owner set to trev
    • Property In_progress changed from to 1
  • Ticket #153 – Description

    initial v2  
    11=== Background === 
    2 Currently, the Firefox variant of `lib/io.js` contains weird hacks to ensure async file I/O. [[https://developer.mozilla.org/en-US/docs/JavaScript_OS.File|OS.File API]] should make these hacks obsolete. Most of it became available with Firefox 18 meaning that we should be able to use it if we drop support for Firefox 17 (current LTS release is Firefox 24). 
     2Currently, the Firefox variant of `lib/io.js` contains weird hacks to ensure async file I/O. In addition to being very complex, this implementation also isn't completely async - only read and write operations are being performed off the main thread, however file removal, renames and stat operations can still block the main thread execution. 
     3 
     4We should drop the hacks in favor of [[https://developer.mozilla.org/en-US/docs/JavaScript_OS.File|OS.File API]] which provides async versions of all necessary file operations. Most of it became available with Firefox 18 meaning that we have to drop support for Firefox 17 (current LTS release is Firefox 24). 
  • Ticket #153 – Review URL(s)

    initial v2  
     1http://codereview.adblockplus.org/6618710462693376/ 
     2http://codereview.adblockplus.org/6726956523454464/ 
     3http://codereview.adblockplus.org/6250418359238656/