Advertisement
Guest User

Untitled

a guest
Sep 3rd, 2015
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.25 KB | None | 0 0
  1. #!/usr/bin/env julia
  2.  
  3. dbpath = "$(pwd())/updatedb"
  4.  
  5. mkpath(dbpath)
  6. Pkg.update()
  7. metadata = Pkg.dir("METADATA")
  8.  
  9. function readpkg(name :: ASCIIString)
  10. version = Pkg.available(name)[end]
  11. # uncomment this for no segfault!
  12. #println("got version")
  13.  
  14. metadata_file = "$metadata/$name/versions/$version/requires"
  15. requires = begin
  16. try
  17. f = open(metadata_file)
  18. try
  19. clear = x -> x
  20. Set{ASCIIString}(map(clear, readlines(f)))
  21. finally
  22. close(f)
  23. end
  24. catch
  25. Set{ASCIIString}()
  26. end
  27. end
  28.  
  29. url = split(readall("$metadata/$name/url"), "\n")[1]
  30. rev = split(readall("$metadata/$name/versions/$version/sha1"), "\n")[1]
  31.  
  32. cd(dbpath)
  33.  
  34. sha256 = begin
  35. try
  36. if ! isdir(name)
  37. mkdir(name)
  38. cd(name)
  39. run(`git init`)
  40. else
  41. cd(name)
  42. try
  43. run(`git remote remove origin`)
  44. catch
  45. end
  46. end
  47. # or remove any of these
  48. run(`git remote add origin $url`)
  49. run(`git fetch -t origin`)
  50.  
  51. "aaabbb"
  52. catch
  53. rethrow()
  54. end
  55. end
  56.  
  57. # remove "try" block for no segfault!
  58. try
  59. "aaaa"
  60. catch
  61. # or remove this!
  62. println("$name $version $requires $url $rev $sha256")
  63. rethrow()
  64. end
  65. end
  66.  
  67. map(readpkg, Pkg.available())
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement