old_contents: # -*- coding: utf-8 -*-
  # Minio Python Library for Amazon S3 compatible cloud storage, (C) 2015 Minio, Inc.
  #
  # Licensed under the Apache License, Version 2.0 (the "License");
  # you may not use this file except in compliance with the License.
  # You may obtain a copy of the License at
  #
  #     http://www.apache.org/licenses/LICENSE-2.0
  #
  # Unless required by applicable law or agreed to in writing, software
  # distributed under the License is distributed on an "AS IS" BASIS,
  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  # See the License for the specific language governing permissions and
  # limitations under the License.
  #
  # version_info should conform to PEP 386
  # (major, minor, micro, alpha/beta/rc/final, #)
  # (1, 1, 2, 'alpha', 0) => "1.1.2.dev"
  # (1, 2, 0, 'beta', 2) => "1.2b2"
  version_info = (0, 2, 3, 'final', 0)
  
  def get_version():
      " Returns a PEP 386-compliant version number from version_info. "
      assert len(version_info) == 5
      assert version_info[3] in ('alpha', 'beta', 'rc', 'final')
  
      parts = 2 if version_info[2] == 0 else 3
      main = '.'.join(map(str, version_info[:parts]))
  
      sub = ''
      if version_info[3] == 'alpha' and version_info[4] == 0:
          sub = '.dev0'
      elif version_info[3] != 'final':
          mapping = {'alpha': 'a', 'beta': 'b', 'rc': 'c'}
          sub = mapping[version_info[3]] + str(version_info[4])
  
      return str(main + sub)
  
new_contents: # -*- coding: utf-8 -*-
  # Minio Python Library for Amazon S3 compatible cloud storage, (C) 2015 Minio, Inc.
  #
  # Licensed under the Apache License, Version 2.0 (the "License");
  # you may not use this file except in compliance with the License.
  # You may obtain a copy of the License at
  #
  #     http://www.apache.org/licenses/LICENSE-2.0
  #
  # Unless required by applicable law or agreed to in writing, software
  # distributed under the License is distributed on an "AS IS" BASIS,
  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  # See the License for the specific language governing permissions and
  # limitations under the License.
  #
  # version_info should conform to PEP 386
  # (major, minor, micro, alpha/beta/rc/final, #)
  # (1, 1, 2, 'alpha', 0) => "1.1.2.dev"
  # (1, 2, 0, 'beta', 2) => "1.2b2"
  version_info = (0, 2, 4, 'final', 0)
  
  def get_version():
      " Returns a PEP 386-compliant version number from version_info. "
      assert len(version_info) == 5
      assert version_info[3] in ('alpha', 'beta', 'rc', 'final')
  
      parts = 2 if version_info[2] == 0 else 3
      main = '.'.join(map(str, version_info[:parts]))
  
      sub = ''
      if version_info[3] == 'alpha' and version_info[4] == 0:
          sub = '.dev0'
      elif version_info[3] != 'final':
          mapping = {'alpha': 'a', 'beta': 'b', 'rc': 'c'}
          sub = mapping[version_info[3]] + str(version_info[4])
  
      return str(main + sub)
  
subject: Bump to new version 0.2.4