pure rust implemention of word2vec

Overview

Rust

Word2Vec-rs

Word2Vec-rs is a fast implemention of word2vec's skip-gram algorithm.

A simple benchmark on a 200M english corpus:

4 threads:

tool words per sec memory
word2vec 332k 616M
gensim 311k 249M
word2vec-rs 641K 197M

8 threads:

tool words per sec memory
word2vec 611k 616M
gensim 539k 266M
word2vec-rs 995k 203M

Building

word2vec-rs is written in Rust, so you need a Rust installation in order to compile it( It's super easy). Rust version 1.14 or newer is tested.Building is easy:

git clone https://github.com/mklf/word2vec-rs
cd word2vec-rs
cargo build --release --features=blas
./target/release/word2vec train --help

Running

./target/release/word2vec train input_file_path output_path
Comments
  • Bump clap from 2.33.3 to 4.0.25

    Bump clap from 2.33.3 to 4.0.25

    Bumps clap from 2.33.3 to 4.0.25.

    Release notes

    Sourced from clap's releases.

    v4.0.25

    [4.0.25] - 2022-11-15

    Features

    • (error) Report available subcommands when required subcommand is missing

    v4.0.24

    [4.0.24] - 2022-11-14

    Fixes

    • Avoid panic when printing an argument that isn't built

    v4.0.23

    [4.0.23] - 2022-11-11

    Fixes

    • Don't panic on reporting invalid-long errors when followed by invalid UTF8
    • (help) Clarified argument to help subcommand

    v4.0.22

    [4.0.22] - 2022-11-07

    Fixes

    • (help) Don't overflow into next-line-help early due to stale (pre-v4) padding calculations

    v4.0.21

    [4.0.21] - 2022-11-07

    Features

    • (derive) long_about and long_help attributes, without a value, force using doc comment (before it wouldn't be set if there wasn't anything different than the short help)

    v4.0.20

    [4.0.20] - 2022-11-07

    Fixes

    • (derive) Allow defaulted value parser for '()' fields

    v4.0.19

    [4.0.19] - 2022-11-04

    Features

    • ColorChoice now implements ValueEnum

    ... (truncated)

    Changelog

    Sourced from clap's changelog.

    [4.0.25] - 2022-11-15

    Features

    • (error) Report available subcommands when required subcommand is missing

    [4.0.24] - 2022-11-14

    Fixes

    • Avoid panic when printing an argument that isn't built

    [4.0.23] - 2022-11-11

    Fixes

    • Don't panic on reporting invalid-long errors when followed by invalid UTF8
    • (help) Clarified argument to help subcommand

    [4.0.22] - 2022-11-07

    Fixes

    • (help) Don't overflow into next-line-help early due to stale (pre-v4) padding calculations

    [4.0.21] - 2022-11-07

    Features

    • (derive) long_about and long_help attributes, without a value, force using doc comment (before it wouldn't be set if there wasn't anything different than the short help)

    [4.0.20] - 2022-11-07

    Fixes

    • (derive) Allow defaulted value parser for '()' fields

    [4.0.19] - 2022-11-04

    Features

    • ColorChoice now implements ValueEnum

    [4.0.18] - 2022-10-20

    Fixes

    • (derive) Allow #[command(skip)] to also work with enum variants with a value

    [4.0.17] - 2022-10-18

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump clap from 2.33.3 to 4.0.23

    Bump clap from 2.33.3 to 4.0.23

    Bumps clap from 2.33.3 to 4.0.23.

    Release notes

    Sourced from clap's releases.

    v4.0.23

    [4.0.23] - 2022-11-11

    Fixes

    • Don't panic on reporting invalid-long errors when followed by invalid UTF8
    • (help) Clarified argument to help subcommand

    v4.0.22

    [4.0.22] - 2022-11-07

    Fixes

    • (help) Don't overflow into next-line-help early due to stale (pre-v4) padding calculations

    v4.0.21

    [4.0.21] - 2022-11-07

    Features

    • (derive) long_about and long_help attributes, without a value, force using doc comment (before it wouldn't be set if there wasn't anything different than the short help)

    v4.0.20

    [4.0.20] - 2022-11-07

    Fixes

    • (derive) Allow defaulted value parser for '()' fields

    v4.0.19

    [4.0.19] - 2022-11-04

    Features

    • ColorChoice now implements ValueEnum

    v4.0.18

    [4.0.18] - 2022-10-20

    Fixes

    • (derive) Allow #[command(skip)] to also work with enum variants with a value

    v4.0.17

    [4.0.17] - 2022-10-18

    Fixes

    • Allow using Arg::last(true) with Arg::value_hint(ValueHint::CommandWithArguments)

    ... (truncated)

    Changelog

    Sourced from clap's changelog.

    [4.0.23] - 2022-11-11

    Fixes

    • Don't panic on reporting invalid-long errors when followed by invalid UTF8
    • (help) Clarified argument to help subcommand

    [4.0.22] - 2022-11-07

    Fixes

    • (help) Don't overflow into next-line-help early due to stale (pre-v4) padding calculations

    [4.0.21] - 2022-11-07

    Features

    • (derive) long_about and long_help attributes, without a value, force using doc comment (before it wouldn't be set if there wasn't anything different than the short help)

    [4.0.20] - 2022-11-07

    Fixes

    • (derive) Allow defaulted value parser for '()' fields

    [4.0.19] - 2022-11-04

    Features

    • ColorChoice now implements ValueEnum

    [4.0.18] - 2022-10-20

    Fixes

    • (derive) Allow #[command(skip)] to also work with enum variants with a value

    [4.0.17] - 2022-10-18

    Fixes

    • Allow using Arg::last(true) with Arg::value_hint(ValueHint::CommandWithArguments)

    [4.0.16] - 2022-10-18

    Fixes

    • Arg::exclusive(true) should not be exclusive with the argument's own ArgGroup

    [4.0.15] - 2022-10-13

    ... (truncated)

    Commits
    • 95144b7 chore: Release
    • 20ecae1 docs: Update changelog
    • e6a3529 Merge pull request #4474 from epage/utf8
    • e9cbed3 fix(parser): Don't panic on invalid UTF-8 values
    • 45d26e0 test(parser): Show UTF8 bug
    • 4d69e56 Merge pull request #4471 from epage/assert
    • ec03972 test(assert): Verify empty positional assert exists
    • 0d27188 Merge pull request #4465 from epage/help
    • 9376a57 fix(help): Clarify that 'help' command accepts multiple
    • 6cbe5c4 chore: Release
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump clap from 2.33.3 to 4.0.22

    Bump clap from 2.33.3 to 4.0.22

    Bumps clap from 2.33.3 to 4.0.22.

    Release notes

    Sourced from clap's releases.

    v4.0.22

    [4.0.22] - 2022-11-07

    Fixes

    • (help) Don't overflow into next-line-help early due to stale (pre-v4) padding calculations

    v4.0.21

    [4.0.21] - 2022-11-07

    Features

    • (derive) long_about and long_help attributes, without a value, force using doc comment (before it wouldn't be set if there wasn't anything different than the short help)

    v4.0.20

    [4.0.20] - 2022-11-07

    Fixes

    • (derive) Allow defaulted value parser for '()' fields

    v4.0.19

    [4.0.19] - 2022-11-04

    Features

    • ColorChoice now implements ValueEnum

    v4.0.18

    [4.0.18] - 2022-10-20

    Fixes

    • (derive) Allow #[command(skip)] to also work with enum variants with a value

    v4.0.17

    [4.0.17] - 2022-10-18

    Fixes

    • Allow using Arg::last(true) with Arg::value_hint(ValueHint::CommandWithArguments)

    v4.0.16

    [4.0.16] - 2022-10-18

    Fixes

    • Arg::exclusive(true) should not be exclusive with the argument's own ArgGroup

    v4.0.15

    ... (truncated)

    Changelog

    Sourced from clap's changelog.

    [4.0.22] - 2022-11-07

    Fixes

    • (help) Don't overflow into next-line-help early due to stale (pre-v4) padding calculations

    [4.0.21] - 2022-11-07

    Features

    • (derive) long_about and long_help attributes, without a value, force using doc comment (before it wouldn't be set if there wasn't anything different than the short help)

    [4.0.20] - 2022-11-07

    Fixes

    • (derive) Allow defaulted value parser for '()' fields

    [4.0.19] - 2022-11-04

    Features

    • ColorChoice now implements ValueEnum

    [4.0.18] - 2022-10-20

    Fixes

    • (derive) Allow #[command(skip)] to also work with enum variants with a value

    [4.0.17] - 2022-10-18

    Fixes

    • Allow using Arg::last(true) with Arg::value_hint(ValueHint::CommandWithArguments)

    [4.0.16] - 2022-10-18

    Fixes

    • Arg::exclusive(true) should not be exclusive with the argument's own ArgGroup

    [4.0.15] - 2022-10-13

    Fixes

    • (error) Don't suggest -- when it doesn't help
    • (error) Be more consistent in quoting, punctuation, and indentation in errors

    [4.0.14] - 2022-10-12

    ... (truncated)

    Commits
    • 6cbe5c4 chore: Release
    • d2739c9 docs: Update changelog
    • eaa6bfe Merge pull request #4463 from epage/help
    • dfe9e73 fix(help): Update auto-next-line to use new padding
    • 539577d refactor(help): Remove dead code
    • bc457b1 chore: Release
    • d5c3c13 docs: Update changelog
    • 87edc19 Merge pull request #4461 from epage/help
    • c37ab6c fix(derive): Allow 'long_help' to force populating from doc comment
    • 8751152 test(derive): Verify long_help behavior
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump time from 0.2.27 to 0.3.16

    Bump time from 0.2.27 to 0.3.16

    Bumps time from 0.2.27 to 0.3.16.

    Release notes

    Sourced from time's releases.

    v0.3.16

    See the changelog for details.

    v0.3.15

    See the changelog for details.

    v0.3.14

    See the changelog for details.

    v0.3.13

    See the changelog for details.

    v0.3.12

    See the changelog for details.

    v0.3.11

    See the changelog for details.

    v0.3.10

    See the changelog for details.

    v0.3.9

    See the changelog for details.

    v0.3.7

    See the changelog for details.

    v0.3.6

    See the changelog for details.

    v0.3.5

    See the changelog for details.

    v0.3.4

    No release notes provided.

    v0.3.3

    No release notes provided.

    v0.3.2

    No release notes provided.

    v0.3.1

    No release notes provided.

    v0.3.0

    No release notes provided.

    v0.3.0-alpha-2

    No release notes provided.

    ... (truncated)

    Changelog

    Sourced from time's changelog.

    0.3.16 [2022-10-24]

    Changed

    • The minimum supported Rust version is now 1.60.0.
    • The serde-well-known feature flag is deprecated. The necessary features for an item to be enabled are indicated in documentation.
    • Feature gates have been loosened for well-known formats.

    Added

    • consts can now be provided as the format description for time::serde::format_description!. The const must be of type &[FormatItem<'_>], which is what is returned by the time::macros::format_description! macro.

      const TIME_FORMAT_ALT: &[FormatItem<'_>] = time::macros::format_description!("[hour]:[minute]");
      time::serde::format_description!(time_format_alt, Time, TIME_FORMAT_ALT);
      

    Compatibility

    • Some feature flags have been removed. None of these have ever been documented as flags, so any use was unsupported. These flags are:
      • js-sys
      • quickcheck-dep
      • itoa
      • time-macros

    0.3.15 [2022-10-03]

    Changed

    • Better gating for tm_gmtoff extension. This should eliminate build failures on some untested platforms.
    • Debug output for types are now human-readable. While this should not be relied upon, it is currently the same as the output with Display.
    • Eliminate overflows in the constructors for `Duration. When there is an overflow, the methods now panic. This was previously only the case in debug mode.
    • Panic if NaN is passed to Duration::from_secs_f32 or Duration::from_secs_f64.

    Fixed

    • Fix error when deserializing data types from bytes. This affects formats such as JSON.
    • Eliminate a panic in an edge case when converting OffsetDateTime to another UtcOffset. This occurred due to an old assumption in code that was no longer the case.

    0.3.14 [2022-08-24]

    Changed

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump clap from 2.33.3 to 4.0.18

    Bump clap from 2.33.3 to 4.0.18

    Bumps clap from 2.33.3 to 4.0.18.

    Release notes

    Sourced from clap's releases.

    v4.0.18

    [4.0.18] - 2022-10-20

    Fixes

    • (derive) Allow #[command(skip)] to also work with enum variants with a value

    v4.0.17

    [4.0.17] - 2022-10-18

    Fixes

    • Allow using Arg::last(true) with Arg::value_hint(ValueHint::CommandWithArguments)

    v4.0.16

    [4.0.16] - 2022-10-18

    Fixes

    • Arg::exclusive(true) should not be exclusive with the argument's own ArgGroup

    v4.0.15

    [4.0.15] - 2022-10-13

    Fixes

    • (error) Don't suggest -- when it doesn't help
    • (error) Be more consistent in quoting, punctuation, and indentation in errors

    v4.0.14

    [4.0.14] - 2022-10-12

    Fixes

    • Only put ArgGroup in ArgMatches when explicitly specified, fixing derives handling of option-flattened fields (#4375)

    v4.0.13

    [4.0.13] - 2022-10-11

    Features

    • (derive) Allow () for fields to mean "don't read" (#4371)

    v4.0.12

    [4.0.12] - 2022-10-10

    Features

    • Added TypedValueParser::try_map for when adapting an existing TypedValueParser can fail
    • (error) Create errors like clap with Error::new, Error::with_cmd, and Error::insert

    ... (truncated)

    Changelog

    Sourced from clap's changelog.

    [4.0.18] - 2022-10-20

    Fixes

    • (derive) Allow #[command(skip)] to also work with enum variants with a value

    [4.0.17] - 2022-10-18

    Fixes

    • Allow using Arg::last(true) with Arg::value_hint(ValueHint::CommandWithArguments)

    [4.0.16] - 2022-10-18

    Fixes

    • Arg::exclusive(true) should not be exclusive with the argument's own ArgGroup

    [4.0.15] - 2022-10-13

    Fixes

    • (error) Don't suggest -- when it doesn't help
    • (error) Be more consistent in quoting, punctuation, and indentation in errors

    [4.0.14] - 2022-10-12

    Fixes

    • Only put ArgGroup in ArgMatches when explicitly specified, fixing derives handling of option-flattened fields (#4375)

    [4.0.13] - 2022-10-11

    Features

    • (derive) Allow () for fields to mean "don't read" (#4371)

    [4.0.12] - 2022-10-10

    Features

    • Added TypedValueParser::try_map for when adapting an existing TypedValueParser can fail
    • (error) Create errors like clap with Error::new, Error::with_cmd, and Error::insert

    [4.0.11] - 2022-10-09

    Fixes

    • (help) Fix wrapping calculations with ANSI escape codes

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump clap from 2.33.3 to 4.0.17

    Bump clap from 2.33.3 to 4.0.17

    Bumps clap from 2.33.3 to 4.0.17.

    Release notes

    Sourced from clap's releases.

    v4.0.17

    [4.0.17] - 2022-10-18

    Fixes

    • Allow using Arg::last(true) with Arg::value_hint(ValueHint::CommandWithArguments)

    v4.0.16

    [4.0.16] - 2022-10-18

    Fixes

    • Arg::exclusive(true) should not be exclusive with the argument's own ArgGroup

    v4.0.15

    [4.0.15] - 2022-10-13

    Fixes

    • (error) Don't suggest -- when it doesn't help
    • (error) Be more consistent in quoting, punctuation, and indentation in errors

    v4.0.14

    [4.0.14] - 2022-10-12

    Fixes

    • Only put ArgGroup in ArgMatches when explicitly specified, fixing derives handling of option-flattened fields (#4375)

    v4.0.13

    [4.0.13] - 2022-10-11

    Features

    • (derive) Allow () for fields to mean "don't read" (#4371)

    v4.0.12

    [4.0.12] - 2022-10-10

    Features

    • Added TypedValueParser::try_map for when adapting an existing TypedValueParser can fail
    • (error) Create errors like clap with Error::new, Error::with_cmd, and Error::insert

    v4.0.11

    [4.0.11] - 2022-10-09

    Fixes

    • (help) Fix wrapping calculations with ANSI escape codes

    ... (truncated)

    Changelog

    Sourced from clap's changelog.

    [4.0.17] - 2022-10-18

    Fixes

    • Allow using Arg::last(true) with Arg::value_hint(ValueHint::CommandWithArguments)

    [4.0.16] - 2022-10-18

    Fixes

    • Arg::exclusive(true) should not be exclusive with the argument's own ArgGroup

    [4.0.15] - 2022-10-13

    Fixes

    • (error) Don't suggest -- when it doesn't help
    • (error) Be more consistent in quoting, punctuation, and indentation in errors

    [4.0.14] - 2022-10-12

    Fixes

    • Only put ArgGroup in ArgMatches when explicitly specified, fixing derives handling of option-flattened fields (#4375)

    [4.0.13] - 2022-10-11

    Features

    • (derive) Allow () for fields to mean "don't read" (#4371)

    [4.0.12] - 2022-10-10

    Features

    • Added TypedValueParser::try_map for when adapting an existing TypedValueParser can fail
    • (error) Create errors like clap with Error::new, Error::with_cmd, and Error::insert

    [4.0.11] - 2022-10-09

    Fixes

    • (help) Fix wrapping calculations with ANSI escape codes

    [4.0.10] - 2022-10-05

    Features

    • (derive) Support #[arg(flatten)] on Option types (#4211, #4350)

    ... (truncated)

    Commits
    • b9dfbbf chore: Release
    • a6c8f6a docs: Update changelog
    • e11afa2 Merge pull request #4401 from epage/last
    • 1ead5ef fix(complete): Support last(true) with CommandWithArguments
    • e50a11a Merge pull request #4399 from j-browne/link-fix
    • a1d4476 Fix a broken link in ValueEnum docs
    • cbb05d5 chore: Release
    • b77bd0c docs: Update changelog
    • 466b6f8 Merge pull request #4397 from epage/exclusive
    • 45dcf0e fix(parser): Don't make Args exclusive with their ArgGroup
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump clap from 2.33.3 to 4.0.15

    Bump clap from 2.33.3 to 4.0.15

    Bumps clap from 2.33.3 to 4.0.15.

    Release notes

    Sourced from clap's releases.

    v4.0.15

    [4.0.15] - 2022-10-13

    Fixes

    • (error) Don't suggest -- when it doesn't help
    • (error) Be more consistent in quoting, punctuation, and indentation in errors

    v4.0.14

    [4.0.14] - 2022-10-12

    Fixes

    • Only put ArgGroup in ArgMatches when explicitly specified, fixing derives handling of option-flattened fields (#4375)

    v4.0.13

    [4.0.13] - 2022-10-11

    Features

    • (derive) Allow () for fields to mean "don't read" (#4371)

    v4.0.12

    [4.0.12] - 2022-10-10

    Features

    • Added TypedValueParser::try_map for when adapting an existing TypedValueParser can fail
    • (error) Create errors like clap with Error::new, Error::with_cmd, and Error::insert

    v4.0.11

    [4.0.11] - 2022-10-09

    Fixes

    • (help) Fix wrapping calculations with ANSI escape codes

    v4.0.10

    [4.0.10] - 2022-10-05

    Features

    • (derive) Support #[arg(flatten)] on Option types (#4211, #4350)

    v4.0.9

    [4.0.9] - 2022-10-03

    Fixes

    • (derive) Process doc comments for #[command(subcommand)] like in clap v3

    ... (truncated)

    Changelog

    Sourced from clap's changelog.

    [4.0.15] - 2022-10-13

    Fixes

    • (error) Don't suggest -- when it doesn't help
    • (error) Be more consistent in quoting, punctuation, and indentation in errors

    [4.0.14] - 2022-10-12

    Fixes

    • Only put ArgGroup in ArgMatches when explicitly specified, fixing derives handling of option-flattened fields (#4375)

    [4.0.13] - 2022-10-11

    Features

    • (derive) Allow () for fields to mean "don't read" (#4371)

    [4.0.12] - 2022-10-10

    Features

    • Added TypedValueParser::try_map for when adapting an existing TypedValueParser can fail
    • (error) Create errors like clap with Error::new, Error::with_cmd, and Error::insert

    [4.0.11] - 2022-10-09

    Fixes

    • (help) Fix wrapping calculations with ANSI escape codes

    [4.0.10] - 2022-10-05

    Features

    • (derive) Support #[arg(flatten)] on Option types (#4211, #4350)

    [4.0.9] - 2022-10-03

    Fixes

    • (derive) Process doc comments for #[command(subcommand)] like in clap v3

    [4.0.8] - 2022-10-01

    Fixes

    • (derive) Remove a low-value assert preventing defaulting Help and Version actions

    ... (truncated)

    Commits
    • bd5a6ea chore: Release
    • 7eaeed3 docs: Update changelog
    • 0f6ef30 Merge pull request #4384 from epage/consistent
    • 0f3c98a fix(error): Be consistent in puncutation
    • 6422046 Merge pull request #4383 from epage/error
    • b9d2980 refactor(error): Move subcommand suggestion to general suggestions
    • 63eec40 refactor(error): Clarify distinct suggestion cases
    • 5275660 refactor(error): Move escape suggestion to general suggestion
    • 813060e refactor(error): Move bad-escape suggestion to general suggestion
    • 7417c75 refactor(error): Move escaped-subcmd suggestion to general suggestions
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump clap from 2.33.3 to 4.0.14

    Bump clap from 2.33.3 to 4.0.14

    Bumps clap from 2.33.3 to 4.0.14.

    Release notes

    Sourced from clap's releases.

    v4.0.14

    [4.0.14] - 2022-10-12

    Fixes

    • Only put ArgGroup in ArgMatches when explicitly specified, fixing derives handling of option-flattened fields (#4375)

    v4.0.13

    [4.0.13] - 2022-10-11

    Features

    • (derive) Allow () for fields to mean "don't read" (#4371)

    v4.0.12

    [4.0.12] - 2022-10-10

    Features

    • Added TypedValueParser::try_map for when adapting an existing TypedValueParser can fail
    • (error) Create errors like clap with Error::new, Error::with_cmd, and Error::insert

    v4.0.11

    [4.0.11] - 2022-10-09

    Fixes

    • (help) Fix wrapping calculations with ANSI escape codes

    v4.0.10

    [4.0.10] - 2022-10-05

    Features

    • (derive) Support #[arg(flatten)] on Option types (#4211, #4350)

    v4.0.9

    [4.0.9] - 2022-10-03

    Fixes

    • (derive) Process doc comments for #[command(subcommand)] like in clap v3

    v4.0.8

    [4.0.8] - 2022-10-01

    Fixes

    • (derive) Remove a low-value assert preventing defaulting Help and Version actions

    ... (truncated)

    Changelog

    Sourced from clap's changelog.

    [4.0.14] - 2022-10-12

    Fixes

    • Only put ArgGroup in ArgMatches when explicitly specified, fixing derives handling of option-flattened fields (#4375)

    [4.0.13] - 2022-10-11

    Features

    • (derive) Allow () for fields to mean "don't read" (#4371)

    [4.0.12] - 2022-10-10

    Features

    • Added TypedValueParser::try_map for when adapting an existing TypedValueParser can fail
    • (error) Create errors like clap with Error::new, Error::with_cmd, and Error::insert

    [4.0.11] - 2022-10-09

    Fixes

    • (help) Fix wrapping calculations with ANSI escape codes

    [4.0.10] - 2022-10-05

    Features

    • (derive) Support #[arg(flatten)] on Option types (#4211, #4350)

    [4.0.9] - 2022-10-03

    Fixes

    • (derive) Process doc comments for #[command(subcommand)] like in clap v3

    [4.0.8] - 2022-10-01

    Fixes

    • (derive) Remove a low-value assert preventing defaulting Help and Version actions

    [4.0.7] - 2022-09-30

    Features

    • (derive) Populate implicit ArgGroup (#3165)

    Fixes

    ... (truncated)

    Commits
    • 2926824 chore: Release
    • 5840d62 docs: Update changelog
    • f0223a4 Merge pull request #4375 from epage/group2
    • d0dcaac fix(parser): Only add ArgGroup to ArgMatches for command-line
    • e98fc7f refactor(parser): Centralize knowledge for explicit
    • e704adb refactor(parser): Centralize group handling
    • 0f30ac7 refactor(parser): Remove function wrappers
    • 8cf6d11 refactor(parser): Reduce code duplication
    • 84828e8 refactor(parser): Remove function wrappers
    • 43c1fa3 refactor(parser): Reduce code duplication
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump clap from 2.33.3 to 4.0.13

    Bump clap from 2.33.3 to 4.0.13

    Bumps clap from 2.33.3 to 4.0.13.

    Release notes

    Sourced from clap's releases.

    v4.0.13

    [4.0.13] - 2022-10-11

    Features

    • (derive) Allow () for fields to mean "don't read" (#4371)

    v4.0.12

    [4.0.12] - 2022-10-10

    Features

    • Added TypedValueParser::try_map for when adapting an existing TypedValueParser can fail
    • (error) Create errors like clap with Error::new, Error::with_cmd, and Error::insert

    v4.0.11

    [4.0.11] - 2022-10-09

    Fixes

    • (help) Fix wrapping calculations with ANSI escape codes

    v4.0.10

    [4.0.10] - 2022-10-05

    Features

    • (derive) Support #[arg(flatten)] on Option types (#4211, #4350)

    v4.0.9

    [4.0.9] - 2022-10-03

    Fixes

    • (derive) Process doc comments for #[command(subcommand)] like in clap v3

    v4.0.8

    [4.0.8] - 2022-10-01

    Fixes

    • (derive) Remove a low-value assert preventing defaulting Help and Version actions

    v4.0.7

    [4.0.7] - 2022-09-30

    Features

    • (derive) Populate implicit ArgGroup (#3165)

    ... (truncated)

    Changelog

    Sourced from clap's changelog.

    [4.0.13] - 2022-10-11

    Features

    • (derive) Allow () for fields to mean "don't read" (#4371)

    [4.0.12] - 2022-10-10

    Features

    • Added TypedValueParser::try_map for when adapting an existing TypedValueParser can fail
    • (error) Create errors like clap with Error::new, Error::with_cmd, and Error::insert

    [4.0.11] - 2022-10-09

    Fixes

    • (help) Fix wrapping calculations with ANSI escape codes

    [4.0.10] - 2022-10-05

    Features

    • (derive) Support #[arg(flatten)] on Option types (#4211, #4350)

    [4.0.9] - 2022-10-03

    Fixes

    • (derive) Process doc comments for #[command(subcommand)] like in clap v3

    [4.0.8] - 2022-10-01

    Fixes

    • (derive) Remove a low-value assert preventing defaulting Help and Version actions

    [4.0.7] - 2022-09-30

    Features

    • (derive) Populate implicit ArgGroup (#3165)

    Fixes

    • (derive) Support #[group(skip)] on Parser derive
    • (derive) Tell users about implicit arg groups when running into group name conflicts
    • (error) Don't report unrelated groups in conflict or requires errors

    [4.0.6] - 2022-09-30

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump clap from 2.33.3 to 4.0.12

    Bump clap from 2.33.3 to 4.0.12

    Bumps clap from 2.33.3 to 4.0.12.

    Release notes

    Sourced from clap's releases.

    v4.0.12

    [4.0.12] - 2022-10-10

    Features

    • Added TypedValueParser::try_map for when adapting an existing TypedValueParser can fail
    • (error) Create errors like clap with Error::new, Error::with_cmd, and Error::insert

    v4.0.11

    [4.0.11] - 2022-10-09

    Fixes

    • (help) Fix wrapping calculations with ANSI escape codes

    v4.0.10

    [4.0.10] - 2022-10-05

    Features

    • (derive) Support #[arg(flatten)] on Option types (#4211, #4350)

    v4.0.9

    [4.0.9] - 2022-10-03

    Fixes

    • (derive) Process doc comments for #[command(subcommand)] like in clap v3

    v4.0.8

    [4.0.8] - 2022-10-01

    Fixes

    • (derive) Remove a low-value assert preventing defaulting Help and Version actions

    v4.0.7

    [4.0.7] - 2022-09-30

    Features

    • (derive) Populate implicit ArgGroup (#3165)

    Fixes

    • (derive) Support #[group(skip)] on Parser derive
    • (derive) Tell users about implicit arg groups when running into group name conflicts
    • (error) Don't report unrelated groups in conflict or requires errors

    v4.0.6

    ... (truncated)

    Changelog

    Sourced from clap's changelog.

    [4.0.12] - 2022-10-10

    Features

    • Added TypedValueParser::try_map for when adapting an existing TypedValueParser can fail
    • (error) Create errors like clap with Error::new, Error::with_cmd, and Error::insert

    [4.0.11] - 2022-10-09

    Fixes

    • (help) Fix wrapping calculations with ANSI escape codes

    [4.0.10] - 2022-10-05

    Features

    • (derive) Support #[arg(flatten)] on Option types (#4211, #4350)

    [4.0.9] - 2022-10-03

    Fixes

    • (derive) Process doc comments for #[command(subcommand)] like in clap v3

    [4.0.8] - 2022-10-01

    Fixes

    • (derive) Remove a low-value assert preventing defaulting Help and Version actions

    [4.0.7] - 2022-09-30

    Features

    • (derive) Populate implicit ArgGroup (#3165)

    Fixes

    • (derive) Support #[group(skip)] on Parser derive
    • (derive) Tell users about implicit arg groups when running into group name conflicts
    • (error) Don't report unrelated groups in conflict or requires errors

    [4.0.6] - 2022-09-30

    Features

    [4.0.5] - 2022-09-30

    ... (truncated)

    Commits
    • a2f2a9a chore: Release
    • d821d2f docs: Update changelog
    • f432422 Merge pull request #4366 from epage/try_map
    • 2122e2b feat(parser): Add TypedValueParser::try_map
    • 233a6be Merge pull request #4365 from epage/error
    • 502bb93 feat(error): Allow reproducing clap's errors
    • 5b763e9 docs: Fix value_parser documented From types
    • a482b8a Merge pull request #4355 from LingMan/patch-1
    • fd41141 docs: Clarify args_override_self
    • 59bf166 docs(tutorial): Fix flag actions
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump clap from 2.33.3 to 4.0.10

    Bump clap from 2.33.3 to 4.0.10

    Bumps clap from 2.33.3 to 4.0.10.

    Release notes

    Sourced from clap's releases.

    v4.0.10

    [4.0.10] - 2022-10-05

    Features

    • (derive) Support #[arg(flatten)] on Option types (#4211, #4350)

    v4.0.9

    [4.0.9] - 2022-10-03

    Fixes

    • (derive) Process doc comments for #[command(subcommand)] like in clap v3

    v4.0.8

    [4.0.8] - 2022-10-01

    Fixes

    • (derive) Remove a low-value assert preventing defaulting Help and Version actions

    v4.0.7

    [4.0.7] - 2022-09-30

    Features

    • (derive) Populate implicit ArgGroup (#3165)

    Fixes

    • (derive) Support #[group(skip)] on Parser derive
    • (derive) Tell users about implicit arg groups when running into group name conflicts
    • (error) Don't report unrelated groups in conflict or requires errors

    v4.0.6

    [4.0.6] - 2022-09-30

    Features

    v4.0.5

    [4.0.5] - 2022-09-30

    v4.0.4

    [4.0.4] - 2022-09-29

    Fixes

    • (error) Specialize the self-conflict error to look like clap v3

    ... (truncated)

    Changelog

    Sourced from clap's changelog.

    [4.0.10] - 2022-10-05

    Features

    • (derive) Support #[arg(flatten)] on Option types (#4211, #4350)

    [4.0.9] - 2022-10-03

    Fixes

    • (derive) Process doc comments for #[command(subcommand)] like in clap v3

    [4.0.8] - 2022-10-01

    Fixes

    • (derive) Remove a low-value assert preventing defaulting Help and Version actions

    [4.0.7] - 2022-09-30

    Features

    • (derive) Populate implicit ArgGroup (#3165)

    Fixes

    • (derive) Support #[group(skip)] on Parser derive
    • (derive) Tell users about implicit arg groups when running into group name conflicts
    • (error) Don't report unrelated groups in conflict or requires errors

    [4.0.6] - 2022-09-30

    Features

    [4.0.5] - 2022-09-30

    [4.0.4] - 2022-09-29

    Fixes

    • (error) Specialize the self-conflict error to look like clap v3

    [4.0.3] - 2022-09-29

    Fixes

    • (error) Quote literals consistently
    • (error) Stylize escape (--) suggestions

    ... (truncated)

    Commits
    • af1234a chore: Release
    • f921281 docs: Update changelog
    • f86cd0f Merge pull request #4350 from epage/option
    • 78676f5 fix(derive): Make mismatched behavior more obvious
    • 06d2049 feat(derive): Support 'Option' when flattening
    • 33db640 refactor(derive): Make flatten's update prepped for Option
    • f121a8b fix(derive): Better subcommand type errors for Vec
    • 4f17f99 fix(derive): Better flatten type errors
    • 232d91b docs: Describe the skip attribute for ValueEnums (#4328)
    • 9c21794 Merge pull request #4348 from mattmadeofpasta/clarify_no_long_help_text_for_p...
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump clap from 2.33.3 to 4.0.26

    Bump clap from 2.33.3 to 4.0.26

    Bumps clap from 2.33.3 to 4.0.26.

    Release notes

    Sourced from clap's releases.

    v4.0.26

    [4.0.26] - 2022-11-16

    Fixes

    • (error) Fix typos in ContextKind::as_str

    v4.0.25

    [4.0.25] - 2022-11-15

    Features

    • (error) Report available subcommands when required subcommand is missing

    v4.0.24

    [4.0.24] - 2022-11-14

    Fixes

    • Avoid panic when printing an argument that isn't built

    v4.0.23

    [4.0.23] - 2022-11-11

    Fixes

    • Don't panic on reporting invalid-long errors when followed by invalid UTF8
    • (help) Clarified argument to help subcommand

    v4.0.22

    [4.0.22] - 2022-11-07

    Fixes

    • (help) Don't overflow into next-line-help early due to stale (pre-v4) padding calculations

    v4.0.21

    [4.0.21] - 2022-11-07

    Features

    • (derive) long_about and long_help attributes, without a value, force using doc comment (before it wouldn't be set if there wasn't anything different than the short help)

    v4.0.20

    [4.0.20] - 2022-11-07

    Fixes

    • (derive) Allow defaulted value parser for '()' fields

    ... (truncated)

    Changelog

    Sourced from clap's changelog.

    [4.0.26] - 2022-11-16

    Fixes

    • (error) Fix typos in ContextKind::as_str

    [4.0.25] - 2022-11-15

    Features

    • (error) Report available subcommands when required subcommand is missing

    [4.0.24] - 2022-11-14

    Fixes

    • Avoid panic when printing an argument that isn't built

    [4.0.23] - 2022-11-11

    Fixes

    • Don't panic on reporting invalid-long errors when followed by invalid UTF8
    • (help) Clarified argument to help subcommand

    [4.0.22] - 2022-11-07

    Fixes

    • (help) Don't overflow into next-line-help early due to stale (pre-v4) padding calculations

    [4.0.21] - 2022-11-07

    Features

    • (derive) long_about and long_help attributes, without a value, force using doc comment (before it wouldn't be set if there wasn't anything different than the short help)

    [4.0.20] - 2022-11-07

    Fixes

    • (derive) Allow defaulted value parser for '()' fields

    [4.0.19] - 2022-11-04

    Features

    • ColorChoice now implements ValueEnum

    [4.0.18] - 2022-10-20

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Add CodeQL workflow for GitHub code scanning

    Add CodeQL workflow for GitHub code scanning

    Hi mklf/word2vec-rs!

    This is a one-off automatically generated pull request from LGTM.com :robot:. You might have heard that we’ve integrated LGTM’s underlying CodeQL analysis engine natively into GitHub. The result is GitHub code scanning!

    With LGTM fully integrated into code scanning, we are focused on improving CodeQL within the native GitHub code scanning experience. In order to take advantage of current and future improvements to our analysis capabilities, we suggest you enable code scanning on your repository. Please take a look at our blog post for more information.

    This pull request enables code scanning by adding an auto-generated codeql.yml workflow file for GitHub Actions to your repository — take a look! We tested it before opening this pull request, so all should be working :heavy_check_mark:. In fact, you might already have seen some alerts appear on this pull request!

    Where needed and if possible, we’ve adjusted the configuration to the needs of your particular repository. But of course, you should feel free to tweak it further! Check this page for detailed documentation.

    Questions? Check out the FAQ below!

    FAQ

    Click here to expand the FAQ section

    How often will the code scanning analysis run?

    By default, code scanning will trigger a scan with the CodeQL engine on the following events:

    • On every pull request — to flag up potential security problems for you to investigate before merging a PR.
    • On every push to your default branch and other protected branches — this keeps the analysis results on your repository’s Security tab up to date.
    • Once a week at a fixed time — to make sure you benefit from the latest updated security analysis even when no code was committed or PRs were opened.

    What will this cost?

    Nothing! The CodeQL engine will run inside GitHub Actions, making use of your unlimited free compute minutes for public repositories.

    What types of problems does CodeQL find?

    The CodeQL engine that powers GitHub code scanning is the exact same engine that powers LGTM.com. The exact set of rules has been tweaked slightly, but you should see almost exactly the same types of alerts as you were used to on LGTM.com: we’ve enabled the security-and-quality query suite for you.

    How do I upgrade my CodeQL engine?

    No need! New versions of the CodeQL analysis are constantly deployed on GitHub.com; your repository will automatically benefit from the most recently released version.

    The analysis doesn’t seem to be working

    If you get an error in GitHub Actions that indicates that CodeQL wasn’t able to analyze your code, please follow the instructions here to debug the analysis.

    How do I disable LGTM.com?

    If you have LGTM’s automatic pull request analysis enabled, then you can follow these steps to disable the LGTM pull request analysis. You don’t actually need to remove your repository from LGTM.com; it will automatically be removed in the next few months as part of the deprecation of LGTM.com (more info here).

    Which source code hosting platforms does code scanning support?

    GitHub code scanning is deeply integrated within GitHub itself. If you’d like to scan source code that is hosted elsewhere, we suggest that you create a mirror of that code on GitHub.

    How do I know this PR is legitimate?

    This PR is filed by the official LGTM.com GitHub App, in line with the deprecation timeline that was announced on the official GitHub Blog. The proposed GitHub Action workflow uses the official open source GitHub CodeQL Action. If you have any other questions or concerns, please join the discussion here in the official GitHub community!

    I have another question / how do I get in touch?

    Please join the discussion here to ask further questions and send us suggestions!

    opened by lgtm-com[bot] 0
  • Bump time from 0.2.27 to 0.3.17

    Bump time from 0.2.27 to 0.3.17

    Bumps time from 0.2.27 to 0.3.17.

    Release notes

    Sourced from time's releases.

    v0.3.17

    See the changelog for details.

    v0.3.16

    See the changelog for details.

    v0.3.15

    See the changelog for details.

    v0.3.14

    See the changelog for details.

    v0.3.13

    See the changelog for details.

    v0.3.12

    See the changelog for details.

    v0.3.11

    See the changelog for details.

    v0.3.10

    See the changelog for details.

    v0.3.9

    See the changelog for details.

    v0.3.7

    See the changelog for details.

    v0.3.6

    See the changelog for details.

    v0.3.5

    See the changelog for details.

    v0.3.4

    No release notes provided.

    v0.3.3

    No release notes provided.

    v0.3.2

    No release notes provided.

    v0.3.1

    No release notes provided.

    v0.3.0

    No release notes provided.

    ... (truncated)

    Changelog

    Sourced from time's changelog.

    0.3.17 [2022-11-06]

    Changed

    • The amount of code generated by time::serde::format_description! is reduced if not all feature flags are active.
    • cargo test --tests works with any configuration of feature flags. This occurs by spawning a subprocess that passes --all-features. cargo test --doc works with most combinations of feature flags, including the default. The combination of these changes means that crater will now run on time.
    • libc and num_threads are only included as dependencies when needed. They were previously unconditionally included.

    Added

    • time::format_description::parse_owned, which returns an OwnedFormatItem. This avoids "lifetime hell", where all your structs now need a lifetime because a single field has one. Note that when possible, the borrowed format item (just called FormatItem) is still preferred, as it has significantly fewer allocations. The new OwnedFormatItem is usable for both formatting and parsing, as you would expect.

    Compatibility

    • The parser for runtime format descriptions has been rewritten. A side effect of this is that some errors have slightly changed. No existing API has been altered, so this is not a breaking change. However, you may notice different errors, which are hopefully better! The parser for compile-time format descriptions has not yet been swapped out. If you notice any bugs, please file an issue.

    0.3.16 [2022-10-24]

    Changed

    • The minimum supported Rust version is now 1.60.0.
    • The serde-well-known feature flag is deprecated. The necessary features for an item to be enabled are indicated in documentation.
    • Feature gates have been loosened for well-known formats.

    Added

    • consts can now be provided as the format description for time::serde::format_description!. The const must be of type &[FormatItem<'_>], which is what is returned by the time::macros::format_description! macro.

      const TIME_FORMAT_ALT: &[FormatItem<'_>] = time::macros::format_description!("[hour]:[minute]");
      time::serde::format_description!(time_format_alt, Time, TIME_FORMAT_ALT);
      

    Compatibility

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Bump rand from 0.4.6 to 0.8.5

    Bump rand from 0.4.6 to 0.8.5

    Bumps rand from 0.4.6 to 0.8.5.

    Changelog

    Sourced from rand's changelog.

    [0.8.5] - 2021-08-20

    Fixes

    • Fix build on non-32/64-bit architectures (#1144)
    • Fix "min_const_gen" feature for no_std (#1173)
    • Check libc::pthread_atfork return value with panic on error (#1178)
    • More robust reseeding in case ReseedingRng is used from a fork handler (#1178)
    • Fix nightly: remove unused slice_partition_at_index feature (#1215)
    • Fix nightly + simd_support: update packed_simd (#1216)

    Rngs

    • StdRng: Switch from HC128 to ChaCha12 on emscripten (#1142). We now use ChaCha12 on all platforms.

    Documentation

    • Added docs about rand's use of const generics (#1150)
    • Better random chars example (#1157)

    [0.8.4] - 2021-06-15

    Additions

    • Use const-generics to support arrays of all sizes (#1104)
    • Implement Clone and Copy for Alphanumeric (#1126)
    • Add Distribution::map to derive a distribution using a closure (#1129)
    • Add Slice distribution (#1107)
    • Add DistString trait with impls for Standard and Alphanumeric (#1133)

    Other

    • Reorder asserts in Uniform float distributions for easier debugging of non-finite arguments (#1094, #1108)
    • Add range overflow check in Uniform float distributions (#1108)
    • Deprecate rngs::adapter::ReadRng (#1130)

    [0.8.3] - 2021-01-25

    Fixes

    • Fix no-std + alloc build by gating choose_multiple_weighted on std (#1088)

    [0.8.2] - 2021-01-12

    Fixes

    • Fix panic in UniformInt::sample_single_inclusive and Rng::gen_range when providing a full integer range (eg 0..=MAX) (#1087)

    [0.8.1] - 2020-12-31

    Other

    • Enable all stable features in the playground (#1081)

    [0.8.0] - 2020-12-18

    Platform support

    • The minimum supported Rust version is now 1.36 (#1011)
    • getrandom updated to v0.2 (#1041)
    • Remove wasm-bindgen and stdweb feature flags. For details of WASM support,

    ... (truncated)

    Commits
    • 937320c Update CHANGELOG for 0.8.5 (#1221)
    • 2924af6 Merge pull request #1183 from vks/fill-float-doc
    • dbbc1bf Merge pull request #1218 from Will-Low/master
    • 9f20df0 Making distributions comparable by deriving PartialEq. Tests included
    • a407bdf Merge pull request #1216 from rust-random/work5
    • d3ca11b Update to packed_simd_2 0.3.7
    • fa04c15 Merge pull request #1215 from Lantern-chat/master
    • 73f8ffd Remove unused slice_partition_at_index feature
    • 8f37250 Merge pull request #1208 from newpavlov/rand_distr/fix_no_std
    • 9ef737b update changelog
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • Usage example

    Usage example

    Hi there,

    I myself was wondering whether to implement w2v in rust. I am a python user and noob to rust. In any case, I found your repo and it looks great. Something that could be of great benefit it to add a simple usage example in the README.md

    A bit more illustration of what the output looks like? How the input needs be formatted?

    opened by swayson 0
Owner
fang li
fang li
A naive (read: slow) implementation of Word2Vec. Uses BLAS behind the scenes for speed.

SloWord2Vec This is a naive implementation of Word2Vec implemented in Rust. The goal is to learn the basic principles and formulas behind Word2Vec. BT

Lloyd 2 Jul 5, 2018
A Japanese Morphological Analyzer written in pure Rust

Yoin - A Japanese Morphological Analyzer yoin is a Japanese morphological analyze engine written in pure Rust. mecab-ipadic is embedded in yoin. :) $

Agata Naomichi 21 Apr 30, 2022
Gomez - A pure Rust framework and implementation of (derivative-free) methods for solving nonlinear (bound-constrained) systems of equations

Gomez A pure Rust framework and implementation of (derivative-free) methods for solving nonlinear (bound-constrained) systems of equations. Warning: T

Datamole 19 Dec 24, 2022
Rust-nlp is a library to use Natural Language Processing algorithm with RUST

nlp Rust-nlp Implemented algorithm Distance Levenshtein (Explanation) Jaro / Jaro-Winkler (Explanation) Phonetics Soundex (Explanation) Metaphone (Exp

Simon Paitrault 34 Dec 20, 2022
Fast suffix arrays for Rust (with Unicode support).

suffix Fast linear time & space suffix arrays for Rust. Supports Unicode! Dual-licensed under MIT or the UNLICENSE. Documentation https://docs.rs/suff

Andrew Gallant 207 Dec 26, 2022
Elastic tabstops for Rust.

tabwriter is a crate that implements elastic tabstops. It provides both a library for wrapping Rust Writers and a small program that exposes the same

Andrew Gallant 212 Dec 16, 2022
An efficient and powerful Rust library for word wrapping text.

Textwrap Textwrap is a library for wrapping and indenting text. It is most often used by command-line programs to format dynamic output nicely so it l

Martin Geisler 322 Dec 26, 2022
⏮ ⏯ ⏭ A Rust library to easily read forwards, backwards or randomly through the lines of huge files.

EasyReader The main goal of this library is to allow long navigations through the lines of large files, freely moving forwards and backwards or gettin

Michele Federici 81 Dec 6, 2022
An implementation of regular expressions for Rust. This implementation uses finite automata and guarantees linear time matching on all inputs.

regex A Rust library for parsing, compiling, and executing regular expressions. Its syntax is similar to Perl-style regular expressions, but lacks a f

The Rust Programming Language 2.6k Jan 8, 2023
Natural language detection library for Rust. Try demo online: https://www.greyblake.com/whatlang/

Whatlang Natural language detection for Rust with focus on simplicity and performance. Content Features Get started Documentation Supported languages

Sergey Potapov 805 Dec 28, 2022
Multilingual implementation of RAKE algorithm for Rust

RAKE.rs The library provides a multilingual implementation of Rapid Automatic Keyword Extraction (RAKE) algorithm for Rust. How to Use Append rake to

Navid 26 Dec 16, 2022
A Rust library for generically joining iterables with a separator

joinery A Rust library for generically joining iterables with a separator. Provides the tragically missing string join functionality to rust. extern c

Nathan West 72 Dec 16, 2022
Rust edit distance routines accelerated using SIMD. Supports fast Hamming, Levenshtein, restricted Damerau-Levenshtein, etc. distance calculations and string search.

triple_accel Rust edit distance routines accelerated using SIMD. Supports fast Hamming, Levenshtein, restricted Damerau-Levenshtein, etc. distance cal

Daniel Liu 75 Jan 8, 2023
Rust native ready-to-use NLP pipelines and transformer-based models (BERT, DistilBERT, GPT2,...)

rust-bert Rust native Transformer-based models implementation. Port of Hugging Face's Transformers library, using the tch-rs crate and pre-processing

null 1.3k Jan 8, 2023
👄 The most accurate natural language detection library in the Rust ecosystem, suitable for long and short text alike

Table of Contents What does this library do? Why does this library exist? Which languages are supported? How good is it? Why is it better than other l

Peter M. Stahl 569 Jan 3, 2023
Snips NLU rust implementation

Snips NLU Rust Installation Add it to your Cargo.toml: [dependencies] snips-nlu-lib = { git = "https://github.com/snipsco/snips-nlu-rs", branch = "mas

Snips 327 Dec 26, 2022
A fast, low-resource Natural Language Processing and Text Correction library written in Rust.

nlprule A fast, low-resource Natural Language Processing and Error Correction library written in Rust. nlprule implements a rule- and lookup-based app

Benjamin Minixhofer 496 Jan 8, 2023
A fast implementation of Aho-Corasick in Rust.

aho-corasick A library for finding occurrences of many patterns at once with SIMD acceleration in some cases. This library provides multiple pattern s

Andrew Gallant 662 Dec 31, 2022
Natural Language Processing for Rust

rs-natural Natural language processing library written in Rust. Still very much a work in progress. Basically an experiment, but hey maybe something c

Chris Tramel 211 Dec 28, 2022