gemstash 2.3.2 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +21 -36
- data/lib/gemstash/authorization.rb +5 -2
- data/lib/gemstash/cli/authorize.rb +42 -1
- data/lib/gemstash/cli.rb +4 -0
- data/lib/gemstash/db/authorization.rb +3 -3
- data/lib/gemstash/man/gemstash-authorize.1 +21 -33
- data/lib/gemstash/man/gemstash-authorize.1.txt +23 -15
- data/lib/gemstash/man/gemstash-configuration.5 +63 -118
- data/lib/gemstash/man/gemstash-configuration.5.txt +54 -54
- data/lib/gemstash/man/gemstash-customize.7 +60 -103
- data/lib/gemstash/man/gemstash-customize.7.txt +35 -35
- data/lib/gemstash/man/gemstash-debugging.7 +8 -27
- data/lib/gemstash/man/gemstash-debugging.7.txt +6 -6
- data/lib/gemstash/man/gemstash-deploy.7 +15 -39
- data/lib/gemstash/man/gemstash-deploy.7.txt +16 -16
- data/lib/gemstash/man/gemstash-mirror.7 +10 -31
- data/lib/gemstash/man/gemstash-mirror.7.txt +3 -3
- data/lib/gemstash/man/gemstash-multiple-sources.7 +17 -44
- data/lib/gemstash/man/gemstash-multiple-sources.7.txt +8 -8
- data/lib/gemstash/man/gemstash-private-gems.7 +51 -102
- data/lib/gemstash/man/gemstash-private-gems.7.txt +21 -21
- data/lib/gemstash/man/gemstash-readme.7 +29 -75
- data/lib/gemstash/man/gemstash-readme.7.txt +10 -10
- data/lib/gemstash/man/gemstash-setup.1 +13 -33
- data/lib/gemstash/man/gemstash-setup.1.txt +11 -11
- data/lib/gemstash/man/gemstash-start.1 +7 -25
- data/lib/gemstash/man/gemstash-start.1.txt +6 -6
- data/lib/gemstash/man/gemstash-status.1 +5 -23
- data/lib/gemstash/man/gemstash-status.1.txt +4 -4
- data/lib/gemstash/man/gemstash-stop.1 +5 -23
- data/lib/gemstash/man/gemstash-stop.1.txt +4 -4
- data/lib/gemstash/man/gemstash-version.1 +4 -24
- data/lib/gemstash/man/gemstash-version.1.txt +1 -1
- data/lib/gemstash/migrations/05_authorization_names.rb +10 -0
- data/lib/gemstash/version.rb +1 -1
- metadata +18 -3
| @@ -16,16 +16,16 @@ | |
| 16 16 | 
             
                   use whatever key is generated from running the commands.
         | 
| 17 17 |  | 
| 18 18 | 
             
                   In  order to push a gem to your Gemstash server, you need to first cre-
         | 
| 19 | 
            -
                   ate an API key.	Utilize the  | 
| 19 | 
            +
                   ate an API key.	Utilize the gemstash authorize command to  create  the
         | 
| 20 20 | 
             
                   API key:
         | 
| 21 21 |  | 
| 22 22 | 
             
            	      $ gemstash authorize
         | 
| 23 23 | 
             
            	      Your new key is: e374e237fdf5fa5718d2a21bd63dc911
         | 
| 24 24 |  | 
| 25 | 
            -
                   This  new key can  | 
| 26 | 
            -
                   Run  | 
| 25 | 
            +
                   This  new key can push, yank, and fetch gems from your Gemstash server.
         | 
| 26 | 
            +
                   Run gemstash authorize with just the permissions you want to limit what
         | 
| 27 27 | 
             
                   the key will be allowed to do.  You can similarly update a specific key
         | 
| 28 | 
            -
                   by providing it via the  | 
| 28 | 
            +
                   by providing it via the --key option:
         | 
| 29 29 |  | 
| 30 30 | 
             
            	      $ gemstash authorize push yank --key e374e237fdf5fa5718d2a21bd63dc911
         | 
| 31 31 |  | 
| @@ -51,8 +51,8 @@ | |
| 51 51 | 
             
            	      ---
         | 
| 52 52 | 
             
            	      :test_key: e374e237fdf5fa5718d2a21bd63dc911
         | 
| 53 53 |  | 
| 54 | 
            -
                   The name  | 
| 55 | 
            -
                   ber it and use it again later in this guide for the  | 
| 54 | 
            +
                   The name test_key can be anything you want, but you will need to remem-
         | 
| 55 | 
            +
                   ber it and use it again later in this guide for the --key option.
         | 
| 56 56 |  | 
| 57 57 | 
             
               1mCreating a Test Gem0m
         | 
| 58 58 | 
             
                   You'll need a test gem before you can play with private	gems  on  your
         | 
| @@ -68,8 +68,8 @@ | |
| 68 68 | 
             
            	      $ cd private-example
         | 
| 69 69 | 
             
            	      $ rake build
         | 
| 70 70 |  | 
| 71 | 
            -
                   You  will  now  have   a   gem	at    | 
| 72 | 
            -
                    | 
| 71 | 
            +
                   You  will  now  have   a   gem	at   private-example/pkg/private-exam-
         | 
| 72 | 
            +
                   ple-0.1.0.gem.
         | 
| 73 73 |  | 
| 74 74 | 
             
               1mPushing0m
         | 
| 75 75 | 
             
                   If your Gemstash server isn't running, go ahead and start it:
         | 
| @@ -80,13 +80,13 @@ | |
| 80 80 |  | 
| 81 81 | 
             
            	      $ gem push --key test_key --host http://localhost:9292/private pkg/private-example-0.1.0.gem
         | 
| 82 82 |  | 
| 83 | 
            -
                   The  | 
