https://github.com/JuliaLang/julia

sort by:
Revision Author Date Message Commit Date
8fe082c llvm-cpufeatures: get TargetMachine from the MachineModuleInfoWrapperPass pass This is usually only supposed to be accessible to a MachineModulePass, but we can trick llvm to give us access to the TargetMachine here too. Also hack in a sysimg check also, so that the compile result is ensured to be compatible with the loaded image too (we disable loading of the sysimg when emitting a new compile). 01 February 2022, 19:51:29 UTC
0cbacf2 docs: fix heading level of Manual > Modules > init & precomp (#43996) 01 February 2022, 15:23:20 UTC
a0093d2 adce: Slight tweak to phinode elimination (#43948) Just a slight tweak to #43922 to also allow the implicit narrowing from other phi users. It's not a particularly common occurrence, but can happen particularly when running the adce pass twice, (because that narrows the types of some phis by dropping edges). 01 February 2022, 00:11:22 UTC
a7beb93 Update mailmap (#43991) * Update mailmap 31 January 2022, 00:10:54 UTC
76a3156 Add private functions for getting the locations of the global and local startup files (#43807) Co-authored-by: Jameson Nash <vtjnash@gmail.com> 30 January 2022, 20:39:47 UTC
4abf26e Add relocatable root compression (#43881) Currently we can't cache "external" CodeInstances, i.e., those generated by compiling other modules' methods with externally-defined types. For example, consider `push!([], MyPkg.MyType())`: Base owns the method `push!(::Vector{Any}, ::Any)` but doesn't know about `MyType`. While there are several obstacles to caching exteral CodeInstances, the primary one is that in compressed IR, method roots are referenced from a list by index, and the index is defined by order of insertion. This order might change depending on package-loading sequence or other history-dependent factors. If the order isn't consistent, our current serialization techniques would result in corrupted code upon decompression, and that would generally trigger catastrophic failure. To avoid this problem, we simply avoid caching such CodeInstances. This enables roots to be referenced with respect to a `(key, index)` pair, where `key` identifies the module and `index` numbers just those roots with the same `key`. Roots with `key = 0` are considered to be of unknown origin, and CodeInstances referencing such roots will remain unserializable unless all such roots were added at the time of system image creation. To track this additional data, this adds two fields to core types: - to methods, it adds a `nroots_sysimg` field to count the number of roots defined at the time of writing the system image (such occur first in the list of `roots`) - to CodeInstances, it adds a flag `relocatability` having value 1 if every root is "safe," meaning it was either added at sysimg creation or is tagged with a non-zero `key`. Even a single unsafe root will cause this to have value 0. 30 January 2022, 20:04:58 UTC
11bac43 Update PCRE download location in SPDX file (#43985) * Update PCRE download location in SPDX file * Make it the actual git URL 30 January 2022, 14:16:13 UTC
e8f469a Merge pull request #43973 from JuliaLang/avi/infresult AbstractInterpreter: pass `caller::InferenceResult` to the optimizer 29 January 2022, 19:25:49 UTC
c3235cd Fix typo in triangular ldiv! (#43962) 29 January 2022, 02:45:02 UTC
9a3cfd9 cross-ref bunch-kaufman to ldlt docs (#43968) 28 January 2022, 22:43:40 UTC
e88bb22 fix incorrect quotes in SVD docs (#43969) 28 January 2022, 20:24:41 UTC
1aac07e codegen: encapsulate complex global types in jl_codectx_t (#43789) Move global complex types to context type cache in LLVM codegen. 28 January 2022, 20:10:51 UTC
4789979 use iszero for generic numbers (#43970) 28 January 2022, 20:06:30 UTC
eb43734 optimizer: delay `atype` computation in inlining (#43974) Makes `Signature` data structure slightly more efficient. 28 January 2022, 17:27:10 UTC
cd458a9 AbstractInterpreter: pass `caller::InferenceResult` to the optimizer `caller::InferenceResult` will be used as a key for caching interprocedural information analyzed at optimization phase (as we will do with the escape analysis). 28 January 2022, 15:26:51 UTC
ad2b8fc Fix the download URLs for the libunwind source code (#43958) 28 January 2022, 12:57:03 UTC
2ba3a22 doc: add note about Timer needing yield, closes #43954 (#43956) 28 January 2022, 09:17:39 UTC
3dbd31b Fix typo in 3-arg "rdiv!" (#43951) 28 January 2022, 08:31:46 UTC
9400c91 a bit simplify inlining analysis code (#43959) 28 January 2022, 04:22:26 UTC
a25f128 Don't `invokelatest` in `@threads` (#43957) 28 January 2022, 01:28:43 UTC
78b7d76 [REPLCompletions] follow up #43865, keep input tuple type in `MethodCompletion` (#43946) `MethodCompletion.tt` is being used by an external consumer like Juno or VSCode's runtime completion features to get additional information like return type, etc. 28 January 2022, 00:44:34 UTC
ef35804 Update libunwind to v1.5.0 (#42782) This updates the nongnu libunwind, not LLVM libunwind, so this only affects Linux and FreeBSD. 27 January 2022, 16:29:32 UTC
8f13fea relax `withenv` signature from Function to Any (#43584) 27 January 2022, 16:08:48 UTC
2983327 Teach cfg_simplify to drop GotoIfNots that go to the same destination (#43906) An example is in the test. The primary reason to do this is not for the GotoIfNot itself, but rather to drop the use of the GotoIfNot condition, which may be rooting a number of other statements. 27 January 2022, 12:13:27 UTC
5b893dd deleteat!: Handle unassigned array elements (#43941) This function was erroring on unassigned array elements. This is the minimal fix to resolve that issue. I tried something more generic, but it turns out all of our Array code basically assumes that all elements are assigned. Even basic things like `==`, `hash`, etc. error for arrays with unassigned elements. I think we may want to strongly consider removing the ability to unassign elements in arrays in favor of Union{Nothing, T} arrays, which our existing code handles fine and should be able to be made to have equivalent performance. 27 January 2022, 12:10:44 UTC
4650cff Forward negation of a Tridiagonal matrix to diagonals (#43942) 27 January 2022, 09:50:46 UTC
9868411 optimizer: performance tuning (#43928) 27 January 2022, 04:11:41 UTC
05e0cb9 Merge pull request #43418 from JuliaLang/improve-threads Improve thread scheduler memory ordering 27 January 2022, 01:42:26 UTC
fcd34ae Refine `isunordered` docstring (#43828) 26 January 2022, 20:45:03 UTC
d261458 Remove fast_unwind_on_malloc and malloc_context_size restrictions in ASAN CI (#42515) No need to set ASAN_OPTIONS any more either: these options are already set in `loader_exe.c` with `__asan_default_options`. 26 January 2022, 20:43:33 UTC
0eaf35a scheduler: improve libuv wakeup event ordering Ensures better that we support nesting of threaded regions and access to this variable from any thread. Previously, it appears that we might toggle this variable on another thread (via thread migration), but would then not successfully wake up the thread 0 and cause it to resume sleeping on the event loop. 26 January 2022, 18:01:51 UTC
6df6105 scheduler: use explicit memory fences These were previously implied (on TSO platforms, such as x86) by the atomic_store to sleeping and the sleep_locks acquire before the wake_check loop, but this makes it more explicit. We might want to consider in the future if it would be better (faster) to acquire each possible lock on the sleeping path instead, so that we do each operation with seq_cst, instead of using a fence to only order the operations we care about directly. 26 January 2022, 18:01:51 UTC
9c7cfa9 handle exit signal failure 26 January 2022, 18:01:14 UTC
7b636ff svec: optimize allocations in debug The svec set method needs to do a little bit more work (for asserts and write barriers), which is not necessary if we know it was just allocated. 26 January 2022, 18:01:14 UTC
2010d95 docs: add FAQ on soft-scope (#43681) Co-authored-by: Ian Butterworth <i.r.butterworth@gmail.com> 26 January 2022, 17:41:17 UTC
bc8e1f2 In `Base.runtests`, after tests fail, load `InteractiveUtils` from `@stdlib` (#43804) In `Base.runtests`, if the tests fail, before loading `InteractiveUtils`, set the `LOAD_PATH` to only include `@stdlib`. In theory, it's possible that someone has a setup where their load path has a package named `InteractiveUtils`. So, to increase the probability that we are actually loading the correct `InteractiveUtils` stdlib, let's set `Base.LOAD_PATH` to only include `@stdlib`. After we load `InteractiveUtils`, we restore the original contents of `Base.LOAD_PATH`. 26 January 2022, 17:40:26 UTC
8bdb045 Merge pull request #43865 from JuliaLang/jn/replcompletemethods [REPLCompletions] improved handling of completions 26 January 2022, 17:37:55 UTC
051ab3b Manually split `string(a::Union{Char, String, SubString{String}, Symbol}...)` (#43939) * Manually split `string(a::Union{Char, String, SubString{String}, Symbol}...)` 4 is one too many for automatic Union-splitting. Poor inference in this method accounts for more than 1000 invalidations. 26 January 2022, 14:48:12 UTC
f1e7f52 Add `rdiv!` for `Bidiagonal` + small improvements (#43779) Co-authored-by: Steven G. Johnson <stevenj@alum.mit.edu> 26 January 2022, 08:43:08 UTC
3f0ae6e Fix fpsort! for non Int indices (#43934) * Extend allowsmissing and ismissing to Integer * Test #43925 26 January 2022, 04:21:44 UTC
15df9c0 fix deadlock between `require_lock` and package callbacks (#43936) 26 January 2022, 04:21:20 UTC
6c1eb93 pow: Make n == 0 special case obvious to constprop (#43920) Should have been part of #43907, but I forgot. 26 January 2022, 03:58:53 UTC
b34cb17 adce_pass: Drop phinode edges that can be proved unused (#43922) * optimizer: lift more comparisons This commit implements more comparison liftings. Especially, this change enables the compiler to lift `isa`/`isdefined` checks (i.e. replace a comparison call with ϕ-node by CFG union-splitting). For example, the code snippet below will run 500x faster: ```julia function compute(n) s = 0 itr = 1:n st = iterate(itr) while isdefined(st, 2) # mimic our iteration protocol with `isdefined` v, st = st s += v st = iterate(itr, st) end s end ``` Although it seems like the codegen for `isa` is fairly optimized already and so I could not find any performance benefit for `isa`-lifting (`code_llvm` emits mostly equivalent code), but I hope it's more ideal if we can do the equivalent optimization on Julia level so that we can just consult to `code_typed` for performance optimization. * adce_pass: Drop phinode uses that can be proved unused Union splitting introduces patterns like: Consider a case like: ``` f(x::Float64) = println(x) f(x::SomeBigStruct) = nothing ``` ``` goto 2 if not ... 1: a = ::Float64 goto 3 2: b = new(SomeBigStruct, ...)::SomeBigStruct 3: c = phi(a, b) if !isa(c, Float64) goto 5 4: d = PiNode(c, Float64) println(d) goto 6 5: nothing 6: return nothing ``` Now, #43227 will turn this into: ``` goto 2 if not ... 1: a = ::Float64 goto 3 2: b = new(SomeBigStruct, ...)::SomeBigStruct 3: c = phi(a, b) cond = phi(true, false) if !cond goto 5 4: d = PiNode(c, Float64) println(d) goto 6 5: nothing 6: return nothing ``` But even though dynamically `b` is never used, it doesn't get deleted, because there's still a use in the PhiNode `c`. This PR teaches adce to recognize this situation and, for PhiNodes that are only ever used by PiNodes, drop any edges that are known to be unused. E.g. in the above case, the adce improvements would turn it into: ``` goto 2 if not ... 1: a = ::Float64 goto 3 2: b = new(SomeBigStruct, ...)::SomeBigStruct 3: c = phi(a) cond = phi(true, false) if !cond goto 5 4: d = PiNode(c, Float64) println(d) goto 6 5: nothing 6: return nothing ``` Which in turn would let regular DCE drop the allocation: ``` goto 2 if not ... 1: a = ::Float64 goto 3 2: nothing 3: c = phi(a) cond = phi(true, false) if !cond goto 5 4: d = PiNode(c, Float64) println(d) goto 6 5: nothing 6: return nothing ``` Co-authored-by: Shuhei Kadowaki <aviatesk@gmail.com> Co-authored-by: Ian Atol <ian.atol@juliacomputing.com> 26 January 2022, 03:57:28 UTC
40bceb2 Show modules with invalid name using var"" (#43932) 26 January 2022, 03:51:36 UTC
de21be7 Fix obsolete builtins list in devdocs/function (#35271) Generates the list programmatically now, since we will never remember to update it (though it is perhaps a bit odd that we include this list in the first place, when it is just generated by reflection). 25 January 2022, 18:18:45 UTC
177baf8 fix show(::LinRange) (#35448) Fixes #35437 This could be refined further (see comments in the PR), but it fixes the issue. 25 January 2022, 18:10:52 UTC
a400a24 Revert "IO: tie lifetime of handle field to container (#43218)" (#43924) This reverts commit 5cd31b581e2935aebc21217c1dc87ec4bde8f877. 25 January 2022, 08:53:24 UTC
cdd2f62 optimizer: lift more comparisons (#43227) This commit implements more comparison liftings. Especially, this change enables the compiler to lift `isa`/`isdefined` checks (i.e. replace a comparison call with ϕ-node by CFG union-splitting). For example, the code snippet below will run 500x faster: ```julia function compute(n) s = 0 itr = 1:n st = iterate(itr) while isdefined(st, 2) # mimic our iteration protocol with `isdefined` v, st = st s += v st = iterate(itr, st) end s end ``` Although it seems like the codegen for `isa` is fairly optimized already and so I could not find any performance benefit for `isa`-lifting (`code_llvm` emits mostly equivalent code), but I hope it's more ideal if we can do the equivalent optimization on Julia level so that we can just consult to `code_typed` for performance optimization. 25 January 2022, 08:47:12 UTC
2682819 Fix searchsorted in Core.Compiler (#43918) 25 January 2022, 01:30:52 UTC
d7e3d99 [REPLCompletions] improve implementation of completions - Restrict method completion to ignore strictly less specific ones - Fix various lookup bugs - Improve slurping of final expression Inspired by https://github.com/JuliaLang/julia/pull/43572 Co-authored-by: Lionel Zoubritzky <lionel.zoubritzky@gmail.com> 24 January 2022, 23:50:20 UTC
4ab81fc gf: make Builtins more like regular functions Now we can fully handle all type signatures in ml_matches and give back the complete list (though potentially slowly). 24 January 2022, 23:50:20 UTC
295cee5 [REPLCompletions] fix missing bounds handling Caused `foo).<tab>` to crash, for example. 24 January 2022, 23:50:19 UTC
d900ab1 [REPLCompletions] handle #=comments=# in find_start_brace 24 January 2022, 23:50:19 UTC
4063761 [REPLCompletions] handle possibility of syntax errors 24 January 2022, 23:50:19 UTC
5cd31b5 IO: tie lifetime of handle field to container (#43218) Rather than freeing this memory as soon as possible, ensure that the lifetime of the handle is always >= the container object. This lets us examine some (limited) aspects of the handle without holding a lock. And we also examine and fix numerous other thread-safety and synchronization bugs too. 24 January 2022, 23:17:23 UTC
6be85dc Merge pull request #43095 from JuliaLang/jn/tevents enhance Threads.Events with ordering and (auto)reset 24 January 2022, 23:03:06 UTC
c3b29a3 switch staticdata to a pre-order worklist instead of recursion (#43879) Avoids stack-overflow when the graph has long linked lists. 24 January 2022, 22:24:24 UTC
06ad3f4 Make various core math functions easier for the compiler to reason about (#43907) * ldexp: Break inference loop We have an inference loop fma_emulated -> ldexp -> ^(::Float64, ::Int) -> fma -> fma_emulated. The arguments to `^` are constant, so constprop will figure it out, but it does require a bunch of extra processing. There is a simpler way to write this using elementary bit operations. Since resolving the inference loop requires constprop, this was breaking #43852. That is fixable, but I think we should also make this change to avoid having an unnecessary inference loop in our basic math functions, which will make future analyses easier. * Make fma_emulated easier for the compiler to reason about The fact that the `exponent` call in `fma_emulated` requires reasoning about the ranges of the floating point values in question, which the compiler is not capable of doing (and is unlikely to ever do automatically). Thus, in order for the compiler to know that `fma_emulated` (and by extension `fma`) is :nothrow in a post-#43852 world, create a separate version of the `exponent` function that assumes its precondition. We could use `@assume_effects` instead, but this version is currently slightly easier on the compiler. * pow: Make integer vs float branch obvious to constprop The integer branch is nothrow, so if the caller does something like `^(x::Float64, 2.0)`, we'd like to discover that. 24 January 2022, 21:07:41 UTC
9769024 [deps] Update PCRE2 URL (#43884) 24 January 2022, 19:46:44 UTC
4bfc788 improve VersionNumber docs (#43893) * improve VersionNumber docs * numeric constructor example * more links * tweak 24 January 2022, 18:03:57 UTC
99f0284 remove duplicate definition of `indent_width` (#43908) 24 January 2022, 15:05:04 UTC
580f51d add docstring for new kwargs in code_typed (#40719) 23 January 2022, 07:47:15 UTC
2865d97 Fix sparse checksums (#43898) * Fix sparse checksums * Update URLs for SuiteSparse.jl and SparseArrays.jl (#43894) They are now in the JuliaSparse org. (cherry picked from commit 3d2ed5ad4c9f6465a4c42408247338cae12483cd) * Bump SuiteSparse.jl and SparseArrays.jl Update their checksums 23 January 2022, 07:43:24 UTC
f4ee0d2 Revert "Update URLs for SuiteSparse.jl and SparseArrays.jl (#43894)" (#43897) This reverts commit 3d2ed5ad4c9f6465a4c42408247338cae12483cd. 23 January 2022, 01:02:20 UTC
3d2ed5a Update URLs for SuiteSparse.jl and SparseArrays.jl (#43894) They are now in the JuliaSparse org. 22 January 2022, 20:14:18 UTC
1db8b8f [buildkite] Lock to sandbox v1.2 (#43890) 22 January 2022, 04:38:39 UTC
816c6a2 support line number offset in parsing (#43876) This adds an extra keyword argument `lineno` to `Meta.parseatom` and `Meta.parseall`, which causes the emitted `LineNumberNode`s to start at the given line number instead. 21 January 2022, 20:05:48 UTC
a327428 Fix asan for jl_precompile_toplevel_module (#43885) PR #43793 passed the buildkite test but the logs for #43881 show an address sanitzer failure. Removing jl_precompile_toplevel_module from jl_exported_data.inc fixes the error. For good measure, set it to NULL at the point of definition, even though it gets nulled during initialization. 21 January 2022, 18:11:32 UTC
5f79cb3 [LinearAlgebra] Bump libblastrampoline to v4.0.0 (#43877) This version allows loading of dual-interface libraries, such as MKL v2022+. It enables both providing a suffix hint when loading a library (to force detection of ILP64 or LP64 symbols) as well as being able to load the same library for multiple interfaces. 21 January 2022, 12:01:49 UTC
4e83cce Track method roots by precompile module (#43793) For roots of a method added during incremental compilation, track the toplevel module build_id. This will ultimately allow such roots to be "relocatable" in compressed IR, pending future changes in compression. 21 January 2022, 09:24:19 UTC
416d60d 🤖 Bump the Pkg stdlib from c3139663 to 66482586 (#43871) Co-authored-by: Dilum Aluthge <dilum@aluthge.com> 21 January 2022, 01:59:35 UTC
f290339 Add lazy string type (#33711) 20 January 2022, 22:35:32 UTC
cc96240 Remove sqrt from the volatile list (#43786) The LLVM IR spec now explicitly says that this intrinsic is required to be rounded correctly. That means that without fasthmath flag (which we do not set here), this intrinsic must have the bitwise correctly rounded answer and should thus not differ between compile and runtime. If there is still a case where it does differ, that is likely some other underlying bug that we should fix instead. Before: ``` julia> f() = sqrt(2) f (generic function with 1 method) julia> @code_typed f() CodeInfo( 1 ─ %1 = Base.Math.sqrt_llvm(2.0)::Float64 └── return %1 ) => Float64 ``` After: ``` julia> @code_typed f() CodeInfo( 1 ─ return 1.4142135623730951 ) => Float64 ``` 20 January 2022, 22:34:57 UTC
23b4743 Revert "add generic fallback for haskey (#42679)" (#43880) This reverts commit ecc0398361495fb08368bf5a38ea3d740e067f52. 20 January 2022, 21:45:59 UTC
867c98f alloc profiler: fix analyzegc error (#43875) 20 January 2022, 18:20:53 UTC
2e854a4 Merge pull request #43685 from JuliaLang/vc/llvm_asan Pickup TSAN/ASAN and LLVM assertion build fixes from #43418 20 January 2022, 17:47:06 UTC
f67371d Switch `getindex(::IRCode, ::Int)` to return Instruction (#43829) This function is a helper to abstract over both the inserted and the pending instruction streams. However, it predates the `Instruction` abstraction and currently returns the stmt directly. The original design was to have separate view types to access every field, but since we have the `Instruction` abstraction now, we should just use it, enabling things like: ``` ir[SSAValue(idx)][:flags] |= IR_FLAG_EFFECT_FREE ``` I want to do more with flags in the future, so this is a prepratory refactor in that direction. 20 January 2022, 14:06:30 UTC
a6624d9 Merge pull request #43870 from JuliaLang/kf/openlibmbump Bump openlibm to 0.8.1 20 January 2022, 14:05:56 UTC
88b1f92 [LateLowerGC] Change undef FCA into zeroinit (#43867) 20 January 2022, 11:54:46 UTC
f6ea7cc Elaborate `code_native` funciton and macro docstring (#43860) 20 January 2022, 11:29:17 UTC
05d3e84 Document use of `/` in LinearAlgebra (#43632) Co-authored-by: Viral B. Shah <ViralBShah@users.noreply.github.com> Co-authored-by: Simon Byrne <simonbyrne@gmail.com> 20 January 2022, 05:22:10 UTC
cc73f50 Add test for sqrt rounding 20 January 2022, 01:19:47 UTC
a55aa57 Bump OpenLibm to 0.8.1 20 January 2022, 01:19:47 UTC
487f0b4 Merge pull request #43664 from dnadlinger/aarch64-darwin Switch aarch64-darwin codegen to JITLink (ObjectLinkingLayer) and small code model 19 January 2022, 23:48:42 UTC
ef23d6d Allocation profiler (#42768) ## Overview Record the type and stack of every allocation (or only at a given sample interval), and return as Julia objects. Alternate approach to existing alloc profiler PR: https://github.com/JuliaLang/julia/pull/33467 Complementary to garbage profiler PR: https://github.com/JuliaLang/julia/pull/42658 (maybe there's some nice way to meld them) This may be reinventing the wheel from #33467, but I'm not sure why that one needs stuff like LLVM passes. I mimicked some stuff from it, but this was my attempt to get something up and running. Could easily be missing stuff. ## Usage: ```julia using Profile.Allocs res = Allocs.@profile sample_rate=0.001 my_func() prof = Allocs.fetch() # do something with `prof` ``` See also: https://github.com/JuliaPerf/PProf.jl/pull/46 for support for visualizing these. Co-authored-by: Nathan Daly <nhdaly@gmail.com> 19 January 2022, 20:51:00 UTC
5864e43 Fix `tmerge` for (partially) const types with undef fields (#43812) When `tmerge` is applied to `Const`/`PartialStruct` and a field is `Const` in one of the types and `Union{}` (i.e. undef) in the other, the resulting field type must not be `Const` (as the resursively called `tmerge` produces). Fixes #43784. 19 January 2022, 06:23:10 UTC
8ec5580 Remove have_fma from the public API exports. (#43854) 19 January 2022, 02:34:38 UTC
aa1bd28 Fix `extrema(x; dims)` for inputs with `NaN/missing` (#43604) * Define `extrema` using `mapreduce`; support `init` * Fix tests for SparseArrays * API clean and export `extrema!` * Re-implement `reducedim_init` for extrema * Merge `master` to pull in https://github.com/JuliaLang/SparseArrays.jl/pull/63 * Mark `BigInt` tests as broken Co-authored-by: Milan Bouchet-Valat <nalimilan@club.fr> Co-authored-by: Simeon Schaub <simeondavidschaub99@gmail.com> Co-authored-by: Takafumi Arakaki <aka.tkf@gmail.com> Co-authored-by: Tim Holy <tim.holy@gmail.com> 18 January 2022, 22:43:43 UTC
1f266b8 Move typeassert effect-free modeling to the proper place (#43830) This was open-coded inside inlining, but the effect-free modeling code should be with the other builtins (in preparation of calling it from more places). 18 January 2022, 19:22:19 UTC
51ded1c Simplify loading code from stdin during precompilation. (#43853) 18 January 2022, 19:13:16 UTC
eb724e0 Add defalg methods to resolve potential dispatch ambiguities (#43426) We could also consider adding `defalg(v::AbstractArray{<:Number}) = DEFAULT_UNSTABLE`, but it is unlikely that someone will want to do `Union` of `<:Number` and something other than `Missing` that still would support comparison. Relevant for https://github.com/JuliaStrings/InlineStrings.jl/issues/21 (and other custom types that will want to add `defalg` support allowing for `Union` with `Missing`). 18 January 2022, 18:33:12 UTC
c5158f4 Fix typos in runtime_intrinsics.c (#43850) 18 January 2022, 04:41:11 UTC
45acb76 🤖 Bump the SparseArrays stdlib from 205b770 to 16dd9bd (#43848) Co-authored-by: Dilum Aluthge <dilum@aluthge.com> 17 January 2022, 18:56:28 UTC
d6cd37a InteractiveUtils: add const annotations (#43846) 17 January 2022, 17:31:46 UTC
4b036f0 Update Documenter to latest version. (#43843) 17 January 2022, 16:43:12 UTC
591f066 Move sparse matrix tests to the new SparseArrays.jl repo (#43832) * Move sparse matrix tests to the new SparseArrays.jl repo 17 January 2022, 13:15:05 UTC
f03e839 Fix splatnew test (#43835) The function being tested currently throws: ``` julia> _construct_structwithsplatnew() ERROR: TypeError: in new, expected Int64, got a value of type String Stacktrace: [1] StructWithSplatNew @ ./REPL[15]:3 [inlined] [2] _construct_structwithsplatnew() @ Main ./REPL[16]:1 [3] top-level scope @ REPL[18]:1 ``` As a result, compiler precision improvements can cause the test to fail, which is not intended. Fix the fieldtype of the struct to make sure it doesn't throw. 17 January 2022, 08:23:18 UTC
8667272 Small test cleanup (#43831) Deconflict some identifiers, make test run properly in Main module. 17 January 2022, 07:28:15 UTC
dd0c14b Fix getindex and setindex! on 0-dimensional reinterpretarray (#43819) 17 January 2022, 02:11:59 UTC
75a1d0f [LLVM] Add support for building experimental targets (#43822) 16 January 2022, 23:05:41 UTC
back to top