Skip to content
This repository has been archived by the owner on Oct 8, 2021. It is now read-only.

first cut at 0.7 compatibility #848

Merged
merged 20 commits into from Feb 22, 2018
Merged

Conversation

sbromberger
Copy link
Owner

This requires the m3/where-fns branch of SimpleTraits.jl.

Current status:

Test Summary:              |  Pass  Error  Total
LightGraphs                | 28668      5  28673
  LightGraphs.SimpleGraphs |  2730          2730
  LightGraphs.LinAlg       |   336      4    340
    Graph matrices         |    45      1     46
    Spectral               |   291      3    294
  Interface                |    23            23
  Core                     |   122           122
  Operators                |   318           318
  Decomposition            |    48            48
  Distance                 |    42            42
  Transitivity             |    24            24
  Hadwick-James Cycles     |    21            21
  Cycles                   |    30            30
  Karp Minimum Cycle Mean  |    30            30
  Edit distance            |   240           240
  Connectivity             |   198      1    199
  Persistence              |    15            15
  Randgraphs               |  1270          1270
  Static graphs            |    25            25
  Small graphs             |    25            25
  Euclidean graphs         |    13            13
  A star                   |    18            18
  Bellman Ford             |    48            48
  Dijkstra                 |   441           441
  Floyd Warshall           |    21            21
  Yen                      |    72            72
  BFS                      |    75            75
  Parallel_BFS             |    25            25
  Bipartiteness            |    27            27
  DFS                      |    24            24
  Max adj visit            |    33            33
  Random walks             | 21879         21879
  Diffusion Simulation     |    57            57
  Cliques                  |    12            12
  Core periphery           |    93            93
  Label propagation        |    24            24
  Modularity               |     6             6
  Clustering               |    18            18
  Clique percolation       |     1             1
  Betweenness              |    51            51
  Closeness                |    48            48
  Degree                   |     9             9
  Katz                     |     3             3
  Pagerank                 |    54            54
  Eigenvector              |     6             6
  Stress                   |    18            18
  Radiality                |     6             6
  Utils                    |    18            18
  Kruskal                  |     6             6
  Prim                     |     6             6
  Articulation             |    24            24
  Biconnect                |     6             6
  Normalized Cut           |    29            29

sbromberger and others added 2 commits February 20, 2018 08:27
Some steps for updating to sulia-v0.7

* using LightGraphs does not error

* Switch to LinearAlgebra and SparseArrays std libs

* Fix most of linalg tests

* Add SharedArrays for distance tests to compile

* Add Random and Markdown to stdlibs used

* Fix connectivity tests

* IntSet -> BitSet

* Add DelimitedFiles stdlib for readcsv

* Fix failing test
@sbromberger
Copy link
Owner Author

I've asked Mauro to tag a new version of SimpleTraits that has the where-fn fix in it. Once we have that I'll make it part of REQUIRES and will retest.

test/runtests.jl Outdated
@@ -6,6 +6,9 @@ using LinearAlgebra

const testdir = dirname(@__FILE__)

# we need a specific branch of SimpleTraits.jl until https://github.com/mauro3/SimpleTraits.jl/pull/51 is merged
Pkg.checkout("m3/where-fns")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think you need Pkg.checkout("SimpleTraits", "m3/where-fns")

@@ -1,15 +1,28 @@
__precompile__(true)
module LightGraphs

using SharedArrays
using Random
Copy link
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We will want to dedup these.

@rohitvarkey
Copy link
Contributor

rohitvarkey commented Feb 20, 2018

Not sure why Travis is failing. This is what I get on my local machine with julia built with the latest master and LightGraphs on this branch.

   _       _ _(_)_     |  A fresh approach to technical computing
  (_)     | (_) (_)    |  Documentation: https://docs.julialang.org
   _ _   _| |_  __ _   |  Type "?help" for help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 0.7.0-DEV.4031 (2018-02-20 14:42 UTC)
 _/ |\__'_|_|_|\__'_|  |  Commit 5aa548b453* (0 days old master)
|__/                   |  x86_64-apple-darwin16.4.0

