Tslint: рд░реЛрдбрдореИрдк: TSLint -> ESLint

рдХреЛ рдирд┐рд░реНрдорд┐рдд 23 рдлрд╝рд░ре░ 2019  ┬╖  52рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: palantir/tslint

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рдЗрд╕ рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ рдореЗрдВ рдкрдврд╝рд╛ рд╣реЛрдЧрд╛, рд╣рдо 2019 рдореЗрдВ TSLint рдХреЛ рдкрджрд╛рд╡рдирдд рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдорд╛рдирдХ рд▓рд┐рдВрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ ESLint рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рддрддреНрдХрд╛рд▓ рдмрд╣рд┐рд╖реНрдХрд░рдг рдирд╣реАрдВ рд╣реЛрдЧрд╛; рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рдмрд┐рдирд╛ рдХрд┐рд╕реА рдкреНрд░рддрд┐рдЧрдорди рдХреЗ рдирдП рдЯреВрд▓рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╣рдЬ рд╕рдВрдХреНрд░рдордг рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдХрд╛рдо рдХрд░рдирд╛ рд╣реИред TSLint рдореЗрдВ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ, рдкрд░реАрдХреНрд╖рдг рд╕реВрдЯ рдФрд░ рдЙрдкрдпреБрдХреНрддрддрд╛рдПрдВ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рд╣рдо рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдореЗрдВ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░рддреЗ рд╣реИрдВред рдПрдХ рд╕рдордп рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрдм рджреЛ рдЯреВрд▓ рдХреЗ рдмреАрдЪ рдУрд╡рд░рд▓реИрдк рд╣реЛ рдФрд░ TSLint рдХреЗ рд╢реБрд░реБрдЖрддреА рдЕрдкрдирд╛рдиреЗ рд╡рд╛рд▓реЛрдВ рдХреЛ рдкреВрд░реНрдг рдХреЛрдб рдЬрд╛рдВрдЪ рдХрд╡рд░реЗрдЬ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП _both_ рд▓рд┐рдВрдЯрд░реНрд╕ рдЪрд▓рд╛рдиреЗ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХреА рдЬрд╛рддреА рд╣реИ (рдПрдХ рдЙрдЪрд┐рдд рдбрд┐рдЧреНрд░реА рддрдХ рдЬреИрд╕реЗ рдХрд┐ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рднрд╛рд░реА рдиреБрдХрд╕рд╛рди рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ)ред

рдореИрдВ рдЗрд╕ рд░реЗрдкреЛ рдореЗрдВ рдХреБрдЫ рдлреАрдЪрд░ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдмрдВрдж рдХрд░ рджреВрдВрдЧрд╛ рдЬреЛ рдЕрдм рджрд╛рдпрд░реЗ рд╕реЗ рдмрд╛рд╣рд░ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдЙрдореНрдореАрдж рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЙрдиреНрд╣реЗрдВ ESLint/ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ-рдПрд╕реНрд▓рд┐рдиреНрдЯ рд░реЛрдбрдореИрдк рдореЗрдВ рд╕рдВрднрд╛рд▓рд╛ рдЬрд╛рдПрдЧрд╛ред рдирд┐рдпрдореЛрдВ рдХреА рдПрдХ рд╢реНрд░реЗрдгреА рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП __рдирдП рдлреАрдЪрд░ рдЕрдиреБрд░реЛрдз__ рдХреЗ рдмрдВрдж/рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХрд┐рдП рдЬрд╛рдиреЗ рдХреА рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рдирд┐рдпрдореЛрдВ рдХрд╛ рдкреНрд░рд╛рд░реВрдкрдг рд╣реИ ред рдореИрдВрдиреЗ рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рдЗрди рдирд┐рдпрдореЛрдВ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдкрд▓рдВрддрд┐рд░ рдореЗрдВ рдкреНрд░реАрдЯрд┐рдпрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рд╕реНрд╡рд░реВрдкрдг рдХреЛрдб рдХреЗ рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдПрдХ рдмреЗрд╣рддрд░ рдЙрдкрдХрд░рдг рдорд╛рдирддреЗ рд╣реИрдВред

TSLint рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрдЧ рдлрд┐рдХреНрд╕ рдФрд░ рдЕрдкрдбреЗрдЯ рдХреЗ рд╕рд╛рде рд░рд┐рд▓реАрдЬ рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдЧрд╛ рдЬреЛ рдЗрд╕реЗ рдирд╡реАрдирддрдо рдХрдВрдкрд╛рдЗрд▓рд░ / рднрд╛рд╖рд╛ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдЕрдк-рдЯреВ-рдбреЗрдЯ рд░рдЦрддрд╛ рд╣реИред


рдЕрдкрдбреЗрдЯ (рдЬреВрди 2019): рдПрдХ рдЕрдзрд┐рдХ рдареЛрд╕ рд░реЛрдбрдореИрдк рдЯрд╛рдЗрдорд▓рд╛рдЗрди, рдЬреЛ @JoshuaKGoldberg рдФрд░ tslint-contrib-microsoft рдХреЗ рд╕рд╛рде рд╕рдордиреНрд╡рдпрд┐рдд рд╣реИ:

  • __рдЕрдЧрд╕реНрдд 1st, 2019__: рдирдП _core_ рдирд┐рдпрдореЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдирд╛ рдмрдВрдж рдХрд░реЗрдВред рдЕрднреА рднреА рдмрдЧ рдлрд┐рдХреНрд╕, рдорд╛рдореВрд▓реА рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдФрд░ рдирд┐рдпрдо рд╕реБрдзрд╛рд░реЛрдВ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВред рдХрд╕реНрдЯрдо рдирд┐рдпрдо рд╣рдореЗрд╢рд╛ рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕ рд░реЗрдкреЛ рдХреЗ рдмрд╛рд╣рд░ рдмрдирд╛рдП рд░рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
  • __рдирд╡рдВрдмрд░ 1st, 2019__: рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдпрд╛ рдирд┐рдпрдо рд╕рдВрд╡рд░реНрджреНрдзрди рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдирд╛ рдмрдВрдж рдХрд░реЗрдВ (рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рдЕрдкрд╡рд╛рдж рдХреЗ рд╕рд╛рде рдЬреЛ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ-рдПрд╕реНрд▓рд┐рдВрдЯ рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдирд╛ рдЖрд╕рд╛рди рдмрдирд╛рддреЗ рд╣реИрдВ)ред рдЕрднреА рднреА рдмрдЧ рдлрд┐рдХреНрд╕ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░реЗрдВред
  • __рдЬрдирд╡рд░реА 1st, 2020__: рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рддреЛрдбрд╝рдХрд░ рд╢реБрд░реВ рдХрд┐рдП рдЧрдП рдХреНрд░реИрд╢ рдХреЗ рд▓рд┐рдП рд╕реБрд░рдХреНрд╖рд╛ рд╕реБрдзрд╛рд░реЛрдВ рдФрд░ рд╕реБрдзрд╛рд░реЛрдВ рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдХреБрдЫ рднреА рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдирд╛ рдмрдВрдж рдХрд░реЗрдВред
  • __рджрд┐рд╕рдВрдмрд░ 1st, 2020__: рдХрд┐рд╕реА рднреА рдкреАрдЖрд░ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдирд╛ рдмрдВрдж рдХрд░реЗрдВ

