versioning your package
Get repository user and project information from package.json file contents.
Node.js utilities and TypeScript definitions for `package.json` and `tsconfig.json`
library to do the things that 'npm version' does
Common typings for the Stoplight ecosystem.
Get information on local packages.
Install package programmatically.
git-log-parser
semantic-release plugin to commit release assets to the project's git repository
Read details of the last commit including tags
Get the remote origin URL of a Git repository
Resolve package.json exports & imports maps
Lint files staged by git
Read a package.json file
This package is a web-compatible package manager built with tsserverlib compatibility in mind. It does not require a "real" filesystem or a "real" NPM installation, but instead uses [orogene](https://github.com/orogene/orogene) to perform package manageme
Datadog CI plugin for `dora` commands
Get all git semver tags of your repository in reverse chronological order.
<!-- BADGES -->
CLI to increment a project's version and optionally publish release to Github/Gitea
Automatically install pre-commit hooks for your npm modules.
Collects Git commit info from CI or from CLI
Get the package name from a folder path
CSpell configuration for GIT.
Detect the snapshot key to be compare with using Git hash.
# mdtoc - Markdown Table of Contents Read Markdown files and output a table of contents. ## Installation Requirements: * [Ruby](https://www.ruby-lang.org/en/) (see [.ruby-version](./.ruby-version)) ```bash gem install mdtoc ``` ## Usage ```bash mdtoc --help Usage: mdtoc [options] files or directories... -h, --help Show this message -o, --output PATH Update a table of contents in the file at PATH -a, --[no-]append Append to the --output file if a <!-- mdtoc --> tag isn't found -c, --[no-]create Create the --output file if it does not exist ``` 1. Add a `<!-- mdtoc -->` tag to a Markdown file. ```bash echo '<!-- mdtoc -->' >> README.md ``` 2. Run `mdtoc` and specify input files or directories (eg. the "test/samples" directory) and an output file (eg. "README.md"). ```bash mdtoc -aco README.md test/samples ``` ## Example Rakefile Create a `Rakefile` with the contents below, then run [`rake`](https://github.com/ruby/rake) to: * `git pull` * `git add` any `*.md` files * Run `mdtoc` to update the generated table of contents in the ./README.md file * Git commit and push any changes ```ruby task default: %w[mdtoc] desc 'Update Markdown table of contents and push changes to the git repository' task :mdtoc do command = <<~CMD set -e if [ -n "$(git diff --name-only --diff-filter=U)" ]; then echo 'Error: conflicts exist' >&2 exit 1 fi mdtoc --append --create --output README.md docs/ git add *.md **/*.md git commit -qm 'Update TOC' || true git pull git push CMD sh command, verbose: false do |ok, status| unless ok fail "Failed with status: #{status.exitstatus}" end end end ``` See [andornaut/til](https://github.com/andornaut/til/blob/master/Rakefile) for an example. ## Development ### Setup Requirements: * [Bundler](https://bundler.io/) * [chruby](https://github.com/postmodern/chruby) (recommended) ```bash # Setup development environment bin/setup ``` ### Tasks ```bash # List rake tasks rake -T rake build # Build gem into the pkg directory rake default # Run the build, rubocop, sorbet and test tasks rake install # Build and install gem into system gems rake rubocop # Run RuboCop rake sorbet # Run the Sorbet type checker rake test # Run tests # Run mdtoc with test inputs ruby -Ilib bin/mdtoc test/samples # Run mdtoc with test inputs, and write to a newly created output file f=$(mktemp) && ruby -Ilib bin/mdtoc -aco ${f} test/samples ; cat ${f} ``` ### Publishing 1. Bump version in `lib/mdtoc/version.rb` 2. Run `bundle install` to update `Gemfile.lock` 3. Commit the changes 4. Run `rake release` to publish the gem to RubyGems, create the git tag, and push
## DESCRIPTION: Ruby interface to a C++ implemention of the A\* search algorithm. The C++ implementaion is found here <http://code.google.com/p/a-star-algorithm-implementation/> ## FEATURES: ## SYNOPSIS: See `spec\castar_spec.rb` for usage examples. Create an empty map and plan a path across it: require 'castar' include Castar map = init_map(:width => 4, :height => 3) astar = HeyesDriver.new(map, HeyesDriver::EIGHT_NEIGHBORS) astar.run(0,0,3,2) puts get_map_with_path(astar) |S|1|1|1| |1|*|1|1| |1|1|*|G| Load a map from a text file and plan a path: map = load_map('./spec/map_20.txt') astar = HeyesDriver.new(map, HeyesDriver::EIGHT_NEIGHBORS) astar.run(0,0,19,19) puts get_map_with_path(astar) |S|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1| |1|*|*|*|*|*|1|1|1|1|1|1|1|1|1|1|1|1|1|1| |1|1|9|9|9|9|*|1|1|1|1|9|9|9|9|9|9|9|9|9| |1|1|9|9|9|9|1|*|1|1|1|9|9|9|9|9|9|9|9|9| |1|1|9|9|9|9|1|1|*|1|1|9|9|9|9|9|9|9|9|9| |1|1|9|9|9|9|1|1|1|*|1|9|9|9|9|9|9|9|9|9| |1|1|9|9|9|9|1|1|1|1|*|9|9|9|9|9|9|9|9|9| |1|1|9|9|9|9|1|1|1|1|*|9|9|9|9|9|9|9|9|9| |1|1|1|1|1|1|1|1|1|1|*|9|9|9|9|9|9|9|9|9| |1|1|1|1|1|1|1|1|1|1|*|9|9|9|9|9|9|9|9|9| |1|1|1|1|1|1|1|1|1|1|1|*|1|1|1|1|1|1|1|1| |1|1|1|1|1|1|1|1|1|1|1|1|*|*|*|*|*|1|1|1| |1|1|1|1|1|9|9|9|9|9|9|9|9|9|9|9|9|*|1|1| |1|1|1|1|1|9|9|9|9|9|9|9|9|9|9|9|9|1|*|1| |1|1|1|1|1|9|9|9|9|9|9|9|9|9|9|9|9|1|1|*| |1|1|1|1|1|9|9|9|9|9|9|9|9|9|9|9|9|1|1|*| |1|1|1|1|1|9|9|9|9|9|9|9|9|9|9|9|9|1|1|*| |1|1|1|1|1|9|9|9|9|9|9|9|9|9|9|9|9|1|1|*| |1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|*| |1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|1|G| ## REQUIREMENTS: * Ruby 1.9 * C compiler for C extensions ## DEVELOPMENT To modify the gem in a cloned repo this is what I'm doing (from root of gem): bundle install cd ext/ ruby extconf.rb make These steps will install the development dependencies, build the Makefile and compile the C++ code. Running bundle exec rspec ./spec should show all tests passing. To clean up the autogenerated Makefile and the compiled objects: cd ext/ make realclean If you need to regenerate the ruby interface functions `heyes_wrap.cxx`, run: cd swig/ swig -c++ -ruby heyes.i mv heyes_wrap.cxx ../ext If you are just trying to run the tests: rake build gem install pkg/castar-0.0.1.gem builds the gem and installs it to your local machine. gem which castar tells you where it is. You can then cd to that directory and run the tests as above (but since you're not in a git repo you can't commit them). I followed the instructions [here](https://github.com/radar/guides/blob/master/gem-development.md) for using Bundler to create the gem. ## INSTALL: * gem install castar ## LICENSE: (The MIT License)