Tedious: tls.createSecurePair рдХреЛ рд░рдирдЯрд╛рдЗрдо-рдмрд╣рд┐рд╖реНрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 26 рдлрд╝рд░ре░ 2017  ┬╖  33рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: tediousjs/tedious

рд╕рдВрджрд░реНрдн: https://github.com/nodejs/node/pull/11349

рдореЗрдВ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛:

tedious-1.14.0.tgz/lib/message-io.js:117:      this.securePair = tls.createSecurePair(credentials);

#135 рднреА рджреЗрдЦреЗрдВред
рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рджреЗрдЦреЗрдВ https://github.com/sidorares/node-mysql2/pull/367 ред

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

738 рдореЗрдВ рдПрдХ рд╕реБрдзрд╛рд░ рд╣реИ рдФрд░ @tediousjs/microsoft-contributors рдЯреАрдо рдХреЗ рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рджреНрд╡рд╛рд░рд╛ рд╕рдореАрдХреНрд╖рд╛ рдХрд┐рдП рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж рдЗрд╕реЗ рдорд░реНрдЬ рдФрд░ рд░рд┐рд▓реАрдЬрд╝ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

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

@ChALkeR рд╕реВрдЪрдХ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдЬрдм рд╣рдо рдЗрд╕ рддрдХ рдкрд╣реБрдВрдЪреЗрдВрдЧреЗ рддреЛ рдпрд╣ рдорджрджрдЧрд╛рд░ рд╣реЛрдЧрд╛ред рдпрджрд┐ рдЖрдк рдкреНрд░реЗрд░рд┐рдд рдорд╣рд╕реВрд╕ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдкреАрдЖрд░ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рдорд╣рд╕реВрд╕ рдХрд░реЗрдВ :-)

@tvrprasad : @ChALkeR Node.js рдЯреАрдо рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ рдФрд░ рдпрд╣ рдкреЛрд╕реНрдЯ рдЬреНрдпрд╛рджрд╛рддрд░ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдпрд╣ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ рдХрд┐ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдмрд╣рд┐рд╖реНрдХреГрдд рд╣реИред рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рд╡рд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ tedious рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдореИрдВ

@ChALkeR : рдореИрдВ рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдмрд╣рд┐рд╖реНрдХрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдЗрд╕ рдмрд╣рд┐рд╖реНрдХрд░рдг рдХреЗ рдЖрд╕рдкрд╛рд╕ рдХреЗ рджрд╕реНрддрд╛рд╡реЗрдЬ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рджреБрд░реНрд▓рдн рд╣реИрдВред рдореИрдВрдиреЗ рдЕрдм рддрдХ рдЬреЛ рдЙрджрд╛рд╣рд░рдг рджреЗрдЦреЗ рд╣реИрдВ (рдЬреИрд╕реЗ node-mysql рд▓рд┐рдП рдкреАрдЖрд░) "рд╕рд░рд▓" рдЯреАрдПрд▓рдПрд╕ рдЙрдиреНрдирдпрди рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЬрд╣рд╛рдВ рдХрдиреЗрдХреНрд╢рди рдХреЛ рдЧреИрд░-рдЯреАрдПрд▓рдПрд╕ рд╕реЗ рдЯреАрдПрд▓рдПрд╕ рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЯреАрдбреАрдПрд╕ рдореЗрдВ, рдЯреАрдПрд▓рдПрд╕ рдЕрдкрдЧреНрд░реЗрдб рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╢рд╛рдорд┐рд▓ рд╣реИ, рд╕рднреА рд╣реИрдВрдбрд╢реЗрдХрд┐рдВрдЧ рдкреИрдХреЗрдЯреЛрдВ рдХреЛ рдЯреАрдбреАрдПрд╕ рд╕рдВрджреЗрд╢реЛрдВ рдореЗрдВ рд▓рдкреЗрдЯрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдФрд░ рдлрд┐рд░ рдПрдХ рдмрд╛рд░ рдХрдиреЗрдХреНрд╢рди рд╕реНрдерд╛рдкрд┐рдд рд╣реЛ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдЧреЗ рдХреЗ рд╕рднреА рдЯреАрдПрд▓рдПрд╕ рдкреИрдХреЗрдЯреЛрдВ рдХреЛ рд▓рдкреЗрдЯрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рдЗрд╕реЗ tls.createSecurePair рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рдирд╛ рдмрд╣реБрдд рд╕рд░рд▓ рдерд╛, рд▓реЗрдХрд┐рди рдкрд┐рдЫрд▓реА рдмрд╛рд░ рдЬрдм рдореИрдВрдиреЗ рдЗрд╕реЗ TLSSocket рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрдЬрдорд╛рдпрд╛, рддреЛ рдореИрдВ рдЗрд╕реЗ рдХрд╛рдо рдкрд░ рдирд╣реАрдВ рд▓рд╛ рд╕рдХрд╛ред рдореИрдВ