| 83 | 
            +
                   The /private portion of the --host option tells Gemstash you are inter-
         | 
| 84 84 | 
             
                   acting  with the private gems.  Gemstash will not let you push, or yank
         | 
| 85 | 
            -
                   from anything except  | 
| 85 | 
            +
                   from anything except /private.
         | 
| 86 86 |  | 
| 87 87 | 
             
               1mBundling0m
         | 
| 88 88 | 
             
                   Once your gem is pushed to your Gemstash server, you are ready to  bun-
         | 
| 89 | 
            -
                   dle  it.  Create a  | 
| 89 | 
            +
                   dle  it.  Create a Gemfile and specify the gem.	You will probably want
         | 
| 90 90 | 
             
                   to wrap the private gem in a source block, and let the rest of Gemstash
         | 
| 91 91 | 
             
                   handle all other gems:
         | 
| 92 92 |  | 
| @@ -98,7 +98,7 @@ | |
| 98 98 | 
             
            		gem "private-example"
         | 
| 99 99 | 
             
            	      end
         | 
| 100 100 |  | 
| 101 | 
            -
                   Notice that the Gemstash server	points	to   | 
| 101 | 
            +
                   Notice that the Gemstash server	points	to  /private  again  when  in-
         | 
| 102 102 | 
             
                   stalling  your  private	gem.   Go ahead and bundle to install your new
         | 
| 103 103 | 
             
                   private gem:
         | 
| 104 104 |  | 
| @@ -110,22 +110,22 @@ | |
| 110 110 |  | 
| 111 111 | 
             
            	      $ RUBYGEMS_HOST=http://localhost:9292/private gem yank --key test_key private-example --version 0.1.0
         | 
| 112 112 |  | 
| 113 | 
            -
                   Like  with  pushing, the  | 
| 113 | 
            +
                   Like  with  pushing, the /private portion of the host option tells Gem-
         | 
| 114 114 | 
             
                   stash you are interacting with private gems.  Gemstash  will  only  let
         | 
| 115 | 
            -
                   you  yank  from	 | 
| 116 | 
            -
                    | 
| 117 | 
            -
                    | 
| 115 | 
            +
                   you  yank  from	/private.   Unlike  pushing,  Rubygems doesn't support
         | 
| 116 | 
            +
                   --host for yank (yet),  so  you	need  to  specify  the	host  via  the
         | 
| 117 | 
            +
                   RUBYGEMS_HOST environment variable.
         | 
| 118 118 |  | 
| 119 119 | 
             
               1mProtected Fetching0m
         | 
| 120 120 | 
             
                   By  default, private gems and specs can be accessed without authentica-
         | 
| 121 121 | 
             
                   tion.
         | 
| 122 122 |  | 
| 123 123 | 
             
                   Private gems often require protected fetching.  For backwards  compati-
         | 
| 124 | 
            -
                   bility  this  is disabled by default, but can be enabled via  | 
| 125 | 
            -
                    | 
| 124 | 
            +
                   bility  this  is disabled by default, but can be enabled via $ gemstash
         | 
| 125 | 
            +
                   setup command.
         | 
| 126 126 |  | 
| 127 | 
            -
                   When protected fetching is enabled API keys with the permissions  | 
| 128 | 
            -
                    | 
| 127 | 
            +
                   When protected fetching is enabled API keys with the permissions all or
         | 
| 128 | 
            +
                   fetch can be used to download gems and specs.
         | 
| 129 129 |  | 
| 130 130 | 
             
                   On the Bundler side, there are a few ways to configure credentials  for
         | 
| 131 131 | 
             
                   a given gem source:
         | 
| @@ -145,7 +145,7 @@ | |
| 145 145 | 
             
            	      $ export BUNDLE_MYGEMSTASH__DEV=api_key
         | 
| 146 146 |  | 
| 147 147 | 
             
                   Behind  the  scene,  Bundler  will pick up the ENV var according to the
         | 
| 148 | 
            -
                   host name (e.g. mygemstash.dev) and add to  | 
| 148 | 
            +
                   host name (e.g. mygemstash.dev) and add to URI.userinfo for making  re-
         | 
| 149 149 | 
             
                   quests.
         | 
| 150 150 |  | 
| 151 151 | 
             
                   The API key is treated as a HTTP Basic Auth username and any HTTP Basic
         | 
| @@ -1,25 +1,9 @@ | |
| 1 1 | 
             
            <!-- Automatically generated by Pandoc -->
         | 
| 2 | 
            -
            .\" Automatically generated by Pandoc 3.1. | 
| 2 | 
            +
            .\" Automatically generated by Pandoc 3.1.8
         | 
| 3 3 | 
             
            .\"
         | 
| 4 | 
            -
            .\" Define V font for inline verbatim, using C font in formats
         | 
| 5 | 
            -
            .\" that render this, and otherwise B font.
         | 
| 6 | 
            -
            .ie "\f[CB]x\f[]"x" \{\
         | 
| 7 | 
            -
            . ftr V B
         | 
| 8 | 
            -
            . ftr VI BI
         | 
| 9 | 
            -
            . ftr VB B
         | 
| 10 | 
            -
            . ftr VBI BI
         | 
| 11 | 
            -
            .\}
         | 
| 12 | 
            -
            .el \{\
         | 
| 13 | 
            -
            . ftr V CR
         | 
| 14 | 
            -
            . ftr VI CI
         | 
| 15 | 
            -
            . ftr VB CB
         | 
| 16 | 
            -
            . ftr VBI CBI
         | 
| 17 | 
            -
            .\}
         | 
| 18 4 | 
             
            .TH "gemstash-readme" "7" "November 30, 2015" "" ""
         | 
| 19 | 
            -
            .hy
         | 
| 20 5 | 
             
            .SH Gemstash
         | 
