From 46f1a817f6640dcda839797bf1e3374cde0db485 Mon Sep 17 00:00:00 2001 From: Yichao Yu Date: Sat, 26 Nov 2016 10:17:54 -0500 Subject: [PATCH] A few fixes for 0.6 * `num` and `den` rename * `takebuf_array` rename * Fix `$` in the test --- README.md | 4 ++++ src/Compat.jl | 12 ++++++++++++ test/runtests.jl | 16 +++++++++++++--- 3 files changed, 29 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index e8f01d2b0..8ffa9491e 100644 --- a/README.md +++ b/README.md @@ -126,6 +126,10 @@ Currently, the `@compat` macro supports the following syntaxes: * `$` is now `xor` or `⊻` [#18977](https://github.com/JuliaLang/julia/pull/18977). +* `num` and `den` are now `numerator` and `denominator` [#19246](https://github.com/JuliaLang/julia/pull/19246). + +* `takebuf_array` is now a method of `take!`. `takebuf_string(io)` becomes `String(take!(io))` [#19088](https://github.com/JuliaLang/julia/pull/19088). + ## New macros * `@static` has been added [#16219](https://github.com/JuliaLang/julia/pull/16219). diff --git a/src/Compat.jl b/src/Compat.jl index 453ee979f..db5ce6a7a 100644 --- a/src/Compat.jl +++ b/src/Compat.jl @@ -1686,4 +1686,16 @@ if !isdefined(Base, :xor) export xor, ⊻ end +# julia#19246 +if !isdefined(Base, :numerator) + const numerator = num + const denominator = den + export numerator, denominator +end + +# julia#19088 +if VERSION < v"0.6.0-dev.1256" + Base.take!(io::Base.AbstractIOBuffer) = takebuf_array(io) +end + end # module diff --git a/test/runtests.jl b/test/runtests.jl index 86d55f8ed..76fe79a17 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -849,7 +849,7 @@ mktempdir() do dir verbose && println("$name write(::IOBuffer, ...)") @compat to = IOBuffer(UInt8[convert(UInt8, _) for _ in text], false, true) write(to, io()) - @test takebuf_string(to) == text + @test String(take!(to)) == text cleanup() end @@ -1106,7 +1106,7 @@ end for (Fun, func) in [(:AndFun, :&), (:OrFun, :|), - (:XorFun, :$), + (:XorFun, :⊻), (:AddFun, :+), (:DotAddFun, :.+), (:SubFun, :-), @@ -1250,7 +1250,7 @@ end let io = IOBuffer(), s = "hello" unsafe_write(io, pointer(s), length(s)) - @test takebuf_string(io) == s + @test String(take!(io)) == s end @static if VERSION ≥ v"0.4" @@ -1512,3 +1512,13 @@ end @test xor(1,5) == 4 @test 1 ⊻ 5 == 4 + +# julia#19246 +@test numerator(1//2) === 1 +@test denominator(1//2) === 2 + +# julia#19088 +let io = IOBuffer() + write(io, "aaa") + @test take!(io) == UInt8['a', 'a', 'a'] +end