рдЬрдм рдореИрдВ рдЗрд╕ рдкрд░ рдкрд╣реБрдВрдЪреВрдВрдЧрд╛ рддреЛ рдореИрдВ рдлрд┐рд░ рд╕реЗ рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдмрд╣реБрдд рдХреБрдЫ рдмрджрд▓рд╛ рд╣реИред

рдПрдХ рдФрд░ рдореБрджреНрджрд╛ рдореИрдВ рдореЗрдВ рднрд╛рдЧ рдХрд┐ рд╕реЗ рдПрдХ рд╕реЙрдХреЗрдЯ рд▓рдкреЗрдЯрдХрд░ рд╣реИ readable-stream рдПрдХ рдореЗрдВ рдкреИрдХреЗрдЬ TLSSocket Node.js рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдПрдХ segfault (!) рдХрд╛ рдХрд╛рд░рдг рд╣реЛрдЧрд╛ред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдореЗрд░реЗ рдкрд╛рд╕ рдЕрднреА рдкреНрд░рдЬрдирди рдХреЗ рдЪрд░рдг рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИрдВред рдореИрдВ

@arthurschreiber рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж :-)

рд▓реЗрдХрд┐рди рдкрд┐рдЫрд▓реА рдмрд╛рд░ рдЬрдм рдореИрдВрдиреЗ рдЗрд╕реЗ TLSSocket рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рддреЛ рдореИрдВ рдЗрд╕реЗ рдХрд╛рдо рдкрд░ рдирд╣реАрдВ рд▓рд╛ рд╕рдХрд╛ред

рдЕрдЧрд░ рдпрд╣ рдХрд╛рдо рдЬреАрдердм рдкрд░ рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдПрдХ рдкреЙрдЗрдВрдЯрд░ рднреЗрдЬреЗрдВред рдореИрдВ рдЗрд╕реЗ рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕реБрдХ рд╣реВрдВред

@tvrprasad @arthurschreiber рдпрд╣рд╛рдВ https://nodejs.org/dist/latest-v6.x/docs/api/tls.html#tls_class_securepair

рдиреЛрдб v8.0.1 рдкрд░ рдЗрд╕реА рдореБрджреНрджреЗ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд┐рдпрд╛ред рдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рдХрдиреЗрдХреНрд╢рди рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдореЗрд░рд╛ рдРрдк рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддреНрд░реБрдЯрд┐ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рддрд╛ рд╣реИ:

(node:6344) [DEP0064] DeprecationWarning: tls.createSecurePair() is deprecated. Please use tls.Socket instead.

рдореИрдВ рдЕрдкрдиреЗ Microsoft SQL рд╕рд░реНрд╡рд░ рдбреЗрдЯрд╛рдмреЗрд╕ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП patriksimek/node-mssql рдФрд░ tedious рдбреНрд░рд╛рдЗрд╡рд░ ( node-mssql рдХрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдбреНрд░рд╛рдЗрд╡рд░) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдердХрд╛рдК рдбреНрд░рд╛рдЗрд╡рд░ рдХреЗ рд╕рд╛рде рдиреЛрдб- mssql рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ

Listening on port 4000
(node:4402) [DEP0064] DeprecationWarning: tls.createSecurePair() is deprecated. Please use tls.Socket instead.

рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдЧрд▓рдд рди рд╕рдордЭреЗрдВ рдФрд░ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рдЖрдкрдХреЗ рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рдХреЛрдИ рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рд╣реИ рдХрд┐ рдЗрд╕реЗ рдХрдм рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛?

рдкреИрдХреЗрдЬ 'mssql' рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдФрд░ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛:
{
рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ: рд╕рдЪ
}

(рдиреЛрдб: 13508) [рдбреАрдИрдкреА0064] рдкрджрд╛рд╡рдирдд рдЪреЗрддрд╛рд╡рдиреА: tls.createSecurePair () рдкрджрд╛рд╡рдирдд рд╣реИред рдХреГрдкрдпрд╛ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп tls.Socket рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

рдЬрдм рдиреЛрдб рдЯреАрдо рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд╣рдЯрд╛рддреА рд╣реИ рддреЛ рдиреЛрдб рдореЗрдВ рд╣рдЯрд╛рдиреЗ рдХреА рд╕рдордп рд╕реАрдорд╛ рдХреНрдпрд╛ рд╣реИ? рдмрд╕ рдЙрддреНрд╕реБрдХред

рд╕рдВрднрд╡рдд: рдиреЛрдб 9 рдпрд╛ 10 рдореЗрдВ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдХрдо рд╕реЗ рдХрдо 4 рд╡рд░реНрд╖реЛрдВ рдХреЗ рд▓рд┐рдП рдбреЙрдХ-рдмрд╣рд┐рд╖реНрдХреГрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред :-/ рдпрд╣ рдПрдХрдорд╛рддреНрд░ рд▓реЛрдХрдкреНрд░рд┐рдп рдПрдирдкреАрдПрдо рдкреИрдХреЗрдЬ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ рдЬреЛ рдЕрднреА рднреА рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИред

рдХреНрдпрд╛ рд╕рд╣рдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рдХреЛрдИ рд╕рдордпрд░реЗрдЦрд╛ рд╣реИ рдХрд┐ рдкрд░рд┐рд╡рд░реНрддрди рдХрдм рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛?

рдЗрд╕реЗ рдЖрдЬ рд╣реА рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВрдиреЗ рдЕрднреА-рдЕрднреА рдЕрдкрдиреЗ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдиреЛрдб 8.9.0 lts рдореЗрдВ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рд╣реИред рдореЗрд░реЗ рдкрд╛рд╕ рдЕрднреА рджреЛ рднрд╛рд░реА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╡реЗ рджреЛрдиреЛрдВ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдореИрдВ рджреЗрдЦреВрдВрдЧрд╛ рдХрд┐ рдХреНрдпрд╛ рдореИрдВ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рдордп рдирд┐рдХрд╛рд▓ рд╕рдХрддрд╛ рд╣реВрдВред

@Iiridayn рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛!
рдореИрдВрдиреЗ рдЗрд╕ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реА, рд▓реЗрдХрд┐рди рдпрд╣ рдкрддрд╛ рдирд╣реАрдВ рд▓рдЧрд╛ рд╕рдХрд╛ рдХрд┐ TLSSocket рд╕реЗ рд╣реИрдВрдбрд╢реЗрдХ рдкреИрдХреЗрдЯ рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рдП, https://github.com/tediousjs/tedious/issues/515#issuecomment -283191248 рдХреЗ рд╕рдорд╛рди рдмрд┐рдВрджреБ рдкрд░ рдЕрдЯрдХрд╛ рд╣реБрдЖ рд╣реИ: рднреНрд░рдорд┐рдд:
рдпрд╣ рд╕реБрдирдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛ рдХрд┐ рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЙрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рд╣реИрдВред

