src/setup.py
author ymh <ymh.work@gmail.com>
Fri, 30 Nov 2018 10:53:15 +0100
changeset 183 f8f3af9e5c83
parent 179 e7c7e6e0a8bc
child 188 00cf90eb0f5a
permissions -rw-r--r--
Change the settings to avoid using Session authentication for rest framework as it raise exceptions in case client and backend are on the same domain On the filter, adapt to take into account new version of django_filters
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
     1
import os
175
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
     2
import re
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
     3
import sys
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
     4
from distutils.command.install import INSTALL_SCHEMES
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
     5
from distutils.command.install_data import install_data
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
     6
from shutil import move
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
     7
from tempfile import mkstemp
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
     8
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
     9
from setuptools import Command
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    10
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    11
try:
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    12
    from setuptools import setup
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    13
except ImportError:
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    14
    from distutils.core import setup
175
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    15
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    16
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    17
"""
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    18
See: https://dankeder.com/posts/adding-custom-commands-to-setup-py/
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    19
"""
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    20
class SetVersion(Command):
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    21
    """
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    22
    Set the version for the project
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    23
    """
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    24
    description = "Set the version for the project"
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    25
    # command_consumes_arguments = True
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    26
    user_options = [
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    27
        ('version=', 'v', 'version str')
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    28
    ]
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    29
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    30
    def initialize_options(self):
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    31
        """Set default values for options."""
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    32
        # Each user option must be listed here with their default value.
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    33
        self.version = None
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    34
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    35
    def finalize_options(self):
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    36
        """Post-process options."""
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    37
        if self.version is None:
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    38
            raise Exception("Parameter --version is missing")
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    39
        version_matches = re.match(r"(\d+).(\d+)(?:\.(\d+))?(?:(?:.(dev))|(?:(a|b|rc)(.*)))?", self.version)
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    40
        if version_matches is None:
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    41
            raise Exception("Parameter --version is not a version string (see )")
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    42
        version_list = version_matches.groups()
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    43
        version_tag = {'a': 'alpha', 'b': 'beta', 'rc': 'rc'}.get(version_list[4],'final')
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    44
        version_ext = int(version_list[5] or 0)
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    45
        if version_list[3] and version_list[3] == 'dev':
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    46
            version_tag = 'alpha'
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    47
            version_ext = 0
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    48
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    49
        self.version_tuple = (
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    50
            int(version_list[0]),
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    51
            int(version_list[1]),
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    52
            int(version_list[2] or 0),
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    53
            version_tag,
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    54
            version_ext,
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    55
        )
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    56
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    57
    def run(self):
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    58
        filepath = os.path.join(os.path.dirname(os.path.realpath(__file__)),"irinotes","__init__.py")
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    59
        print("Changing VERSION in %s to %r" % (filepath, self.version_tuple))
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    60
        fh, abs_path = mkstemp()
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    61
        with os.fdopen(fh,'w') as temp_file:
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    62
            with open(filepath, 'r') as initfiles:
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    63
                for l in initfiles:
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    64
                    if re.match(r"\s*VERSION\s*=\s*\(\d+\s*,\s*\d+\s*,\s*\d+,\s*\".+\",\s*.+\s*\)", l):
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    65
                        temp_file.write("VERSION = %r" % (self.version_tuple,))
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    66
                    else:
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    67
                        temp_file.write(l)
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    68
        os.remove(filepath)
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    69
        move(abs_path, filepath)
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
    70
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    71
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    72
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    73
class osx_install_data(install_data):
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    74
    """
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    75
    On MacOS, the platform-specific lib dir is /System/Library/Framework/Python/.../
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    76
    which is wrong. Python 2.5 supplied with MacOS 10.5 has an Apple-specific fix
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    77
    for this in distutils.command.install_data#306. It fixes install_lib but not
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    78
    install_data, which is why we roll our own install_data class.
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    79
    """
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    80
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    81
    def finalize_options(self):
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    82
        """
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    83
        By the time finalize_options is called, install.install_lib is set to the
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    84
        fixed directory, so we set the installdir to install_lib. The
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    85
        install_data class uses ('install_data', 'install_dir') instead.
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    86
        """
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    87
        self.set_undefined_options('install', ('install_lib', 'install_dir'))
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    88
        install_data.finalize_options(self)
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    89
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    90
def fullsplit(path, result=None):
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    91
    """
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    92
    Split a pathname into components (the opposite of os.path.join) in a
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    93
    platform-neutral way.
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    94
    """
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    95
    if result is None:
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    96
        result = []
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    97
    head, tail = os.path.split(path)
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    98
    if head == '':
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    99
        return [tail] + result
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   100
    if head == path:
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   101
        return result
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   102
    return fullsplit(head, [tail] + result)
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   103
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   104
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   105
def launch_setup(setup_script_name, setup_script_args):
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   106
    """
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   107
    Start setup
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   108
    """
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   109
    if sys.platform == "darwin":
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   110
        cmdclasses = {'install_data': osx_install_data}
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   111
    else:
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   112
        cmdclasses = {'install_data': install_data}
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   113
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   114
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   115
    root_dir = os.path.dirname(__file__)
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   116
    if root_dir != '':
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   117
        os.chdir(root_dir)
179
e7c7e6e0a8bc Add protocols module, and add a way to change the config ini file path
ymh <ymh.work@gmail.com>
parents: 175
diff changeset
   118
    source_dirs = ['irinotes', 'notes', 'protocols']
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   119
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   120
    version_variables = {}
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   121
    try:
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   122
        with open(os.path.join(source_dirs[0], "__init__.py")) as f:
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   123
            code = compile(f.read(), "__init__.py", 'exec')
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   124
            exec(code, version_variables)
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   125
    except:
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   126
        pass
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   127
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   128
    version = version_variables['__version__']
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   129
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   130
    packages, data_files = [], []
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   131
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   132
    for source_dir in source_dirs:
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   133
        for dirpath, dirnames, filenames in os.walk(source_dir):
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   134
            # Ignore dirnames that start with '.'
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   135
            for i, dirname in enumerate(dirnames):
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   136
                if dirname.startswith('.') or dirname.startswith('__pycache__'): del dirnames[i]
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   137
            if '__init__.py' in filenames:
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   138
                packages.append('.'.join(fullsplit(dirpath)))
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   139
            elif filenames:
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   140
                data_files.append([dirpath, [os.path.join(dirpath, f) for f in filenames]])
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   141
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   142
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   143
    # Tell distutils to put the data_files in platform-specific installation
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   144
    # locations. See here for an explanation:
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   145
    # http://groups.google.com/group/comp.lang.python/browse_thread/thread/35ec7b2fed36eaec/2105ee4d9e8042cb
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   146
    for scheme in INSTALL_SCHEMES.values():
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   147
        scheme['data'] = scheme['purelib']
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   148
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   149
    # Small hack for working with bdist_wininst.
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   150
    # See http://mail.python.org/pipermail/distutils-sig/2004-August/004134.html
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   151
    if len(sys.argv) > 1 and sys.argv[1] == 'bdist_wininst':
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   152
        for file_info in data_files:
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   153
            file_info[0] = '\\PURELIB\\%s' % file_info[0]
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   154
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   155
    #write MANIFEST.in
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   156
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   157
    with open("MANIFEST.in", "w") as m:
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   158
        m.write("include CHANGES\n")
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   159
        m.write("include LICENSE\n")
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   160
        m.write("include README\n")
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   161
        m.write("include MANIFEST.in\n")
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   162
        m.write("include requirements/base.txt\n")
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   163
        m.write("include requirements/dev.txt\n")
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   164
        m.write("include requirements/prod.txt\n")
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   165
        for entry in data_files:
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   166
            file_list = entry[1]
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   167
            for filename in file_list:
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   168
                m.write("include %s\n" % (filename))
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   169
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   170
    long_description = ''
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   171
    with open('README', 'r') as f:
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   172
        long_description = f.read()
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   173
175
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
   174
    cmdclasses = {**cmdclasses, **{ 'set_version': SetVersion }}
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
   175
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   176
    setup(
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   177
        script_name=setup_script_name,
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   178
        script_args=setup_script_args,
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   179
        name='irinotes',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   180
        version=version,
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   181
        author='IRI',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   182
        author_email='contact@iri.centrepompidou.fr',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   183
        packages=packages,
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   184
        data_files=data_files,
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   185
        cmdclass=cmdclasses,
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   186
        scripts=[],
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   187
        url='http://www.iri.centrepompidou.fr/dev/hg/irinotes',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   188
        license='CECILL-C',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   189
        description='projet Irinotes',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   190
        long_description=long_description,
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   191
        classifiers=[
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   192
            'Development Status :: 4 - Beta',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   193
            'Environment :: Web Environment',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   194
            'Framework :: Django',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   195
            'Intended Audience :: Developers',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   196
            'License :: Ceccil-B',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   197
            'Operating System :: OS Independent',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   198
            'Programming Language :: Python',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   199
            'Topic :: Utilities'
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   200
        ],
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   201
        install_requires=[
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   202
            "Django >= 1.11",
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   203
            "python-decouple",
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   204
            "Unipath",
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   205
            "dj-database-url",
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   206
            "six",
175
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
   207
            "django-auditlog @ https://github.com/IRI-Research/django-auditlog/tarball/master#egg=django-auditlog-0.4.5+IRI",
38
04e02c64849c add missing libraries
ymh <ymh.work@gmail.com>
parents: 36
diff changeset
   208
            "django-extensions",
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   209
            "djangorestframework >= 3.6",
36
36210c4f019f reorganize urls and add user management api urls
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
   210
            "django-rest-auth[with_social]",
36210c4f019f reorganize urls and add user management api urls
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
   211
            "djangorestframework-jwt",
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   212
            "django-guardian >= 1.4",
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   213
            "django-colorful",
39
cb014270bdc6 add CORS headers
ymh <ymh.work@gmail.com>
parents: 38
diff changeset
   214
            "django-cors-headers",
31
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
   215
            "django-concurrency",
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
   216
            "django-filter",
38
04e02c64849c add missing libraries
ymh <ymh.work@gmail.com>
parents: 36
diff changeset
   217
            "drf-nested-routers",
31
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
   218
            "markdown"
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   219
        ],
175
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
   220
        # dependency_links=[
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
   221
        #     "https://github.com/IRI-Research/django-auditlog/tarball/master#egg=django-auditlog-0.4.5dev"
6fcda59daff8 Correct requirements
ymh <ymh.work@gmail.com>
parents: 142
diff changeset
   222
        # ]
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   223
    )
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   224
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   225
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   226
if __name__ == "__main__":
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   227
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   228
    script_name = os.path.basename(sys.argv[0])
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   229
    script_args = sys.argv[1:]
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   230
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   231
    launch_setup(script_name, script_args)