Skip to content

Latest commit

 

History

History
73 lines (52 loc) · 2.69 KB

File metadata and controls

73 lines (52 loc) · 2.69 KB

sortof

Go Reference OpenSSF Best Practices Quality check status Go Report Card

sortof provides implementations of peculiar carefully selected sorting algorithms as a:

  • CLI tool for sorting input, line by line (similar to POSIX sort),
  • Go module with functions for sorting slices (similar to slices.Sort()).

Implemented algorithms:

Usage

$ cat letters.txt
c
a
b
$ sortof bogo -t 10s letters.txt
a
b
c

Installation

Download the latest stable release from GitHub.

You can also build it manually with: make && make build.

Development

For detailed contribution guidelines, see CONTRIBUTING.md.

Use make (GNU or BSD):

  • make - install dependencies
  • make test - run tests
  • make e2e - run end-to-end tests for CLI
  • make check - run static code analysis
  • make build - compile binaries from latest commit
  • make dist - compile binaries from latest commit for supported OSes
  • make clean - remove compilation artifacts
  • make cli-release - tag latest commit as a new release of CLI
  • make module-release - tag latest commit as a new release of Go module
  • make info - print system info (useful for debugging).

Versioning

This repository contains both a CLI and Go module which can be developed at different paces. Commits with versions are tagged with:

Security hardening

On modern Linux distributions and OpenBSD, the CLI application has restricted access to kernel calls with seccomp and pledge.

License

MIT