In [1]:
import gitreleases

In [2]:
gitreleases.get_release_info()


libpysal has a latest release
esda has a latest release
giddy has a latest release
inequality has a latest release
pointpats has a latest release
spaghetti has a latest release
mapclassify has a latest release
splot has no latest release
spreg has a latest release
spglm has a latest release
spint has a latest release
mgwr has a latest release
spvcm has a latest release
The following 12 packages have a git release:
	
dict_keys(['libpysal', 'esda', 'giddy', 'inequality', 'pointpats', 'spaghetti', 'mapclassify', 'spreg', 'spglm', 'spint', 'mgwr', 'spvcm'])


The following 1 packages do not have a git release:
	
['splot']

In [3]:
gitreleases.get_tarballs()


libpysal
https://api.github.com/repos/pysal/libpysal/tarball/v4.0.1
tarballs/libpysal.tar.gz
esda
https://api.github.com/repos/pysal/esda/tarball/v2.0.1
tarballs/esda.tar.gz
giddy
https://api.github.com/repos/pysal/giddy/tarball/v2.0.0
tarballs/giddy.tar.gz
inequality
https://api.github.com/repos/pysal/inequality/tarball/v1.0.0
tarballs/inequality.tar.gz
pointpats
https://api.github.com/repos/pysal/pointpats/tarball/V1.1.0
tarballs/pointpats.tar.gz
spaghetti
https://api.github.com/repos/pysal/spaghetti/tarball/1.1.1.post3
tarballs/spaghetti.tar.gz
mapclassify
https://api.github.com/repos/pysal/mapclassify/tarball/v2.0.1
tarballs/mapclassify.tar.gz
spreg
https://api.github.com/repos/pysal/spreg/tarball/v1.0.4post1
tarballs/spreg.tar.gz
spglm
https://api.github.com/repos/pysal/spglm/tarball/v1.0.6
tarballs/spglm.tar.gz
spint
https://api.github.com/repos/pysal/spint/tarball/v1.0.4
tarballs/spint.tar.gz
mgwr
https://api.github.com/repos/pysal/mgwr/tarball/v2.0.1
tarballs/mgwr.tar.gz
spvcm
https://api.github.com/repos/pysal/spvcm/tarball/0.2.0
tarballs/spvcm.tar.gz
Out[3]:
{'libpysal': ['v4.0.1',
  'https://api.github.com/repos/pysal/libpysal/tarball/v4.0.1'],
 'esda': ['v2.0.1', 'https://api.github.com/repos/pysal/esda/tarball/v2.0.1'],
 'giddy': ['v2.0.0',
  'https://api.github.com/repos/pysal/giddy/tarball/v2.0.0'],
 'inequality': ['v1.0.0',
  'https://api.github.com/repos/pysal/inequality/tarball/v1.0.0'],
 'pointpats': ['V1.1.0',
  'https://api.github.com/repos/pysal/pointpats/tarball/V1.1.0'],
 'spaghetti': ['1.1.1.post3',
  'https://api.github.com/repos/pysal/spaghetti/tarball/1.1.1.post3'],
 'mapclassify': ['v2.0.1',
  'https://api.github.com/repos/pysal/mapclassify/tarball/v2.0.1'],
 'spreg': ['v1.0.4post1',
  'https://api.github.com/repos/pysal/spreg/tarball/v1.0.4post1'],
 'spglm': ['v1.0.6',
  'https://api.github.com/repos/pysal/spglm/tarball/v1.0.6'],
 'spint': ['v1.0.4',
  'https://api.github.com/repos/pysal/spint/tarball/v1.0.4'],
 'mgwr': ['v2.0.1', 'https://api.github.com/repos/pysal/mgwr/tarball/v2.0.1'],
 'spvcm': ['0.2.0', 'https://api.github.com/repos/pysal/spvcm/tarball/0.2.0']}

In [5]:
import json
with open('tarballs.json', 'r') as fp:
    sources = json.load(fp)

In [6]:
sources


Out[6]:
{'libpysal': ['v4.0.1',
  'https://api.github.com/repos/pysal/libpysal/tarball/v4.0.1'],
 'esda': ['v2.0.1', 'https://api.github.com/repos/pysal/esda/tarball/v2.0.1'],
 'giddy': ['v2.0.0',
  'https://api.github.com/repos/pysal/giddy/tarball/v2.0.0'],
 'inequality': ['v1.0.0',
  'https://api.github.com/repos/pysal/inequality/tarball/v1.0.0'],
 'pointpats': ['V1.1.0',
  'https://api.github.com/repos/pysal/pointpats/tarball/V1.1.0'],
 'spaghetti': ['1.1.1.post3',
  'https://api.github.com/repos/pysal/spaghetti/tarball/1.1.1.post3'],
 'mapclassify': ['v2.0.1',
  'https://api.github.com/repos/pysal/mapclassify/tarball/v2.0.1'],
 'spreg': ['v1.0.4post1',
  'https://api.github.com/repos/pysal/spreg/tarball/v1.0.4post1'],
 'spglm': ['v1.0.6',
  'https://api.github.com/repos/pysal/spglm/tarball/v1.0.6'],
 'spint': ['v1.0.4',
  'https://api.github.com/repos/pysal/spint/tarball/v1.0.4'],
 'mgwr': ['v2.0.1', 'https://api.github.com/repos/pysal/mgwr/tarball/v2.0.1'],
 'spvcm': ['0.2.0', 'https://api.github.com/repos/pysal/spvcm/tarball/0.2.0']}

In [10]:
# git clone  git@github.com:mygitname/theproject.git --branch 1.0.2
import os
for subpackage in sources.keys():
    tag = sources[subpackage][0]
    pkgstr = "git clone git@github.com:pysal/{subpackage}.git --branch {tag} tmp/{subpackage}".format(subpackage=subpackage,
                                                                                      tag=tag)
    print(pkgstr)
    os.system(pkgstr)


git clone git@github.com:pysal/libpysal.git --branch v4.0.1 tmp/libpysal
git clone git@github.com:pysal/esda.git --branch v2.0.1 tmp/esda
git clone git@github.com:pysal/giddy.git --branch v2.0.0 tmp/giddy
git clone git@github.com:pysal/inequality.git --branch v1.0.0 tmp/inequality
git clone git@github.com:pysal/pointpats.git --branch V1.1.0 tmp/pointpats
git clone git@github.com:pysal/spaghetti.git --branch 1.1.1.post3 tmp/spaghetti
git clone git@github.com:pysal/mapclassify.git --branch v2.0.1 tmp/mapclassify
git clone git@github.com:pysal/spreg.git --branch v1.0.4post1 tmp/spreg
git clone git@github.com:pysal/spglm.git --branch v1.0.6 tmp/spglm
git clone git@github.com:pysal/spint.git --branch v1.0.4 tmp/spint
git clone git@github.com:pysal/mgwr.git --branch v2.0.1 tmp/mgwr
git clone git@github.com:pysal/spvcm.git --branch 0.2.0 tmp/spvcm

In [1]:
import gitreleases

In [3]:
gitreleases.get_release_info()


libpysal has a latest release
esda has a latest release
giddy has a latest release
inequality has a latest release
pointpats has a latest release
spaghetti has a latest release
mapclassify has a latest release
splot has no latest release
spreg has a latest release
spglm has a latest release
spint has a latest release
mgwr has a latest release
spvcm has a latest release
The following 12 packages have a git release:
	
dict_keys(['libpysal', 'esda', 'giddy', 'inequality', 'pointpats', 'spaghetti', 'mapclassify', 'spreg', 'spglm', 'spint', 'mgwr', 'spvcm'])


The following 1 packages do not have a git release:
	
['splot']

In [4]:
gitreleases.clone_releases()


git clone git@github.com:pysal/libpysal.git --branch v4.0.1 tmp/libpysal
git clone git@github.com:pysal/esda.git --branch v2.0.1 tmp/esda
git clone git@github.com:pysal/giddy.git --branch v2.0.0 tmp/giddy
git clone git@github.com:pysal/inequality.git --branch v1.0.0 tmp/inequality
git clone git@github.com:pysal/pointpats.git --branch V1.1.0 tmp/pointpats
git clone git@github.com:pysal/spaghetti.git --branch 1.1.1.post3 tmp/spaghetti
git clone git@github.com:pysal/mapclassify.git --branch v2.0.1 tmp/mapclassify
git clone git@github.com:pysal/spreg.git --branch v1.0.4post1 tmp/spreg
git clone git@github.com:pysal/spglm.git --branch v1.0.6 tmp/spglm
git clone git@github.com:pysal/spint.git --branch v1.0.4 tmp/spint
git clone git@github.com:pysal/mgwr.git --branch v2.0.1 tmp/mgwr
git clone git@github.com:pysal/spvcm.git --branch 0.2.0 tmp/spvcm

In [5]:
gitreleases.get_tarballs()


