rubygems-update 3.0.2 → 3.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (38) hide show
  1. checksums.yaml +4 -4
  2. data/bundler/lib/bundler/build_metadata.rb +1 -1
  3. data/bundler/man/bundle-add.1 +58 -0
  4. data/bundler/man/bundle-binstubs.1 +40 -0
  5. data/bundler/man/bundle-check.1 +31 -0
  6. data/bundler/man/bundle-clean.1 +24 -0
  7. data/bundler/man/bundle-config.1 +497 -0
  8. data/bundler/man/bundle-doctor.1 +44 -0
  9. data/bundler/man/bundle-exec.1 +165 -0
  10. data/bundler/man/bundle-gem.1 +80 -0
  11. data/bundler/man/bundle-info.1 +20 -0
  12. data/bundler/man/bundle-init.1 +25 -0
  13. data/bundler/man/bundle-inject.1 +33 -0
  14. data/bundler/man/bundle-install.1 +308 -0
  15. data/bundler/man/bundle-list.1 +50 -0
  16. data/bundler/man/bundle-lock.1 +84 -0
  17. data/bundler/man/bundle-open.1 +32 -0
  18. data/bundler/man/bundle-outdated.1 +155 -0
  19. data/bundler/man/bundle-package.1 +55 -0
  20. data/bundler/man/bundle-platform.1 +61 -0
  21. data/bundler/man/bundle-pristine.1 +34 -0
  22. data/bundler/man/bundle-remove.1 +31 -0
  23. data/bundler/man/bundle-show.1 +23 -0
  24. data/bundler/man/bundle-update.1 +394 -0
  25. data/bundler/man/bundle-viz.1 +39 -0
  26. data/bundler/man/bundle.1 +136 -0
  27. data/lib/rubygems.rb +1 -1
  28. data/lib/rubygems/command_manager.rb +6 -4
  29. data/lib/rubygems/commands/owner_command.rb +4 -1
  30. data/lib/rubygems/gemcutter_utilities.rb +5 -2
  31. data/lib/rubygems/installer.rb +24 -5
  32. data/lib/rubygems/package.rb +10 -0
  33. data/lib/rubygems/user_interaction.rb +4 -1
  34. data/rubygems-update.gemspec +1 -1
  35. data/test/rubygems/test_gem_installer.rb +106 -0
  36. data/test/rubygems/test_gem_package.rb +34 -0
  37. data/test/rubygems/test_gem_text.rb +5 -0
  38. metadata +51 -3
@@ -529,6 +529,40 @@ class TestGemPackage < Gem::Package::TarTestCase
529
529
  end
530
530
  end
531
531
 
532
+ def test_extract_symlink_parent_doesnt_delete_user_dir
533
+ package = Gem::Package.new @gem
534
+
535
+ # Extract into a subdirectory of @destination; if this test fails it writes
536
+ # a file outside destination_subdir, but we want the file to remain inside
537
+ # @destination so it will be cleaned up.
538
+ destination_subdir = File.join @destination, 'subdir'
539
+ FileUtils.mkdir_p destination_subdir
540
+
541
+ destination_user_dir = File.join @destination, 'user'
542
+ destination_user_subdir = File.join destination_user_dir, 'dir'
543
+ FileUtils.mkdir_p destination_user_subdir
544
+
545
+ tgz_io = util_tar_gz do |tar|
546
+ tar.add_symlink 'link', destination_user_dir, 16877
547
+ tar.add_symlink 'link/dir', '.', 16877
548
+ end
549
+
550
+ e = assert_raises(Gem::Package::PathError, Errno::EACCES) do
551
+ package.extract_tar_gz tgz_io, destination_subdir
552
+ end
553
+
554
+ assert_path_exists destination_user_subdir
555
+
556
+ if Gem::Package::PathError === e
557
+ assert_equal("installing into parent path #{destination_user_subdir} of " +
558
+ "#{destination_subdir} is not allowed", e.message)
559
+ elsif win_platform?
560
+ skip "symlink - must be admin with no UAC on Windows"
561
+ else
562
+ raise e
563
+ end
564
+ end
565
+
532
566
  def test_extract_tar_gz_directory
533
567
  package = Gem::Package.new @gem
534
568
 
@@ -89,4 +89,9 @@ Without the wrapping, the text might not look good in the RSS feed.
89
89
  s = "ab" * 500_001
90
90
  assert_equal "Truncating desc to 1,000,000 characters:\n#{s[0, 1_000_000]}", truncate_text(s, "desc", 1_000_000)
91
91
  end
92
+
93
+ def test_clean_text
94
+ assert_equal ".]2;nyan.", clean_text("\e]2;nyan\a")
95
+ end
96
+
92
97
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubygems-update
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.2
4
+ version: 3.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jim Weirich
@@ -16,7 +16,7 @@ authors:
16
16
  autorequire:
17
17
  bindir: bin
18
18
  cert_chain: []
