Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 14 additions & 3 deletions bukuserver/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,14 +28,25 @@ $ source env/bin/activate

#### From PyPi

$ pip3 install "buku[server]"
```sh
$ # basic server
$ pip3 install "buku[server]"
$ # server with reverse proxy
$ pip3 install "buku[server,reverse_proxy]"
$ # pipx install bukuserver with reverse proxy
$ pipx install "buku[server]"
$ pipx inject buku https://github.com/rachmadaniHaryono/flask-reverse-proxy-fix/archive/refs/tags/v0.2.2rc1.zip
```

#### From source

```
```sh
$ git clone https://github.com/jarun/buku
$ cd buku
$ pip3 install .[server]
$ # basic server
$ pip3 install ".[server]"
$ # server with reverse_proxy
$ pip3 install ".[server,reverse_proxy]"
```

#### Using Docker
Expand Down
28 changes: 6 additions & 22 deletions bukuserver/requirements.txt
Original file line number Diff line number Diff line change
@@ -1,24 +1,8 @@
appdirs>=1.4.3
arrow>=0.12.1
beautifulsoup4>=4.5.3
buku>=2.9
cffi>=1.9.1
click>=6.7
Flask-Admin>=1.5.1
Flask-API>=0.6.9
arrow>=1.2.2
Flask-Admin>=1.6.0
Flask-API>=3.0.post1
Flask-Bootstrap>=3.3.7.1
flask-paginate>=0.5.1
flask-paginate>=2022.1.8
flask-reverse-proxy-fix @ https://github.com/rachmadaniHaryono/flask-reverse-proxy-fix/archive/refs/tags/v0.2.2rc1.zip
Flask-WTF>=0.14.2
Flask>=1.0.2,<2.0
idna>=2.5
itsdangerous>=0.24
Jinja2>=2.10.1
markupsafe==2.0.1
packaging>=16.8
pyasn1>=0.2.3
pycparser>=2.17
requests>=2.21.0
six>=1.10.0
urllib3>=1.25.2
Werkzeug>=0.11.15
Flask-WTF>=1.0.1
Flask>=2.2.2
24 changes: 15 additions & 9 deletions bukuserver/server.py
Original file line number Diff line number Diff line change
Expand Up @@ -612,20 +612,26 @@ def get(self):
class CustomFlaskGroup(FlaskGroup): # pylint: disable=too-few-public-methods
def __init__(self, **kwargs):
super().__init__(**kwargs)
self.params[0].help = 'Show the program version'
self.params[0].callback = get_custom_version
for idx, param in enumerate(self.params):
if param.name == "version":
self.params[idx].help = "Show the program version"
self.params[idx].callback = get_custom_version


def get_custom_version(ctx, param, value):
if not value or ctx.resilient_parsing:
return
message = '%(app_name)s %(app_version)s\nFlask %(version)s\nPython %(python_version)s'
click.echo(message % {
'app_name': 'buku',
'app_version': __version__,
'version': flask_version,
'python_version': sys.version,
}, color=ctx.color)
message = "\n".join(["%(app_name)s %(app_version)s", "Flask %(version)s", "Python %(python_version)s"])
click.echo(
message
% {
"app_name": "buku",
"app_version": __version__,
"version": flask_version,
"python_version": sys.version,
},
color=ctx.color,
)
ctx.exit()


Expand Down
1 change: 1 addition & 0 deletions docs/source/wiki
Submodule wiki added at 905910
38 changes: 15 additions & 23 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,30 +34,21 @@


server_require = [
"appdirs>=1.4.3",
"arrow>=0.12.1",
"beautifulsoup4>=4.5.3",
"cffi>=1.9.1",
"click>=6.7",
"Flask-Admin>=1.5.1",
"Flask-API>=0.6.9",
"arrow>=1.2.2",
"Flask-Admin>=1.6.0",
"Flask-API>=3.0.post1",
"Flask-Bootstrap>=3.3.7.1",
"flask-paginate>=0.5.1",
"flask-reverse-proxy-fix @ https://github.com/rachmadaniHaryono/flask-reverse-proxy-fix/archive/refs/tags/v0.2.2rc1.zip",
"Flask-WTF>=0.14.2",
"Flask>=1.0.2,<2.0",
"idna>=2.5",
"itsdangerous>=0.24",
"Jinja2>=2.10.1",
"markupsafe==2.0.1",
"packaging>=16.8",
"pyasn1>=0.2.3",
"pycparser>=2.17",
"requests>=2.21.0",
"six>=1.10.0",
"urllib3>=1.25.2",
"Werkzeug>=0.11.15",
"flask-paginate>=2022.1.8",
"Flask-WTF>=1.0.1",
"Flask>=2.2.2",
]
reverse_proxy = " ".join(
[
"flask-reverse-proxy-fix",
"@",
"https://github.com/rachmadaniHaryono/flask-reverse-proxy-fix/archive/refs/tags/v0.2.2rc1.zip",
]
)

setup(
name='buku',
Expand Down Expand Up @@ -85,8 +76,9 @@
},
extras_require={
"ca-certificates": ["certifi"],
"tests": tests_require + server_require,
"tests": tests_require + server_require + [reverse_proxy],
"server": server_require,
"reverse_proxy": [reverse_proxy],
"docs": [
"myst-parser>=0.17.0",
"sphinx-rtd-theme>=1.0.0",
Expand Down
13 changes: 9 additions & 4 deletions tests/test_setup.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,15 @@
import pathlib


def test_bukuserver_requirement(monkeypatch):
def m_setup(**kwargs):
return None
import setuptools
monkeypatch.setattr(setuptools, 'setup', m_setup)
import setup
setup_l = setup.server_require
with open('bukuserver/requirements.txt', encoding="utf8", errors="surrogateescape") as f:
bs_l = [x for x in f.read().splitlines() if not x.startswith('buku')]
assert bs_l == setup_l

assert [
x
for x in pathlib.Path("bukuserver/requirements.txt").read_text(encoding="utf8", errors="surrogateescape").splitlines()
if "flask-reverse-proxy-fix" not in x
] == setup.server_require