Opened on 06/07/2016 at 02:39:16 PM

Closed on 08/29/2019 at 05:43:52 PM

#4122 closed change (rejected)

[meta] Create an Emscripten-based version of the core classes

Reported by: trev Assignee:
Priority: P2 Milestone:
Module: Core Keywords: emscripten, meta, closed-in-favor-of-gitlab
Cc: sergz, hfiguiere, oleksandr Blocked By: #4125, #4127, #4128, #4988, #4989, #4991, #5020, #5062, #5063, #5131, #5137, #5138, #5141, #5142, #5143, #5144, #5146, #5147, #5149, #5159, #5160, #5174, #5175, #5185, #5201, #5216, #5258, #5259, #5603, #5604, #5661, #5662, #5664, #5732, #5870, #6429, #6888
Blocking: Platform: Unknown / Cross platform
Ready: yes Confidential: no
Tester: Unknown Verified working: no
Review URL(s):

Description

Background

JavaScript engines allow a limited amount of memory optimization, we need to use typed arrays for our data. Doing that with JavaScript will produce an unmaintainable codebase, so we decided to use C++ instead and transpile using Emscripten.

What to change

We need to convert a minimal amount of core classes in order for this to make sense, most operations should stay within Emscripten-generated code.

Ticket Status Resolution Summary Component Owner
#4125 closed fixed [emscripten] Convert filter classes to C++ Core trev
#4127 closed fixed [emscripten] Convert subscription classes to C++ Core trev
#4128 closed rejected [emscripten] Convert parsing patterns.ini to C++ Core sergz
#4988 closed fixed [emscripten] Adjust API for Element Hiding Emulation filters Core trev
#4989 closed fixed [emscripten] Move filter class files into a separate directory Core trev
#4991 closed fixed [emscripten] Update to Emscripten 1.37.3 Core trev
#5020 closed fixed [emscripten] Improve compile script Core trev
#5062 closed fixed [emscripten] Allow generation of custom bindings code Core trev
#5063 closed fixed [emscripten] Make FilterNotifier calls more efficient Core trev
#5131 closed fixed [emscripten] Clean separation of bindings code and runtime code Core
#5137 closed fixed [emscripten] Add implementation of basic filter storage functionality Core trev
#5138 closed rejected [emscripten] Convert serializing patterns.ini to C++ Core sergz
#5141 closed rejected [emscripten] Convert filter matcher to C++ Core
#5142 closed fixed [emscripten] Convert element hiding container to C++ Core hfiguiere
#5143 closed fixed [emscripten] Convert element hiding emulation container to C++ Core hfiguiere
#5144 closed rejected [emscripten] Move FilterListener functionality into FilterNotifier Core
#5146 closed rejected [emscripten] Implement DownloadableSubscription.parseDownload() Core hfiguiere
#5147 closed fixed [emscripten] Prevent use-after-free from JavaScript Core hfiguiere
#5149 closed rejected [emscripten] Verify that unit tests don't leak any objects Core tlucas
#5159 closed fixed [emscripten] Expose BlockingFilter.collapse property Core hfiguiere
#5160 closed fixed [emscripten] Expose changed class and property names to JavaScript Core hfiguiere
#5174 closed fixed [emscripten] Allow brackets { and } in element hiding filters Core hfiguiere
#5175 closed rejected [emscripten] Reject element hiding filters with effectively empty domain names Core hfiguiere
#5185 closed fixed [emscripten] More compact definition of class prototypes Core trev
#5201 closed fixed [emscripten] Replace EM_ASM calls by a custom JavaScript library Core trev
#5216 closed fixed [emscripten] Use a more reliable way of retrieving mangled function name Core trev
#5258 closed rejected [emscripten] Make filters and subscriptions easier to use from C++ Core
#5259 closed rejected [emscripten] Implement hit counts functionality Core
#5603 closed fixed [emscripten] Support references in parameters of exported functions Core trev
#5604 closed fixed [emscripten] Put BINDINGS_EXPORTED after the return type consistently Core trev
#5661 closed rejected [emscripten] Move impl of Subscription serialization from Subscription classes Core sergz
#5662 closed duplicate [emscripten] Create patterns.ini parser Core
#5664 closed fixed [emscripten] Change `assert` macro to accept a single parameter. Core hfiguiere
#5732 closed rejected [emscripten] Stop using i64 arithmetic Core rjeschke
#5870 closed fixed [emscripten] Implement the new ElemHideEmulation filter type Core hfiguiere
#6429 closed rejected [emscripten] merge the changes to the content script. Core
#6888 closed rejected [emscripten] Remove support for legacy :-abp-properties() syntax Core hfiguiere


Attachments (0)

Change History (42)

comment:1 Changed on 06/07/2016 at 02:39:39 PM by trev

  • Summary changed from [emscripten] Create an Emscripten-based version of the core classes to [meta] Create an Emscripten-based version of the core classes