19
- date: 2019-01-01 00:00:00.000000000 Z
19
+ date: 2019-03-04 00:00:00.000000000 Z
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
22
  name: builder
@@ -139,6 +139,30 @@ extra_rdoc_files:
139
139
  - bundler/LICENSE.md
140
140
  - bundler/README.md
141
141
  - hide_lib_for_update/note.txt
142
+ - bundler/man/bundle-platform.1
143
+ - bundler/man/bundle-update.1
144
+ - bundler/man/bundle-info.1
145
+ - bundler/man/bundle-init.1
146
+ - bundler/man/bundle.1
147
+ - bundler/man/bundle-exec.1
148
+ - bundler/man/bundle-install.1
149
+ - bundler/man/bundle-list.1
150
+ - bundler/man/bundle-outdated.1
151
+ - bundler/man/bundle-check.1
152
+ - bundler/man/bundle-show.1
153
+ - bundler/man/bundle-gem.1
154
+ - bundler/man/bundle-open.1
155
+ - bundler/man/bundle-lock.1
156
+ - bundler/man/bundle-pristine.1
157
+ - bundler/man/bundle-remove.1
158
+ - bundler/man/bundle-doctor.1
159
+ - bundler/man/bundle-binstubs.1
160
+ - bundler/man/bundle-viz.1
161
+ - bundler/man/bundle-package.1
162
+ - bundler/man/bundle-add.1
163
+ - bundler/man/bundle-config.1
164
+ - bundler/man/bundle-clean.1
165
+ - bundler/man/bundle-inject.1
142
166
  files:
143
167
  - ".rubocop.yml"
144
168
  - ".travis.yml"
@@ -382,29 +406,53 @@ files:
382
406
  - bundler/lib/bundler/vlad.rb
383
407
  - bundler/lib/bundler/worker.rb
384
408
  - bundler/lib/bundler/yaml_serializer.rb
409
+ - bundler/man/bundle-add.1
385
410
  - bundler/man/bundle-add.ronn
411
+ - bundler/man/bundle-binstubs.1
386
412
  - bundler/man/bundle-binstubs.ronn
413
+ - bundler/man/bundle-check.1
387
414
  - bundler/man/bundle-check.ronn
415
+ - bundler/man/bundle-clean.1
388
416
  - bundler/man/bundle-clean.ronn
417
+ - bundler/man/bundle-config.1
389
418
  - bundler/man/bundle-config.ronn
419
+ - bundler/man/bundle-doctor.1
390
420
  - bundler/man/bundle-doctor.ronn
421
+ - bundler/man/bundle-exec.1
391
422
  - bundler/man/bundle-exec.ronn
423
+ - bundler/man/bundle-gem.1
392
424
  - bundler/man/bundle-gem.ronn
425
+ - bundler/man/bundle-info.1
393
426
  - bundler/man/bundle-info.ronn
427
+ - bundler/man/bundle-init.1
394
428
  - bundler/man/bundle-init.ronn
429
+ - bundler/man/bundle-inject.1
395
430
  - bundler/man/bundle-inject.ronn
431
+ - bundler/man/bundle-install.1
396
432
  - bundler/man/bundle-install.ronn
433
+ - bundler/man/bundle-list.1
397
434
  - bundler/man/bundle-list.ronn
435
+ - bundler/man/bundle-lock.1
398
436
  - bundler/man/bundle-lock.ronn
437
+ - bundler/man/bundle-open.1
399
438
  - bundler/man/bundle-open.ronn
439
+ - bundler/man/bundle-outdated.1
400
440
  - bundler/man/bundle-outdated.ronn
441
+ - bundler/man/bundle-package.1
401
442
  - bundler/man/bundle-package.ronn
443
+ - bundler/man/bundle-platform.1
402
444
  - bundler/man/bundle-platform.ronn
445
+ - bundler/man/bundle-pristine.1
403
446
  - bundler/man/bundle-pristine.ronn
447
+ - bundler/man/bundle-remove.1
404
448
  - bundler/man/bundle-remove.ronn
449
+ - bundler/man/bundle-show.1
405
450
  - bundler/man/bundle-show.ronn
451
+ - bundler/man/bundle-update.1
406
452
  - bundler/man/bundle-update.ronn
453
+ - bundler/man/bundle-viz.1
407
454
  - bundler/man/bundle-viz.ronn
455
+ - bundler/man/bundle.1
408
456
  - bundler/man/bundle.ronn
409
457
  - bundler/man/gemfile.5.ronn
410
458
  - hide_lib_for_update/note.txt
@@ -811,7 +859,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
811
859
  - !ruby/object:Gem::Version
812
860
  version: '0'
813
861
  requirements: []
814
- rubygems_version: 3.0.1
862
+ rubygems_version: 3.1.0.pre1
815
863
  signing_key:
816
864
  specification_version: 4
817
865
  summary: RubyGems is a package management framework for Ruby.