A parallel universal-ctags wrapper for git repository

Overview

ptags

A parallel universal-ctags wrapper for git repository

Actions Status Crates.io codecov

Description

ptags is a universal-ctags wrapper to have the following features.

  • Search git tracked files only ( .gitignore support )
  • Call ctags command in parallel for acceleration
    • Up to x5 faster than universal-ctags

Install

Download binary

Download from release page, and extract to the directory in PATH.

Arch Linux

You can install from AUR.

If you use yay, you can install like below:

yay -S ptags       // latest tagged version
yay -S ptags-git   // current master of git repo

Cargo

You can install by cargo.

cargo install ptags

Requirement

ptags uses ctags and git command internally. The tested version is below.

Command Version
ctags Universal Ctags 0.0.0(f9e6e3c1) / Exuberant Ctags 5.8
git git version 2.14.2
git-lfs git-lfs/2.3.3

Usage

ptags 0.1.12-pre
[email protected]
A parallel universal-ctags wrapper for git repository

USAGE:
    ptags [FLAGS] [OPTIONS] [--] [DIR]

FLAGS:
        --config               Generate configuration sample file
        --exclude-lfs          Exclude git-lfs tracked files
    -h, --help                 Prints help information
        --include-ignored      Include ignored files
        --include-submodule    Include submodule files
        --include-untracked    Include untracked files
    -s, --stat                 Show statistics
        --unsorted             Disable tags sort
        --validate-utf8        Validate UTF8 sequence of tag file
    -V, --version              Prints version information
    -v, --verbose              Verbose mode

OPTIONS:
        --bin-ctags <bin_ctags>           Path to ctags binary [default: ctags]
        --bin-git <bin_git>               Path to git binary [default: git]
        --completion <completion>         Generate shell completion file [possible values: bash, fish,
                                          zsh, powershell]
    -e, --exclude <exclude>...            Glob pattern of exclude file ( ex. --exclude '*.rs' )
    -c, --opt-ctags <opt_ctags>...        Options passed to ctags
    -g, --opt-git <opt_git>...            Options passed to git
        --opt-git-lfs <opt_git_lfs>...    Options passed to git-lfs
    -f, --file <output>                   Output filename ( filename '-' means output to stdout ) [default: tags]
    -t, --thread <thread>                 Number of threads [default: 8]

ARGS:
    <DIR>    Search directory [default: .]

You can pass options to ctags by-c/--ctags_opt option like below.

ptags -c --links=no -c --languages=Rust

Searched file types per options are below. --include-submodule and --include_untracked are exclusive. This is the restriction of git ls-files. Any include/exclude options without the above combination can be used simultaneously.

File type Default --exclude-lfs --include-ignored --include-submodule --include-untracked
tracked o o o o o
untracked x x x x o
ignored x x o x x
lfs tracked o x o o o
in submodules x x x o x

You can override any default option by ~/.ptags.toml like below. The complete example of ~/.ptags.toml can be generated by --config option.

thread = 16
bin_ctags = "ctags2"
bin_git = "git2"

Benchmark

Environment

  • CPU: Ryzen Threadripper 1950X
  • MEM: 128GB
  • OS : CentOS 7.4.1708

Data

Name Repository Revision Files Size[GB]
source0 https://github.com/neovim/neovim f5b0f5e17 2370 0.1
source1 https://github.com/llvm-mirror/llvm ddf9edb4020 29670 1.2
source2 https://github.com/torvalds/linux 071e31e254e0 52998 2.2
source3 https://github.com/chromium/chromium d79c68510b7e 293205 13

Result

ptags is up to x5 faster than universal-ctags.