comment:2 Changed on 06/07/2016 at 02:58:09 PM by trev

  • Blocked By 4125 added

comment:3 Changed on 06/07/2016 at 03:09:28 PM by trev

  • Blocked By 4127 added

comment:4 Changed on 06/07/2016 at 03:19:39 PM by trev

  • Blocked By 4128 added

comment:5 Changed on 03/14/2017 at 02:11:58 PM by trev

  • Blocked By 4988 added

comment:6 Changed on 03/14/2017 at 03:34:00 PM by trev

  • Blocked By 4989 added

comment:7 Changed on 03/15/2017 at 10:27:05 AM by trev

  • Blocked By 4991 added

comment:8 Changed on 03/21/2017 at 09:20:06 AM by trev

  • Blocked By 5020 added

comment:9 Changed on 03/30/2017 at 07:57:08 AM by trev

  • Blocked By 5062 added

comment:10 Changed on 03/30/2017 at 08:08:54 AM by trev

  • Blocked By 5063 added

comment:11 Changed on 04/11/2017 at 06:30:21 PM by trev

  • Blocked By 5131 added

comment:12 Changed on 04/11/2017 at 06:32:01 PM by sergz

  • Cc sergz added

comment:13 Changed on 04/14/2017 at 06:44:53 AM by trev

  • Blocked By 5137 added

comment:14 Changed on 04/14/2017 at 07:11:35 AM by trev

  • Blocked By 5138 added

comment:15 Changed on 04/14/2017 at 07:19:57 PM by trev

  • Blocked By 5141 added

comment:16 Changed on 04/14/2017 at 08:05:50 PM by trev

  • Blocked By 5142 added

comment:17 Changed on 04/14/2017 at 08:13:50 PM by trev

  • Blocked By 5143 added

comment:18 Changed on 04/15/2017 at 07:55:02 AM by trev

  • Blocked By 5144 added

comment:19 Changed on 04/15/2017 at 02:31:11 PM by trev

  • Blocked By 5146 added

comment:20 Changed on 04/16/2017 at 02:05:13 AM by hfiguiere

  • Cc hfiguiere added

comment:21 Changed on 04/16/2017 at 07:09:25 PM by trev

  • Blocked By 5147 added

comment:22 Changed on 04/18/2017 at 09:14:32 AM by trev

  • Blocked By 5149 added

comment:23 Changed on 04/20/2017 at 10:42:07 AM by trev

  • Blocked By 5159 added

comment:24 Changed on 04/20/2017 at 12:50:16 PM by trev

  • Blocked By 5160 added

comment:25 Changed on 04/24/2017 at 02:25:51 PM by trev

  • Blocked By 5174 added

comment:26 Changed on 04/24/2017 at 02:32:41 PM by trev

  • Blocked By 5175 added

comment:27 Changed on 04/25/2017 at 02:08:49 PM by trev

  • Blocked By 5185 added

comment:28 Changed on 04/29/2017 at 07:31:54 PM by trev

  • Blocked By 5201 added

comment:29 Changed on 05/06/2017 at 08:33:56 AM by trev

  • Blocked By 5216 added

comment:30 Changed on 05/18/2017 at 02:17:51 PM by trev

  • Blocked By 5258 added

comment:31 Changed on 05/18/2017 at 02:27:27 PM by trev

  • Blocked By 5259 added

comment:32 Changed on 08/31/2017 at 10:36:35 AM by trev

  • Blocked By 5603 added

comment:33 Changed on 08/31/2017 at 10:45:07 AM by trev

  • Blocked By 5604 added

comment:34 Changed on 09/12/2017 at 02:12:17 PM by sergz

  • Blocked By 5661 added

comment:35 Changed on 09/12/2017 at 02:13:48 PM by sergz

  • Blocked By 5662 added

comment:36 Changed on 09/12/2017 at 02:38:20 PM by sergz

  • Blocked By 5664 added

comment:37 Changed on 09/19/2017 at 09:24:57 AM by trev

  • Blocked By 5732 added

comment:38 Changed on 10/11/2017 at 01:04:33 PM by oleksandr

  • Cc oleksandr added

comment:39 Changed on 10/17/2017 at 05:40:35 PM by hfiguiere

  • Blocked By 5870 added

comment:40 Changed on 02/27/2018 at 02:22:57 PM by hfiguiere

  • Blocked By 6429 added

comment:41 Changed on 08/27/2018 at 04:55:36 PM by hfiguiere

  • Blocked By 6888 added

comment:42 Changed on 08/29/2019 at 05:43:52 PM by sebastian

  • Keywords closed-in-favor-of-gitlab added
  • Resolution set to rejected
  • Status changed from new to closed

Sorry, but we switched to GitLab. If this issue is still relevant, please file it again in the new issue tracker.

Add Comment

Modify Ticket

Change Properties
Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
to The owner will be changed from (none).
 
Note: See TracTickets for help on using tickets.