Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

textlint@10.0.0 #346

Closed
azu opened this issue Nov 27, 2017 · 10 comments
Closed

textlint@10.0.0 #346

azu opened this issue Nov 27, 2017 · 10 comments
Labels
Status: In Progress Work in Progress Type: Documentation Documentation only changes Type: Meta Type: Meta - Related to repository itself

Comments

@azu
Copy link
Member

azu commented Nov 27, 2017

🆕 Features

@textlint/ast-node-types: TxtNode type interface

@textlint/ast-node-types get TxtNode type interface #358
It is useful for TypeScript user.

For more details. see https://github.com/textlint/textlint/blob/master/docs/txtnode.md

textlint: Use with TypeScript #248

@textlint/kernel and textlint export type interfaces.

// Types
import {
    TextlintResult,
    TextlintFixResult,
    TextlintFixCommand,
    TextlintMessage,
    // Kernel rule/filter/plugin format
    TextlintKernelRule,
    TextlintKernelFilterRule,
    TextlintKernelPlugin,
    // Notes: Following interface will be separated module in the future.
    // textlint rule interface
    TextlintRuleCreator,
    TextlintRuleOptions,
    // textlint filter rule interface
    TextlintFilterRuleCreator,
    TextlintFilterRuleOptions,
    // textlint plugin interface
    TextlintPluginCreator,
    TextlintPluginOptions,
    TextlintPluginProcessor,
    TextlintPluginProcessorConstructor
} from "@textlint/kernel";

If you want to improve TypeScript integration, please file issue or track following issue.

textlint-tester: support inputPath option #394

textlint-tester support inputPath options.
It can test path-based rules.

🔥 Breaking Change

A breaking change, but this changes not affect to textlint tool user.
This changes affect to user that user textlint as node modules.

textlint: Export as ES module #337 #344

Before

Export as common js module.

module.exports = {
  textlint,
  TextLintEngine,
}

After

Export as named module.

export { 
  textlint,
  TextLintEngine
}

You can import it as es named import.

import { textlint } from "textlint"

or

You can import it as common js module

const textlint = require("textlint").textlint

Stop to export unused name #344

We have removed following from textlint.

  • TextLintNodeType
  • TextLintMessageSeverityLevel
  • TextLintMessageType
    • Use @textlint/ast-node-types insteadof it

📝 Documentaion

Improve Contributing Guide.

Issues/PR: #380 #379 #355 #352 #353 #341 #387 by @Leko and @0x6b

We have improved Contributing Guide.
This Contributing Guide help you to contribute to textlint.

If you want to contribute to texltlint, let's see issues with the good first issue label.

♻️ Polish

Monorepo #270

Import following modules into this monorepo.

Thanks to @Leko

🎉 New Contributors

@azu
Copy link
Member Author

azu commented Dec 12, 2017

I will release 10.0.0 after checking type interface of textlint and @textlint/kernel.

@Leko
Copy link
Member

Leko commented Dec 12, 2017

🎉

@azu azu mentioned this issue Dec 13, 2017
2 tasks
@azu
Copy link
Member Author

azu commented Dec 15, 2017

I've published pre-release for 10.0.0

Please try it

npm install textlint@next
# or
npm install textlint@10.0.0-next.0
  • If you try to install, it looks good and please 👍 Reaction
  • If you try to install, it looks bad and please 👎 Reaction and comment that.
📝 Release operation notes
✈ ./node_modules/.bin/lerna publish --conventional-commits --cd-version premajor --npm-tag=next --preid=next
lerna info version 2.5.1
lerna info versioning independent
lerna info ignore [ 'integration-test', '**/yarn.lock' ]
lerna info Checking for updated packages...
lerna info Comparing with @textlint/kernel@1.0.3.
lerna info Checking for prereleased packages...