julia> Pkg.test("LightGraphs");
*....deprecations.....*
Test Summary: |  Pass  Total
LightGraphs   | 28845  28845
[ Info: LightGraphs tests passed

@sbromberger
Copy link
Owner Author

Looks like it's still not using the correct branch of SimpleTraits.

@sbromberger
Copy link
Owner Author

@codecov
Copy link

codecov bot commented Feb 20, 2018

Codecov Report

Merging #848 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff          @@
##           master   #848   +/-   ##
=====================================
  Coverage     100%   100%           
=====================================
  Files          59     59           
  Lines        3001   3001           
=====================================
  Hits         3001   3001

@sbromberger
Copy link
Owner Author

OK, so: should we merge this now, or try to get rid of some of these deprecations first?

If we merge now, we'll need to cut a final 0.6-compatible version beforehand. This will allow us to use FemtoCleaner on the master branch.

@rohitvarkey
Copy link
Contributor

I tried setting up FemtoCleaner locally to try and remove deprecations on this branch but had lots of issues with Homebrew etc.

Considering that, I think the approach of cutting a final 0.6 release, merging this PR and then running FemtoCleaner on master is probably the best way of removing the deprecations and getting LG completely ready for 0.7.

@sbromberger sbromberger mentioned this pull request Feb 21, 2018
@sbromberger
Copy link
Owner Author

@rohitvarkey
Copy link
Contributor

Hmm. Seems like Pkg isn't finding the correct version of SimpleTraits. Could this be cause SimpleTraits is set as julia 0.7 and not julia 0.7- in METADATA?

@sbromberger
Copy link
Owner Author

sbromberger commented Feb 21, 2018

Could this be cause SimpleTraits is set as julia 0.7 and not julia 0.7- in METADATA?

I'll bet that's it.

Ref: mauro3/SimpleTraits.jl#52

(edited again): tests won't pass until SimpleTraits v0.7.1 is merged (JuliaLang/METADATA.jl#13470).

@rohitvarkey
Copy link
Contributor

Now that the METADATA PR is merged, let's try Travis again? 🤞

@sbromberger
Copy link
Owner Author

OK, tests pass. I'm going to merge this into master.

@sbromberger sbromberger merged commit b419c0f into master Feb 22, 2018
matbesancon added a commit to matbesancon/LightGraphs.jl that referenced this pull request Jun 5, 2018
* removed flow algorithms (sbromberger#815)

* fixes sbromberger#820, plus tests (sbromberger#821)

* change show() for empty graphs (ref JuliaGraphs/MetaGraphs.jl#20 (comment)) (sbromberger#822)

* Pull request clique_percolation.jl (sbromberger#826)

clique percolation is a method of uncovering the overlapping community structure of complex networks in nature and society

* add src/community/clique_percolation.jl
* tests in file test/community/clique_percolation.jl
* cites the original clique percolation paper
* for undirected graphs only using traitfn

* in_ / out_ -> in / out (sbromberger#830)

* (in,out)_neighbors -> (in,out)neighbors

* all_neighbors -> allneighbors

* Pull request clique_percolation.jl (sbromberger#826)

clique percolation is a method of uncovering the overlapping community structure of complex networks in nature and society

* add src/community/clique_percolation.jl
* tests in file test/community/clique_percolation.jl
* cites the original clique percolation paper
* for undirected graphs only using traitfn

* revert allneighbors

* expected_degree_graph (Chung-Lu model) (sbromberger#832)

* Expected degree random graph generator implemented, including tests

* algorithm corrected

* Missing seed corrected in expected_degree_graph

* expected_degree_graph! implemented

* Added return in function, comment with references removed, references in docs added (expected_degree_graph)

* Update randgraphs.jl

minor doc update

* Update randgraphs.jl

* Fixing problems with MST Kruskal's on SimpleWeightedGraphs (sbromberger#835)

* Update kruskal.jl

* Update prim.jl

* Update kruskal.jl

* Update kruskal.jl

* Update prim.jl

* Update kruskal.jl

* Update prim.jl

* Update kruskal.jl

* Update prim.jl

* reverting changes

* Revert "reverting changes"

This reverts commit ac1760b.

* Revert "Update prim.jl"

This reverts commit 677f6fa.

* Revert "Update kruskal.jl"

This reverts commit a0e9c47.

* Revert "Update prim.jl"

This reverts commit 793bac4.

* Revert "Update kruskal.jl"

This reverts commit 6114e16.

* Revert "Update prim.jl"

This reverts commit 551f1e6.

* Revert "Update kruskal.jl"

This reverts commit 941005e.

* Revert "Update kruskal.jl"

This reverts commit a404514.

* Revert "Update prim.jl"

This reverts commit 2d43a60.

* Revert "Update kruskal.jl"

This reverts commit 4577920.

* fix problems with SimpleWeightedGraphs

* fix problems with SimpleWeightedGraphs

* fix problems with SimpleWeightedGraphs

* bipartite_map on 2-order graphs fixed. Added proper tests. Fixed test connected to bipartite_map (sbromberger#836)

* Correct pre-allocation of memory in Prim's MST (sbromberger#839)

* Improve Kruskal's MST by optimizing Union-Find (sbromberger#843)

* add missing backtick (sbromberger#846)

* Add greedy_color for Graph Coloring (sbromberger#844)

* Add greedy_color for Graph Coloring

* Improve Kruskal's MST by optimizing Union-Find (sbromberger#843)

* Update README.md

* Update README.md

* first cut at 0.7 compatibility (sbromberger#848)

* using LightGraphs does not error

* Switch to LinearAlgebra and SparseArrays std libs

* Fix most of linalg tests

* Add SharedArrays for distance tests to compile

* Add Random and Markdown to stdlibs used

* Fix connectivity tests

* IntSet -> BitSet

* Add DelimitedFiles stdlib for readcsv

* Fix failing test

* first cut

* Use mauro/SimpleTraits.jl/m3/where-fns in tests

* Fix SimpleTraits checkout (sbromberger#851)

* Move up SimpleTraits checkout (sbromberger#852)

* Update runtests.jl

* Update REQUIRE

* Update REQUIRE

* femtocleaner with additional depwarn fixes (sbromberger#856)

fix deprecation warnings based on local femtocleaner run

* use equalto in degeneracy.jl (sbromberger#858)

* fix depwarns in linalg submodule (sbromberger#860)

* update linalg/spectral to fix deprecations

* fix depwarns in graphmatrices

* fixes doc deprecation warnings (sbromberger#861)

* fixes doc deprecation warnings

* adding Base64 to runtests

* Update README.md

* remove add/remove vertex/edge from core, minor bug fix (sbromberger#862)

* remove add/remove vertex/edge from core, minor bug fix

* fix tests

* export add/rem vertex

* remove long-term deprecation warnings (sbromberger#863)

* uninitialized -> undef, blkdiag -> blockdiag, and removed import of d… (sbromberger#865)

* uninitialized -> undef, blkdiag -> blockdiag, and removed import of deprecated functions from LG to LinAlg

* test coverage for digraph eltype

* removes equalto (sbromberger#867)

* optional sorting algorithm for gdistances (sbromberger#868)

add the ability to pass RadixSort to gdistances!

* update url and mention directed graphs explicilty (sbromberger#837)

* update url and mention directed graphs explicilty

* Update graphtypes.md

* Update graphtypes.md

fixed references.

* Speed improvements for function transitiveclosure! (sbromberger#870)

* Speed improvements for function transitiveclosure!

Instead of checking for all paths i -> k and k -> j for a given vertex k
we only iterate over the in- and outneighbours of k.

* Merged some conditionals into a single statement

* Cache efficient Floyd Warshall (sbromberger#873)

* Update floyd-warshall.jl

* Cache efficient Floyd Warshall

* fixed an error where smallgraph(:frucht) had 20 vertices instead of 12 (sbromberger#878)

* Delete .Rhistory

* Added function transitivereduction (sbromberger#877)

* added function transitivereduction

* Update transitivity.jl

docstring formatting

* Fixed some tests && added testdigraphs for all tests

* Johnson Shortest Path for Sparse Graphs (sbromberger#884)

* Johnson Shortest Path for Sparse Graphs

Johnson Shortest Path for Sparse Graphs

* Improved memory efficiency if distmx is mutable

* Improved memory efficiency for parallel implementation

* Update index.md

* Added constructors to create graphs from a vector or an iterator of edges (sbromberger#880)

* Added constructors to create SimpleGraphs and SimpleDiGraphs from a vector or an iterator of edges

* Added constructors to create SimpleGraphs and SimpleDiGraphs from a vector or an iterator of edges

* Slyles1001/892 (sbromberger#894)

* comments are your friend

* Most of LightGraphs warnings are fixed

* Delete HITS.jl

* Slyles1001/872 (sbromberger#891)

* DataStructures fixed

* missed heappop!, now it tests clean

* spaces

* Update LightGraphs.jl

* Update runtests.jl

* fixes most depwarns as of 20180529 (sbromberger#895)

* fixes most depwarns as of 20180529

* graphmatrices problems

* remove tabs

* tabs, again

* Update CONTRIBUTING.md (sbromberger#897)

* Improve Kruskal and use in-built disjoint set data structure (sbromberger#896)

* Improve Kruskal and use in-built disjoint set data structure

* Update kruskal.jl

Changes requested by @somil55
sbromberger added a commit that referenced this pull request Jun 5, 2018
* using LightGraphs does not error

* Switch to LinearAlgebra and SparseArrays std libs

* Fix most of linalg tests

* Add SharedArrays for distance tests to compile

* Add Random and Markdown to stdlibs used

* Fix connectivity tests

* IntSet -> BitSet

* Add DelimitedFiles stdlib for readcsv

* Fix failing test

* first cut

* Use mauro/SimpleTraits.jl/m3/where-fns in tests

* Fix SimpleTraits checkout (#851)

* Move up SimpleTraits checkout (#852)

* Update runtests.jl

* Update REQUIRE

* Update REQUIRE
@sbromberger sbromberger deleted the sbromberger/zero-dot-seven branch June 5, 2018 03:24
sbromberger pushed a commit that referenced this pull request Jun 14, 2018
* ignore coverage file

* merge master (#2)

* removed flow algorithms (#815)

* fixes #820, plus tests (#821)

* change show() for empty graphs (ref JuliaGraphs/MetaGraphs.jl#20 (comment)) (#822)

* Pull request clique_percolation.jl (#826)

clique percolation is a method of uncovering the overlapping community structure of complex networks in nature and society

* add src/community/clique_percolation.jl
* tests in file test/community/clique_percolation.jl
* cites the original clique percolation paper
* for undirected graphs only using traitfn

* in_ / out_ -> in / out (#830)

* (in,out)_neighbors -> (in,out)neighbors

* all_neighbors -> allneighbors

* Pull request clique_percolation.jl (#826)

clique percolation is a method of uncovering the overlapping community structure of complex networks in nature and society

* add src/community/clique_percolation.jl
* tests in file test/community/clique_percolation.jl
* cites the original clique percolation paper
* for undirected graphs only using traitfn

* revert allneighbors

* expected_degree_graph (Chung-Lu model) (#832)

* Expected degree random graph generator implemented, including tests

* algorithm corrected

* Missing seed corrected in expected_degree_graph

* expected_degree_graph! implemented

* Added return in function, comment with references removed, references in docs added (expected_degree_graph)

* Update randgraphs.jl

minor doc update

* Update randgraphs.jl

* Fixing problems with MST Kruskal's on SimpleWeightedGraphs (#835)

* Update kruskal.jl

* Update prim.jl

* Update kruskal.jl

* Update kruskal.jl

* Update prim.jl

* Update kruskal.jl

* Update prim.jl

* Update kruskal.jl

* Update prim.jl

* reverting changes

* Revert "reverting changes"

This reverts commit ac1760b.

* Revert "Update prim.jl"

This reverts commit 677f6fa.

* Revert "Update kruskal.jl"

This reverts commit a0e9c47.

* Revert "Update prim.jl"

This reverts commit 793bac4.

* Revert "Update kruskal.jl"

This reverts commit 6114e16.

* Revert "Update prim.jl"

This reverts commit 551f1e6.

* Revert "Update kruskal.jl"

This reverts commit 941005e.

* Revert "Update kruskal.jl"

This reverts commit a404514.

* Revert "Update prim.jl"

This reverts commit 2d43a60.

* Revert "Update kruskal.jl"

This reverts commit 4577920.

* fix problems with SimpleWeightedGraphs

* fix problems with SimpleWeightedGraphs

* fix problems with SimpleWeightedGraphs

* bipartite_map on 2-order graphs fixed. Added proper tests. Fixed test connected to bipartite_map (#836)

* Correct pre-allocation of memory in Prim's MST (#839)

* Improve Kruskal's MST by optimizing Union-Find (#843)

* add missing backtick (#846)

* Add greedy_color for Graph Coloring (#844)

* Add greedy_color for Graph Coloring

* Improve Kruskal's MST by optimizing Union-Find (#843)

* Update README.md

* Update README.md

* first cut at 0.7 compatibility (#848)

* using LightGraphs does not error

* Switch to LinearAlgebra and SparseArrays std libs

* Fix most of linalg tests

* Add SharedArrays for distance tests to compile

* Add Random and Markdown to stdlibs used

* Fix connectivity tests

* IntSet -> BitSet

* Add DelimitedFiles stdlib for readcsv

* Fix failing test

* first cut

* Use mauro/SimpleTraits.jl/m3/where-fns in tests

* Fix SimpleTraits checkout (#851)

* Move up SimpleTraits checkout (#852)

* Update runtests.jl

* Update REQUIRE

* Update REQUIRE

* femtocleaner with additional depwarn fixes (#856)

fix deprecation warnings based on local femtocleaner run

* use equalto in degeneracy.jl (#858)

* fix depwarns in linalg submodule (#860)

* update linalg/spectral to fix deprecations

* fix depwarns in graphmatrices

* fixes doc deprecation warnings (#861)

* fixes doc deprecation warnings

* adding Base64 to runtests

* Update README.md

* remove add/remove vertex/edge from core, minor bug fix (#862)

* remove add/remove vertex/edge from core, minor bug fix

* fix tests

* export add/rem vertex

* remove long-term deprecation warnings (#863)

* uninitialized -> undef, blkdiag -> blockdiag, and removed import of d… (#865)

* uninitialized -> undef, blkdiag -> blockdiag, and removed import of deprecated functions from LG to LinAlg

* test coverage for digraph eltype

* removes equalto (#867)

* optional sorting algorithm for gdistances (#868)

add the ability to pass RadixSort to gdistances!

* update url and mention directed graphs explicilty (#837)

* update url and mention directed graphs explicilty

* Update graphtypes.md

* Update graphtypes.md

fixed references.

* Speed improvements for function transitiveclosure! (#870)

* Speed improvements for function transitiveclosure!

Instead of checking for all paths i -> k and k -> j for a given vertex k
we only iterate over the in- and outneighbours of k.

* Merged some conditionals into a single statement

* Cache efficient Floyd Warshall (#873)

* Update floyd-warshall.jl

* Cache efficient Floyd Warshall

* fixed an error where smallgraph(:frucht) had 20 vertices instead of 12 (#878)

* Delete .Rhistory

* Added function transitivereduction (#877)

* added function transitivereduction

* Update transitivity.jl

docstring formatting

* Fixed some tests && added testdigraphs for all tests

* Johnson Shortest Path for Sparse Graphs (#884)

* Johnson Shortest Path for Sparse Graphs

Johnson Shortest Path for Sparse Graphs

* Improved memory efficiency if distmx is mutable

* Improved memory efficiency for parallel implementation

* Update index.md

* Added constructors to create graphs from a vector or an iterator of edges (#880)

* Added constructors to create SimpleGraphs and SimpleDiGraphs from a vector or an iterator of edges

* Added constructors to create SimpleGraphs and SimpleDiGraphs from a vector or an iterator of edges

* Slyles1001/892 (#894)

* comments are your friend

* Most of LightGraphs warnings are fixed

* Delete HITS.jl

* Slyles1001/872 (#891)

* DataStructures fixed

* missed heappop!, now it tests clean

* spaces

* Update LightGraphs.jl

* Update runtests.jl

* fixes most depwarns as of 20180529 (#895)

* fixes most depwarns as of 20180529

* graphmatrices problems

* remove tabs

* tabs, again

* Update CONTRIBUTING.md (#897)

* Improve Kruskal and use in-built disjoint set data structure (#896)

* Improve Kruskal and use in-built disjoint set data structure

* Update kruskal.jl

Changes requested by @somil55

* updated syntax for iterator protocol

* fixed iterator, broken inference
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants