[Announcement] bench v5.0

Frappe developers and all bench users

It’s been about 3.5 years and about 700+ commits since the last bench release. We have created a roadmap for bench v5.0 on GitHub.

Some of the main targets of this major release are bug fixes, setting up testing, documentation and a monthly release cycle and publishing on PYPI.

If anyone has any points or want to contribute to frappe/bench, you are most welcome. Open a PR/Issue directly on GitHub. Feel free to connect with me via email. Any help for a better bench or making the Frappe experience better, is appreciated.

Tentative Release Date: 2020-03-01T18:30:00Z

Bench v5.0 Project link:


This is great! I think that you have to look a this two old PR:

It is a nice idea, I’m using the code in production and it’s working fine.

1 Like

Sure thing!

it’s great to have a Roadmap, to use the github projects and to have a (tentative) release date.

I believe frappe and erpnext would also benefit from a similar approach.

1 Like

Yeah comrade!!!

1 Like

That’s how we Germans love it. :heart_eyes:

bench v5.0 was released in the past week. You can find the release notes and .whl file in the release. The PYPI image for this is under the name frappe-bench. Now use pip install frappe-bench to install your bench CLI.

Important notes:

  • develop is the current default branch. All future developments (and git clones will use this unless the branch is explicitly specified) will use this branch.
  • master is the latest stable release.
  • a new release will be made for each merge to master and the corresponding image be pushed to PyPI. An automated process for this is WIP.

We’re moving away from continuous deployment. For production usage, it is recommended to use the PyPI package. Remove the editable install from your system and run a pip install frappe-bench instead. All future updates can be handled through pip.

How to remove the current editable bench installation?

In you current installation environment run pip3 uninstall bench.
Then you can install using pip3 install frappe-bench.
You can check the latest version using bench --version which should be 5.0.0

@mujeerhashmi This command says

no files were found to uninstall

Ran it from /home/user directory and /home/user/frappe-bench directory and got the same reply. Production instance by the way.

Request you check python version if its python2.7 then you can use pip uninstall bench.
Also check which bench to know if its installed and it’s location is part of PATH variable.

figured i already have frappe-bench installed so i just did pip3 install frappe-bench and it upgraded to 5.0.0

I’m a bit mystified about this, but here goes…

erpdev@erpdev:~$ python --version
Python 3.6.9
erpdev@erpdev:~$ pip --version
pip 9.0.1 from /usr/lib/python3/dist-packages (python 3.6)
erpdev@erpdev:~$ pip install frappe-bench
Collecting frappe-bench
  Downloading https://files.pythonhosted.org/packages/da/33/c347c4f869c807d0874c485b2757781498eb100cd806592d97cfef9e5316/frappe_bench-5.0.0-py2.py3-none-any.whl (148kB)
    100% |.............................| 153kB 2.6MB/s 
Collecting semantic-version==2.8.2 (from frappe-bench)
Installing collected packages: semantic-version, honcho, six, python-dateutil, python-crontab, smmap, smmap2, gitdb2, GitPython, Click, idna, certifi, urllib3, chardet, requests, setuptools, virtualenv, MarkupSafe, Jinja2, frappe-bench
Successfully installed Click-7.0 GitPython-2.1.15 Jinja2-2.10.3 MarkupSafe-1.1.1 certifi-2020.4.5.1 chardet-3.0.4 frappe-bench-5.0.0 gitdb2-2.0.6 honcho-1.0.1 idna-2.8 python-crontab-2.4.0 python-dateutil-2.8.1 requests-2.22.0 semantic-version-2.8.2 setuptools-40.8.0 six-1.12.0 smmap-3.0.2 smmap2-3.0.1 urllib3-1.25.8 virtualenv-16.6.0
erpdev@erpdev:~$ bench --version

Command 'bench' not found, but can be installed with:

sudo apt install ruby-active-model-serializers

I had to log out – then log back in again – in order to get to …

erpdev@erpdev:~$ bench --version
WARN: Command not being executed in bench directory

Just noting that here for the next poor sucker who spends 1/2 hour going “NOW what have I done wrong?!?

Are there some envars that need to be source d, maybe ??

@MartinHBramwell haven’t had such an issue yet :sweat_smile:. However, the installation and PATH handling are completely handled by pip. This could be either a system or pip related issue.

erpdev@erpdev:~/frappe-bench$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 18.04.4 LTS
Release:	18.04
Codename:	bionic
erpdev@erpdev:~/frappe-bench$ python --version
Python 3.6.9
erpdev@erpdev:~/frappe-bench$ pip --version
pip 9.0.1 from /usr/lib/python3/dist-packages (python 3.6)
erpdev@erpdev:~/frappe-bench$ bench --version
erpdev@erpdev:~/frappe-bench$ bench version
electronic_invoice 0.0.1
frappe 12.4.1