Changes:
 - gulp-textlint: 4.0.3 => 5.0.0-next.0
 - markdown-to-ast: 5.0.0 => 6.0.0-next.0
 - textlint-ast-test: 1.1.4 => 2.0.0-next.0
 - textlint-fixer-formatter: 1.0.0 => 2.0.0-next.0
 - textlint-formatter: 1.8.0 => 2.0.0-next.0
 - textlint-plugin-markdown: 3.0.3 => 4.0.0-next.0
 - textlint-plugin-text: 2.0.3 => 3.0.0-next.0
 - textlint-tester: 3.0.3 => 4.0.0-next.0
 - textlint: 9.1.1 => 10.0.0-next.0
 - txt-ast-traverse: 1.2.1 => 2.0.0-next.0
 - txt-to-ast: 2.0.0 => 3.0.0-next.0
 - textlint-example-cli: 1.0.0 => 2.0.0-next.0 (private)
 - textlint-example-config-file: 1.0.0 => 2.0.0-next.0 (private)
 - textlint-example-filter: 1.0.0 => 2.0.0-next.0 (private)
 - textlint-example-fix-dry-run: 1.0.0 => 2.0.0-next.0 (private)
 - textlint-example-fix: 1.0.0 => 2.0.0-next.0 (private)
 - textlint-example-html-plugin: 1.0.0 => 2.0.0-next.0 (private)
 - textlint-perf-test: 1.0.0 => 2.0.0-next.0 (private)
 - textlint-example-preset: 1.0.0 => 2.0.0-next.0 (private)
 - textlint-example-rulesdir: 1.0.0 => 2.0.0-next.0 (private)
 - textlint-example-use-as-module: 1.0.0 => 2.0.0-next.0 (private)
 - @textlint/ast-node-types: 2.0.0 => 3.0.0-next.0
 - @textlint/feature-flag: 2.0.0 => 3.0.0-next.0
 - @textlint/kernel: 1.0.3 => 2.0.0-next.0

? Are you sure you want to publish the above changes? Yes
lerna info publish Publishing packages to npm...
lerna info published textlint-formatter
lerna info published txt-ast-traverse
lerna info published textlint-ast-test
lerna info published @textlint/ast-node-types
lerna info published @textlint/feature-flag
lerna info published markdown-to-ast
lerna info published txt-to-ast
lerna info published @textlint/kernel
lerna info published textlint-plugin-text
lerna info published textlint-plugin-markdown
lerna info published textlint-fixer-formatter
lerna info published textlint
lerna info published gulp-textlint
lerna info published textlint-tester
lerna info git Pushing tags...
Successfully published:
 - gulp-textlint@5.0.0-next.0
 - markdown-to-ast@6.0.0-next.0
 - textlint-ast-test@2.0.0-next.0
 - textlint-fixer-formatter@2.0.0-next.0
 - textlint-formatter@2.0.0-next.0
 - textlint-plugin-markdown@4.0.0-next.0
 - textlint-plugin-text@3.0.0-next.0
 - textlint-tester@4.0.0-next.0
 - textlint@10.0.0-next.0
 - txt-ast-traverse@2.0.0-next.0
 - txt-to-ast@3.0.0-next.0
 - @textlint/ast-node-types@3.0.0-next.0
 - @textlint/feature-flag@3.0.0-next.0
 - @textlint/kernel@2.0.0-next.0
lerna success publish finished

@Leko
Copy link
Member

Leko commented Dec 16, 2017

@azu textlint@10.0.0-next.0 has been installed successfully.
But I found a strange behavior.

$ npm install textlint@next
$ $(npm bin)/textlint --version
v[object Object]

In node_modules/textlint/lib/textlint/src/cli.js, pkgConf.sync("version") returns object.
It is correct ?

        if (currentOptions.version) {
            // version from package.json
            var pkgConf = require("pkg-conf");
            // console.log(pkgConf.sync("version")); // -> { '0': '1', '1': '.', '2': '0', '3': '.', '4': '0' }
            // console.log(require('../../../package.json').version) // -> 10.0.0-next.0
            logger_1.Logger.log("v" + pkgConf.sync("version"));
        }

@azu
Copy link
Member Author