---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-5-f7c6a581b7dc> in <module>()
----> 1 gitreleases.get_tarballs()

~/Dropbox/p/pysal/src/pysal/gitreleases.py in get_tarballs()
     58     with open('tarballs.json', 'r') as fp:
     59         sources = json.load(fp)
---> 60     Os.system('rm -rf tarballs')
     61     os.system('mkdir tarballs')
     62     for subpackage in sources.keys():

NameError: name 'Os' is not defined

In [2]:
import gitreleases

In [3]:
gitreleases.get_tarballs()


libpysal
https://api.github.com/repos/pysal/libpysal/tarball/v4.0.1
tarballs/libpysal.tar.gz
esda
https://api.github.com/repos/pysal/esda/tarball/v2.0.1
tarballs/esda.tar.gz
giddy
https://api.github.com/repos/pysal/giddy/tarball/v2.0.0
tarballs/giddy.tar.gz
inequality
https://api.github.com/repos/pysal/inequality/tarball/v1.0.0
tarballs/inequality.tar.gz
pointpats
https://api.github.com/repos/pysal/pointpats/tarball/V1.1.0
tarballs/pointpats.tar.gz
spaghetti
https://api.github.com/repos/pysal/spaghetti/tarball/1.1.1.post3
tarballs/spaghetti.tar.gz
mapclassify
https://api.github.com/repos/pysal/mapclassify/tarball/v2.0.1
tarballs/mapclassify.tar.gz
spreg
https://api.github.com/repos/pysal/spreg/tarball/v1.0.4post1
tarballs/spreg.tar.gz
spglm
https://api.github.com/repos/pysal/spglm/tarball/v1.0.6
tarballs/spglm.tar.gz
spint
https://api.github.com/repos/pysal/spint/tarball/v1.0.4
tarballs/spint.tar.gz
mgwr
https://api.github.com/repos/pysal/mgwr/tarball/v2.0.1
tarballs/mgwr.tar.gz
spvcm
https://api.github.com/repos/pysal/spvcm/tarball/0.2.0
tarballs/spvcm.tar.gz
Out[3]:
{'libpysal': ['v4.0.1',
  'https://api.github.com/repos/pysal/libpysal/tarball/v4.0.1'],
 'esda': ['v2.0.1', 'https://api.github.com/repos/pysal/esda/tarball/v2.0.1'],
 'giddy': ['v2.0.0',
  'https://api.github.com/repos/pysal/giddy/tarball/v2.0.0'],
 'inequality': ['v1.0.0',
  'https://api.github.com/repos/pysal/inequality/tarball/v1.0.0'],
 'pointpats': ['V1.1.0',
  'https://api.github.com/repos/pysal/pointpats/tarball/V1.1.0'],
 'spaghetti': ['1.1.1.post3',
  'https://api.github.com/repos/pysal/spaghetti/tarball/1.1.1.post3'],
 'mapclassify': ['v2.0.1',
  'https://api.github.com/repos/pysal/mapclassify/tarball/v2.0.1'],
 'spreg': ['v1.0.4post1',
  'https://api.github.com/repos/pysal/spreg/tarball/v1.0.4post1'],
 'spglm': ['v1.0.6',
  'https://api.github.com/repos/pysal/spglm/tarball/v1.0.6'],
 'spint': ['v1.0.4',
  'https://api.github.com/repos/pysal/spint/tarball/v1.0.4'],
 'mgwr': ['v2.0.1', 'https://api.github.com/repos/pysal/mgwr/tarball/v2.0.1'],
 'spvcm': ['0.2.0', 'https://api.github.com/repos/pysal/spvcm/tarball/0.2.0']}

In [4]:
import tarfile,os

In [14]:
tar = tarfile.open("tarballs/libpysal.tar.gz", "r:gz")
members = tar.getmembers()
path = members[0].path
print(path)


pysal-libpysal-362db82

In [13]:
m0.path


Out[13]:
'pysal-libpysal-362db82'

In [23]:
os.system('tar xzvf tarballs/libpysal.tar.gz')


Out[23]:
0

In [24]:
cmd = "mv {path} tmp/{package}".format(path=path,package='libpysal')

In [25]:
cmd


Out[25]:
'mv pysal-libpysal-362db82 tmp/libpysal'

In [26]:
os.system(cmd)


Out[26]:
0

In [27]:
ls tmp


libpysal/ mgwr/     spvcm/

In [1]:
import gitreleases

In [2]:
gitreleases.get_tarballs()


libpysal
https://api.github.com/repos/pysal/libpysal/tarball/v4.0.1
tarballs/libpysal.tar.gz
tar xzvf tarballs/libpysal.tar.gz
cp -R pysal-libpysal-362db82 tmp/libpysal
esda
https://api.github.com/repos/pysal/esda/tarball/v2.0.1
tarballs/esda.tar.gz
tar xzvf tarballs/esda.tar.gz
cp -R pysal-esda-94f81e1 tmp/esda
giddy
https://api.github.com/repos/pysal/giddy/tarball/v2.0.0
tarballs/giddy.tar.gz
tar xzvf tarballs/giddy.tar.gz
cp -R pysal-giddy-ad4cc13 tmp/giddy
inequality
https://api.github.com/repos/pysal/inequality/tarball/v1.0.0
tarballs/inequality.tar.gz
tar xzvf tarballs/inequality.tar.gz
cp -R pysal-inequality-fd6c1c1 tmp/inequality
pointpats
https://api.github.com/repos/pysal/pointpats/tarball/V1.1.0
tarballs/pointpats.tar.gz
tar xzvf tarballs/pointpats.tar.gz
cp -R pysal-pointpats-3cecbf5 tmp/pointpats
spaghetti
https://api.github.com/repos/pysal/spaghetti/tarball/1.1.1.post3
tarballs/spaghetti.tar.gz
tar xzvf tarballs/spaghetti.tar.gz
cp -R pysal-spaghetti-83c92b5 tmp/spaghetti
mapclassify
https://api.github.com/repos/pysal/mapclassify/tarball/v2.0.1
tarballs/mapclassify.tar.gz
tar xzvf tarballs/mapclassify.tar.gz
cp -R pysal-mapclassify-07345d6 tmp/mapclassify
spreg
https://api.github.com/repos/pysal/spreg/tarball/v1.0.4post1
tarballs/spreg.tar.gz
tar xzvf tarballs/spreg.tar.gz
cp -R pysal-spreg-6898b3c tmp/spreg
spglm
https://api.github.com/repos/pysal/spglm/tarball/v1.0.6
tarballs/spglm.tar.gz
tar xzvf tarballs/spglm.tar.gz
cp -R pysal-spglm-8d6e806 tmp/spglm
spint
https://api.github.com/repos/pysal/spint/tarball/v1.0.4
tarballs/spint.tar.gz
tar xzvf tarballs/spint.tar.gz
cp -R pysal-spint-ec76c38 tmp/spint
mgwr
https://api.github.com/repos/pysal/mgwr/tarball/v2.0.1
tarballs/mgwr.tar.gz
tar xzvf tarballs/mgwr.tar.gz
cp -R pysal-mgwr-2884d7b tmp/mgwr
spvcm
https://api.github.com/repos/pysal/spvcm/tarball/0.2.0
tarballs/spvcm.tar.gz
tar xzvf tarballs/spvcm.tar.gz
cp -R pysal-spvcm-ab687ce tmp/spvcm
Out[2]:
{'libpysal': ['v4.0.1',
  'https://api.github.com/repos/pysal/libpysal/tarball/v4.0.1'],
 'esda': ['v2.0.1', 'https://api.github.com/repos/pysal/esda/tarball/v2.0.1'],
 'giddy': ['v2.0.0',
  'https://api.github.com/repos/pysal/giddy/tarball/v2.0.0'],
 'inequality': ['v1.0.0',
  'https://api.github.com/repos/pysal/inequality/tarball/v1.0.0'],
 'pointpats': ['V1.1.0',
  'https://api.github.com/repos/pysal/pointpats/tarball/V1.1.0'],
 'spaghetti': ['1.1.1.post3',
  'https://api.github.com/repos/pysal/spaghetti/tarball/1.1.1.post3'],
 'mapclassify': ['v2.0.1',
  'https://api.github.com/repos/pysal/mapclassify/tarball/v2.0.1'],
 'spreg': ['v1.0.4post1',
  'https://api.github.com/repos/pysal/spreg/tarball/v1.0.4post1'],
 'spglm': ['v1.0.6',
  'https://api.github.com/repos/pysal/spglm/tarball/v1.0.6'],
 'spint': ['v1.0.4',
  'https://api.github.com/repos/pysal/spint/tarball/v1.0.4'],
 'mgwr': ['v2.0.1', 'https://api.github.com/repos/pysal/mgwr/tarball/v2.0.1'],
 'spvcm': ['0.2.0', 'https://api.github.com/repos/pysal/spvcm/tarball/0.2.0']}

In [ ]: