-
Notifications
You must be signed in to change notification settings - Fork 313
Updating to version 3.x
Version 3.x requires at least ruby 2.5.
There are a number of places where the API has changed between version 2.x and 3.x
Most changes are due to methods now using named parameters.
No changes in functionality, but now uses named parameters for readability:
- def initialize(path_or_io, create = false, buffer = false, options = {})
+ def initialize(path_or_io, create: false, buffer: false, **options)
In general, use of File::new
is discouraged; favour ::open
and ::open_buffer
if possible.
This method has been removed. Please use ::open_buffer
instead.
This is a new method. Use this to count the number of entries in an archive without reading in the whole central directory, or stepping through all the entries with InputStream
.
No changes in functionality, but now uses named parameters for readability:
- def open(file_name, create = false, options = {})
+ def open(file_name, create: false, **options)
No changes in functionality, but now uses named parameters for readability:
- def split(zip_file_name, segment_size = MAX_SEGMENT_SIZE, delete_zip_file = true, partial_zip_file_name = nil)
+ def split(zip_file_name, segment_size: MAX_SEGMENT_SIZE, delete_original: true, partial_zip_file_name: nil)
No changes in functionality, but now uses named parameters for readability:
- def get_output_stream(entry, permission_int = nil, comment = nil,
- extra = nil, compressed_size = nil, crc = nil,
- compression_method = nil, compression_level = nil,
- size = nil, time = nil, &a_proc)
+ def get_output_stream(entry, permissions: nil, comment: nil,
+ extra: nil, compressed_size: nil, crc: nil,
+ compression_method: nil, compression_level: nil,
+ size: nil, time: nil, &a_proc)