annotate setup.py @ 1406:cffa3ae4d0aa

pages (blog/view): move URL friendly code to backend tools: - the code to render an URL friendly is now in `sat.tools.common.regex` - user friendly extra text is now only displayed when no `-` is found in ID. This is a temporary transition behaviour because new blog items IDs are now user friendly by default, and thus extra text is not wanted anymore. For older IDs it is still needed though, and the presence of `-` is used to guess when an ID is user friendly or not.
author Goffi <goffi@goffi.org>
date Fri, 16 Apr 2021 18:44:49 +0200
parents 556df721aa69
children 326730dc35da
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1216
b2d067339de3 python 3 port:
Goffi <goffi@goffi.org>
parents: 1212
diff changeset
1 #!/usr/bin/env python3
1239
f511f8fbbf8a fixed shebangs
Goffi <goffi@goffi.org>
parents: 1223
diff changeset
2
360
9834136b15ed added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff changeset
3 # Libervia: a Salut à Toi frontend
1398
556df721aa69 install (setup.py): update console script name and setup:
Goffi <goffi@goffi.org>
parents: 1357
diff changeset
4 # Copyright (C) 2011-2021 Jérôme Poisson (goffi@goffi.org)
818
f8a7a046ff9c copyright update
Goffi <goffi@goffi.org>
parents: 791
diff changeset
5 # 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
6
9834136b15ed added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff changeset
7 # 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
8 # 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
9 # 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
10 # (at your option) any later version.
9834136b15ed added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff changeset
11
9834136b15ed added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff changeset
12 # 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
13 # 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
14 # 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
15 # GNU Affero General Public License for more details.
9834136b15ed added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff changeset
16
9834136b15ed added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff changeset
17 # 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
18 # 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
19
9834136b15ed added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff changeset
20 from setuptools import setup
9834136b15ed added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff changeset
21 import os
9834136b15ed added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff changeset
22
1124
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
23 NAME = "libervia"
360
9834136b15ed added setup.py for the installation with setuptools
souliane <souliane@mailoo.org>
parents:
diff changeset
24
1124
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
25 install_requires = [
1216
b2d067339de3 python 3 port:
Goffi <goffi@goffi.org>
parents: 1212
diff changeset
26 "sat>=0.8.0.dev0",
1124
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
27 "sat-templates",
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
28 "twisted",
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
29 "zope.interface",
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
30 "pyopenssl",
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
31 "jinja2>=2.9",
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
32 "shortuuid",
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
33 "autobahn",
1357
dbd573b0bc9c browser: updated code to work with new Brython 3.8.10:
Goffi <goffi@goffi.org>
parents: 1272
diff changeset
34 "brython>=3.8.10",
1124
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
35 ]
1216
b2d067339de3 python 3 port:
Goffi <goffi@goffi.org>
parents: 1212
diff changeset
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
b2d067339de3 python 3 port:
Goffi <goffi@goffi.org>
parents: 1212
diff changeset
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.7",
1398
556df721aa69 install (setup.py): update console script name and setup:
Goffi <goffi@goffi.org>
parents: 1357
diff changeset
70 "Programming Language :: Python :: 3.8",
556df721aa69 install (setup.py): update console script name and setup:
Goffi <goffi@goffi.org>
parents: 1357
diff changeset
71 "Programming Language :: Python :: 3.9",
1223
4976eb0f5315 install (setup.py): updated classifiers
Goffi <goffi@goffi.org>
parents: 1222
diff changeset
72 "Development Status :: 5 - Production/Stable",
1124
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
73 "Environment :: Web Environment",
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
74 "Framework :: Twisted",
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
75 "License :: OSI Approved :: GNU Affero General Public License v3 "
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
76 "or later (AGPLv3+)",
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
77 "Operating System :: POSIX :: Linux",
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
78 "Topic :: Communications :: Chat",
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
79 ],
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
80 packages=["libervia", "libervia.common", "libervia.server", "twisted.plugins"],
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
81 include_package_data=True,
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
82 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
83 + [
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
84 (os.path.join("share", NAME, root), [os.path.join(root, f) for f in files])
1216
b2d067339de3 python 3 port:
Goffi <goffi@goffi.org>
parents: 1212
diff changeset
85 for root, dirs, files in os.walk("themes")
1124
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
86 ],
1272
3a3f3bccd65b server: Libervia server is now launched with a Python script, following backend change
Goffi <goffi@goffi.org>
parents: 1253
diff changeset
87 entry_points={
3a3f3bccd65b server: Libervia server is now launched with a Python script, following backend change
Goffi <goffi@goffi.org>
parents: 1253
diff changeset
88 "console_scripts": [
1398
556df721aa69 install (setup.py): update console script name and setup:
Goffi <goffi@goffi.org>
parents: 1357
diff changeset
89 "libervia-web = libervia.server.launcher:Launcher.run",
1272
3a3f3bccd65b server: Libervia server is now launched with a Python script, following backend change
Goffi <goffi@goffi.org>
parents: 1253
diff changeset
90 ],
3a3f3bccd65b server: Libervia server is now launched with a Python script, following backend change
Goffi <goffi@goffi.org>
parents: 1253
diff changeset
91 },
1124
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
92 zip_safe=False,
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
93 setup_requires=["setuptools_scm"] if is_dev_version else [],
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
94 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
95 install_requires=install_requires,
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
96 package_data={"libervia": ["VERSION"]},
1253
6d49fae517ba pages: browser metadata + root `_browser`:
Goffi <goffi@goffi.org>
parents: 1249
diff changeset
97 python_requires=">=3.7",
1124
28e3eb3bb217 files reorganisation and installation rework:
Goffi <goffi@goffi.org>
parents: 1121
diff changeset
98 )