Opened 5 years ago

Closed 3 years ago

#312 closed change (fixed)

[meta] Use standard JavaScript/EcmaScript features

Reported by: tschuster Assignee: tschuster
Priority: Unknown Milestone:
Module: Unknown Keywords: meta
Cc: Blocked By: #301, #427, #653, #1434, #1602, #2010, #2232, #2257, #2259, #2934, #3260, #3418, #3421
Blocking: Platform: Unknown / Cross platform
Ready: yes Confidential: no
Tester: Unknown Verified working: no
Review URL(s):

Description (last modified by tschuster)

The shared adblockplus code contains some amount of SpiderMonkey specific code. We should still allow ES6 code, because we already use a lot of those features. (e.g. let) When other browsers/engines catch up we may be able remove parts of the jshydra JS rewriting code.

  • for each #301
  • function () expression (function without {})
  • defineGetter defineSetter (should use Object.defineProperty)
  • Cu.import (in the far future we might be able to use modules)

Change History (21)

comment:1 Changed 5 years ago by tschuster

  • Description modified (diff)

comment:2 Changed 4 years ago by tschuster

  • Blocked By 427 added

comment:3 Changed 4 years ago by philll

Is the information in this issue complete and are we willing to do the changes? If yes, please set it to "ready". As explained in the meeting today, please also give some testing hints.

comment:4 Changed 4 years ago by tschuster

Okays sorry, for context: These are purely internal changes to the code to use different features. There should be no testing required, especially because it's should not be possible from an user/tester point of view to see any UI or behavior change at all. I am also working on this, so I am taking it. I am not sure it's easy to tell when we are done, but right now we still use JavaScript features that aren't standard.

comment:5 Changed 4 years ago by tschuster

  • Owner set to tschuster
  • Ready set
  • Type changed from defect to change

comment:6 Changed 4 years ago by philll

You maybe didn't get my point here: Testing is about proving your changes to a) do what they ought to and b) ensure the rest is still working as before. As each and every code change implies a risk of damaging some sort of functionality, you should always provide enough background and/or testing information to lead testers to be able to do the above. If you changes are at a very low level, just go up in the code logic until you can provide funtion-level hints. Please also note that a codereview can never replace testing. The mid-term goal here is to not allow any code change to get released without former testing.

comment:7 Changed 4 years ago by trev

  • Keywords meta added

comment:8 Changed 4 years ago by tschuster

  • Blocked By 653 added

comment:9 Changed 4 years ago by tschuster

  • Blocked By 1434 added

comment:10 Changed 4 years ago by tschuster

  • Blocked By 1602 added

comment:11 Changed 4 years ago by tschuster

  • Blocked By 2010 added

comment:12 Changed 4 years ago by trev

  • Blocked By 2013 added

comment:13 Changed 4 years ago by sebastian

  • Blocked By 2232 added

comment:14 Changed 4 years ago by sebastian

  • Blocked By 2013 removed

comment:15 Changed 4 years ago by sebastian

  • Blocked By 2257 added

comment:16 Changed 4 years ago by sebastian

  • Blocked By 2259 added

comment:17 Changed 3 years ago by tschuster

  • Blocked By 2934 added

comment:18 Changed 3 years ago by tschuster

  • Blocked By 3260 added

comment:19 Changed 3 years ago by sebastian

  • Blocked By 3418 added

comment:20 Changed 3 years ago by trev

  • Blocked By 3421 added
  • Platform set to Unknown / Cross platform
  • Tester set to Unknown

comment:21 Changed 3 years ago by sebastian

  • Resolution set to fixed
  • Status changed from new to closed

The last sub-issue has just been fixed. Therefore, closing the meta issue now.

Note: See TracTickets for help on using tickets.