From: Brett Smith Date: Fri, 26 Sep 2014 21:06:15 +0000 (-0400) Subject: 3848: Package version numbers use UTC timestamps. X-Git-Tag: 1.1.0~2150^2 X-Git-Url: https://git.arvados.org/arvados.git/commitdiff_plain/c53ffcb20017ae0f99fc49095c7008555ac171cc 3848: Package version numbers use UTC timestamps. Per note-9 in the issue. --- diff --git a/sdk/cli/arvados-cli.gemspec b/sdk/cli/arvados-cli.gemspec index 88a409c96d..9daae38cb3 100644 --- a/sdk/cli/arvados-cli.gemspec +++ b/sdk/cli/arvados-cli.gemspec @@ -3,12 +3,15 @@ if not File.exists?('/usr/bin/git') then exit end +git_timestamp, git_hash = `git log -n1 --first-parent --format=%ct:%H .`.chomp.split(":") +git_timestamp = Time.at(git_timestamp.to_i).utc + Gem::Specification.new do |s| s.name = 'arvados-cli' - s.version = '0.1.' + `git log --first-parent --pretty=format:'%ci' -n 1 .`[0..18].gsub(/[ \-:]/,'') - s.date = `git log --first-parent --pretty=format:'%ci' -n 1 .`[0..9] + s.version = "0.1.#{git_timestamp.strftime('%Y%m%d%H%M%S')}" + s.date = git_timestamp.strftime("%Y-%m-%d") s.summary = "Arvados CLI tools" - s.description = "Arvados command line tools, git commit " + `git log --pretty=format:'%H' -n 1 .` + s.description = "Arvados command line tools, git commit #{git_hash}" s.authors = ["Arvados Authors"] s.email = 'gem-dev@curoverse.com' #s.bindir = '.' diff --git a/sdk/python/setup.py b/sdk/python/setup.py index 5ae4e64b33..03637cbf58 100644 --- a/sdk/python/setup.py +++ b/sdk/python/setup.py @@ -2,6 +2,7 @@ import os import subprocess +import time from setuptools import setup, find_packages @@ -12,15 +13,13 @@ cmd_opts = {'egg_info': {}} try: git_tags = subprocess.check_output( ['git', 'log', '--first-parent', '--max-count=1', - '--format=format:%ci %h', SETUP_DIR]).split() - assert len(git_tags) == 4 + '--format=format:%ct %h', SETUP_DIR]).split() + assert len(git_tags) == 2 except (AssertionError, OSError, subprocess.CalledProcessError): pass else: - del git_tags[2] # Remove timezone - for ii in [0, 1]: # Remove non-digits from other datetime fields - git_tags[ii] = ''.join(c for c in git_tags[ii] if c.isdigit()) - cmd_opts['egg_info']['tag_build'] = '.{}{}.{}'.format(*git_tags) + git_tags[0] = time.strftime('%Y%m%d%H%M%S', time.gmtime(int(git_tags[0]))) + cmd_opts['egg_info']['tag_build'] = '.{}.{}'.format(*git_tags) setup(name='arvados-python-client', diff --git a/sdk/ruby/arvados.gemspec b/sdk/ruby/arvados.gemspec index cc6b5f5de4..85f41720e8 100644 --- a/sdk/ruby/arvados.gemspec +++ b/sdk/ruby/arvados.gemspec @@ -3,12 +3,15 @@ if not File.exists?('/usr/bin/git') then exit end +git_timestamp, git_hash = `git log -n1 --first-parent --format=%ct:%H .`.chomp.split(":") +git_timestamp = Time.at(git_timestamp.to_i).utc + Gem::Specification.new do |s| s.name = 'arvados' - s.version = '0.1.' + `git log --first-parent --pretty=format:'%ci' -n 1 .`[0..18].gsub(/[ \-:]/,'') - s.date = `git log --first-parent --pretty=format:'%ci' -n 1 .`[0..9] + s.version = "0.1.#{git_timestamp.strftime('%Y%m%d%H%M%S')}" + s.date = git_timestamp.strftime("%Y-%m-%d") s.summary = "Arvados client library" - s.description = "Arvados client library, git commit " + `git log --pretty=format:'%H' -n 1 .` + s.description = "Arvados client library, git commit #{git_hash}" s.authors = ["Arvados Authors"] s.email = 'gem-dev@curoverse.com' s.licenses = ['Apache License, Version 2.0'] diff --git a/services/fuse/setup.py b/services/fuse/setup.py index 3ea28cbbba..be9e4e64a5 100644 --- a/services/fuse/setup.py +++ b/services/fuse/setup.py @@ -2,6 +2,7 @@ import os import subprocess +import time from setuptools import setup, find_packages @@ -12,15 +13,13 @@ cmd_opts = {'egg_info': {}} try: git_tags = subprocess.check_output( ['git', 'log', '--first-parent', '--max-count=1', - '--format=format:%ci %h', SETUP_DIR]).split() - assert len(git_tags) == 4 + '--format=format:%ct %h', SETUP_DIR]).split() + assert len(git_tags) == 2 except (AssertionError, OSError, subprocess.CalledProcessError): pass else: - del git_tags[2] # Remove timezone - for ii in [0, 1]: # Remove non-digits from other datetime fields - git_tags[ii] = ''.join(c for c in git_tags[ii] if c.isdigit()) - cmd_opts['egg_info']['tag_build'] = '.{}{}.{}'.format(*git_tags) + git_tags[0] = time.strftime('%Y%m%d%H%M%S', time.gmtime(int(git_tags[0]))) + cmd_opts['egg_info']['tag_build'] = '.{}.{}'.format(*git_tags) setup(name='arvados_fuse',