[julia-users] Re: How to fix package after breaking change in 0.4?

2015-04-19 Thread Seth
Fixed. The issue was that the PQ was being generated based on version, both 
branches of the conditional that tested against VERSION were being 
compiled, and I introduced the @compat syntax only in the branch that 
actually needed it. That meant that the other branch (applicable to 0.3) 
was failing compile. Sorry for the bother.



On Sunday, April 19, 2015 at 6:20:28 PM UTC-7, Seth wrote:
>
> Sorry about this: please don't disregard. It is possible that the 
> TypeError here is being generated during compilation, not during execution, 
> in which case I still need help :)
>
>
>
> On Sunday, April 19, 2015 at 4:54:08 PM UTC-7, Seth wrote:
>>
>> Disregard - this appears to be another issue. Will post separately.
>>
>> On Sunday, April 19, 2015 at 4:17:42 PM UTC-7, Seth wrote:
>>>
>>> Thanks, Matt - this is very helpful.
>>>
>>> I'm running into what a problem with PriorityQueue in Base.Collections, 
>>> though. I changed
>>>
>>>  PriorityQueue((Float64,Array{Edge,1},Int), Float64) 
>>>
>>> to
>>>
>>>  
>>> PriorityQueue(@compat(Tuple{Float64,Array{Edge,1},Int}), Float64)
>>>
>>> and am getting an error:
>>>
>>> ERROR: TypeError: apply_type: in PriorityQueue, expected Type{T}, got 
>>> Tuple{DataType,DataType,DataType}
>>>
>>> What am I doing wrong?
>>>
>>>
>>> On Sunday, April 19, 2015 at 2:17:26 PM UTC-7, Matt Bauman wrote:

 I think this is what your after (for Foo = Int and Bar = Float64):

 julia> Tuple{Int,Float64}[]
 0-element Array{Tuple{Int64,Float64},1}


 julia> push!(ans, (1, 2.))
 1-element Array{Tuple{Int64,Float64},1}:
  (1,2.0)

 Documentation is unfortunately still in the process of being updated. 
  Basically, anywhere you had a tuple of types, you now must write 
 `Tuple{Int, Float64}` instead of `(Int, Float64)`.  In cases where you had 
 a vararg tuple specification, you now write `Tuple{Int, Vararg{Float64}}` 
 instead of `(Int, Float64...)`.  That latter vararg syntax is still up for 
 debate.

 On the plus side, you no longer need to work around constructing tuples 
 by splatting: (1, (2,3)…) now works as you would expect it to.  And 
 there's 
 no longer a strange type/value duality to ().

 On Sunday, April 19, 2015 at 5:06:00 PM UTC-4, Seth wrote:
>
> Following up:
>
> How does one now write
>
> foo = (Foo, Bar)[]
>
> ?
>
> Sorry for all the questions here. I really don't understand the 
> changes that were made and I'd like to get my package working again as 
> quickly as possible.
>
> Are there docs anywhere (written for novices, that is) on what changed 
> and how to adapt?
>
>
> On Sunday, April 19, 2015 at 12:09:27 PM UTC-7, Tony Kelman wrote:
>>
>> That will cause the code to not work on 0.3. To get code that works 
>> on both 0.3 and 0.4, use the Compat.jl package, and
>>
>>  function _make_simple_undirected_graph{T<:Integer}(n::T, 
>> edgelist::Vector{@compat(Tuple{T,T})}) 
>>
>>
>> On Sunday, April 19, 2015 at 11:58:42 AM UTC-7, Avik Sengupta wrote:
>>>
>>>
>>> Try this: 
>>>
>>>  function _make_simple_undirected_graph{T<:Integer}(n::T, 
>>> edgelist::Vector{Tuple{T,T}}) 
>>>
>>> On Monday, 20 April 2015 00:18:33 UTC+5:30, Seth wrote:

 Could someone please explain what's going on here and what I need 
 to do to fix my package with the latest 0.4 tuple changes?

 Here's the error (from pkg.julialang.org):

 ERROR: LoadError: LoadError: LoadError: TypeError: apply_type: in 
 alias, expected Type{T}, got Tuple{TypeVar,TypeVar}
  in include at ./boot.jl:250
  in include_from_node1 at ./loading.jl:129
  in include at ./boot.jl:250
  in include_from_node1 at ./loading.jl:129
  in reload_path at ./loading.jl:153
  in _require at ./loading.jl:68
  in require at ./loading.jl:51
  in include at ./boot.jl:250
  in include_from_node1 at loading.jl:129
  in process_options at ./client.jl:299
  in _start at ./client.jl:398
 while loading 
 /home/vagrant/testpkg/v0.4/LightGraphs/src/smallgraphs.jl, in 
 expression starting on line 120
 while loading 
 /home/vagrant/testpkg/v0.4/LightGraphs/src/LightGraphs.jl, in 
 expression starting on line 93
 while loading /vagrant/nightlyAL/PKGEVAL_LightGraphs_using.jl, in 
 expression starting on line 4


 Here's the line in question:

 function _make_simple_undirected_graph{T<:Integer}(n::T, edgelist::
 Vector{(T,T)})

 I confess to not yet fully understanding the new change to tuples, 
 and I'm lost as to how to fix my code to comply with the new rules.

 Thanks.

