diff --git a/CHANGES.txt b/CHANGES.txt index f7d2af8..004ede1 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,10 +1,2 @@ -Change-log for django-tenant-schemas. - -This file will be added to as part of each release - +Pypi should now correctly contain all files ---- - -Version 1.0.0 (first version), Sat 02 Mar 2013 -=============================================== - - diff --git a/LICENSE.txt b/LICENSE similarity index 100% rename from LICENSE.txt rename to LICENSE diff --git a/MANIFEST.in b/MANIFEST.in index b7842d7..e7a26e3 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1,7 +1,7 @@ include LICENSE -include README.markdown +include README.rst include *.txt include version.py -include VERSION \ No newline at end of file +include VERSION diff --git a/README.markdown b/README.rst similarity index 96% rename from README.markdown rename to README.rst index 1313396..7ed2588 100644 --- a/README.markdown +++ b/README.rst @@ -35,6 +35,8 @@ Tenants are identified via their host name (i.e tenant.domain.com). This informa What can this app do? --------------------------------------- +### As many tenants as you want ### +Each tenant has its data on a specific schema. Use a single project instance to serve as many as you want. ### Tenant-specific and shared apps ### Tenant-specific apps do not share their data between tenants, but you can also have shared apps where the information is always available and shared between all. diff --git a/__init__.py b/__init__.py index 5becc17..e69de29 100644 --- a/__init__.py +++ b/__init__.py @@ -1 +0,0 @@ -__version__ = "1.0.0" diff --git a/docs/conf.py b/docs/conf.py index debbbdd..5780941 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -39,16 +39,16 @@ master_doc = 'index' # General information about the project. project = u'django-tenant-schema' -copyright = u'%d, myauthor' % datetime.date.today().year +copyright = u'%d, Bernardo Pires Carneiro' % datetime.date.today().year # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the # built documents. # # The short X.Y version. -version = '1.0' +version = '1.0.0' # The full version, including alpha/beta/rc tags. -release = '1.0' +release = '1.0.0' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. @@ -174,7 +174,7 @@ htmlhelp_basename = 'tenantschemasdoc' # (source start file, target name, title, author, documentclass [howto/manual]). latex_documents = [ ('index', 'tenantschema.tex', u'tenantschemaDocumentation', - u'myauthor', 'manual'), + u'Bernardo Pires Carneiro', 'manual'), ] # The name of an image file (relative to this directory) to place at the top of diff --git a/files.txt b/files.txt new file mode 100644 index 0000000..6bd7450 --- /dev/null +++ b/files.txt @@ -0,0 +1,18 @@ +/home/bernardo/envs/jurissimo/lib/python2.7/site-packages/django_tenant_schemas-v1.0.0_2_gbf0480f-py2.7.egg/EGG-INFO/PKG-INFO +/home/bernardo/envs/jurissimo/lib/python2.7/site-packages/django_tenant_schemas-v1.0.0_2_gbf0480f-py2.7.egg/EGG-INFO/requires.txt +/home/bernardo/envs/jurissimo/lib/python2.7/site-packages/django_tenant_schemas-v1.0.0_2_gbf0480f-py2.7.egg/EGG-INFO/dependency_links.txt +/home/bernardo/envs/jurissimo/lib/python2.7/site-packages/django_tenant_schemas-v1.0.0_2_gbf0480f-py2.7.egg/EGG-INFO/top_level.txt +/home/bernardo/envs/jurissimo/lib/python2.7/site-packages/django_tenant_schemas-v1.0.0_2_gbf0480f-py2.7.egg/EGG-INFO/SOURCES.txt +/home/bernardo/envs/jurissimo/lib/python2.7/site-packages/django_tenant_schemas-v1.0.0_2_gbf0480f-py2.7.egg/EGG-INFO/zip-safe +/home/bernardo/envs/jurissimo/lib/python2.7/site-packages/django_tenant_schemas-v1.0.0_2_gbf0480f-py2.7.egg/tenant_schemas/urlresolvers.py +/home/bernardo/envs/jurissimo/lib/python2.7/site-packages/django_tenant_schemas-v1.0.0_2_gbf0480f-py2.7.egg/tenant_schemas/__init__.py +/home/bernardo/envs/jurissimo/lib/python2.7/site-packages/django_tenant_schemas-v1.0.0_2_gbf0480f-py2.7.egg/tenant_schemas/signals.pyc +/home/bernardo/envs/jurissimo/lib/python2.7/site-packages/django_tenant_schemas-v1.0.0_2_gbf0480f-py2.7.egg/tenant_schemas/models.py +/home/bernardo/envs/jurissimo/lib/python2.7/site-packages/django_tenant_schemas-v1.0.0_2_gbf0480f-py2.7.egg/tenant_schemas/urlresolvers.pyc +/home/bernardo/envs/jurissimo/lib/python2.7/site-packages/django_tenant_schemas-v1.0.0_2_gbf0480f-py2.7.egg/tenant_schemas/__init__.pyc +/home/bernardo/envs/jurissimo/lib/python2.7/site-packages/django_tenant_schemas-v1.0.0_2_gbf0480f-py2.7.egg/tenant_schemas/utils.py +/home/bernardo/envs/jurissimo/lib/python2.7/site-packages/django_tenant_schemas-v1.0.0_2_gbf0480f-py2.7.egg/tenant_schemas/utils.pyc +/home/bernardo/envs/jurissimo/lib/python2.7/site-packages/django_tenant_schemas-v1.0.0_2_gbf0480f-py2.7.egg/tenant_schemas/middleware.py +/home/bernardo/envs/jurissimo/lib/python2.7/site-packages/django_tenant_schemas-v1.0.0_2_gbf0480f-py2.7.egg/tenant_schemas/models.pyc +/home/bernardo/envs/jurissimo/lib/python2.7/site-packages/django_tenant_schemas-v1.0.0_2_gbf0480f-py2.7.egg/tenant_schemas/signals.py +/home/bernardo/envs/jurissimo/lib/python2.7/site-packages/django_tenant_schemas-v1.0.0_2_gbf0480f-py2.7.egg/tenant_schemas/middleware.pyc diff --git a/setup.py b/setup.py index de50542..b420318 100755 --- a/setup.py +++ b/setup.py @@ -1,6 +1,7 @@ #!/usr/bin/env python from os.path import exists +from version import get_git_version try: from setuptools import setup except ImportError: @@ -10,16 +11,29 @@ from tenant_schemas import __version__ setup( name='django-tenant-schemas', - version=__version__, + version=get_git_version(), author='Bernardo Pires Carneiro', author_email='carneiro.be@gmail.com', - packages=['tenant_schemas'], + packages=[ + 'tenant_schemas', + 'tenant_schemas.postgresql_backend', + 'tenant_schemas.management', + 'tenant_schemas.templatetags', + 'tenant_schemas.test', + 'tenant_schemas.tests', + 'docs' + ], scripts=[], url='https://github.com/bcarneiro/django-tenant-schemas', license='MIT', description='Tenant support for Django using PostgreSQL schemas.', - long_description=open('README.markdown').read() if exists("README.markdown") else "", + long_description=open('README.rst').read() if exists("README.rst") else "", + classifiers=[ + 'License :: OSI Approved :: MIT License', + 'Framework :: Django', + 'Programming Language :: Python', + ], install_requires=[ - "Django >= 1.2.0" + 'Django >= 1.2.0', ], ) diff --git a/tenant_schemas/__init__.py b/tenant_schemas/__init__.py index 5becc17..5c4105c 100644 --- a/tenant_schemas/__init__.py +++ b/tenant_schemas/__init__.py @@ -1 +1 @@ -__version__ = "1.0.0" +__version__ = "1.0.1" diff --git a/version.py b/version.py new file mode 100644 index 0000000..ab3dde2 --- /dev/null +++ b/version.py @@ -0,0 +1,104 @@ +# -*- coding: utf-8 -*- +# Author: Douglas Creager +# This file is placed into the public domain. + +# Calculates the current version number. If possible, this is the +# output of “git describe”, modified to conform to the versioning +# scheme that setuptools uses. If “git describe” returns an error +# (most likely because we're in an unpacked copy of a release tarball, +# rather than in a git working copy), then we fall back on reading the +# contents of the VERSION file. +# +# To use this script, simply import it your setup.py file, and use the +# results of get_git_version() as your package version: +# +# from version import * +# +# setup( +# version=get_git_version(), +# . +# . +# . +# ) +# +# This will automatically update the VERSION file, if +# necessary. Note that the VERSION file should *not* be +# checked into git; please add it to your top-level .gitignore file. +# +# You'll probably want to distribute the VERSION file in your +# sdist tarballs; to do this, just create a MANIFEST.in file that +# contains the following line: +# +# include VERSION + +__all__ = ("get_git_version") + +from subprocess import Popen, PIPE + + +def call_git_describe(): + try: + p = Popen(['git', 'describe', '--tags', '--always'], + stdout=PIPE, stderr=PIPE) + p.stderr.close() + line = p.stdout.readlines()[0] + return line.strip() + + except: + return None + + +def read_release_version(): + try: + f = open("VERSION", "r") + + try: + version = f.readlines()[0] + return version.strip() + + finally: + f.close() + + except: + return None + + +def write_release_version(version): + f = open("VERSION", "w") + f.write("%s\n" % version) + f.close() + + +def get_git_version(): + # Read in the version that's currently in VERSION. + + release_version = read_release_version() + + # First try to get the current version using “git describe”. + + version = call_git_describe() + + # If that doesn't work, fall back on the value that's in + # VERSION. + + if version is None: + version = release_version + + # If we still don't have anything, that's an error. + + if version is None: + raise ValueError("Cannot find the version number!") + + # If the current version is different from what's in the + # VERSION file, update the file to be current. + + if version != release_version: + write_release_version(version) + + # Finally, return the current version. + + return version + + +if __name__ == "__main__": + print get_git_version()