plucky (1) bundle-gem.1.gz

Provided by: ruby-bundler_2.6.3-1_all bug

NAME

       bundle-gem - 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.cocgem.mitgem.test

OPTIONS

--exe, --bin, -b: 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).

       •   --changelog Add a CHANGELOG.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-changelog: Do not create a CHANGELOG.md (overrides --changelog specified in the global config).

       •   --ext=c, --ext=rust: Add boilerplate for C or Rust (currently  magnus  https://docs.rs/magnus  based)
           extension code to the generated project. This behavior is disabled by default.

       •   --no-ext: Do not add extension code (overrides --ext specified in the global config).

       •   --git: Initialize a git repo inside your library.

       •   --github-username=GITHUB_USERNAME:  Fill in GitHub username on README so that you don't have to do it
           manually. Set a default with bundle config set --global gem.github_username <your_username>.

       •   --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.

       •   --no-test: Do not use a test framework (overrides --test specified in the global config).

       •   --changelog:  Generate  changelog  file.  Set a default with bundle config set --global gem.changelog
           true.

       •   --ci, --ci=circle, --ci=github, --ci=gitlab: Specify the continuous integration service that  Bundler
           should  use  when  generating  the  project.  Acceptable  values  are  github,  gitlab  and circle. A
           configuration file will be generated in the project directory. Given no option is specified:

           When Bundler is configured to generate CI files, this defaults to  Bundler's  global  config  setting
           gem.ci.

           When  Bundler is configured to not generate CI files, 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.

       •   --no-ci: Do not use a continuous integration service (overrides --ci specified in the global config).

       •   --linter,  --linter=rubocop,  --linter=standard:  Specify  the linter and code formatter that Bundler
           should add to the project's development dependencies. Acceptable values are rubocop and  standard.  A
           configuration file will be generated in the project directory. Given no option is specified:

           When  Bundler  is  configured  to  add  a  linter,  this  defaults to Bundler's global config setting
           gem.linter.

           When Bundler is configured not to add a linter, 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.

       •   --no-linter: Do not add a linter (overrides --linter specified in the global config).

       •   --rubocop: Add rubocop to the generated Rakefile and gemspec. Set a default with  bundle  config  set
           --global gem.rubocop true.

       •   --edit=EDIT,  -e=EDIT:  Open  the  resulting  GEM_NAME.gemspec  in EDIT, or the default editor if not
           specified. The default is $BUNDLER_EDITOR, $VISUAL, or $EDITOR.

SEE ALSO

       •   bundle config(1) bundle-config.1.html

                                                  January 2025                                     BUNDLE-GEM(1)