рдЙрд╕ рдкрд░ рдХреЛрдИ рдкреНрд░рдЧрддрд┐? рдореИрдВ Azure рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣рд╛ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдмрд╕ рдЕрдЧрд░ рдпрд╣ рдорджрдж рдХрд░рддрд╛ рд╣реИред
рдореИрдВ рдЖрднрд╛рд░реА рд░рд╣реВрдВрдЧрд╛ рдЕрдЧрд░ рдХрд┐рд╕реА рдиреЗ рдореБрдЭреЗ рдЬрд▓реНрджреА рд╕реЗ рд╕рдордЭрд╛рдпрд╛ рдХрд┐ рдРрдк рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреНрдпрд╛ рд╣реИрдВ, рдЬрдмрдХрд┐ рдЗрд╕реЗ рдмрд╣рд┐рд╖реНрдХреГрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдЕрдиреБрд░реЛрдзрд┐рдд SQL рдХреНрд╡реЗрд░реА рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХреА рдЧрдИ рд╣реИрдВ рдФрд░ рдореБрдЭреЗ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдХрд╛рд░рдг рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕ рдкрд░ рдЧреНрд░рдВрде I рдкрдврд╝рд╛ рд╣реИ рдмрд╣реБрдд рд╡рд╛рдХреНрдкрдЯреБ рдирд╣реАрдВ рд╣реИрдВред

рдкрд╣рд▓реЗ рд╣реА, рдЖрдкрдХрд╛ рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рджред

@ Jorgeee1 рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рд╣реИ, рдпрд╣ рдЖрдкрдХреА рдкрд░реЗрд╢рд╛рдиреА рдХрд╛ рдХрд╛рд░рдг рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИред рдореИрдВ рднреА Azure DB рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдердХрд╛рдК рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ, рдФрд░ рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред

рдореИрдВрдиреЗ рдХрдЪреНрдЪреЗ рд╣реИрдВрдбрд╢реЗрдХ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП createSecurePair рдХреЛ TLSSocket + рдПрдХ TCP рд╕рд░реНрд╡рд░ рд╕реЗ рдмрджрд▓рдиреЗ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдХрд╛ рдПрдХ рддреНрд╡рд░рд┐рдд рдкреНрд░рдорд╛рдг рд▓рд┐рдЦрд╛ред рдЖрдк рдЗрд╕реЗ рдпрд╣рд╛рдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ ред рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдЪрд▓рд╛рдП рдЬрд╛ рд╕рдХрдиреЗ рд╡рд╛рд▓реЗ рдПрдХреАрдХрд░рдг рдкрд░реАрдХреНрд╖рдг рдкрд╛рд╕ рд╣реЛ рдЧрдПред

рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЗрд╕ рдореБрджреНрджреЗ рдХрд╛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ (рдЬрдм рддрдХ рдХрд┐ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реЙрдХреЗрдЯ рдЖрджрд┐ рдЦрд╛рдирд╛ рдареАрдХ рдирд╣реАрдВ рд╣реИ)ред рдпрд╣ рдПрдХ рдЪрд░реНрдЪрд╛ рд╕реНрдЯрд╛рд░реНрдЯрд░ рдХреЗ рдЕрдзрд┐рдХ рд╣реИред https://github.com/nodejs/help/issues/1010 рдкрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕реБрдЭрд╛рд╡ рдФрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛

@ joux3 рдпрд╣ рдмрд╣реБрдд рдмрдврд╝рд┐рдпрд╛ рд╣реИ рдХреНрдпрд╛ рдЖрдк рдкреАрдЖрд░ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ? рд╡рд╣рд╛рдВ рд╕рдореАрдХреНрд╖рд╛ рдХрд░рдирд╛ рдФрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛрдЧрд╛ред

рднрд╛рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдЖрд╕рд╛рдиреА рдирд╣реАрдВ рд╣реБрдИ рд╣реИ, рдПрдХ рддрд┐рд╣рд╛рдИ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рд╣рдо MySQL рдореЗрдВ рднреА рдорд╛рдЗрдЧреНрд░реЗрдЯ рд╣реЛ рдЧрдП рд╣реИрдВред рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдореИрдВ рдЗрд╕реЗ рдареАрдХ рдирд╣реАрдВ рдХрд░ рдкрд╛рдКрдВрдЧрд╛ - рдЖрдкрдХреЛ рд╢реБрднрдХрд╛рдордирд╛рдПрдБ :)ред

рдХреГрдкрдпрд╛ рдЗрд╕реЗ рдареАрдХ рдХрд░реЗрдВ, рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рдорд╕реНрдпрд╛ рд╣реИ