azu commented Dec 16, 2017

It looks wrong.
Ah, I figure out.
We should use read-pkg-up instead of pkg-conf.
pkg-conf handle "namespace" of pacakges.json. This usage is bad..

@azu
Copy link
Member Author

azu commented Dec 16, 2017

I've filed it as issue.
#388

@Leko
Copy link
Member

Leko commented Dec 16, 2017

Thank you for create issue.

@azu
Copy link
Member Author

azu commented Dec 17, 2017

I've released textlint@10.0.0-next.1 that fixes #388 #389

npm install textlint@10.0.0-next.1

If everythings are OK, We will release stable 10.0.0 tomorrow.

📝 Release operation notes
$ ./node_modules/.bin/lerna publish --conventional-commits --cd-version prerelease --npm-tag=next --preid=next
lerna info version 2.5.1
lerna info versioning independent
lerna info ignore [ '**/yarn.lock' ]
lerna info Checking for updated packages...
lerna info Comparing with @textlint/ast-node-types@3.0.0-next.0.
lerna info Checking for prereleased packages...

Changes:
 - gulp-textlint: 5.0.0-next.0 => 5.0.0-next.1
 - textlint-fixer-formatter: 2.0.0-next.0 => 2.0.0-next.1
 - textlint-plugin-markdown: 4.0.0-next.0 => 4.0.0-next.1
 - textlint-plugin-text: 3.0.0-next.0 => 3.0.0-next.1
 - textlint-tester: 4.0.0-next.0 => 4.0.0-next.1
 - textlint: 10.0.0-next.0 => 10.0.0-next.1
 - textlint-example-cli: 2.0.0-next.0 => 2.0.0-next.1 (private)
 - textlint-example-config-file: 2.0.0-next.0 => 2.0.0-next.1 (private)
 - textlint-example-filter: 2.0.0-next.0 => 2.0.0-next.1 (private)
 - textlint-example-fix-dry-run: 2.0.0-next.0 => 2.0.0-next.1 (private)
 - textlint-example-fix: 2.0.0-next.0 => 2.0.0-next.1 (private)
 - textlint-example-html-plugin: 2.0.0-next.0 => 2.0.0-next.1 (private)
 - textlint-perf-test: 2.0.0-next.0 => 2.0.0-next.1 (private)
 - textlint-example-preset: 2.0.0-next.0 => 2.0.0-next.1 (private)
 - textlint-example-rulesdir: 2.0.0-next.0 => 2.0.0-next.1 (private)
 - textlint-example-use-as-module: 2.0.0-next.0 => 2.0.0-next.1 (private)
 - @textlint/kernel: 2.0.0-next.0 => 2.0.0-next.1
 - integration-test: 2.0.0-next.0 => 2.0.0-next.1 (private)

? Are you sure you want to publish the above changes? Yes
lerna info publish Publishing packages to npm...
lerna info published textlint-plugin-markdown
lerna info published textlint-plugin-text
lerna info published @textlint/kernel
lerna info published textlint-fixer-formatter
lerna info published textlint
lerna info published gulp-textlint
lerna info published textlint-tester
lerna info git Pushing tags...
Successfully published:
 - gulp-textlint@5.0.0-next.1
 - textlint-fixer-formatter@2.0.0-next.1
 - textlint-plugin-markdown@4.0.0-next.1
 - textlint-plugin-text@3.0.0-next.1
 - textlint-tester@4.0.0-next.1
 - textlint@10.0.0-next.1
 - @textlint/kernel@2.0.0-next.1
lerna success publish finished

@azu
Copy link
Member Author

azu commented Dec 18, 2017

image

Publish https://github.com/textlint/textlint/releases/tag/textlint%4010.0.0 🎉

@azu
Copy link
Member Author

azu commented Dec 18, 2017

Closing issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Status: In Progress Work in Progress Type: Documentation Documentation only changes Type: Meta Type: Meta - Related to repository itself
Projects
None yet
Development

No branches or pull requests

2 participants