[Pkg-owncloud-commits] [python-owncloud] 03/96: version.* : We now have version numbers. csync.py: added config file option, cmd line stuff, etc. README: added some help stuff csynclib.py: added an awful way to hopefully locate the shared library libocsync.

Sandro Knauß hefee-guest at moszumanska.debian.org
Fri Nov 22 01:28:21 UTC 2013


This is an automated email from the git hooks/post-receive script.

hefee-guest pushed a commit to branch master
in repository python-owncloud.

commit 0b4cbf460284b5d8162f01f2e895884c73ae09c3
Author: Craig Sawyer <csawyer at yumaed.org>
Date:   Sat Mar 9 18:19:32 2013 -0700

    version.* : We now have version numbers.
    csync.py: added config file option, cmd line stuff, etc.
    README: added some help stuff
    csynclib.py: added an awful way to hopefully locate the shared library libocsync.
---
 version.dat |    1 +
 version.py  |  119 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 120 insertions(+)

diff --git a/version.dat b/version.dat
new file mode 100644
index 0000000..f22470e
--- /dev/null
+++ b/version.dat
@@ -0,0 +1 @@
+{"head": "ff11a63ad9b0aa86b75be7d80aae3cc73fe8532c", "float": 0.1, "string": "0.1"}
\ No newline at end of file
diff --git a/version.py b/version.py
new file mode 100644
index 0000000..ec924b3
--- /dev/null
+++ b/version.py
@@ -0,0 +1,119 @@
+import subprocess
+import json
+
+class ver(object):
+	def __init__(self, verfile='version.dat'):
+		self.verfile = verfile
+		self.loadVersion()
+		self.setup()
+	def setup(self):
+		"""sublass this to do something useful for yourself"""
+		pass
+	@property
+	def asFloat(self):
+		return self.version['float']
+	@property
+	def asString(self):
+		return self.version['string']
+	def makeString(self):
+		s = str(self.asFloat)
+		#s = s.replace('.','_')
+		return s
+	def makeNpackd(self):
+		s = "%.2f" % (self.asFloat)
+		return s
+	def makeFloat(self, s):
+		s = str(s)
+		s = s.replace('_', '.')
+		f = float(s)
+		return f
+	def bumpVersion(self, amt=.1):
+		newVersion = self.asFloat + amt
+		self.setVersion(newVersion)
+	def setVersion(self, ver):
+		ver = str(ver)
+		self.version['float'] = self.makeFloat(ver)
+		self.version['string'] = self.makeString()
+		self.asNpackd = self.makeNpackd()
+		self.saveVersion()
+	def loadVersion(self):
+		try:
+			#ver = open(self.verfile,'r').read()
+			ver = json.load(open(self.verfile,'r'))
+		except IOError:
+			ver = {'float': 0.0, 'string': '0.0' }
+		self.version = ver
+		#self.asFloat = self.makeFloat(ver['version'])
+		#self.asString = self.makeString()
+		self.asNpackd = self.makeNpackd()
+		return ver
+	def saveVersion(self):
+		json.dump(self.version,open(self.verfile,'w'))
+		#open(self.verfile,'w').write(str(self.asFloat))
+		return self.verfile
+
+class hgVersion(ver):
+	def getHeadVersion(self):
+		"""if hg is around, return the current version and save it
+		otherwise return the saved copy, or 00 if not already saved.
+		"""
+		cmd = "hg heads".split()
+		try:
+			out = subprocess.check_output(cmd)
+		except:
+			out = '\n'
+		out = out.split('\n',1)
+		if 'changeset' in out[0]:
+			out = out[0].split()
+			ver = out[1]
+			self.version['head'] = ver
+			self.saveVersion()
+		else:
+			if self.version.has_key('head'):
+				ver = self.version['head']
+			else:
+				ver = '00'
+		return ver
+	def setup(self):
+		self.getHeadVersion()
+	@property
+	def asHead(self):
+		return self.getHeadVersion()
+
+class gitVersion(ver):
+	def getHeadVersion(self):
+		"""if git is around, return the current version and save it.
+		otherwise return the saved copy, or 00 if not already saved.
+		"""
+		cmd = 'git rev-parse --verify HEAD'.split()
+		try:
+			out = subprocess.check_output(cmd)
+		except:
+			out = '\n'
+		out = out.split('\n',1)
+		if len(out[0]) > 1:
+			ver = out[0]
+			self.version['head'] = ver
+			self.saveVersion()
+		else:
+			if self.version.has_key('head'):
+				ver = self.version['head']
+			else:
+				ver = '00'
+		return ver
+	def setup(self):
+		self.getHeadVersion()
+	@property
+	def asHead(self):
+		return self.getHeadVersion()
+
+version = gitVersion()
+
+
+if __name__ == '__main__':
+	print 'testing version'
+	v = hgVersion()
+	print 'dict:', v.version
+	print 'string:', v.asString
+	print 'float:', v.asFloat
+	print 'hghead', v.asHead

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-owncloud/python-owncloud.git



More information about the Pkg-owncloud-commits mailing list