| 21 6 | 
             
            .SS What is Gemstash?
         | 
| 22 | 
            -
            .PP
         | 
| 23 7 | 
             
            Gemstash is both a cache for remote servers such as
         | 
| 24 8 | 
             
            https://rubygems.org, and a private gem source.
         | 
| 25 9 | 
             
            .PP
         | 
| @@ -47,7 +31,6 @@ Bundler, RubyGems, Gemstash, and other shared tooling is around for | |
| 47 31 | 
             
            years to come.
         | 
| 48 32 | 
             
            .SS Quickstart Guide
         | 
| 49 33 | 
             
            .SS Setup
         | 
| 50 | 
            -
            .PP
         | 
| 51 34 | 
             
            Gemstash is designed to be quick and painless to get set up.
         | 
| 52 35 | 
             
            By the end of this Quickstart Guide, you will be able to bundle stashed
         | 
| 53 36 | 
             
            gems from public sources against a Gemstash server running on your
         | 
| @@ -55,56 +38,45 @@ machine. | |
| 55 38 | 
             
            .PP
         | 
| 56 39 | 
             
            Install Gemstash to get started:
         | 
| 57 40 | 
             
            .IP
         | 
| 58 | 
            -
            . | 
| 59 | 
            -
            \f[C]
         | 
| 41 | 
            +
            .EX
         | 
| 60 42 | 
             
            $ gem install gemstash
         | 
| 61 | 
            -
             | 
| 62 | 
            -
            .fi
         | 
| 43 | 
            +
            .EE
         | 
| 63 44 | 
             
            .PP
         | 
| 64 45 | 
             
            After it is installed, starting Gemstash requires no additional steps.
         | 