рд╣реЗ рдЖрдк рд╕рднреА,

рдореИрдВ рдпрд╣рд╛рдВ рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдкрд░ рдПрдХ рддреНрд╡рд░рд┐рдд рдЕрдкрдбреЗрдЯ рджреЗрддрд╛ рд╣реВрдВред рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдмрд╣рд┐рд╖реНрдХрд░рдг рд╕рдВрджреЗрд╢ рдПрдХ рдЙрдкрджреНрд░рд╡ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред tls.createSecurePair рдХреЛ рдкрджрд╛рд╡рдирдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд▓рдШреБ рдФрд░ рдордзреНрдпрдо рдЕрд╡рдзрд┐ рдХреЗ рднрд╡рд┐рд╖реНрдп рдХреЗ рд▓рд┐рдП, рдпрд╣ рдХрд╣реАрдВ рдирд╣реАрдВ рдЬрд╛рдиреЗ рд╡рд╛рд▓рд╛ рд╣реИред https://github.com/nodejs/node/pull/17882 рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдЗрд╕реЗ рдЬрд▓реНрдж рд╣реА рд╣рдЯрд╛рдпрд╛ рдирд╣реАрдВ рдЬрд╛рдПрдЧрд╛ред

рд╕рд╛рде рд╣реА, https://github.com/nodejs/node/pull/17882 рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдиреЛрдб.рдЬреЗрдПрд╕ рдПрдкреАрдЖрдИ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ tls.createSecurePair рдкреБрди: рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд░рддрд╛ рд╣реИ, рдПрдХ (рдЕрднреА рдХреЗ рд▓рд┐рдП) рдЖрдВрддрд░рд┐рдХ DuplexSocket рд╡рд░реНрдЧред рдЗрд╕ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреА рдореВрд▓ рдмрд╛рддреЗрдВ рдареАрдХ рд╡рд╣реА рд╣реИрдВ рдЬреЛ рд╣рдореЗрдВ tls.createSecurePair рд╕реЗ рджреВрд░ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдердХрд╛рдК рд╣реЛрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рджрд┐рд▓рдЪрд╕реНрдк ЁЯШБ рдХрд╛ рд╕рд╣рд╛рд░рд╛ рд▓рд┐рдП рдмрд┐рдирд╛, рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╡реНрдпрд╡рд╣рд╛рд░реНрдп рд╣реИрдХ рдирд╣реАрдВ рдЬреИрд╕рд╛ рдХрд┐ @joux3 рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╣рдореЗрдВ рд╢рд╛рдпрдж рдЕрднреА рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛ рдЦреБрдж рдХрд╛ DuplexSocket рд╕рдВрд╕реНрдХрд░рдг рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдХрдо рд╕реЗ рдХрдо рдЕрдм рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдердХрд╛рдК рдореЗрдВ рдХреИрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдП рдЬрдм рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЬрд╛рдП рдХрд┐ tls.createSecurePair рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрдм рд╣рдЯрд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛ .

рдХреГрдкрдпрд╛ рд╣рдореЗрдВ рдмрддрд╛рдПрдВ рдЖрдк рдХреНрдпрд╛ рд╕реЛрдЪрддреЗ рд╣реИрдВ! рдореИрдВ

@arthurschreiber Fwiw, рдореИрдВрдиреЗ рдЕрднреА-рдЕрднреА рдЙрд╕ DuplexPair рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ https://www.npmjs.com/package/duplexpair рдкрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ рд╣реИ tls.createSecurePair() рдмрд╣реБрдд рдЖрд╕рд╛рдиреА рд╕реЗ рджрд┐рдЦрдиреЗ рд╡рд╛рд▓рд╛ рд╣реЛ?

@addaleax рд╕реНрд╡реАрдЯ! тЭдя╕П рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реИ рдФрд░ рдореИрдВ рджреЗрдЦреВрдВрдЧрд╛ рдХрд┐ рдХреНрдпрд╛ рдореИрдВ рдЗрд╕реЗ рдЬреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реВрдВ рдФрд░ рд╣рдореЗрдВ tls.createSecurePair рдЬрд▓реНрдж рд╕реЗ рдЬрд▓реНрдж рд╣рдЯрд╛ рд╕рдХрддрд╛ рд╣реВрдВ! рдмрд╣реБрдд - рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж! рдореИрдВ

@arthurschreiber рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдкреИрдЪ рдЗрд╕ рддрд░рд╣ рд╕рд░рд▓ рджрд┐рдЦ рд╕рдХрддрд╛ рд╣реИ:

diff --git a/package.json b/package.json
index bca5b266849d..8cc0ed957577 100644
--- a/package.json
+++ b/package.json
@@ -43,6 +43,7 @@
     "babel-runtime": "^6.26.0",
     "big-number": "0.3.1",
     "bl": "^1.2.0",
+    "duplexpair": "^1.0.1",
     "iconv-lite": "^0.4.11",
     "readable-stream": "^2.2.6",
     "sprintf": "0.1.5"
diff --git a/src/message-io.js b/src/message-io.js
index 6c2a15c32a9f..a1de3a1e91c0 100644
--- a/src/message-io.js
+++ b/src/message-io.js
@@ -1,7 +1,9 @@
+'use strict';
 const tls = require('tls');
 const crypto = require('crypto');
 const EventEmitter = require('events').EventEmitter;
 const Transform = require('readable-stream').Transform;
+const DuplexPair = require('duplexpair');

 const Packet = require('./packet').Packet;
 const TYPE = require('./packet').TYPE;
@@ -84,10 +86,14 @@ module.exports = class MessageIO extends EventEmitter {
   startTls(credentialsDetails, hostname, trustServerCertificate) {
     const credentials = tls.createSecureContext ? tls.createSecureContext(credentialsDetails) : crypto.createCredentials(credentialsDetails);

-    this.securePair = tls.createSecurePair(credentials);
+    const duplexpair = new DuplexPair();
+    this.securePair = {
+      cleartext: new tls.TLSSocket(duplexpair.socket1),
+      encrypted: duplexpair.socket2
+    };
     this.tlsNegotiationComplete = false;

-    this.securePair.on('secure', () => {
+    this.securePair.cleartext.on('secure', () => {
       const cipher = this.securePair.cleartext.getCipher();

       if (!trustServerCertificate) {

рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдирд┐рдпрдорд┐рдд рдкрд░реАрдХреНрд╖рдг рд╕реВрдЯ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреИрд╕реЗ рдЬрд╛рдирд╛ рд╣реИ ...

рдореИрдВрдиреЗ рд╕рд┐рдХреНрдпреЛрд░рдкреЗрдпрд░ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рд╢реЙрдЯ рджрд┐рдпрд╛ред рдПрдХреАрдХрд░рдг рдкрд░реАрдХреНрд╖рдг рдареАрдХ рд▓рдЧрддрд╛ рд╣реИ, рдиреЛрдб 9 рдкрд░ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛ред https://github.com/joux3/tedious/commit/6d255fbdaa2f9afd388617e6e34815cae95292a0

рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдХреБрдЫ рдЕрд╡рд▓реЛрдХрди рд╣реИрдВ (рд▓реЗрдХрд┐рди рд╢рд╛рдпрдж рдкреАрдЖрд░ рдХреЗ рд▓рд┐рдП рдореБрджреНрджреЛрдВ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреИрдЪ рдХрд╛рдлреА рдЕрдЪреНрдЫрд╛ рд╣реИ?):

  • Node.js 6 Assertion failed: (uv__stream_fd(stream) >= 0), function uv_read_start, file ../deps/uv/src/unix/stream.c, line 1517. рдкрд░ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХреНрд░реИрд╢ рд╣реЛрдиреЗ рд▓рдЧрддрд╛ рд╣реИ
  • рдореБрдЭреЗ рдкреБрди: рдкреНрд░рдпрд╛рд╕ рдЯрд╛рдЗрдордЖрдЙрдЯ рдкрд░реАрдХреНрд╖рдг рд╕реЗ рдирдХрд▓реА рдЯрд╛рдЗрдорд░ рдХреЛ рд╣рдЯрд╛рдирд╛ рдкрдбрд╝рд╛, рдирдХрд▓реА рдЯрд╛рдЗрдорд░ рдЖрдВрддрд░рд┐рдХ рд░реВрдк рд╕реЗ рдбреБрдкреНрд▓реЗрдХреНрд╕рдкреЗрдпрд░ рдХреЛ рддреЛрдбрд╝рдиреЗ рд▓рдЧрддрд╛ рд╣реИ
  • рдореИрдВрдиреЗ рдЕрдирдПрдиреНрдХреНрд░рд┐рдкреНрдЯреЗрдб рдХрдиреЗрдХреНрд╢рди рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ред рд╡реЗ рддрд░реНрдХ рдкреНрд░рд╡рд╛рд╣ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ (рд╕рд┐рдЧреНрдирд▓ рдкрд╛рдЗрдк рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдкреНрд░рдЪрд╛рд░рд┐рдд рдирд╣реАрдВ рд▓рдЧ рд░рд╣реЗ рдереЗ, рдЗрд╕рд▓рд┐рдП рд╕реЙрдХреЗрдЯ рдкрд░ рдореИрдиреНрдпреБрдЕрд▓ close рд╣реИрдВрдбрд▓рд░ рд╣реИ)'

рдЖрдкрдХреЗ рдХрд╛рдо рдХреЗ рд▓рд┐рдП @addaleax рдХреЛ рдмрд╣реБрдд-рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж!

@ joux3 рдХреНрдпрд╛ рдЖрдкрдХрд╛ рдХрд╛рдВрдЯрд╛ рдиреЛрдб 8--рд╡рд░реНрддрдорд╛рди рдПрд▓рдЯреАрдПрд╕ рд░рд┐рд▓реАрдЬ рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИ? рдФрд░ рдХреНрдпрд╛ рдпрд╣ рд╕рдВрднрд╡рддрдГ рдПрдХ рдкреБрд▓ рдЕрдиреБрд░реЛрдз рдЦреЛрд▓рдирд╛ рд╣реИ? рдореИрдВ рдпрд╣ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдХрд┐рд╕реА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдореИрдВрдиреЗ рдЗрд╕реЗ https://github.com/patriksimek/node-mssql/ рдХреЗ рд╕рдВрдпреЛрдЬрди рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рд╣реИ, рдзрдиреНрдпрд╡рд╛рдж!

рдореБрдЭреЗ рдкреБрди: рдкреНрд░рдпрд╛рд╕ рдЯрд╛рдЗрдордЖрдЙрдЯ рдкрд░реАрдХреНрд╖рдг рд╕реЗ рдирдХрд▓реА рдЯрд╛рдЗрдорд░ рдХреЛ рд╣рдЯрд╛рдирд╛ рдкрдбрд╝рд╛, рдирдХрд▓реА рдЯрд╛рдЗрдорд░ рдЖрдВрддрд░рд┐рдХ рд░реВрдк рд╕реЗ рдбреБрдкреНрд▓реЗрдХреНрд╕рдкреЗрдпрд░ рдХреЛ рддреЛрдбрд╝рдиреЗ рд▓рдЧрддрд╛ рд╣реИ

@ joux3 рд╡рд╣ рдХреМрди рд╕реА рдкрд░реАрдХреНрд╖рд╛ рд╣реЛрдЧреА? (рдореБрдЭреЗ рдЦреЗрдж рд╣реИ, рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рд▓рд┐рдП рдЬреЛ рдХреБрдЫ рднреА рджреЗрдЦрд╛ рд╣реИ рдЙрд╕рд╕реЗ рдкрд░реЗ рдореИрдВ рдЗрд╕ рдХреЛрдб рдЖрдзрд╛рд░ рд╕реЗ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдирд╣реАрдВ рд╣реВрдВ)

@addaleax , рдЕрд╕рдлрд▓ рдкрд░реАрдХреНрд╖рдг рд╣реИ https://github.com/tediousjs/tedious/blob/f5a0f95a5a522ad6a312170201b829e70c866976/test/integration/connection-retry-test.js#L73 -L104
рдЯрд╛рдЗрдорд░ рдХреЛ рдпрд╣рд╛рдВ рдЕрдХреНрд╖рдо рдХрд░рдирд╛: https://github.com/tediousjs/tedious/pull/689/files#diff -ed1dc3ba8a10a8fb4b18a528b35bad00ред
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдореИрдВрдиреЗ рдХреЗрд╡рд▓ рдирдХрд▓реА setTimeout https://github.com/tediousjs/tedious/pull/689/commits/ff5d5eb1a3603db05266306a823fa49a98b50209 рджреНрд╡рд╛рд░рд╛ рдирдХрд▓реА рдЯрд╛рдЗрдорд░ рдмрд╣рд╛рд▓ рдХрд┐рдпрд╛

@jimmont , рдореИрдВрдиреЗ https://github.com/tediousjs/tedious/pull/689 рдкрд░ рдПрдХ рдкреБрд▓ рдЕрдиреБрд░реЛрдз рдЦреЛрд▓рд╛ (рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкреАрдЖрд░ рдирд╛рдо рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдЖрдИрдбреА рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рдирд╛ рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИ ...) рдПрдХреАрдХрд░рдг рдкрд░реАрдХреНрд╖рдг рдиреЛрдб 8 рдкрд░ рдкрд╛рд╕ рд╣реЛрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрднреА рднреА рдХреБрдЫ рдХрд╛рдо рдХрд░рдирд╛ рдмрд╛рдХреА рд╣реИред

рдЗрд╕ ASAP рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП!

рдЗрд╕ рдкрд░ рдХреЛрдИ рдкреНрд░рдЧрддрд┐? рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рд╣рдореЗрдВ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдЕрдкрдбреЗрдЯ рдорд┐рд▓ рд╕рдХреЗред

рдЯреНрд░реИрдХрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдкреАрдЖрд░ #689 рдХреЛ рдЬреЛрдбрд╝рдирд╛ред

рдРрд╕реА рджреБрдирд┐рдпрд╛ рдореЗрдВ рдЬрд╣рд╛рдВ stdout рдХреЗ рдмрдЬрд╛рдп stderr рдХреЛ рдЪреЗрддрд╛рд╡рдирд┐рдпрд╛рдВ рднреЗрдЬреА рдЬрд╛рддреА рд╣реИрдВред <fail/>

рдХреЛрдИ рднреА рдЬрд╛рдирдХрд╛рд░реА?

738 рдореЗрдВ рдПрдХ рд╕реБрдзрд╛рд░ рд╣реИ рдФрд░ @tediousjs/microsoft-contributors рдЯреАрдо рдХреЗ рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рджреНрд╡рд╛рд░рд╛ рд╕рдореАрдХреНрд╖рд╛ рдХрд┐рдП рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж рдЗрд╕реЗ рдорд░реНрдЬ рдФрд░ рд░рд┐рд▓реАрдЬрд╝ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдЖрдЧреЗ рдФрд░ рдкреАрдЫреЗ рд▓рдВрдмреЗ рд╕рдордп рдХреЗ рдмрд╛рдж, рдпрд╣ рдЕрдВрддрддрдГ (рдФрд░ рдареАрдХ рд╕реЗ) https://github.com/tediousjs/tedious/pull/738 рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рддрдп рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ [email protected] рдЕрдм npm рдкрд░ рдЙрдкрд▓рдмреНрдз рд╣реИред рдЗрд╕реЗ рд╡рд░реНрддрдорд╛рди рдореЗрдВ next рд░реВрдк рдореЗрдВ рдЯреИрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдореИрдВ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реВрдВрдЧрд╛ рдХрд┐ рдЗрд╕реЗ рдЬрд▓реНрдж рд╣реА latest рд░реВрдк рдореЗрдВ рдЯреИрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдЖрдкрдХреЗ рдзреИрд░реНрдп рдФрд░ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХреЗ рд▓рд┐рдП рд╕рднреА рдХрд╛ рдзрдиреНрдпрд╡рд╛рдж! рдореИрдВ

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

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

jstephens7 picture jstephens7  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

David-Engel picture David-Engel  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

yianni-ververis picture yianni-ververis  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

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

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