Ember.js: рдПрдореНрдмрд░ 2.4 рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рддреНрд░реБрдЯрд┐

рдХреЛ рдирд┐рд░реНрдорд┐рдд 9 рдорд╛рд░реНрдЪ 2016  ┬╖  79рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: emberjs/ember.js

рдпрд╣ рддреНрд░реБрдЯрд┐ рдХреЗрд╡рд▓ рдРрдк рдХреЗ рд╕рдХреНрд░рд┐рдп рд╣реЛрдиреЗ рдФрд░ рдереЛрдбрд╝реА рджреЗрд░ рдЪрд▓рдиреЗ рдХреЗ рдмрд╛рдж рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдорд╛рд░реНрдЧреЛрдВ рдХреЗ рдмреАрдЪ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдХрд╛ рдореМрдХрд╛ рдорд┐рд▓рддрд╛ рд╣реИред рдпрд╣ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдХрдард┐рди рд╣реИ, рдпрд╣ рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рдмрд╛рдж "рдмрд╕ рд╣реЛрддрд╛ рд╣реИ" рд▓рдЧрддрд╛ рд╣реИред рд╣рдо рдЕрдкрдиреЗ рдЙрддреНрдкрд╛рджрди рдмрд┐рд▓реНрдб (ember.min.js) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕реЗ рдХреБрдЫ рдмрд╛рд░ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХрднреА рднреА рдбреАрдмрдЧ рдмрд┐рд▓реНрдб (ember.debug.js) рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдпрд╣рд╛рдБ рд╕реНрдЯреИрдХ рд╣реИ:

 "Cannot read property '_lookupFactory' of undefined"

