Support XDG_* (#2174)

* Support XDG_CONFIG_HOME for gemrc.

* Support XDG_DATA_HOME for .gem

* Added test for XDG_DATA_HOME

* Do not reuse environmental variable.

* Unify .rdoc path to RDoc.home.

* Support XDG_DATA_HOME for .rdoc

* Ignore exists?

* Extracted config_home path

* Use XDG_CONFIG_HOME for default credential path

* Fixed inconsistency location.

* Fixed the broken tests.

* Support XDG_CONFIG_HOME for irbrc

* Introduce Gem.cache_home as XDG_CACHE_HOME

* Use Gem.cache_home instead of Gem.config_home for the credential file of RubyGems.

* Initialized the old configurations

* Fixed test failure related the configuration initialization

* restore XDG_DATA_HOME

* Fixed the broken examples of bundler with XDG_*

* Do not modify environmental variable on test file

* Use XDG_DATA_HOME insted of XDG_CACHE_HOME for credential file

* stub out Gem.data_home

* Move dir accessor to defaults.rb file

* Use XDG_DATA_HOME for signed gem features

* Use XDG_DATA_HOME for spec cache

* Do not rely on Gem.user_home

* Gem.user_home is always exists. Don't need to use FileUitls.mkdir_p

* Bump support version to RubyGems 3.2.0+

* Removed the needless fallback configuration

* Fixed the inconsistency methods that are find_config_file and config_file

* Use Gem.configuration.credentials_path instead of hard-coded path

* gem_path is always provided

* Removed the duplicated code of find_home

* Also removed the duplicated code of user_home

* use Gem::UNTAINT instead of untaint for surpressing the warnings

* Use File.directory

* Restore XDG_DATA_HOME

* Use File.write
This commit is contained in:
Hiroshi SHIBATA 2020-04-23 19:16:06 +09:00 committed by GitHub
parent f563f3c5ef
commit 5c6269c459
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
Notes: git 2020-04-23 19:16:30 +09:00
Merged-By: hsbt <hsbt@ruby-lang.org>
20 changed files with 186 additions and 76 deletions

View file

@ -8,6 +8,7 @@ class TestGemCommandsSignoutCommand < Gem::TestCase
def setup
super
File.delete Gem.configuration.credentials_path if File.exist?(Gem.configuration.credentials_path)
@cmd = Gem::Commands::SignoutCommand.new
end