>>>

[julia-users] Re: How to fix package after breaking change in 0.4?

2015-04-19 Thread Seth
Sorry about this: please don't disregard. It is possible that the TypeError 
here is being generated during compilation, not during execution, in which 
case I still need help :)



On Sunday, April 19, 2015 at 4:54:08 PM UTC-7, Seth wrote:
>
> Disregard - this appears to be another issue. Will post separately.
>
> On Sunday, April 19, 2015 at 4:17:42 PM UTC-7, Seth wrote:
>>
>> Thanks, Matt - this is very helpful.
>>
>> I'm running into what a problem with PriorityQueue in Base.Collections, 
>> though. I changed
>>
>>  PriorityQueue((Float64,Array{Edge,1},Int), Float64) 
>>
>> to
>>
>>  
>> PriorityQueue(@compat(Tuple{Float64,Array{Edge,1},Int}), Float64)
>>
>> and am getting an error:
>>
>> ERROR: TypeError: apply_type: in PriorityQueue, expected Type{T}, got 
>> Tuple{DataType,DataType,DataType}
>>
>> What am I doing wrong?
>>
>>
>> On Sunday, April 19, 2015 at 2:17:26 PM UTC-7, Matt Bauman wrote:
>>>
>>> I think this is what your after (for Foo = Int and Bar = Float64):
>>>
>>> julia> Tuple{Int,Float64}[]
>>> 0-element Array{Tuple{Int64,Float64},1}
>>>
>>>
>>> julia> push!(ans, (1, 2.))
>>> 1-element Array{Tuple{Int64,Float64},1}:
>>>  (1,2.0)
>>>
>>> Documentation is unfortunately still in the process of being updated. 
>>>  Basically, anywhere you had a tuple of types, you now must write 
>>> `Tuple{Int, Float64}` instead of `(Int, Float64)`.  In cases where you had 
>>> a vararg tuple specification, you now write `Tuple{Int, Vararg{Float64}}` 
>>> instead of `(Int, Float64...)`.  That latter vararg syntax is still up for 
>>> debate.
>>>
>>> On the plus side, you no longer need to work around constructing tuples 
>>> by splatting: (1, (2,3)…) now works as you would expect it to.  And there's 
>>> no longer a strange type/value duality to ().
>>>
>>> On Sunday, April 19, 2015 at 5:06:00 PM UTC-4, Seth wrote:

 Following up:

 How does one now write

 foo = (Foo, Bar)[]

 ?

 Sorry for all the questions here. I really don't understand the changes 
 that were made and I'd like to get my package working again as quickly as 
 possible.

 Are there docs anywhere (written for novices, that is) on what changed 
 and how to adapt?


 On Sunday, April 19, 2015 at 12:09:27 PM UTC-7, Tony Kelman wrote:
>
> That will cause the code to not work on 0.3. To get code that works on 
> both 0.3 and 0.4, use the Compat.jl package, and
>
>  function _make_simple_undirected_graph{T<:Integer}(n::T, 
> edgelist::Vector{@compat(Tuple{T,T})}) 
>
>
> On Sunday, April 19, 2015 at 11:58:42 AM UTC-7, Avik Sengupta wrote:
>>
>>
>> Try this: 
>>
>>  function _make_simple_undirected_graph{T<:Integer}(n::T, 
>> edgelist::Vector{Tuple{T,T}}) 
>>
>> On Monday, 20 April 2015 00:18:33 UTC+5:30, Seth wrote:
>>>
>>> Could someone please explain what's going on here and what I need to 
>>> do to fix my package with the latest 0.4 tuple changes?
>>>
>>> Here's the error (from pkg.julialang.org):
>>>
>>> ERROR: LoadError: LoadError: LoadError: TypeError: apply_type: in 
>>> alias, expected Type{T}, got Tuple{TypeVar,TypeVar}
>>>  in include at ./boot.jl:250
>>>  in include_from_node1 at ./loading.jl:129
>>>  in include at ./boot.jl:250
>>>  in include_from_node1 at ./loading.jl:129
>>>  in reload_path at ./loading.jl:153
>>>  in _require at ./loading.jl:68
>>>  in require at ./loading.jl:51
>>>  in include at ./boot.jl:250
>>>  in include_from_node1 at loading.jl:129
>>>  in process_options at ./client.jl:299
>>>  in _start at ./client.jl:398
>>> while loading 
>>> /home/vagrant/testpkg/v0.4/LightGraphs/src/smallgraphs.jl, in 
>>> expression starting on line 120
>>> while loading 
>>> /home/vagrant/testpkg/v0.4/LightGraphs/src/LightGraphs.jl, in 
>>> expression starting on line 93
>>> while loading /vagrant/nightlyAL/PKGEVAL_LightGraphs_using.jl, in 
>>> expression starting on line 4
>>>
>>>
>>> Here's the line in question:
>>>
>>> function _make_simple_undirected_graph{T<:Integer}(n::T, edgelist::
>>> Vector{(T,T)})
>>>
>>> I confess to not yet fully understanding the new change to tuples, 
>>> and I'm lost as to how to fix my code to comply with the new rules.
>>>
>>> Thanks.
>>>
>>

[julia-users] Re: How to fix package after breaking change in 0.4?

2015-04-19 Thread Seth
Disregard - this appears to be another issue. Will post separately.

On Sunday, April 19, 2015 at 4:17:42 PM UTC-7, Seth wrote:
>
> Thanks, Matt - this is very helpful.
>
> I'm running into what a problem with PriorityQueue in Base.Collections, 
> though. I changed
>
>  PriorityQueue((Float64,Array{Edge,1},Int), Float64) 
>
> to
>
>  
> PriorityQueue(@compat(Tuple{Float64,Array{Edge,1},Int}), Float64)
>
> and am getting an error:
>
> ERROR: TypeError: apply_type: in PriorityQueue, expected Type{T}, got 
> Tuple{DataType,DataType,DataType}
>
> What am I doing wrong?
>
>
> On Sunday, April 19, 2015 at 2:17:26 PM UTC-7, Matt Bauman wrote:
>>
>> I think this is what your after (for Foo = Int and Bar = Float64):
>>
>> julia> Tuple{Int,Float64}[]
>> 0-element Array{Tuple{Int64,Float64},1}
>>
>>
>> julia> push!(ans, (1, 2.))
>> 1-element Array{Tuple{Int64,Float64},1}:
>>  (1,2.0)
>>
>> Documentation is unfortunately still in the process of being updated. 
>>  Basically, anywhere you had a tuple of types, you now must write 
>> `Tuple{Int, Float64}` instead of `(Int, Float64)`.  In cases where you had 
>> a vararg tuple specification, you now write `Tuple{Int, Vararg{Float64}}` 
>> instead of `(Int, Float64...)`.  That latter vararg syntax is still up for 
>> debate.
>>
>> On the plus side, you no longer need to work around constructing tuples 
>> by splatting: (1, (2,3)…) now works as you would expect it to.  And there's 
>> no longer a strange type/value duality to ().
>>
>> On Sunday, April 19, 2015 at 5:06:00 PM UTC-4, Seth wrote:
>>>
>>> Following up:
>>>
>>> How does one now write
>>>
>>> foo = (Foo, Bar)[]
>>>
>>> ?
>>>
>>> Sorry for all the questions here. I really don't understand the changes 
>>> that were made and I'd like to get my package working again as quickly as 
>>> possible.
>>>
>>> Are there docs anywhere (written for novices, that is) on what changed 
>>> and how to adapt?
>>>
>>>
>>> On Sunday, April 19, 2015 at 12:09:27 PM UTC-7, Tony Kelman wrote:

 That will cause the code to not work on 0.3. To get code that works on 
 both 0.3 and 0.4, use the Compat.jl package, and

  function _make_simple_undirected_graph{T<:Integer}(n::T, 
 edgelist::Vector{@compat(Tuple{T,T})}) 


 On Sunday, April 19, 2015 at 11:58:42 AM UTC-7, Avik Sengupta wrote:
>
>
> Try this: 
>
>  function _make_simple_undirected_graph{T<:Integer}(n::T, 
> edgelist::Vector{Tuple{T,T}}) 
>
> On Monday, 20 April 2015 00:18:33 UTC+5:30, Seth wrote:
>>
>> Could someone please explain what's going on here and what I need to 
>> do to fix my package with the latest 0.4 tuple changes?
>>
>> Here's the error (from pkg.julialang.org):
>>
>> ERROR: LoadError: LoadError: LoadError: TypeError: apply_type: in alias, 
>> expected Type{T}, got Tuple{TypeVar,TypeVar}
>>  in include at ./boot.jl:250
>>  in include_from_node1 at ./loading.jl:129
>>  in include at ./boot.jl:250
>>  in include_from_node1 at ./loading.jl:129
>>  in reload_path at ./loading.jl:153
>>  in _require at ./loading.jl:68
>>  in require at ./loading.jl:51
>>  in include at ./boot.jl:250
>>  in include_from_node1 at loading.jl:129
>>  in process_options at ./client.jl:299
>>  in _start at ./client.jl:398
>> while loading /home/vagrant/testpkg/v0.4/LightGraphs/src/smallgraphs.jl, 
>> in expression starting on line 120
>> while loading /home/vagrant/testpkg/v0.4/LightGraphs/src/LightGraphs.jl, 
>> in expression starting on line 93
>> while loading /vagrant/nightlyAL/PKGEVAL_LightGraphs_using.jl, in 
>> expression starting on line 4
>>
>>
>> Here's the line in question:
>>
>> function _make_simple_undirected_graph{T<:Integer}(n::T, edgelist::
>> Vector{(T,T)})
>>
>> I confess to not yet fully understanding the new change to tuples, 
>> and I'm lost as to how to fix my code to comply with the new rules.
>>
>> Thanks.
>>
>

[julia-users] Re: How to fix package after breaking change in 0.4?

2015-04-19 Thread Seth
Thanks, Matt - this is very helpful.

I'm running into what a problem with PriorityQueue in Base.Collections, 
though. I changed

 PriorityQueue((Float64,Array{Edge,1},Int), Float64) 

to

 
PriorityQueue(@compat(Tuple{Float64,Array{Edge,1},Int}), Float64)

and am getting an error:

ERROR: TypeError: apply_type: in PriorityQueue, expected Type{T}, got Tuple{
DataType,DataType,DataType}

What am I doing wrong?


On Sunday, April 19, 2015 at 2:17:26 PM UTC-7, Matt Bauman wrote:
>
> I think this is what your after (for Foo = Int and Bar = Float64):
>
> julia> Tuple{Int,Float64}[]
> 0-element Array{Tuple{Int64,Float64},1}
>
>
> julia> push!(ans, (1, 2.))
> 1-element Array{Tuple{Int64,Float64},1}:
>  (1,2.0)
>
> Documentation is unfortunately still in the process of being updated. 
>  Basically, anywhere you had a tuple of types, you now must write 
> `Tuple{Int, Float64}` instead of `(Int, Float64)`.  In cases where you had 
> a vararg tuple specification, you now write `Tuple{Int, Vararg{Float64}}` 
> instead of `(Int, Float64...)`.  That latter vararg syntax is still up for 
> debate.
>
> On the plus side, you no longer need to work around constructing tuples by 
> splatting: (1, (2,3)…) now works as you would expect it to.  And there's no 
> longer a strange type/value duality to ().
>
> On Sunday, April 19, 2015 at 5:06:00 PM UTC-4, Seth wrote:
>>
>> Following up:
>>
>> How does one now write
>>
>> foo = (Foo, Bar)[]
>>
>> ?
>>
>> Sorry for all the questions here. I really don't understand the changes 
>> that were made and I'd like to get my package working again as quickly as 
>> possible.
>>
>> Are there docs anywhere (written for novices, that is) on what changed 
>> and how to adapt?
>>
>>
>> On Sunday, April 19, 2015 at 12:09:27 PM UTC-7, Tony Kelman wrote:
>>>
>>> That will cause the code to not work on 0.3. To get code that works on 
>>> both 0.3 and 0.4, use the Compat.jl package, and
>>>
>>>  function _make_simple_undirected_graph{T<:Integer}(n::T, 
>>> edgelist::Vector{@compat(Tuple{T,T})}) 
>>>
>>>
>>> On Sunday, April 19, 2015 at 11:58:42 AM UTC-7, Avik Sengupta wrote:


 Try this: 

  function _make_simple_undirected_graph{T<:Integer}(n::T, 
 edgelist::Vector{Tuple{T,T}}) 

 On Monday, 20 April 2015 00:18:33 UTC+5:30, Seth wrote:
>
> Could someone please explain what's going on here and what I need to 
> do to fix my package with the latest 0.4 tuple changes?
>
> Here's the error (from pkg.julialang.org):
>
> ERROR: LoadError: LoadError: LoadError: TypeError: apply_type: in alias, 
> expected Type{T}, got Tuple{TypeVar,TypeVar}
>  in include at ./boot.jl:250
>  in include_from_node1 at ./loading.jl:129
>  in include at ./boot.jl:250
>  in include_from_node1 at ./loading.jl:129
>  in reload_path at ./loading.jl:153
>  in _require at ./loading.jl:68
>  in require at ./loading.jl:51
>  in include at ./boot.jl:250
>  in include_from_node1 at loading.jl:129
>  in process_options at ./client.jl:299
>  in _start at ./client.jl:398
> while loading /home/vagrant/testpkg/v0.4/LightGraphs/src/smallgraphs.jl, 
> in expression starting on line 120
> while loading /home/vagrant/testpkg/v0.4/LightGraphs/src/LightGraphs.jl, 
> in expression starting on line 93
> while loading /vagrant/nightlyAL/PKGEVAL_LightGraphs_using.jl, in 
> expression starting on line 4
>
>
> Here's the line in question:
>
> function _make_simple_undirected_graph{T<:Integer}(n::T, edgelist::
> Vector{(T,T)})
>
> I confess to not yet fully understanding the new change to tuples, and 
> I'm lost as to how to fix my code to comply with the new rules.
>
> Thanks.
>


[julia-users] Re: How to fix package after breaking change in 0.4?

2015-04-19 Thread Matt Bauman
I think this is what your after (for Foo = Int and Bar = Float64):

julia> Tuple{Int,Float64}[]
0-element Array{Tuple{Int64,Float64},1}


julia> push!(ans, (1, 2.))
1-element Array{Tuple{Int64,Float64},1}:
 (1,2.0)

Documentation is unfortunately still in the process of being updated. 
 Basically, anywhere you had a tuple of types, you now must write 
`Tuple{Int, Float64}` instead of `(Int, Float64)`.  In cases where you had 
a vararg tuple specification, you now write `Tuple{Int, Vararg{Float64}}` 
instead of `(Int, Float64...)`.  That latter vararg syntax is still up for 
debate.

On the plus side, you no longer need to work around constructing tuples by 
splatting: (1, (2,3)…) now works as you would expect it to.  And there's no 
longer a strange type/value duality to ().

On Sunday, April 19, 2015 at 5:06:00 PM UTC-4, Seth wrote:
>
> Following up:
>
> How does one now write
>
> foo = (Foo, Bar)[]
>
> ?
>
> Sorry for all the questions here. I really don't understand the changes 
> that were made and I'd like to get my package working again as quickly as 
> possible.
>
> Are there docs anywhere (written for novices, that is) on what changed and 
> how to adapt?
>
>
> On Sunday, April 19, 2015 at 12:09:27 PM UTC-7, Tony Kelman wrote:
>>
>> That will cause the code to not work on 0.3. To get code that works on 
>> both 0.3 and 0.4, use the Compat.jl package, and
>>
>>  function _make_simple_undirected_graph{T<:Integer}(n::T, 
>> edgelist::Vector{@compat(Tuple{T,T})}) 
>>
>>
>> On Sunday, April 19, 2015 at 11:58:42 AM UTC-7, Avik Sengupta wrote:
>>>
>>>
>>> Try this: 
>>>
>>>  function _make_simple_undirected_graph{T<:Integer}(n::T, 
>>> edgelist::Vector{Tuple{T,T}}) 
>>>
>>> On Monday, 20 April 2015 00:18:33 UTC+5:30, Seth wrote:

 Could someone please explain what's going on here and what I need to do 
 to fix my package with the latest 0.4 tuple changes?

 Here's the error (from pkg.julialang.org):

 ERROR: LoadError: LoadError: LoadError: TypeError: apply_type: in alias, 
 expected Type{T}, got Tuple{TypeVar,TypeVar}
  in include at ./boot.jl:250
  in include_from_node1 at ./loading.jl:129
  in include at ./boot.jl:250
  in include_from_node1 at ./loading.jl:129
  in reload_path at ./loading.jl:153
  in _require at ./loading.jl:68
  in require at ./loading.jl:51
  in include at ./boot.jl:250
  in include_from_node1 at loading.jl:129
  in process_options at ./client.jl:299
  in _start at ./client.jl:398
 while loading /home/vagrant/testpkg/v0.4/LightGraphs/src/smallgraphs.jl, 
 in expression starting on line 120
 while loading /home/vagrant/testpkg/v0.4/LightGraphs/src/LightGraphs.jl, 
 in expression starting on line 93
 while loading /vagrant/nightlyAL/PKGEVAL_LightGraphs_using.jl, in 
 expression starting on line 4


 Here's the line in question:

 function _make_simple_undirected_graph{T<:Integer}(n::T, edgelist::
 Vector{(T,T)})

 I confess to not yet fully understanding the new change to tuples, and 
 I'm lost as to how to fix my code to comply with the new rules.

 Thanks.

>>>

[julia-users] Re: How to fix package after breaking change in 0.4?

2015-04-19 Thread Seth
Following up:

How does one now write

foo = (Foo, Bar)[]

?

Sorry for all the questions here. I really don't understand the changes 
that were made and I'd like to get my package working again as quickly as 
possible.

Are there docs anywhere (written for novices, that is) on what changed and 
how to adapt?


On Sunday, April 19, 2015 at 12:09:27 PM UTC-7, Tony Kelman wrote:
>
> That will cause the code to not work on 0.3. To get code that works on 
> both 0.3 and 0.4, use the Compat.jl package, and
>
>  function _make_simple_undirected_graph{T<:Integer}(n::T, 
> edgelist::Vector{@compat(Tuple{T,T})}) 
>
>
> On Sunday, April 19, 2015 at 11:58:42 AM UTC-7, Avik Sengupta wrote:
>>
>>
>> Try this: 
>>
>>  function _make_simple_undirected_graph{T<:Integer}(n::T, 
>> edgelist::Vector{Tuple{T,T}}) 
>>
>> On Monday, 20 April 2015 00:18:33 UTC+5:30, Seth wrote:
>>>
>>> Could someone please explain what's going on here and what I need to do 
>>> to fix my package with the latest 0.4 tuple changes?
>>>
>>> Here's the error (from pkg.julialang.org):
>>>
>>> ERROR: LoadError: LoadError: LoadError: TypeError: apply_type: in alias, 
>>> expected Type{T}, got Tuple{TypeVar,TypeVar}
>>>  in include at ./boot.jl:250
>>>  in include_from_node1 at ./loading.jl:129
>>>  in include at ./boot.jl:250
>>>  in include_from_node1 at ./loading.jl:129
>>>  in reload_path at ./loading.jl:153
>>>  in _require at ./loading.jl:68
>>>  in require at ./loading.jl:51
>>>  in include at ./boot.jl:250
>>>  in include_from_node1 at loading.jl:129
>>>  in process_options at ./client.jl:299
>>>  in _start at ./client.jl:398
>>> while loading /home/vagrant/testpkg/v0.4/LightGraphs/src/smallgraphs.jl, in 
>>> expression starting on line 120
>>> while loading /home/vagrant/testpkg/v0.4/LightGraphs/src/LightGraphs.jl, in 
>>> expression starting on line 93
>>> while loading /vagrant/nightlyAL/PKGEVAL_LightGraphs_using.jl, in 
>>> expression starting on line 4
>>>
>>>
>>> Here's the line in question:
>>>
>>> function _make_simple_undirected_graph{T<:Integer}(n::T, edgelist::
>>> Vector{(T,T)})
>>>
>>> I confess to not yet fully understanding the new change to tuples, and 
>>> I'm lost as to how to fix my code to comply with the new rules.
>>>
>>> Thanks.
>>>
>>

[julia-users] Re: How to fix package after breaking change in 0.4?

2015-04-19 Thread Seth
Sorry - please disregard. I managed to omit the Vector{} in my paste. It's 
working correctly. Thank you.

On Sunday, April 19, 2015 at 12:44:38 PM UTC-7, Seth wrote:
>
> This isn't a drop-in replacement:
>
> ERROR: LoadError: MethodError: `_make_simple_undirected_graph` has no 
> method matching _make_simple_undirected_graph(::Int64, ::Array{(Int64,
> Int64),1})
>
> I'm calling it like so:
>
> function PetersenGraph()
> e = [
> (1, 2), (1, 5), (1, 6),
> (2, 3), (2, 7),
> (3, 4), (3, 8),
> (4, 5), (4, 9),
> (5, 10),
> (6, 8), (6, 9),
> (7, 9), (7, 10),
> (8, 10)
> ]
> return _make_simple_undirected_graph(10,e)
> end
>
>
>
>
> On Sunday, April 19, 2015 at 12:09:27 PM UTC-7, Tony Kelman wrote:
>>
>> That will cause the code to not work on 0.3. To get code that works on 
>> both 0.3 and 0.4, use the Compat.jl package, and
>>
>>  function _make_simple_undirected_graph{T<:Integer}(n::T, 
>> edgelist::Vector{@compat(Tuple{T,T})}) 
>>
>>
>> On Sunday, April 19, 2015 at 11:58:42 AM UTC-7, Avik Sengupta wrote:
>>>
>>>
>>> Try this: 
>>>
>>>  function _make_simple_undirected_graph{T<:Integer}(n::T, 
>>> edgelist::Vector{Tuple{T,T}}) 
>>>
>>> On Monday, 20 April 2015 00:18:33 UTC+5:30, Seth wrote:

 Could someone please explain what's going on here and what I need to do 
 to fix my package with the latest 0.4 tuple changes?

 Here's the error (from pkg.julialang.org):

 ERROR: LoadError: LoadError: LoadError: TypeError: apply_type: in alias, 
 expected Type{T}, got Tuple{TypeVar,TypeVar}
  in include at ./boot.jl:250
  in include_from_node1 at ./loading.jl:129
  in include at ./boot.jl:250
  in include_from_node1 at ./loading.jl:129
  in reload_path at ./loading.jl:153
  in _require at ./loading.jl:68
  in require at ./loading.jl:51
  in include at ./boot.jl:250
  in include_from_node1 at loading.jl:129
  in process_options at ./client.jl:299
  in _start at ./client.jl:398
 while loading /home/vagrant/testpkg/v0.4/LightGraphs/src/smallgraphs.jl, 
 in expression starting on line 120
 while loading /home/vagrant/testpkg/v0.4/LightGraphs/src/LightGraphs.jl, 
 in expression starting on line 93
 while loading /vagrant/nightlyAL/PKGEVAL_LightGraphs_using.jl, in 
 expression starting on line 4


 Here's the line in question:

 function _make_simple_undirected_graph{T<:Integer}(n::T, edgelist::
 Vector{(T,T)})

 I confess to not yet fully understanding the new change to tuples, and 
 I'm lost as to how to fix my code to comply with the new rules.

 Thanks.

>>>

[julia-users] Re: How to fix package after breaking change in 0.4?

2015-04-19 Thread Seth
This isn't a drop-in replacement:

ERROR: LoadError: MethodError: `_make_simple_undirected_graph` has no 
method matching _make_simple_undirected_graph(::Int64, ::Array{(Int64,Int64
),1})

I'm calling it like so:

function PetersenGraph()
e = [
(1, 2), (1, 5), (1, 6),
(2, 3), (2, 7),
(3, 4), (3, 8),
(4, 5), (4, 9),
(5, 10),
(6, 8), (6, 9),
(7, 9), (7, 10),
(8, 10)
]
return _make_simple_undirected_graph(10,e)
end




On Sunday, April 19, 2015 at 12:09:27 PM UTC-7, Tony Kelman wrote:
>
> That will cause the code to not work on 0.3. To get code that works on 
> both 0.3 and 0.4, use the Compat.jl package, and
>
>  function _make_simple_undirected_graph{T<:Integer}(n::T, 
> edgelist::Vector{@compat(Tuple{T,T})}) 
>
>
> On Sunday, April 19, 2015 at 11:58:42 AM UTC-7, Avik Sengupta wrote:
>>
>>
>> Try this: 
>>
>>  function _make_simple_undirected_graph{T<:Integer}(n::T, 
>> edgelist::Vector{Tuple{T,T}}) 
>>
>> On Monday, 20 April 2015 00:18:33 UTC+5:30, Seth wrote:
>>>
>>> Could someone please explain what's going on here and what I need to do 
>>> to fix my package with the latest 0.4 tuple changes?
>>>
>>> Here's the error (from pkg.julialang.org):
>>>
>>> ERROR: LoadError: LoadError: LoadError: TypeError: apply_type: in alias, 
>>> expected Type{T}, got Tuple{TypeVar,TypeVar}
>>>  in include at ./boot.jl:250
>>>  in include_from_node1 at ./loading.jl:129
>>>  in include at ./boot.jl:250
>>>  in include_from_node1 at ./loading.jl:129
>>>  in reload_path at ./loading.jl:153
>>>  in _require at ./loading.jl:68
>>>  in require at ./loading.jl:51
>>>  in include at ./boot.jl:250
>>>  in include_from_node1 at loading.jl:129
>>>  in process_options at ./client.jl:299
>>>  in _start at ./client.jl:398
>>> while loading /home/vagrant/testpkg/v0.4/LightGraphs/src/smallgraphs.jl, in 
>>> expression starting on line 120
>>> while loading /home/vagrant/testpkg/v0.4/LightGraphs/src/LightGraphs.jl, in 
>>> expression starting on line 93
>>> while loading /vagrant/nightlyAL/PKGEVAL_LightGraphs_using.jl, in 
>>> expression starting on line 4
>>>
>>>
>>> Here's the line in question:
>>>
>>> function _make_simple_undirected_graph{T<:Integer}(n::T, edgelist::
>>> Vector{(T,T)})
>>>
>>> I confess to not yet fully understanding the new change to tuples, and 
>>> I'm lost as to how to fix my code to comply with the new rules.
>>>
>>> Thanks.
>>>
>>

[julia-users] Re: How to fix package after breaking change in 0.4?

2015-04-19 Thread Tony Kelman
That will cause the code to not work on 0.3. To get code that works on both 
0.3 and 0.4, use the Compat.jl package, and

 function _make_simple_undirected_graph{T<:Integer}(n::T, 
edgelist::Vector{@compat(Tuple{T,T})}) 


On Sunday, April 19, 2015 at 11:58:42 AM UTC-7, Avik Sengupta wrote:
>
>
> Try this: 
>
>  function _make_simple_undirected_graph{T<:Integer}(n::T, 
> edgelist::Vector{Tuple{T,T}}) 
>
> On Monday, 20 April 2015 00:18:33 UTC+5:30, Seth wrote:
>>
>> Could someone please explain what's going on here and what I need to do 
>> to fix my package with the latest 0.4 tuple changes?
>>
>> Here's the error (from pkg.julialang.org):
>>
>> ERROR: LoadError: LoadError: LoadError: TypeError: apply_type: in alias, 
>> expected Type{T}, got Tuple{TypeVar,TypeVar}
>>  in include at ./boot.jl:250
>>  in include_from_node1 at ./loading.jl:129
>>  in include at ./boot.jl:250
>>  in include_from_node1 at ./loading.jl:129
>>  in reload_path at ./loading.jl:153
>>  in _require at ./loading.jl:68
>>  in require at ./loading.jl:51
>>  in include at ./boot.jl:250
>>  in include_from_node1 at loading.jl:129
>>  in process_options at ./client.jl:299
>>  in _start at ./client.jl:398
>> while loading /home/vagrant/testpkg/v0.4/LightGraphs/src/smallgraphs.jl, in 
>> expression starting on line 120
>> while loading /home/vagrant/testpkg/v0.4/LightGraphs/src/LightGraphs.jl, in 
>> expression starting on line 93
>> while loading /vagrant/nightlyAL/PKGEVAL_LightGraphs_using.jl, in expression 
>> starting on line 4
>>
>>
>> Here's the line in question:
>>
>> function _make_simple_undirected_graph{T<:Integer}(n::T, edgelist::Vector
>> {(T,T)})
>>
>> I confess to not yet fully understanding the new change to tuples, and 
>> I'm lost as to how to fix my code to comply with the new rules.
>>
>> Thanks.
>>
>

[julia-users] Re: How to fix package after breaking change in 0.4?

2015-04-19 Thread Avik Sengupta

Try this: 

 function _make_simple_undirected_graph{T<:Integer}(n::T, 
edgelist::Vector{Tuple{T,T}}) 

On Monday, 20 April 2015 00:18:33 UTC+5:30, Seth wrote:
>
> Could someone please explain what's going on here and what I need to do to 
> fix my package with the latest 0.4 tuple changes?
>
> Here's the error (from pkg.julialang.org):
>
> ERROR: LoadError: LoadError: LoadError: TypeError: apply_type: in alias, 
> expected Type{T}, got Tuple{TypeVar,TypeVar}
>  in include at ./boot.jl:250
>  in include_from_node1 at ./loading.jl:129
>  in include at ./boot.jl:250
>  in include_from_node1 at ./loading.jl:129
>  in reload_path at ./loading.jl:153
>  in _require at ./loading.jl:68
>  in require at ./loading.jl:51
>  in include at ./boot.jl:250
>  in include_from_node1 at loading.jl:129
>  in process_options at ./client.jl:299
>  in _start at ./client.jl:398
> while loading /home/vagrant/testpkg/v0.4/LightGraphs/src/smallgraphs.jl, in 
> expression starting on line 120
> while loading /home/vagrant/testpkg/v0.4/LightGraphs/src/LightGraphs.jl, in 
> expression starting on line 93
> while loading /vagrant/nightlyAL/PKGEVAL_LightGraphs_using.jl, in expression 
> starting on line 4
>
>
> Here's the line in question:
>
> function _make_simple_undirected_graph{T<:Integer}(n::T, edgelist::Vector
> {(T,T)})
>
> I confess to not yet fully understanding the new change to tuples, and I'm 
> lost as to how to fix my code to comply with the new rules.
>
> Thanks.
>