TypeError: Cannot read property '_lookupFactory' of undefined
    at i (https://qa-integration.batterii.com/assets/vendor-69da94618271be1c4338db3f0e942865.js:7:2712)
    at o (https://qa-integration.batterii.com/assets/vendor-69da94618271be1c4338db3f0e942865.js:7:2833)
    at Object.a [as default] (https://qa-integration.batterii.com/assets/vendor-69da94618271be1c4338db3f0e942865.js:7:2888)
    at Object.i [as subexpr] (https://qa-integration.batterii.com/assets/vendor-69da94618271be1c4338db3f0e942865.js:6:4717)
    at a (https://qa-integration.batterii.com/assets/vendor-69da94618271be1c4338db3f0e942865.js:15:16476)
    at i (https://qa-integration.batterii.com/assets/vendor-69da94618271be1c4338db3f0e942865.js:15:16302)
    at n (https://qa-integration.batterii.com/assets/vendor-69da94618271be1c4338db3f0e942865.js:15:16189)
    at Object.r [as acceptHash] (https://qa-integration.batterii.com/assets/vendor-69da94618271be1c4338db3f0e942865.js:15:16075)
    at n (https://qa-integration.batterii.com/assets/vendor-69da94618271be1c4338db3f0e942865.js:15:26102)
    at Object.a.inline (https://qa-integration.batterii.com/assets/vendor-69da94618271be1c4338db3f0e942865.js:15:26664)

рдпрд╣ рд▓реБрдХрдЕрдк-рд╣реЗрд▓реНрдкрд░ рдХреЛ рд╡рд╛рдкрд╕ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИред рдХреБрдЫ рд╕рдордп рдореИрдВ рдЗрд╕реЗ рдПрдХ рдмреНрд░реЗрдХрдкреЙрдЗрдВрдЯ рдкрд░ рдкрдХрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рднрд╛рдЧреНрдпрд╢рд╛рд▓реА рд░рд╣рд╛ рд╣реВрдВ, рдореИрдВрдиреЗ рджреЗрдЦрд╛ рд╣реИ рдХрд┐ рдиреНрдпреВрдирддрдо owner рдкреИрд░рд╛рдореАрдЯрд░ рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдмрд╛рдХреА env рд╕рд╣реА рд▓рдЧ рд░рд╣рд╛ рд╣реИред рджреЗрдЦ:

image
image

рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмрд╣реБрдд рдХрдо рд╣реИред рдЗрд╕реЗ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рдХреЗ рд╕рд╛рде рдЖрдиреЗ рд╡рд╛рд▓реЗ рд▓рдШреБ, рдХреНрдпрд╛ рд╕реНрдЯреИрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА рд╣реИ рдЬреЛ рдЗрд╕реЗ рдбреАрдмрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рд╣рд╛рдпрдХ рд╣реЛ рд╕рдХрддреА рд╣реИ?

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

v2.4.3 рдХреЛ https://github.com/emberjs/ember.js/pull/1388 рдореЗрдВ рдЬреЛрдбрд╝реЗ рдЧрдП рдХрд╛рдо рдХреЗ рд╕рд╛рде рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ

рд╕рднреА 79 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдФрд░ рднреА рдЕрдЬреАрдм рдмрд╛рдд рд╣реИ рдХрд┐ рдЖрдк рдЕрдВрддрд┐рдо рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдореЗрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд▓рд╛рдЗрди 8786 рдкрд░ var s = "helper:" + e; ... рд▓реЗрдХрд┐рди рдХрд┐рд╕реА рднреА рддрд░рд╣ рдЕрдЧрд▓реА рдкрдВрдХреНрддрд┐ рдореЗрдВ s рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИред : рднреНрд░рдорд┐рдд: рдпрд╣ рд▓рдЧрднрдЧ рд╡реИрд╕рд╛ рд╣реА рд╣реИ рдЬреИрд╕реЗ рдХрд┐ рд╕реНрдЯреИрдХ рдмреЛрд░ рд╣реЛ рд░рд╣рд╛ рд╣реИ ... рдпрд╛ рдХреНрд░реЛрдо рдбреАрдмрдЧрд░ рд╕рд┐рд░реНрдл рдЧрд▓рдд рд╣реЛ рд░рд╣рд╛ рд╣реИред

рдореИрдВрдиреЗ рднреА рдХреБрдЫ рдРрд╕рд╛ рд╣реА рджреЗрдЦрд╛ рд╣реИред рд╢рд╛рдпрдж рд╣реА рдХрднреА рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдХреИрд╕реЗ рдкреБрди: рдкреЗрд╢ рдХрд┐рдпрд╛ рдЬрд╛рдПред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдореЗрд░реЗ рдРрдк рдХреА рд╕рдорд╕реНрдпрд╛ рд╣реИ рдпрд╛ рдХреБрдЫ рдФрд░ рд╣реИред

@raido рдЕрдкрдиреЗ рдвреЗрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдореЗрд░рд╛ рд╣реИ (IE рд╡рд┐рдлрд▓рддрд╛ _lookupFactory )? рдХреНрдпрд╛ рдЖрдк рдПрдореНрдмрд░ 2.4.1 рдкрд░ рд╣реИрдВ? рдХреНрдпрд╛ рдЖрдкрдиреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдПрдореНрдмрд░ рдХреЗ рдкреВрд░реНрд╡ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдкрд░ рджреЗрдЦрд╛ рд╣реИ?

рд╣рдордиреЗ рдПрдореНрдмрд░ 2.2 => рдПрдореНрдмрд░ 2.4 рд╕реЗ рдЕрдкрдЧреНрд░реЗрдб рдХрд┐рдпрд╛ рдФрд░ рдХреБрдЫ рджрд┐рдиреЛрдВ рдХреЗ рднреАрддрд░ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╣рдорд╛рд░реЗ рд╕рд░реНрд╡рд░ рд▓реЙрдЧреНрд╕ рдореЗрдВ рдХрд╛рдлреА рд╣рдж рддрдХ рджреЗрдЦрдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ред

: +1: рдЗрд╕рдиреЗ рдЦреБрдж рдХреЛ рджреЗрдЦрд╛ рдФрд░ рдЕрдкрдиреЗ рдмрдЧрд╝рд▓ рдореЗрдВ, рдореЗрд░реЗ рдмрдЧрд╝рд▓ рдХреЗ рд▓реЙрдЧ рд╕реЗ,

11779      if (validateLazyHelperName(name, owner, env.hooks.keywords)) {
11780        var helperName = 'helper:' + name;
11781        if (owner.hasRegistration(helperName, options)) {
11782          helper = owner._lookupFactory(helperName, options);
11783        }
11784      }
11785    }

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдХрд╣рддреЗ рд╣реИрдВ, рдХреИрд╕реЗ owner undefined рдСрди рд▓рд╛рдЗрди 11782 рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрджрд┐ рдпрд╣ owner.hasRegistration рд▓рд╛рдЗрди рд╕реЗ рдкрд╣рд▓реЗ рдорд┐рд▓рд╛ рд╣реЛ?

рдЗрд╕реА рддрд░рд╣ рдЗрд╕реЗ рдЙрддреНрдкрд╛рджрди рдкрд░ рдХреЗрд╡рд▓ рддрдм рджреЗрдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рдЦрдирди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдКрдкрд░ рд╕реЗ рд╕реНрд░реЛрддрдореИрдк рдЖрддрд╛ рд╣реИ)ред

рд▓реЙрдЧ рджрд┐рдЦрд╛рддреЗ рд╣реИрдВ рдХрд┐ рд╣рдордиреЗ рдЗрд╕реЗ рдХреЗрд╡рд▓ рдХреНрд░реЛрдо рдкрд░ рдЕрдм рддрдХ рджреЗрдЦрд╛ рд╣реИред

@workmanw рд╣рд╛рдБ, рдореЗрд░реА рддреНрд░реБрдЯрд┐ рднреА _lookupFactory рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ рдФрд░ рд╕реНрдЯреИрдХрдЯреНрд░реЗрд╕ рдореЗрдВ рд▓реБрдХрдЕрдк рд╣реЗрд▓реНрдкрд░ рдХреЛ рджреЗрдЦ рд░рд╣рд╛ рд╣реИред

рдЙрддреНрдкрд╛рджрди рдирд┐рд░реНрдорд╛рдг рд╕реЗ рд▓реЙрдЧ, рдЕрднреА v2.3.0 рдХреЗ рд╕рд╛рде рд╣реБрдЖ

TypeError: Cannot read property '_lookupFactory' of undefined
    at o (vendor-6292d0672068025de3c6d57c1fb505d0.js:7)
    at Object.a [as default] (vendor-6292d0672068025de3c6d57c1fb505d0.js:7)
    at Object.r [as lookupHelper] (vendor-6292d0672068025de3c6d57c1fb505d0.js:6)
    at Object.D [as inline] (vendor-6292d0672068025de3c6d57c1fb505d0.js:16)
    at Object.i.inline (vendor-6292d0672068025de3c6d57c1fb505d0.js:16)
    at l.populateNodes (vendor-6292d0672068025de3c6d57c1fb505d0.js:16)
    at l.render (vendor-6292d0672068025de3c6d57c1fb505d0.js:16)
    at i (vendor-6292d0672068025de3c6d57c1fb505d0.js:16)
    at vendor-6292d0672068025de3c6d57c1fb505d0.js:16
    at s (vendor-6292d0672068025de3c6d57c1fb505d0.js:16)

рдореИрдВ 2.4.2 рдкрд░ рдЗрд╕ рдореБрджреНрджреЗ рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рдЗрд╕реЗ рдХрднреА-рдХрднреА рдЙрддреНрдкрд╛рджрди рдореЗрдВ рджреЗрдЦрдХрд░, рдЕрднреА рддрдХ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдирд╣реАрдВ рджреЗрдЦрд╛ рдЧрдпрд╛ рд╣реИред рдХреНрдпрд╛ рдпрд╣ рдПрдореНрдмрд░-рдирд┐рд░реАрдХреНрд╖рдХ рдХреЗ рдХрд╛рд░рдг рд╣реЛ рд╕рдХрддрд╛ рд╣реИ?

рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП: 2.3.x рдкрд░ рдпрд╣ рдХрднреА рдирд╣реАрдВ рдерд╛ рдФрд░ рд╕реНрдЯреИрдХ рдПрдХ рд╣реА рд╣реИ (_lookupFactory)

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдореИрдВ рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдПрдХ рдПрдореНрдмрд░-рдЗрдВрд╕реНрдкреЗрдХреНрдЯрд░ рдореБрджреНрджрд╛ рдирд╣реАрдВ рд╣реИ, рдЬрдмрдХрд┐ рдирд┐рд░реАрдХреНрд╖рдХ рдЕрдХреНрд╖рдо рдерд╛ рддреНрд░реБрдЯрд┐ рд╣реБрдИред

2.4.1 рдФрд░ 2.4.2 рдореЗрдВ рдмрдЧ рдХреА рдкреБрд╖реНрдЯрд┐ рдХреАред рдХреЗрд╡рд▓ mins js рдХреЗ рд╕рд╛рде рд╣реЛрддрд╛ рд╣реИ

@jcbvm @ gdub22 рдХреНрдпрд╛ рдЖрдк рдореЗрдВ рд╕реЗ рдХреЛрдИ рдЗрд╕реЗ рд▓рдЧрд╛рддрд╛рд░ рдкреБрди: рдкреЗрд╢ рдХрд░ рдкрд╛рдпрд╛ рд╣реИ? рдореИрдВрдиреЗ рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ рдФрд░ рд╣рдорд╛рд░реЗ рдРрдк рдореЗрдВ рдПрдХ рдПрдореНрдмрд░-рдЯреНрд╡реАрдбрд▓ рдмрдирд╛рдиреЗ рдХреА рдЙрдореНрдореАрдж рдХреЗ рд╕рд╛рде рдХрдо рд╕реЗ рдХрдо рдПрдХ рд╕реБрд╕рдВрдЧрдд рд╕реЗрдЯ рдЦреЛрдЬрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдХреЛрдИ рднрд╛рдЧреНрдп рдирд╣реАрдВ рд╣реИред

рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдФрд░ рд╢рд╛рдпрдж рдПрдХ рд▓рд╛рд▓ рд╣реЗрд░рд┐рдВрдЧ рд╣реИ, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдЬрдмрдХрд┐ рдПрдХ рд╕рд╣рд╛рдпрдХ рдХреЛ рд╕реМрдВрдкрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдШрдЯрдХ рд╕рд╣рд╛рдпрдХ ( {{component componentName}} ) рдХреЗ рд╕рд╛рде рдПрдХ рдкреВрд░реНрд╡рдЬ рдШрдЯрдХ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

@workmanw рдЗрд╕реА рддрд░рд╣ рд▓рдЧрд╛рддрд╛рд░ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реИрдВ, рд╣рдо {{component}} рд╕рд╣рд╛рдпрдХ рдХреЛ рд╣рдорд╛рд░реЗ рдРрдк рдкрд░ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред

@workmanw рд▓рдЧрд╛рддрд╛рд░ 100% рдирд╣реАрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдЗрд╕реЗ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдШрдЯрдХ рддрдХ рд╕реАрдорд┐рдд рдХрд░ рджрд┐рдпрд╛ рд╣реИ, рдЬреЛ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рдореЗрдВ рдШрдЯрдХ рд╕рд╣рд╛рдпрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЛрддрд╛ рд╣реИред

рдКрдкрд░ рджрд┐рдП рдЧрдП рдлрд╝рдВрдХреНрд╢рди рдХреЛ Uglify рдЯреНрд░рд╛рдВрд╕рдкрд╛рдЗрд▓реНрд╕:

function n(e,t,r,n){
  var i=r.helpers[e];
  if(!i){
    var o=r.owner;
    if (a(e,o,r.hooks.keywords)){
      var s="helper:"+e;
      o.hasRegistration(s,n) && (i=o._lookupFactory(s,n));
    }
  }
  return i;
}

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рджреЛрдиреЛрдВ рд╕рдВрдкрддреНрддрд┐ owner рдкрд░ рдПрдХ рдПрдХрд▓ рдкрдВрдХреНрддрд┐ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХреА рдЧрдИ рд╣реИрдВред рдореЗрд░рд╛ рдЕрдиреБрдорд╛рди рд╣реИ рдХрд┐ рджреБрд░реНрдШрдЯрдирд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкрд╣рд▓реЗ рдПрдХ рдкрд░ рд╣реЛрддреА рд╣реИ, рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрддрдореИрдк рдирд┐рд╖реНрдард╛ рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИред

рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрдкрд╛рджрд┐рдд: рдЖрд╣, рд▓реЗрдХрд┐рди рджреБрд░реНрдШрдЯрдирд╛ _lookupFactory property рд▓рд┐рдП рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореЗрд░реА рдЕрдЯрдХрд▓реЗрдВ рдЧрд▓рдд рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдЕрдЬреАрдм рддрд░рд╣ рд╕реЗред

@ ef4 рд╣реЛ рд╕рдХрддрд╛ рд╣реИ ... рд▓реЗрдХрд┐рди рдХреБрдЫ рдмрд╛рд░ рдореИрдВрдиреЗ рдбрд┐рдмрдЧрд░ рдореЗрдВ рдЗрд╕ рдЕрдкрд╡рд╛рдж рдХреЛ рдкрдХрдбрд╝рд╛ рд╣реИ, o (рдЖрдкрдХреЗ рд╕реНрдирд┐рдкреЗрдЯ рдореЗрдВ) рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИ, рд▓реЗрдХрд┐рди r.owner рдПрдХ рд╡реИрдз рд╕реНрд╡рд╛рдореА рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореИрдВ r.owner.hasRegistration(s,n) && (r.owner._lookupFactory(s,n)); рдХрд░ рдкрд╛ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдХреНрд▓рд╛рд╕ рд▓реЗ рдкрд╛ рд░рд╣рд╛ рд╣реВрдВред рдпрд╣ рд╕рдордЭрд╛ рдЧрдпрд╛ рдХрд┐ рдХреНрд░реЛрдо рджреНрд╡рд╛рд░рд╛ рдкрдХрдбрд╝реЗ рдЧрдП рдЕрдкрд╡рд╛рдж рдкрд░ рдЯреВрдЯ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж ... рдЗрд╕рд▓рд┐рдП рдбрд┐рдмрдЧрд░ рднреНрд░рд╛рдордХ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

@ ef4 рд╣рд╛рдВ, рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рдЕрдЬреАрдм рд╣реИред

рдХреНрдпрд╛ V8 рдЗрд╕реЗ рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рджреВрд░ рдХрд░ рд╕рдХрддрд╛ рд╣реИ? V8, @stefanpenner рдХреА рдХрд╛рд▓реА рдХрд▓рд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреМрди рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЬрд╛рдирддрд╛ рд╣реИ?

рдпрджрд┐ рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рд╣реЛрдиреЗ рд╡рд╛рд▓рд╛ рд▓рд╛рдЗрди рдХреЛрдб рд╣реИ:

o.hasRegistration(s,n) && (i=o._lookupFactory(s,n));

рдлрд┐рд░:

  1. o.hasRegistration(s,n) рдкрд╣рд▓реЗ рд╣реА рдПрдХ рд╕рддреНрдп рдореВрд▓реНрдп рд╡рд╛рдкрд╕ рдЖ рдЧрдпрд╛ рд╣реИ; рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХреА
  2. o рди рддреЛ null рдпрд╛ undefined ; рдЗрд╕рд▓рд┐рдпреЗ
  3. Cannot read property '_lookupFactory' of undefined рдпрд╛ рддреЛ рдЧрд▓рдд рд╣реИ рдпрд╛ v8 рдореЗрдВ рдмрдЧ рд╣реИ

рдХреНрдпрд╛ рдореБрдЭрд╕реЗ рд╕рд╛рдлрд╝ - рд╕рд╛рдлрд╝ рдХреБрдЫ рдЪреАрдЬрд╝ рдЪреВрдХ рд░рд╣реА рд╣реИ?

рдЬрд┐рди рд▓реЛрдЧреЛрдВ рдиреЗ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд┐рдпрд╛ рд╣реИ, рдЙрдирдХреЗ рд▓рд┐рдП Chrome рдХрд╛ рдХреМрди рд╕рд╛ рд╕рдВрд╕реНрдХрд░рдг рдЪрд▓ рд░рд╣рд╛ рд╣реИ? рдХреНрдпрд╛ рдЖрдкрдиреЗ рдЗрд╕реЗ рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕, IE рдпрд╛ рд╕рдлрд╛рд░реА рдореЗрдВ рдкреБрди: рдкреЗрд╢ рдХрд┐рдпрд╛ рд╣реИ?

@wycats рдореБрдЭреЗ рдХреБрдЫ рднреА рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рджрд┐рдЦ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдЖрдк рдЧрд╛рдпрдм рд╣реИрдВред рдпреЗ рд╡рд╣реА рдирд┐рд╖реНрдХрд░реНрд╖ рд╣реИрдВ, рдЬрд┐рди рдкрд░ рдореИрдВ рдкрд╣реБрдВрдЪрд╛ рдерд╛ред рд╣рдордиреЗ рдХреЗрд╡рд▓ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдХреНрд░реЛрдо рдирд╡реАрдирддрдо (48) рдкрд░ рд▓реЙрдЧ рдЗрди рдХрд░рдХреЗ рджреЗрдЦрд╛ рд╣реИред рдореЗрд░реЗ рдкреНрд░рдЬрдирди рдкрд░реАрдХреНрд╖рдг рдореЗрдВ, рдореИрдВ 48.0.2564.116 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рдерд╛ред рдореИрдВрдиреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕, IE рдпрд╛ рд╕рдлрд╛рд░реА рдХреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХреА, рд▓реЗрдХрд┐рди рдореИрдВ рдЙрдиреНрд╣реЗрдВ рдЖрдЬрд╝рдорд╛рдКрдВрдЧрд╛ рдФрд░ рд╡рд╛рдкрд╕ рд░рд┐рдкреЛрд░реНрдЯ рдХрд░реВрдВрдЧрд╛ред

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдореИрдВ рдПрдХ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд╕реНрдпрд╛ рдХреЛ рдЖрд╕рд╛рди рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдпрд╣ рдорджрджрдЧрд╛рд░ рд╣реЛрдЧрд╛, рддреЛ рдореИрдВ рдПрдХ рдпрд╛ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рд╡рд┐рдлрд▓рддрд╛рдУрдВ рдХреЛ рдПрдХ рдмреНрд░реЗрдХрдкреЙрдЗрдВрдЯ рдкрд░ рд░реЛрдХ рд╕рдХрддрд╛ рд╣реВрдВ, рдФрд░ рдЕрдЧрд░ рдХреЛрдИ рдХреНрд░реЛрдо рдХреНрд░реЛрдо рдбрд┐рдмрдЧрд░ рдореЗрдВ рдШреВрдордирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рддреЛ рд╕реНрдХреНрд░реАрдирд╢реЛ рдкрд░ рдХреВрдж рд╕рдХрддрд╛ рд╣реИред рдХрднреА-рдХрднреА рдореИрдВ рдЗрд╕реЗ рдПрдХ рдорд┐рдирдЯ рдореЗрдВ 3 рдмрд╛рд░ рдкреБрди: рдкреЗрд╢ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред рдХрднреА-рдХрднреА рдЗрд╕рдореЗрдВ 20 рдорд┐рдирдЯ рдпрд╛ рдЙрд╕рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИред

@wycats рдареАрдХ рд╣реИред рдореИрдВрдиреЗ рдЖрдЦрд┐рд░реА рд╕рдордп рдХреНрд░реЛрдо, рд╕рдлрд╛рд░реА рдФрд░ рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ рдореЗрдВ рдмрд┐рддрд╛рдпрд╛ред рдореИрдВ рдЗрд╕реЗ рдХреНрд░реЛрдо рдореЗрдВ рдХрдИ рдмрд╛рд░ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ рдФрд░ рд╕рдлрд╛рд░реА рдФрд░ рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ рдореЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдирд╣реАрдВред рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдирд┐рд░реНрдгрд╛рдпрдХ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЕрдзрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рдХреНрд░реЛрдо рд╡рд┐рд╢рд┐рд╖реНрдЯ рдореБрджреНрджреЗ рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░ рд░рд╣рд╛ рд╣реИред

рдпрд╣ рдкреВрд░реА рдмрд╛рдд рдореБрдЭреЗ http://yehudakatz.com/2010/01/02/the-craziest-fing-bug-ive-ever-seen/ рдХреА рдпрд╛рдж рджрд┐рд▓рд╛рддреА рд╣реИ

рдореИрдВ рдЗрд╕реЗ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реВрдВред рдореЗрд░реЗ рд▓рд┐рдП рдпрд╣ рдЖрдо рддреМрд░ рдкрд░ рддрдм рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдРрдк рдмреВрдЯ рдХрд░рддрд╛ рд╣реИред рдХрдИ рдмрд╛рд░ рдРрдк рд░реАрд▓реЛрдб рдХрд░рдирд╛ рд╢рд╛рдпрдж рдЗрд╕реЗ рдХреНрд░реИрд╢ рдХрд░ рджреЗрддрд╛ рд╣реИ, рдлрд┐рд░ рднреА рдпрд╣ рд╕реБрд╕рдВрдЧрдд рдирд╣реАрдВ рд╣реИред рдпрд╣ рдХреЗрд╡рд▓ рдорд┐рдирдЯреЛрдВ рдореЗрдВ 5 рдмрд╛рд░ рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ рдЖрдзрд╛ рдШрдВрдЯрд╛ рд▓реЗ рд╕рдХрддрд╛ рд╣реИред рдореИрдВрдиреЗ рдирд╡реАрдирддрдо рдХреНрд░реЛрдо рдкрд░ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ред

@workmanw рдореИрдВ рдЙрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдореЛрдб рдореЗрдВ рд░рд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рдиреЗ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХрд░реВрдВрдЧрд╛, рдЗрд╕рд╕реЗ рд╣рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдЬрд╛рдирдиреЗ рдореЗрдВ рдорджрдж рдорд┐рд▓ рд╕рдХрддреА рд╣реИред рдХрд┐рд╕ рдмрд┐рдВрджреБ рдкрд░ рд╣рдореЗрдВ рдЕрдкрдиреЗ v8 рджреЛрд╕реНрддреЛрдВ рдХреЛ рднреА рдкрд┐рдВрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рд▓реЗрдХрд┐рди рдЙрд╕рдХреЗ рд▓рд┐рдП, рдПрдХ рдкреНрд░рдЬрдирди (рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдПрдХ рдкреВрд░реНрдг рдРрдк) рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИред

рд╡рд┐рд╢рд┐рд╖реНрдЯ рдореЛрдб рдореЗрдВ рдлрд╝рдВрдХреНрд╢рди рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдзреАрд░реЗ-рдзреАрд░реЗ v8 рдХреЗ рдХреБрдЫ рд╣рд┐рд╕реНрд╕реЛрдВ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдмрдЧ рдмрдВрдж рд╣реЛ рдЧрдпрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВред рдпрд╣ рд╣рдореЗрдВ рдореВрд▓ рдХрд╛рд░рдг рдХреЗ рдХрд░реАрдм рд▓рд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ред

рдкрд╣рд▓реЗ рдореИрдВ рд╕рд┐рд░реНрдл inlining рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рддрд╛ рдерд╛, рдЗрд╕рдХреЗ рд╕рд╛рде рдХреНрд░реЛрдорд╕ v8 рдЪрд▓рд╛рдХрд░ рдЕрдХреНрд╖рдо рдХрд░рддрд╛ рдерд╛: --nouse_inlining (рдореЗрд░рд╛ рдЕрдиреБрдорд╛рди рд╣реИ рдХрд┐ рдпрд╣ рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ)

/Applications/Google\ Chrome\ Canary.app/Contents/MacOS/Google\ Chrome\ Canary --js-flags="--nouse_inlining" --user-data-dir=/tmp/foobar

рджреВрд╕рд░реА рддрд░рдл, рдХреНрд░реИрдВрдХрд╢рд╛рдлреНрдЯ рдХреЛ рдПрдХ рд╕рд╛рде --crankshaft=false рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ

/Applications/Google\ Chrome\ Canary.app/Contents/MacOS/Google\ Chrome\ Canary --js-flags="--crankshaft=false" --user-data-dir=/tmp/foobar

@stefanpenner

рдореИрдВрдиреЗ рдХреНрд░реЛрдо 48 (рдХреИрдирд░реА рдХреЗ рдмрдЬрд╛рдп) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ред рдпрджрд┐ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдореИрдВ рдХреИрдирд░реА рдХреЗ рд╕рд╛рде рдкреНрд░рдпрд╛рд╕ рдХрд░реВрдВ, рддреЛ рдореБрдЭреЗ рдЦреБрд╢реА рд╣реЛрдЧреАред

--nouse_inlining рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рдерд╛ред
--crankshaft=false рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо

рдХрд┐рд╕ рдмрд┐рдВрджреБ рдкрд░ рд╣рдореЗрдВ рдЕрдкрдиреЗ v8 рджреЛрд╕реНрддреЛрдВ рдХреЛ рднреА рдкрд┐рдВрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рд▓реЗрдХрд┐рди рдЙрд╕рдХреЗ рд▓рд┐рдП, рдПрдХ рдкреНрд░рдЬрдирди (рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдПрдХ рдкреВрд░реНрдг рдРрдк) рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИред

рдореИрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдордЭ рдЧрдпрд╛ред рдореИрдВрдиреЗ рд▓рдЧрднрдЧ 4 рдШрдВрдЯреЗ рдмрд┐рддрд╛рдП рд╣реИрдВ "рдЖрдЧреЗ рдмрдврд╝рдиреЗ" рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдПрдХ рдПрдореНрдмрд░-рдЯреНрд╡рд┐рдбрд▓ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ рдЗрд╕реЗ рдкреБрди: рдкреЗрд╢ рдХрд░рддрд╛ рд╣реИред рдореБрдЭреЗ рдмрд╕ рдЗрддрдирд╛ рд╕рдордЭ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рдЕрдм рдореИрдВ рдкреНрд░рдЬрдирди рдХрджрдо рдХреЛ рдХрдо рдХрд░рдХреЗ рдкреНрд░рдЬрдирди рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдРрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ "рдкреАрдЫреЗ рдХреА рдУрд░" рдХрд╛рдо рд╢реБрд░реВ рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рд╣рдорд╛рд░реЗ рдРрдк рд╕реЗ рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рдмрд╛рд╣рд░ рдирд┐рдХрд▓ рд╕рдХрддрд╛ рд╣реИред

--Nouse_inlining рдХреЗ рд╕рд╛рде рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рдерд╛ред

рдЕрдкреЗрдХреНрд╖рд┐рдд рд▓рдЧрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕рдХреА рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреЗ рдЗрдирд▓рд╛рдЗрдирд┐рдВрдЧ рдмрдЧ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред

- рдХреНрд░реИрдВрдХрд╢рд╛рдлреНрдЯ = рдЭреВрда рдХреЗ рд╕рд╛рде рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред

рдпрд╣ рдЧрд▓рдд рдЭрдВрдбрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдореБрдЭреЗ рдпрд╛рдж рдирд╣реАрдВ рдЖ рд░рд╣рд╛ рд╣реИред

рдореИрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдордЭ рдЧрдпрд╛ред рдореИрдВрдиреЗ рд▓рдЧрднрдЧ 4 рдШрдВрдЯреЗ рдмрд┐рддрд╛рдП рд╣реИрдВ "рдЖрдЧреЗ рдмрдврд╝рдиреЗ" рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдПрдХ рдПрдореНрдмрд░-рдЯреНрд╡рд┐рдбрд▓ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ рдЗрд╕реЗ рдкреБрди: рдкреЗрд╢ рдХрд░рддрд╛ рд╣реИред рдореБрдЭреЗ рдмрд╕ рдЗрддрдирд╛ рд╕рдордЭ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рдЕрдм рдореИрдВ рдкреНрд░рдЬрдирди рдХрджрдо рдХреЛ рдХрдо рдХрд░рдХреЗ рдкреНрд░рдЬрдирди рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдРрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ "рдкреАрдЫреЗ рдХреА рдУрд░" рдХрд╛рдо рд╢реБрд░реВ рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рд╣рдорд╛рд░реЗ рдРрдк рд╕реЗ рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рдмрд╛рд╣рд░ рдирд┐рдХрд▓ рд╕рдХрддрд╛ рд╣реИред

@workmanw рдХреНрдпрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди (рдпрд╛ рдРрдк рдХреЗ рд▓рд┐рдП URL) рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрджрдо рдХреЗ рд╕рд╛рде рд╣реИ?
рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕ рдЕрд▓рдЧрд╛рд╡ рдореЗрдВ рдкреНрд░рдЬрдирди рдореБрд╢реНрдХрд┐рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

A: sadpanda: рд╡рд░реНрдХ-рдЕрд░рд╛рдЙрдВрдб, рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдЕрдзрд┐рдХрддрдо рдПрдПрд╕рдЯреА рд╕реЗ рдЕрдзрд┐рдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рдирд╛ рд╣реИ рдЬреЛ рдЗрдирд▓реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рд╕реЗ рдЖрдкрдХреЛ: рдЬрд╣рд╛рдЬ:

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдлрдВрдХреНрд╢рди рдХреЛ

"Pork chop porchetta rump, bacon turducken filet mignon tri-tip drumstick picanha beef ribs sausage salami. Leberkas beef landjaeger bresaola, sausage meatloaf pastrami frankfurter ribeye jowl turducken drumstick flank. Pork loin shank tongue leberkas ham strip steak salami swine short ribs cupim. Strip steak sausage turkey tenderloin, alcatra turducken porchetta ribeye brisket spare ribs rump salami ground round tail frankfurter. Kielbasa cow porchetta, hamburger jowl salami turducken capicola beef. Corned beef meatloaf ball tip landjaeger shank pork belly. Short loin kielbasa pig tail, brisket cupim salami andouille hamburger sausage short ribs."

@workmanw рдпрджрд┐ рдЖрдк рдХреИрдирд░реА рдореЗрдВ рднреА рдЬрд╛рдВрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЖрд╕рд╛рди рд╣реЛрдЧрд╛ред

@stefanpenner

рдЙрд╕ рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реНрдЯреНрд░рд┐рдВрдЧ рдбрд╛рд▓рдХрд░, рдЯреНрд░рд┐рдХ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП (рдЕрднреА, рдпреЗ рдУрд╡рд░рдЯрд╛рдЗрдо рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ)

рдЖрдВрддрд░рд┐рдХ рд▓реЛрдЧреЛрдВ рдХрд╛ рдЖрдкрдХрд╛ рдЬреНрдЮрд╛рди рдореБрдЭреЗ рд╡рд┐рд╕реНрдорд┐рдд рдХрд░рдиреЗ рд╕реЗ рдХрднреА рдирд╣реАрдВ рд░реЛрдХрддрд╛ рд╣реИред

@workmanw рдХреНрдпрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ?

рд╣рд╛рдБ, рдореБрдЭреЗ рдРрд╕рд╛ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрджрд┐ рдЖрдк рдореБрдЭреЗ рдереЛрдбрд╝рд╛ рд╕рд╛ рджреЗрддреЗ рд╣реИрдВ рддреЛ рдореИрдВ рд╣рдорд╛рд░реЗ рдкреВрд░реНрд╡-рдЙрддреНрдкрд╛рджрди рдкрд░рд┐рд╡реЗрд╢реЛрдВ рдореЗрдВ рд╕реЗ рдХреБрдЫ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХрд╛ рдкреНрд░рд╛рд╡рдзрд╛рди рдХрд░реВрдВрдЧрд╛ рдФрд░ рдбреЗрдЯрд╛ рдХреЛ рдкреНрд░рд╛рдЗрдореЗрдб рдХрд░реВрдВрдЧрд╛ред рдпрджрд┐ рд╕рдВрднрд╡ рд╣реЛ рддреЛ рд╕реНрд░реЛрдд рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдВ рдареАрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдирд┐рдЬреА рддреМрд░ рдкрд░ рдРрд╕рд╛ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

@workmanw рдпрджрд┐ рдЖрдк рдХреИрдирд░реА рдореЗрдВ рднреА рдЬрд╛рдВрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЖрд╕рд╛рди рд╣реЛрдЧрд╛ред

рдХрд┐рдпрд╛ рд╣реБрдЖред рдореИрдВрдиреЗ рдЭрдВрдбреЗ рдХреЗ рджреЛрдиреЛрдВ рдХреЗ рдмрд┐рдирд╛ рдХреИрдирд░реА "рд╕рдВрд╕реНрдХрд░рдг 51.0.2673.0 рдХреИрдирд░реА (64-рдмрд┐рдЯ)" рдХреА рдЬрд╛рдБрдЪ рдХреА рдФрд░ рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдореИрдВ рдЕрднреА рднреА рдЗрд╕реЗ рдкреБрди: рдкреЗрд╢ рдХрд░ рд╕рдХрд╛ред

рдпрджрд┐ рд╕рдВрднрд╡ рд╣реЛ рддреЛ рд╕реНрд░реЛрдд рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдВ рдареАрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдирд┐рдЬреА рддреМрд░ рдкрд░ рдРрд╕рд╛ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

рдпрд╣ рдореБрдЭреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдФрд░ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХреЛрдИ рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВред рдореИрдВ рдХрдореЛрдмреЗрд╢ рдирд┐рдореНрди рдХрд╛рд░реНрдп рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛:

  • V8 рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рдЬрдирди рддреИрдпрд╛рд░ рдХрд░реЗрдВ
  • рдПрдХ рдЕрдВрддрд░рд┐рдо [BUGFIX] рд╕рдорд╛рдзрд╛рди рдЦреЛрдЬреЗрдВ
  • (рдЖрдЬ / рдЗрд╕ рд╕рдкреНрддрд╛рд╣рд╛рдВрдд) рдореЗрдВ рдПрдХ V8 рд░рд┐рдкреЛрд░реНрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ

рдореЗрд░реЗ рд╕рд╛рдордиреЗ рдПрдХ рдРрдк рдХреЗ рд╕рд╛рде (рдЬрд╣рд╛рдВ рдореИрдВ рдХреЛрдб + рдПрдХреНрд╕рдкреНрд▓реЛрд░ рдмрджрд▓ рд╕рдХрддрд╛ рд╣реВрдВ) рдПрдХ рдЙрдЪрд┐рдд рдХрд╛рд░реНрдп рдХреА рдЦреЛрдЬ рдХрд░рдирд╛-рдЖрд╕рдкрд╛рд╕ / рдкреНрд░рдЬрдирди рд╕рдВрднрд╡ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

EDIT: рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдПрдореНрдмрд░ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ PR # 13118 рд╕реЗ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рд╣реИред рдпрд╣ рдЕрдм рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рдкреНрд░рдЬрдирди рдХреЗ рд▓рд┐рдП рдорд╛рдиреНрдп рдирд╣реАрдВ рд╣реИред рдпрджрд┐ рдХреЛрдИ рд╣рдорд╛рд░реЗ рдРрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкреБрди: рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддрд╛ рд╣реИ, рддреЛ рдореБрдЭрд╕реЗ рд╕рдВрдкрд░реНрдХ рдХрд░реЗрдВ рдФрд░ рдореИрдВ рд╢рд╛рдпрдж рдРрд╕рд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред


@stefanpenner рддреЛ рдореИрдВрдиреЗ рдкреГрд╖реНрда рдореЗрдВ рдХреБрдЫ рдХреЛрдб рдЗрдВрдЬреЗрдХреНрдЯ рдХрд░рдХреЗ рдкреНрд░рдЬрдирди рдХреЛ рдХрдо рдХрд░ рджрд┐рдпрд╛ред рдореЗрд░рд╛ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдХрд░реЛ, рдЕрдиреНрдпрдерд╛ рдпрд╣ рдПрдХ рдмреБрд░рд╛ рд╕рдкрдирд╛ рд╣реЛрддрд╛ред

рдпрд╣ рдЕрднреА рднреА 100% рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдирд╣реАрдВ рд╣реИред

1) рдЗрд╕ URL рдХреЛ рджреЗрдЦреЗрдВ: https://qa-integration.batterii.com/#/community/MTpDb21tdW5pdHksOTAwMQ/room/MTpSb29tLDEVNzQ2MzAwMQ/wall/MTpSb29tLDE5zz2zz2zz2zz2zz2zz2zz2z

2) рдИрдореЗрд▓ рд╕реЗ рд▓реЙрдЧрд┐рди рдХрд░реЗрдВ: [email protected] рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб: tomster1 ред рдЖрдкрдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рджрд┐рдЦрдиреЗ рд╡рд╛рд▓реЗ рдкреЗрдЬ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:

image

3) рдЙрдкрд░реЛрдХреНрдд рдкреЗрдЬ рдкрд░ рд▓реЙрдЧ рдЗрди рдФрд░ рд▓реИрдВрдбрд┐рдВрдЧ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рд░рд┐рдлреНрд░реЗрд╢ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА (рддрд╛рдХрд┐ рдЖрдк рдЙрд╕ рдкреЗрдЬ рд╕реЗ рд╕рд╛рдл рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░реЗрдВ)ред

4) рдЕрдкрдирд╛ рдХреНрд░реЛрдо рдбреАрдмрдЧрд░ рдЦреЛрд▓реЗрдВ рдФрд░ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЪрд▓рд╛рдПрдБ:


(function() {
var room = 'MTpSb29tLDE5NzQ2MzAwMQ',
    wall = 'MTpSb29tLDE5NzQ2MzAwMSxXYWxsLDEwMDAx',
    wallitem = 'MTpXYWxsSXRlbSwxOTg0NjMwMDQ';

function promiseTimer(ms) {
  return new Ember.RSVP.Promise(function(resolve) {
    Ember.run.later(resolve, ms);
  });
}

function timedTransition() {
  return BC.router.transitionTo.apply(BC.router, arguments).then(function() {
    return promiseTimer(800);
  });
}

function takeActions() {
  var downloadUrl = window.wallitemRecord.get('downloadUrl');
  window.open(downloadUrl);
  promiseTimer(1400).then(function() {
    return timedTransition('wall.wallitem', room, wall, wallitem);
  }).then(function() {
    return timedTransition('wall', room, wall);
  }).then(function() {
    return timedTransition('wall.wallitem', room, wall, wallitem);
  }).then(function() {
    return timedTransition('wall', room, wall);
  }).then(function() {
    return timedTransition('wall.wallitem', room, wall, wallitem);
  }).then(function() {
    return timedTransition('wall', room, wall);
  }).then(function() {
    return timedTransition('wall.wallitem', room, wall, wallitem);
  }).then(function() {
    return timedTransition('wall', room, wall);
  }).then(function() {
    return timedTransition('wall.wallitem', room, wall, wallitem);
  }).then(function() {
    return timedTransition('wall', room, wall);
  });
}

BC.store.findRecord('wallitem', wallitem).then(function(wallitem) { window.wallitemRecord = wallitem; });
$('<button id="crash-reproduce">Crash Reproduce</button>').appendTo('.top-right-nav');
$('#crash-reproduce').on('click', takeActions);
})();

5) рдХреНрд░реЛрдо рдбрд┐рдмрдЧрд░ рдХреЛ "рдкрдХрдбрд╝реЗ рдЧрдП рдЕрдкрд╡рд╛рджреЛрдВ рдкрд░ рд░реЛрдХреЗрдВ" рдкрд░ рд╕реЗрдЯ рдХрд░реЗрдВред

6) рдЗрдВрдЬреЗрдХреНрд╢рди рдХреЛрдб рдХреЛ рдКрдкрд░реА рджрд╛рдПрдВ рдХреЛрдиреЗ рдореЗрдВ рдПрдХ рдмрдЯрди рдЬреЛрдбрд╝рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЙрд╕ рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред рдкрд╣рд▓реЗ рдПрдХ рдирдпрд╛ рдЯреИрдм рдПрдХ рдлрд╛рдЗрд▓ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦреБрд▓реЗрдЧрд╛ рдФрд░ рдЯреНрд░рд┐рдЧрд░ рдХрд░реЗрдЧрд╛, рдлрд┐рд░ рдПрдХ рдореЛрдбрд▓ рдбрд╛рдпрд▓реЙрдЧ рдХреЛ рдХрдИ рдмрд╛рд░ рдЦреЛрд▓рдирд╛ рдФрд░ рдмрдВрдж рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдореЛрдбрд▓ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ "рд░реВрдЯреЗрдмрд▓" рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдмрджрд▓рддреЗ рд╣реБрдП рдорд╛рд░реНрдЧ рдХрд╛ рднреА рдЕрд╡рд▓реЛрдХрди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдореЛрдбрд▓ рдХреЗ рджреВрд╕рд░реЗ рдпрд╛ рддреАрд╕рд░реЗ рдЦреБрд▓реЗ рдкрд░, рдЖрдкрдХреЛ рдЕрдкрд╡рд╛рдж рдХреЛ рд╣рд┐рдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрджрд┐ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЛ рд░реАрдлрд╝реНрд░реЗрд╢ рдХрд░реЗрдВ рдФрд░ рдлрд┐рд░ рд╕реЗ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ (рдЪрд░рдг 4 рдХреЗ рд╕рд╛рде рд╢реБрд░реВ)ред

image


рдореИрдВ рдЗрд╕ рдмреАрдЪ рдЖрдкрдХреЛ рд╕реНрд░реЛрдд рдХреЛрдб рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдкрд░ рдХрд╛рдо рдХрд░реВрдВрдЧрд╛ред рд╣рдо Google рдРрдк рдЗрдВрдЬрди рдкрд░ рдЪрд▓рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдЕрднреА рднреА рдПрдХ рдХреНрд▓рд╛рдЙрдб рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЗрд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ рдЖрдк рдХреНрд▓рд╛рдЗрдВрдЯ рдРрдк рдХреЛ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдЪрд▓рд╛ рд╕рдХреЗрдВ (рдХреНрд▓рд╛рдЙрдб рд╕рд░реНрд╡рд░ рдХреЗ рдирд┐рдХрдЯ)ред

рдЕрдВрдд рдореЗрдВ, рдореИрдВ рдЕрднреА рд╕реБрд╕реНрдд рд╣реВрдВ рдФрд░ рд▓рдЧрднрдЧ 4PM рдИрдПрд╕рдЯреА рддрдХ рд░рд╣реВрдВрдЧрд╛ред рдореИрдВ рд╕реНрдХреНрд░реАрдирд╢реЛрд░реЛ рдХреЗ рд▓рд┐рдП рдЦреБрд╢ рд╣реЛ рд╕рдХрддрд╛ рд╣реВрдБ рдЕрдЧрд░ рдЬрд░реВрд░рдд рд╣реЛред рдореИрдВ рднреА рдХрд▓ рдкреВрд░реЗ рджрд┐рди рдЙрдкрд▓рдмреНрдз рд░рд╣реВрдВрдЧрд╛ред

рдмрд╣реБрдд рдмрдврд╝рд┐рдпрд╛ repro рдХрджрдо!

рдореИрдВ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдЖрдЬ (рдпрд╛ рдХрд▓ рд╕реБрдмрд╣) рдмрд╛рдж рдореЗрдВ рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ред

@stefanpenner рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж! рдореИрдВ рдХрд▓ рдкреВрд░реЗ рджрд┐рди рдСрдирд▓рд╛рдЗрди рд░рд╣реВрдВрдЧрд╛ рдФрд░ рдЕрдЧрд░ рдЬрд░реВрд░рдд рд╣реЛрдЧреА рддреЛ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦреБрд╢ рд╣реВрдВред рдЖрдк рдореБрдЭреЗ рдПрдореНрдмрд░рдЬ рд╕реНрд▓реИрдХ рдореЗрдВ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдореИрдВрдиреЗ рдЖрдкрдХреЛ рд╣рдорд╛рд░реЗ рд╕реНрд░реЛрдд рдХреЛрдб рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдИрдореЗрд▓ рднреА рднреЗрдЬрд╛ рд╣реИ (рдЖрдкрдХреЗ github рдЦрд╛рддреЗ рдкрд░ рд╕реВрдЪреАрдмрджреНрдз рдЖрдкрдХрд╛ @ gmail рдИрдореЗрд▓)ред

@stefanpenner FYI рдХрд░реЗрдВ рдореИрдВрдиреЗ рдЪрд░рдгреЛрдВ рдХреЛ рдереЛрдбрд╝рд╛

_ рдКрдкрд░ рджрд┐рдП рдЧрдП рдкреНрд░рд╢реНрди рдХреЗ рдЙрддреНрддрд░ рдореЗрдВ, рдпрджрд┐ рдпрд╣ v8 / Chrome рдХреЗрд╡рд▓ рд╣реИ: _ рдиреЗ рд╣рдорд╛рд░реЗ рд▓реЙрдЧ рдХреА рдЬрд╛рдБрдЪ рдХреА, 8 рдорд╛рдорд▓реЗ рдкрд╛рдП, рд╕рднреА рдХреНрд░реЛрдо (49/48) рд╡рд┐рдВрдбреЛрдЬ рдкрд░ (7 рдФрд░ 10)ред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдореЗрд░реЗ рдкрд╛рд╕ рдЕрдзрд┐рдХ рдбреЗрдЯрд╛ рдкреЙрдЗрдВрдЯ рдирд╣реАрдВ рд╣реИрдВред

рдореИрдВ рдЗрд╕реЗ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдЯреНрд╡реАрдбрд▓ рдкрд░ рдФрд░ рд╕реНрдерд╛рдиреАрдп рд╕реНрддрд░ рдкрд░ рднрд╛рдЧреНрдп рдХреЗ рдмрд┐рдирд╛ред рд▓реЗрдХрд┐рди рдпрд╣ рд╕рд╣рд╛рдпрдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдмрд┐рдирд╛ рд╕рд╣рд╛рдпрдХреЛрдВ рдХреЗ рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдПрдХ рдФрд░ рдРрдк рд╣реИ рдФрд░ рдпрд╣ рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рдЗрд╕реЗ рдХреБрдЫ рдирдордХ рдХреЗ рд╕рд╛рде рд▓реЗрдВред

рдореИрдВрдиреЗ рдЖрдЧреЗ рдФрд░ рдкреАрдЫреЗ рдХреЗ рдорд╛рд░реНрдЧреЛрдВ рдХреЗ рдмреАрдЪ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡реЗрджрди рдХреЛ рдордЬрдмреВрд░ рдХрд░рдХреЗ рдХреБрдЫ рдХреНрд░реВрд░ рдмрд▓ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдФрд░ рдХрдИ рдмрд╛рд░ 3 рдмрджрд▓рд╛рд╡ рдХреЗ рдмрд╛рдж рдмрдЧ рдЙрддреНрдкрдиреНрди рд╣реЛрддрд╛ рд╣реИ, рддреНрд░реБрдЯрд┐ рдХреЛ рдлреЗрдВрдХ рджреЗрддреЗ рд╣реИрдВ рдФрд░ рдЕрдЧрд▓реЗ рд╕рдВрдХреНрд░рдордг рдХреЗ рд╕рд╛рде рдЗрд╕рд╕реЗ рдЙрдмрд░ рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рдареАрдХ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдлрд┐рд░ рд╕реЗ рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдХрднреА рдирд╣реАрдВ рд▓рдЧрддрд╛ред

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдореИрдВрдиреЗ рдЗрд╕реЗ 300 рдорд╛рд░реНрдЧреЛрдВ рдХреЗ рд▓рд┐рдП 7 рдорд╛рд░реНрдЧреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рджрд┐рдпрд╛, рд╕рдВрдХреНрд░рдордгреЛрдВ рдХреЗ рдмреАрдЪ 50ms рджреЗрд░реА рдФрд░ рдХреБрдЫ рднреА рдирд╣реАрдВ рдЯреВрдЯреЗрдЧрд╛ред рдХреНрдпрд╛ рдЙрд╕рдХреЗ рдмрд╛рдж 5 рдореИрдиреБрдЕрд▓ рд░реАрд▓реЛрдб рд╣реБрдП рдФрд░ рд╢реБрд░реБрдЖрддреА "рдЗрдВрдбреЗрдХреНрд╕ рд░реВрдЯ" рд░реЗрдВрдбрд░ рдХрд░рддреЗ рд╕рдордп рдпрд╣ рдмреВрдЯ рдкрд░ рдХреНрд░реИрд╢ рд╣реЛ рдЧрдпрд╛, рдЬрд╣рд╛рдВ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдореЗрдВ рдХреБрдЫ рд╣реЗрд▓реНрдкрд░реНрд╕ рд╣реИрдВред

рдореИрдВрдиреЗ рдЖрдЧреЗ рдФрд░ рдкреАрдЫреЗ рдХреЗ рдорд╛рд░реНрдЧреЛрдВ рдХреЗ рдмреАрдЪ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡реЗрджрди рдХреЛ рдордЬрдмреВрд░ рдХрд░рдХреЗ рдХреБрдЫ рдХреНрд░реВрд░ рдмрд▓ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдФрд░ рдХрдИ рдмрд╛рд░ 3 рдмрджрд▓рд╛рд╡ рдХреЗ рдмрд╛рдж рдмрдЧ рдЙрддреНрдкрдиреНрди рд╣реЛрддрд╛ рд╣реИ, рддреНрд░реБрдЯрд┐ рдХреЛ рдлреЗрдВрдХ рджреЗрддреЗ рд╣реИрдВ рдФрд░ рдЕрдЧрд▓реЗ рд╕рдВрдХреНрд░рдордг рдХреЗ рд╕рд╛рде рдЗрд╕рд╕реЗ рдЙрдмрд░ рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ рдареАрдХ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдлрд┐рд░ рд╕реЗ рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдХрднреА рдирд╣реАрдВ рд▓рдЧрддрд╛ред

рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рдореЗрд░реЗ рдЕрдиреБрднрд╡ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИред

рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╣рдо рдПрдХ рдлрд╝рд╛рдЗрд▓ рдбрд╛рдЙрдирд▓реЛрдб рдХреЛ рдЯреНрд░рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП window.open рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдХреНрд░рд┐рдпрд╛ "рдЗрд╕ рдореБрджреНрджреЗ рдХреА рд╕рдВрднрд╛рд╡рд┐рдд рд╣реБрдб рдХреЛ рдмрдврд╝рд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдЧрддрд╛ рд╣реИ" (рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рд▓рд╛рд▓ рд╣реЗрд░рд┐рдВрдЧ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ)ред рдореЗрд░реЗ рд▓рд┐рдП, рдХрднреА-рдХрднреА рдореБрдЭреЗ рдПрдХ рд░реЛрд▓ рдорд┐рд▓рддрд╛ рд╣реИ рдФрд░ рдпрд╣ 3 рдпрд╛ 4 рдХреЗ рд╕рдВрдХреНрд░рдордг рдХреЗ рдмрд╛рдж 10 рдореЗрдВ рд╕реЗ 10 рдмрд╛рд░ рд╣реЛрдЧрд╛ред рджреВрд╕рд░реА рдмрд╛рд░, рдпрд╣ рдЖрдзреЗ рдШрдВрдЯреЗ рдореЗрдВ рдПрдХ рдмрд╛рд░ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред

@workmanw рдореЗрд░реЗ рдкрд╛рд╕ "рд╕рдВрднрд╛рд╡рд┐рдд рд╣реБрдб" рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЧреБрдЪреНрдЫрд╛ рд╣реИ рдЬреЛ рдЗрд╕реЗ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "рдкреНрд░рддреАрдд" рд╣реЛрддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореИрдВ рдХрд┐рд╕реА рднреА "рд╕рдВрдХреЗрдд" рдЖрд╡реЗрджрди рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реВрдВ рдЬрд┐рд╕рдиреЗ рдореБрдЭреЗ рджрд┐рдпрд╛ рд╣реИред рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд▓рдЧрддрд╛ рд╣реИред

рдореИрдВрдиреЗ рдЖрдкрдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдпрд╣рд╛рдВ рджрд┐рдП рдЧрдП рдкреНрд░рдЬрдирди рдЪрд░рдгреЛрдВ рджреНрд╡рд╛рд░рд╛ рднреА рдХреНрд░реИрд╢ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдРрд╕рд╛ рдирд╣реАрдВ рд╣реБрдЖред

@stefanpenner рдореИрдВрдиреЗ рдлрдВрдХреНрд╢рди рдмреЙрдбреА рдореЗрдВ рдХреБрдЫ "рдкреЛрд░реНрдХ рдЪреЙрдк" рдЬреЛрдбрд╝рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд▓рдЧрд╛ рдпрд╛ рдореИрдВрдиреЗ рдХреБрдЫ рдЧрд▓рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ред

рд╡реИрд╕реЗ рднреА, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИ рдЬреЛ рдЕрдзрд┐рдХ рдмрд╛рд░ рд╣реЛрддрд╛ рд╣реИред рдореИрдВрдиреЗ рдЕрдм рдкреБрд╖реНрдЯрд┐ рдХреА рд╣реИ, рдХрд┐ рдпрд╣ рд╣рдореЗрд╢рд╛ рдПрдХ рд╣реА рд╕рд╣рд╛рдпрдХ рд╣реИ:рдЬреЛ рдореЗрд░реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдЗрд╕реЗ рдХреНрд░реИрд╢ рдХрд░рддрд╛ рд╣реИред рдореИрдВ рдЦреБрджрд╛рдИ рдХрд░рддрд╛ рд░рд╣реВрдВрдЧрд╛ред

рдЕрдм рддрдХ, рдореИрдВ рдХреБрдЫ рдХрдВрд╕реЛрд▓ рд▓реЙрдЧ рдЖрдЙрдЯ рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛ рдЬрдм рдпрд╣ рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рд╣реЛ рдЧрдпрд╛, рди рдХреЗрд╡рд▓ рдорд╛рд▓рд┐рдХ * рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИ, рдмрд▓реНрдХрд┐ рд╕рд╣рд╛рдпрдХ рднреА рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИред рддреЛ рд╡рд╣рд╛рдБ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдЪреАрдЬреЗрдВ рдЧрд╛рдпрдм рд╣реЛ рд░рд╣реА рд╣реИрдВред

@workmanw рдХреБрдЫ рдХрджрдо рдЬрд┐рдирд╕реЗ рдореБрдЭреЗ рдЕрдкрдирд╛ рдРрдк рдХреНрд░реИрд╢ рд╣реЛрдиреЗ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдорджрдж рдорд┐рд▓реА:

  • CLI рдХреЗ рд╕рд╛рде рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдЕрдкрдирд╛ рдРрдк рдЪрд▓рд╛рдПрдВ, bower_compenders / ember / ember.prod.js рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░реЗрдВ
  • рдЗрд╕ рддрд░рд╣ рд╕реЗ hasRegademy рдФрд░ рдмрд╛рдж рдореЗрдВ рдХрдВрд╕реЛрд▓ рд▓реЙрдЧ рдЬреЛрдбрд╝реЗрдВ:
if (validateLazyHelperName(name, owner, env.hooks.keywords)) {
        var helperName = 'helper:' + name;
        console.log("Before", helperName, owner !== undefined, owner._lookupFactory !== undefined);
        if (owner.hasRegistration(helperName, options)) {
          console.log("After", helperName, owner !== undefined);
          console.log("After _lookupFactory", owner._lookupFactory !== undefined);
          helper = owner._lookupFactory(helperName, options);
        }
      }

ember s --prod рдЪрд▓рд╛рдПрдБ
рдореЗрд░реЗ рд▓рд┐рдП рдЗрд╕рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ, рдЬрдм рдпрд╣ рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ:

Before helper:t true true
After undefined false
TypeError: Cannot read property '_lookupFactory' of undefined

рджреВрд╕рд░рд╛ рдХрдВрд╕реЛрд▓ рд▓реЙрдЧ рд░рди рдХреЗ рд░реВрдк рдореЗрдВ, рд╣реЗрд▓реНрдкрд░рдирд╛рдо рдФрд░ рдорд╛рд▓рд┐рдХ рджреЛрдиреЛрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА "рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд" рд╣реИрдВ рдФрд░ рдЬрд╛рд╣рд┐рд░ рд╣реИ рдХрд┐ рдпрд╣ "рдЖрдлреНрдЯрд░рд╡реНрдпреВрдЕрдкрдлреИрдХреНрдЯрд┐рд╡" рдХрдВрд╕реЛрд▓.рд▓реЙрдЧ рдкрд░ рдХреНрд░реИрд╢ рд╣реЛрддрд╛ рд╣реИред

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдЗрд╕ рд╕рд╣рд╛рдпрдХ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦреЗрдВ

рдЗрд╕реЗ +1 рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рд▓реЗрдХрд┐рди рдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЕрдЧрд░ рдореБрдЭреЗ "рдердореНрд╕ рдЕрдк рдПрдореЛрдЯреЗ" рдХреЗ рд╕рд╛рде рдЕрдкрдбреЗрдЯ рдХреА рд╕рджрд╕реНрдпрддрд╛ рдорд┐рд▓рддреА рд╣реИред

рдареАрдХ рдЙрд╕реА рддреНрд░реБрдЯрд┐, рдХреЗрд╡рд▓ рдЙрддреНрдкрд╛рджрди рдореЗрдВ рдмрдирд╛рддрд╛ рд╣реИред

рдХреНрд░реЛрдо: 48.0.2564.116, 49.0.2623.87
MacOS: 10.9.5

@stefanpenner --nouse_inlining рдРрд╕рд╛ рдкреНрд░рддреАрдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдореИрдВрдиреЗ рдХрдИ рдмрд╛рд░ nouse_inlining рдХреЗ рд╕рд╛рде рдФрд░ рдмрд┐рдирд╛ рджреМрдбрд╝рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдФрд░ рдЬрдм рдЗрдирд▓рд╛рдЗрдирд┐рдВрдЧ рдЕрдХреНрд╖рдо рд╣реБрдИ рддреЛ рдпрд╣ рдХрднреА рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рдирд╣реАрдВ рд╣реБрдИред рдмрд┐рдирд╛ рдЭрдВрдбреЗ рдХреЗ рдЪрд▓ рд░рд╣рд╛ рдХреНрд░реЛрдо рдореИрдВ рдЕрдкрдиреЗ рдкрд┐рдЫрд▓реЗ рдХрдореЗрдВрдЯ рд╕реЗ рдЙрди рдХрдВрд╕реЛрд▓.рд▓реЙрдЧ рдХреЗ рд╕рд╛рде рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП 7 рдореЗрдВ рд╕реЗ 5 рд░реА рд▓реЛрдб рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддрд╛ рдерд╛ред рдореБрдЭреЗ рдЕрднреА рднреА рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдХреЛ рдЯреНрд╡реАрдбрд▓ рдпрд╛ рдбреЗрдореЛ рдРрдк рдкрд░ рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛рдПред

рдореИрдВ рдлрд░рд╡рд░реА (2.3, рдлрд┐рд░ 2.4), OSX рдФрд░ рд╡рд┐рдВрдбреЛрдЬ, рдХреНрд░реЛрдо рдХреЗ рдмрд╛рдж рд╕реЗ рд╣реА рдЗрд╕реЗ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВред рд╕рднреА рдХрд╕реНрдЯрдо Em.Helper.helpers рдФрд░ рдЕрдВрдЧрд╛рд░реЗ-рд╕рддреНрдп-рд╕рд╣рд╛рдпрдХреЛрдВ рдХреЛ рд╣рдЯрд╛рдХрд░ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдкреНрд░рдХрдЯ рд╣реЛрдиреЗ рд╕реЗ рд░реЛрдХ рджрд┐рдпрд╛ (рдмреЗрд╢рдХ)ред

рдореБрдЭреЗ рдмрдЧ рдореЗрдВ рднрд╛рдЧрддреЗ рд╣реБрдП рдХреБрдЫ рд╕рдордп рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдореБрдЭреЗ рдЕрдкрдиреЗ рдЯрд┐рдирдлрд╝реЛрдЗрд▓ рд╣реИрдЯ рд╕реЗ рдмреНрд░рд╢ рдХрд░рдирд╛ рдкрдбрд╝рд╛ред
_рддреБрдо рдЕрдХреЗрд▓реЗ рдирд╣реА рд╣реЛред рд╕рдЪ рдмрд╛рд╣рд░ рдЖ рдЪреБрдХрд╛ рд╣реИред_

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рддреНрд░реБрдЯрд┐ рдореЗрдВ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП EmberObserver.com рд▓реЙрдЧ рдХрд░рддрд╛ рд╣реИред рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд https://github.com/emberobserver/client рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдПрдореНрдмрд░ 2.4.1 рдкрд░, рдЖрд╡реЗрджрди рдореЗрдВ рд╣рд░ рдорд╛рд░реНрдЧ рдкрд░, рд╡рд┐рдВрдбреЛрдЬ 7, 8.1, 10, рдУрдПрд╕ рдПрдХреНрд╕ рдФрд░ рдЙрдмрдВрдЯреВ рдкрд░ рдХреНрд░реЛрдо рдпрд╛ рдХреНрд░реЛрдорд┐рдпрдо 48 рдкрд░ рджреЗрдЦрд╛ рдЧрдпрд╛ рд╣реИред

@typeoneerror fwiw рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдмрд╣реБрдд рдЦреБрд╢ рд╣реВрдВ рдХрд┐ рд▓реЛрдЧреЛрдВ рдХреЛ рдпрд╣ рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛ рд░рд╣реА рд╣реИ рдХрд┐ рд╡реЗ рдкрд░реНрдпрд╛рд╡рд░рдг рд╡рд┐рд╡рд░рдг рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╕рдордп рдПрдХ рд╣реА рдмрдЧ рдХрд╛ рдЕрдиреБрднрд╡ рдХрд░рддреЗ рд╣реИрдВред

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдРрд╕реА рд░рд┐рдкреЛрд░реНрдЯреЛрдВ рд╕реЗ рдХрд┐рд╕реЗ рдиреБрдХрд╕рд╛рди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП: рдкрд▓рдХ:

рдмрд╕ рдПрдХ V8 рдмрдЧ рдЦреЛрд▓рд╛, https://bugs.chromium.org/p/v8/issues/detail?id=4839ред

рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдореБрдЭреЗ рдЕрднреА рднреА рдХреЛрдИ рдЪрдХреНрд░ рдирд╣реАрдВ рд▓рдЧрд╛ рд╣реИ, рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЬрд▓реНрдж рд╣реАред

рдореЗрд░реЗ рд▓рд┐рдП рдЬреЛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЙрд╕рд╕реЗ рдЕрдзрд┐рдХ рдХрдард┐рди рдерд╛, рд▓реЗрдХрд┐рди рдореИрдВ рдмрд╣реБрдд рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдореИрдХ рдУрдПрд╕ рдХреНрд░реЛрдорд┐рдпрдо рдХреЗ рд╕рдВрд╕реНрдХрд░рдг 51.0.2671.4 (64-рдмрд┐рдЯ) рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред

рдореИрдВ рдмрд╕ рдЗрд╕ ember.prod.js рдирд┐рд░реНрдорд╛рдг рдХреЗ рд╕рд╛рде рдПрдХ рдореЛрдбрд╝ рдкрд░ рд╣реЛ рд░рд╣рд╛ рджреЗрдЦрд╛ред рдХреНрд░реЛрдо 49.0.2623.87 (64-рдмрд┐рдЯ), рдУрдПрд╕ рдПрдХреНрд╕ 10.11.3

Uncaught TypeError: Cannot read property '_lookupFactory' of undefined VM3158 ember.prod.js:11783

рдкреНрд░рдЬрдирди рдЕрднреА рднреА рдЕрд╕реНрдкрд╖реНрдЯ рд╣реИ, рдПрдХ рдмрд╛рд░ рдЬрдм рдореЗрд░реЗ рдкрд╛рд╕ рдкреНрд░рдЬрдирди рдХреЗ рд▓рд┐рдП рдХрджрдо рд╣реЛрдВрдЧреЗ рддреЛ рдореИрдВ рдпрд╣рд╛рдВ рдЯреНрд╡рд┐рдбрд▓ рд╕рд╛рдЭрд╛ рдХрд░реВрдВрдЧрд╛ред

@raido рдпрд╣ рдХреНрд░реЛрдо рдХреЛ --js- рдЭрдВрдбреЗ = "- рдкреВрд░реНрд╡рд╛рдиреБрдореЗрдп" рдХреЗ рд╕рд╛рде рдЪрд▓рд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рд╡рд┐рднрд┐рдиреНрди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдмрдВрдж рдХрд░ рджреЗрддрд╛ рд╣реИ рдЬреЛ рдХрд┐ рдЕрдирд┐рд╢реНрдЪрд┐рддрддрд╛ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ (рдЬреИрд╕реЗ рдХрд┐ рдкреГрд╖реНрдарднреВрдорд┐ рдереНрд░реЗрдбреНрд╕ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХреБрдЫ рднреА)ред рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдЬрдм рдЖрдк рдПрдХ рдЕрдЪреНрдЫрд╛ repro рдорд┐рд▓!

: рдЯрд╛рдбрд╛: рдпрд╛рдп! рдореИрдВ рд╣рдорд╛рд░реЗ рд▓реЙрдЧ рд╕реЗ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ рдЖрдзрд╛ рджрд░реНрдЬрди рдпрд╛ рддреЛ рд▓реЛрдЧ рдЗрд╕реЗ 51 рд╕рд╣рд┐рдд рдХреНрд░реЛрдо рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдкрд░ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдереЗред

@krisselden рдореБрдЭреЗ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЦреЗрдж рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░реА рдкрд┐рдЫрд▓реА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдореЗрдВ рдореИрдВрдиреЗ рдирд┐рд╣рд┐рдд рдХрд┐рдпрд╛ рдерд╛ рдХрд┐ рдпрд╣ рд╣рдореЗрд╢рд╛ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдирд╣реАрдВ рдерд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдкреНрд░рдЬрдирди рдЪрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдЯрд┐рдкреНрдкрдгреА рдкрд░ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛ред рдХрднреА-рдХрднреА рдРрд╕рд╛ рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИред рд╡рд╣рд╛рдБ рдЕрднреА рднреА рдЦреЗрд▓рдиреЗ рдореЗрдВ рдЪрд░ рд░рд╣реЗ рд╣реИрдВ рдореИрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдордЭ рдирд╣реАрдВ рд╣реИред рдЕрдЧрд░ рдореИрдВ рдЗрд╕реЗ 2 рдпрд╛ 3 рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреЗ рдмрд╛рдж рдЖрд╕рд╛рдиреА рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛, рддреЛ рдХреНрд░реЛрдо рдХреЛ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдорджрдж рдорд┐рд▓ рд╕рдХрддреА рд╣реИред

@stefanpenner рдореЗрд░реЗ рдкрд╛рд╕ рдЕрднреА рдХреБрдЫ рдЪрдХреНрд░ рд╣реИрдВ рдФрд░ рдореИрдВрдиреЗ 6-8 рдШрдВрдЯреЗ рдмрд┐рддрд╛рдП рд╣реИрдВ рддрд╛рдХрд┐ рдЗрд╕реЗ рдПрдХ рдЯреНрд╡рд┐рдбрд▓ рдореЗрдВ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдИ рд╡рд┐рдЪрд╛рд░ рдпрд╛ рдХреБрдмрдбрд╝рд╛ рд╣реИ, рддреЛ рдореБрдЭреЗ рдЙрдирдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред рдореБрдЭреЗ рдЕрднреА рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд░реНрдпрд╛рдкреНрдд рдбреЛрдореЗрди рдЬреНрдЮрд╛рди рдирд╣реАрдВ рд╣реИред

@workmanw @stefanpenner рдореЗрд░реЗ рдкрд╛рд╕ рд╡рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ рдЬреЛ рдпрд╣рд╛рдБ рдЪрд▓ рд░рд╣реА рдкреВрд░реА рд╕рдорд╕реНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИред рдореЗрд░реА рдЯреНрд╡реАрдбрд▓ рдЬреЛ рдЕрдХреНрд╕рд░ рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рд╣реБрдЖ рдХрд░рддреА рдереА, рдЕрдм рд╢рд╛рдпрдж рд╣реА рдХрднреА рд╣реЛрддреА рд╣реИ рдФрд░ рдореЗрд░реЗ рдкрд╛рд╕ рдмрдВрдж рдХрд┐рдП рдЧрдП рдФрд░ рдЦреЛрд▓реЗ рдЧрдП рдХреНрд░реЛрдо рдЬреЛрдбрд╝реЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреБрдЫ рднреА рдирд╣реАрдВ рдмрджрд▓рд╛ рд╣реИ (рд╢рд╛рдпрдж рдЕрд╕рдВрдмрдВрдзрд┐рдд)ред рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрд╖реНрдЯрдкреНрд░рдж рд╣реИред

@jakobkummerow рдореИрдВ рдЕрдкрдиреЗ рдРрдк рдХреЛ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рдЭрдВрдбреЗ рдХреЗ рд╕рд╛рде рдХреНрд░реИрд╢ рдирд╣реАрдВ рдХрд░

рдореИрдВ рдпрд╣рд╛рдБ рдПрдХ рдЕрд╕рдлрд▓ рд╕реНрд╡реАрдХреГрддрд┐ рдкрд░реАрдХреНрд╖рдг рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ: https://github.com/runspired/bug-13071

bower_components ember.debug.js ember.prod.js рд▓рд┐рдП рд╕реНрд╡реИрдк рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рддрд┐рдмрджреНрдз рд╣реИред рдкреБрдирд░реБрддреНрдкрд╛рджрди рдореЗрдВ рдЕрдм рддрдХ рдХреЛрдИ рднрд╛рдЧреНрдп рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдХреНрд░реЛрдо 47 рдкрд░ рд╣реВрдВ рдЬреЛ рдХрд┐рд╕реА рднреА рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ рдореЗрдВ рдКрдкрд░ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджрд┐рдпрд╛ рд╣реИред

@ рдЕрдкреНрд░рднрд╛рд╡рд┐рдд рдореИрдВрдиреЗ рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ рдХрд┐ рдПрдХ

рдЯреНрд╡реЗрд▓реНрдб рдЬреЛ рдХрд┐ рдореИрдВ https://ember-twiddle.com/7fdf923d89ea37095cf3 рдХреЗ рд╕рд╛рде рдЦреЗрд▓ рд░рд╣рд╛ рд╣реВрдВ

рдПрдХ рдмрд╛рд░ рдЬрдм рдореИрдВрдиреЗ рдЗрд╕реЗ рддреАрди рдмрд╛рд░ рдкрдВрдХреНрддрд┐ рдореЗрдВ рдХреНрд░реИрд╢ рдХрд░ рджрд┐рдпрд╛, рддреЛ рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрдХреНрд░рдордг _lookupFactory рд╕рдВрджреЗрд╢ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдпрд╛ред

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдореИрдВ рдЯреЗрдХреЗрдирд╕реНрдЯреИрдХ рд╕реЗ 3 рдХреНрд░реИрд╢ рдХреЗ рд╕реНрдЯреИрдХрд╕реНрдЯреНрд░реЗрд╕ рдХреЛ рдкрдХрдбрд╝рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛, рдЙрдирдореЗрдВ рд╕реЗ 2 рд╕рдорд╛рди рд╣реИрдВ, рдПрдХ рдЕрд▓рдЧ рд╣реИред https://www.dropbox.com/s/51uwx6zo1scs7il/bug-13071.mp4?dl=1

рдпрд╣ рдмрд╣реБрдд рдореБрд╢реНрдХрд┐рд▓ рд╣реИ рдореБрдЭреЗ рдордЬрд╝рдмреВрддреА рд╕реЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓реЗрдХрд┐рди рдореЗрд░реЗ рд╡рд░реНрддрдорд╛рди рд╕рдВрджрд┐рдЧреНрдз рдпрд╣ рд╣реИ https://github.com/emberjs/ember.js/blob/cfed40154285501c19a60aef3c0f51c645c9d44d/packages/ember-runtime/lib/mixins/container_proxy.js#L115 -L119 рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рдЖрд╕рд╛рди рд╕рдордп рдкреНрд░рдЬрдирди рд╣реИ, рддреЛ рдореИрдВ рдЙрдкрдирд╛рдо рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдФрд░ рдкреНрд░реЙрдХреНрд╕реА рд▓рдХреНрд╖реНрдп рдХреЗ рд▓рд┐рдП рднреА рдмрдВрдж рдирд╣реАрдВ рд╣реЛрдЧрд╛ред

@workmanw рдЕрдЧрд░ рдореИрдВ рдПрдХ рдкреАрдЖрд░ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЖрдк рдЗрд╕реЗ рдкрд░рдЦ рд╕рдХрддреЗ рд╣реИрдВ?

рдореИрдВрдиреЗ рдЗрд╕реЗ рдкрд╣рд▓реА рдмрд╛рд░ рдкреНрд░реЛрдбрдХреНрд╢рди рдореЗрдВ рднреА рд╣рд┐рдЯ рдХрд┐рдпрд╛ (рдФрд░ рдЯреНрд╡рд┐рдЯрд░ рдкрд░ рдЗрд╕ рдЪрд░реНрдЪрд╛ рдХреЛ рдпрд╛рдж рдХрд░рддреЗ рд╣реБрдП рдпрд╛рдж рдЖрдпрд╛)ред рдХреНрд░реЛрдо 48.0.2564.116 рдФрд░ рдПрдореНрдмрд░ 2.3ред

Slack рдкрд░ w / @krisselden рдХреА рдЪреИрдЯ рдХреА рдЧрдИред рд╣рд╛рдВ, рдореИрдВ рдПрдХ рдкреАрдЖрд░ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдХреЗ рдЦреБрд╢ рд░рд╣реВрдВрдЧрд╛ред рдореЗрд░реА рдкреНрд░рдЬрдирди рджрд░ рд▓рдЧрднрдЧ 33% рд╣реИ (рдЗрд╕рд▓рд┐рдП рдмрд╛рд░-рдмрд╛рд░)ред

@workmanw рдЖрдк рдПрдореНрдмрд░ рд░реЗрдкреЛ рдХреА рдХреНрд▓реЛрдирд┐рдВрдЧ рдХрд░рдХреЗ рдФрд░ curl https://github.com/emberjs/ember.js/pull/13116.patch | git am рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдФрд░ npm run build рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдФрд░ рдЕрдкрдиреЗ bower_compenders / ember рдХреЗ рд░реВрдк рдореЗрдВ рдбрд┐рд╕реНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

@krisselden рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ

рдореИрдВрдиреЗ v2.4.2 , рдкреИрдЪ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдФрд░ рдПрдХ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ред ember.min.js рдореЗрд░реЗ app/bower_components/ember/ember.debug.js рдХреЙрдкреА рдХрд┐рдпрд╛ рдЧрдпрд╛ред tmp/ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдирд┐рдХрд╛рд▓ рджрд┐рдпрд╛ рдФрд░ рд╕рд░реНрд╡рд░ рдХреЛ рдирд┐рдХрд╛рд▓ рджрд┐рдпрд╛ред рдореИрдВрдиреЗ рдкреБрд╖реНрдЯрд┐ рдХреА рдХрд┐ рдкреИрдЪ рд╕реНрд░реЛрдд рдЯреИрдм рдХреЛ рджреЗрдЦрдХрд░ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

рдпрджрд┐ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рджреЛрд╣рд░реА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рддреЛ рдпрд╣рд╛рдВ рдореЗрд░реЗ рдкреИрдЪ рдФрд░ рдирд┐рд░реНрдорд╛рдг рдХреЗ рдмрд╛рдж рд╣реИрд╢ рд╣реИ: MD5 (dist/ember.min.js) = 23ab1021bebdf170d21338fecf347937

рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдП рдЬрд╛ рд░рд╣реЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рд░рдЦрдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред

@workmanw https://bugs.chromium.org/p/v8/issues/detail?id=4839#c7 рдкрд░ рдЕрдВрддрд┐рдо рдЯрд┐рдкреНрдкрдгреА рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдФрд░ рдХреЛрдб рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рдЖрдк рд╕реНрдерд╛рдиреАрдп рд╕рд╣рд╛рдпрдХ рдЦреЛрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдореЗрд░рд╛ рдЕрдиреБрдорд╛рди рд╣реИ рдХрд┐ _findHelper рдпрд╣рд╛рдБ inlined рдХреА рдЬрд╛ рд░рд╣реА рд╣реИ https://github.com/emberjs/ember.js/blob/master/packages/ember-htmlbars/lib/system/lookup-helper.js#L62 рдЬрдм рдЗрд╕ рдорд╛рдорд▓реЗ рдХреЛ рдХрднреА рднреА рд╕рддреНрдп рдирд╣реАрдВ рджреЗрдЦрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЬрдм рдЖрдк рдХрд┐рд╕реА рдРрд╕реЗ рдорд╛рд░реНрдЧ рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВ рдЬрд╣рд╛рдБ рдпрд╣ hasRegistration рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрдиреНрдЯреЙрдк рдХреЛрдб рдореЗрдВ deopt рдХреЗ рд╕реНрд╡рд╛рдореА рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред

рдореЗрд░рд╛ рд╡рд░реНрддрдорд╛рди рд╡рд┐рдЪрд╛рд░ https://github.com/emberjs/ember.js/commit/8af7da67c4b1eab94a6adfc82c91af98dc3ee532 v8 рдореЗрдВ рдмрдЧ рдХреЛ рдЯреНрд░рд┐рдЧрд░ рдХрд░ рд░рд╣рд╛ рд╣реИ рдФрд░ _findHelper рдХреЛ рдЗрдирд▓рд╛рдЗрди рд╕реЗ рд░реЛрдХрдиреЗ рдпрд╛ рд╕реНрдерд╛рдиреАрдп рд╣реЗрд▓реНрдкрд░ рд╕реЗ рд╢рд╛рдЦрд╛ рдХреЛ рдЧрд░реНрдо рдХрд░рдиреЗ рд╕реЗ рдЗрд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рддрдХ рдмрдЧ рд╣рд▓ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред v8ред

@krisselden рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдХреБрдЫ рднреА рддреИрдпрд╛рд░ рд╣реИ, рддреЛ рдореИрдВ рдЗрд╕реЗ рдЖрдЬрд╝рдорд╛ рд╕рдХрддрд╛ рд╣реВрдБред рдореЗрд░реА рдкреНрд░рдЬрдирди рджрд░ @workmanw рдХреА рддрд░рд╣ рд╣реА рд╣реИред

@workmanw рдХреНрдпрд╛ рдЖрдк https://bugs.chromium.org/p/v8/issues/detail?id=4839#c9 рдЯрд┐рдкреНрдкрдгреА рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдкреАрдЖрд░ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

рдкреАрдЖрд░ https://github.com/emberjs/ember.js/pull/13118

рдЗрд╕ рдмрджрд▓рд╛рд╡ рд╕реЗ рдореИрдВ рдЕрдкрдиреЗ рдРрдк рдХреЛ рдХреНрд░реИрд╢ рдирд╣реАрдВ рдХрд░ рдкрд╛рдпрд╛ред рдЕрдЧрд░ рдореИрдВ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рд╡рд╛рдкрд╕ рд▓рд╛рдКрдВ, рддреЛ рдпрд╣ рддреБрд░рдВрдд рджреБрд░реНрдШрдЯрдирд╛рдЧреНрд░рд╕реНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

: confetti_ball:: tada: рдореИрдВрдиреЗ @raido рдкреАрдЖрд░ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдФрд░ рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкреБрди: рдкреЗрд╢ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред рдпрд╣ рдПрдХ рд╕рдлрд▓ рд╕рдорд╛рдзрд╛рди рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИред :рдореБрд╕реНрдХреБрд░рд╛рдУ:

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдХреНрд░реЛрдо 49 рдФрд░ рдХреНрд░реЛрдо 51 рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛ред

рдореИрдВ рд░рд┐рдкреЛрд░реНрдЯ рдХрд┐рдП рдЧрдП рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХрд╛ рдмрд╛рд░реАрдХреА рд╕реЗ рдкрд╛рд▓рди рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ рдХреЛрдб рдПрдореНрдмрд░ 2.3 рдореЗрдВ рднреА рд╣реИред рдХреНрдпрд╛ рдПрдордмрд░ 2.3 рднреА рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рднреБрдЧрддрддрд╛ рд╣реИ?

рд╣рд╛рдВ, рдореИрдВ рдЗрд╕ рдмрд╛рдд рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ Ember v2.3 рдЗрд╕рд╕реЗ рднреА рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реИред

рдареАрдХ рд╣реИ, https://github.com/emberjs/ember.js/issues/13118 рдХреЛ рдмреАрдЯрд╛, рд░рд┐рд▓реАрдЬрд╝ рдФрд░ рд░рд┐рд▓реАрдЬрд╝-2-3 рд╢рд╛рдЦрд╛рдУрдВ рдореЗрдВ рдЦреАрдВрдЪ рд▓рд┐рдпрд╛ред рд░рд┐рд▓реАрдЬ рдФрд░ рдмреАрдЯрд╛ рдЪреИрдирд▓реЛрдВ рдХреЛ рдЬрд▓реНрдж рд╣реА рдирдП рдирд┐рд░реНрдорд╛рдг рдкреНрд░рд╛рдкреНрдд рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП (рдЯреНрд░реИрд╡рд┐рд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ) рдХреГрдкрдпрд╛ рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдкрд░ рдзрдорд╛рдХрд╛ рдХрд░реЗрдВ рддрд╛рдХрд┐ рд╣рдо рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХреЗрдВ рдХрд┐ рдпрд╣ рдареАрдХ рдирд╣реАрдВ рд╣реИ ...

@workmanw @raido рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЦреЛрдЬрдиреЗ рдФрд░ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрд░реЛрдорд┐рдпрдо рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реБрдП, рдмрдЧ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рдЗрддрдирд╛ рд╕рдордп рдмрд╣реБрдд-рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж ред
рдпрд╣ рдЙрди рд╣реЗрдЗрд╕реЗрдирдмрдЧреНрд╕ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ, рдЬрд╣рд╛рдВ рдПрдХ рдЬрд┐рдореНрдореЗрджрд╛рд░ рдУрдПрд╕рдПрд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╣реЛрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдореИрдВрдиреЗ рдПрдХ рдорд╣реАрдиреЗ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдорд╕реНрдпрд╛ рджрд░реНрдЬ рдХрд░рдиреЗ рдХрд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдПрдХ рд╕реНрдерд┐рд░ рдЬрд┐рд╕реНрдЯ / рдЯреНрд╡реАрдбрд▓ / рдмрд┐рди / рдЖрджрд┐ рдирд╣реАрдВ рдмрдирд╛ рд╕рдХрд╛ред рдпрд╣ рд╕рд┐рд░реНрдл рдЗрддрдирд╛ рддрд░реНрдХ рд╣реИ рдХрд┐ рдореБрдЭреЗ рд▓рдЧрд╛ рдХрд┐ рдпрд╣ рдореЗрд░реА рдЧрд▓рддреА рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдЕрдЧрд▓реА рдмрд╛рд░ рдореИрдВ рдФрд░ рдЕрдзрд┐рдХ рд╕рдХреНрд░рд┐рдп рд╣реЛрдКрдВрдЧрд╛ рдФрд░ рд╕рд╛рдереА рдкреАрдбрд╝рд┐рддреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реНрд▓реИрдХ рд░реВрдо рдХреЛ рдкрд┐рдВрдЧ рдХрд░реВрдВрдЧрд╛ред

рд╕рднреА рдХреЛ рдЕрдЪреНрдЫрд╛ рдХрд╛рдо!

@ 2468рдмреЗрди рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╣рдореЗрдВ рд╢рд╛рдпрдж рдПрдХ рдЭрд┐рдЭрдХ / рд╢рд╛рдпрдж vmbug рд▓реЗрдмрд▓ рдЪрд╛рд╣рд┐рдП?

[# 13118 рджреНрд╡рд╛рд░рд╛ рддрдп]

:)

@rwjblue рдореИрдВрдиреЗ рдЕрдкрдирд╛ bower.json рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рд╣реИ рдЕрдм "ember": "components/ember#9c3e5820" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдореИрдВ рдЗрд╕реЗ QA рдЪрдХреНрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рднреЗрдЬрдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВред рдЕрдЧрд░ рдХреЛрдИ рдкреЙрдкрдЕрдк рдХрд░рддрд╛ рд╣реИ рддреЛ рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛ рджреВрдВрдЧрд╛ред

рдЖрдкрдХрд╛ рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж!

рд╣рдо рднреА рдЗрд╕ рдореБрджреНрджреЗ рдХрд╛ рдЕрдиреБрднрд╡ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдпрд╣ рддрдп рд╣реЛ рдЧрдпрд╛ рд╣реИред рдореИрдВ рдПрдХ рдШрдВрдЯреЗ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рдХреЗ рд▓рд┐рдП ember#9c3e5820 рдирд┐рд░реНрдорд╛рдг рдХреЗ рдЦрд┐рд▓рд╛рдл рд╣рдорд╛рд░реА рд╕рд╛рдЗрдЯ рдХреЛ рд╣рдереМрдбрд╝рд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рдХрд┐рд╕реА рднреА рдореБрджреНрджреЗ рдХреЛ рдирд╣реАрдВ рджреЗрдЦрд╛ рд╣реИред

v2.4.3 рдХреЛ https://github.com/emberjs/ember.js/pull/1388 рдореЗрдВ рдЬреЛрдбрд╝реЗ рдЧрдП рдХрд╛рдо рдХреЗ рд╕рд╛рде рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ

рдЕрд░реЗ рдпрд╛рд░, рдШрдВрдЯреЛрдВ рдореИрдВрдиреЗ рдЗрд╕ рдзрд╛рдЧреЗ рдХреЛ рдЦреЛрдЬрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЗрд╕ рдмрдЧ рдХреЛ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдиреЗ / рдареАрдХ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА ... рдКред рдЕрдЪреНрдЫреЗ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧ!

рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╣рдо [email protected] рдкрд░ рдПрдХ рдРрдк рдЪрд▓рд╛ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рд╣рдо рд╕рдВрддрд░реА рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЗрд╕ рд╕рдЯреАрдХ рдореБрджреНрджреЗ рдХреЛ рдорд╛рд░ рд░рд╣реЗ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХреЛрдб рдореЗрдВ https://github.com/emberjs/ember.js/pull/13118 рдХрд╛ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рд╢рд╛рдорд┐рд▓ рд╣реИред ЁЯШЮ

@ Turbo87 рдХреНрд░реЛрдо рдореЗрдВ рднреА рдпрд╣ рдореБрджреНрджрд╛ рдареАрдХ рдерд╛ред рддреЛ рдХреНрд░реЛрдо рдХреЗ рдХреЗрд╡рд▓ 1 рдпрд╛ 2 рд╕рдВрд╕реНрдХрд░рдг рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдЗрд╕ рдореЗрдВ рдЪрд▓ рд╕рдХреЗред

рдХреНрдпрд╛ рдЖрдк рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реИрдВ рдХрд┐ рдпрд╣ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд╣реИ?

@workmanw рд╣рд╛рдБ, рдмрд╣реБрдд рдпрдХреАрди рд╣реИ рдХрд┐ рдпрд╣ рд╡рд╣реА рд╣реИред рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╣рдорд╛рд░реЗ рдХреБрдЫ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрднреА рднреА рдкреБрд░рд╛рдиреЗ рдХреНрд░реЛрдо рд╕рдВрд╕реНрдХрд░рдг рдЪрд▓рд╛ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреБрдЫ рд╡реНрдпреБрддреНрдкрдиреНрди рдмреНрд░рд╛рдЙрдЬрд╝рд░ (рд╕реЛрдЧреЛ рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░, рдУрдкреЗрд░рд╛, рдХреНрд░реЛрдорд┐рдпрдо, рдбреНрд░реИрдЧрди) рд╣рдорд╛рд░реЗ рд╕рдВрддрд░реА рд▓реЙрдЧ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╕рдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рджрд┐рдЦрд╛ рд░рд╣реЗ рд╣реИрдВ

:(ред рдореБрдЭреЗ рдЖрдкрдХрд╛ рджрд░реНрдж рдорд╣рд╕реВрд╕ рд╣реЛ рд░рд╣рд╛ рд╣реИред рд╣рдорд╛рд░реЗ рдХреБрдЫ рдЧреНрд░рд╛рд╣рдХ рдРрд╕реЗ рдЙрджреНрдпрдо рд╣реИрдВ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдХреНрд░реЛрдо рдХреЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рд▓реЙрдХ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдХрднреА рдЕрдкрдЧреНрд░реЗрдб рдирд╣реАрдВ рд╣реЛрдиреЗ рджреЗрддреЗ рд╣реИрдВред

рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдпрд╣ рдореБрджреНрджрд╛ рдХрд┐рд╕реА рддрд░рд╣ рд╕реЗ рдкреБрдирд░реНрдЬреАрд╡рд┐рдд рд╣реЛред рдореИрдВ 100% рдирд┐рд╢реНрдЪрд┐рддрддрд╛ рдХреЗ рд╕рд╛рде рдХрд╣ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдЙрд╕ рд╕рдордп, рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдиреЗ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд┐рдпрд╛ ( v2.4.3 )ред

рдореБрдЭреЗ рднреАред

@ Tur8787 рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдВрд╕реНрдХрд░рдг рд╣реИрдВ?

  • рдХреНрд░реЛрдо 49.0.2623
  • рдУрдкреЗрд░рд╛ 36.0.2130
  • рдХреНрд░реЛрдорд┐рдпрдо 48.0.2564
  • рд╕реЛрдЧреМ рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ 1.0
  • рдХреНрд░реЛрдо 48.0.2564
  • рдХреНрд░реЛрдо 50.0.2632

рдХреНрд░реЛрдо 49 рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рдЕрдм рддрдХ рд╕рдмрд╕реЗ рдЖрдо рд╣реИ

@ Turbo87 рдХреНрдпрд╛ рдЖрдкрдХреЛ рдХрднреА рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдХреЛрдИ рд░рд╛рд╕реНрддрд╛ рдорд┐рд▓рд╛?

@givanse рдХреЛ рд╣рдордиреЗ рдЕрдм рддрдХ Ember 2.12 рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдЕрдм рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдирд╣реАрдВ рд▓рдЧрддрд╛

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

acorncom picture acorncom  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

artcommacode picture artcommacode  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

amk221 picture amk221  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

mar20 picture mar20  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

rafaelbnp picture rafaelbnp  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