ruby/lib/rubygems
Samuel Giddins 2b6228be48 [rubygems/rubygems] Reduce allocations when parsing compact index
This still allocates a ton (a string for each line, plus a bunch of
splits into arrays), but it helps a bit when Bundler has to go through
dependency resolution.

```
==> memprof.after.txt <==
Total allocated: 194.14 MB (2317172 objects)
Total retained:  60.81 MB (593164 objects)

==> memprof.before.txt <==
Total allocated: 211.97 MB (2404890 objects)
Total retained:  62.85 MB (640342 objects)
```

https://github.com/rubygems/rubygems/commit/c68b41b0e5
2023-10-08 04:17:15 +00:00
..
commands [rubygems/rubygems] Fix typo: eglible -> eligible. 2023-10-03 16:13:18 +09:00
core_ext [rubygems/rubygems] Use the dedicated method to convert file path 2023-07-30 01:36:23 +00:00
ext [rubygems/rubygems] Fix invalid links in documentation. - wrap ENV variables in <code> - fix rubygems.org link - fix zenspider.com link 2023-10-03 16:13:18 +09:00
gemcutter_utilities [rubygems/rubygems] Set thread configurations inside block in the thread local manner 2023-07-30 01:37:43 +00:00
optparse [rubygems/rubygems] Bump optparse to 0.3.0 2022-12-11 13:35:01 +00:00
package [rubygems/rubygems] Raise Gem::Package::FormatError on EOF, indicating corrupt gem 2023-08-17 23:16:57 +00:00
request util/rubocop -A --only Layout/EmptyLineAfterMagicComment 2023-03-23 17:18:49 +09:00
request_set [rubygems/rubygems] auto-correct Style/YodaCondition 2023-06-15 07:01:28 +09:00
resolver [rubygems/rubygems] Reduce allocations when parsing compact index 2023-10-08 04:17:15 +00:00
safe_marshal [rubygems/rubygems] Aggressively optimize allocations in SafeMarshal 2023-09-21 07:40:58 +00:00
security util/rubocop -A --only Style/NumericLiteralPrefix 2023-04-11 19:12:28 +09:00
source [rubygems/rubygems] util/rubocop -A --only Style/FormatString 2023-04-07 05:13:05 +00:00
ssl_certs Merge prepare version of RubyGems 3.2.0 2020-12-08 17:30:02 +09:00
tsort [rubygems/rubygems] Bump Molinillo and tsort 2022-12-11 13:35:00 +00:00
util [rubygems/rubygems] Update SPDX list and warn on deprecated identifiers. 2023-09-30 11:20:08 +00:00
available_set.rb util/rubocop -A --only Layout/EmptyLineAfterMagicComment 2023-03-23 17:18:49 +09:00
basic_specification.rb [rubygems/rubygems] Reduce allocations for stub specifications 2023-09-19 07:25:51 +00:00
bundler_version_finder.rb [rubygems/rubygems] Change enforce style with Layout/CaseIndentation on rubygems 2023-03-16 01:59:11 +00:00
command.rb [rubygems/rubygems] util/rubocop -A --only Performance/RegexpMatch 2023-04-04 12:20:43 +00:00
command_manager.rb Onboard Rubocop Naming/MemoizedInstanceVariableName rule to RubyGems. 2023-03-28 15:27:35 +09:00
compatibility.rb [rubygems/rubygems] util/rubocop -A --only Style/UnlessElse 2023-03-17 18:50:55 +09:00
config_file.rb [rubygems/rubygems] Remove forward slash in key regardless if it contains __ 2023-05-23 18:37:09 +00:00
defaults.rb util/rubocop -A --only Layout/EmptyLineAfterMagicComment 2023-03-23 17:18:49 +09:00
dependency.rb [rubygems/rubygems] util/rubocop -A --only Style/FormatString 2023-04-07 05:13:05 +00:00
dependency_installer.rb [rubygems/rubygems] util/rubocop -A --only Performance/RegexpMatch 2023-04-04 12:20:43 +00:00
dependency_list.rb [rubygems/rubygems] util/rubocop -A --only Style/FormatString 2023-04-07 05:13:05 +00:00
deprecate.rb [rubygems/rubygems] util/rubocop -A --only Style/FormatString 2023-04-07 05:13:05 +00:00
doctor.rb [rubygems/rubygems] util/rubocop -A --only Style/LineEndConcatenation 2023-04-06 23:33:20 +00:00
errors.rb [rubygems/rubygems] util/rubocop -A --only Style/FormatString 2023-04-07 05:13:05 +00:00
exceptions.rb [rubygems/rubygems] Add WebauthnVerificationError Exception 2023-04-12 11:51:03 +09:00
ext.rb util/rubocop -A --only Layout/EmptyLineAfterMagicComment 2023-03-23 17:18:49 +09:00
gem_runner.rb util/rubocop -A --only Layout/EmptyLineAfterMagicComment 2023-03-23 17:18:49 +09:00
gemcutter_utilities.rb [rubygems/rubygems] Move WebauthnListener into the Gem::GemcutterUtilities namespace 2023-07-28 16:08:08 +00:00
indexer.rb [rubygems/rubygems] Add a Marshal.load replacement that walks an AST to safely load permitted classes/symbols 2023-09-20 02:02:58 +00:00
install_default_message.rb util/rubocop -A --only Layout/EmptyLineAfterMagicComment 2023-03-23 17:18:49 +09:00
install_message.rb util/rubocop -A --only Layout/EmptyLineAfterMagicComment 2023-03-23 17:18:49 +09:00
install_update_options.rb util/rubocop -A --only Layout/EmptyLineAfterMagicComment 2023-03-23 17:18:49 +09:00
installer.rb [rubygems/rubygems] Load plugin immediately 2023-05-25 21:51:15 +00:00
installer_uninstaller_utils.rb [rubygems/rubygems] util/rubocop -A --only Layout/EmptyLinesAroundModuleBody 2023-03-17 18:50:55 +09:00
local_remote_options.rb [rubygems/rubygems] util/rubocop -A 2023-04-04 12:20:43 +00:00
name_tuple.rb util/rubocop -A --only Layout/EmptyLineAfterMagicComment 2023-03-23 17:18:49 +09:00
openssl.rb Merge prepare version of RubyGems 3.2.0 2020-12-08 17:30:02 +09:00
optparse.rb RubyGems: Enable Style/StringLiterals cop 2022-07-22 12:07:23 +09:00
package.rb [rubygems/rubygems] Fixed include realpath in error statement 2023-09-11 21:06:22 +00:00
package_task.rb util/rubocop -A --only Layout/EmptyLineAfterMagicComment 2023-03-23 17:18:49 +09:00
path_support.rb [rubygems/rubygems] util/rubocop -A --only Performance/RegexpMatch 2023-04-04 12:20:43 +00:00
platform.rb [rubygems/rubygems] Deprecate Gem::Platform.match 2023-07-21 08:47:55 +00:00
psych_tree.rb util/rubocop -A --only Layout/EmptyLineAfterMagicComment 2023-03-23 17:18:49 +09:00
query_utils.rb [rubygems/rubygems] Optimize allocations in Gem::Version 2023-10-07 16:04:42 +00:00
rdoc.rb util/rubocop -A --only Layout/EmptyLineAfterMagicComment 2023-03-23 17:18:49 +09:00
remote_fetcher.rb [rubygems/rubygems] util/rubocop -A --only Performance/RegexpMatch 2023-04-04 12:20:43 +00:00
request.rb util/rubocop -A --only Layout/EmptyLineAfterMagicComment 2023-03-23 17:18:49 +09:00
request_set.rb Onboard Rubocop Naming/MemoizedInstanceVariableName rule to RubyGems. 2023-03-28 15:27:35 +09:00
requirement.rb util/rubocop -A --only Layout/EmptyLineAfterMagicComment 2023-03-23 17:18:49 +09:00
resolver.rb [rubygems/rubygems] Fixup 2023-06-27 07:37:24 +00:00
s3_uri_signer.rb [rubygems/rubygems] util/rubocop -A --only Style/RegexpLiteral 2023-04-05 09:50:29 +00:00
safe_marshal.rb [rubygems/rubygems] All rubies working with different time zones 2023-09-20 02:03:03 +00:00
safe_yaml.rb util/rubocop -A --only Layout/EmptyLineAfterMagicComment 2023-03-23 17:18:49 +09:00
security.rb util/rubocop -A --only Style/NumericLiteralPrefix 2023-04-11 19:12:28 +09:00
security_option.rb util/rubocop -A --only Layout/EmptyLineAfterMagicComment 2023-03-23 17:18:49 +09:00
shellwords.rb [rubygems/rubygems] Autoload shellwords when it's needed. 2023-06-13 09:32:47 +00:00
source.rb [rubygems/rubygems] Add a Marshal.load replacement that walks an AST to safely load permitted classes/symbols 2023-09-20 02:02:58 +00:00
source_list.rb [rubygems/rubygems] Enabled Style/RedundantReturn cop 2023-03-23 17:18:49 +09:00
spec_fetcher.rb util/rubocop -A --only Layout/EmptyLineAfterMagicComment 2023-03-23 17:18:49 +09:00
specification.rb [rubygems/rubygems] Update suggested variable for bindir 2023-10-03 00:08:34 +00:00
specification_policy.rb [rubygems/rubygems] Update SPDX list and warn on deprecated identifiers. 2023-09-30 11:20:08 +00:00
stub_specification.rb [rubygems/rubygems] Reduce allocations for stub specifications 2023-09-19 07:25:51 +00:00
text.rb util/rubocop -A --only Style/TernaryParentheses 2023-03-17 18:50:55 +09:00
tsort.rb RubyGems: Enable Style/StringLiterals cop 2022-07-22 12:07:23 +09:00
uninstaller.rb [rubygems/rubygems] choose_from_list may return nil index since 2023-08-20 09:04:38 +00:00
unknown_command_spell_checker.rb Track RubyGems master(3.3.0.dev) branch at 55634a8af18a52df86c4275d70fa1179118bcc20 2021-01-04 13:14:43 +09:00
update_suggestion.rb [rubygems/rubygems] Fix typo: eglible -> eligible. 2023-10-03 16:13:18 +09:00
uri.rb RubyGems: Enable Style/StringLiterals cop 2022-07-22 12:07:23 +09:00
uri_formatter.rb [rubygems/rubygems] util/rubocop -A --only Performance/RegexpMatch 2023-04-04 12:20:43 +00:00
user_interaction.rb [rubygems/rubygems] Boundary check in `Gem::StreamUI#choose_from_list` 2023-07-21 07:48:49 +00:00
util.rb util/rubocop -A --only Layout/EmptyLineAfterMagicComment 2023-03-23 17:18:49 +09:00
validator.rb [rubygems/rubygems] util/rubocop -A --only Style/RegexpLiteral 2023-04-05 09:50:29 +00:00
version.rb [rubygems/rubygems] Optimize allocations in Gem::Version 2023-10-07 16:04:42 +00:00
version_option.rb util/rubocop -A --only Layout/EmptyLineAfterMagicComment 2023-03-23 17:18:49 +09:00
yaml_serializer.rb [rubygems/rubygems] Stop allocating the same settings keys repeatedly 2023-09-15 17:54:01 +00:00