рдЕрджреНрдпрддрди (рдЕрдЧрд╕реНрдд 2019): рдПрдХ CLI рдХрдорд╛рдВрдб рдХреЗ рд▓рд┐рдП tslint-to-eslint-config рджреЗрдЦреЗрдВ рдЬреЛ TSLint рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ ESLint рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рддрд╛ рд╣реИред


рдЕрдкрдбреЗрдЯ (рдорд╛рд░реНрдЪ 2020): #4914 рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХреЗ рдмрд╛рдж 1 рдЬрдирд╡рд░реА рдХреА рд╕рдордп рд╕реАрдорд╛ рдореЗрдВ _"рдФрд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рддреЛрдбрд╝рдХрд░ рд╢реБрд░реВ рдХрд┐рдП рдЧрдП рдХреНрд░реИрд╢ рдХреЗ рд▓рд┐рдП рд╕реБрдзрд╛рд░"_ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ред

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

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╕реАрдПрд▓рдЖрдИ рдХрдорд╛рдВрдб рд╣реЛрдирд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдЬреЛ рдПрдХ tslint.json рдХреЛ рдПрдХ eslint.json рдкрд░ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рддрд╛ рд╣реИ, рд╕рдордХрдХреНрд╖ рдирд┐рдпрдореЛрдВ рдФрд░ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рдореИрдкрд┐рдВрдЧ рдХрд░рддрд╛ рд╣реИред рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ рдпрд╣ рдЙрди рдирд┐рдпрдореЛрдВ рдХреЛ рд╣рдЯрд╛ рджреЗрдЧрд╛ рдЬрд┐рдиреНрд╣реЗрдВ tslint.json рд╕реЗ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЙрди рдирд┐рдпрдореЛрдВ рдХреЛ рдмрдирд╛рдП рд░рдЦрддрд╛ рд╣реИ рдЬреЛ рдЕрднреА рддрдХ рд╕рдордХрдХреНрд╖ рдирд╣реАрдВ рд╣реИрдВ (рдпрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ), рддрд╛рдХрд┐ tslint.json рдЦрд╛рд▓реА рд╣реЛрдиреЗ рддрдХ рдирд┐рдпрдо рдХреЛ рд╕рдордп рдХреЗ рд╕рд╛рде рдмрд╛рд░-рдмрд╛рд░ рдЪрд▓рд╛рдпрд╛ рдЬрд╛ рд╕рдХреЗред рдХрд┐рд╕реА рдмрд┐рдВрджреБ рдкрд░ рдФрд░ рд╣рдо рдкреВрд░реА рддрд░рд╣ рд╕реЗ ESLint рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

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

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╕реАрдПрд▓рдЖрдИ рдХрдорд╛рдВрдб рд╣реЛрдирд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдЬреЛ рдПрдХ tslint.json рдХреЛ рдПрдХ eslint.json рдкрд░ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рддрд╛ рд╣реИ, рд╕рдордХрдХреНрд╖ рдирд┐рдпрдореЛрдВ рдФрд░ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рдореИрдкрд┐рдВрдЧ рдХрд░рддрд╛ рд╣реИред рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ рдпрд╣ рдЙрди рдирд┐рдпрдореЛрдВ рдХреЛ рд╣рдЯрд╛ рджреЗрдЧрд╛ рдЬрд┐рдиреНрд╣реЗрдВ tslint.json рд╕реЗ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЙрди рдирд┐рдпрдореЛрдВ рдХреЛ рдмрдирд╛рдП рд░рдЦрддрд╛ рд╣реИ рдЬреЛ рдЕрднреА рддрдХ рд╕рдордХрдХреНрд╖ рдирд╣реАрдВ рд╣реИрдВ (рдпрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ), рддрд╛рдХрд┐ tslint.json рдЦрд╛рд▓реА рд╣реЛрдиреЗ рддрдХ рдирд┐рдпрдо рдХреЛ рд╕рдордп рдХреЗ рд╕рд╛рде рдмрд╛рд░-рдмрд╛рд░ рдЪрд▓рд╛рдпрд╛ рдЬрд╛ рд╕рдХреЗред рдХрд┐рд╕реА рдмрд┐рдВрджреБ рдкрд░ рдФрд░ рд╣рдо рдкреВрд░реА рддрд░рд╣ рд╕реЗ ESLint рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЕрдЪреНрдЫреА рдЦрдмрд░ред
ESLint рд▓реЛрдЧреЛрдВ рдиреЗ TS рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓реЗ рд╣реА рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ-рдПрд╕рд▓рд┐рдВрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ рд╣реИред
рд╡реЗ рднреА рдорджрдж рдХреА рддрд▓рд╛рд╢ рдореЗрдВ рд╣реИрдВред рдпрд╣рд╛рдБ рдмрдпрд╛рди рд╣реИред .

рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдХреЗ рдмрд╛рдж tslint рдирд┐рдпрдо рд▓рд┐рдЦрдиреЗ рдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реЛрдЧрд╛?

рдХреНрдпрд╛ рдПрд╕реНрд▓рд┐рдВрдЯ рдХреЛ рдЬреЗрдПрд╕ рд╕реЗ рдЯреАрдПрд╕ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рд╣реИ? рдореБрдЭреЗ рдпрд╣ рдХрд╣рдиреЗ рд╕реЗ рдирдлрд░рдд рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдПрд╕реНрд▓рд┐рдВрдЯ рдХреЛ ts рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдирд┐рдпрдо рд▓рд┐рдЦрдирд╛ рдЙрддрдирд╛ рд╕реБрдЦрдж рдирд╣реАрдВ рд╣реЛрдЧрд╛ред

