2d468b1 | Keno Fischer | 23 July 2019, 03:19:56 UTC | Mutually recursive field types, the easy version This is an alternative to #32581, that is easier to implement, but more restrictivive. Here, the forward declaration must contain everything except for the field types: ``` incomplete type Foo{Bar} <: Baz; end ``` with it being an error to deviate from this specification when completing the type ``` struct Foo <: Baz; end # Error: Missing type parameter struct Foo{A, B} <: Baz; end # Error: Too many type parameters struct Foo{Qux} <: Baz; end # Error: Name of type parameter doesn't match struct Foo{Bar<:Int64} <: Baz; end # Error: Bounds of type parameter don't match struct Foo{Bar}; end; # Error supertype dosesn't match ``` This is easier because this way we have enough information for subtyping and type application and therefor do not need to delay this until the entire dependency graph is complete as we did in #32581. Of course this also means that we don't get the union feature that was requested in #269: ``` inomplete type U; end struct A; x::U; end struct B; x::U; end U = Union{A, B}; #ERROR ``` However, it could of course be emulated by wrapping the union type: ``` struct U data::Union{A, B} end ``` However, given the simplicity of this change and the difficulty of #32581, this seems like the way to go for the moment. We may want to revisit all this if we ever want to do computed field types, which will encounter similar challenges as #32581. Fixes #269. | 02 August 2019, 16:40:47 UTC |
45ba7aa | Keno Fischer | 13 July 2019, 23:12:48 UTC | Add incomplete flag to jl_datatype_t | 02 August 2019, 16:32:26 UTC |
b89af39 | Keno Fischer | 13 July 2019, 23:11:09 UTC | Add parsing for incomplete type | 02 August 2019, 16:32:26 UTC |
089cafc | Keno Fischer | 02 August 2019, 16:30:21 UTC | Fix pagetable1 sweeping on 32bit (#32741) If no pool allocations have occurred before the first GC (e.g. because MEMDEBUG was set), the pagetable1 that covers the entire (32bit) memory region on 32 bit machines may not have been initialized yet, while the corresponding sweep function was making the assumption that the passed in pagetable was non-null. Add the appropriate check for initialization. | 02 August 2019, 16:30:21 UTC |
1ad8178 | Keno Fischer | 02 August 2019, 16:16:42 UTC | Tasking for Emscripten/Wasm target (#32532) This is an implementation of Julia's coroutine/tasking system on top of the binaryen Asyncify transform [1] recently implemented by Alon Zakai. The wasm target is unusual in several ways: 1. It has an implicitly managed call stack that we may not modify directly (i.e. is only modified through calls/returns). 2. The event loop is inverted, in that the browser runs the main event loop and we get callbacks for events, rather than Julia being the main event loop. Asyncify takes care of the first problem by providing a mechanism to explicitly unwind and rewind the implicitly managed stack (essentially copying it to an explicitly managed stack - see the linked implementation for more information). For the second, I am currently using the ptls root_task to represent the browser event loop, i.e. yielding to that task will return control back to the browser and this is the task in which functions called by javascript will run unless they explicitly construct a task to run. As a result, julia code executed in the main task may not perform any blocking operations (though this is currently not enforced). I think this is a sensible setup since the main task will want to run some minor julia code (e.g. to introspect some data structures), but the bulk of the code will run in their own tasks (e.g. the REPL backend task). [1] https://github.com/WebAssembly/binaryen/blob/master/src/passes/Asyncify.cpp | 02 August 2019, 16:16:42 UTC |
86c2126 | Jeff Bezanson | 02 August 2019, 14:44:25 UTC | Merge branch 'jonnystorm-add-new-recvfrom-with-port' | 02 August 2019, 14:44:25 UTC |
0448a26 | Jonathan D. Storm | 27 July 2019, 03:57:12 UTC | Change `Sockets.recvfrom` to return both host and port | 02 August 2019, 14:43:53 UTC |
a607f83 | Valentin Churavy | 02 August 2019, 08:10:38 UTC | Merge pull request #31777 from nlw0/patch-1 Fixing IR dump code snippet in llvm.md | 02 August 2019, 08:10:38 UTC |
dc0bf52 | Jeff Bezanson | 02 August 2019, 03:01:50 UTC | fix #32703, bad ambiguity error (#32731) caused by 52838478aabe93120a0152ec5da733c9d8f0c39a | 02 August 2019, 03:01:50 UTC |
30b3636 | Daniel Karrasch | 01 August 2019, 19:37:14 UTC | fix test for sparse matrix assignment (#32756) | 01 August 2019, 19:37:14 UTC |
46c9a77 | Steven G. Johnson | 01 August 2019, 18:35:00 UTC | treat Pair as broadcast scalar (#32209) | 01 August 2019, 18:35:00 UTC |
4324531 | Morten Piibeleht | 01 August 2019, 17:11:06 UTC | Add docstest=only option to docs/make.jl (#32376) * Bump Documenter to 0.23.1 * Documenter now requires docstring doctests to have their own metadata in the corresponding module. Remove all the now redundant at-meta blocks from the standard library .md files and add the necessary module-level metadata in make.jl | 01 August 2019, 17:11:06 UTC |
eee51db | Matt Bauman | 01 August 2019, 17:00:06 UTC | Remove straggling "default to scalar" broadcast doc (#32750) | 01 August 2019, 17:00:06 UTC |
722a2e2 | Nicolau Werneck | 20 April 2019, 00:09:56 UTC | Made `_dump_function` parameter `debuginfo` optional and fixed IR dump example on llvm.md | 01 August 2019, 13:12:05 UTC |
e9a375a | Xiang Liu | 01 August 2019, 02:08:05 UTC | Fix #32514, add link to DimensionMismatch (#32745) | 01 August 2019, 02:08:05 UTC |
927f7d8 | Christian Peel | 31 July 2019, 18:03:25 UTC | docstrings for dllist, dlpath (#32501) (#32507) | 31 July 2019, 18:03:25 UTC |
9d4e8ae | Tim Holy | 31 July 2019, 09:37:09 UTC | Move `functionloc` to methodshow.jl and make it Revise-aware (#32708) A user question revealed that `@edit foo(arg)` is not Revise-aware for most editors. This PR changes that. The move to a new file is motivated by bootstrap issues. `functionloc` is not really reflection in the sense of the compiler, so this doesn't seem too inappropriate. | 31 July 2019, 09:37:09 UTC |
5aea456 | Valentin Churavy | 30 July 2019, 22:11:00 UTC | Merge pull request #32734 from jpsamaroo/jps/wasm-addrspaces Add LLVM patches for WebAssembly | 30 July 2019, 22:11:00 UTC |
9b8fa75 | Jeff Bezanson | 30 July 2019, 21:15:40 UTC | synchronize news and history with 1.2 branch (#32740) | 30 July 2019, 21:15:40 UTC |
a4f17c1 | Angelo Klin | 30 July 2019, 15:11:43 UTC | Remove doubled "the the" on line 540 (#32735) Remove a typo doubling "the" on line 540 | 30 July 2019, 15:11:43 UTC |
f563100 | Julian P Samaroo | 13 May 2019, 05:00:00 UTC | Add LLVM patches for WebAssembly | 30 July 2019, 12:28:55 UTC |
25eb8c6 | Jim Garrison | 30 July 2019, 07:16:53 UTC | Implement isdiag(::Bidiagonal), add tests (#32694) | 30 July 2019, 07:16:53 UTC |
442d159 | Sebastian Stock | 28 July 2019, 18:28:27 UTC | Small fixes in LinearAlgebra documentation (#32714) * Small fixes in LinearAlgebra documentation * Fix doctests for eigen | 28 July 2019, 18:28:27 UTC |
a811842 | Matt Bauman | 28 July 2019, 15:54:46 UTC | Add compat note for mod(n, range), followup to #32628 (#32669) | 28 July 2019, 15:54:46 UTC |
89b8057 | Valentin Churavy | 27 July 2019, 13:00:17 UTC | Merge pull request #32145 from yhls/yhls/fixrenaming fix bug in block renaming for dead code elimination | 27 July 2019, 13:00:17 UTC |
3829e8f | Leon Shen | 25 May 2019, 16:10:55 UTC | fix bug in block renaming for dead code elimination | 27 July 2019, 03:18:34 UTC |
20ef262 | Jim Garrison | 27 July 2019, 00:02:47 UTC | Implement isdiag(::Tridiagonal), add related tests (#32692) | 27 July 2019, 00:02:47 UTC |
d0e11cf | Daniel Karrasch | 26 July 2019, 23:45:36 UTC | fix generic ldiv! for CholeskyPivoted (#32593) * fix generic ldiv! for CholeskyPivoted * add back one empty line to make backport easier * don't interfere with previous tests | 26 July 2019, 23:45:36 UTC |
16fdcf7 | Jerry Ling | 26 July 2019, 23:24:45 UTC | Add read file example for try (#32508) | 26 July 2019, 23:24:45 UTC |
abae4a8 | Alfredo Braunstein | 26 July 2019, 23:23:34 UTC | add the sprand change to NEWS.md (#32695) | 26 July 2019, 23:23:34 UTC |
be74956 | Katharine Hyatt | 26 July 2019, 18:16:22 UTC | Merge pull request #32691 from JuliaLang/mbauman-patch-2 Add minor code formatting to GC docs | 26 July 2019, 18:16:22 UTC |
4155ea8 | Katharine Hyatt | 26 July 2019, 16:18:47 UTC | Tests for sppromote pass-throughs (#32679) | 26 July 2019, 16:18:47 UTC |
4ed302d | Matt Bauman | 26 July 2019, 14:49:42 UTC | Add minor code formatting to GC docs The `_`s here were rendering as italics. Simple fix. | 26 July 2019, 14:49:42 UTC |
472b0a7 | 六月初六 | 26 July 2019, 14:00:04 UTC | `import` can operates on multiple names. (#32676) | 26 July 2019, 14:00:04 UTC |
8e66e89 | Morten Piibeleht | 26 July 2019, 13:57:59 UTC | Remove references to the doc"" string macro (#32409) | 26 July 2019, 13:57:59 UTC |
daa992a | Marco | 26 July 2019, 13:08:43 UTC | Remove unnecessary and slow Bidiagonal times Vector fallback (#32535) * remove fallback * removing other unnecessary fallbacks | 26 July 2019, 13:08:43 UTC |
8141750 | Valentin Churavy | 26 July 2019, 12:55:50 UTC | Merge pull request #32674 from JuliaLang/vc/pure fix propagation of pure and const results | 26 July 2019, 12:55:50 UTC |
3e5ffb9 | Valentin Churavy | 24 July 2019, 19:06:28 UTC | fix propagation of pure and const results | 25 July 2019, 02:48:47 UTC |
a8a567e | Daniel Karrasch | 24 July 2019, 21:15:19 UTC | [Statistics] fix type determination in corm (#32271) * [Statistics] fix type determination in corm * remove obsolete typeof * use first element(s) for type initialization * add test for inhomogeneous data and for overflow * fix test with NaN | 24 July 2019, 21:15:19 UTC |
e6a897e | Jeff Bezanson | 24 July 2019, 20:09:47 UTC | combine doc strings for `dot` (#32540) | 24 July 2019, 20:09:47 UTC |
2182389 | Michael Abbott | 24 July 2019, 12:43:38 UTC | mod(n, range) for integers (#32628) `mod` now accepts a unit range as the second argument to easily perform offset modular arithmetic to ensure the result is inside the range | 24 July 2019, 12:43:38 UTC |
9daaed6 | Matt Bauman | 23 July 2019, 21:44:52 UTC | add CartesianIndex() for Ref getindex and setindex! (#32653) * add CartesianIndex() for Ref getindex and setindex! * fix typo * add NEWS.md entry * move definitions later in the load sequence | 23 July 2019, 21:44:52 UTC |
6e4acaa | Kevin Squire | 23 July 2019, 20:48:57 UTC | Make UUIDs act as scalars when broadcasting (#32661) | 23 July 2019, 20:48:57 UTC |
f2513a8 | Katharine Hyatt | 23 July 2019, 05:06:09 UTC | Test for complex(SparseMatrixCSC) (#32657) | 23 July 2019, 05:06:09 UTC |
6c11e7c | Alex Arslan | 23 July 2019, 01:46:17 UTC | Set VERSION to 1.3.0-alpha (#32656) | 23 July 2019, 01:46:17 UTC |
3f53fb0 | Katharine Hyatt | 23 July 2019, 00:11:44 UTC | Two missing tests for SparseColumnView (#32654) | 23 July 2019, 00:11:44 UTC |
c86700d | Jeff Bezanson | 22 July 2019, 21:02:32 UTC | add experimental `@spawn` macro to Base.Threads (#32600) | 22 July 2019, 21:02:32 UTC |
684973e | Jeff Bezanson | 22 July 2019, 19:30:43 UTC | make collect interval thread-local only (#32633) This allows it to expand naturally with the number of threads, giving much better scalability in GC-heavy workloads. This way gc_init doesn't need to know nthreads. fixes #32472 | 22 July 2019, 19:30:43 UTC |
ddd3f0f | Jeff Bezanson | 22 July 2019, 17:57:12 UTC | fix #32582, type intersection bug in unions (#32590) Caused by 4f8a7b965a98c307f48820c35ca98f9d754096a9; reverts part of that. | 22 July 2019, 17:57:12 UTC |
544123c | Jeff Bezanson | 22 July 2019, 17:40:57 UTC | deprecate Distributed `@spawn` to `@spawnat :any` (#32638) | 22 July 2019, 17:40:57 UTC |
17c174a | Jeff Bezanson | 22 July 2019, 14:40:35 UTC | fix #32626, allow parsing `'a'..'b'` (#32634) An error for this was added to fix #3348, but it seems there should be some exceptions. | 22 July 2019, 14:40:35 UTC |
617bd1d | Bogumił Kamiński | 22 July 2019, 13:21:06 UTC | move definitions later in the load sequence | 22 July 2019, 13:21:06 UTC |
1113baa | Bogumił Kamiński | 22 July 2019, 13:10:59 UTC | add NEWS.md entry | 22 July 2019, 13:10:59 UTC |
7b78b6f | Bogumił Kamiński | 22 July 2019, 13:05:54 UTC | fix typo | 22 July 2019, 13:05:54 UTC |
02d9284 | Bogumił Kamiński | 22 July 2019, 12:53:15 UTC | add CartesianIndex() for Ref getindex and setindex! | 22 July 2019, 12:53:15 UTC |
db1fc0a | Keno Fischer | 22 July 2019, 01:18:29 UTC | Check number of arguments passed to jl_svec* functions (#32643) When modifying Julia's builtin types, it's really easy to make mistakes here. Now the compiler will check for you. | 22 July 2019, 01:18:29 UTC |
5148d2f | Jeff Bezanson | 21 July 2019, 20:12:11 UTC | widen int16 task heap counters (#32644) These could easily overflow with large numbers of tasks. | 21 July 2019, 20:12:11 UTC |
d15fc9d | Gilles Peiffer | 21 July 2019, 19:21:26 UTC | Fix explanation for the product of BigInts in a vector (#32649) | 21 July 2019, 19:21:26 UTC |
c49ba0d | Stefan Karpinski | 21 July 2019, 02:12:25 UTC | RNG: rename get_local_rng => default_rng (#32641) | 21 July 2019, 02:12:25 UTC |
e25e1d4 | Stefan Karpinski | 21 July 2019, 02:07:22 UTC | fix compiler warning (fix #32640) (#32642) | 21 July 2019, 02:07:22 UTC |
6f4b6fb | ZacNugent | 20 July 2019, 21:39:24 UTC | allow for newlines in splitdrive (#32543) | 20 July 2019, 21:39:24 UTC |
e1439a3 | Daniel Karrasch | 20 July 2019, 15:24:05 UTC | add rdiv! for Cholesky(Pivoted) (#32594) * add rdiv! for Cholesky(Pivoted) * also test L-branches | 20 July 2019, 15:24:05 UTC |
b9b099f | Jeff Bezanson | 20 July 2019, 15:19:19 UTC | fix #32620, crash when assigning to static parameter (#32623) | 20 July 2019, 15:19:19 UTC |
bb8fefb | Alexander Seiler | 20 July 2019, 03:31:21 UTC | Avoid `typemax` checks for non-standard integers (#32631) | 20 July 2019, 03:31:21 UTC |
5c7ed66 | Jameson Nash | 19 July 2019, 21:28:01 UTC | Random,threads: allocate state at runtime for each thread (#32407) The `Random.GLOBAL_RNG` is now a singleton placeholder object which implements the prior `Random` public API for MersenneTwister as a shim to support existing clients until Julia v2.0. | 19 July 2019, 21:28:01 UTC |
79a5793 | Mason Protter | 18 July 2019, 23:22:56 UTC | Clarify that MARCH should be set in Make.user (#32621) I know this make seem like a somewhat redundant documentation addition, but when building julia I was confused by this and thought I was supposed to set `MARCH` in `Make.inc`, not `Make.user` So I thought this may help others. | 18 July 2019, 23:22:56 UTC |
adbb1fe | Jerry Ling | 18 July 2019, 09:35:35 UTC | fix ast doc typo (#32619) | 18 July 2019, 09:35:35 UTC |
0a12944 | Keno Fischer | 17 July 2019, 18:36:52 UTC | Fix #32579 - Issue in typeconstraint accumulation (#32605) The bug here is a bit subtle, but perhaps best illustrated with the included test case: ``` function f32579(x::Int64, b::Bool) if b x = nothing end if isa(x, Int64) y = x else y = x end if isa(y, Nothing) z = y else z = y end return z === nothing end ``` The code just after SSA conversion looks like: ``` 2 1 ─ goto #3 if not _3 3 2 ─ %2 = Main.nothing::Core.Compiler.Const(nothing, false) 5 3 ┄ %3 = φ (#2 => %2, #1 => _2)::Union{Nothing, Int64} │ %4 = (%3 isa Main.Int64)::Bool └── goto #5 if not %4 6 4 ─ %6 = π (%3, Int64) └── goto #6 8 5 ─ %8 = π (%3, Nothing) 10 6 ┄ %9 = φ (#4 => %6, #5 => %8)::Union{Nothing, Int64} │ %10 = (%9 isa Main.Nothing)::Bool └── goto #8 if not %10 11 7 ─ %12 = π (%9, Nothing) └── goto #9 13 8 ─ %14 = π (%9, Int64) 15 9 ┄ %15 = φ (#7 => %12, #8 => %14)::Union{Nothing, Int64} │ %16 = (%15 === Main.nothing)::Bool └── return %16 ``` Now, we have special code in SROA (despite it not really being an SROA transform) that looks at `===` and replaces it by a nest of phis of booleans. The reasoning for this transform is that it eliminates a use of a value where we only care about the type and not the content, thus making it more likely that the value will subsequently be eligible for SROA. In addition, while it goes along resolving which values feed into any particular phi, it accumulates and type conditions it encounters along the way. Thus in the example above, something like the following happens: - We look at %14, which πs to %9 with an Int64 constraint, so we only consider the #4 predecessor for %9 (due to the constraint), until we get to %3, where we again only consider the #1 predecessor, where we find the argument (of type Int64) and conclude the result is always false - Now we pop the next item of the stack from our original phi, look at %12, which πs to %9 with a Nothing constraint. At this point we used to terminate the search because we already looked at %9. However, crucially, we looked at %9 only with an Int64 constraint, so we missed the fact that `nothing` was in fact a possible value for this phi. The result was a missing entry in the generated phi node: ``` 1 ─ goto #3 if not b 2 ─ %2 = Main.nothing::Core.Compiler.Const(nothing, false) 3 ┄ %3 = φ (#1 => false)::Bool │ %4 = φ (#2 => %2, #1 => _2)::Union{Nothing, Int64} │ %5 = (%4 isa Main.Int64)::Bool └── goto #5 if not %5 4 ─ %7 = π (%4, Int64) └── goto #6 5 ─ %9 = π (%4, Nothing) 6 ┄ %10 = φ (#4 => %3, #5 => %3)::Bool │ %11 = φ (#4 => %7, #5 => %9)::Union{Nothing, Int64} │ %12 = (%11 isa Main.Nothing)::Bool └── goto #8 if not %12 7 ─ goto #9 8 ─ nothing::Nothing 9 ┄ %16 = φ (#7 => %10, #8 => %10)::Bool └── return %16 ``` (note the missing #2 predecessor in phi node %3), which would result in an undefined value at runtime, though in this case LLVM would have taken advantage of that to just return 0: ``` define i8 @julia_f32579_16051(i64, i8) { top: ; @ REPL[1]:15 within `f32579' ret i8 0 } ``` Compare this now to the optimized IR with this patch: ``` 1 ─ goto #3 if not b 2 ─ %2 = Main.nothing::Core.Compiler.Const(nothing, false) 3 ┄ %3 = φ (#2 => true, #1 => false)::Bool │ %4 = φ (#2 => %2, #1 => _2)::Union{Nothing, Int64} │ %5 = (%4 isa Main.Int64)::Bool └── goto #5 if not %5 4 ─ %7 = π (%4, Int64) └── goto #6 5 ─ %9 = π (%4, Nothing) 6 ┄ %10 = φ (#4 => %3, #5 => %3)::Bool │ %11 = φ (#4 => %7, #5 => %9)::Union{Nothing, Int64} │ %12 = (%11 isa Main.Nothing)::Bool └── goto #8 if not %12 7 ─ goto #9 8 ─ nothing::Nothing 9 ┄ %16 = φ (#7 => %10, #8 => %10)::Bool └── return %16 ``` The %3 phi node has its missing entry and the generated LLVM code correctly returns `b`: ``` define i8 @julia_f32579_16112(i64, i8) { top: %2 = and i8 %1, 1 ; @ REPL[1]:15 within `f32579' ret i8 %2 } ``` | 17 July 2019, 18:36:52 UTC |
261e2b9 | Jeff Bezanson | 17 July 2019, 16:33:21 UTC | make `IOStream` thread-safe (#32421) | 17 July 2019, 16:33:21 UTC |
29c08a7 | Jeff Bezanson | 17 July 2019, 01:53:40 UTC | fix #22298, race condition setting compiled function pointers (#32604) Should also fix e.g. the failure in https://build.julialang.org/#/builders/22/builds/3876 | 17 July 2019, 01:53:40 UTC |
b4a358b | Páll Haraldsson | 16 July 2019, 23:49:38 UTC | Drop extra word (#32598) [skip ci] | 16 July 2019, 23:49:38 UTC |
80361a7 | Jeff Bezanson | 16 July 2019, 20:18:50 UTC | fix #32575, channel trying to switch to task on another thread (#32584) | 16 July 2019, 20:18:50 UTC |
9b987cc | Gunnar Farnebäck | 16 July 2019, 20:06:32 UTC | Fix size of buffer passed to GetModuleFileNameW. (#32596) | 16 July 2019, 20:06:32 UTC |
dfc645c | Jeff Bezanson | 16 July 2019, 18:09:38 UTC | avoid finalizing LLVMContext on exit (#32588) This avoids a possible crash if another thread is trying to compile something. | 16 July 2019, 18:09:38 UTC |
f578ada | Jeff Bezanson | 16 July 2019, 03:26:09 UTC | adjust some gc heuristics (#32556) - trigger a full collection if live size grows a lot and stays there - use a larger minor collect interval based on live_bytes helps #32472 and #28986 | 16 July 2019, 03:26:09 UTC |
5366148 | Jameson Nash | 16 July 2019, 03:09:54 UTC | threads: fix scheduler variable confusion (#32551) gotta keep system vs runtime and global vs local straight! fix #32511 | 16 July 2019, 03:09:54 UTC |
ba03920 | Valentin Churavy | 15 July 2019, 22:44:54 UTC | Merge pull request #32518 from JuliaLang/vc/nvptx_no_patches [LLVM8] Prepare debuginfo emission for NVPTX | 15 July 2019, 22:44:54 UTC |
cb37580 | Kenta Sato | 15 July 2019, 15:41:24 UTC | fix the docstring of min_enabled_level (#32573) | 15 July 2019, 15:41:24 UTC |
fe9de99 | Nathan Daly | 15 July 2019, 05:14:09 UTC | Stop detaching process for precompiling modules. (#32384) This means that interrupting the precompilation (ctrl-c) or killing Julia will kill the process that is doing the precompilation. This is useful because currently, interrupting julia while it is precompiling a module will leave that precompilation running in the background. For large packages that take a long time to precompile, this can be frustrating, especially because the user most likely interrupted the precompilation because they _didn't_ want it to happen (e.g. maybe they realized they forgot to change something in the code). | 15 July 2019, 05:14:09 UTC |
a1165b8 | Jameson Nash | 14 July 2019, 21:21:34 UTC | threads,win64: fix safepoint handler (#32570) On Win64, we need the top stack frame to have a personality to catch exceptions in the event that we run into a GC safepoint (such as jl_mutex_wait) before we have Julia code on the stack. | 14 July 2019, 21:21:34 UTC |
7b53c0d | Alexander Seiler | 14 July 2019, 16:04:26 UTC | Use variable Acolptr consistently (#32576) | 14 July 2019, 16:04:26 UTC |
faefe2a | Fredrik Ekre | 13 July 2019, 08:34:33 UTC | Fix PDF doc build. (#32563) Julias Markdown treats double backticks as inline math, which makes the pdf doc build fail due to the $. | 13 July 2019, 08:34:33 UTC |
2964312 | Jeff Bezanson | 12 July 2019, 21:38:12 UTC | fix #21360, make global bindings thread safe (#32370) | 12 July 2019, 21:38:12 UTC |
59ee493 | Alexander Seiler | 12 July 2019, 15:41:12 UTC | Fix typo for `trans` comparison in densemv (#32561) | 12 July 2019, 15:41:12 UTC |
24efaa4 | Keno Fischer | 11 July 2019, 19:19:56 UTC | Fix various alignment violations (#32513) The C standard forbids accessing pointers that are not sufficiently aligned for their base type under the penalty of undefined behavior. On most architectures we support, this doesn't make a difference (except if the compiler tries to SIMD things), but it does matter on some (e.g. SAFE_HEAP mode in wasm), so make some progress on using the proper unaligned accessors in various places that use underaligned pointers. | 11 July 2019, 19:19:56 UTC |
c690489 | Jameson Nash | 11 July 2019, 19:11:17 UTC | io: corrected error handling for streams (#32429) After #32309, we became much more eager to forget about normal errors and more eager to throw an EOFError at the wrong place. This is intended to fix that oversight. | 11 July 2019, 19:11:17 UTC |
1a37227 | Jeff Bezanson | 11 July 2019, 18:29:13 UTC | thread safety fix in compiling regexes (#32544) | 11 July 2019, 18:29:13 UTC |
f5a50be | Mathieu Besançon | 10 July 2019, 15:11:32 UTC | Future doc (#31737) | 10 July 2019, 15:11:31 UTC |
073cbbb | Takafumi Arakaki | 10 July 2019, 01:50:28 UTC | Add empty(::NamedTuple) (#32534) | 10 July 2019, 01:50:27 UTC |
acc2b99 | Valentin Churavy | 07 July 2019, 16:02:51 UTC | Set dwarf source language to Julia | 09 July 2019, 21:39:13 UTC |
46f8365 | Valentin Churavy | 07 July 2019, 15:40:29 UTC | Make debuginfo emission configurable | 09 July 2019, 21:38:59 UTC |
13db0dc | Jameson Nash | 09 July 2019, 20:32:41 UTC | partr: fix rare segfault (#32530) The write to 'prio' might be arbitrarily delayed, after some other thread has already popped the task. This commit ensures that all writes to that field are always behind the same lock as the modification to the queue itself. fix #32520 | 09 July 2019, 20:32:41 UTC |
f18808d | Hossein Pourbozorg | 09 July 2019, 08:56:09 UTC | doc: fix typo in sort! docstring (#32533) | 09 July 2019, 08:56:09 UTC |
f552fb2 | Peter F Arndt | 08 July 2019, 18:17:40 UTC | Add methods min, max, minmax taking only single Dates.AbstractTime (#32525) Methods `min`, `max` and `minmax` should also be able to take just one `Dates.AbtractTime` argument. See discussion: https://discourse.julialang.org/t/max-and-min-of-single-dates/26074 | 08 July 2019, 18:17:40 UTC |
33a6b99 | tvrtadx | 08 July 2019, 15:25:49 UTC | rational: `signbit(den)` instead of `sign(den) < 0` (#32523) | 08 July 2019, 15:25:49 UTC |
a25e722 | Jeff Bezanson | 08 July 2019, 10:03:05 UTC | fix #32499, regression in struct expr in assignment rhs (#32512) caused by c6c3d72d1cbddb3d27e0df0e739bb27dd709a413 This is a bit of a hack that just moves things around a bit to get a structure more likely to work. | 08 July 2019, 10:03:05 UTC |
d611e1c | janEbert | 08 July 2019, 06:12:20 UTC | docs: Change `1:size(A, i)` to `axes(A, i)` in at-nloops docs (#32519) | 08 July 2019, 06:12:20 UTC |
c351391 | Keno Fischer | 07 July 2019, 20:13:54 UTC | Yet another LLVM patch (#32506) The previous iteration of this wasn't quite right and I didn't catch it before merging it in julia (or upstream for that matter), so here's the fixup patch. | 07 July 2019, 20:13:54 UTC |
89baf83 | Davide Lasagna | 06 July 2019, 21:10:43 UTC | added *larf and *larfg LAPACK wrappers (#32390) * added LAPACK wrappers for *larf and *larfg routines * add fixes suggested by vtjnash | 06 July 2019, 21:10:43 UTC |
a9ad6c2 | Jeff Bezanson | 06 July 2019, 15:55:01 UTC | fix #32488, type intersection regression (#32509) Issue was caused by 74305bf2c43546bf76843b72ff0d268a3fe16920, so this reverts part of the new logic from there. | 06 July 2019, 15:55:01 UTC |