Command Version source0 source1 source2 source3
ctags -R Universal Ctags 0.0.0(f9e6e3c1) 0.41s ( x1 ) 3.42s ( x1 ) 23.64s ( x1 ) 32.23 ( x1 )
ptags -t 16 ptags 0.1.4 0.13s ( x3.15 ) 0.58s ( x5.90 ) 4.24s ( x5.58 ) 7.27s ( x4.43 )
Comments
  • ptags doesn't compile, fails with

    ptags doesn't compile, fails with "error[E0277]: the trait bound `Opt: structopt_toml::structopt::StructOpt` is not satisfied"

    > cargo --version
    cargo 1.51.0 (43b129a20 2021-03-16)
    
    > cargo install ptags
    
        Updating crates.io index
      Installing ptags v0.3.2
       Compiling libc v0.2.92
       Compiling proc-macro2 v1.0.24
    ...
    
       Compiling structopt-toml v0.4.5
       Compiling ptags v0.3.2
    error[E0277]: the trait bound `Opt: structopt_toml::structopt::StructOpt` is not satisfied
      --> /home/rcir178/.cargo/registry/src/github.com-1ecc6299db9ec823/ptags-0.3.2/src/bin.rs:21:52
       |
    21 | #[derive(Debug, Deserialize, Serialize, StructOpt, StructOptToml)]
       |                                                    ^^^^^^^^^^^^^ the trait `structopt_toml::structopt::StructOpt` is not implemented for `Opt`
       |
       = help: see issue #48214
       = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
    
    error: aborting due to previous error
    
    For more information about this error, try `rustc --explain E0277`.
    error: could not compile `ptags`
    
    To learn more, run the command again with --verbose.
    warning: build failed, waiting for other jobs to finish...
    error: failed to compile `ptags v0.3.2`, intermediate artifacts can be found at `/tmp/cargo-installANJhYz`
    
    Caused by:
      build failed
    
    opened by nad2000 4
  • Code for including ignored files does not actually exist

    Code for including ignored files does not actually exist

    Hi,

    I had problems with the option --include-ignored. Meaning that no matter if the option was set or omitted the output was always the same. Looking into the source code https://github.com/dalance/ptags/blob/4ff2a89d401889a4d9cccc247fdafeefb79cdf90/src/bin.rs#L82 this bool is never used anywhere, so the logic for including the ignored files is not preset in the code.

    Are you able to implement that yourself or are you accepting PRs? :))

    opened by mateuszradomski 3
  • Arch Linux AUR packages

    Arch Linux AUR packages

    I've added both the current master and the latest tag versions of this program to Arch Linux's user repository (AUR). You may add that to the Installation section of the readme.

    The packages are: https://aur.archlinux.org/packages/ptags/ and https://aur.archlinux.org/packages/ptags-git/

    Specifying a command to install AUR packages is kind of a taboo in Arch circles. The general wisdom is to git clone the package off of AUR and then makepkg it yourself, but there are so-called AUR-helpers that automate the process, provide easy updates and so on. One of them is yay, but adding that might enrage some purists and they may say you're pushing yay on them (when there are other helpers and the manual method).

    To install the packages with yay, you'd write:

    yay -S ptags
    

    or

    yay -S ptags-git
    
    opened by randrej 3
  • Bump structopt-toml from 0.4.5 to 0.5.0

    Bump structopt-toml from 0.4.5 to 0.5.0

    Bumps structopt-toml from 0.4.5 to 0.5.0.

    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] 2
  • Bump structopt from 0.3.20 to 0.3.21

    Bump structopt from 0.3.20 to 0.3.21

    Bumps structopt from 0.3.20 to 0.3.21.

    Changelog

    Sourced from structopt's changelog.

    v0.3.21 (2020-11-30)

    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.


    Note: This repo was added to Dependabot recently, so you'll receive a maximum of 5 PRs for your first few update runs. Once an update run creates fewer than 5 PRs we'll remove that limit.

    You can always request more updates by clicking Bump now in your Dependabot dashboard.

    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)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language
    • @dependabot badge me will comment on this PR with code to add a "Dependabot enabled" badge to your readme

    Additionally, you can set the following in your Dependabot dashboard:

    • Update frequency (including time of day and day of week)
    • Pull request limits (per update run and/or open at any time)
    • Out-of-range updates (receive only lockfile updates, if desired)
    • Security updates (receive only security updates, if desired)
    dependencies 
    opened by dependabot-preview[bot] 2
  • Bump time from 0.3.9 to 0.3.10

    Bump time from 0.3.9 to 0.3.10

    Bumps time from 0.3.9 to 0.3.10.

    Release notes

    Sourced from time's releases.

    v0.3.10

    See the changelog for details.

    Changelog

    Sourced from time's changelog.

    0.3.10 [2022-06-19]

    Added

    • Serde support for non-self-describing formats
    • Duration::unsigned_abs, which returns a std::time::Duration
    • ISO 8601 well-known format
    • Duration can now be formatted with a .N specifier, providing a shorter representation when using Display.
    • Parse null as None on serde structs

    Fixed

    • Fix incorrect parsing of UTC offset in Rfc3339.

    Changed

    • The minimum supported Rust version is now 1.57.0.
    • Performance for Rfc2822 has been improved.
    • Debug assertions have been added in a few places. This should have no user facing impact, as it only serves to catch bugs and is disabled in release mode.
    Commits
    • 8b42f24 Update changelog, create release
    • 33bfe5c Add note about #[serde(default)], quiet clippy
    • b599d66 Parse nulls as None on nested serde structs (#473)
    • e893d31 Avoid unnecessary call to format!
    • eafddc5 Fix RFC3339 offset parsing (#478)
    • 9a3f985 Run UI tests separately for coverage
    • 21b439f Add debug assertions
    • 73138f4 Use [T; N]::as_slice
    • d8417dc Upgrade to 2021 edition
    • bc8483f Improve RFC2822 performance, add benchmarks
    • 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 serde from 1.0.133 to 1.0.134

    Bump serde from 1.0.133 to 1.0.134

    Bumps serde from 1.0.133 to 1.0.134.

    Release notes

    Sourced from serde's releases.

    v1.0.134

    • Improve error messages on deserializing NonZero integers from a 0 value (#2158)
    Commits
    • 3bb4a5a Release 1.0.134
    • 6164627 Merge pull request #2159 from serde-rs/nonzero
    • 51aaf49 Write better Visitor for NonZero integers
    • bc66aeb Add tests of deserializing NonZero
    • 7e7044d Ignore clippy in number conversion tests
    • 5498dc0 Add tests of num conversion errors
    • ff04e8b Improve coverage of num conversion in test suite
    • 69240c1 Eliminate macro from serialization tests
    • 237434f Accept ?Sized references in assert_ser_tokens
    • 1833914 Eliminate macro from deserialization error tests
    • 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 serde from 1.0.128 to 1.0.129

    Bump serde from 1.0.128 to 1.0.129

    Bumps serde from 1.0.128 to 1.0.129.

    Commits
    • 2b92c80 Release 1.0.129
    • c1c0ede Merge pull request #2080 from dtolnay/packeddrop
    • 4a66c5f Support packed remote struct without destructuring
    • 714c8a5 Add test of packed struct that cannot be destructured
    • dc0c0dc Merge pull request #2079 from dtolnay/packedremote
    • 54102ee Avoid generating ref patterns for fields of packed remote struct
    • 14accf7 Add test of remote with a packed struct
    • 55fdbea Merge pull request #2077 from dtolnay/tryfold
    • 75d8902 Use try_fold in default implementation of collect_seq, collect_map
    • 9451ea8 Format PR 1992 with rustfmt
    • 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.0

    Bump time from 0.2.27 to 0.3.0

    Bumps time from 0.2.27 to 0.3.0.

    Changelog

    Sourced from time's changelog.

    0.3.0 [unreleased]

    Added

    • datetime! macro, which allows the construction of a statically verified PrimitiveDateTime or OffsetDateTime.
    • PrimitiveDateTime::replace_time
    • PrimitiveDateTime::replace_date
    • OffsetDateTime::replace_time
    • OffsetDateTime::replace_date
    • OffsetDateTime::replace_date_time
    • OffsetDateTime::replace_offset
    • #![no_alloc] support
    • Date::to_iso_week_date, replacing Date::iso_year_week
    • Date::MIN
    • Date::MAX
    • UtcOffset::from_hms
    • UtcOffset::from_whole_seconds
    • UtcOffset::as_hms
    • UtcOffset::whole_hours
    • UtcOffset::whole_minutes
    • UtcOffset::minutes_past_hour
    • UtcOffset::seconds_past_minute
    • UtcOffset::is_utc
    • UtcOffset::is_positive
    • UtcOffset::is_negative
    • OffsetDateTime::sunday_based_week
    • OffsetDateTime::monday_based_week
    • PrimitiveDateTime::to_calendar_date
    • PrimitiveDateTime::to_ordinal_date
    • PrimitiveDateTime::to_iso_week_date
    • PrimitiveDateTime::to_julian_day
    • OffsetDateTime::to_calendar_date
    • OffsetDateTime::to_ordinal_date
    • OffsetDateTime::to_iso_week_date
    • OffsetDateTime::to_julian_day
    • Time::as_hms
    • Time::as_hms_milli
    • Time::as_hms_micro
    • Time::as_hms_nano
    • PrimitiveDateTime::as_hms
    • PrimitiveDateTime::as_hms_milli
    • PrimitiveDateTime::as_hms_micro
    • PrimitiveDateTime::as_hms_nano
    • OffsetDateTime::to_hms
    • OffsetDateTime::to_hms_milli
    • OffsetDateTime::to_hms_micro
    • OffsetDateTime::to_hms_nano
    • Duration::saturating_add
    • Duration::saturating_sub

    ... (truncated)

    Commits
    • 95bb21f Bump dependencies, create 0.3 release
    • 1a5ba3a Bump MSRV to 1.48
    • e5bb155 Update lints for Rust 1.54
    • e77e5a1 Allow setters to fail in the future
    • b513927 Update documentation
    • 9894ec6 Update CHANGELOG
    • f65dfd7 Make InvalidFormatDescription non-exhaustive
    • 778a4bd Update standback
    • a6210d1 Reintroduce zero-sized variant fields
    • 6c461ec Make ComponentRange details private
    • 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 serde_derive from 1.0.120 to 1.0.122

    Bump serde_derive from 1.0.120 to 1.0.122

    Bumps serde_derive from 1.0.120 to 1.0.122.

    Release notes

    Sourced from serde_derive's releases.

    v1.0.122

    • Add IntoDeserializer impl for &[u8] (#1898, thanks @Mingun)

    • Handle unrecognized numeric field keys during deserialization of a field_identifier, equivalently to string field keys (#1914, thanks @Mingun)

    • Add attribute to override default deserialization failure expectation message (#1916, thanks @Mingun)

      #[derive(Deserialize)]
      #[serde(untagged, expecting = "single version or array of versions")]
      struct VersionSpec {
          One(Version),
          Many(Vec<Version>),
      }
      
    • Improve serde_test handling of map entries and error message construction (#1918, thanks @Mingun)

    • Produce more accurate location information on test failures from serde_test crate (#1920, thanks @Mingun)

    • Improve diagnostic on failure to parse a rename_all attribute (#1960, #1961)

    • Eliminate unnecessary trait bounds on some value Deserializer impls (#1963)

    v1.0.121

    • Support borrowed data during deserialization of a field identifier (#1917, thanks @Mingun)
    • Fix panic when deserializing Duration with nanoseconds that cause the seconds counter to overflow (#1958, thanks @jonasbb)
    Commits
    • ffed192 Release 1.0.122
    • bb7f94d Add serde_derive_internals to clippy CI job
    • ff0f467 Opt in to pedantic clippy lints in serde_derive_internals
    • d1975f3 Update serde_derive_internals to tool attrs
    • b91713e Suppress clippy should_implement_trait lint
    • 6ea446f Suppress clippy unused_self pedantic lint
    • 85c6904 Remove dependency on syn/visit feature
    • 2fd5212 Remove unused trait impls on private MapAsEnum
    • 7d1bc1f Merge pull request #1963 from serde-rs/valuedebug
    • cdc2fa1 Eliminate inferred bound on error type of value deserializer Debug impls
    • 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)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language
    • @dependabot badge me will comment on this PR with code to add a "Dependabot enabled" badge to your readme

    Additionally, you can set the following in your Dependabot dashboard:

    • Update frequency (including time of day and day of week)
    • Pull request limits (per update run and/or open at any time)
    • Out-of-range updates (receive only lockfile updates, if desired)
    • Security updates (receive only security updates, if desired)
    dependencies 
    opened by dependabot-preview[bot] 1
  • Bump time from 0.2.24 to 0.2.25

    Bump time from 0.2.24 to 0.2.25

    Bumps time from 0.2.24 to 0.2.25.

    Changelog

    Sourced from time's changelog.

    0.2.25 [2021-01-24]

    Fixed

    • Fix #309, which can cause panics in certain situations.
    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)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language
    • @dependabot badge me will comment on this PR with code to add a "Dependabot enabled" badge to your readme

    Additionally, you can set the following in your Dependabot dashboard:

    • Update frequency (including time of day and day of week)
    • Pull request limits (per update run and/or open at any time)
    • Out-of-range updates (receive only lockfile updates, if desired)
    • Security updates (receive only security updates, if desired)
    dependencies 
    opened by dependabot-preview[bot] 1
  • Option to skip the git support but keep the parallelism?

    Option to skip the git support but keep the parallelism?

    Hi. I was looking for a faster "ctags" and found this.

    However, I'm in the game industry, where Perforce is the norm, so the requirement that git be used is messing me up. I tried it on my tree including with the "--include-untracked" option but no luck :-(.

    opened by aachrisg 1
Releases(v0.3.4)
Owner
null
Generate beautiful changelogs from your Git commit history

clog-cli A conventional changelog for the rest of us About clog creates a changelog automatically from your local git metadata. See the clogs changelo

Clog 776 Dec 30, 2022
The Git Commit Message and Changelog Generation Framework :book:

git-journal ?? The Git Commit Message and Changelog Generation Framework Table of contents: TL;DR Installation Usage Default output Template output Co

Sascha Grunert 551 Jan 4, 2023
gstats — command line tool to print a developer handy summary of all git repositories below current directory

gstats Simple Rust tool to get quick summary info on git repos showing latest tag, branch, state. I implemented this to help me work with a the not to

Boon at Shift 12 Jun 10, 2021
Repository for the Rust Language Server (aka RLS)

Rust Language Server (RLS) The RLS provides a server that runs in the background, providing IDEs, editors, and other tools with information about Rust

The Rust Programming Language 3.6k Jan 7, 2023
Git mirroring daemon

lohr lohr is a Git mirroring tool. I created it to solve a simple problem I had: I host my own git server at https://git.alarsyo.net, but want to mirr

Antoine Martin 29 Dec 3, 2022
"A light wrapper around rr, the time-travelling debugger

cargo-rr A light wrapper around rr, the time-travelling debugger. Do you find yourself running the same test over and over in the debugger, trying to

Daniel Franklin 123 Dec 7, 2022
ABQ is a universal test runner that runs test suites in parallel. It’s the best tool for splitting test suites into parallel jobs locally or on CI

?? abq.build   ?? @rwx_research   ?? discord   ?? documentation ABQ is a universal test runner that runs test suites in parallel. It’s the best tool f

RWX 13 Apr 7, 2023
Easy c̵̰͠r̵̛̠ö̴̪s̶̩̒s̵̭̀-t̶̲͝h̶̯̚r̵̺͐e̷̖̽ḁ̴̍d̶̖̔ ȓ̵͙ė̶͎ḟ̴͙e̸̖͛r̶̖͗ë̶̱́ṉ̵̒ĉ̷̥e̷͚̍ s̷̹͌h̷̲̉a̵̭͋r̷̫̊ḭ̵̊n̷̬͂g̵̦̃ f̶̻̊ơ̵̜ṟ̸̈́ R̵̞̋ù̵̺s̷̖̅ţ̸͗!̸̼͋

Rust S̵̓i̸̓n̵̉ I̴n̴f̶e̸r̵n̷a̴l mutability! Howdy, friendly Rust developer! Ever had a value get m̵̯̅ð̶͊v̴̮̾ê̴̼͘d away right under your nose just when

null 294 Dec 23, 2022
A git sub-command to view your git repository in the web browser

git-view A git sub-command to view your git repository in the web browser! About Are you also frustrated from moving your hands away from the keyboard

Hamothy 5 Sep 26, 2022
Create ctags/etags for a cargo project

rusty-tags A command line tool that creates tags - for source code navigation by using ctags - for a cargo project, all of its direct and indirect dep

Daniel Trstenjak 367 Dec 21, 2022
Modeling is a tools to analysis different languages by Ctags

Modeling Modeling is a tools to analysis different languages by Ctags process: generate to opt call ctags with opt analysis ctags logs output resulse

Inherd OS Team (硬核开源小组) 13 Sep 13, 2022
Estimate the amount of time spent working on a Git repository

jikyuu (時給) A tool to estimate the amount of time spent working on a Git repository. It is a direct port of git-hours, written in Node.js, because the

null 18 Nov 16, 2022
A Rust CLI tool that helps you enforce Git policies through Git hooks both server and client side

GitPolicyEnforcer This is a command line utility written in Rust, that helps you utilize Git hooks, to enforce various policies. It currently supports

Vagelis Prokopiou 4 Aug 14, 2022
git-cliff can generate changelog files from the Git history by utilizing conventional commits as well as regex-powered custom parsers.⛰️

git-cliff can generate changelog files from the Git history by utilizing conventional commits as well as regex-powered custom parsers. The changelog template can be customized with a configuration file to match the desired format.

Orhun Parmaksız 5k Jan 9, 2023
GRM — Git Repository Manager

GRM helps you manage git repositories in a declarative way. Configure your repositories in a TOML file, GRM does the rest.

Hannes Körber 32 Dec 30, 2022
First Git on Rust is reimplementation with rust in order to learn about rust, c and git.

First Git on Rust First Git on Rust is reimplementation with rust in order to learn about rust, c and git. Reference project This project refer to the

Nobkz 1 Jan 28, 2022
Authenticate a tarball through a signed tag in a git repository (with reproducible builds)

auth-tarball-from-git Authenticate a tarball through a signed tag in a git repository (with reproducible builds). The signed git tag contains a hash o

null 14 Aug 16, 2022
Download a single file from a Git repository.

git-download Microservices architecture requires sharing service definition files like in protocol buffer, for clients to access the server. To share

Akira Hayakawa 2 Jun 7, 2022
Copy files from Git repository to local.

gitcp Copy files from Git repository to local. Install We are planning to add some installers support in the future. e.g. homebrew winget debian packa

Ryo Nakamura 3 Aug 9, 2022
Git Explorer: cross-platform git workflow improvement tool inspired by Magit

Gex Git workflow improvement CLI tool inspired by Magit. This project is still under initial development, but I am actively dogfooding it and features

Peter Hebden 204 Jan 6, 2023