| 65 | 
            -
            Simply start the Gemstash server with the \f[ | 
| 46 | 
            +
            Simply start the Gemstash server with the \f[CR]gemstash\f[R] command:
         | 
| 66 47 | 
             
            .IP
         | 
| 67 | 
            -
            . | 
| 68 | 
            -
            \f[C]
         | 
| 48 | 
            +
            .EX
         | 
| 69 49 | 
             
            $ gemstash start
         | 
| 70 | 
            -
             | 
| 71 | 
            -
            .fi
         | 
| 50 | 
            +
            .EE
         | 
| 72 51 | 
             
            .PP
         | 
| 73 52 | 
             
            You may have noticed that the command finished quickly.
         | 
| 74 53 | 
             
            This is because Gemstash will run the server in the background by
         | 
| 75 54 | 
             
            default.
         | 
| 76 55 | 
             
            The server runs on port 9292.
         | 
| 77 56 | 
             
            .SS Bundling
         | 
| 78 | 
            -
            .PP
         | 
| 79 57 | 
             
            With the server running, you can bundle against it.
         | 
| 80 58 | 
             
            Tell Bundler that you want to use Gemstash to find gems from
         | 
| 81 59 | 
             
            RubyGems.org:
         | 
| 82 60 | 
             
            .IP
         | 
| 83 | 
            -
            . | 
| 84 | 
            -
            \f[C]
         | 
| 61 | 
            +
            .EX
         | 
| 85 62 | 
             
            $ bundle config mirror.https://rubygems.org http://localhost:9292
         | 
| 86 | 
            -
             | 
| 87 | 
            -
            .fi
         | 
| 63 | 
            +
            .EE
         | 
| 88 64 | 
             
            .PP
         | 
| 89 65 | 
             
            Now you can create a Gemfile and install gems through Gemstash:
         | 
| 90 66 | 
             
            .IP
         | 
| 91 | 
            -
            . | 
| 92 | 
            -
            \f[C]
         | 
| 67 | 
            +
            .EX
         | 
| 93 68 | 
             
            # ./Gemfile
         | 
| 94 69 | 
             
            source \[dq]https://rubygems.org\[dq]
         | 
| 95 70 | 
             
            gem \[dq]rubywarrior\[dq]
         | 
| 96 | 
            -
             | 
| 97 | 
            -
            .fi
         | 
| 71 | 
            +
            .EE
         | 
| 98 72 | 
             
            .PP
         | 
| 99 73 | 
             
            The gems you include should be gems you don\[cq]t yet have installed,
         | 
| 100 74 | 
             
            otherwise Gemstash will have nothing to stash.
         | 
| 101 75 | 
             
            Now bundle:
         | 
| 102 76 | 
             
            .IP
         | 
| 103 | 
            -
            . | 
| 104 | 
            -
            \f[C]
         | 
| 77 | 
            +
            .EX
         | 
| 105 78 | 
             
            $ bundle install --path .bundle
         | 
| 106 | 
            -
             | 
| 107 | 
            -
            .fi
         | 
| 79 | 
            +
            .EE
         | 
| 108 80 | 
             
            .PP
         | 
| 109 81 | 
             
            Your Gemstash server has fetched the gems from https://rubygems.org and
         | 
| 110 82 | 
             
            cached them for you!
         | 
| @@ -114,65 +86,52 @@ Gem dependencies metadata are cached for 30 minutes, so if you bundle | |
| 114 86 | 
             
            again before that, you can successfully bundle without an Internet
         | 
| 115 87 | 
             
            connection:
         | 
| 116 88 | 
             
            .IP
         | 
| 117 | 
            -
            . | 
| 118 | 
            -
            \f[C]
         | 
| 89 | 
            +
            .EX
         | 
| 119 90 | 
             
            $ # Disable your Internet first!
         | 
| 120 91 | 
             
            $ rm -rf Gemfile.lock .bundle
         | 
| 121 92 | 
             
            $ bundle
         | 
| 122 | 
            -
             | 
| 123 | 
            -
            .fi
         | 
| 93 | 
            +
            .EE
         | 
| 124 94 | 
             
            .SS Falling back to rubygems.org
         | 
| 125 | 
            -
            .PP
         | 
| 126 95 | 
             
            If you want to make sure that your bundling from https://rubygems.org
         | 
| 127 96 | 
             
            still works as expected when the Gemstash server is not running, you can
         | 
| 128 97 | 
             
            easily configure Bundler to fallback to https://rubygems.org.
         | 
| 129 98 | 
             
            .IP
         | 
| 130 | 
            -
            . | 
| 131 | 
            -
            \f[C]
         | 
| 99 | 
            +
            .EX
         | 
| 132 100 | 
             
            $ bundle config mirror.https://rubygems.org.fallback_timeout true
         | 
| 133 | 
            -
             | 
| 134 | 
            -
            .fi
         | 
| 101 | 
            +
            .EE
         | 
| 135 102 | 
             
            .PP
         | 
| 136 103 | 
             
            You can also configure this fallback as a number of seconds in case the
         | 
| 137 104 | 
             
            Gemstash server is simply unresponsive.
         | 
| 138 105 | 
             
            This example uses a 3 second timeout:
         | 
| 139 106 | 
             
            .IP
         | 
| 140 | 
            -
            . | 
| 141 | 
            -
            \f[C]
         | 
| 107 | 
            +
            .EX
         | 
| 142 108 | 
             
            $ bundle config mirror.https://rubygems.org.fallback_timeout 3
         | 
| 143 | 
            -
             | 
| 144 | 
            -
            .fi
         | 
| 109 | 
            +
            .EE
         | 
| 145 110 | 
             
            .SS Stopping the Server
         | 
| 146 | 
            -
            .PP
         | 
| 147 111 | 
             
            Once you\[cq]ve finish using your Gemstash server, you can stop it just
         | 
| 148 112 | 
             
            as easily as you started it:
         | 
| 149 113 | 
             
            .IP
         | 
| 150 | 
            -
            . | 
| 151 | 
            -
            \f[C]
         | 
| 114 | 
            +
            .EX
         | 
| 152 115 | 
             
            $ gemstash stop
         | 
| 153 | 
            -
             | 
| 154 | 
            -
            .fi
         | 
| 116 | 
            +
            .EE
         | 
| 155 117 | 
             
            .PP
         | 
| 156 118 | 
             
            You\[cq]ll also want to tell Bundler that it can go back to getting gems
         | 
| 157 119 | 
             
            from RubyGems.org directly, instead of going through Gemstash:
         | 
| 158 120 | 
             
            .IP
         | 
| 159 | 
            -
            . | 
| 160 | 
            -
            \f[C]
         | 
| 121 | 
            +
            .EX
         | 
| 161 122 | 
             
            $ bundle config --delete mirror.https://rubygems.org
         | 
| 162 | 
            -
             | 
| 163 | 
            -
            .fi
         | 
| 123 | 
            +
            .EE
         | 
| 164 124 | 
             
            .SS Under the Hood
         | 
| 165 | 
            -
            .PP
         | 
| 166 125 | 
             
            You might wonder where the gems are stored.
         | 
| 167 126 | 
             
            After running the commands above, you will find a new directory at
         | 
| 168 | 
            -
            \f[ | 
| 127 | 
            +
            \f[CR]\[ti]/.gemstash\f[R].
         | 
| 169 128 | 
             
            This directory holds all the cached and private gems.
         | 
| 170 129 | 
             
            It also has a server log, the database, and configuration for Gemstash.
         | 
| 171 130 | 
             
            If you prefer, you can point to a different directory.
         | 
| 172 131 | 
             
            .PP
         | 
| 173 132 | 
             
            Gemstash uses SQLite (https://www.sqlite.org/) to store details about
         | 
| 174 133 | 
             
            private gems.
         | 
| 175 | 
            -
            The database will be located in \f[ | 
| 134 | 
            +
            The database will be located in \f[CR]\[ti]/.gemstash\f[R], however you
         | 
| 176 135 | 
             
            won\[cq]t see the database appear until you start using private gems.
         | 
| 177 136 | 
             
            If you prefer, you can use a different database.
         | 
| 178 137 | 
             
            .PP
         | 
| @@ -181,14 +140,13 @@ Anything cached in memory will last for 30 minutes before being | |
| 181 140 | 
             
            retrieved again.
         | 
| 182 141 | 
             
            You can use memcached instead of caching in memory.
         | 
| 183 142 | 
             
            Gem files are always cached permanently, so bundling with a
         | 
| 184 | 
            -
            \f[ | 
| 143 | 
            +
            \f[CR]Gemfile.lock\f[R] with all gems cached will never call out to
         | 
| 185 144 | 
             
            https://rubygems.org.
         | 
| 186 145 | 
             
            .PP
         | 
| 187 146 | 
             
            The server you ran is provided via Puma (http://puma.io/) and
         | 
| 188 147 | 
             
            Rack (http://rack.github.io/), however they are not customizable at this
         | 
| 189 148 | 
             
            point.
         | 
| 190 149 | 
             
            .SS Deep Dive
         | 
| 191 | 
            -
            .PP
         | 
| 192 150 | 
             
            Deep dive into more subjects:
         | 
| 193 151 | 
             
            .IP \[bu] 2
         | 
| 194 152 | 
             
            Private gems
         | 
| @@ -203,7 +161,6 @@ Deploying Gemstash | |
| 203 161 | 
             
            .IP \[bu] 2
         | 
| 204 162 | 
             
            Debugging Gemstash
         | 
| 205 163 | 
             
            .SS Reference
         | 
| 206 | 
            -
            .PP
         | 
| 207 164 | 
             
            An anatomy of various configuration and commands:
         | 
| 208 165 | 
             
            .IP \[bu] 2
         | 
| 209 166 | 
             
            Configuration
         | 
| @@ -223,15 +180,13 @@ Version | |
| 223 180 | 
             
            To see what has changed in recent versions of Gemstash, see the
         | 
| 224 181 | 
             
            CHANGELOG (https://github.com/rubygems/gemstash/blob/master/CHANGELOG.md).
         | 
| 225 182 | 
             
            .SS Development
         | 
| 226 | 
            -
             | 
| 227 | 
            -
            After checking out the repo, run \f[V]bin/setup\f[R] to install
         | 
| 183 | 
            +
            After checking out the repo, run \f[CR]bin/setup\f[R] to install
         | 
| 228 184 | 
             
            dependencies.
         | 
| 229 | 
            -
            Then, run \f[ | 
| 230 | 
            -
            While developing, you can run \f[ | 
| 231 | 
            -
            You can also run \f[ | 
| 185 | 
            +
            Then, run \f[CR]rake\f[R] to run RuboCop and the tests.
         | 
| 186 | 
            +
            While developing, you can run \f[CR]bin/gemstash\f[R] to run Gemstash.
         | 
| 187 | 
            +
            You can also run \f[CR]bin/console\f[R] for an interactive prompt that
         | 
| 232 188 | 
             
            will allow you to experiment.
         | 
| 233 189 | 
             
            .SS Contributing
         | 
| 234 | 
            -
            .PP
         | 
| 235 190 | 
             
            Bug reports and pull requests are welcome on GitHub at
         | 
| 236 191 | 
             
            https://github.com/rubygems/gemstash.
         | 
| 237 192 | 
             
            This project is intended to be a safe, welcoming space for
         | 
| @@ -240,6 +195,5 @@ Contributor | |
| 240 195 | 
             
            Covenant (https://github.com/rubygems/gemstash/blob/master/CODE_OF_CONDUCT.md)
         | 
| 241 196 | 
             
            code of conduct.
         | 
| 242 197 | 
             
            .SS License
         | 
| 243 | 
            -
            .PP
         | 
| 244 198 | 
             
            The gem is available as open source under the terms of the MIT
         | 
| 245 199 | 
             
            License (http://opensource.org/licenses/MIT).
         | 
| @@ -38,7 +38,7 @@ | |
| 38 38 | 
             
            	      $ gem install gemstash
         | 
| 39 39 |  | 
| 40 40 | 
             
                   After  it is installed, starting Gemstash requires no additional steps.
         | 
| 41 | 
            -
                   Simply start the Gemstash server with the  | 
| 41 | 
            +
                   Simply start the Gemstash server with the gemstash command:
         | 
| 42 42 |  | 
| 43 43 | 
             
            	      $ gemstash start
         | 
| 44 44 |  | 
| @@ -100,21 +100,21 @@ | |
| 100 100 |  | 
| 101 101 | 
             
               1mUnder the Hood0m
         | 
| 102 102 | 
             
                   You might wonder where the gems are stored.  After running the commands
         | 
| 103 | 
            -
                   above, you will find a new directory at	 | 
| 103 | 
            +
                   above, you will find a new directory at	~/.gemstash.   This  directory
         | 
| 104 104 | 
             
                   holds  all  the cached and private gems.  It also has a server log, the
         | 
| 105 105 | 
             
                   database, and configuration for Gemstash.  If you prefer, you can point
         | 
| 106 106 | 
             
                   to a different directory.
         | 
| 107 107 |  | 
| 108 108 | 
             
                   Gemstash uses SQLite (https://www.sqlite.org/) to store	details  about
         | 
| 109 | 
            -
                   private gems.  The database will be located in  | 
| 109 | 
            +
                   private gems.  The database will be located in ~/.gemstash, however you
         | 
| 110 110 | 
             
                   won't  see  the database appear until you start using private gems.  If
         | 
| 111 111 | 
             
                   you prefer, you can use a different database.
         | 
| 112 112 |  | 
| 113 113 | 
             
                   Gemstash temporarily caches things like	gem  dependencies  in  memory.
         | 
| 114 114 | 
             
                   Anything  cached  in  memory  will last for 30 minutes before being re-
         | 
| 115 115 | 
             
                   trieved again.  You can use memcached instead  of  caching  in  memory.
         | 
| 116 | 
            -
                   Gem  files  are	always	cached	permanently,  so  bundling with a  | 
| 117 | 
            -
                    | 
| 116 | 
            +
                   Gem  files  are	always	cached	permanently,  so  bundling with a Gem-
         | 
| 117 | 
            +
                   file.lock   with   all	gems   cached	will   never   call   out   to
         | 
| 118 118 | 
             
                   https://rubygems.org.
         | 
| 119 119 |  | 
| 120 120 | 
             
                   The  server  you  ran  is  provided via Puma (http://puma.io/) and Rack
         | 
| @@ -154,13 +154,13 @@ | |
| 154 154 | 
             
                   o Version
         | 
| 155 155 |  | 
| 156 156 | 
             
                   To  see	what  has  changed  in	recent	versions  of Gemstash, see the
         | 
| 157 | 
            -
                   CHANGELOG | 
| 158 | 
            -
                    | 
| 157 | 
            +
                   CHANGELOG	       (https://github.com/rubygems/gemstash/blob/mas-
         | 
| 158 | 
            +
                   ter/CHANGELOG.md).
         | 
| 159 159 |  | 
| 160 160 | 
             
               1mDevelopment0m
         | 
| 161 | 
            -
                   After  checking	out  the  repo, run  | 
| 162 | 
            -
                   Then, run  | 
| 163 | 
            -
                   run  | 
| 161 | 
            +
                   After  checking	out  the  repo, run bin/setup to install dependencies.
         | 
| 162 | 
            +
                   Then, run rake to run RuboCop and the tests.  While developing, you can
         | 
| 163 | 
            +
                   run bin/gemstash to run Gemstash.  You can also run bin/console for  an
         | 
| 164 164 | 
             
                   interactive prompt that will allow you to experiment.
         | 
| 165 165 |  | 
| 166 166 | 
             
               1mContributing0m
         | 
| @@ -1,58 +1,38 @@ | |
| 1 1 | 
             
            <!-- Automatically generated by Pandoc -->
         | 
| 2 | 
            -
            .\" Automatically generated by Pandoc 3.1. | 
| 2 | 
            +
            .\" Automatically generated by Pandoc 3.1.8
         | 
| 3 3 | 
             
            .\"
         | 
| 4 | 
            -
            .\" Define V font for inline verbatim, using C font in formats
         | 
| 5 | 
            -
            .\" that render this, and otherwise B font.
         | 
| 6 | 
            -
            .ie "\f[CB]x\f[]"x" \{\
         | 
| 7 | 
            -
            . ftr V B
         | 
| 8 | 
            -
            . ftr VI BI
         | 
| 9 | 
            -
            . ftr VB B
         | 
| 10 | 
            -
            . ftr VBI BI
         | 
| 11 | 
            -
            .\}
         | 
| 12 | 
            -
            .el \{\
         | 
| 13 | 
            -
            . ftr V CR
         | 
| 14 | 
            -
            . ftr VI CI
         | 
| 15 | 
            -
            . ftr VB CB
         | 
| 16 | 
            -
            . ftr VBI CBI
         | 
| 17 | 
            -
            .\}
         | 
| 18 4 | 
             
            .TH "gemstash-setup" "1" "October 9, 2015" "" ""
         | 
| 19 | 
            -
            .hy
         | 
| 20 5 | 
             
            .SH Name
         | 
| 21 | 
            -
            .PP
         | 
| 22 6 | 
             
            gemstash-setup - Customize your Gemstash configuration interactively
         | 
| 23 7 | 
             
            .SH Synopsis
         | 
| 24 | 
            -
             | 
| 25 | 
            -
            \f[V]gemstash setup [--redo] [--debug] [--config-file FILE]\f[R]
         | 
| 8 | 
            +
            \f[CR]gemstash setup [--redo] [--debug] [--config-file FILE]\f[R]
         | 
| 26 9 | 
             
            .SH Description
         | 
| 27 | 
            -
            .PP
         | 
| 28 10 | 
             
            Customize your Gemstash configuration interactively.
         | 
| 29 11 | 
             
            This will save your config file, but only if a few checks pass after
         | 
| 30 12 | 
             
            you\[cq]ve provided your answers.
         | 
| 31 13 | 
             
            .SS Usage
         | 
| 32 14 | 
             
            .IP
         | 
| 33 | 
            -
            . | 
| 34 | 
            -
            \f[C]
         | 
| 15 | 
            +
            .EX
         | 
| 35 16 | 
             
            gemstash setup
         | 
| 36 17 | 
             
            gemstash setup --redo
         | 
| 37 18 | 
             
            gemstash setup --config-file <file>
         | 
| 38 | 
            -
             | 
| 39 | 
            -
            .fi
         | 
| 19 | 
            +
            .EE
         | 
| 40 20 | 
             
            .SH Options
         | 
| 41 21 | 
             
            .IP \[bu] 2
         | 
| 42 | 
            -
            \f[ | 
| 43 | 
            -
            This does nothing the first time \f[ | 
| 44 | 
            -
            If you want to change your configuration using \f[ | 
| 22 | 
            +
            \f[CR]--redo\f[R]: Redo the configuration.
         | 
| 23 | 
            +
            This does nothing the first time \f[CR]gemstash setup\f[R] is run.
         | 
| 24 | 
            +
            If you want to change your configuration using \f[CR]gemstash setup\f[R]
         | 
| 45 25 | 
             
            after you\[cq]ve run it before, you must provide this option, otherwise
         | 
| 46 26 | 
             
            Gemstash will simply indicate your setup is complete.
         | 
| 47 27 | 
             
            .IP \[bu] 2
         | 
| 48 | 
            -
            \f[ | 
| 49 | 
            -
            the end of setup fails.
         | 
| 28 | 
            +
            \f[CR]--debug\f[R]: Output additional information if one of the checks
         | 
| 29 | 
            +
            at the end of setup fails.
         | 
| 50 30 | 
             
            This will do nothing if all checks pass.
         | 
| 51 31 | 
             
            .IP \[bu] 2
         | 
| 52 | 
            -
            \f[ | 
| 32 | 
            +
            \f[CR]--config-file FILE\f[R]: Specify the config file to write to.
         | 
| 53 33 | 
             
            Without this option, your configuration will be written to
         | 
| 54 | 
            -
            \f[ | 
| 34 | 
            +
            \f[CR]\[ti]/.gemstash/config.yml\f[R].
         | 
| 55 35 | 
             
            If you write to a custom location, you will need to pass the
         | 
| 56 | 
            -
            \f[ | 
| 36 | 
            +
            \f[CR]--config-file\f[R] option to all Gemstash commands.
         | 
| 57 37 | 
             
            If you plan to use ERB in your config file, you might want to use
         | 
| 58 | 
            -
            \f[ | 
| 38 | 
            +
            \f[CR]\[ti]/.gemstash/config.yml.erb\f[R].
         | 
| @@ -6,7 +6,7 @@ | |
| 6 6 | 
             
                   gemstash-setup - Customize your Gemstash configuration interactively
         | 
| 7 7 |  | 
| 8 8 | 
             
            1mSynopsis0m
         | 
| 9 | 
            -
                    | 
| 9 | 
            +
                   gemstash setup [--redo] [--debug] [--config-file FILE]
         | 
| 10 10 |  | 
| 11 11 | 
             
            1mDescription0m
         | 
| 12 12 | 
             
                   Customize  your	Gemstash  configuration interactively.	This will save
         | 
| @@ -19,20 +19,20 @@ | |
| 19 19 | 
             
            	      gemstash setup --config-file <file>
         | 
| 20 20 |  | 
| 21 21 | 
             
            1mOptions0m
         | 
| 22 | 
            -
                   o  | 
| 23 | 
            -
            	  | 
| 24 | 
            -
            	 ing   | 
| 22 | 
            +
                   o --redo:  Redo	the  configuration.   This does nothing the first time
         | 
| 23 | 
            +
            	 gemstash setup is run.  If you want to change your configuration  us-
         | 
| 24 | 
            +
            	 ing  gemstash setup after you've run it before, you must provide this
         | 
| 25 25 | 
             
            	 option, otherwise Gemstash will simply indicate your  setup  is  com-
         | 
| 26 26 | 
             
            	 plete.
         | 
| 27 27 |  | 
| 28 | 
            -
                   o  | 
| 28 | 
            +
                   o --debug:  Output  additional  information if one of the checks at the
         | 
| 29 29 | 
             
            	 end of setup fails.  This will do nothing if all checks pass.
         | 
| 30 30 |  | 
| 31 | 
            -
                   o  | 
| 32 | 
            -
            	 this  option,	your configuration will be written to  | 
| 33 | 
            -
            	  | 
| 34 | 
            -
            	 the   | 
| 35 | 
            -
            	 use ERB in your config file, you might want to  use   | 
| 36 | 
            -
            	  | 
| 31 | 
            +
                   o --config-file FILE: Specify the config file  to  write  to.   Without
         | 
| 32 | 
            +
            	 this  option,	your configuration will be written to ~/.gemstash/con-
         | 
| 33 | 
            +
            	 fig.yml.  If you write to a custom location, you will	need  to  pass
         | 
| 34 | 
            +
            	 the  --config-file  option  to all Gemstash commands.	If you plan to
         | 
| 35 | 
            +
            	 use ERB in your config file, you might want to  use  ~/.gemstash/con-
         | 
| 36 | 
            +
            	 fig.yml.erb.
         | 
| 37 37 |  | 
| 38 38 | 
             
            				October 9, 2015 	     4mgemstash-setup24m(1)
         | 
| @@ -1,41 +1,23 @@ | |
| 1 1 | 
             
            <!-- Automatically generated by Pandoc -->
         | 
| 2 | 
            -
            .\" Automatically generated by Pandoc 3.1. | 
| 2 | 
            +
            .\" Automatically generated by Pandoc 3.1.8
         | 
| 3 3 | 
             
            .\"
         | 
| 4 | 
            -
            .\" Define V font for inline verbatim, using C font in formats
         | 
| 5 | 
            -
            .\" that render this, and otherwise B font.
         | 
| 6 | 
            -
            .ie "\f[CB]x\f[]"x" \{\
         | 
| 7 | 
            -
            . ftr V B
         | 
| 8 | 
            -
            . ftr VI BI
         | 
| 9 | 
            -
            . ftr VB B
         | 
| 10 | 
            -
            . ftr VBI BI
         | 
| 11 | 
            -
            .\}
         | 
| 12 | 
            -
            .el \{\
         | 
| 13 | 
            -
            . ftr V CR
         | 
| 14 | 
            -
            . ftr VI CI
         | 
| 15 | 
            -
            . ftr VB CB
         | 
| 16 | 
            -
            . ftr VBI CBI
         | 
| 17 | 
            -
            .\}
         | 
| 18 4 | 
             
            .TH "gemstash-start" "1" "October 9, 2015" "" ""
         | 
| 19 | 
            -
            .hy
         | 
| 20 5 | 
             
            .SH Name
         | 
| 21 | 
            -
            .PP
         | 
| 22 6 | 
             
            gemstash-start - Starts the Gemstash server
         | 
| 23 7 | 
             
            .SH Synopsis
         | 
| 24 | 
            -
             | 
| 25 | 
            -
            \f[V]gemstash start [--no-daemonize] [--config-file FILE]\f[R]
         | 
| 8 | 
            +
            \f[CR]gemstash start [--no-daemonize] [--config-file FILE]\f[R]
         | 
| 26 9 | 
             
            .SH Description
         | 
| 27 | 
            -
            .PP
         | 
| 28 10 | 
             
            Starts the Gemstash server.
         | 
| 29 11 | 
             
            .SH Options
         | 
| 30 12 | 
             
            .IP \[bu] 2
         | 
| 31 | 
            -
            \f[ | 
| 13 | 
            +
            \f[CR]--config-file FILE\f[R]: Specify the config file to use.
         | 
| 32 14 | 
             
            If you aren\[cq]t using the default config file at
         | 
| 33 | 
            -
            \f[ | 
| 34 | 
            -
            \f[ | 
| 15 | 
            +
            \f[CR]\[ti]/.gemstash/config.yml\f[R] or
         | 
| 16 | 
            +
            \f[CR]\[ti]/.gemstash/config.yml.erb\f[R], then you must specify the
         | 
| 35 17 | 
             
            config file via this option.
         | 
| 36 18 | 
             
            .IP \[bu] 2
         | 
| 37 | 
            -
            \f[ | 
| 19 | 
            +
            \f[CR]--no-daemonize\f[R]: The Gemstash server daemonizes itself by
         | 
| 38 20 | 
             
            default.
         | 
| 39 | 
            -
            Provide this option to instead run the server until \f[ | 
| 21 | 
            +
            Provide this option to instead run the server until \f[CR]Ctrl-C\f[R] is
         | 
| 40 22 | 
             
            typed.
         | 
| 41 23 | 
             
            When not daemonized, the log will be output to standard out.
         | 
| @@ -6,19 +6,19 @@ | |
| 6 6 | 
             
                   gemstash-start - Starts the Gemstash server
         | 
| 7 7 |  | 
| 8 8 | 
             
            1mSynopsis0m
         | 
| 9 | 
            -
                    | 
| 9 | 
            +
                   gemstash start [--no-daemonize] [--config-file FILE]
         | 
| 10 10 |  | 
| 11 11 | 
             
            1mDescription0m
         | 
| 12 12 | 
             
                   Starts the Gemstash server.
         | 
| 13 13 |  | 
| 14 14 | 
             
            1mOptions0m
         | 
| 15 | 
            -
                   o  | 
| 16 | 
            -
            	 using the default config file at   | 
| 17 | 
            -
            	  | 
| 15 | 
            +
                   o --config-file	FILE:  Specify	the config file to use.  If you aren't
         | 
| 16 | 
            +
            	 using the default config file at  ~/.gemstash/config.yml  or  ~/.gem-
         | 
| 17 | 
            +
            	 stash/config.yml.erb,	then you must specify the config file via this
         | 
| 18 18 | 
             
            	 option.
         | 
| 19 19 |  | 
| 20 | 
            -
                   o  | 
| 21 | 
            -
            	 Provide  this option to instead run the server until  | 
| 20 | 
            +
                   o --no-daemonize: The Gemstash server  daemonizes  itself  by  default.
         | 
| 21 | 
            +
            	 Provide  this option to instead run the server until Ctrl-C is typed.
         | 
| 22 22 | 
             
            	 When not daemonized, the log will be output to standard out.
         | 
| 23 23 |  | 
| 24 24 | 
             
            				October 9, 2015 	     4mgemstash-start24m(1)
         | 
| @@ -1,35 +1,17 @@ | |
| 1 1 | 
             
            <!-- Automatically generated by Pandoc -->
         | 
| 2 | 
            -
            .\" Automatically generated by Pandoc 3.1. | 
| 2 | 
            +
            .\" Automatically generated by Pandoc 3.1.8
         | 
| 3 3 | 
             
            .\"
         | 
| 4 | 
            -
            .\" Define V font for inline verbatim, using C font in formats
         | 
| 5 | 
            -
            .\" that render this, and otherwise B font.
         | 
| 6 | 
            -
            .ie "\f[CB]x\f[]"x" \{\
         | 
| 7 | 
            -
            . ftr V B
         | 
| 8 | 
            -
            . ftr VI BI
         | 
| 9 | 
            -
            . ftr VB B
         | 
| 10 | 
            -
            . ftr VBI BI
         | 
| 11 | 
            -
            .\}
         | 
| 12 | 
            -
            .el \{\
         | 
| 13 | 
            -
            . ftr V CR
         | 
| 14 | 
            -
            . ftr VI CI
         | 
| 15 | 
            -
            . ftr VB CB
         | 
| 16 | 
            -
            . ftr VBI CBI
         | 
| 17 | 
            -
            .\}
         | 
| 18 4 | 
             
            .TH "gemstash-status" "1" "October 28, 2015" "" ""
         | 
| 19 | 
            -
            .hy
         | 
| 20 5 | 
             
            .SH Name
         | 
| 21 | 
            -
            .PP
         | 
| 22 6 | 
             
            gemstash-status - Checks status of the Gemstash server
         | 
| 23 7 | 
             
            .SH Synopsis
         | 
| 24 | 
            -
             | 
| 25 | 
            -
            \f[V]gemstash status [--config-file FILE]\f[R]
         | 
| 8 | 
            +
            \f[CR]gemstash status [--config-file FILE]\f[R]
         | 
| 26 9 | 
             
            .SH Description
         | 
| 27 | 
            -
            .PP
         | 
| 28 10 | 
             
            Checks status of the Gemstash server.
         | 
| 29 11 | 
             
            .SH Options
         | 
| 30 12 | 
             
            .IP \[bu] 2
         | 
| 31 | 
            -
            \f[ | 
| 13 | 
            +
            \f[CR]--config-file FILE\f[R]: Specify the config file to use.
         | 
| 32 14 | 
             
            If you aren\[cq]t using the default config file at
         | 
| 33 | 
            -
            \f[ | 
| 34 | 
            -
            \f[ | 
| 15 | 
            +
            \f[CR]\[ti]/.gemstash/config.yml\f[R] or
         | 
| 16 | 
            +
            \f[CR]\[ti]/.gemstash/config.yml.erb\f[R], then you must specify the
         | 
| 35 17 | 
             
            config file via this option.
         | 
| @@ -6,15 +6,15 @@ | |
| 6 6 | 
             
                   gemstash-status - Checks status of the Gemstash server
         | 
| 7 7 |  | 
| 8 8 | 
             
            1mSynopsis0m
         | 
| 9 | 
            -
                    | 
| 9 | 
            +
                   gemstash status [--config-file FILE]
         | 
| 10 10 |  | 
| 11 11 | 
             
            1mDescription0m
         | 
| 12 12 | 
             
                   Checks status of the Gemstash server.
         | 
| 13 13 |  | 
| 14 14 | 
             
            1mOptions0m
         | 
| 15 | 
            -
                   o  | 
| 16 | 
            -
            	 using the default config file at   | 
| 17 | 
            -
            	  | 
| 15 | 
            +
                   o --config-file	FILE:  Specify	the config file to use.  If you aren't
         | 
| 16 | 
            +
            	 using the default config file at  ~/.gemstash/config.yml  or  ~/.gem-
         | 
| 17 | 
            +
            	 stash/config.yml.erb,	then you must specify the config file via this
         | 
| 18 18 | 
             
            	 option.
         | 
| 19 19 |  | 
| 20 20 | 
             
            			       October 28, 2015 	    4mgemstash-status24m(1)
         |