textlint-ja / textlint-rule-preset-ja-technical-writing

技術文書向けのtextlintルールプリセット
https://textlint-ja.github.io/textlint-rule-preset-ja-technical-writing/
MIT License
431 stars 10 forks source link

"no-doubled-conjunctive-particle-ga"ルールで実行時エラー #38

Closed mikesorae closed 5 years ago

mikesorae commented 5 years ago

事象

preset-ja-technical-writingルールを有効にしてnpx textlintを実行すると以下のエラーが発生する。

✖ Error
Definition of rule '' was not rule module.
Rule should export function:
module.exports = function(context){
    // Your rule
};

✖ Stack trace
Error: Definition of rule '' was not rule module.
Rule should export function:
module.exports = function(context){
    // Your rule
};
    at Object.assertRuleShape (/Users/mikesorae/Documents/gitrepo/sample-doc/node_modules/@textlint/kernel/lib/kernel/src/descriptor/rule-creator-helper.js:89:15)
    at new TextlintLintableRuleDescriptor (/Users/mikesorae/Documents/gitrepo/sample-doc/node_modules/@textlint/kernel/lib/kernel/src/descriptor/TextlintLintableRuleDescriptor.js:13:31)
    at /Users/mikesorae/Documents/gitrepo/sample-doc/node_modules/@textlint/kernel/lib/kernel/src/descriptor/DescriptorsFactory.js:18:20
    at Array.map (<anonymous>)
    at Object.exports.createTextlintRuleDescriptors (/Users/mikesorae/Documents/gitrepo/sample-doc/node_modules/@textlint/kernel/lib/kernel/src/descriptor/DescriptorsFactory.js:13:49)
    at new TextlintKernelDescriptor (/Users/mikesorae/Documents/gitrepo/sample-doc/node_modules/@textlint/kernel/lib/kernel/src/descriptor/TextlintKernelDescriptor.js:18:42)
    at TextlintKernelDescriptor.shallowMerge (/Users/mikesorae/Documents/gitrepo/sample-doc/node_modules/@textlint/kernel/lib/kernel/src/descriptor/TextlintKernelDescriptor.js:38:16)
    at TextLintCore.setupRules (/Users/mikesorae/Documents/gitrepo/sample-doc/node_modules/textlint/lib/textlint/src/textlint-core.js:95:71)
    at TextLintEngine.AbstractTextLintEngine._setupRules (/Users/mikesorae/Documents/gitrepo/sample-doc/node_modules/textlint/lib/textlint/src/engine/textlint-engine-core.js:154:23)
    at TextLintEngine.AbstractTextLintEngine (/Users/mikesorae/Documents/gitrepo/sample-doc/node_modules/textlint/lib/textlint/src/engine/textlint-engine-core.js:99:14)
    at new TextLintEngine (/Users/mikesorae/Documents/gitrepo/sample-doc/node_modules/textlint/lib/textlint/src/textlint-engine.js:25:47)
    at Object.executeWithOptions (/Users/mikesorae/Documents/gitrepo/sample-doc/node_modules/textlint/lib/textlint/src/cli.js:138:26)
    at Object.execute (/Users/mikesorae/Documents/gitrepo/sample-doc/node_modules/textlint/lib/textlint/src/cli.js:94:25)
    at /Users/mikesorae/Documents/gitrepo/sample-doc/node_modules/textlint/bin/textlint.js:37:20
    at process._tickCallback (internal/process/next_tick.js:68:7)
    at Function.Module.runMain (internal/modules/cjs/loader.js:744:11)

実行時の.textlintrc

{
  "rules": {
    "preset-ja-technical-writing": true
  }
}

実行時コマンド

npx textlint README.md

再現環境

暫定対応

根本原因は不明だが、以下のruleが原因のようだったため、コメントアウトしたところエラーが発生しなくなった。

textlint-rule-preset-ja-technical-writing.js#14

        "no-doubled-conjunctive-particle-ga": require("textlint-rule-no-doubled-conjunctive-particle-ga"),
azu commented 5 years ago

https://github.com/takahashim/textlint-rule-no-doubled-conjunctive-particle-ga 側で、 module.exports じゃなくて module.exports.default となったのが原因みたいですね。

修正します。

azu commented 5 years ago

https://github.com/textlint-ja/textlint-rule-preset-ja-technical-writing/releases/tag/3.1.1 で修正しました。 ご確認ください。

mikesorae commented 5 years ago

無事直りました。素早いご対応ありがとうございますm( )m