Mercurial > libervia-web
annotate setup.py @ 1245:079e8eb6e327
server (tasks): refactoring:
- moved `TasksManager` to `server.tasks.manager`
- tasks modules now must have a `Task` class which will be instanciated by TasksManager
- `server.tasks.task` has a basis for `Task` class
- `Task.prepare` can now be asynchronous
- `importlib` is now used to import tasks, instead of exec
- tasks are now parsed/run after pages are imported
- `server.BackendReady` is now a coroutine
- type hinting for Task attributes
author | Goffi <goffi@goffi.org> |
---|---|
date | Sat, 25 Apr 2020 16:08:55 +0200 |
parents | f511f8fbbf8a |
children | 560d381943d8 |
rev | line source |
---|---|
1216 | 1 #!/usr/bin/env python3 |
1239 | 2 |
360
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
3 |
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
4 # Libervia: a Salut à Toi frontend |
1124
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
5 # Copyright (C) 2011-2018 Jérôme Poisson (goffi@goffi.org) |
818 | 6 # Copyright (C) 2013-2016 Adrien Cossa (souliane@mailoo.org) |
360
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
7 |
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
8 # This program is free software: you can redistribute it and/or modify |
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
9 # it under the terms of the GNU Affero General Public License as published by |
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
10 # the Free Software Foundation, either version 3 of the License, or |
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
11 # (at your option) any later version. |
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
12 |
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
13 # This program is distributed in the hope that it will be useful, |
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
14 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
16 # GNU Affero General Public License for more details. |
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
17 |
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
18 # You should have received a copy of the GNU Affero General Public License |
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
19 # along with this program. If not, see <http://www.gnu.org/licenses/>. |
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
20 |
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
21 from setuptools import setup |
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
22 import os |
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
23 |
1124
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
24 NAME = "libervia" |
360
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
25 |
1124
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
26 install_requires = [ |
1216 | 27 "sat>=0.8.0.dev0", |
1124
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
28 "sat-templates", |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
29 "twisted", |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
30 "zope.interface", |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
31 "pyopenssl", |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
32 "jinja2>=2.9", |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
33 "shortuuid", |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
34 "autobahn", |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
35 ] |
1216 | 36 long_description = """\ |
1124
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
37 Libervia is a web frontend for Salut à Toi (SàT), a multi-frontends and multi-purposes XMPP client. |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
38 It features chat, blog, forums, events, tickets, merge requests, file sharing, photo albums, etc. |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
39 It is also a decentralized, XMPP based web framework. |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
40 """ |
360
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
41 |
1124
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
42 with open(os.path.join(NAME, "VERSION")) as v: |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
43 VERSION = v.read().strip() |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
44 is_dev_version = VERSION.endswith("D") |
360
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
45 |
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
46 |
1124
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
47 def libervia_dev_version(): |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
48 """Use mercurial data to compute version""" |
360
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
49 |
1124
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
50 def version_scheme(version): |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
51 return VERSION.replace("D", ".dev0") |
360
9834136b15ed
added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff
changeset
|
52 |
1124
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
53 def local_scheme(version): |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
54 return "+{rev}.{distance}".format(rev=version.node[1:], distance=version.distance) |
449
981ed669d3b3
/!\ reorganize all the file hierarchy, move the code and launching script to src:
souliane <souliane@mailoo.org>
parents:
447
diff
changeset
|
55 |
1124
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
56 return {"version_scheme": version_scheme, "local_scheme": local_scheme} |
449
981ed669d3b3
/!\ reorganize all the file hierarchy, move the code and launching script to src:
souliane <souliane@mailoo.org>
parents:
447
diff
changeset
|
57 |
981ed669d3b3
/!\ reorganize all the file hierarchy, move the code and launching script to src:
souliane <souliane@mailoo.org>
parents:
447
diff
changeset
|
58 |
1124
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
59 setup( |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
60 name=NAME, |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
61 version=VERSION, |
1216 | 62 description="Web frontend for Salut à Toi", |
1124
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
63 long_description=long_description, |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
64 author="Association « Salut à Toi »", |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
65 author_email="contact@goffi.org", |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
66 url="https://www.salut-a-toi.org", |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
67 classifiers=[ |
1223
4976eb0f5315
install (setup.py): updated classifiers
Goffi <goffi@goffi.org>
parents:
1222
diff
changeset
|
68 "Programming Language :: Python :: 3 :: Only", |
4976eb0f5315
install (setup.py): updated classifiers
Goffi <goffi@goffi.org>
parents:
1222
diff
changeset
|
69 "Programming Language :: Python :: 3.6", |
4976eb0f5315
install (setup.py): updated classifiers
Goffi <goffi@goffi.org>
parents:
1222
diff
changeset
|
70 "Programming Language :: Python :: 3.7", |
4976eb0f5315
install (setup.py): updated classifiers
Goffi <goffi@goffi.org>
parents:
1222
diff
changeset
|
71 "Development Status :: 5 - Production/Stable", |
1124
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
72 "Environment :: Web Environment", |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
73 "Framework :: Twisted", |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
74 "License :: OSI Approved :: GNU Affero General Public License v3 " |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
75 "or later (AGPLv3+)", |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
76 "Operating System :: POSIX :: Linux", |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
77 "Topic :: Communications :: Chat", |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
78 ], |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
79 packages=["libervia", "libervia.common", "libervia.server", "twisted.plugins"], |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
80 include_package_data=True, |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
81 data_files=[(os.path.join("share", "doc", NAME), ["COPYING", "README", "INSTALL"])] |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
82 + [ |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
83 (os.path.join("share", NAME, root), [os.path.join(root, f) for f in files]) |
1216 | 84 for root, dirs, files in os.walk("themes") |
1124
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
85 ], |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
86 scripts=["bin/libervia"], |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
87 zip_safe=False, |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
88 setup_requires=["setuptools_scm"] if is_dev_version else [], |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
89 use_scm_version=libervia_dev_version if is_dev_version else False, |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
90 install_requires=install_requires, |
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
91 package_data={"libervia": ["VERSION"]}, |
1222
b2a9da7708f6
install (setup.py): updated `python_requires`
Goffi <goffi@goffi.org>
parents:
1216
diff
changeset
|
92 python_requires=">=3.6", |
1124
28e3eb3bb217
files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents:
1121
diff
changeset
|
93 ) |