forked from rubygems/rubygems
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathHistory.txt
2513 lines (2023 loc) · 101 KB
/
History.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
# coding: UTF-8
=== 2.3
Minor enhancements:
* Added the `open` command which allows you to inspect the source of a gem
using your editor.
Issue #789 by Mike Perham. Pull request #804 by Vitali F.
* The `update` command shows a summary of which gems were and were not
updated. Issue #544 by Mark D. Blackwell.
Pull request #777 by Tejas Bubane.
* A gem is installable from an IO again (as in RubyGems 1.8.x and older).
Pull request #716 by Xavier Shay.
* RubyGems no longer attempts to build extensions during activation. Instead
a warning is issued instructing you to run `gem pristine` which will build
the extensions for the current platform. Issue #796 by dunric.
* Added Gem::UserInteraction#verbose which prints when the --verbose option is
given. Pull request #811 by Aaron Patterson.
* Cleaned up unneeded load_yaml bootstrapping in Rakefile. Pull request #815
by Zachary Scott.
Bug fixes:
* RubyGems now only fetches the latest specs to find misspellings which speeds
up gem suggestions. Pull request #808 by Aaron Patterson.
* Improved speed of levenshtein distance for gem suggestion misspellings.
Pull requests #809, #812 by Aaron Patterson.
* Reduced requests when fetching gems with the bundler API. Pull request #773
by Charlie Somerville.
* RubyGems now prints release notes from the current release. Bug #814 by
André Arko.
=== 2.2.2 / 2014-02-05
Bug fixes:
* Fixed ruby tests when BASERUBY is not set. Patch for #778 by Nobuyoshi
Nakada.
* Removed double requests in RemoteFetcher#cache_update_path to improve remote
install speed. Pull request #772 by Charlie Somerville.
* The mkmf.log is now placed next to gem_make.out when building extensions.
* `gem install -g --local` no longer accesses the network. Bug #776 by Jeremy
Evans.
* RubyGems now correctly handles URL passwords with encoded characters. Pull
request #781 by Brian Fletcher.
* RubyGems now correctly escapes URL characters. Pull request #788 by Brian
Fletcher.
* RubyGems can now unpack tar files where the type flag is not given. Pull
request #790 by Cody Russell.
* Typo corrections. Pull request ruby/ruby#506 by windwiny.
* RubyGems now uses both the default certificates and ssl_ca_cert instead of
one or the other. Pull request #795 by zebardy.
* RubyGems can now use the bundler API against hosted gem servers in a
directory. Pull request #801 by Brian Fletcher.
* RubyGems bin stubs now ignore non-versions. This allows RubyGems bin stubs
to list file names like "_foo_". Issue #799 by Postmodern.
* Restored behavior of Gem::Version::new when subclassed. Issue #805 by
Sergio Rubio.
=== 2.2.1 / 2014-01-06
Bug fixes:
* Platforms in the Gemfile.lock GEM section are now handled correctly. Bug
#767 by Diego Viola.
* RubyGems now displays which gem couldn't be uninstalled from the home
directory. Pull request #757 by Michal Papis.
* Removed unused method Gem::Resolver#find_conflict_state. Pull request #759
by Smit Shah.
* Fixed installing gems from local files without dependencies. Issue #760 by
Arash Mousavi, pull request #764 by Tim Moore.
* Removed TODO about syntax that works in Ruby 1.8.7. Pull request #765 by
Benjamin Fleischer.
* Switched Gem.ruby_api_version to use RbConfig::CONFIG['ruby_version'] which
has the same value but is overridable by packagers through
--with-ruby-version= when configuring ruby. Bug #770 by Jeremy Evans.
* RubyGems now prefers the bundler API for `gem install` to reduce HTTP
requests. (This change was intended for RubyGems 2.2.0 but was missed.)
This should address bug #762 by Dan Peterson and bug #766 by mipearson.
* Added Gem::BasicSpecification#source_paths so documentation or analysis
tools can work properly as require_paths no longer returns extension source
directories. Bug #758 Vít Ondruch.
* Gem.read_binary can read read-only files again. This caused file://
repositories to stop working. Bug #761 by John Anderson.
* Fixed specification file sorting for Ruby 1.8.7 compatibility. Pull
request #763 by James Mead
=== 2.2.0 / 2013-12-26
Special thanks to Vít Ondruch and Michal Papis for testing and finding bugs in
RubyGems as it was prepared for the 2.2.0 release.
Major enhancements:
* RubyGems can check for gem dependencies files (gem.deps.rb or Gemfile) when
rubygems executables are started and uses the found dependencies. This
means `rake` will work similar to `bundle exec rake`. To enable this set
the `RUBYGEMS_GEMDEPS` environment variable to the location of your
dependencies file.
See Gem::use_gemdeps for further details.
* A RubyGems directory may now be shared amongst multiple ruby versions. Upon
activation RubyGems will automatically compile missing extensions for the
current platform when the built objects are missing. Issue #596 by Michal
Papis
By default different platforms do not share gem install locations so this
must be configured by setting GEM_HOME to a common directory. Some gems use
fixed paths for requiring extensions and are not compatible with sharing gem
directories.
The default sharing location may be configured by RubyGems packagers through
Gem.default_ext_dir_for. Pull Request #744 by Vít Ondruch.
Minor enhancements:
* RubyGems checks the 'allowed_push_host' metadata value when pushing a gem to
prevent an accidental push to a public repository (such as rubygems.org).
If you have private gems you should set this value in your gem specification
metadata. Pull request #603 by Seamus Abshere.
* `gem list` now shows results for multiple arguments. Pull request #604 by
Zach Rabinovich.
* `gem pristine --extensions` will restore only gems with extensions. Issue
#619 by Postmodern.
* Gem::Specification#files is now sorted. Pull request #612 by Justin George.
* For `gem list` and friends, "LOCAL" and "REMOTE" headers are omitted if
only local or remote gem information is requested with --quiet. Pull
request #615 by Michal Papis.
* Added Gem::Specification#full_require_paths which is like require_paths, but
returns a fully-qualified results. Pull request #632 by Vít Ondruch.
* RubyGems now looks for the https_proxy environment variable for https://
sources. RubyGems will fall back to http_proxy if there is no https_proxy.
Issue #610 by mkristian.
* RubyGems now creates directories in .gem files. Issue #631 by marksolaris.
* RubyGems raises an exception when a specification includes its gem. Issue
#623 by notEthan.
* RubyGems now displays relevant release note information when updating
RubyGems. Issue #647 by Trevor Wennblom.
* Deprecated Gem::Installer::ExtensionBuildError in favor of
Gem::Ext::BuildError. The old constant is an alias for the new constant.
* When extensions are built the gem_make.out file is always written now, even
on success. This will help with debugging bad builds that report success.
* If a specification fails to validate RubyGems shows a link to the
specification reference guide. Issue #656 by Markus Heiler.
* When using `gem install -g`, RubyGems now detects the presence of an
Isolate, Gemfile or gem.deps.rb file.
* Added Gem::StubSpecification#stubbed? to help determine if a user should run
`gem pristine` to speed up gem loading. Pull request #694 and #701 by Jon
Leighton.
* RubyGems now warns when a gem has a pessimistic version dependency that may
be too strict.
* RubyGems now warns when a gem has an open-ended dependency.
* RubyGems now raises an exception when a dependency for a gem is defined
twice.
* Marked the license specification attribute as recommended. Pull request
#713 by Benjamin Fleischer.
* RubyGems uses io/console instead of `stty` when available. Pull request
#740 by Nobuyoshi Nakada
* Relaxed Gem.ruby tests for platforms that override where ruby lives. Pull
Request #755 by strzibny.
Bug fixes:
* RubyGems now returns an error status when any file given to `gem which`
cannot be found. Ruby bug #9004 by Eugene Vilensky.
* Fixed command escaping when building rake extensions. Pull request #721 by
Dmitry Ratnikov.
* Fixed uninstallation of gems when GEM_HOME is a relative directory. Issue
#708 by Ryan Davis.
* Default gems are now ignored by Gem::Validator#alien. Issue #717 by David
Bahar.
* Fixed typos in RubyGems. Pull requests #723, #725, #731 by Akira Matsuda,
pull request #736 by Leo Gallucci, pull request #746 by DV Suresh.
* RubyGems now holds exclusive locks on cached gem files to prevent incorrect
updates. Pull Request #737 by Smit Shah
* Improved speed of `gem install --ignore-dependencies`. Patch by Terence
Lee.
=== 2.1.11 / 2013-11-12
Bug fixes:
* Gem::Specification::remove_spec no longer checks for existence of the spec
to be removed. Issue #698 by Tiago Macedo.
* Restored wildcard handling when installing gems. Issue #697 by Chuck Remes.
* Added DigiCert High Assurance EV Root CA certificate for the cloudfront.net
certificate change.
* The Gem::RemoteFetcher tests now choose the test server port more reliably.
Pull Request #706 by akr.
=== 2.1.10 / 2013-10-24
Bug fixes:
* Use class check instead of :version method check when creating Gem::Version
objects. Fixes #674 by jkanywhere.
* Fail during `gem update` when an error occurs checking for newer versions.
This means RubyGems no longer reports "nothing to update" when it cannot
communicate with the server. Issue #688 by Jimmy Dee.
* Allow installation of gems when the home directory does not exist. Issue
#689 by Laurence Rowe
* Fix updating gems which have multiple platforms. Issue #693 by Ookami
Kenrou.
* The gem server now uses user-provided directories. Issue #696 by Marcelo
Alvim.
* Improved resolution of gems when specific versions have conflicting
dependencies.
* RubyGems installs local gems regardless of platform again. Issue #695
* The --ignore-dependencies option for gem installation works again. Issue
#695
=== 2.1.9 / 2013-10-14
Bug fixes:
* Reduce sorting when fetching specifications. This speeds up the update and
outdated commands, and others. Issue #657 by windwiny.
* Proxy usernames and passwords are now escaped properly. Ruby Bug #8979 by
Masahiro Tomita, Issue #668 by Kouhei Sutou.
=== 2.1.8 / 2013-10-10
Bug fixes:
* Fixed local installation of platform gem files. Issue #664 by Ryan Melton.
* Files starting with "." in the root directory are installed again. Issue
#680 by Ivo Wever, Pull Request #681 by Jeremy Evans.
* The index generator no longer indexes default gems. Issue #661 by
Jeremy Hinegardner.
=== 2.1.7 / 2013-10-09
Bug fixes:
* `gem sources --list` now displays a list of sources. Pull request #672 by
Nathan Marley.
* RubyGems no longer alters Gem::Specification.dirs when installing. Pull
Request #670 by Vít Ondruch
* Use RFC 2616-compatible time in HTTP headers. Pull request #655 by Larry
Marburger.
* RubyGems now gives a more descriptive message for missing licenses on
validation. Issue #656 by Markus Heiler.
* Expand unpack destination directory. This fixes problems when File.realpath
is missing and $GEM_HOME contains "..". Issue #679 by Charles Nutter.
=== 2.1.6 / 2013-10-08
Bug fixes:
* Added certificates to follow the s3.amazonaws.com certificate change. Fixes
#665 by emeyekayee. Fixes #671 by jonforums.
* Remove redundant built-in certificates not needed for https://rubygems.org
Fixes #654 by Vít Ondruch.
* Added test for missing certificates for https://s3.amazonaws.com or
https://rubygems.org. Pull request #673 by Hannes Georg.
* RubyGems now allows a Pathname for Kernel#require like the built-in
Kernel#require. Pull request #663 by Aaron Patterson.
* Required rbconfig in Gem::ConfigFile for Ruby 1.9.1 compatibility. (Ruby
1.9.1 is no longer receiving security fixes, so please update to a newer
version.) Issue #676 by Michal Papis. Issue wayneeseguin/rvm#2262 by
Thomas Sänger.
=== 2.1.5 / 2013-09-24
Security fixes:
* RubyGems 2.1.4 and earlier are vulnerable to excessive CPU usage due to a
backtracking in Gem::Version validation. See CVE-2013-4363 for full details
including vulnerable APIs. Fixed versions include 2.1.5, 2.0.10, 1.8.27 and
1.8.23.2 (for Ruby 1.9.3).
=== 2.1.4 / 2013-09-17
Bug fixes:
* `gem uninstall foo --all` now force-uninstalls all versions of foo. Issue
#650 by Kyle (remkade).
* Fixed uninstalling gems installed in the home directory (as in
`--user-install`). Issue #653 by Lin Jen-Shin.
=== 2.1.3 / 2013-09-12
Bug fixes:
* Gems with files entries starting with "./" no longer install 0 files. Issue
#644 by Darragh Curran, #645 by Brandon Turner, #646 by Alex Tambellini
=== 2.1.2 / 2013-09-11
Bug fixes:
* Restore concurrent requires following the fix for ruby bug #8374. Pull
request #637 and issue #640 by Charles Nutter.
* Gems with extensions are now installed correctly when the --install-dir
option is used. Issue #642 by Lin Jen-Shin.
* Gem fetch now fetches the newest (not oldest) gem when --version is given.
Issue #643 by Brian Shirai.
=== 2.1.1 / 2013-09-10
Bug fixes:
* Only matching gems matching your local platform are considered for
installation. Issue #638 by José M. Prieto, issue #639 by sawanoboly.
=== 2.1.0 / 2013-09-09
Security fixes:
* RubyGems 2.0.7 and earlier are vulnerable to excessive CPU usage due to a
backtracking in Gem::Version validation. See CVE-2013-4287 for full details
including vulnerable APIs. Fixed versions include 2.0.8, 1.8.26 and
1.8.23.1 (for Ruby 1.9.3). Issue #626 by Damir Sharipov.
Major enhancements:
* RubyGems uses a new dependency resolver for gem installation which works
similar to the bundler resolver. The new resolver can resolve conflicts the
previous resolver could not and offers improved diagnostics when conflicts
are discovered.
Minor enhancements:
* RubyGems now has improved platform matching for the ARM architecture. Gems
built with a CPU of "arm" will match any specific ARM CPU. See `gem help
platform` for further details. Fixes #532 by Kim Burgestrand.
* The --version option now accepts compound requirements the same as in a gem
dependency. The following invocation will install rails between 4.0.0.beta
and 4.2:
gem install rails -v '>= 4.0.0.beta, < 4.2'
Fixes #531 by Gary S. Weaver
* `gem clean` now allows `-n` as an alias for `--dryrun`. Pull Request #517
by Gastón Ramos
* Added `gem update --system` to `gem help`. Pull Request #514 by Vince
Wadhwani
* Added PATH to `gem env` output. Pull Request #490 by Michal Papis
* Added --host option to `gem owner` to match other commands using the
gemcutter API. Pull Request #462 and issue #461 by Hugo Lopes Tavares
* Added --abort-on-dependent to `gem uninstall`. This will abort instead of
asking to uninstall a gem that is depended upon by another gem. Pull
request #549 by Philip Arndt.
* RubyGems no longer alters Gem::Specification.dirs when installing. Based on
Pull Request #452 by Vít Ondruch
* RubyGems uses ENV['MAKE'] or ENV['make'] over rbconfig.rb's make if present.
Pull Request #443 by Erik Hollensbe
* RubyGems can now save remote source cache files in an alternate directory
controlled by `ENV["GEM_SPEC_CACHE"]`. Pull Request #489 by Michal Papis
* Generated private keys are now encrypted. Pull Request #453 by pietro
* Separated Gem::Request from Gem::RemoteFetcher. Pull Request #283 by Steve
Klabnik.
* RubyGems indicates when a .gem's content is corrupt while verifying. Bug
#519 by William T Nelson.
* Refactored common installer setup. Pull request #520 by Gastón Ramos
* Moved activation tests to Gem::Specification. Pull request #521 by Gastón
Ramos
* When a --version option with a prerelease version is given RubyGems
automatically enables prerelease versions but only the last version is
used. If the first version is a prerelease version this is no longer sticky
unless an explicit --[no-]prerelease was also given. Fixes part of #531.
* RubyGems now supports an SSL client certificate. Pull request #550 by
Robert Kenny.
* RubyGems now suggests how to fix permission errors. Pull request #553 by
Odin Dutton.
* Added support for installing a gem as default gems for alternate ruby
implementations. Pull request #566 by Charles Nutter.
* Improved performance of Gem::Specification#load by caching the loaded
gemspec. Pull request #569 by Charlie Somerville.
* RubyGems now warns when an unsigned gem is verified if -P was given during
installation even if the security policy allows unsigned gems and warns when
an untrusted certificate is seen even if the security policy allows
untrusted certificates. Issue #474 by Grant Olson
* RubyGems can now rewrite executables with or without a shebang of
/usr/bin/env via <code>gem pristine --all --only-executables
--env-[no-]shebang</code>. Issue #579 by Paul Annesley.
* RubyGems can now run its tests without OpenSSL. Ruby Bug #8557 by nobu.
* Improved performance by caching Gem::Version objects and avoiding
method_missing in Gem::Specification. Pull request #447 by Jon Leighton.
* Files in a .gem now preserve their modification times. Pull request #582 by
Jesse Bowes
* Improved speed of looking up dependencies in SpecFetcher through
Array#bsearch (when present). Pull request #595 by Andras Suller
* Added `--all` option to `gem uninstall` which removes all gems in GEM_HOME.
Pull request #584 by Shannon Skipper.
* Added Gem.find_latest_files which is equivalent to Gem.find_files but only
returns matching files from the latest version of each gem. Issue #186 by
Ryan Davis.
* Improved performance of `gem outdated` by reducing duplicate work (it is
still slow, but I see a near 50% improvement for 250 gems on a fast
connection). See also Gem::Specification::outdated_and_latest_version
Bug fixes:
* rubygems_plugin.rb files are now only loaded from the latest installed gem.
* Fixed Gem.clear_paths when Security is defined at top-level. Pull request
#625 by elarkin
* Fixed credential creation for `gem push` when `--host` is not given. Pull
request #622 by Arthur Nogueira Neves
=== 2.0.14 / 2013-11-12
Bug fixes:
* Gem::Specification::remove_spec no longer checks for existence of the spec
to be removed. Issue #698 by Tiago Macedo.
* Restored wildcard handling when installing gems. Issue #697 by Chuck Remes.
* Added DigiCert High Assurance EV Root CA certificate for the cloudfront.net
certificate change.
* The Gem::RemoteFetcher tests now choose the test server port more reliably.
Pull Request #706 by akr.
=== 2.0.13 / 2013-10-24
Bug fixes:
* Use class check instead of :version method check when creating Gem::Version
objects. Fixes #674 by jkanywhere.
* Allow installation of gems when the home directory does not exist. Issue
#689 by Laurence Rowe
* Fix updating gems which have multiple platforms. Issue #693 by Ookami
Kenrou.
=== 2.0.12 / 2013-10-14
Bug fixes:
* Proxy usernames and passwords are now escaped properly. Ruby Bug #8979 by
Masahiro Tomita, Issue #668 by Kouhei Sutou.
=== 2.0.11 / 2013-10-08
Bug fixes:
* Added certificates to follow the s3.amazonaws.com certificate change. Fixes
#665 by emeyekayee. Fixes #671 by jonforums.
* Remove redundant built-in certificates not needed for https://rubygems.org
Fixes #654 by Vít Ondruch.
* Added test for missing certificates for https://s3.amazonaws.com or
https://rubygems.org. Pull request #673 by Hannes Georg.
* RubyGems now allows a Pathname for Kernel#require like the built-in
Kernel#require. Pull request #663 by Aaron Patterson.
* Required rbconfig in Gem::ConfigFile for Ruby 1.9.1 compatibility. (Ruby
1.9.1 is no longer receiving security fixes, so please update to a newer
version.) Issue #676 by Michal Papis. Issue wayneeseguin/rvm#2262 by
Thomas Sänger.
=== 2.0.10 / 2013-09-24
Security fixes:
* RubyGems 2.1.4 and earlier are vulnerable to excessive CPU usage due to a
backtracking in Gem::Version validation. See CVE-2013-4363 for full details
including vulnerable APIs. Fixed versions include 2.1.5, 2.0.10, 1.8.27 and
1.8.23.2 (for Ruby 1.9.3).
=== 2.0.9 / 2013-09-13
Bug fixes:
* Gem fetch now fetches the newest (not oldest) gem when --version is given.
Issue #643 by Brian Shirai.
* Fixed credential creation for `gem push` when `--host` is not given. Pull
request #622 by Arthur Nogueira Neves
=== 2.0.8 / 2013-09-09
Security fixes:
* RubyGems 2.0.7 and earlier are vulnerable to excessive CPU usage due to a
backtracking in Gem::Version validation. See CVE-2013-4287 for full details
including vulnerable APIs. Fixed versions include 2.0.8, 1.8.26 and
1.8.23.1 (for Ruby 1.9.3). Issue #626 by Damir Sharipov.
Bug fixes:
* Fixed Gem.clear_paths when Security is defined at top-level. Pull request
#625 by elarkin
=== 2.0.7 / 2013-08-15
Bug fixes:
* Extensions may now be built in parallel (therefore gems may be installed in
parallel). Bug #607 by Hemant Kumar.
* Changed broken link to RubyGems Bookshelf to point to RubyGems guides. Ruby
pull request #369 by 謝致邦.
* Fixed various test failures due to platform differences or poor tests.
Patches by Yui Naruse and Koichi Sasada.
* Fixed documentation for Kernel#require.
=== 2.0.6 / 2013-07-24
Bug fixes:
* Fixed the `--no-install` and `-I` options to `gem list` and friends. Bug
#593 by Blargel.
* Fixed crash when installing gems with extensions under the `-V` flag. Bug
#601 by Nick Hoffman.
* Fixed race condition retrieving HTTP connections in Gem::Request on JRuby.
Bug #597 by Hemant Kumar.
* Fixed building extensions on ruby 1.9.3 under mingw. Bug #594 by jonforums,
Bug #599 by Chris Riesbeck
* Restored default of remote search to `gem search`.
=== 2.0.5 / 2013-07-11
* Fixed building of extensions that run ruby in their makefiles. Bug #589 by
Zachary Salzbank.
=== 2.0.4 / 2013-07-09
Bug fixes:
* Fixed error caused by gem install not finding the right platform for your
platform. Bug #576 by John Anderson
* Fixed pushing gems with the default host. Bug #495 by Utkarsh Kukreti
* Improved unhelpful error message from `gem owner --remove`. Bug #488 by
Steve Klabnik
* Fixed typo in `gem spec` help. Pull request #563 by oooooooo
* Fixed creation of build_info with --install-dir. Bug #457 by Vít Ondruch.
* RubyGems converts non-string dependency names to strings now. Bug #505 by
Terence Lee
* Outdated prerelease versions are now listed in `gem outdated`.
* RubyGems now only calls fsync() on the specification when installing, not
every file from the gem. This improves the performance of gem installation
on some systems. Pull Request #556 by Grzesiek Kolodziejczyk
* Removed surprise search term anchoring in `gem search` to restore 1.8-like
search behavior while still defaulting to --remote. Pull request #562 by
Ben Bleything
* Fixed handling of DESTDIR when building extensions. Pull request #573 by
Akinori MUSHA
* Fixed documentation of `gem pristine` defaults (--all is not a default).
Pull request #577 by Shannon Skipper
* Fixed a windows extension-building test failure. Pull request #575 by
Hiroshi Shirosaki
* Fixed issue with `gem update` where it would attempt to use a Version
instead of a Requirement to find the latest gem. Fixes #570 by Nick Cox.
* RubyGems now ignores an empty but set RUBYGEMS_HOST environment variable.
Based on pull request #558 by Robin Dupret.
* Removed duplicate creation of gem subdirectories in
Gem::DependencyInstaller. Pull Request #456 by Vít Ondruch
* RubyGems now works with Ruby built with `--with-ruby-version=''`. Pull
Request #455 by Vít Ondruch
* Fixed race condition when two threads require the same gem. Ruby bug report
#8374 by Joel VanderWerf
* Cleaned up siteconf between extension build and extension install. Pull
request #587 by Dominic Cleal
* Fix deprecation warnings when converting gemspecs to yaml. Ruby commit
r41148 by Yui Naruse
=== 2.0.3 / 2013-03-11
* Bug fixes:
* Reverted automatic upgrade to HTTPS as it breaks RubyGems APIs. Fixes
#506 by André Arko
* Use File.realpath to remove extra / while checking if files are
installable. Issue #508 by Jacob Evans.
* When installing RubyGems on JRuby, the standard library is no longer
deleted. Fixes #504 by Juan Sanchez, #507 by Charles Oliver Nutter.
* When building extconf.rb extensions use the intermediate destination
directory. This addresses further issues with C extension building.
* Use the absolute path to the generated siteconf in case the extension
changes directories to run extconf.rb (like memcached). Fixes #498 by
Chris Morris.
* Fixed default gem key and cert locations. Pull request #511 by Samuel
Cochran.
=== 2.0.2 / 2013-03-06
* Bug fixes:
* HTTPS URLs are preferred over HTTP URLs. RubyGems will now attempt to
upgrade any HTTP source to HTTPS. Credit to Alex Gaynor.
* SSL Certificates are now installed properly. Fixes #491 by hemanth.hm
* Fixed HTTP to HTTPS upgrade for rubygems.org.
=== 2.0.1 / 2013-03-05
* Bug fixes:
* Lazily load RubyGems.org API credentials to avoid failure during
RubyGems installation. Bug #465 by Isaac Sanders.
* RubyGems now picks the latest prerelease to install. Fixes bug #468 by
Santiago Pastorino.
* Improved detection of missing Zlib::GzipReader encoding support. Works
around JRuby-only bug #472 by Matt Beedle.
* "Done installing documentation" is no longer displayed when documentation
generation is disabled. Fixes bug #469 by Jeff Sandberg
* The existing executable check now respects --format-executable. Pull
request #471 by Jeremy Evans.
* RubyGems no longer creates gem subdirectories when fetching gems. Fixes
#482 by Loren Segal.
* RubyGems does not require OpenSSL like RubyGems 1.8, but still prefers it.
Fixes #481 by André Arko.
* RubyGems only fetches specs for list, search and query commands when
needed like RubyGems 1.x. Fixes bug #487 by bitbuerster, Ruby bug #8019
by Ike Miller.
* Allow specification of mode for gem subdirectory creation.
Ruby bug #7713 by nobu
* Fix tests when an 'a.rb' exists. Ruby bug #7749 by nobu.
=== 2.0.0 / 2013-02-24
RubyGems 2.0 includes several new features and many breaking changes. Some of
these changes will cause existing software to break. These changes are a
result of improvements to the internals of RubyGems that make it more
maintainable and improve APIs for RubyGems users.
If you are using bundler be sure to install a 1.3.0.prerelease version or
newer. Older versions of bundler will not work with RubyGems 2.0.
Changes since RubyGems 1.8.25 (including past pre-releases):
* Breaking changes:
* Deprecated Gem.unresolved_deps in favor of
Gem::Specification.unresolved_deps
* Merged Gem::Builder into Gem::Package. Use Gem::Package.build(spec)
instead of Gem::Builder.new(spec).build
* Merged Gem::Format into Gem::Package. Use Gem::Package.new instead
of Gem::Format.from_file_by_path
* Moved Gem::OldFormat to Gem::Package::Old. Gem::Package will
automatically detect old gems for you, so there is no need to refer to it.
* Removed Gem::DocManager, replaced by Gem::RDoc and done_installing hook
* Removed Gem::Package::TarInput in favor of Gem::Package
* Removed Gem::Package::TarOutput in favor of Gem::Package
* Removed Gem::RemoteFetcher#open_uri_or_path. (steveklabnik)
* Removed Gem::SSL in favor of using OpenSSL directly
* Removed Gem.loaded_path
* Removed RSS generation from the gem indexer
* Removed benchmark option from .gemrc
* Removed broken YAML gemspec support in `gem build`
* Removed support for Ruby 1.9.1
* Removed many deprecated methods
* Major enhancements:
* Improved support for default gems shipping with ruby 2.0.0+
* A gem can have arbitrary metadata through Gem::Specification#metadata
* `gem search` now defaults to --remote and is anchored like gem list. Fixes
#166
* Added --document to replace --rdoc and --ri. Use --no-document to disable
documentation, --document=rdoc to only generate rdoc.
* Only ri-format documentation is generated by default.
* `gem server` uses RDoc::Servlet from RDoc 4.0 to generate HTML
documentation.
* Add ability to install gems directly from a compatible gemdep
file (Gemfile, Isolate, gem.deps.rb)
<code>gem install --file path</code>
* Add ability to load gem activation information from a gemdeps
file (Gemfile, Isolate, gem.deps.rb).
Set RUBYGEMS_GEMDEPS=path to have it loaded. Use - as the path
to autodetect (current and parent directories are searched).
* Minor enhancements:
* Added `gem check --doctor` to clean up after failed uninstallation. Bug
#419 by Erik Hollensbe
* RubyGems no longer defaults to uninstalling gems if a dependency would be
broken. Now you must manually say "yes". Pull Request #406 by Shannon
Skipper.
* Gem::DependencyInstaller now passes build_args down to the installer.
Pull Request #412 by Sam Rawlins.
* Added a cmake builder. Pull request #265 by Allan Espinosa.
* Removed rubyforge page from gem list output
* Added --only-executables option to `gem pristine`. Fixes #326
* Added -I flag for 'gem query' to exclude installed items
* Added Gem.install(name, version=default) for interactive sessions
* Added Gem::FilePermissionError#directory
* Added Gem::rubygems_version which is like Gem::ruby_version
* Added RUBYGEMS_HOST documentation to `gem env`
* Added a post_installs hook that runs after Gem::DependencyInstaller
finishes installing a set of gems
* Added a usage method for Gem::Commands::OwnerCommand. (ffmike)
* Added an optional type parameter to Gem::Specification#doc_dir.
* Added announcements url and clarified how to file tickets
* Added guidance for how to use rdoc and ri in setup command. (jjb)
* Attempting to install multiple gems with --version is now an error. You
can specify per-gem versions like <code>rake:0.9.5</code>
* Clarified Gem::CommandManager example code to avoid multi load problems.
(baroquebobcat)
* Corrupt or bad cached specs are now re-downloaded. (cookrn)
* Extension build arguments are saved from install and reused for pristine
* If the OS allows it, documentation is built in a forked background
process. (alexch)
* Imported gem yank from the gemcutter gem. Fixes #177, #343
* Packaged gems now contain and verify SHA1 checksums
* Removed commas from gem update summary so you can paste it back to
cleanup. (amatsuda)
* RubyGems will now warn when building gems with prerelease dependencies.
Fixes #255
* The RUBYGEMS_HOST environment variable is used to determine appropriate
API key for pushing or yanking gems
* Uninstall is now performed in reverse topological order.
* Users are told what to type when they try to uninstall a gem outside
GEM_HOME
* When building gems with non-world-readable files a warning is shown.
* Bug fixes:
* Gem.refresh now maintains the active gem list. Clearing the list would
cause double-loads which would cause other bugs. Pull Request #427 by
Jeremy Evans
* RubyGems now refuses to read the gem push credentials file if it has
insecure permissions. Pull Request #438 by Shannon Skipper
* RubyGems now requires a local gem name to end in '.gem'. Issue #407 by
Santiago Pastorino.
* Do not allow old-format gems to be installed with a security policy that
verifies data.
* Gem installation will fail if RubyGems cannot load the specification from
the gem. Bug #419 by Erik Hollensbe
* RubyGems tests now run in FIPS mode. Issue #365 by Vít Ondruch
* Only update the spec cache when we have permission. Ruby Bug #7509
* gem install now ignores directories and non .gem files that match the gem
to install. Bug #407 by Santiago Pastorino.
* Added PID to setup bin_file while installing RubyGems to protect against
errors. Fixes #328 by ConradIrwin
* Added missing require in Gem::Uninstaller when format_executable is set.
(sakuro)
* Exact gem command name matches are now chosen even if a longer command
overlaps the exact name
* Fixed Gem.loaded_path? with a Pathname instance. (mattetti)
* Fixed Gem::Dependency.new mismatch with rubygems.org checks
* Fixed SecurityError in Gem::Specification.load when $SAFE=1. (ged)
* Fixed SystemStackError with "gem list -r -a" on 1.9 (cldwalker)
* Fixed `gem owners` command so that exceptions don't stop the rest of the
command from completing
* Fixed `gem unpack uninstalled_gem` default version picker.
* Fixed defunct rubyforge urls in gem command line help
* Fixed documentation for the various hooks collections
* Fixed documentation generation on setup when the gem directory does not
exist. Fixes #253
* Fixed documentation to reflect where defaults overrides are loaded from.
(ferrous26)
* Fixed editing of a Makefile with 8-bit characters. Fixes #181
* Fixed gem loading issue caused by dependencies not resolving.
* Fixed independent testing of test_gem_package_tar_output. Ruby Bug #4686
by Shota Fukumori
* Fixed typo in uninstall message. (sandal)
* Gem::Requirement#<=> returns nil on non-requirement arg.
* Gem::Requirement.satisfied_by? raises ArgumentError if given a non-version
argument
* Gem::Version#initialize no longer modifies its parameter. (miaout17)
* Group-writable permissions are now allowed for gem repositories. (ctcherry)
* Memoized values in Gem::Specification are now reset the version or
platform changes. Fixes #78
* More specific errors are raised for bad requirements. (arsduo)
* Removed reference to 'sources' gem in documentation
* Removed unused block arguments to avoid creating Proc objects. (k-tsj)
* RubyGems now asks before overwriting executable wrappers. Ruby Bug #1800
* The bindir is now created with mkdir_p during install. (voxik)
* URI scheme matching is no longer case-sensitive. Fixes #322
* ext/builder now checks $MAKE as well as $make (okkez)
Changes since RubyGems 2.0.0.rc.2:
* Bug fixes:
* Gem.gzip and Gem.gunzip now return strings with BINARY encoding. Issue
#450 by Jeremy Kemper
* Fixed placement of executables with --user-install. Ruby bug #7779 by Jon
Forums.
* Fixed `gem update` with --user-install. Ruby bug #7779 by Jon Forums.
* Fixed test_initialize_user_install for windows. Ruby bug #7885 by Luis
Lavena.
* Create extension destination directory before building extensions. Ruby
Bug #7897 and patch by Kenta Murata.
* Fixed verification of gems at LowSecurity due to missing signature.
Thanks to André Arko.
=== 2.0.0.rc.2 / 2013-02-08
* Bug fixes:
* Fixed signature verification of gems which was broken only on master.
Thanks to Brian Buchanan.
* Proper exceptions are raised when verifying an unsigned gem. Thanks to
André Arko.
=== 2.0.0.rc.1 / 2013-01-08
* Minor enhancements:
* This release of RubyGems can push gems to rubygems.org. Ordinarily
prerelease versions of RubyGems cannot push gems.
* Added `gem check --doctor` to clean up after failed uninstallation. Bug
#419 by Erik Hollensbe
* Bug fixes:
* Fixed exception raised when attempting to push gems to rubygems.org. Bug
#418 by André Arko
* Gem installation will fail if RubyGems cannot load the specification from
the gem. Bug #419 by Erik Hollensbe
=== 2.0.0.preview2.2 / 2012-12-14
* Minor enhancements:
* Added a cmake builder. Pull request #265 by Allan Espinosa.
* Removed rubyforge page from gem list output
* Bug fixes:
* Restored RubyGems 1.8 packaging behavior of omitting directories. Bug
#413 by Jeremy Kemper.
=== 2.0.0.preview2.1 / 2012-12-08
* Minor enhancements:
* Gem::DependencyInstaller now passes build_args down to the installer.
Pull Request #412 by Sam Rawlins.
* RubyGems no longer defaults to uninstalling gems if a dependency would be
broken. Now you must manually say "yes". Pull Request #406 by Shannon
Skipper.
* Bug fixes:
* RubyGems tests now run in FIPS mode. Issue #365 by Vít Ondruch
* Fixed Gem::Specification#base_dir for default gems. Ruby Bug #7469
* Only update the spec cache when we have permission. Ruby Bug #7509
* Restored order of version marking. Fixes an issue with bundler. Thanks
to Aaron Patterson and Terence Lee.
* Gem cleanup now skips default gems. Pull Request #409 by Kouhei Sutou
* gem list, search and query can show remote gems again. Bug #410 by
Henry Maddocks
* gem install now ignores directories that match the gem to install. Bug
#407 by Santiago Pastorino.
=== 2.0.0.preview2 / 2012-12-01
This release contains two commits not present in Ruby 2.0.0.preview2. One
commit is for ruby 1.8.7 support, the second allows RubyGems to work under
$SAFE=1. There is no functional difference compared to Ruby 2.0.0.preview2
* Breaking changes:
* Deprecated Gem.unresolved_deps in favor of
Gem::Specification.unresolved_deps
* Merged Gem::Builder into Gem::Package. Use Gem::Package.build(spec)
instead of Gem::Builder.new(spec).build
* Merged Gem::Format into Gem::Package. Use Gem::Package.new instead
of Gem::Format.from_file_by_path
* Moved Gem::OldFormat to Gem::Package::Old. Gem::Package will
automatically detect old gems for you, so there is no need to refer to it.
* Removed Gem::DocManager, replaced by Gem::RDoc and done_installing hook
* Removed Gem::Package::TarInput in favor of Gem::Package
* Removed Gem::Package::TarOutput in favor of Gem::Package
* Removed Gem::RemoteFetcher#open_uri_or_path. (steveklabnik)
* Removed Gem::SSL in favor of using OpenSSL directly
* Removed Gem.loaded_path
* Removed RSS generation from the gem indexer
* Removed benchmark option from .gemrc
* Removed broken YAML gemspec support in `gem build`
* Removed support for Ruby 1.9.1
* Removed many deprecated methods
* Major enhancements:
* Improved support for default gems shipping with ruby 2.0.0+
* A gem can have arbitrary metadata through Gem::Specification#metadata
* `gem search` now defaults to --remote and is anchored like gem list. Fixes
#166
* Added --document to replace --rdoc and --ri. Use --no-document to disable
documentation, --document=rdoc to only generate rdoc.
* Only ri-format documentation is generated by default.
* `gem server` uses RDoc::Servlet from RDoc 4.0 to generate HTML
documentation.
* Add ability to install gems directly from a compatible gemdep
file (Gemfile, Isolate, gem.deps.rb)
<code>gem install --file path</code>
* Add ability to load gem activation information from a gemdeps
file (Gemfile, Isolate, gem.deps.rb).
Set RUBYGEMS_GEMDEPS=path to have it loaded. Use - as the path
to autodetect (current and parent directories are searched).
* Minor enhancements:
* Added --only-executables option to `gem pristine`. Fixes #326
* Added -I flag for 'gem query' to exclude installed items
* Added Gem.install(name, version=default) for interactive sessions
* Added Gem::FilePermissionError#directory
* Added Gem::rubygems_version which is like Gem::ruby_version
* Added RUBYGEMS_HOST documentation to `gem env`
* Added a post_installs hook that runs after Gem::DependencyInstaller
finishes installing a set of gems
* Added a usage method for Gem::Commands::OwnerCommand. (ffmike)
* Added an optional type parameter to Gem::Specification#doc_dir.
* Added announcements url and clarified how to file tickets
* Added guidance for how to use rdoc and ri in setup command. (jjb)
* Attempting to install multiple gems with --version is now an error. You
can specify per-gem versions like <code>rake:0.9.5</code>
* Clarified Gem::CommandManager example code to avoid multi load problems.
(baroquebobcat)
* Corrupt or bad cached specs are now re-downloaded. (cookrn)
* Extension build arguments are saved from install and reused for pristine
* If the OS allows it, documentation is built in a forked background
process. (alexch)
* Imported gem yank from the gemcutter gem. Fixes #177, #343
* Packaged gems now contain and verify SHA1 checksums
* Removed commas from gem update summary so you can paste it back to
cleanup. (amatsuda)
* RubyGems will now warn when building gems with prerelease dependencies.
Fixes #255
* The RUBYGEMS_HOST environment variable is used to determine appropriate
API key for pushing or yanking gems
* Uninstall is now performed in reverse topological order.
* Users are told what to type when they try to uninstall a gem outside
GEM_HOME
* When building gems with non-world-readable files a warning is shown.
* Bug fixes:
* Added PID to setup bin_file while installing RubyGems to protect against
errors. Fixes #328 by ConradIrwin
* Added missing require in Gem::Uninstaller when format_executable is set.
(sakuro)
* Exact gem command name matches are now chosen even if a longer command
overlaps the exact name
* Fixed Gem.loaded_path? with a Pathname instance. (mattetti)
* Fixed Gem::Dependency.new mismatch with rubygems.org checks
* Fixed SecurityError in Gem::Specification.load when $SAFE=1. (ged)
* Fixed SystemStackError with "gem list -r -a" on 1.9 (cldwalker)
* Fixed `gem owners` command so that exceptions don't stop the rest of the
command from completing
* Fixed `gem unpack uninstalled_gem` default version picker.
* Fixed defunct rubyforge urls in gem command line help
* Fixed documentation for the various hooks collections
* Fixed documentation generation on setup when the gem directory does not
exist. Fixes #253
* Fixed documentation to reflect where defaults overrides are loaded from.
(ferrous26)
* Fixed editing of a Makefile with 8-bit characters. Fixes #181
* Fixed gem loading issue caused by dependencies not resolving.
* Fixed independent testing of test_gem_package_tar_output. Ruby Bug #4686
by Shota Fukumori
* Fixed typo in uninstall message. (sandal)
* Gem::Requirement#<=> returns nil on non-requirement arg.
* Gem::Requirement.satisfied_by? raises ArgumentError if given a non-version
argument
* Gem::Version#initialize no longer modifies its parameter. (miaout17)
* Group-writable permissions are now allowed for gem repositories. (ctcherry)
* Memoized values in Gem::Specification are now reset the version or
platform changes. Fixes #78
* More specific errors are raised for bad requirements. (arsduo)
* Removed reference to 'sources' gem in documentation
* Removed unused block arguments to avoid creating Proc objects. (k-tsj)
* RubyGems now asks before overwriting executable wrappers. Ruby Bug #1800
* The bindir is now created with mkdir_p during install. (voxik)
* URI scheme matching is no longer case-sensitive. Fixes #322
* ext/builder now checks $MAKE as well as $make (okkez)
=== 1.8.29 / 2013-11-23
Bug fixes:
* Fixed installation when the LANG environment variable is empty.
* Added DigiCert High Assurance EV Root CA to the default SSL certificates for
cloudfront.
=== 1.8.28 / 2013-10-08
Bug fixes:
* Added the Verisign Class 3 Public Primary Certification Authority G5
certificate and its intermediary to follow the s3.amazonaws.com certificate
change. Fixes #665 by emeyekayee. Fixes #671 by jonforums.
* Remove redundant built-in certificates not needed for https://rubygems.org
Fixes #654 by Vít Ondruch.
* Added test for missing certificates for https://s3.amazonaws.com or
https://rubygems.org. Pull request #673 by Hannes Georg.
=== 1.8.27 / 2013-09-24
Security fixes:
* RubyGems 2.1.4 and earlier are vulnerable to excessive CPU usage due to a
backtracking in Gem::Version validation. See CVE-2013-4363 for full details
including vulnerable APIs. Fixed versions include 2.1.5, 2.0.10, 1.8.27 and
1.8.23.2 (for Ruby 1.9.3).
=== 1.8.26 / 2013-09-09
Security fixes:
* RubyGems 2.0.7 and earlier are vulnerable to excessive CPU usage due to a
backtracking in Gem::Version validation. See CVE-2013-4287 for full details
including vulnerable APIs. Fixed versions include 2.0.8, 1.8.26 and
1.8.23.1 (for Ruby 1.9.3). Issue #626 by Damir Sharipov.
Bug fixes:
* Fixed editing of a Makefile with 8-bit characters. Fixes #181
=== 1.8.25 / 2013-01-24
* Bug fixes:
* Added 11627 to setup bin_file location to protect against errors. Fixes
#328 by ConradIrwin
* Specification#ruby_code didn't handle Requirement with multiple
* Fix error on creating a Version object with a frozen string.
* Fix incremental index updates
* Fix missing load_yaml in YAML-related requirement.rb code.
* Manually backport encoding-aware YAML gemspec
=== 1.8.24 / 2012-04-27
* 1 bug fix: