Update dependency crystal to v1.14.0 #107
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
1.11.2
->1.14.0
Release Notes
crystal-lang/crystal (crystal)
v1.14.0
Compare Source
Features
lang
^
in constant numeric expressions (#14951, thanks @HertzDevil)stdlib
Slice#[start, count]
(#14778, thanks @ysbaddaden)Slice#same?
(#14728, thanks @straight-shoota)WaitGroup.wait
andWaitGroup#spawn
(#14837, thanks @jgaskins)File#read
and#write
on Windows (#14940, thanks @HertzDevil)File#read_at
on Windows (#14958, thanks @HertzDevil)Process.run
standard streams on Windows (#14941, thanks @HertzDevil)IO::FileDescriptor#flock_*
on non-blocking files on Windows (#14943, thanks @HertzDevil)STDIN
console on Windows (#14947, thanks @HertzDevil)LibCrypto
bindings for LibreSSL 3.5+ (#14872, thanks @straight-shoota)neg
andfneg
(#14774, thanks @JarnaChao09)LLVM::Builder#finalize
(#14892, thanks @JarnaChao09)Crystal::Macros::TypeNode#has_inner_pointers?
(#14847, thanks @HertzDevil)HashLiteral#has_key?
andNamedTupleLiteral#has_key?
(#14890, thanks @kamil-gwozdz)BigFloat
(#11007, thanks @HertzDevil)Pointer::Appender#to_slice
(#14874, thanks @straight-shoota)URI.from_json_object_key?
andURI#to_json_object_key
(#14834, thanks @nobodywasishere)URI::Params::Serializable
(#14684, thanks @Blacksmoke16)System::User
on Windows (#14933, thanks @HertzDevil)System::Group
on Windows (#14945, thanks @HertzDevil)Crystal::EventLoop
(#14977, thanks @ysbaddaden)underscore_to_space
option toString#titleize
(#14822, thanks @Blacksmoke16)compiler
Crystal::Repl::Value#runtime_type
(#14156, thanks @bcardiff)Reference.pre_initialize
in the interpreter (#14968, thanks @HertzDevil)Bugfixes
lang
Slice.literal
for multiple calls with identical signature (#15009, thanks @HertzDevil)MacroIf
nodes (#14885, thanks @Blacksmoke16)stdlib
Range#size
return type toInt32
(#14588, thanks @straight-shoota)DeallocationStack
for Windows context switch (#15032, thanks @HertzDevil)pthread_create
handle initialization (#15043, thanks @HertzDevil)File#truncate
and#lock
for Win32 append-mode files (#14706, thanks @HertzDevil)Socket
andIO::FileDescriptor
(#14882, thanks @straight-shoota)IO::Buffered#buffer_size=
idempotent (#14855, thanks @jgaskins)#sort_by
inside macros usingEnumerable#sort_by
(#14895, thanks @HertzDevil)#is_a?
onExternal
nodes (#14918, thanks @HertzDevil)Socket#connect
on Windows (#14961, thanks @HertzDevil)String#to_f(whitespace: false)
(#14902, thanks @Blacksmoke16)Math.frexp(BigFloat)
for very large values (#14971, thanks @HertzDevil)BigFloat#to_s
for very large values (#14982, thanks @HertzDevil)@[Link(dll:)]
annotation to MPIR (#15003, thanks @HertzDevil)LibC.VirtualQuery
(#15036, thanks @HertzDevil)XML::Error.errors
(#14936, thanks @straight-shoota)Expectations::Be
for module type (#14926, thanks @straight-shoota)ENV.fetch
(#14919, thanks @straight-shoota)#file_descriptor_close
should set@closed
(UNIX) (#14973, thanks @ysbaddaden)libpcre
when unused (#14891, thanks @kojix2)String#byte_index
offset
parameter (#14981, thanks @straight-shoota)compiler
Proc
s from top-level funs (#14917, thanks @HertzDevil)getrandom
failure in interpreted code (#15035, thanks @HertzDevil)TopLevelVisitor
adding existingClassDef
type to current scope (#15067, thanks @straight-shoota)tools
crystal tool dependencies
format flat (#14927, thanks @straight-shoota)crystal tool dependencies
filters for Windows paths (#14928, thanks @straight-shoota)crystal tool unreachable
& co visiting circular hierarchies (#15065, thanks @straight-shoota)Chores
stdlib
Time::Span
inBenchmark.ips
(#14805, thanks @HertzDevil)::sleep(Number)
(#14962, thanks @HertzDevil)Pointer.new(Int)
(#14875, thanks @straight-shoota)compiler
Crystal::Loader
on Windows (#14988, thanks @HertzDevil)Performance
stdlib
Hash#transform_{keys,values}
(#14502, thanks @jgaskins)BigFloat
and integers (#14944, thanks @HertzDevil)Exception::CallStack.empty
to avoid repeatArray
allocation (#15025, thanks @straight-shoota)compiler
Crystal::Type#remove_indirection
in module dispatch (#14992, thanks @HertzDevil)Refactor
stdlib
select
fromsrc/channel.cr
(#14912, thanks @straight-shoota)Crystal::IOCP::OverlappedOperation
abstract (#14987, thanks @HertzDevil)#evented_read
,#evented_write
intoCrystal::LibEvent::EventLoop
(#14883, thanks @straight-shoota)Socket::Addrinfo.getaddrinfo(&)
(#14956, thanks @HertzDevil)Crystal::System::Addrinfo
(#14957, thanks @HertzDevil)Exception::CallStack.empty
(#15017, thanks @straight-shoota)IOCP::OverlappedOperation
(#14754, thanks @straight-shoota)Crystal::System::Group
instead of extending it (#14930, thanks @HertzDevil)Crystal::System::User
instead of extending it (#14929, thanks @HertzDevil)Crystal::SpinLock
doesn't need to be allocated on the HEAP (#14972, thanks @ysbaddaden)System::Process.spawn
(UNIX) (#14974, thanks @ysbaddaden)EventLoop
interface for sleeps & select timeouts (#14980, thanks @ysbaddaden)compiler
Documentation
stdlib
Hash::Entry
from public API docs (#14881, thanks @Blacksmoke16)Set
andHash
(#14889, thanks @philipp-classen)@[Experimental]
toLLVM::DIBuilder
(#14854, thanks @HertzDevil)uri/json
todocs_main
(#15069, thanks @straight-shoota)Pointer
's alignment requirement (#14853, thanks @HertzDevil)Pointer#memcmp
's documentation (#14818, thanks @HertzDevil)NoReturn
andVoid
(#14817, thanks @nobodywasishere)Specs
stdlib
Tuple#to_static_array
spec on AArch64 (#14844, thanks @HertzDevil)String#index
,#rindex
search forChar::REPLACEMENT
(#14946, thanks @straight-shoota)compiler
ProcPointer
of virtual type (#14903, thanks @HertzDevil)Infrastructure
shard.yml
(#14909, thanks @straight-shoota)release/1.13
@1.13.2 (#14924, thanks @straight-shoota)release/1.13
@1.13.3 (#15012, thanks @straight-shoota)SOURCE_DATE_EPOCH
inMakefile.win
(#14922, thanks @HertzDevil)wasm32-test
(#14821, thanks @straight-shoota)macos-14
(#14833, thanks @straight-shoota)libffi
repository on Windows CI (#14998, thanks @HertzDevil)v1.13.3
Compare Source
Bugfixes
stdlib
Process.exec
stream redirection on Windows (#14986, thanks @HertzDevil)String#index
and#rindex
forChar::REPLACEMENT
(#14937, thanks @HertzDevil)Infrastructure
runs-on.com
for Aarch64 CI (#15007, thanks @straight-shoota)v1.13.2
Compare Source
Bugfixes
stdlib
Hash::Entry
(#14862, thanks @HertzDevil)compiler
ReferenceStorage(T)
atomic ifT
has no inner pointers (#14845, thanks @HertzDevil)Bool
to union upcasts (#14906, thanks @HertzDevil)Infrastructure
v1.13.1
Compare Source
Bugfixes
stdlib
Infrastructure
v1.13.0
Compare Source
Features
lang
_
inside macro expressions (#14452, thanks @HertzDevil)stdlib
Array#insert_all
(#14486, thanks @summer-alice)#sort(&block : T, T -> U)
(#14693, thanks @beta-ziliani)WaitGroup
synchronization primitive (#14167, thanks @ysbaddaden)Atomic
s of pointer types (#14401, thanks @HertzDevil)Thread.new
yields itself (#14543, thanks @ysbaddaden)Atomic(Bool)
(#14532, thanks @ysbaddaden)Thread.sleep(Time::Span)
(#14715, thanks @ysbaddaden)IO#tty?
in Win32 (#14421, thanks @HertzDevil)File.readable?
and.writable?
in Win32 (#14420, thanks @HertzDevil)File.readable?
and.writable?
follow symlinks on Windows (#14514, thanks @HertzDevil)LLVM::Context
bindings (#14612, thanks @ysbaddaden)UInt32
andUInt64
in Log Context (#14459, thanks @toddsundsted)#[]
operator call's macro interpolation (#14523, thanks @HertzDevil)Select
(#14600, thanks @HertzDevil)TypeNode#private?
,#public?
and#visibility
(#11696, thanks @Hadeweka)StringLiteral#to_utf16
(#14676, thanks @ysbaddaden)HTTP::Server.new
toIndexable(HTTP::Handler)
(#14413, thanks @hugopl)EventLoop::Socket
module (#14643, thanks @straight-shoota)EventLoop::FileDescriptor
module (#14639, thanks @straight-shoota)Crystal::Tracing
for runtime tracing (#14659, thanks @ysbaddaden)EventLoop#run(blocking)
andEventLoop#interrupt
(#14568, thanks @ysbaddaden)Crystal::System::Time.ticks
(#14620, thanks @ysbaddaden)Crystal::System::Thread.current_thread?
,#scheduler?
(#14660, thanks @ysbaddaden)Crystal::System.panic
(#14733, thanks @ysbaddaden)Regex::MatchOptions
overload forString#index!
(#14462, thanks @HertzDevil)StringPool#get?
(#14508, thanks @HertzDevil)pkg_config
names forpcre2
andpcre
(#14584, thanks @straight-shoota)Time::Error
(#14743, thanks @Blacksmoke16)compiler
-Os
and-Oz
to optimize binary size (#14463, thanks @ysbaddaden)tools
Bugfixes
lang
if
bodies inside macro expressions (#14505, thanks @HertzDevil)->
inside certain comma-separated lists (#14506, thanks @HertzDevil)Select
nodes' macro interpolation (#14510, thanks @HertzDevil)Expressions#to_s
(#14511, thanks @HertzDevil)stdlib
Enumerable#to_a
andEnumerable#tally
properly retain return type ofT
(#14447, thanks @Blacksmoke16)IndexError
in#[]?(Range)
(#14444, thanks @HertzDevil)Set#to_a(&)
(#14519, thanks @meatball133)Hash#rehash
to reset@first
(#14606, thanks @straight-shoota)NamedTuple#from
(#14790, thanks @HertzDevil)NamedTuple.new
when using key with a hyphen (#14785, thanks @Blacksmoke16)#fsync
and#flock_*
onIO::FileDescriptor
(#14432, thanks @HertzDevil)IO::FileDescriptor#tty?
return false for NUL on Windows (#14509, thanks @HertzDevil)IO::FileDescriptor
echo and raw mode methods (#14529, thanks @HertzDevil)File.symlink
on Windows (#14522, thanks @HertzDevil)IO#same_content?
accepting prefix on second stream (#14664, thanks @straight-shoota)File#read_at
for large offsets on Windows (#14708, thanks @HertzDevil)IO::FileDescriptor.new
for closed fd (#14697, thanks @straight-shoota)IO::Delimited
reading into limited slice with peek (#14772, thanks @straight-shoota)Compress::Gzip
extra field (#14550, thanks @kojix2)Socket#close
error handling on Windows (#14517, thanks @HertzDevil)HTTP::StaticFileHandler
(#14546, thanks @alexkutsan)SOCK_CLOEXEC
) (#14632, thanks @carlhoerberg)SOCK_CLOEXEC
withFD_CLOEXEC
fallback (#14672, thanks @ysbaddaden)Socket#connect
timeout type restriction (#14755, thanks @straight-shoota)Socket#connect
on Windows (#14756, thanks @straight-shoota)BigRational#format
(#14525, thanks @meatball133)printf("%e")
andprintf("%g")
(#14695, thanks @straight-shoota)GC.malloc
forgc_none
to clear memory (#14746, thanks @straight-shoota)false
value (#14779, thanks @dammer)System.retry_with_buffer
with stack buffer (#14615, thanks @straight-shoota)Socket
&FileDescriptor
on Windows (#14634, thanks @ysbaddaden)dup3
andpipe2
to setO_CLOEXEC
when available (#14673, thanks @ysbaddaden)retry_with_buffer
when big buffer is necessary (#14622, thanks @BlobCodes)Process.run
with closed IO (#14698, thanks @straight-shoota)strerror_r
overstrerror
for thread-safe errno (#14764, thanks @ysbaddaden)String#sub
raiseIndexError
if index is equal to size (#14458, thanks @HertzDevil)libpcre2
version detection not working for-RC{N}
versions (#14478, thanks @Frityet)Regex#inspect
with non-literal-compatible options (#14575, thanks @straight-shoota)-
(#14739, thanks @HertzDevil)compiler
target_machine
for every program (#14694, thanks @straight-shoota)ReferenceStorage(T)
non-atomic ifT
is non-atomic (#14730, thanks @HertzDevil)crystal_formatters.py
for Python 3 (#14665, thanks @zw963)Crystal::Path#to_macro_id
for global path (#14490, thanks @straight-shoota)Class#===
on metaclass (#11162, thanks @makenowjust)tools
HOST_TRIPLE
andTARGET_TRIPLE
(#14570, thanks @straight-shoota)#[]
operator call (#14526, thanks @HertzDevil)Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.