Sha256: 75dc8cafde86751c22ead5ffe0f547cafed479dce2883a1d1c5bde7969013b7f

Contents?: true

Size: 1.52 KB

Versions: 3

Compression:

Stored size: 1.52 KB

Contents

# Development

## fix.sh

If you want to use rbenv/pyenv/etc to manage versions of tools,
there's a `fix.sh` script which may be what you'd like to install
dependencies.

## Overcommit

This project uses [overcommit](https://github.com/sds/overcommit) for
quality checks.  `bundle exec overcommit --install` will install it.

## direnv

This project uses direnv to manage environment variables used during
development.  See the `.envrc` file for detail.

## cache_method

Checkoff uses the
[`cache_method`](https://github.com/seamusabshere/cache_method) gem to
cache results between invocations.  Configuration details can be found
[here](https://github.com/seamusabshere/cache_method#configuration-and-supported-cache-clients).
By default a memcached client on the default port (11211) on the host
`memcached` will be used.

You can run memcached locally on macOS with Homebrew by running:

```sh
brew install memcached
brew services start memcached
```

You may want to add a `memcached` alias for `127.0.0.1` in `/etc/hosts`.

Please make sure this is only listening on loopback for security, of course.


## gli

Checkoff uses [`gli`](https://github.com/davetron5000/gli) on the CLI.
To get a full stack trace when encountering a problem, run as follows:

```sh
GLI_DEBUG=true checkoff your-arguments-here
```

## Publishing

To publish new version as a maintainer:

```sh
git checkout main && git pull
git log "v$(bump current)..."
# Set type_of_bump to patch, minor, or major
bump --tag --tag-prefix=v ${type_of_bump:?}
rake release
git push
```

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
checkoff-0.17.0 DEVELOPMENT.md
checkoff-0.16.1 DEVELOPMENT.md
checkoff-0.16.0 DEVELOPMENT.md