https://github.com/JuliaLang/julia

sort by:
Revision Author Date Message Commit Date
6fc3d2c add `reinterpret` example for lazy array containers (#42006) Co-authored-by: Kristoffer <kcarlsson89@gmail.com> 04 November 2022, 10:10:04 UTC
dfa127f Effects for symbol comparisons (Fix #47424) (#47425) Co-authored-by: Shuhei Kadowaki <40514306+aviatesk@users.noreply.github.com> 04 November 2022, 09:46:54 UTC
bf92e83 CircleCI caching: allow ftime to be ceil(ftime_req) in Base.stale_cachefile (#47433) * CircleCI caching: allow ftime to be ceil(ftime_req) in Base.stale_cachefile It appears that [caching functionalities](https://circleci.com/docs/caching/) provided by CircleCi, a leading CI/CD provider, can truncate timestamps to full seconds, resulting in re-compilations as below: ``` Rejecting stale cache file /root/.julia/compiled/v1.8/ComponentArrays/cYHSD_3rQji.ji (mtime 1.6673960929277816e9) because file /root/.julia/packages/ComponentArrays/YyD7i/src/ComponentArrays.jl ``` This PR relaxes the `is_stale` check to be robust against rounding-to-second timestamp mutations. I can provide a minimal CircleCI configuration file to reproduce if this is helpful. 04 November 2022, 09:40:10 UTC
6321e47 [CompilerSupportLibraries_jll] Update to new build (#47444) This fixes the dependency of `libgcc_s.1.dylib` (which is a light compatibility shim) on `x86_64-apple-darwin-libgfortran5`, to make the library properly loadable. 04 November 2022, 09:37:51 UTC
3b5c058 remove unnecessary inline annotations in ryu (#47445) 04 November 2022, 02:51:55 UTC
242cdc5 Add `@allocations` macro for getting number of allocations (#47367) * Add `@allocs` macro for getting number of allocations * Rename to `@allocations` * Add to docs * Add news for `@allocations` 04 November 2022, 02:00:14 UTC
fadcbef use `Base.return_types` instead of `Core.Compiler.return_type` (#47439) 04 November 2022, 01:16:54 UTC
d0ba259 small update to the docs about ENV (#47440) 03 November 2022, 16:22:54 UTC
b382456 Fix typo/boolean usage in stream eof comments (#46504) Co-authored-by: Jameson Nash <vtjnash@gmail.com> 03 November 2022, 14:20:51 UTC
d9bcc5f fix up `Conditional`-forwarding for vararg methods (#47438) 03 November 2022, 13:41:46 UTC
9f572b6 Ignore ANSI colour codes in printing Diagonal, etc (#47430) 03 November 2022, 13:14:22 UTC
65c6bda add an example of using `sizeof` on a struct with padding (#47342) 03 November 2022, 12:46:50 UTC
b0c2ad9 in operator with missing on Dicts keys and values (#46695) Co-authored-by: Kristoffer Carlsson <kcarlsson89@gmail.com> 03 November 2022, 11:03:20 UTC
4a1301a Order of operation in a composed function (#46696) Co-authored-by: Kristoffer Carlsson <kcarlsson89@gmail.com> 03 November 2022, 10:57:49 UTC
b8a77da Fix isdone for empty product iterators, fixes #43921 (#43947) * Fix the issue #43921 * add a test Co-authored-by: Kristoffer <kcarlsson89@gmail.com> 03 November 2022, 10:47:53 UTC
bfb0098 [docs/base] add a type tree for `Number` (#45975) * [docs/base] add a type tree https://github.com/JuliaLang/julia/issues/24741 Generated using the following code with manual modifications ```jl using AbstractTrees AbstractTrees.children(x::Type) = subtypes(x) print_tree(Number) ``` * [docs/base] mark "Abstract Type" * [docs/base] add a blurb for the tree * Update numbers.md Co-authored-by: Kristoffer Carlsson <kcarlsson89@gmail.com> 03 November 2022, 10:47:31 UTC
33731d9 Handle incorrect call type in abstract_invoke (#47379) Abstract interpreter was returning Any where calling the method would result in a MethodError, implying that the result should have been that the code was unreachable. Fixes #46839 03 November 2022, 10:46:06 UTC
10fcec9 [CompilerSupportLibraries_jll] Upgrade to libraries from GCC 12 (#45582) * [CompilerSupportLibraries_jll] Upgrade to libraries from GCC 12 * [CompilerSupportLibraries_jll] Fix soname of libgcc_s on x86_64-darwin * [CompilerSupportLibraries_jll] Update to v0.6.1 to get latest libgcc_s on x86_64-darwin * Add libstdc++ to list of preloaded libraries * Try to build on Windows with Buildkite * Debug printing * Revert "Try to build on Windows with Buildkite" This reverts commit f973004ec8566a2c0a864bb572440b419b82e394. * More debugging * Revert "More debugging" This reverts commit 8d05d3289d709a7ac0dc5d363cb5258c61efb58d. * Revert "Debug printing" This reverts commit 4c14b581a88eac131d2d4d23ca40b9c7a0d1fb9a. * Revert "Add libstdc++ to list of preloaded libraries" This reverts commit c2c182db043e97bd19247de4eda0501f35c7853b. * [CompilerSupportLibraries_jll] Use new build with fix for Windows libstdc++ 03 November 2022, 09:36:39 UTC
0ff2373 Avoid overflow in first/last (continue #45843) (#47186) * Avoid overflow in first/last * remove inbounds annotation * use checked_length 03 November 2022, 00:36:25 UTC
0ee0888 Improve documentation of unary `:` again (#47009) * Improve documentation of unary : again Co-authored-by: Hendrik Ranocha <ranocha@users.noreply.github.com> Co-authored-by: Kristoffer Carlsson <kcarlsson89@gmail.com> 02 November 2022, 20:46:18 UTC
2220eb5 add info on colon operator (#46892) Co-authored-by: Michael Abbott <32575566+mcabbott@users.noreply.github.com> Co-authored-by: Kristoffer Carlsson <kcarlsson89@gmail.com> 02 November 2022, 18:27:28 UTC
e6baa6b Remove complexity and ambiguity from function example (#47110) * Remove complexity and ambiguity from function example Co-authored-by: Kristoffer Carlsson <kcarlsson89@gmail.com> 02 November 2022, 18:26:05 UTC
b9da8a9 Merge pull request #47419 from JuliaLang/jn/cgmemmgr-init-mac cgmemmgr,macos: add missing shared_map_lock initialization 02 November 2022, 13:21:59 UTC
5d6d830 Stop incorrectly documenting the default sorting algorithms (#47303) * Stop incorrectly documenting the default sorting algorithms Co-authored-by: Petr Vana <petvana@centrum.cz> 02 November 2022, 13:17:51 UTC
67fedc8 Fix some typos found by codespell (#47423) Co-authored-by: Kristoffer Carlsson <kcarlsson89@gmail.com> 02 November 2022, 11:13:27 UTC
e304ad8 [deps] Do not build CLI of libgit2 (#47422) * [deps] Do not build CLI of libgit2 The build system of this component is broken upstream, we don't need it, let's just don't build it. * [LibGit2_jll] Update build which doesn't include the CLI 02 November 2022, 11:10:27 UTC
e9ca677 many types should define broadcastable(o) = Ref(o) (#44093) Co-authored-by: Fredrik Ekre <ekrefredrik@gmail.com> 02 November 2022, 10:40:37 UTC
df06375 Make `norm` handle `missing`s (#40790) 02 November 2022, 09:12:42 UTC
22fe28b Fix LAPACK test: don't call `sygvd!` on `undef`ed matrix (#47397) 02 November 2022, 09:04:50 UTC
02fe132 Fix error and formatting in subnormal docstring (#47035) * Fix error and formatting in subnormal docstring Fixup for #46899 02 November 2022, 08:44:44 UTC
8a9589d Initialize memory to satisfy `valgrind` (#47132) When debugging Julia with `valgrind`, the uninitialized value of `ch` used within an `if` statement causes many warnings; let's just initialize it. 02 November 2022, 08:42:49 UTC
9e1dac0 move src and dst to next buffer position (#47229) Co-authored-by: Gabriel Baraldi <baraldigabriel@gmail.com> 02 November 2022, 08:41:26 UTC
de5559f Simplify definition of ntuple (#34978) Since macro @ntuple already exists in Base.Cartesian, using it directly simplifies the definition of ntuple instead of an ad-hoc recreation here. Co-authored-by: Kristoffer Carlsson <kcarlsson89@gmail.com> 02 November 2022, 08:36:35 UTC
d553fed Add QuickSort's stability to news (#47330) * Add QuickSort's stability to news * Mention stability by default (thanks @petvana) 02 November 2022, 08:33:15 UTC
c9362a5 Improve error message for non-distinct static param names (#47368) For code generated by macros, it may be otherwise difficult to tell which parameters are not distinct. Fixes #46622 02 November 2022, 08:31:19 UTC
40e2ab6 Document the behavior of zip() (#47370) `zip(xss...)` terminates when its shortest argument does -- the initial case is infinite. https://github.com/JuliaLang/julia/issues/43821#issuecomment-1013816939 02 November 2022, 08:30:46 UTC
5378a31 support Unicode 15 via utf8proc 2.8 (#47392) * support Unicode 15 via utf8proc 2.8 * link PR in NEWS 02 November 2022, 08:28:13 UTC
c694139 don't warn about skipping tests that were not skipped (#47395) Co-authored-by: Lilith Hafner <Lilith.Hafner@gmail.com> 02 November 2022, 08:27:49 UTC
92e6d9c Bugfix; do not allocate more than needed (#47411) 02 November 2022, 08:21:40 UTC
59b52df Delete the `.github/workflows/statuses.yml` (#47426) 02 November 2022, 03:29:24 UTC
7de3033 🤖 Bump the NetworkOptions stdlib from 8ce1e10 to 791fa05 (#47412) Co-authored-by: Dilum Aluthge <dilum@aluthge.com> 02 November 2022, 03:27:17 UTC
55d4e45 Detect bad arguments to code_native (#47264) The types for `code_native()` must be given as a tuple of types. Added checking to `signature_type()` with `to_tuple_type()` to validate this. Fixes #45414 02 November 2022, 00:35:29 UTC
e31aec0 add hvncat to the cat see also section (#47398) 01 November 2022, 20:48:50 UTC
3661a08 cgmemmgr,macos: add missing shared_map_lock initialization 01 November 2022, 18:31:11 UTC
de7b6d5 Merge pull request #47402 from JuliaLang/kp/task-stacktraces Unrevert 46845 (Add `jl_print_task_backtraces()`) 01 November 2022, 16:45:22 UTC
abce8af hide kwcall methods from the backtrace (#47373) They are not strictly internal, but also not strictly external, so just assume they should be hidden. Perhaps, in the future, we should figure out a way to signal directly in the line number value that this line can be hidden, so only exactly the inner call gets hidden, but not errors that happen in the kwsorter itself (for example, for computing default values). Then all of these could print comparable backtraces (rather than just hiding the kwcall, as this PR does): ``` julia> f(; a, b) = error() f (generic function with 1 method) julia> f() ERROR: UndefKeywordError: keyword argument `a` not assigned Stacktrace: [1] f() @ Main ./REPL[1]:1 [2] top-level scope @ REPL[2]:1 julia> f(b=1) ERROR: UndefKeywordError: keyword argument `a` not assigned Stacktrace: [1] kwcall(::NamedTuple{(:b,), Tuple{Int64}}, ::typeof(f)) @ Main ./REPL[1]:1 [2] top-level scope @ REPL[3]:1 julia> f(a=1) ERROR: UndefKeywordError: keyword argument `b` not assigned Stacktrace: [1] kwcall(::NamedTuple{(:a,), Tuple{Int64}}, ::typeof(f)) @ Main ./REPL[1]:1 [2] top-level scope @ REPL[4]:1 julia> f(a=1, b=2) ERROR: Stacktrace: [1] error() @ Base ./error.jl:44 [2] f(; a::Int64, b::Int64) @ Main ./REPL[1]:1 [3] kwcall(::NamedTuple{(:a, :b), Tuple{Int64, Int64}}, ::typeof(f)) @ Main ./REPL[1]:1 [4] top-level scope @ REPL[5]:1 ``` Fix #47319 01 November 2022, 14:49:51 UTC
5707b25 Use an atomic to load `jl_all_tls_states` 01 November 2022, 14:29:09 UTC
70ecc4b loader_fputs convert to utf16 only for win console (#47406) We use loader_fputs to write error messages, and when we write them to files we want those files to be utf8. This should fix a broken test introduced in #47343. 01 November 2022, 12:43:00 UTC
1c963b6 Use an atomic to load `jl_n_threads` 01 November 2022, 12:09:45 UTC
e3eef14 Merge branch 'master' into kp/task-stacktraces 01 November 2022, 11:50:05 UTC
ebe3159 Make eachindex docstring more precise (#47389) 31 October 2022, 16:57:49 UTC
7212c03 Clean-up `Bidiagonal` mul/solve code (#47223) 31 October 2022, 16:54:42 UTC
f70b5e4 Update env.jl to add example usage for the ENV functionality (#47384) 31 October 2022, 04:01:00 UTC
734130a noteworthy difference from python (#47366) 31 October 2022, 03:55:22 UTC
b01fd33 more clarity on [] indexing (#47387) 30 October 2022, 02:52:08 UTC
37e0579 [LibGit2_jll] Update to v1.5.0 (#47382) 29 October 2022, 21:34:30 UTC
27201e5 Improve docs for `vcat`, `cat`, etc. (#46429) * improve docs for cat, hcat, vcat * add cross-references * spaces * tweaks in reply to own comments * fix last doctest * tweaks & simplifications + compat note for dims=Val((1,2)) 29 October 2022, 19:54:26 UTC
42907bf [CSL_jll] [MPFR_jll] Update builds to get fixed RUNPATHs (#47381) 29 October 2022, 08:36:36 UTC
91d2e09 [CSL_jll] [MPFR_jll] Update builds to get fixed RUNPATHs (#47381) 29 October 2022, 08:36:17 UTC
bf5f420 Fixed IR ordering of globals in argument lists (#47263) GlobalRefs and outerrefs can have side effects attached to them, which was not being considered during lowering. Fixes #46251 Co-authored-by: Jameson Nash <vtjnash@gmail.com> 29 October 2022, 02:58:38 UTC
9c563ad Fix rewrap-where for anonymous function parse (#47315) Was throwing away the tail of the list, dropping the result of where clauses. Fixes #45506 29 October 2022, 02:57:14 UTC
def946a datatype: move size into layout (#47170) saves maybe 1% of the sysimg size 29 October 2022, 02:56:58 UTC
58512ed make `samefile` of nonexistent files false (#47339) 29 October 2022, 02:44:26 UTC
9f843b8 make `load_library()` panic on some errors when `err=0` (#47343) load_library with `err=0` now panics on errors, provided that the file exists. It used to never panic on errors, leading to confusion between when cases the libjuliacodegen library had been intentionally removed and when it tried but failed to load it. Fixes #47027 28 October 2022, 23:04:14 UTC
bbdee0b inlining: Don't inline concrete-eval'ed calls whose result was too large (#47371) This undoes some of the choices made in #47283 and #47305. As Shuhei correctly pointed out, even with the restriction to `nothrow`, adding the extra flags on the inlined statements results in incorrect IR. Also, my bigger motivating test case turns out to be insufficiently optimized without the effect_free flags (which I removed in the final revision of #47305). I think for the time being, the best course of action here is to just stop inlining concrete-eval'ed calls entirely. The const result is available for inference, so in most cases the call will get deleted. If there's an important case we care about where this does not happen, we should take a look at that separately. 28 October 2022, 22:23:12 UTC
594d001 correct 0x literal info (#47348) Co-authored-by: Stefan Karpinski <stefan@karpinski.org> 28 October 2022, 20:25:08 UTC
3ead724 Fix RefArray(::AbstractArray{T}) method duplication (#47337) This removes the default argument in `RefArray(x::AbstractArray{T}, i::Integer=1)` such that it does not override `RefArray(x::AbstractArray{T}, i::Int=1)`. Refs: https://github.com/JuliaLang/julia/pull/43262#discussion_r1006209709 28 October 2022, 19:32:57 UTC
a4438b3 Fix list syntax typo in documentation.md (#47365) The end of the list item on "how to show object documentation in Juno" was broken in a separate paragraph 28 October 2022, 15:31:07 UTC
42563aa 🤖 Bump the Tar stdlib from 951955b to 6bfc114 (#47355) Co-authored-by: Dilum Aluthge <dilum@aluthge.com> 27 October 2022, 22:37:57 UTC
f71b839 lattice: Allow external lattice to have a say in how to widen (#47307) Currently, when e.g. a PartialStruct is not of interest to the lattice code, it just calls `widenconst` on it to pass it to the next lattice layer. This might be insufficient if an intermediate lattice layer has some other representation that is wider that the `PartialStruct`, but narrower than the corresponding `widenconst`. This adds `widenconst(::AbstractLatice, ::Any)` to allow the lattices to insert custom widening code. By default, it ends up calling `widenconst`, so there's no functional change in base, but custom lattices can make use of the extra hook. I'm not entirely sure that this is what we want the final interface to look like (I think it probably does too many type checks), but it works reasonably well and I think is good enough to experiment with. 27 October 2022, 16:23:54 UTC
e09e96e Avoid double copying in `nullspace` return value (#47340) 27 October 2022, 10:19:09 UTC
6baa9a6 inlining: Use concrete-eval effects if available (#47305) It is possible for concrete-eval to refine effects, but be unable to inline (because the constant is too large, c.f. #47283). However, in that case, we would still like to use the extra effect information to make sure that the optimizer can delete the statement if it turns out to be unused. There are two cases: the first is where the call is not inlineable at all. This one is simple, because we just apply the effects on the :invoke as we usually would. The second is trickier: If we do end up inlining the call, we need to apply the overriden effects to every inlined statement, because we lose the identity of the function as a whole. This is a bit nasty and I don't really like it, but I'm not sure what a better alternative would be. We could always refuse to inline calls with large-constant results (since we currently pessimize what is being inlined anyway), but I'm not sure that would be better. This is a simple solution and works for the case I have in practice, but we may want to revisit it in the future. 27 October 2022, 09:52:27 UTC
70c873e Returns -> Return (#47341) * Returns -> Return n many docstrings and comments, to follow the general recommendation for how docstrings should be phrases. Co-authored-by: Fredrik Ekre <ekrefredrik@gmail.com> 27 October 2022, 09:48:23 UTC
2ebe577 cfg_simplify: Properly handle deleted multi-predecessor (#47306) When deleting an empty block with multiple predecessors that has an entry in a sucessors phi node, said phi nodes needs to be updated to have an entry for every predecessor of the original deleted block. We had some handling to detect this case, but we didn't actually do the PhiNode modification, resulting in corrupted IR. 27 October 2022, 07:17:10 UTC
eca5512 Merge pull request #47336 from JuliaLang/jn/47246 subtype: fix miscount of Tuple Vararg matching 27 October 2022, 03:59:14 UTC
8ff3358 fix formatting in `identify_package` docstring (#47335) 27 October 2022, 01:18:16 UTC
0daab8a Fix loading of AMDGPU and CUDA (#47334) Co-authored-by: Valentin Churavy <vchuravy@users.noreply.github.com> Co-authored-by: Jameson Nash <vtjnash@gmail.com> Co-authored-by: Valentin Churavy <vchuravy@users.noreply.github.com> 27 October 2022, 01:17:11 UTC
19d06df fix inference of `split_rest` (#47329) Co-authored-by: Jakob Nissen <jakobnybonissen@gmail.com> 26 October 2022, 22:44:10 UTC
17515cd subtype: fix miscount of Tuple Vararg matching Fix #47246 26 October 2022, 21:39:39 UTC
d4af142 Merge pull request #47332 from giordano/mg/csl-win-staticlibs [CompilerSupportLibraries_jll] Update to v0.5.3 26 October 2022, 20:43:42 UTC
69fdf1f Update docs to use `Threads.threadpoolsize` instead `Base.threadpoolsize` (#47243) 26 October 2022, 19:37:29 UTC
900ffef [CompilerSupportLibraries_jll] Update to v0.5.3 The main difference compared to the previous build is the inclusion of some static libraries on Windows, needed for linking purposes. 26 October 2022, 18:10:31 UTC
7cbf55f Widen RangeIndex from Int to BitInteger (#43262) 26 October 2022, 14:07:34 UTC
48abb72 doc: more info on sizehint! (#47235) 26 October 2022, 08:07:45 UTC
b902123 follow up #47294, fix constprop remarks (#47321) xref: <https://github.com/JuliaLang/julia/pull/47294#discussion_r1003906388> 26 October 2022, 07:51:30 UTC
f4101e9 [Zlib_jll] Upgrade to v1.2.13 (#47174) * [Zlib_jll] Upgrade to v1.2.13 * [Zlib_jll] Update version number in tests 26 October 2022, 00:36:38 UTC
22ae80c Typo in an example (that was commented out) (#47323) Was using unicode closing double quote and missing a close paren. 25 October 2022, 23:42:33 UTC
d885fc7 Fix GC assertion on array of derived pointers (#47299) * Fix GC assertion on array of derived pointers * Add test 25 October 2022, 21:34:54 UTC
1a7a131 Emit safepoints at function entry (#41616) * Emit safepoints at function entry * Make safepoint emission on function entry a codegen feature * Hoist signal page lookup outside fence * Update src/cgutils.cpp * Fix rebase 25 October 2022, 21:32:41 UTC
a1ecc80 Add C/C++ diff: scope, modules, packages. (#37167) * Add C/C++ diff: scope, modules, packages. * Tweak C/C++ info & wrap lines. * More tweaks to the C++ differences. * Update doc/src/manual/noteworthy-differences.md Co-authored-by: Stefan Karpinski <stefan@karpinski.org> * correction: cwd is not a package repo by default. * Apply suggestions from code review Co-authored-by: Stefan Karpinski <stefan@karpinski.org> Co-authored-by: Viral B. Shah <ViralBShah@users.noreply.github.com> Co-authored-by: Jameson Nash <vtjnash@gmail.com> 25 October 2022, 21:27:56 UTC
a490197 Better Libdl.dlopen error when using non-standard extension (#46998) When trying to dlopen a file with non-standard extension (e.g. `foo.so` instead of `foo.dylib` when running on macOS), if this failed (e.g. because of a reference to an undefined symbol), then instead of printing the error message returned by `dlerror` with a helpful notice what went wrong, a message indicating something to the effect that "foo.so.dylib was not found" was shown, which was not helpful at all. To get the actual helpful error message, add a check so that when dlopen fails for a file that actually exists, we don't retry loading from a file with the standard extension attached, which might not even exist; instead we just give up. This matches what is already being done for relative paths. This patch simply copies the relevant check to also be applied to the case dealing with absolute paths. 25 October 2022, 20:15:02 UTC
35d1289 a couple of tidy ups on #47300 (#47320) Co-Authored-By: Jameson Nash <vtjnash+github@gmail.com> Co-authored-by: Jameson Nash <vtjnash+github@gmail.com> 25 October 2022, 07:47:10 UTC
4a45e8b test: make ComposedFunction inference test easier (#47317) This was written to be a very difficult compiler stress test, and be nearly close to failing at runtime too. While we like tests to be comprehensive, we do not like them to be a stress test on unrelated parts of the compiler simultaneously. From: #45925 Fix: #47179 25 October 2022, 04:34:02 UTC
c69dca4 🤖 Bump the Pkg stdlib from ca9f44265 to b11ca0acd (#47316) Co-authored-by: Dilum Aluthge <dilum@aluthge.com> 25 October 2022, 03:47:37 UTC
06b74c7 Update `partialsort!` docstring (#47192) 25 October 2022, 00:40:27 UTC
afbad45 Reduce size of Profile test on 32 bit to avoid OOM (#47313) 24 October 2022, 22:42:34 UTC
fe72f81 Standardize LLVM module verification (#46387) * hide away the llvm verification steps behind JL_VERIFY_PASSES in our llvm passes * verify modules before and after optimization runs * Verify passes when compiling with assertions 24 October 2022, 19:47:58 UTC
e50b32f GC docs (#46607) Co-authored-by: Christine H. Flood <christineflood@juliacomputing.com> Co-authored-by: Diogo Netto <d-netto@users.noreply.github.com> Co-authored-by: Valentin Churavy <vchuravy@users.noreply.github.com> 24 October 2022, 19:43:46 UTC
0645427 [InteractiveUtils] win: handle empty clipboard errors (#47311) Fix #46981 24 October 2022, 19:38:42 UTC
0c382c2 lowering: fix lhs-decls not handling parameters (#47274) This caused const to be dropped from declarations involving named tuple destructuring. Fixes #47168 24 October 2022, 14:04:36 UTC
back to top