рдореЗрд░рд╛ рдмреБрд░рд╛, рдпрд╣ рдПрд╕реНрд▓рд┐рдВрдЯ рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕рдХрд╛ рд╣рдо рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ, рд╣рдо рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ-рдПрд╕рд▓рд┐рдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ, рдФрд░ рдЕрдзрд┐рдХ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ рдореИрдВ рдХреЛрдИ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

рдХреНрдпрд╛ рд░реЗрдкреЛ рдореЗрдВ readme.md рд╕реЗ рдкрджрд╛рд╡рдирдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдпреЛрдЬрдирд╛ рдХрд╛ рд╕рдВрджрд░реНрдн рджреЗрдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛? рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЗрд╡рд▓ рдХреБрдЫ рд▓реЛрдЧ рд╣реА рдЗрд╕ рдпреЛрдЬрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рд╕рд╛рдорд╛рдиреНрдп рдЬреНрдЮрд╛рди рдирд╣реАрдВ рд╣реИред рдзрдиреНрдпрд╡рд╛рдж!

@ joeyj-msft рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, a395501739bf7f0f166e5b0ccb355c0e9500445a рдореЗрдВ рдЖрджрд┐рджрд╣рд┐рдпрд╛ рджреНрд╡рд╛рд░рд╛ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ред

typescript-eslint рдореЗрдВ рдЙрдкрд▓рдмреНрдз TSLint рдирд┐рдпрдореЛрдВ (https://palantir.github.io/tslint/rules/) рдХреЗ рдХреБрдЫ "рд░реАрдХреИрдк" рд╣реЛрдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред рдкрддрд╛ рдирд╣реАрдВ рдпрд╣ рдкрд▓рдВрддрд┐рд░ рдкрд░ "ESLint" рдЭрдВрдбрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдпрд╛ https://github.com/typescript-eslint/typescript-eslint рдкрд░ рдПрдХ рдирдИ рд╕реВрдЪреАред рд▓реЗрдХрд┐рди рдЗрд╕рд╕реЗ рдпрд╣ рддрдп рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдорд┐рд▓реЗрдЧреА рдХрд┐ рдХреЛрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИ рдпрд╛ рдирд╣реАрдВред

@JoshuaKGoldberg рдореИрдВ tslint рд╕реЗ typescript-eslint рдореЗрдВ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВред рдореИрдВ рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдХрд╕реНрдЯрдо рдирд┐рдпрдо рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП TSLint рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рдерд╛ред рдореИрдВ рдХрд╕реНрдЯрдо рдирд┐рдпрдо рдмрдирд╛рдиреЗ рдкрд░ рдХреИрд╕реЗ рдЖрдЧреЗ рдмрдврд╝ рд╕рдХрддрд╛ рд╣реВрдВ рдЬреИрд╕рд╛ рд╣рдордиреЗ TSLint рдореЗрдВ рдХрд┐рдпрд╛ рдерд╛?

рдореЗрд░рд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╛рдЗрд▓реЗрдВ рднреА рдмрдирд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдЙрдирдХреЗ рд▓рд┐рдП рд╕рд┐рд░реНрдл рдПрдХ рдирд┐рдпрдо рдмрдирд╛рдирд╛ рд╣реИ?

@moulikcipherX рдкреВрдЫрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдмрдврд╝рд┐рдпрд╛ рдкреНрд░рд╢реНрди!

рдЖрдк рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ-рдПрд╕реНрд▓рд┐рдВрдЯ/рдкреИрдХреЗрдЬ/рдПрд╕реНрд▓рд┐рдиреНрдЯ-рдкреНрд▓рдЧрдЗрди-рдЯреАрдПрд╕рд▓рд┐рдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдИрдПрд╕рдПрд▓рд┐рдВрдЯ рдХреЗ рднреАрддрд░ рдЕрдкрдиреЗ рдЯреАрдПрд╕рдПрд▓рд┐рдВрдЯ рдирд┐рдпрдореЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдПрдХ TSLint рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рд▓рдкреЗрдЯрддрд╛ рд╣реИ рдФрд░ TSLint рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрдкрдХреЗ рдХреЛрдб рдХреЛ рд▓рд┐рдВрдЯ рдХрд░рддрд╛ рд╣реИред

ESLint рдореЗрдВ рдирд┐рдпрдо рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП, typescript-eslint/packages/eslint-plugin рджреЗрдЦреЗрдВ ред рдЙрд╕ README.md рдХреЗ рдкрд╛рд╕ рдЙрдирдХреЗ рд╕рднреА рд╕рдорд░реНрдерд┐рдд рдирд┐рдпрдореЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реИ _ (рд╕реВрдЪреА рдмрд╣реБрдд рдмрдбрд╝реА рд╣реЛ рдЧрдИ рд╣реИ!) _ред ROADMAP.md рдореЗрдВ рдирдП рд╕рдордХрдХреНрд╖реЛрдВ рдХреЗ рд▓рд┐рдП рдореМрдЬреВрджрд╛ TSLint рдирд┐рдпрдореЛрдВ рдХрд╛ рдорд╛рдирдЪрд┐рддреНрд░рдг рд╣реИред

рдзрдиреНрдпрд╡рд╛рдж @JoshuaKGoldbergред

рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рдХрд╕реНрдЯрдо рдирд┐рдпрдо рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрд╕реА рддрд░реАрдХреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдЬреИрд╕реЗ TSLint рдореЗрдВред

рдиреЛрдЯ: рдореИрдВрдиреЗ рдЕрднреА рдЗрд╕ рдереНрд░реЗрдб рдореЗрдВ рдореВрд▓ рдкреЛрд╕реНрдЯ рдХреЛ рдЕрдзрд┐рдХ рдареЛрд╕ рд░реЛрдбрдореИрдк рдЯрд╛рдЗрдорд▓рд╛рдЗрди рдХреЗ рд╕рд╛рде рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рд╣реИред рдЗрд╕реЗ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдкреГрд╖реНрда рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рд╕реНрдХреНрд░реЙрд▓ рдХрд░реЗрдВред

рдПрд░, рдХреНрдпрд╛ рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ https://github.com/palantir/tslint/tree/gh-pages/_posts рдореЗрдВ рднреА рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ https://github.com/palantir/tslint/blob/master/ рд╕реЗ рд▓рд┐рдВрдХ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

@SamB рдЬреАрдПрдЪ-рдкреЗрдЬ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдореЗрдВ рдмреНрд▓реЙрдЧ рдХрд╛рдлреА рдкреБрд░рд╛рдирд╛ рд╣реИ, рд╣рдо рдЗрд╕реЗ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдФрд░ рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ README рдореЗрдВ рд╕рдмрд╕реЗ рдКрдкрд░ рд▓рд┐рдВрдХ рд╣реЛрддрд╛ рд╣реИред

@adidahiya @JoshuaKGoldberg
рдореИрдВ рдЯрд╛рдЗрдкрдкреНрд░рддрд┐-рдПрд╕реНрд▓рд┐рдВрдЯ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдпреЛрдЧрджрд╛рди рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рддреЛ рдореБрдЭреЗ рдХрд╣рд╛рдВ рд╕реЗ рд╢реБрд░реВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП?

рдХреНрдпрд╛ рднрд╡рд┐рд╖реНрдп рдореЗрдВ typescript-supported-eslint рдХрд╕реНрдЯрдо tslint рдирд┐рдпрдореЛрдВ рд╕реЗ рдХрд╕реНрдЯрдо eslint рдирд┐рдпрдореЛрдВ рдореЗрдВ рд╕рдорд╛рди рдкрд░рд┐рд╡рд░реНрддрди рдХрд╛ рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛?

рдореИрдВ рдЬреЛ рдХрд╣рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рд╡рд╣ рдХрд╕реНрдЯрдо-рдЯреАрдПрд╕рд▓рд┐рдВрдЯ-рдирд┐рдпрдо рдХреА рдЬреЗрдПрд╕ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрдмрдВрдзрд┐рдд рдПрд╕реНрд▓рд┐рдВрдЯ-рд╕рдВрдЧрдд рд▓рд╛рдЗрдирд┐рдВрдЧ рдирд┐рдпрдореЛрдВ рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕реАрдПрд▓рдЖрдИ рдХрдорд╛рдВрдб рд╣реИред рдпрд╣ рдмрд╣реБрдд рдорджрдж рдХрд░реЗрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдПрд╕реНрд▓рд┐рдВрдЯ рдХреЗ рд▓рд┐рдП tslint рдХреЗ рдирд┐рдпрдо рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрдард┐рди рдХрд╛рдо рд╣реЛрдЧрд╛ ...

@a20185 , рд╣рд╛рдБ, рдпрд╣ рдЕрдм рдореМрдЬреВрдж рд╣реИ! https://github.com/typescript-eslint/tslint-to-eslint-config

рдЗрддрдирд╛ рд╢рд╛рдирджрд╛рд░ рдЯреВрд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдФрд░ рдореИрдВ рдЖрдкрдХреЗ рднрд╡рд┐рд╖реНрдп рдХреЗ рдХрд╛рд░рдирд╛рдореЛрдВ рдХреЗ рд▓рд┐рдП рд╢реБрднрдХрд╛рдордирд╛рдПрдВ рджреЗрддрд╛ рд╣реВрдВред рд░реЛрдорд╛рдВрдЪ рдХреА рдмрд╛рдд рдХрд░реЗрдВ рддреЛ, рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рд░рд╣рд╛ рд╣реИ, рд╣реИ рдирд╛?

рд╡реИрд╕реЗ рднреА, рдЖрдкрдХреЛ рд╢реБрднрдХрд╛рдордирд╛рдПрдВ,
рдЗрдЪреНрдЫрд╛

рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рд╣рдо 2019 рдХреЗ рдЕрдВрдд рдореЗрдВ рдЖ рд░рд╣реЗ рд╣реИрдВ (рдЬрд┐рд╕ рд╡рд░реНрд╖ рдЗрд╕ рд░реЗрдкреЛ рдХреЛ рдорд╛рдирд╛ рдЬрд╛ рд░рд╣рд╛ рдерд╛), рдЕрдм NPM рдореЗрдВ рдкрджрд╛рд╡рдирдд рдзреНрд╡рдЬ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕рдордп рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдирдП рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди ESLint рдкрд░ рдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред

рдпрд╣ рднреА рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛, рд░реАрдбрдореА рдиреЛрдЯрд┐рд╕ рдХреЛ рдереЛрдбрд╝рд╛ рдФрд░ рд╕реНрдкрд╖реНрдЯ (рд╢реАрд░реНрд╖ рд╕реНрддрд░) рдмрдирд╛рдиреЗ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ-рдПрд╕реНрд▓рд┐рдВрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд▓рд┐рдВрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред

рдХреНрдпрд╛ рдЖрдк рдЕрднреА рдРрд╕рд╛ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рд▓рдЧрднрдЧ рд╣рд░ рд╕рд╛рдорд╛рдиреНрдп рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЛ ESLint рджреНрд╡рд╛рд░рд╛ рдХрд╡рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ?

рдореИрдВ рдпрд╣ рднреА рд╕реЛрдЪрддрд╛ рдФрд░ рдЖрд╢рд╛ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдЬрдм tslint рдХреЛ рдкрджрд╛рд╡рдирдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ eslint рдкрд░ рдЕрдзрд┐рдХ рджрдмрд╛рд╡ рдкрдбрд╝рддрд╛ рд╣реИ рдФрд░ рд╕рдореБрджрд╛рдп рдЙрд╕ рдкрд░ рдЕрдзрд┐рдХ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ

tslint-to-eslint-config tslint.json рдХреЛ .eslinerc.js рдореЗрдВ рдмрджрд▓рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдпрд╣ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛
рдЗрдирд▓рд╛рдЗрди tslint:disable:<rule> рдХрд╛ рдЦреНрдпрд╛рд▓ рдирд╣реАрдВ рд░рдЦ рд╕рдХрддрд╛, рд╕рд╛рде рд╣реА, рдХреБрдЫ рдирд┐рдпрдо рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдирд╣реАрдВ рдХрд┐рдП рдЧрдП рд╣реИрдВ рдпрд╛ рдЕрднреА рддрдХ рдПрд╕реНрд▓рд┐рдВрдЯ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИрдВред

tslint рд╕реЗ eslint рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рддреЗ рд╕рдордп рдЕрднреА рднреА рдХреБрдЫ рдХрд┐рдирд╛рд░реЗ рд╣реИрдВ, рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП eslint рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдХреНрдпрд╛ рд▓рд╛рдн рд╣реИ? рдЯрд╛рдЗрдкрдкреНрд░рддрд┐ рд╕рдореБрджрд╛рдп рдФрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдореБрджрд╛рдп рдХреЗ рдмреАрдЪ рдмреЗрд╣рддрд░ рд╕реНрдерд┐рд░рддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП?
рдпрджрд┐ рдХреЛрдИ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗрд╡рд▓ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдмрд┐рдирд╛ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ, рддреЛ рдХреНрдпрд╛ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рднреА рдХреЛрдИ рд▓рд╛рдн рд╣реИ?

tslint-to-eslint-config tslint.json рдХреЛ .eslinerc.js рдореЗрдВ рдмрджрд▓рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдпрд╣ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛
рдЗрдирд▓рд╛рдЗрди рдХрд╛ рдЦреНрдпрд╛рд▓ рдирд╣реАрдВ рд░рдЦ рд╕рдХрддрд╛ tslint:disable:<rule>

рджрд░рдЕрд╕рд▓: https://github.com/typescript-eslint/tslint-to-eslint-config/issues/136
рдпрджрд┐ рдЖрдк рдЪрд╛рд╣реЗрдВ рддреЛ рдЗрд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИ! https://github.com/typescript-eslint/tslint-to-eslint-config/pull/246 рдкрд░ рдПрдХ рдХрд╛рд░реНрдп рдкреНрд░рдЧрддрд┐ рдкрд░ рдкреАрдЖрд░ рд╣реИ рдЬреЛ рдХреБрдЫ рдорджрдж рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

tslint рд╕реЗ eslint рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рддреЗ рд╕рдордп рдЕрднреА рднреА рдХреБрдЫ рдХрд┐рдирд╛рд░реЗ рд╣реИрдВ, рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП eslint рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдХреНрдпрд╛ рд▓рд╛рдн рд╣реИ?

рдЖрдк рдЗрд╕ рдзрд╛рдЧреЗ рдХреЗ рд╢реАрд░реНрд╖ рдореЗрдВ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рдХрд╛рд░рдгреЛрдВ рдХреЛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред

@рдмреАрдиреЛрдЯрдВрдЧ

ESLint рдХреА рддреБрд▓рдирд╛ рдореЗрдВ TSLint рд╣рдореЗрд╢рд╛ рд╕реАрдорд┐рдд рд░рд╣рд╛ рд╣реИ, рдРрд╕реЗ рдирд┐рдпрдореЛрдВ рдХрд╛ рдПрдХ рдкреВрд░рд╛ рд╕рдореВрд╣ рд╣реИ рдЬреЛ ESLint рдиреЗ рдХрднреА рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛ред рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рдХрд░рдирд╛ рдФрд░ рдмрд╣реБрдд рдмрдбрд╝рд╛ рд╕рдореБрджрд╛рдп/рд╕рдорд░реНрдерди ESLint рд╣рдореЗрд╢рд╛ рдерд╛ред рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рд╣рдордореЗрдВ рд╕реЗ рдХрдИ рд▓реЛрдЧреЛрдВ рдХреЗ рдкрд╛рд╕ рдПрдХ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ eslintrc рд╣реИ рдЬрд┐рд╕рдХрд╛ рд╣рдо рд╣рд░ рдЬрдЧрд╣ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рдХреЛрдИ рднреА TSLint рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдПрдХ рдЕрд╕рдВрдЧрддрд┐ рдмрди рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ (рдПрдХ рдЧреИрд░-рдЕрдкреНрд░рдЪрд▓рд┐рдд рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ)ред

рдпрджрд┐ TSLint рдХреЗ рдкрд╛рд╕ ESLint рд╕реЗ рдХреБрдЫ рднреА рдЧрд╛рдпрдм рд╣реИ, рддреЛ рдЗрд╕реЗ рдмрдврд╝рд╛рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ рддрд╛рдХрд┐ рдЗрд╕реЗ рдЕрдкреНрд░рдЪрд▓рд┐рдд рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЬрд╛рд░реА рд░рдЦрдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред

рдПрд╕реНрд▓рд┐рдВрдЯ рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рд╕рдВрджрд░реНрдн рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдореБрдЭреЗ рдПрд╕реНрд▓рд┐рдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд▓рд╛рдн рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИред

рдореИрдВрдиреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ tslint рд╕реЗ eslint рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рдХрд┐рдирд╛рд░реЛрдВ рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдареАрдХ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ eslint рдореЗрдВ рдкреНрд░рдХрд╛рд░ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдирд╣реАрдВ рд╣реИ (рдЗрд╕рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓рд┐рдП рдЗрдВрдбреЗрдВрдЯреЗрд╢рди рдЯреВрдЯрд╛ рд╣реБрдЖ рд╣реИ)ред

рдПрд╕реНрд▓рд┐рдВрдЯ рдкрд░ рдЯреВрд▓реАрдВрдЧ рд╕рдорд░реНрдерди рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ (рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдкрд░ рдЖрдИрдбреАрдИ рд╕рдВрдХреЗрдд)ред рдХрд╛рд╢ рдореИрдВ рдПрдХ рджрд┐рди рдпреЛрдЧрджрд╛рди рджреЗ рдкрд╛рддрд╛ рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕ рд╕рдордп рдЙрд╕ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рди рддреЛ рдЕрдиреБрднрд╡реА рд╣реВрдВ рдФрд░ рди рд╣реА рд╕реНрд╡рддрдВрддреНрд░ рд╣реВрдВред (рдХрдо рд╕реЗ рдХрдо рдпрд╣ рдореЗрд░реА рд╕реВрдЪреА рдореЗрдВ рд╕рдмрд╕реЗ рдКрдкрд░ рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдареАрдХ рд╣реИ, tslint рдЕрднреА рднреА рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ)

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП tslint рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдФрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдПрд╕реНрд▓рд┐рдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдХрдо рджрд░реНрджрдирд╛рдХ рддрд░реАрдХрд╛ рд╣реИ, рддрд╛рдХрд┐ рджреЛрдиреЛрдВ рджреБрдирд┐рдпрд╛ рдЕрдкрдиреА 'рд╕рдВрдЧрддрд┐' рдХрд╛ рдЖрдирдВрдж рд▓реЗ рд╕рдХреЗрдВред

рдЬреИрд╕рд╛ рдХрд┐ npm рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ TSLint рдХреЛ рдмрд╣рд┐рд╖реНрдХреГрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп ESLint рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ , рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдкреВрд░рд╛ рд╣реЛ рдЧрдпрд╛ рд╣реИред
рдХреНрдпрд╛ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдмрдВрдж рдирд╣реАрдВ рдХрд░ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП?

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

рдЙрдкрд░реЛрдХреНрдд рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ typescript-eslint рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рддрдХрдиреАрдХреА рд╡рд┐рд╡рд░рдг рдкрд░ рдХреЗрдВрджреНрд░рд┐рдд рдирд╣реАрдВ рд╣реИред
TSLint рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ typescript-eslint рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ?

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд╕рдВрдкреВрд░реНрдг рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ-рдПрд╕реНрд▓рд┐рдВрдЯ/рд░реАрдбрдореЗ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдПрдХ рдкрд╛рд░рджрд░реНрд╢реА рд╕рдВрдХреНрд░рдордг рдХреЗ рд▓рд┐рдП рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рд╣реИрдВред

рдХреНрдпрд╛ рдХреЛрдИ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдкреИрдХреЗрдЬ рдХреЛ рд╕реНрд╡рдпрдВ npm рдкрд░ рдкрджрд╛рд╡рдирдд рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ? рдЬреИрд╕реЗ рдЕрдиреБрд░реЛрдз ?

@niklasR рд╕рдВрд╕реНрдХрд░рдг 6.0.0 рдХреЛ NPM рдореЗрдВ рдкрджрд╛рд╡рдирдд рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдлрд┐рд░ рд╕рднреА рдирд░рдХ рдвреАрд▓реЗ рд╣реЛ рдЧрдПред

#4919 рдФрд░ #4914 рджреЗрдЦреЗрдВред

рд╣рдо _рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рд╕рднреА рдирд░рдХ рдЯреВрдЯ рдЬрд╛рдПрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ ... рд▓реЛрдЧреЛрдВ рдХреЛ TSLint рдХрд╛ рдЙрдкрдпреЛрдЧ рдмрдВрдж рдХрд░ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдордиреЗ рдХрднреА рднреА рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдирдП рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рдмрд╣рд┐рд╖реНрдХреГрдд рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ; https://www.npmjs.com/package/tslint рдкрд░ рд╕рдВрд╕реНрдХрд░рдг рдЗрддрд┐рд╣рд╛рд╕ рджреЗрдЦреЗрдВ:
Screenshot showing 6.0.0 as deprecated on npm but later versions not

рдореЗрд░реЗ рдкрд╛рд╕ рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рд╣реИ - @adidahiya ?

рдУрд╣, рдЕрдЬреАрдм, рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдХрд┐ рдпрд╣рд╛рдВ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдиреЗ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЖрджреЗрд╢ рд╕рднреА рд╕рдВрднрд╛рд╡рд┐рдд рднрд╡рд┐рд╖реНрдп рдХреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рд╣рдЯрд╛ рджреЗрдЧрд╛ рдЬреЛ рд╕реАрдорд╛ рдореЗрдВ рдЖрддреЗ рд╣реИрдВ:

npm deprecate tslint@^6.0.0 "TSLint has been deprecated in favor of ESLint. Please see https://github.com/palantir/tslint/issues/4534 for more information."

... рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИред рдореИрдВ рдЖрдЧреЗ рдмрдврд╝ рдЧрдпрд╛ рд╣реВрдВ рдФрд░ рдирдП рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рд╣реИред

@adidahiya рдзрдиреНрдпрд╡рд╛рдж, рдореИрдВрдиреЗ рдпрд╣рд╛рдВ рдПрдирдкреАрдПрдо рдбреЙрдХреНрд╕ рдкрд░ рдПрдХ рдореБрджреНрджрд╛ рдЦреЛрд▓рд╛ рд╣реИ: https://github.com/npm/cli/issues/1165

рдХреНрдпрд╛ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рднреА рдмрд╣рд┐рд╖реНрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП? рдЗрд╕реА рддрд░рд╣ рдпрд╣ рдХреИрд╕реЗ рдЕрдиреБрд░реЛрдз рдХрд░рддрд╛ рд╣реИ ?

рдХрд╛рд░рдг рдореИрдВ рдкреВрдЫ рд░рд╣рд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдЕрдкрдиреЗ рдкреИрдХреЗрдЬреЛрдВ рдХреЛ ESLint рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди TSLint ^5 рдХрд╛ рдХрд╛рдлреА рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдФрд░ рд╣рдорд╛рд░реЗ (300+) рд░реЗрдкреЛ рдХреЛ рд╕реНрдХреИрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реА рдореМрдЬреВрджрд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рднреА рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдзреНрд╡рдЬрд╛рдВрдХрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣рд┐рд╖реНрдХрд░рдг рдиреЛрдЯрд┐рд╕ред

рдмрд╣рд┐рд╖реНрдХрд░рдг рд╣рдореЗрд╢рд╛ рдФрд░ рдХреЗрд╡рд▓ рдореМрдЬреВрджрд╛ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВ; рдпрджрд┐ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдмрд╣рд┐рд╖реНрдХреГрдд рд╣реЛрдВ рддреЛ рдЖрдкрдХреЛ рдкреНрд░рдХрд╛рд╢рди рдХреЗ рдмрд╛рдж рд╣рдореЗрд╢рд╛ рдЙрдиреНрд╣реЗрдВ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдмрд╣рд┐рд╖реНрдХреГрдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЬреАрдердм рдкреЗрдЬ https://palantir.github.io/tslint/ рдкрд░ TSLint рдкрджрд╛рд╡рдирддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рд╕реНрдкрд╖реНрдЯ рдХреБрдЫ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реЛрдЧрд╛?

рдареАрдХ рдпрд╣реА рдореИрдВ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣рд╛ рдерд╛! рдХреГрдкрдпрд╛ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ tslint рд╕реЗ eslint . рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рд╕реНрдкрд╖реНрдЯ рдЪрд░рдг-рджрд░-рдЪрд░рдг рдирд┐рд░реНрджреЗрд╢ рдкреНрд░рд╕реНрддреБрдд рдХрд░реЗрдВ

TSLint рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рд╡реЗрдмрд╕рд╛рдЗрдЯ рдХреЛ рдХрд╛рдлреА рд╕рдордп рд╕реЗ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕ рд░реЗрдкреЛ рдХрд╛ README рдЕрдк рдЯреВ рдбреЗрдЯ рд╣реИ рдФрд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ-рдПрд╕реНрд▓рд┐рдиреНрдЯ рд░реАрдбрдореЗ рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдХреЗ рд▓рд┐рдП рдЪрд░рдг-рджрд░-рдЪрд░рдг рдорд╛рд░реНрдЧрджрд░реНрд╢рд┐рдХрд╛ рд╕рд╣рд┐рдд рдХрд╛рдлреА рдЙрдкрдпреЛрдЧреА рдЬрд╛рдирдХрд╛рд░реА рд╣реИред

рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдХреЗ рд▓рд┐рдП рдареАрдХ рдХрд░реЗрдВ
[https://stackoverflow.com/questions/61605380/angular-9-issue-unable-to-run-the-initial-application]
рдПрдирдкреАрдПрдо рдЪреЛрдХреАрджрд╛рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ
npm рдХреИрд╢ рдХреНрд▓реАрди --force
npm рдЗрдВрд╕реНрдЯрд╛рд▓ -g @angular/ cli@latest

install error
рд╣реИрд▓реЛ рдХреЛрдгреАрдп рдЯреАрдо, рдореИрдВ рдХреЛрдгреАрдп рдХреЗ рд▓рд┐рдП рдирдпрд╛ рд╣реВрдВ, рдХреГрдкрдпрд╛ рдПрдХ рдирдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╕рдордп рдореБрдЭреЗ рдЬреЛ рддреНрд░реБрдЯрд┐ рдорд┐рд▓ рд░рд╣реА рд╣реИ, рдЙрд╕рдореЗрдВ рдореЗрд░реА рдорджрдж рдХрд░реЗрдВред

рд╢реБрдХреНрд░рд┐рдпрд╛ред

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

рд╢реБрдХреНрд░рд┐рдпрд╛ред

рдЖрдк рдЧрд▓рдд рдЬрдЧрд╣ рдкрд░ рд╣реИрдВ
рдпрд╣ palantir рд╣реИ рди рдХрд┐ angular
рдХреГрдкрдпрд╛ https://github.com/angular/angular/issues . рдкрд░ рдПрдХ рд╕рдорд╕реНрдпрд╛ рдмрдирд╛рдПрдВ
рдпрд╛ рдЗрд╕рд╕реЗ рднреА рдмреЗрд╣рддрд░, рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░реЗрдВ
рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реБрдИ, рдлрд┐рд░ рдорд┐рд▓реЗрдВрдЧреЗ

рдЬрд┐рддрдирд╛ рдореИрдВ рдЙрдирдХреЗ рджреНрд╡рд╛рд░рд╛ рдХреЛрдгреАрдп рдорджрдж рдХреЗ рд▓рд┐рдП 'рдпрд╣рд╛рдБ' рдкреВрдЫрдХрд░ рд╕реНрддрдмреНрдз рд╣реВрдБ .. рдореИрдВ рдХрд╛рдлреА рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реВрдБ рдХрд┐ рдЙрдирдХрд╛ рд▓реЛрдЧреЛ рдпреВрдХреЗ рдкрд╛рд╡рд░ рд╕реЙрдХреЗрдЯ рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИред

@ рдЬреЛрд╢реБрдЖ рдХреЗрдЧреЛрд▓реНрдбрдмрд░реНрдЧ рдзрдиреНрдпрд╡рд╛рдж!

рд╡рд╣ рджрд┐рди рднреА рдЖрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрдм рдЖрдк рдЗрд╕ рднрдВрдбрд╛рд░ рдХреЛ рд╕рдВрдЧреНрд░рд╣рд┐рдд/рдмрдВрдж рдХрд░ рджреЗрдВред

рдЗрд╕реЗ рдлрд┐рд░ рдХрднреА рдХреЛрдб рдкрд░рд┐рд╡рд░реНрддрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЛ рдЕрдм рдХреЛрдИ рдмрдЧ рдорд┐рд▓ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рд╕рдорд╛рдзрд╛рди рдЗрд╕ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдЕрдкреНрд░рдЪрд▓рд┐рдд рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рдЦреЛрджрдиреЗ рдХреЗ рдмрдЬрд╛рдп ESLint рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИред

рдпрд╣ рджреЗрдЦрдХрд░ рдЕрдЪреНрдЫрд╛ рд▓рдЧрд╛ рдХрд┐ рдЕрдзрд┐рдХрд╛рдВрд╢ рд▓реЛрдЧ рдЕрдм рдЗрд╕реЗ рдЫреЛрдбрд╝рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ рдЫреЛрдбрд╝рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд┐рддрдирд╛ рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯ рд╣реЛрдЧрд╛, рдЙрддрдирд╛ рд╣реА рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛ред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рд┐рддрдВрдмрд░ 2020 рддрдХ рдПрд╕реНрд▓рд┐рдВрдЯ рдХреЗ рдмрдЬрд╛рдп ts-lint рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП

рдпрджрд┐ рдЖрдкрдХрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЕрднреА рднреА ts-lint рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ
рдЬрд╛рдБрдЪ https://github.com/typescript-eslint/tslint-to-eslint-config

рд▓реЗрдХрд┐рди рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ-рдПрд╕реНрд▓рд┐рдВрдЯ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдирд╣реАрдВ рдмрддрд╛рддрд╛ рдХрд┐ рдХреНрдпрд╛ рдЧрд▓рдд рд╣реИ https://github.com/typescript-eslint/typescript-eslint/blob/master/docs/getting-started/linting/FAQ.md#why -dont-i-see -рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ-рддреНрд░реБрдЯрд┐рдпреЛрдВ-рдореЗрдВ-рдорд╛рдп-рдПрд╕реНрд▓рд┐рдВрдЯ-рдЖрдЙрдЯрдкреБрдЯ

рдореИрдВ

рд▓реЗрдХрд┐рди рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ-рдПрд╕реНрд▓рд┐рдВрдЯ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдирд╣реАрдВ рдмрддрд╛рддрд╛ рдХрд┐ рдХреНрдпрд╛ рдЧрд▓рдд рд╣реИ https://github.com/typescript-eslint/typescript-eslint/blob/master/docs/getting-started/linting/FAQ.md#why -dont-i-see -рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ-рддреНрд░реБрдЯрд┐рдпреЛрдВ-рдореЗрдВ-рдорд╛рдп-рдПрд╕реНрд▓рд┐рдВрдЯ-рдЖрдЙрдЯрдкреБрдЯ

рдореИрдВ

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрдореЛрдмреЗрд╢ TSLint рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреА рд╕рдЪ рд╣реИ рдФрд░ рдХреНрдпреЛрдВ TSLint рдХреЗ рд╕рд╛рде рднреА, рд╣рдо рдЕрдкрдиреА рд▓рд╛рдЗрдирд┐рдВрдЧ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ tsc --noEmit рднреА рдХрд╣рддреЗ рд╣реИрдВред

рдореИрдВрдиреЗ рд╕рдВрд╕реНрдХрд░рдг 8 рдХреЗ рд╕рд╛рде рдПрдХ рдирдпрд╛ рдХреЛрдгреАрдп рдРрдк рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рд╕рд╛рде tslint рдбрд┐рдлрд╝реЙрд▓реНрдЯ рднреЗрдЬ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдореИрдВрдиреЗ рдХрд░реНрдХрд╢ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд▓рд┐рдП ts config рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ рд╣реИред рдореЗрд░рд╛ рдкреНрд░рд╢реНрди рдпрд╣ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ-рдПрд╕реНрд▓рд┐рдВрдЯ рдореЗрдВ рдЬрд╛рдирд╛ рдЕрдирд┐рд╡рд╛рд░реНрдп рд╣реИ, рдЗрд╕ рддрдереНрдп рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдореИрдВ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдХреБрдЫ рд╡рд░реНрд╖реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдПрдВрдЧреБрд▓рд░ 8 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ?

@mayankkalbhor рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рджреЗрдЦрд╛ рд╣реИ, рдХреЛрдгреАрдп рдХреЗ рд╕рд╛рде рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЕрднреА рднреА TSLint рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИред рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ рдПрдВрдЧреБрд▓рд░ 11 рдпрд╛ рдЙрд╕рдХреЗ рдмрд╛рдж рддрдХ рд╣реЛрдЧрд╛ рдЬрдм рддрдХ рдХрд┐ рдПрдВрдЧреБрд▓рд░ рд╕реАрдПрд▓рдЖрдИ рдореЗрдВ рд╕рднреА рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рдИрдПрд╕рдПрд▓рд┐рдВрдЯ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдирд╣реАрдВ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рд░реЛрдбрдореИрдк рджреЗрдЦреЗрдВ: https://angular.io/guide/roadmap#migration -to-eslintред

рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреБрдЫ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдЗрд╕реЗ рд╕реНрд╡рдпрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЬрдмрдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ TSLint рдХреЗ рдмрдЬрд╛рдп ESLint рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЖрдкрдХреА рдЕрдкрдиреА рдкрд╕рдВрдж рд╣реИред рдпрджрд┐ рдЖрдк ESLint рдореЗрдВ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЛ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдкрдиреЗ рдирд┐рдпрдореЛрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдореЗрдВ рд╕рдордп рдмрд┐рддрд╛рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рд╢рд╛рдпрдж рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдЖрдкрдХреЗ рд▓рд┐рдП рд░рд╛рд╕реНрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ TSLint рдирд┐рдпрдореЛрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рд╕рдордп рдирд╣реАрдВ рд▓рдЧрд╛ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдЙрдирд╕реЗ рдЦреБрд╢ рд╣реИрдВ рддреЛ рдЖрдк рдЙрдиреНрд╣реЗрдВ рдЕрдирд┐рд╢реНрдЪрд┐рдд рдХрд╛рд▓ рддрдХ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВред рдмрд╕ рдЕрдирд┐рд╢реНрдЪрд┐рдд рдорд╛рддреНрд░рд╛ рдореЗрдВ рдмрдЧ рдлрд┐рдХреНрд╕ рдХреА рдЙрдореНрдореАрдж рди рдХрд░реЗрдВ рдФрд░ рдХреЛрдИ рдлреАрдЪрд░ рдЕрдкрдбреЗрдЯ рдмрд┐рд▓реНрдХреБрд▓ рднреА рди рдХрд░реЗрдВред

рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдХреЛрдгреАрдп рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкрде рдХреБрдЫ рднрд╡рд┐рд╖реНрдп рдХреЗ рдХреЛрдгреАрдп рдЙрдиреНрдирдпрди рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдВрдЧреБрд▓рд░ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдирд╛ рд╣реИ, рд╕рдВрднрд╡рддрдГ рдПрдВрдЧреБрд▓рд░ 10 рд╕реЗ 11 рдпрд╛ 11 рд╕реЗ 12 рддрдХред

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

рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреЗ рдИрдУрдПрд▓ рддрдХ рдкрд╣реБрдВрдЪ рд░рд╣реЗ рд╣реИрдВ, рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛, рдЕрдЧрд░ рдкреНрд░рддреНрдпреЗрдХ рдирд┐рдпрдо рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ-рдПрд╕реНрд▓рд┐рдиреНрдЯ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдореЗрдВ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдирд┐рдпрдо рдХрд╛ рд▓рд┐рдВрдХ рд╣реЛрдЧрд╛, рдЬреИрд╕реЗ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ-рдПрд╕реНрд▓рд┐рдВрдЯ рд░рд┐рд╡рд░реНрд╕ рдореЗрдВ рдХрд░рддрд╛ рд╣реИред

рдХреНрдпрд╛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдореИрдВ 1 рдЬрдирд╡рд░реА 2021 рдХреЗ рдмрд╛рдж рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ tslint рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рдкрд╛рдКрдВрдЧрд╛? рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдореЗрд░реЗ рдирд┐рд░реНрдорд╛рдг tslint рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдореБрдЭреЗ npm рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ tslint рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЖрджреЗрд╢ рдирд╣реАрдВ рджрд┐рдЦ рд░рд╣рд╛ рд╣реИред рдФрд░ рдпрд╣ рдХрд╣рддрд╛ рд╣реИ рдХрд┐ tslint рдХреЛ рдЕрдм рдкрджрд╛рд╡рдирдд рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдХреНрдпрд╛ рдХреЛрдИ рдХреГрдкрдпрд╛ рдореЗрд░реЗ рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реИ?

рд╢реБрдХреНрд░рд┐рдпрд╛ред

рдЖрдк рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдХрд┐рд╕реА рднреА рдкреНрд░рдХрд╛рд░ рдХрд╛ рд╕рд╣рдпреЛрдЧ рдирд╣реАрдВ рдорд┐рд▓реЗрдЧрд╛ред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреЛрдИ рдФрд░ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВред
рддреЛ рд╣рд╛рдБ, рдЖрдкрдХреЛ рдПрд╕реНрд▓рд┐рдВрдЯ рдХреА рдУрд░ рдмрдврд╝рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореЗрд░реЗ рдкрд┐рдЫрд▓реЗ рдЪреЗрдХрдЖрдЙрдЯ рдХреЗ рд░реВрдк рдореЗрдВ, tslint рдЕрдзрд┐рдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдСрдЯреЛ рдлрд┐рдХреНрд╕рд┐рдВрдЧ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдПрд╕реНрд▓рд┐рдВрдЯ рдЪрд▓рд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ 'tslint --fix' рдЪрд▓рд╛рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВред

рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдмреАрдЪ рдЪреАрдЬреЗрдВ рдмрджрд▓ рдЧрдИ рд╣реЛрдВред

рдореИрдВ рдЗрд╕реЗ рдЙрд╕ рдХреЛрдб рдХреЛ рдлрд┐рд░ рд╕реЗ рдЫрд╛рдБрдЯреВрдБрдЧрд╛

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

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

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

jacob-robertson picture jacob-robertson  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

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

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

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