1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/man/bundle-gem.ronn
Frank Lam f75bd9bb8b [rubygems/rubygems] Fix bundle gem ignoring global gem.test config
* bundle gem previously ignored gem.test when passed empty -t flag,
defaulting to RSpec
* bundle gem will now ask user for test framework when passed empty -t
flag and gem.test is set to false, but will not overwrite gem.test
* thor option parsing for String types falls back to human name for nil,
so setting lazy_default to nil won't work
* c5161501e0/lib/thor/parser/options.rb (L224)

Default to Bundler.settings["gem.test"] for empty --test

Add shared examples for test framework to newgem spec

Add examples for empty --test flag to newgem spec

Simplify conditional for prompting test framework

Follow naming conventions for bundler settings

Add more descriptive test framework help text for bundle gem

Update man pages for bundler

https://github.com/rubygems/rubygems/commit/ab0785a09f
2020-06-05 07:32:42 +09:00

85 lines
3 KiB
Markdown

bundle-gem(1) -- Generate a project skeleton for creating a rubygem
====================================================================
## SYNOPSIS
`bundle gem` <GEM_NAME> [OPTIONS]
## DESCRIPTION
Generates a directory named `GEM_NAME` with a `Rakefile`, `GEM_NAME.gemspec`,
and other supporting files and directories that can be used to develop a
rubygem with that name.
Run `rake -T` in the resulting project for a list of Rake tasks that can be used
to test and publish the gem to rubygems.org.
The generated project skeleton can be customized with OPTIONS, as explained
below. Note that these options can also be specified via Bundler's global
configuration file using the following names:
* `gem.coc`
* `gem.mit`
* `gem.test`
## OPTIONS
* `--exe` or `-b` or `--bin`:
Specify that Bundler should create a binary executable (as `exe/GEM_NAME`)
in the generated rubygem project. This binary will also be added to the
`GEM_NAME.gemspec` manifest. This behavior is disabled by default.
* `--no-exe`:
Do not create a binary (overrides `--exe` specified in the global config).
* `--coc`:
Add a `CODE_OF_CONDUCT.md` file to the root of the generated project. If
this option is unspecified, an interactive prompt will be displayed and the
answer will be saved in Bundler's global config for future `bundle gem` use.
* `--no-coc`:
Do not create a `CODE_OF_CONDUCT.md` (overrides `--coc` specified in the
global config).
* `--ext`:
Add boilerplate for C extension code to the generated project. This behavior
is disabled by default.
* `--no-ext`:
Do not add C extension code (overrides `--ext` specified in the global
config).
* `--mit`:
Add an MIT license to a `LICENSE.txt` file in the root of the generated
project. Your name from the global git config is used for the copyright
statement. If this option is unspecified, an interactive prompt will be
displayed and the answer will be saved in Bundler's global config for future
`bundle gem` use.
* `--no-mit`:
Do not create a `LICENSE.txt` (overrides `--mit` specified in the global
config).
* `-t`, `--test=minitest`, `--test=rspec`, `--test=test-unit`:
Specify the test framework that Bundler should use when generating the
project. Acceptable values are `minitest`, `rspec` and `test-unit`. The
`GEM_NAME.gemspec` will be configured and a skeleton test/spec directory will
be created based on this option. Given no option is specified:
When Bundler is configured to generate tests, this defaults to Bundler's
global config setting `gem.test`.
When Bundler is configured to not generate tests, an interactive prompt will
be displayed and the answer will be used for the current rubygem project.
When Bundler is unconfigured, an interactive prompt will be displayed and
the answer will be saved in Bundler's global config for future `bundle gem`
use.
* `-e`, `--edit[=EDITOR]`:
Open the resulting GEM_NAME.gemspec in EDITOR, or the default editor if not
specified. The default is `$BUNDLER_EDITOR`, `$VISUAL`, or `$EDITOR`.
## SEE ALSO
* [bundle config(1)](bundle-config.1.html)