Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: sync socketio port for old benches #1481

Merged
merged 1 commit into from
Sep 6, 2023

Conversation

ankush
Copy link
Member

@ankush ankush commented Sep 5, 2023

@sonarcloud
Copy link

sonarcloud bot commented Sep 5, 2023

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
1.0% 1.0% Duplication

@ankush ankush merged commit c2af169 into frappe:develop Sep 6, 2023
13 checks passed
@ankush ankush deleted the supervisor_sync_port branch September 6, 2023 04:16
@SaiFi0102
Copy link
Contributor

Thank you Ankush!

github-actions bot pushed a commit that referenced this pull request Sep 6, 2023
## [5.17.2](v5.17.1...v5.17.2) (2023-09-06)

### Bug Fixes

* sync socketio port for old benches ([#1481](#1481)) ([c2af169](c2af169))
@github-actions
Copy link

github-actions bot commented Sep 6, 2023

🎉 This PR is included in version 5.17.2 🎉

The release is available on:

Your semantic-release bot 📦🚀

github-actions bot pushed a commit to Zawala/bench that referenced this pull request May 26, 2024
# [5.9.0](v5.8.1...v5.9.0) (2024-05-26)

### Bug Fixes

* (re)Install every Frappe app even if not installed to env ([ffae670](ffae670))
* add code removed via erroneous commit ([b28cfab](b28cfab))
* add customer background workers in group ([frappe#1439](https://github.com/Zawala/bench/issues/1439)) ([4ec73c3](4ec73c3))
* add jammy package for Ubuntu 22 ([frappe#1549](https://github.com/Zawala/bench/issues/1549)) ([5a0922d](5a0922d))
* add safety filter for untarring ([e8ea985](e8ea985))
* Add support for options on bench main group ([8a0b784](8a0b784))
* add useforsecurity with fallback for <3.9 ([319809d](319809d))
* added code removed via erroneous commit ([5b64175](5b64175))
* added code removed via erroneous commit ([7e28a3d](7e28a3d))
* allow bench init with git tags ([c943b30](c943b30))
* Archive app for different repo/app names ([3af6058](3af6058))
* bad URL in raw.githubusercontent.com ([frappe#1363](https://github.com/Zawala/bench/issues/1363)) ([589f7a4](589f7a4))
* **build:** pin hatchling version 2nd try ([b74ff54](b74ff54))
* **build:** pin hatchling version to prevent import error ([3a73059](3a73059))
* **build:** support pyproject version ([frappe#1502](https://github.com/Zawala/bench/issues/1502)) ([7c64aa3](7c64aa3))
* Bump Nodejs v12 => v14 ([cd0fccf](cd0fccf))
* calc md5 for app cache ([16f8906](16f8906))
* case-insensitive matching ([3f57616](3f57616))
* check current branch ([2287f3f](2287f3f))
* Check for unauthorized status code in response ([e9b0112](e9b0112))
* check for valid branch in resolve ([79765e6](79765e6))
* check frappe-deps during get-app ([d93656e](d93656e))
* check if installed FF supports use-cached ([d177d8f](d177d8f))
* check md5 when fetching from cache ([efb5171](efb5171))
* Check yarn files during install ([frappe#1533](https://github.com/Zawala/bench/issues/1533)) ([1a42175](1a42175))
* checking status code to determine rate limit ([dbb1904](dbb1904))
* coerce git_url to app_name ([54b514b](54b514b))
* **config:** Fix fail2ban filter ([frappe#1308](https://github.com/Zawala/bench/issues/1308)) ([94a25d3](94a25d3))
* correct python path for migrate_env ([61e0f4a](61e0f4a))
* del node_modules if frappe supports app_cache ([9988b83](9988b83))
* Delete folder if --no-backup is passed ([f7f7459](f7f7459))
* don't compile python files manually. ([frappe#1469](https://github.com/Zawala/bench/issues/1469)) ([036cb62](036cb62))
* Don't handle `BaseException`s ([ad000f1](ad000f1))
* dont attempt migrating to active virtualenv ([0e59159](0e59159))
* dont use glob pattern for `python` exec ([dc047a5](dc047a5))
* **DX:** make warnings go to stderr ([b6b9481](b6b9481))
* easy-install for letsencrypt tls ([frappe#1424](https://github.com/Zawala/bench/issues/1424)) ([eba0f7a](eba0f7a))
* **easy-install:** set default site to site1.localhost ([fde7a82](fde7a82))
* empty states json condition ([67df07b](67df07b))
* Fetch env python if exists before returning fallback ([e5fa4df](e5fa4df))
* FileNotFound bug ([frappe#1383](https://github.com/Zawala/bench/issues/1383)) ([965e178](965e178))
* fixed app states and checking/updating frappe version on install ([30a4ec3](30a4ec3))
* fixed app states and checking/updating frappe version on install ([42f4d74](42f4d74))
* fixed args to sync-states ([c667be9](c667be9))
* fixed frappe branch check ([6c15327](6c15327))
* fixed init in get-app and frappe versions ([88c2367](88c2367))
* fixed init in get-app and frappe versions ([e3bd34c](e3bd34c))
* Fixed order of install ([281d96a](281d96a))
* fixed org, branch for apps mounted on disk ([frappe#1293](https://github.com/Zawala/bench/issues/1293)) ([c8ef822](c8ef822))
* fixed states sync ([7f37488](7f37488))
* fixed update_app_states call ([frappe#1326](https://github.com/Zawala/bench/issues/1326)) ([45267fc](45267fc))
* get-app on existing apps ([e03f597](e03f597))
* Handle supervisor escalation better ([frappe#1438](https://github.com/Zawala/bench/issues/1438)) ([c690e8e](c690e8e))
* Handle tag fetching failures of disk mounted App inits ([117d456](117d456))
* Hide irrelevant stacks during exc raise ([8175239](8175239))
* ignore org check fail if using cache ([aa12aab](aa12aab))
* ignore supervisor restart failures where possible ([frappe#1400](https://github.com/Zawala/bench/issues/1400)) ([7a63f4f](7a63f4f))
* image replace and site creation ([f93f065](f93f065))
* increase tar file limit ([d8ce1b3](d8ce1b3))
* install one app at a time, frappe first ([4f0193c](4f0193c))
* install wheel in venv ([4996afb](4996afb))
* logging when in init-bench ([a26f3ce](a26f3ce))
* logging when in init-bench ([de315f2](de315f2))
* merge conflicts ([61a864d](61a864d))
* merge conflicts ([ca45305](ca45305))
* migrate_env silent failures ([7f1c5ad](7f1c5ad))
* minor fixes ([94105c0](94105c0))
* minor fixes ([e629ca6](e629ca6))
* Misc fixes ([frappe#1294](https://github.com/Zawala/bench/issues/1294)) ([eb71573](eb71573))
* missing installed branch ([af3c871](af3c871))
* more reliable gunicorn restart ([2ec0c0a](2ec0c0a))
* **nginx:** Allow specifying log_format setting ([bbf0169](bbf0169))
* **nginx:** set `proxy_http_version` to `1.1` ([7da62f9](7da62f9))
* no-git support for dependency resolver ([frappe#1368](https://github.com/Zawala/bench/issues/1368)) ([fcbc2ea](fcbc2ea))
* nodejs redis v4 interprets localhost as ipv6 address ([697939e](697939e))
* override X-Forwarded-For address in bench manager ([53a8fed](53a8fed))
* parsing error ([frappe#1364](https://github.com/Zawala/bench/issues/1364)) ([4bc3a08](4bc3a08))
* Pass abs path from get_env_cmd ([10473b6](10473b6))
* Pass cwd for cmd subprocess execution ([01b7759](01b7759))
* **patch:** Rename parent dir instead of moving individual dirs ([0bd0717](0bd0717))
* port number mismatch when having multiple benches ([frappe#1480](https://github.com/Zawala/bench/issues/1480)) ([3c8cbbc](3c8cbbc))
* prevent circular dependency ([7bcea60](7bcea60))
* Prevent Gunicorn child workers hangup ([36f2194](36f2194))
* Print failing command with CommandFailedError ([a1d2c52](a1d2c52))
* print help when no args passed ([228aeaf](228aeaf))
* print required by in output ([5bb3b52](5bb3b52))
* Remove backup command ([frappe#1345](https://github.com/Zawala/bench/issues/1345)) ([0cd5fca](0cd5fca))
* Remove broken import path ([2c5c28b](2c5c28b))
* Remove except-pass ValueError ([d9c8335](d9c8335))
* Remove frappe cmd caching in .bench.cmd ([f773529](f773529))
* remove rem check from app-cache --clear ([4e170a2](4e170a2))
* remove unused nodemodules before caching ([0e2e8b4](0e2e8b4))
* Remove virtualenv dependency ([e0f6b17](e0f6b17))
* **remove-app:** Use App.name instead of App.repo for consistent App name ([a3b859b](a3b859b))
* removed erroneous file push ([f2fe569](f2fe569))
* removed erroneous file push ([b7e46aa](b7e46aa))
* removed unnecessary requests while removing apps ([49900ce](49900ce))
* replace certbot-auto with certbot ([frappe#1303](https://github.com/Zawala/bench/issues/1303)) ([a889325](a889325))
* resolve filesystem app dependencies ([frappe#1450](https://github.com/Zawala/bench/issues/1450)) ([f3b55f7](f3b55f7))
* restart proc manager if set in config ([frappe#1391](https://github.com/Zawala/bench/issues/1391)) ([c59d1ed](c59d1ed))
* Revert usage of app_name for repo name ([f7fbee9](f7fbee9))
* reverted changes made by erroneous commit ([b8aa008](b8aa008))
* reverted erroneous commits ([ff98aaf](ff98aaf))
* RQ crashes on Mac ([frappe#1529](https://github.com/Zawala/bench/issues/1529)) ([f5ab045](f5ab045))
* Setup chdir patch earlier ([db165d1](db165d1))
* Setup exception handler for CommandFailedError only ([94a1b8c](94a1b8c))
* specify hatch version in release ([87b4b1f](87b4b1f))
* support for local and remote apps when looking for dependencies ([2f17da1](2f17da1))
* support single required app ([c8205e4](c8205e4))
* Switched to native GIT way to lookup branch names ([frappe#1553](https://github.com/Zawala/bench/issues/1553)) ([1751b2d](1751b2d))
* sync socketio port for old benches ([frappe#1481](https://github.com/Zawala/bench/issues/1481)) ([c2af169](c2af169))
* trigger release ([f374e80](f374e80))
* update check condition ([3e749ba](3e749ba))
* update install_app with using_cached flag ([10bb5a4](10bb5a4))
* update pre url coercion check ([6f074a7](6f074a7))
* updated apps.sync to support new app_name parameter ([7980709](7980709))
* Use == for dict comparison ([e80daf8](e80daf8))
* Use == to define had pinned requirement ([beac865](beac865))
* Use App.app_name over repo attr ([4f42392](4f42392))
* Use hardcoded python3 env cmd for Bench.python ([c9c6bf4](c9c6bf4))
* use os.remove instead of shutil.rmtree for symlinks ([frappe#1372](https://github.com/Zawala/bench/issues/1372)) ([9fd15f6](9fd15f6))
* Use python* to match any pattern in env ([24b9af6](24b9af6))
* use ref param instead of branch for get_required_deps (GitHub contents API) ([frappe#1362](https://github.com/Zawala/bench/issues/1362)) ([9131ba0](9131ba0))
* use specified python for venv ([df84c27](df84c27))
* Use subscript instead of method for regex ([e126ff2](e126ff2))
* Use venv module instead of virtualenv ([f60c2d0](f60c2d0))
* User messages on get-app actions ([d33d987](d33d987))
* using local clones if path is passed in get-app ([5f37135](5f37135))
* **utils:** Strip * from cmd via get_env_cmd ([6ae1997](6ae1997))
* version check backward compatibility ([frappe#1409](https://github.com/Zawala/bench/issues/1409)) ([23eede5](23eede5))
* version check before AbsoluteLinkError ([3502c77](3502c77))
* version check before data_filter import ([80f2e70](80f2e70))
* wrap tarfile with error handling ([30f301e](30f301e))
* wrong help string ([7a89ccd](7a89ccd))

### Features

* `bench validate-dependencies` command ([frappe#1534](https://github.com/Zawala/bench/issues/1534)) ([ab9b617](ab9b617))
* add `max_requests` to gunicorn args ([b57838f](b57838f))
* add bench app-cache helper command ([42ac015](42ac015))
* add commit hash and branch in `states.json` ([9004e1d](9004e1d))
* add GHA tests ([e76c7dc](e76c7dc))
* Add pre-commit checks ([b1b8d70](b1b8d70))
* add required and order of install ([9ac091b](9ac091b))
* Added app states ([fdab757](fdab757))
* Added app states ([549e8e2](549e8e2))
* Added app_name attribute to App class ([35504f8](35504f8))
* Added bench command for resolve and install ([cdaeea1](cdaeea1))
* Added bench command for resolve and install ([7a311a2](7a311a2))
* Added exception for invalid version ([ddd498e](ddd498e))
* Added support for backward compatibility in states ([a1a35ee](a1a35ee))
* added support for fetching dependencies from hooks.py ([58319a2](58319a2))
* added support for fetching dependencies from hooks.py ([7f678a3](7f678a3))
* Added support for mounted app in get_dependencies ([0b862c0](0b862c0))
* allow custom image in easy install ([8ba685c](8ba685c))
* Allow skipping supervisord config check in setup supervisor ([a3af905](a3af905))
* alternative request to validate branch ([8dd92c3](8dd92c3))
* cache get-app artifacts by commit_hash ([87d4aa3](87d4aa3))
* comment out unsupported typing ([23bd717](23bd717))
* **config:** Add IPv6 listener to nginx site configuration ([frappe#1312](https://github.com/Zawala/bench/issues/1312)) ([593c7b7](593c7b7))
* Exiting when app does not exist ([fc0be25](fc0be25))
* flag to setup bench with developer mode enabled ([f29e25a](f29e25a))
* get-app ln -s ([e69b612](e69b612))
* introduced simple resolver ([bfd69c3](bfd69c3))
* introduced simple resolver ([d41e05e](d41e05e))
* Made dynamic mount path if bench attr is passed to App class ([b36c072](b36c072))
* mimicking get-app behaviour when app is already installed ([bbca3e9](bbca3e9))
* Multi queue consumption ([frappe#1475](https://github.com/Zawala/bench/issues/1475)) ([5a2c052](5a2c052))
* New easy-install.py ([044e01b](044e01b))
* **nginx:** Allow logging settings as site/combined/none ([5370129](5370129))
* pass verbose to npm install ([00391bf](00391bf))
* pass verbose to yarn install ([346d08d](346d08d))
* printing resolved dependencies when using resolve-deps flag wih get-app ([95b0834](95b0834))
* printing resolved dependencies when using resolve-deps flag wih get-app ([bba4019](bba4019))
* **remove-app:** Options for no backup of app & force removal ([69e14e5](69e14e5))
* set `startretries` in supervisor configuration ([deadc7c](deadc7c))
* Setup dev-dependencies defined via pyproject ([75957a5](75957a5))
* slower alternative for get_required_deps ([d0bd294](d0bd294))
* **supervisor:** restart each group separately ([839bd7c](839bd7c))
* Support Frappe app distributions with pyproject.toml ([800394c](800394c))
* using gitpython for branch validation ([cb2b0b0](cb2b0b0))
* verbose env setup & checking for compatible versions ([d178b08](d178b08))
* verbose error messages ([19f9325](19f9325))

### Performance Improvements

* add Cache-Control header for assets ([8d3270e](8d3270e))
* Avoid use of glob for fetching python executable ([8db23dd](8db23dd))
* caching deps and orgs, repos to avoid time taking checks & added slower version to check org and repo ([bd105a6](bd105a6))
* single worker in development install ([frappe#1392](https://github.com/Zawala/bench/issues/1392)) ([9c80f5d](9c80f5d))
* Using github API ([b0ae3ae](b0ae3ae))

### Reverts

* Revert "fix: resolve filesystem app dependencies (frappe#1450)" (frappe#1452) ([082692c](082692c)), closes [frappe#1450](https://github.com/Zawala/bench/issues/1450) [frappe#1452](https://github.com/Zawala/bench/issues/1452)
github-actions bot pushed a commit to kimsreng/bench that referenced this pull request Oct 16, 2024
# 1.0.0 (2024-10-16)

### Bug Fixes

* "Error: no such option: --backup" ([#946](https://github.com/kimsreng/bench/issues/946)) ([76943e0](https://github.com/kimsreng/bench/commit/76943e070c1ef53e7448024ad5b78073d3d80b58))
* "faster" get_sites function ([8764813](https://github.com/kimsreng/bench/commit/8764813121152cb80fde403a21ab5f541074c525))
* (re)Install every Frappe app even if not installed to env ([ffae670](https://github.com/kimsreng/bench/commit/ffae670be79a0488b394ac03413497eebb740f89))
* Add bench.cli namespace ([2f0b508](https://github.com/kimsreng/bench/commit/2f0b508d2ef1d4935ccd4a74d374ee6be28a7bec))
* add code removed via erroneous commit ([b28cfab](https://github.com/kimsreng/bench/commit/b28cfab5502096e28dfbda332337b14635278fb2))
* add confirmation for supervisord conf update ([deb854b](https://github.com/kimsreng/bench/commit/deb854b9d92304102f3daf33a37e0367621dc359))
* add customer background workers in group ([#1439](https://github.com/kimsreng/bench/issues/1439)) ([4ec73c3](https://github.com/kimsreng/bench/commit/4ec73c3b92065c6c31976e201feb9188dd23836e))
* add declarative config support for bench ([186ba28](https://github.com/kimsreng/bench/commit/186ba280f1ed5d77e101d5a2fca83951521c901e))
* add honcho and pin dependency ([02826d7](https://github.com/kimsreng/bench/commit/02826d7dceafac561a09f0bd90651d4894917b6a))
* add jammy package for Ubuntu 22 ([#1549](https://github.com/kimsreng/bench/issues/1549)) ([5a0922d](https://github.com/kimsreng/bench/commit/5a0922d9918ecf37fb5bede93f5921d45f3334cb))
* add log filter to handler ([53919b6](https://github.com/kimsreng/bench/commit/53919b624e17e108006d66bddb0981658aeefaf0))
* add logging and set user if not passed ([fc4b90a](https://github.com/kimsreng/bench/commit/fc4b90acdb576da1516afd8a2234742e2a7f090e))
* add playbooks in the python package ([78e1f03](https://github.com/kimsreng/bench/commit/78e1f03cc4176b6318e22bf630b498db7d4ec51e))
* add provision to install downloaded packages ([f3bcc42](https://github.com/kimsreng/bench/commit/f3bcc42abe349194b6bd9bb6629f4b5453c750c5))
* add safety filter for untarring ([e8ea985](https://github.com/kimsreng/bench/commit/e8ea98552c973f9ac126e728d465de3723a9701f))
* add section in conf if doesnt exist ([3e99fbc](https://github.com/kimsreng/bench/commit/3e99fbc46b04f5493684884dae98b94c56c1d4bf))
* Add support for options on bench main group ([8a0b784](https://github.com/kimsreng/bench/commit/8a0b78451b3ef33db342c3081ee371bc29e4a82f))
* add useforsecurity with fallback for <3.9 ([319809d](https://github.com/kimsreng/bench/commit/319809d2dff6cfd3941e80717799736afa15009d))
* add x-frame-origin to prevent clickjacking ([ecdcbb9](https://github.com/kimsreng/bench/commit/ecdcbb9219bdde7d1b3b129074b1969296c44a26))
* added aliases for click commands to convert _ seperated commands to ([214a209](https://github.com/kimsreng/bench/commit/214a2093ebff10f8277bc421e2ebdc438f7c2aee))
* added code removed via erroneous commit ([5b64175](https://github.com/kimsreng/bench/commit/5b641758cf64dd82362905cf79c192bf9ce0f502))
* added code removed via erroneous commit ([7e28a3d](https://github.com/kimsreng/bench/commit/7e28a3dd9e8a5670083912f30d6ff06cc216b0f0))
* added python source code encoding ([9b6155d](https://github.com/kimsreng/bench/commit/9b6155dcf31344981339a5256b661cb448e92379))
* added verbosity ([fb5e150](https://github.com/kimsreng/bench/commit/fb5e1501057e4e0b62cd508175830d2558b8c309))
* Added warning for unshallow without --reset ([01abc56](https://github.com/kimsreng/bench/commit/01abc561e07ab19d9c66b5f6d8b915497305d36f))
* allow bench init with git tags ([c943b30](https://github.com/kimsreng/bench/commit/c943b30c6609b758ab903af3e4d964dee4828d25))
* Allow bench src as root ([9d1f7a7](https://github.com/kimsreng/bench/commit/9d1f7a7ed7ca3caaf9978c3f75292984078caf69))
* Allow git url with custom username ([#1200](https://github.com/kimsreng/bench/issues/1200)) ([6411812](https://github.com/kimsreng/bench/commit/641181260e698073c9df6a68ae8ef75c40769eaa))
* Allow skipping assets ([bdda041](https://github.com/kimsreng/bench/commit/bdda0419ea165e41a279a8858b0568f1b5622990))
* Allow skipping assets ([#822](https://github.com/kimsreng/bench/issues/822)) ([1c8115d](https://github.com/kimsreng/bench/commit/1c8115df167b7c7d2dbb2dc3cd4d5934deeb70bf))
* Allow sudo restart for supervisor (backwards compatibility) ([fc7c047](https://github.com/kimsreng/bench/commit/fc7c047c280c443fa85f33f90e572412f206dbff))
* Always set return code via cli ([552b935](https://github.com/kimsreng/bench/commit/552b935f6b7d35933907c05421171827b30a967c))
* ansible install on versioned pip ([71af732](https://github.com/kimsreng/bench/commit/71af7320f29f52c43c284ef6ce92b6c7ec17e38d))
* **ansible:** deprecated warnings for | expression ([498e777](https://github.com/kimsreng/bench/commit/498e777b5745b3e939e42c0536ccb431c3f25804))
* **ansible:** deprecated warnings install loops ([fd7d59d](https://github.com/kimsreng/bench/commit/fd7d59d2be27c49c4bda45c2595395524ecdb546))
* **ansible:** Make everything verbose ([46566cd](https://github.com/kimsreng/bench/commit/46566cd9ac0bfe0a828b9a0fd6e89f37bfdebafe))
* **ansible:** python api deprecated warnings ([3dc8b48](https://github.com/kimsreng/bench/commit/3dc8b48da76ec8ad0575dc48fd6ee8f5ba689e90))
* **ansible:** Use include_tasks instead of include ([cbd703d](https://github.com/kimsreng/bench/commit/cbd703d436ee6b4917db865f1e526e7ae50b3fd3))
* Archive app for different repo/app names ([3af6058](https://github.com/kimsreng/bench/commit/3af6058d1bb41025a65b423af028657fe88500f0))
* Archived app naming, apps.txt sync ([79980c3](https://github.com/kimsreng/bench/commit/79980c3c55229ca0a4342618d4c2c60e78810d3d))
* avoid circular imports and optimization ([9e7b8d1](https://github.com/kimsreng/bench/commit/9e7b8d1f2e570a477bbdda22e68c0dd49ef3519a))
* **backup:** make auto backup logs verbose ([f28c376](https://github.com/kimsreng/bench/commit/f28c3765d843d8118ab22e208857f98551e7ed3b))
* **backups:** setup backups for bench sites ([90f951c](https://github.com/kimsreng/bench/commit/90f951c6ec3465b780f24f08cd87c35631cfd0dd))
* bad URL in raw.githubusercontent.com ([#1363](https://github.com/kimsreng/bench/issues/1363)) ([589f7a4](https://github.com/kimsreng/bench/commit/589f7a400e5b613294a203e3c781be05ba5d73bb))
* Bench logo url ([92c1721](https://github.com/kimsreng/bench/commit/92c17216f686759c882346b1864d5c0e81845dbc))
* bench path used for config ([6881c93](https://github.com/kimsreng/bench/commit/6881c9338829c0a00ff1384f1bddfc77ea568cfd))
* bench update compatible  venv installed pkg ([cd711b0](https://github.com/kimsreng/bench/commit/cd711b04dc995cbe1a4d97df3a32c01f2630a3aa))
* bench_path during setup_env ([8c86ef5](https://github.com/kimsreng/bench/commit/8c86ef576e72d7c4f57f3375e4b425fad4265744))
* bench.utils.get_sites updated to  frappe.utils.get_sites ([a3dc9e6](https://github.com/kimsreng/bench/commit/a3dc9e69b77464dd1e855a52b4d7a3deafb262ef))
* better exception handling for checking sudoers set ([d51311b](https://github.com/kimsreng/bench/commit/d51311b7f7caedec77c3474f3232358bd2aba0f5))
* better warning and cache handling ([e39ae1e](https://github.com/kimsreng/bench/commit/e39ae1e0b5699e41dd552f48707299ccda4e86e3))
* branch argument while running easy install ([94525d0](https://github.com/kimsreng/bench/commit/94525d0721125a4108957a477edcc1d820f3b7e0))
* Build assets only for downloaded app ([#802](https://github.com/kimsreng/bench/issues/802)) ([75b0901](https://github.com/kimsreng/bench/commit/75b0901af4d26502fd8763f7947ec7f465de418c))
* build assets regardless of postprocess ([a4a9b59](https://github.com/kimsreng/bench/commit/a4a9b59f4256d5f28ecc572cf5e7e777635e176a))
* **build:** pin hatchling version 2nd try ([b74ff54](https://github.com/kimsreng/bench/commit/b74ff54dfa3a5f6dd01fd33e5955353817123b9c))
* **build:** pin hatchling version to prevent import error ([3a73059](https://github.com/kimsreng/bench/commit/3a73059531ec6567c6baaa460be28e950b42ee99))
* **build:** support pyproject version ([#1502](https://github.com/kimsreng/bench/issues/1502)) ([7c64aa3](https://github.com/kimsreng/bench/commit/7c64aa3d94723bd30afee519c133689e0bc800d4))
* bump MariaDB version ([a2ea3d9](https://github.com/kimsreng/bench/commit/a2ea3d90c55236c3dcac2264ed9f5e79c517b035))
* Bump Nodejs v12 => v14 ([cd0fccf](https://github.com/kimsreng/bench/commit/cd0fccfdb49f24a4383ca0a6e4e5849f67637fc0))
* Bump Nodejs v8 => v12 ([de5e278](https://github.com/kimsreng/bench/commit/de5e2789122e219a73c889508fa6100ad77b58c8))
* bump up GitPython to 2.1.11 ([8d1e1f3](https://github.com/kimsreng/bench/commit/8d1e1f3137981c1edfbef35a006f72b151b9483e))
* calc md5 for app cache ([16f8906](https://github.com/kimsreng/bench/commit/16f89067c6700ade47d5daa7c6f4dd1b858278bf))
* case-insensitive matching ([3f57616](https://github.com/kimsreng/bench/commit/3f576168034c605f90c23860a82df74c79df2137))
* Change ownership of all log and config files ([b7f568a](https://github.com/kimsreng/bench/commit/b7f568aec25d8c60a1062c25fd24b8a42c2b39d8))
* change TEST_PYPI to PYPI ([4211f5d](https://github.com/kimsreng/bench/commit/4211f5d750b5f6130e5479ea263154d3cd87bb84))
* check current branch ([2287f3f](https://github.com/kimsreng/bench/commit/2287f3f7ec04cbf872049029809b65da829f6efd))
* Check for unauthorized status code in response ([e9b0112](https://github.com/kimsreng/bench/commit/e9b0112a9cf69a9523e6bdf3a73301cd5c0f7e75))
* check for updates after command execution and handle ([6ea7d75](https://github.com/kimsreng/bench/commit/6ea7d75193e31561d047731ed6a8bb5022319759))
* check for valid branch in resolve ([79765e6](https://github.com/kimsreng/bench/commit/79765e6b25a09eb93e6ca67c6ff8e5ea1f565fba))
* check frappe-deps during get-app ([d93656e](https://github.com/kimsreng/bench/commit/d93656e8d9656c7a2640f3d7f1203d5540bc53ac))
* Check if app is installed in env via initialize_apps ([a192240](https://github.com/kimsreng/bench/commit/a192240cec9156c83804a35e1aeeadff885ea185))
* Check if archived_sites directory exists before running ([b11f5b0](https://github.com/kimsreng/bench/commit/b11f5b0f96b06e48fb87c820b08bef1d4fa79e14))
* check if installed FF supports use-cached ([d177d8f](https://github.com/kimsreng/bench/commit/d177d8ff633fe04a685754d7b8f52a19a8e8c2bf))
* Check if Py3.5+ before installing distro ([f032fc0](https://github.com/kimsreng/bench/commit/f032fc0b86f6891399d3dba41cca782319667ed3))
* check if virtual env (using pip refs) ([63128a2](https://github.com/kimsreng/bench/commit/63128a21bf723a2b42336b0094fe341bd757aa28))
* check md5 when fetching from cache ([efb5171](https://github.com/kimsreng/bench/commit/efb51712d92cc98331e76caad1755a22782c994b))
* Check yarn files during install ([#1533](https://github.com/kimsreng/bench/issues/1533)) ([1a42175](https://github.com/kimsreng/bench/commit/1a421758a8923aed9325089f54d205c2bececb0c))
* checking status code to determine rate limit ([dbb1904](https://github.com/kimsreng/bench/commit/dbb19046df0fe72ed82fd87220fa7aa5a37d0e56))
* checks for bench requirements to be installed without the --user ([3b06683](https://github.com/kimsreng/bench/commit/3b06683ebf41d4bcf9c48eb342ff7a125fa69a2e))
* checksum expression ([cf3c0b9](https://github.com/kimsreng/bench/commit/cf3c0b92658791fb7b25c94455dd86fb8695d393))
* chown frappe_user home directory ([4474f46](https://github.com/kimsreng/bench/commit/4474f463dcdf93321c7a188a405db0edb0d7e50f))
* cleaner and intuitive bench logs ([0be833a](https://github.com/kimsreng/bench/commit/0be833ad850e5d68fefd906bb3e0607127849d4b))
* Cleanup import hell ([e2fd9de](https://github.com/kimsreng/bench/commit/e2fd9de921b5b5f26a98dd7fd38745c1eac7b9d8))
* Cleanup import hell (contd) ([d2fba5f](https://github.com/kimsreng/bench/commit/d2fba5fe52529c2c59b01038561cab71dc8be49d))
* Clear Bench instance cache on every chdir ([ec369a1](https://github.com/kimsreng/bench/commit/ec369a16a1d876104d3e876f6b5baa3487244f02))
* clearer docstrings ([3c59446](https://github.com/kimsreng/bench/commit/3c5944623a52b6f128e782d6664e03a683d3d0b6))
* **cli:** give warn that commands are not executed in a bench folder ([ef1a624](https://github.com/kimsreng/bench/commit/ef1a62455662ee670172dd3b555ad401951d14c0))
* coerce git_url to app_name ([54b514b](https://github.com/kimsreng/bench/commit/54b514b749f64a4857d9ff30788148a325a267e8))
* Command picking & execution ([2fa25d8](https://github.com/kimsreng/bench/commit/2fa25d8791e23385eec60614abfd190f3d39a617))
* **command_cache:** Return iterable as fallback ([6fd3ad7](https://github.com/kimsreng/bench/commit/6fd3ad738b75a974763aec26ff8124c4fcf4147e))
* compatibility fixes, better cpu utilization ([3b91d98](https://github.com/kimsreng/bench/commit/3b91d98d856b57aec3bb3c38eb8b09aa11d96ccc))
* compatible configparser get ([312a92d](https://github.com/kimsreng/bench/commit/312a92d0caf0bfb76803c0071eba9cc55abd52c7))
* **config:** Fix fail2ban filter ([#1308](https://github.com/kimsreng/bench/issues/1308)) ([94a25d3](https://github.com/kimsreng/bench/commit/94a25d3da7fa9552d94f362c0b3016b316399473))
* correct patches.txt ([a28a0d0](https://github.com/kimsreng/bench/commit/a28a0d0d2389fcb7268e67ac56b6af74c93501af))
* correct python path for migrate_env ([61e0f4a](https://github.com/kimsreng/bench/commit/61e0f4acbf4b7e95da2d1d0b26516cd41bfc6eed))
* create bench folder in user directory ([5c5d2b5](https://github.com/kimsreng/bench/commit/5c5d2b57dfaf0e43b56b7140717649e356e2cad6))
* **cron:** change cron command for renewing ssl ([17b4475](https://github.com/kimsreng/bench/commit/17b447591f20cd9025519d020cc358e663131976))
* default caching of pip packages, use reload_supervisor function ([0afb89a](https://github.com/kimsreng/bench/commit/0afb89a2c178b0c8a90a1f080bb79e9f75a348e4))
* del node_modules if frappe supports app_cache ([9988b83](https://github.com/kimsreng/bench/commit/9988b8356bacf9df0d0d865baafab8a6cb8bb160))
* Delete folder if --no-backup is passed ([f7f7459](https://github.com/kimsreng/bench/commit/f7f7459c51ad9b73d79d04e14d252de42289b44a))
* dir permissions ([d5003e1](https://github.com/kimsreng/bench/commit/d5003e1944ec1fccc34c742930ad1741e7e0ab66))
* dns caching handle name not match ([9bdff52](https://github.com/kimsreng/bench/commit/9bdff524cd8fe87681548369b2fc8fde600e6bd5))
* don't allow uninstall frappe... ([1ab3763](https://github.com/kimsreng/bench/commit/1ab3763fd6238fa9a906331690890c559275782d))
* Don't break update if no sites exist on patching sites stage ([778fe6c](https://github.com/kimsreng/bench/commit/778fe6cb0bdf442bceac0ac5b98b7ab7fdcae6da))
* don't compile python files manually. ([#1469](https://github.com/kimsreng/bench/issues/1469)) ([036cb62](https://github.com/kimsreng/bench/commit/036cb6291ec2d6f837dc1db40738f688034da5b0))
* Don't fetch meta for rm app ([17edb47](https://github.com/kimsreng/bench/commit/17edb4797baf70f7397e44ccaef7dbaeac403b0e))
* Don't handle `BaseException`s ([ad000f1](https://github.com/kimsreng/bench/commit/ad000f1be7c8a74746d276e2633651513d5297ff))
* Don't recompute URLs when name passed in App ([0898e2d](https://github.com/kimsreng/bench/commit/0898e2d2a21abb656262f0e10d2c310864822df6))
* dont abort script if not overwriting scripts ([#919](https://github.com/kimsreng/bench/issues/919)) ([ec1343c](https://github.com/kimsreng/bench/commit/ec1343c0fae59388a64a22e6289005cb3e7801b2))
* dont attempt migrating to active virtualenv ([0e59159](https://github.com/kimsreng/bench/commit/0e59159e1167357f6d8411708a93ad37cc4b959e))
* dont drop permissions for setting up supervisor ([2fe5cce](https://github.com/kimsreng/bench/commit/2fe5cce6d445612c0a26b2bfbb0ea3a7dc20a66f))
* dont install bench dependencies in env ([ea106e8](https://github.com/kimsreng/bench/commit/ea106e89c9da84cc5ba118d5e1346580717f728b))
* dont run ayrn install while setting up py reqs ([dd04700](https://github.com/kimsreng/bench/commit/dd047002a1915b39867295d195c3f269f11fc57e))
* dont show warning message in developer mode ([ce0a3de](https://github.com/kimsreng/bench/commit/ce0a3de259d8f90749ff54ef1161b58ebc4f3d8f))
* dont use glob pattern for `python` exec ([dc047a5](https://github.com/kimsreng/bench/commit/dc047a5e7da4a7ae4d6ded8948d657d82caf1403))
* Drop support for Frappe v4-5-6 ;) ([616dff8](https://github.com/kimsreng/bench/commit/616dff8fbbcede4a49cf4a96064a95081961cc41))
* **DX:** make warnings go to stderr ([b6b9481](https://github.com/kimsreng/bench/commit/b6b9481b7b11f5ef6b3c5f866483cfdbcace97a3))
* easy install script ([b4dcea8](https://github.com/kimsreng/bench/commit/b4dcea8b0e91e26f4d2741641bd3eb066ff24c50))
* **easy_install:** add support for Ubuntu 19.04 ([81330fd](https://github.com/kimsreng/bench/commit/81330fd894db79ad0a6767b948a59b3ebee63dbb))
* **easy_install:** add version argument for installing different versions ([0e91bf4](https://github.com/kimsreng/bench/commit/0e91bf43fd2b337a8883cebe9f39aa0e2a0af96e))
* **easy_install:** datetime formatting ([9cc6e2e](https://github.com/kimsreng/bench/commit/9cc6e2e2a8859cff484097ae2b1122c866d3fc2b))
* **easy_install:** log files saved with timestamp ([b80cecc](https://github.com/kimsreng/bench/commit/b80cecc917ce9ad8236701e378977c96d8172956))
* **easy_install:** overwrite config files ([aebd759](https://github.com/kimsreng/bench/commit/aebd75990a02e2991a963e4906ee068b59057b4b))
* easy-install for letsencrypt tls ([#1424](https://github.com/kimsreng/bench/issues/1424)) ([eba0f7a](https://github.com/kimsreng/bench/commit/eba0f7a54f5d08dc91e331af3edad9f0fbf196a3))
* **easy-install:** compatibility for easy install on PY2 ([#937](https://github.com/kimsreng/bench/issues/937)) ([495a038](https://github.com/kimsreng/bench/commit/495a038c458834c395519ad5f1a13b684fa16d11))
* **easy-install:** set default site to site1.localhost ([fde7a82](https://github.com/kimsreng/bench/commit/fde7a8209dbdbb8b50b413fe1174ae62bb06b395))
* empty states json condition ([67df07b](https://github.com/kimsreng/bench/commit/67df07b732389e04f1847d978c47c5f21e9f028a))
* ERROR! [DEPRECATED] ([caa5fa0](https://github.com/kimsreng/bench/commit/caa5fa0eadc0c00edc96b2fc765d2720192bb224))
* **error:** Python 2 does not provide stderr on CalledProcessError ([#762](https://github.com/kimsreng/bench/issues/762)) ([d1810e1](https://github.com/kimsreng/bench/commit/d1810e1dc1849daabace392c55b39057c09e98b9))
* fail2ban help message ([fec8921](https://github.com/kimsreng/bench/commit/fec89212143d122c647292195fd4b1f8024a55bd))
* Fetch env python if exists before returning fallback ([e5fa4df](https://github.com/kimsreng/bench/commit/e5fa4df5f9f37046dbada7215072822a39b6ea3b))
* file-uri while app initialisation ([2fed369](https://github.com/kimsreng/bench/commit/2fed369066a71e3631edba8f711e421499427803))
* FileNotFound bug ([#1383](https://github.com/kimsreng/bench/issues/1383)) ([965e178](https://github.com/kimsreng/bench/commit/965e178e8329c3af3defed984f79354d5a7ffbd7))
* **find:** Handle OS' PermissionError ([ea94752](https://github.com/kimsreng/bench/commit/ea947523b36211fbc73fc51c971f44794fd38d46))
* fix permissions for python3 bench init ([fce86fa](https://github.com/kimsreng/bench/commit/fce86fa896be6ed9a085d2fc73518737cf589857))
* fixed app states and checking/updating frappe version on install ([30a4ec3](https://github.com/kimsreng/bench/commit/30a4ec3b42db8d7e953521ef311c9a80515b4948))
* fixed app states and checking/updating frappe version on install ([42f4d74](https://github.com/kimsreng/bench/commit/42f4d74beb5418de2cfb418ab103dc6e568871d1))
* fixed args to sync-states ([c667be9](https://github.com/kimsreng/bench/commit/c667be90238585cedbf36ecc61e3ba938d2076cf))
* fixed frappe branch check ([6c15327](https://github.com/kimsreng/bench/commit/6c15327348789cefe474fa183c2d39cca6d45d78))
* fixed init in get-app and frappe versions ([88c2367](https://github.com/kimsreng/bench/commit/88c23673d6dc52d580444775dceab6783377829f))
* fixed init in get-app and frappe versions ([e3bd34c](https://github.com/kimsreng/bench/commit/e3bd34c12ca6f1e86150e811c6d23f3ab1196504))
* Fixed order of install ([281d96a](https://github.com/kimsreng/bench/commit/281d96ac160c84588f394beac43ddf4594c3bad3))
* fixed org, branch for apps mounted on disk ([#1293](https://github.com/kimsreng/bench/issues/1293)) ([c8ef822](https://github.com/kimsreng/bench/commit/c8ef8224d473b6b087fce2343f87e90acbdb5a93))
* fixed states sync ([7f37488](https://github.com/kimsreng/bench/commit/7f374887f494d5982002ca69727a6cbeef62839a))
* fixed update_app_states call ([#1326](https://github.com/kimsreng/bench/issues/1326)) ([45267fc](https://github.com/kimsreng/bench/commit/45267fc8979fe9bb7819a770df97482d87732577))
* **fonts:** remove unused setup_fonts method ([#878](https://github.com/kimsreng/bench/issues/878)) ([0d4ace9](https://github.com/kimsreng/bench/commit/0d4ace95a66f1f373a151ea48367325b1520970c))
* force checkout during switch_branch and quiet fetch ([9f467d8](https://github.com/kimsreng/bench/commit/9f467d88e4685b6ce22e4364f9956bcb0b9b19eb))
* force renew on monthly bases ([7dcd5f9](https://github.com/kimsreng/bench/commit/7dcd5f9ce3c3322f0a5d96f1b9624c6215f76448))
* force use PYPI packaged bench ([15b01e9](https://github.com/kimsreng/bench/commit/15b01e9451f8155a308fd1d047958c6f67b556a3))
* frappe app can exist without public folder ([13ed9be](https://github.com/kimsreng/bench/commit/13ed9beca5e42a139e05836713ade6bb1dfc2513))
* get_cmd_output handles exit codes if no output ([a032528](https://github.com/kimsreng/bench/commit/a03252881a0b0392a149eeb4963d651921783f22))
* get-app on existing apps ([e03f597](https://github.com/kimsreng/bench/commit/e03f597ac6edec87526e00d765f0dcf17d3653f4))
* get-app sets up node requirements ([03e512f](https://github.com/kimsreng/bench/commit/03e512fdab3c6b8240a4f290a554f72c686585f5))
* **get-app:** allow ssh urls ([7402807](https://github.com/kimsreng/bench/commit/74028074df18d7794761402dced742b6346b423a))
* **get-app:** handle existing directory and other formatting changes ([d1a3017](https://github.com/kimsreng/bench/commit/d1a3017172a415919f3335c4e43edd7488ea69b2))
* git depth, fixed requirements ([#845](https://github.com/kimsreng/bench/issues/845)) ([ce6b4c8](https://github.com/kimsreng/bench/commit/ce6b4c8a1136a3988a6bf42b444046cbdd047359))
* git stash requires user details pre git v2.21 ([a7a8790](https://github.com/kimsreng/bench/commit/a7a8790de6f18bd2dd572a71ceaf4cb868d81b49))
* handle app not found under GH frappe erpnext orgs ([b3842d9](https://github.com/kimsreng/bench/commit/b3842d9b305da87d689bea379049beee3dd1cbbb))
* Handle collisions while moving apps ([3709682](https://github.com/kimsreng/bench/commit/37096822319983302df1a9daf72d41035ad43f5b))
* Handle command execution failures ([dcdb15d](https://github.com/kimsreng/bench/commit/dcdb15d471f47ebfb42908d3b19bc2dac9e6d45a))
* Handle no args passed in CLI ([31e4aee](https://github.com/kimsreng/bench/commit/31e4aeeab8bca4a8d58ad72db735128670a7480b))
* Handle supervisor escalation better ([#1438](https://github.com/kimsreng/bench/issues/1438)) ([c690e8e](https://github.com/kimsreng/bench/commit/c690e8e7f53d20c2297734a0159f7b36d93a8f38))
* Handle tag fetching failures of disk mounted App inits ([117d456](https://github.com/kimsreng/bench/commit/117d456b16289f8a715c608a1265dd9a59368247))
* help for bench install without sudo ([2d43612](https://github.com/kimsreng/bench/commit/2d436126fd4c1e187bbb9b2685f2b7575dfe19d4))
* Hide irrelevant stacks during exc raise ([8175239](https://github.com/kimsreng/bench/commit/817523943414345bdd161b50c263f634b7a8f70d))
* Hit command cache before fetching all commands ([a94ea19](https://github.com/kimsreng/bench/commit/a94ea19bf43d0359c5f59d2aa886742eb8832c65))
* ignore org check fail if using cache ([aa12aab](https://github.com/kimsreng/bench/commit/aa12aabb26607f7f88ef639391720e9f6ab91494))
* ignore supervisor restart failures where possible ([#1400](https://github.com/kimsreng/bench/issues/1400)) ([7a63f4f](https://github.com/kimsreng/bench/commit/7a63f4f461e7c62ec1973dde92620c27259f0d8c))
* image replace and site creation ([f93f065](https://github.com/kimsreng/bench/commit/f93f065ba3477c3316f21422406d0f65e813c8eb))
* Import bench.cli ([27128c7](https://github.com/kimsreng/bench/commit/27128c7c18f7df694344305460eacb358df6ef35))
* import path for util ([ee6a967](https://github.com/kimsreng/bench/commit/ee6a967a205addf57b1e233d2451c8a191b28cec))
* importing reload caused issues in python2 ([47a9aca](https://github.com/kimsreng/bench/commit/47a9aca0e705c7f493bbea0724b56333652d2982))
* incorrect import statement ([699705f](https://github.com/kimsreng/bench/commit/699705f64b8e549e0a8322a0ea429a5d5361da07))
* incorrect import statement ([459432b](https://github.com/kimsreng/bench/commit/459432b1956b0f0651dc9303fcad8f300555ffe6))
* increase tar file limit ([d8ce1b3](https://github.com/kimsreng/bench/commit/d8ce1b3cb4f743a5842d203fd82ea8ebe2ba96f8))
* Initialize bench in get-app with --init-bench ([a2ccc30](https://github.com/kimsreng/bench/commit/a2ccc30bc365fb88a320559828082706944e0072))
* Initialize bench with Python 3 ([e24ca16](https://github.com/kimsreng/bench/commit/e24ca16c9021e74138c1894987e78791c71b2bd5))
* install app instead of requirements.txt ([d99780b](https://github.com/kimsreng/bench/commit/d99780b041fe7aceecb56984042ece59dd3b96e2))
* install missing dirmngr for debian installs ([2b6260d](https://github.com/kimsreng/bench/commit/2b6260d63ec62570efba123f369587ead6b9dc8f))
* install node modules if package.json exists ([67fb0a4](https://github.com/kimsreng/bench/commit/67fb0a4042d76eb8c988fba6b41b516fb22719e9))
* install one app at a time, frappe first ([4f0193c](https://github.com/kimsreng/bench/commit/4f0193ca9349d971e1ce3087c556b9710bc5db69))
* install pip via pacman, minor fixes ([f251fea](https://github.com/kimsreng/bench/commit/f251feae8727d3608f0e570af2032d75fc3eebe5))
* install supervisor on user if doesnt exist ([395b8df](https://github.com/kimsreng/bench/commit/395b8df895f22e4ca1d225744ab8c44b5bde896a))
* Install wheel during ansible setup ([61567be](https://github.com/kimsreng/bench/commit/61567be3f69aa34b11a60fbd807aed00f9dc40a7))
* install wheel in venv ([4996afb](https://github.com/kimsreng/bench/commit/4996afb012ef1f05e56e576bb472df9217b00a6b))
* **install:** Allow override of frappe_branch and erpnext_branch ([6a207ca](https://github.com/kimsreng/bench/commit/6a207ca57ab36d3d43b169b8a7609ba87dc8611b))
* **install:** Helpful logging ([2c4659a](https://github.com/kimsreng/bench/commit/2c4659a7aab2c4c8ed7734438ffc42360c9c6023))
* **install:** Install dev packages for Arm 64-bit ([df0562d](https://github.com/kimsreng/bench/commit/df0562d59b423f1d833c929a38ea5e380bbcae4f))
* **install:** Obey --without-site ([608b28c](https://github.com/kimsreng/bench/commit/608b28c2460adf2b6ee1504b21a7e69dfdb06a1e))
* **install:** SHow Debian 10 is supported, update MariaDB defaults ([fadf44d](https://github.com/kimsreng/bench/commit/fadf44d747fee577a6e81eac19c56d6b81a0f83b))
* invalid syntax for click option ([cac66a6](https://github.com/kimsreng/bench/commit/cac66a6b8811cb55049134ade75a9c8e86f56809))
* Invoke pip via python ([b0ccb6e](https://github.com/kimsreng/bench/commit/b0ccb6efbea33acdb07b3500a07b37c8ffbeae23))
* issue when ignore_exist is set and the path already exists 🐛 ([#910](https://github.com/kimsreng/bench/issues/910)) ([40f7e09](https://github.com/kimsreng/bench/commit/40f7e09c0f25e8dc05188d272d4c01c58de7229a)), closes [/github.com/frappe/bench/commit/7fb1484b7f5dae561a098ab2a01c7f209664f626#diff-237d6b07e1835fbd8e51e251f66b2ec0](https://github.com//github.com/frappe/bench/commit/7fb1484b7f5dae561a098ab2a01c7f209664f626/issues/diff-237d6b07e1835fbd8e51e251f66b2ec0)
* **lets-encrypt:** run command non interactively if flag passed ([7ccc275](https://github.com/kimsreng/bench/commit/7ccc2757929ab1aa4a7ccf8474e4d9541f351774))
* Log in ~/bench.log if not running inside bench directory ([28302f6](https://github.com/kimsreng/bench/commit/28302f67a30e061d771a5607f67b2b03b1205a7d))
* logging when in init-bench ([a26f3ce](https://github.com/kimsreng/bench/commit/a26f3ce564035e601e154ebadaa3af2c4deab4b9))
* logging when in init-bench ([de315f2](https://github.com/kimsreng/bench/commit/de315f27ad31b88ccf557e2257d455a3bed762b9))
* maintain worker and worker.error logfile in dev mode ([cac8375](https://github.com/kimsreng/bench/commit/cac837547c67fdfd89d3c7f4d916000600732e2b))
* merge conflicts ([61a864d](https://github.com/kimsreng/bench/commit/61a864de1198329b51b9416d54ac2e9923d9c7dd))
* merge conflicts ([ca45305](https://github.com/kimsreng/bench/commit/ca4530528c7f28ab6d98cbf889687b22fca535ad))
* Message per app when installing node deps ([bdc20a5](https://github.com/kimsreng/bench/commit/bdc20a54356f429f723f0b87599f5283e134b237))
* migrate_env silent failures ([7f1c5ad](https://github.com/kimsreng/bench/commit/7f1c5ad9c673f158885b083c39000d071f6400a0))
* minor fixes ([94105c0](https://github.com/kimsreng/bench/commit/94105c0aa8e565a25d6243fe9484098629de258d))
* minor fixes ([e629ca6](https://github.com/kimsreng/bench/commit/e629ca6f8679d2144394c143602a160424660484))
* Misc fixes ([#1294](https://github.com/kimsreng/bench/issues/1294)) ([eb71573](https://github.com/kimsreng/bench/commit/eb715735bbb79e5edd39e29c1b0e5587d2d3712c))
* missing installed branch ([af3c871](https://github.com/kimsreng/bench/commit/af3c871632843ffb8c8d0e78de097e15f0b8fd1e))
* mkdir -p to ignore `OSError`s ([d38b63a](https://github.com/kimsreng/bench/commit/d38b63a483deb0186828e82e09c4c650eb672d54))
* more reliable gunicorn restart ([2ec0c0a](https://github.com/kimsreng/bench/commit/2ec0c0a95ab896ed4d060b7774490015a2b3c320))
* move bench.env to bench.config.env ([1f4994d](https://github.com/kimsreng/bench/commit/1f4994d4347a92ee7cbfb7a0b9015f4837d7f1a5))
* Move logging to lower level App.get API ([4ba5422](https://github.com/kimsreng/bench/commit/4ba5422b65a3d29b462bdec1bf8dc4126483e20a))
* move update to utils ([2713a2e](https://github.com/kimsreng/bench/commit/2713a2e9cd7c254e6856e73dcc0389f6f8760fc0))
* nginx proxy buffer ([7f9bed4](https://github.com/kimsreng/bench/commit/7f9bed4c8e18114a54432e426e958281da7428ec))
* **nginx:** add redirect rules to avoid duplicate content ([7051aa3](https://github.com/kimsreng/bench/commit/7051aa3d4eb4eceb3d245b7b22a75be5444d6190))
* **nginx:** Allow specifying log_format setting ([bbf0169](https://github.com/kimsreng/bench/commit/bbf016999450943bc0f7917191265183cf41e265))
* **nginx:** set `proxy_http_version` to `1.1` ([7da62f9](https://github.com/kimsreng/bench/commit/7da62f96f29fbd12d42c0686abbc8adcb05c4049))
* no-backup option argument ([#842](https://github.com/kimsreng/bench/issues/842)) ([6dbf6b9](https://github.com/kimsreng/bench/commit/6dbf6b984640170fa71f67ae34401c7488b67606))
* no-git support for dependency resolver ([#1368](https://github.com/kimsreng/bench/issues/1368)) ([fcbc2ea](https://github.com/kimsreng/bench/commit/fcbc2eaa470dbd083d1a1be75dc79d71916d0a80))
* nodejs redis v4 interprets localhost as ipv6 address ([697939e](https://github.com/kimsreng/bench/commit/697939e2058f7e7ad81b1aee4848c60402d6b46f))
* only fetch current branch ([895c403](https://github.com/kimsreng/bench/commit/895c40327806d93d33507731cefed2d013ba117e))
* only fetch what is necessary, simplify & improve grepability ([82173c1](https://github.com/kimsreng/bench/commit/82173c1d42eaaed563f6f3ac17cda2e96b35b195))
* only get the specific branch for version check ([0ff8ddd](https://github.com/kimsreng/bench/commit/0ff8dddef960f63e35103285961f08f835da422e))
* override X-Forwarded-For address in bench manager ([53a8fed](https://github.com/kimsreng/bench/commit/53a8fedadc266a4ea9c02edc33480547857fc53b))
* parsing error ([#1364](https://github.com/kimsreng/bench/issues/1364)) ([4bc3a08](https://github.com/kimsreng/bench/commit/4bc3a086f2f433b99afb40bffab92f9c1de63ba6))
* Pass `skip_assets` while resolving dependant apps ([8275d67](https://github.com/kimsreng/bench/commit/8275d678f4dc0ad1902123f4f1c5f6bf4bce76b8))
* Pass abs path from get_env_cmd ([10473b6](https://github.com/kimsreng/bench/commit/10473b60076dde4080ce28222031a332ee7d313a))
* Pass cwd for cmd subprocess execution ([01b7759](https://github.com/kimsreng/bench/commit/01b77598ff2ff4cde4c75dad9b3a39526858c685))
* Patch to move archived_sites to archived/sites ([877e812](https://github.com/kimsreng/bench/commit/877e812fbbee2fcb65e3759175883096f5ea55a5))
* **patch:** Rename parent dir instead of moving individual dirs ([0bd0717](https://github.com/kimsreng/bench/commit/0bd0717f24936a51c209fad30ddcfdc3c4e83390))
* **pdf:** Use libssl1.0-dev instead of libssl-dev ([31fc3a0](https://github.com/kimsreng/bench/commit/31fc3a0ebb3f0532f1e099a4c6aae3ce641a75b7))
* perm while executing create user ([f23698a](https://github.com/kimsreng/bench/commit/f23698afd70d928cffbbc182e12295b16c481d1b))
* pin dependencies of requirements ([c660593](https://github.com/kimsreng/bench/commit/c660593a9ad0a99148a376913c5bec8bd77b675a))
* pip pinned to 19.3.1 after v20 breaking ([7498c8e](https://github.com/kimsreng/bench/commit/7498c8e497fa3357b4fc8267cba774525f307946))
* **playbooks:** pre v5.1 compatibility for playbooks folder ([08bc61a](https://github.com/kimsreng/bench/commit/08bc61a53a018717bccad44a48bd6e1b2b9b0beb))
* **playbooks:** Support wkhtmltox arm64 architecture ([d6d1b91](https://github.com/kimsreng/bench/commit/d6d1b91a79b3b74a5595a2b943041659ff5928bd))
* **playbooks:** wkhtmltopdf checksum string for debian 9 ([#969](https://github.com/kimsreng/bench/issues/969)) ([a7c52b4](https://github.com/kimsreng/bench/commit/a7c52b4059e5f4d07b9dfce4ed65c52a8ed10c5d))
* populate bench.log via bench.utils.log ([2fd86c9](https://github.com/kimsreng/bench/commit/2fd86c9eb6220ea565daf7a5be5a8a1e22750c60))
* port number mismatch when having multiple benches ([#1480](https://github.com/kimsreng/bench/issues/1480)) ([3c8cbbc](https://github.com/kimsreng/bench/commit/3c8cbbc023b551b56e7063fceb2d5e87f5b39317))
* PosixPath object has no attribute 'rstrip' ([aaf4856](https://github.com/kimsreng/bench/commit/aaf48566b71b784b5ba8f3e3347e4f82cb7d4827))
* **prerelease:** allow making prerelease for bench ([0290932](https://github.com/kimsreng/bench/commit/029093282831597f42f991e49ebd32c006f3ca95))
* prevent circular dependency ([7bcea60](https://github.com/kimsreng/bench/commit/7bcea6099da1a41ad530bdd85ff337f627039b80))
* Prevent Gunicorn child workers hangup ([36f2194](https://github.com/kimsreng/bench/commit/36f2194865a2f6067639383612a648ce39feef84))
* Print failing command with CommandFailedError ([a1d2c52](https://github.com/kimsreng/bench/commit/a1d2c5226b598ed4cfbb0a67b943bb6ab1ae825c))
* print help when no args passed ([228aeaf](https://github.com/kimsreng/bench/commit/228aeaf2fdf0205294825a40c6752b2c8abf6d7a))
* print required by in output ([5bb3b52](https://github.com/kimsreng/bench/commit/5bb3b52f23bf01ca138a359eaf22e020007375f8))
* process SSH git URLs ([c8494cf](https://github.com/kimsreng/bench/commit/c8494cffa6643f0ad2d586bde905b944df5d3f8d))
* process SSH git URLs ([660287a](https://github.com/kimsreng/bench/commit/660287a1a7ac0023acd177ae88aa9d14c88c063f))
* proper semantic version bumping ([64a3a5c](https://github.com/kimsreng/bench/commit/64a3a5c40ae7762b2c68697f74bce79f5a0eee3c))
* provision to pass container flag while setting up swap ([ee8a8fb](https://github.com/kimsreng/bench/commit/ee8a8fbbfb34998b1ff3184cdfd0a8e1335f88c0))
* pull app list from sites/apps.txt ([c2165b4](https://github.com/kimsreng/bench/commit/c2165b471a83931d6d829286ba719402ba7aced2))
* PY2 compatible regex ([4ae8ae2](https://github.com/kimsreng/bench/commit/4ae8ae21f791b6a15266c1c0eb5ea870bd77895f))
* raise (by default) when exec_cmd fails ([3995b92](https://github.com/kimsreng/bench/commit/3995b9237b07ef5bef2fbd6a35000b7faa88ab2c))
* Raise and handle Exception class ([c4b8391](https://github.com/kimsreng/bench/commit/c4b839171662092dc0754586e5e14304e55be613))
* random failings from subprocesses and command formatting ([#935](https://github.com/kimsreng/bench/issues/935)) ([b064987](https://github.com/kimsreng/bench/commit/b0649870eecaf7e00e4f4e122c2111016f1b8d59))
* **readme:** add ubuntu 18.04 to easy install ([4f8114f](https://github.com/kimsreng/bench/commit/4f8114f9418861ed68e527f58f1b6f6890623d98))
* **release:** accomodate future branches ([5699204](https://github.com/kimsreng/bench/commit/5699204a587a48425b271cc65b154a411d0170c5))
* **release:** don't fast-forward while merging ([c1bba94](https://github.com/kimsreng/bench/commit/c1bba9464871b1d1efe49a01b051895e06c9fa7c))
* **release:** handle release for multiple branches ([dd78011](https://github.com/kimsreng/bench/commit/dd78011717a4aaabe12ba40af817ed80bedf9afa))
* **release:** syntax error ([933d7a1](https://github.com/kimsreng/bench/commit/933d7a15b893f7faebc1eaba203e36f2cfaf15b8))
* Remove backup command ([#1345](https://github.com/kimsreng/bench/issues/1345)) ([0cd5fca](https://github.com/kimsreng/bench/commit/0cd5fca32226c40e8689d82ea1177fb6ab3520e3))
* remove bench and supervisor from sudoers ([51b81c3](https://github.com/kimsreng/bench/commit/51b81c399760581a57184e368f4a5e2bc4743b5f))
* Remove broken import path ([2c5c28b](https://github.com/kimsreng/bench/commit/2c5c28bbe249aebb89b8a3e45c8a1f8c9aa6fd68))
* remove deprecated pre_upgrade usage ([016b7da](https://github.com/kimsreng/bench/commit/016b7da9ffcfeb342d9ca28ed2aae51329ee87c4))
* Remove except-pass ValueError ([d9c8335](https://github.com/kimsreng/bench/commit/d9c8335fbf3344c982b604ffd1507c4c0cd4ff11))
* Remove frappe cmd caching in .bench.cmd ([f773529](https://github.com/kimsreng/bench/commit/f77352966b74defd053c2d73bb3fe942c4559eed))
* remove npm to fix ubuntu 18 install conflicts ([e9205b5](https://github.com/kimsreng/bench/commit/e9205b5032ea1302ebea0f853004340df035eb85))
* Remove PY2 compatibility code ([54d48f6](https://github.com/kimsreng/bench/commit/54d48f61a339718d173c52138c0652473fde1140))
* remove rem check from app-cache --clear ([4e170a2](https://github.com/kimsreng/bench/commit/4e170a2042c114e46b978c83413e2267194d957b))
* Remove set-default-site from CLI ([ed3f2d2](https://github.com/kimsreng/bench/commit/ed3f2d28fbf729ae14a0bdad74632a7332af9eb2))
* Remove src test ([b8ed4f6](https://github.com/kimsreng/bench/commit/b8ed4f6a4bc35f7a8935793c3616fc1258ff2685))
* remove supervisord under service and systemctl in sudoers ([39f8223](https://github.com/kimsreng/bench/commit/39f8223d6d0b82c7b867789a5593f11e4d353bef))
* Remove the infamous print style ([46b78f4](https://github.com/kimsreng/bench/commit/46b78f4a53485849fffa3354983f22f890fdc900))
* remove unnecessary - commands aliases ([e435500](https://github.com/kimsreng/bench/commit/e4355001e73d543fe380394f02092600fefaf7f9))
* remove unused method and use six to reload module ([#875](https://github.com/kimsreng/bench/issues/875)) ([d2d5772](https://github.com/kimsreng/bench/commit/d2d577201ddb1aa6927cf91652688111cd11d371))
* remove unused nodemodules before caching ([0e2e8b4](https://github.com/kimsreng/bench/commit/0e2e8b4da3abb74c55643568f6c30ab86a4ec353))
* remove unwanted `patches.txt` ([85500b7](https://github.com/kimsreng/bench/commit/85500b7751756b8a17304268f5514a0385991cc8))
* Remove virtualenv dependency ([e0f6b17](https://github.com/kimsreng/bench/commit/e0f6b1735d355e03d9e7dc221231ab33b7dec4c3))
* **remove_app:** use app name instead of app path ([e4e054e](https://github.com/kimsreng/bench/commit/e4e054e84010c8c1f3fe3ead55fbb715aee89c31))
* **remove-app:** Use App.name instead of App.repo for consistent App name ([a3b859b](https://github.com/kimsreng/bench/commit/a3b859bf50eb13ef24d82db47410fb4d63988331))
* removed erroneous file push ([f2fe569](https://github.com/kimsreng/bench/commit/f2fe56962fd93953b80a7b304c00c797afb1bb57))
* removed erroneous file push ([b7e46aa](https://github.com/kimsreng/bench/commit/b7e46aab6fce2aa5d2ec22fe3138870be11a8858))
* removed force renewal as it would extend by 3 months every month, now the job runs daily ([408676c](https://github.com/kimsreng/bench/commit/408676c80e3fa37e3794584b12e73c2060cfa55f))
* removed patch ([87edc4e](https://github.com/kimsreng/bench/commit/87edc4e10932a9ce92215fef00daada5f6817b7d))
* removed unnecessary requests while removing apps ([49900ce](https://github.com/kimsreng/bench/commit/49900ce74b6dcc109b5d5a2092fc9e35fb211a30))
* rename key ([75f8462](https://github.com/kimsreng/bench/commit/75f84625ad4b19f74bffa989c878ecda07b5c68b))
* replace certbot-auto with certbot ([#1303](https://github.com/kimsreng/bench/issues/1303)) ([a889325](https://github.com/kimsreng/bench/commit/a88932592eed1682fa57c4231bd71f54d52b7e67))
* replace shutil.move with Path.rename ([a648590](https://github.com/kimsreng/bench/commit/a648590be4334843f6e0f1a0f699dd55d2daca2e))
* requests package dependancy for centos ([9fe3a91](https://github.com/kimsreng/bench/commit/9fe3a91605fe47a507151c985eefa22c7f16effd))
* resolve filesystem app dependencies ([#1450](https://github.com/kimsreng/bench/issues/1450)) ([f3b55f7](https://github.com/kimsreng/bench/commit/f3b55f7785710cf293aaa00a087b1bd7e760e7cf))
* Respect bench config during restart ([25f49c2](https://github.com/kimsreng/bench/commit/25f49c2dbba998a7b11975a6f17034bdb050c3ab))
* restart proc manager if set in config ([#1391](https://github.com/kimsreng/bench/issues/1391)) ([c59d1ed](https://github.com/kimsreng/bench/commit/c59d1edee5e2c22f55f91ac946df8e09535c8927))
* restart supervisor service after conf update ([48f70ac](https://github.com/kimsreng/bench/commit/48f70aca65b8627dce6ff124ad1509c9641f1895))
* restart supervisord process after change in conf ([ec1acec](https://github.com/kimsreng/bench/commit/ec1acec788a78f8b6a1e695734a47163541694cd))
* **restart:** Setup restarts vars with fallback ([af14baf](https://github.com/kimsreng/bench/commit/af14bafe2137da799694a0ad3dd5a2b138c311e6))
* Return fallback list in cached_frappe_commands ([a015501](https://github.com/kimsreng/bench/commit/a01550169905a20b8322931338331cc80bc57766))
* Return repo_name if app_name doesn't exist ([aa1a1b9](https://github.com/kimsreng/bench/commit/aa1a1b9a718da1dcfb164f5035fe79a2af813677))
* return returncode in bench.utils.exec_cmd ([1928eaa](https://github.com/kimsreng/bench/commit/1928eaa2c5da8b5183f6b9e4990ae866e180a4c2))
* Revert print compatibility import ([753e36d](https://github.com/kimsreng/bench/commit/753e36d433b57ae742b2e02ec75d9615b0ebb358))
* Revert usage of app_name for repo name ([f7fbee9](https://github.com/kimsreng/bench/commit/f7fbee99d61a9fdf727a3efe1419eceb4148fb35))
* reverted changes made by erroneous commit ([b8aa008](https://github.com/kimsreng/bench/commit/b8aa00898f47f9400601a5ffdbde14af0844b005))
* reverted erroneous commits ([ff98aaf](https://github.com/kimsreng/bench/commit/ff98aaf198a34eac0afbcb67ddac0fb52b5df880))
* RQ crashes on Mac ([#1529](https://github.com/kimsreng/bench/issues/1529)) ([f5ab045](https://github.com/kimsreng/bench/commit/f5ab0459ece1d845966a504ab6c8dbb4a542b1e1))
* run backups every 6 hours, rather than every minute per 6 hours ([691687e](https://github.com/kimsreng/bench/commit/691687edbef00238166cd209717e66cd9fb74944))
* Run compileall in bench after update ([54e6bcf](https://github.com/kimsreng/bench/commit/54e6bcfe9c967137e0be00cefe93a5ddaec30056))
* run fix_user_permissions only if production or sudoers is set up ([fe02844](https://github.com/kimsreng/bench/commit/fe02844c69a849b4c1a826dbd16a4f5dc28127bc))
* run install script without sudo ([982b727](https://github.com/kimsreng/bench/commit/982b727a3c56cb422b6003474ab8d92a2d20a6ef))
* run patches for current user ([78dbdcb](https://github.com/kimsreng/bench/commit/78dbdcb3f18193ba03a54722a9e4a244896907b9))
* run test builds for py2.7 and py3.7 ([3ea6634](https://github.com/kimsreng/bench/commit/3ea66343284e45b72bbe1e2558f7cc6baadc274c))
* script to install pre-requisites ([e7f45e3](https://github.com/kimsreng/bench/commit/e7f45e36d2ba4f72821d2049d0f6ff25c02536de))
* **security:** Force download html, svg and xml files ([893cb88](https://github.com/kimsreng/bench/commit/893cb884eed520b6bea1a74ec28c37ac8c0a2767))
* separate out scripts ([b6dd496](https://github.com/kimsreng/bench/commit/b6dd496e35109165d796441450b35dc58e316c03))
* seperate colors from log, change exception ([7fb1484](https://github.com/kimsreng/bench/commit/7fb1484b7f5dae561a098ab2a01c7f209664f626))
* serious bug capable of deleting apps path ([a1db48b](https://github.com/kimsreng/bench/commit/a1db48b57ef7263e1bf2775f8738469f9074533f))
* Set correct remote_server for cloning ([9802fea](https://github.com/kimsreng/bench/commit/9802feaa9cc658b7c96911f3fcdc6e6f72b9ec6e))
* Set proper branch to clone ([217f27f](https://github.com/kimsreng/bench/commit/217f27f51188d6fc4fea9e3f86d88d70410ba1a7))
* set referrer-policy header in nginx config ([a4916d7](https://github.com/kimsreng/bench/commit/a4916d7b895f8d9840a0dbff647a66de06bcf6d5))
* Set remote_server attr "better" ([e3b9c2a](https://github.com/kimsreng/bench/commit/e3b9c2a239f020c4d64c67c8c48b856a8a164283))
* set translations download limit based on cpu cores ([7e7c396](https://github.com/kimsreng/bench/commit/7e7c3969a764faffe814e72a0940103c4bb69d67))
* Set verbosity if --verbose is passed anywhere period ([2caf7e7](https://github.com/kimsreng/bench/commit/2caf7e7d154cddddcfa98cda81cdfa11ae9e24a9))
* setup all apps is empty list is supplied ([7ab469a](https://github.com/kimsreng/bench/commit/7ab469af84be283098a17a01526c0e5572a16e3a))
* Setup chdir patch earlier ([db165d1](https://github.com/kimsreng/bench/commit/db165d1f9b0b10ca39f39d407737bd4f515d7d83))
* setup cron job for renewing ssl certificate ([#918](https://github.com/kimsreng/bench/issues/918)) ([92d2fbd](https://github.com/kimsreng/bench/commit/92d2fbdc1383a524579b5337c0e5233eddf35668)), closes [/github.com/frappe/bench/pull/918#issuecomment-589961301](https://github.com//github.com/frappe/bench/pull/918/issues/issuecomment-589961301)
* Setup exception handler for CommandFailedError only ([94a1b8c](https://github.com/kimsreng/bench/commit/94a1b8c3fb8bee513c02841f48a2d05ccaab6a53))
* setup libssl dependancy by checking distribution ([7af5e67](https://github.com/kimsreng/bench/commit/7af5e6732da71c7a190a31ea2828c6724e0d5e7c))
* setup nginx fails for broken site_config ([8b02bed](https://github.com/kimsreng/bench/commit/8b02bed71cd60d64d3fad1ea40e31884afbee552))
* setup requirements --python skips assets ([d0ebf7f](https://github.com/kimsreng/bench/commit/d0ebf7f4c4b17d96f8ee798cb83c7a6122db37ef))
* Show bench init job via bench get-app (conditional) ([225fce5](https://github.com/kimsreng/bench/commit/225fce5be68bf889e3b1cb8e7d52b212a2167a32))
* Show better user messages when failed to update supervisord ([d89f19e](https://github.com/kimsreng/bench/commit/d89f19e02ea8aba027f7205a6fe8fb2c93609ad7))
* Show correct src of bench source ([fe2d927](https://github.com/kimsreng/bench/commit/fe2d927133ea56a0c2a93505236384b7d4189b44))
* show if service manager not found, also log it ([629842a](https://github.com/kimsreng/bench/commit/629842a042be936e9bc1d42cdb9247ad94a2c2ae))
* Show pip's help menu when --help is passed in pip command ([6d10d75](https://github.com/kimsreng/bench/commit/6d10d75bb169b3ed3ad91c9c297cefc93f494448))
* Show step titles while running operations ([096c2cf](https://github.com/kimsreng/bench/commit/096c2cfe6b7a25d9a20c9fc81105c56855d49965))
* Show traceback if error occurs during init, get outside bench dir ([806d543](https://github.com/kimsreng/bench/commit/806d543fac93fafb844bd19e5b44d4b6196faa42))
* Show traceback in dev mode and set exit code on errors ([e074a1d](https://github.com/kimsreng/bench/commit/e074a1d886b1cb00f792a8cc781059b7ea2c2a4a))
* Show traceback on bench init failure ([30e3e72](https://github.com/kimsreng/bench/commit/30e3e725a88b081c0fdeb41c960dd3067a45dfe7))
* Show warning while using experimental features ([b7994e2](https://github.com/kimsreng/bench/commit/b7994e21b18b5d970e46f55e8fc2db89a2a4407e))
* single process to pip install requirements, quiet flag added ([1b0008d](https://github.com/kimsreng/bench/commit/1b0008d709ad15f379bc093ddec015169ba237c6))
* specify hatch version in release ([87b4b1f](https://github.com/kimsreng/bench/commit/87b4b1fd2a6d4e04e51230f2558b2573395ed823))
* ssl nginx directive deprecation ([a514a0e](https://github.com/kimsreng/bench/commit/a514a0e97b0ffe707a9aa26746d20b535719227e))
* supervisor command does not require sudo ([c5cf916](https://github.com/kimsreng/bench/commit/c5cf9164a6bc94193b5b3cb01c0df49b642e5494))
* support for local and remote apps when looking for dependencies ([2f17da1](https://github.com/kimsreng/bench/commit/2f17da1bf08168a21b97587b52755f84e04a3e90))
* support single required app ([c8205e4](https://github.com/kimsreng/bench/commit/c8205e485decf56ab47947a950ae84581efb5749))
* switch branches "better" ([dc307b6](https://github.com/kimsreng/bench/commit/dc307b6880d61956754d665aae37b6f9c3fab4b8))
* Switched to native GIT way to lookup branch names ([#1553](https://github.com/kimsreng/bench/issues/1553)) ([1751b2d](https://github.com/kimsreng/bench/commit/1751b2db5bcedc33276026f3283a4ff1f0d5ac04))
* sync apps file in init, imports and no warn in CI ([71d178d](https://github.com/kimsreng/bench/commit/71d178dde952742a02fb19bfac812c6db8ef9d9d))
* sync socketio port for old benches ([#1481](https://github.com/kimsreng/bench/issues/1481)) ([c2af169](https://github.com/kimsreng/bench/commit/c2af169dd6470a0887bb0422445519e0446e77ad))
* syntax error ([d55d29b](https://github.com/kimsreng/bench/commit/d55d29b8fd919e434ce2520d454259d41687a188))
* syntax error ([21925fa](https://github.com/kimsreng/bench/commit/21925fa06f3ad21fe6d2cb103b9da6a3daca1b83))
* take backup before pulling the code and make site available after restarting the processes ([9242b92](https://github.com/kimsreng/bench/commit/9242b927ca3574f781475b264b5d35cd1b71191a))
* **tests:** add --yes flag to production setup ([851b4c3](https://github.com/kimsreng/bench/commit/851b4c3275bde7608d26804b9134d93944be3b7e))
* **tests:** print traceback from errors ([6dc784f](https://github.com/kimsreng/bench/commit/6dc784fe4d33188e4095b1ce6480ff4e746c8eda))
* trailing slash deleting apps folder ([52ee67f](https://github.com/kimsreng/bench/commit/52ee67f298adb9939d9cee1266250968f35e8c0b))
* Trailing slash not setting app name properly ([357fcc0](https://github.com/kimsreng/bench/commit/357fcc0bbd7e0ea6f7546d61c5223f1288b89517))
* **travis:** Make install script verbose ([f57635e](https://github.com/kimsreng/bench/commit/f57635eebf45bdda85c5d5c4fa2efc15dcfc7ee1))
* **travis:** urllib3 ([8aa7c2b](https://github.com/kimsreng/bench/commit/8aa7c2b91356a72cebfed03749eca6b32d699939))
* **travis:** Use Ubuntu 16.04 ([1c8b4c0](https://github.com/kimsreng/bench/commit/1c8b4c032549af0822e2b027c32363491c71f2f0))
* trigger release ([f374e80](https://github.com/kimsreng/bench/commit/f374e80bcc8b12c4297a3e4ee054fc641d1b256c))
* Try setting supervisord conditionally ([7a4ade9](https://github.com/kimsreng/bench/commit/7a4ade9192ca451cfce87280ea05a89caba51054))
* typo cash to crash ([6dd0118](https://github.com/kimsreng/bench/commit/6dd01184462054c47de36884cf7e4ec735d50b44))
* typo fix ([22f3bc6](https://github.com/kimsreng/bench/commit/22f3bc6c360c5db49360b6893b3abbd6aabc6fa4))
* ubuntu iso version and packer path ([064fb66](https://github.com/kimsreng/bench/commit/064fb662804fbdbdf41d1d768acaec211669eabd))
* Unpin setuptools, six and virtualenv ([03576d1](https://github.com/kimsreng/bench/commit/03576d10b45046659fc356fb8113fddf06d2bc33))
* Unshallow clone if update without --reset ([4cadf2c](https://github.com/kimsreng/bench/commit/4cadf2c719f5ecf2580c28b4b2e687d7d8a69e6b))
* update bench install methods ([a728416](https://github.com/kimsreng/bench/commit/a728416c08450e19c6e251d23d5429ee4fb36a68))
* update bench requirements for user ([489d3b2](https://github.com/kimsreng/bench/commit/489d3b250107ae56c00969dc83145f186badbf4c))
* update check condition ([3e749ba](https://github.com/kimsreng/bench/commit/3e749ba547f80f40eefce7775ab5c2c6bbb8e8a9))
* Update Click requirement ([3b0bcb7](https://github.com/kimsreng/bench/commit/3b0bcb7616f8a97e788758cde4ac46c3a1360ee0))
* Update documentation for user directory ([294b399](https://github.com/kimsreng/bench/commit/294b399942e3b143fdb235efe9176460f12ad9d7))
* update easy install location ([803fa2d](https://github.com/kimsreng/bench/commit/803fa2d6acf4b1b835825d14f5336822230591c9))
* update install_app with using_cached flag ([10bb5a4](https://github.com/kimsreng/bench/commit/10bb5a47949512c59ac04919912e2249711c926a))
* update letsencrypt renew cron frequency ([7a7b0fe](https://github.com/kimsreng/bench/commit/7a7b0fea3786c1c4009fb580e96ae16c84f69cb3))
* Update package lists and setup prereqs before setting up script ([550f55d](https://github.com/kimsreng/bench/commit/550f55d1460cc29197c7ec9dddc59b0d81684e9f))
* update packages even if pip not in path ([b9bb944](https://github.com/kimsreng/bench/commit/b9bb9440d9cb335a0aa2ec7f807add634d7ff29f))
* update pinned requirements ([025665a](https://github.com/kimsreng/bench/commit/025665a09347d6e52903f9e2c4994865d0098add))
* update pre url coercion check ([6f074a7](https://github.com/kimsreng/bench/commit/6f074a7b3e627f305650d8a5061903c600547191))
* update supervisord and sudoers for old benches ([e12208d](https://github.com/kimsreng/bench/commit/e12208dc25a3c034fc0a39dc17f52ce3e2e77d76))
* update supervisord conf and reload, log everything ([c43da5b](https://github.com/kimsreng/bench/commit/c43da5be68b770cea30385b5f2169deb69f2caef))
* update supervisord.conf while generating supervisor.conf ([1f0a5ce](https://github.com/kimsreng/bench/commit/1f0a5ce5569ae2846294c73565f82bd356ae2b1d))
* updated apps.sync to support new app_name parameter ([7980709](https://github.com/kimsreng/bench/commit/7980709a2075c606f894454ee15673cddd639203))
* Updated command help and verbosity while setting crontab ([c9abac2](https://github.com/kimsreng/bench/commit/c9abac299a3b46f08b0b4406449bb82ed90a60a2))
* updated manifest.in ([1ba8c46](https://github.com/kimsreng/bench/commit/1ba8c463ded0b3d95e7a3b87e9df1cbeb826ddbc))
* updated sequence of package updates ([c7381de](https://github.com/kimsreng/bench/commit/c7381defd3fcaf447710316db579f3aa7d16ae66))
* updated URL for MacOS guide ([#1037](https://github.com/kimsreng/bench/issues/1037)) ([d6a1222](https://github.com/kimsreng/bench/commit/d6a12221da0ceaa0c30a1a2c55fde101ed41bef0))
* Upgrade pip first ([#1120](https://github.com/kimsreng/bench/issues/1120)) ([17ef5da](https://github.com/kimsreng/bench/commit/17ef5da5ce3a7061a01c890ae8ca90dcbb6c7957))
* Use 'develop' bench if not specified! ([0ad4421](https://github.com/kimsreng/bench/commit/0ad44214cf739812ce8dc0175f5774bdd376ebf1))
* Use == for dict comparison ([e80daf8](https://github.com/kimsreng/bench/commit/e80daf8c3e78ae5a675d5c9d1b75a92d1fe57eae))
* Use == to define had pinned requirement ([beac865](https://github.com/kimsreng/bench/commit/beac8651532db2ec8a55aa9d931b0cf3bde1ef25))
* use a tuple instead of a list ([c599ee8](https://github.com/kimsreng/bench/commit/c599ee86dd73e149e21564d75f202170170b7236))
* Use App.app_name over repo attr ([4f42392](https://github.com/kimsreng/bench/commit/4f423923b4c0aa646e9c4f1d7a04bf10bc420f61))
* use correct path for compiling py files ([b3a0757](https://github.com/kimsreng/bench/commit/b3a0757e38be2acf4e6bc8c8427717096d5e8bb0))
* use easy_install of develop + path update ([172a7c2](https://github.com/kimsreng/bench/commit/172a7c266b0f67a8306e0c761e6a61ae9d7c8ce7))
* use existing function ([656358c](https://github.com/kimsreng/bench/commit/656358cd597414f0c710ecf93407644e3745a141))
* use frappe_user from site_config and use getpass as fallback ([a6f72c7](https://github.com/kimsreng/bench/commit/a6f72c770f821944aa9cf45654416044f833c44c))
* use frappe13 in py 3.7 ([5b1b84b](https://github.com/kimsreng/bench/commit/5b1b84bc5f8938f48d4bc2c25e64b55c10ac0660))
* Use hardcoded python3 env cmd for Bench.python ([c9c6bf4](https://github.com/kimsreng/bench/commit/c9c6bf4512ba0c1c58df92a2384347bd77cc558d))
* Use NullHandler for commands executed outside a bench dir ([31f2999](https://github.com/kimsreng/bench/commit/31f2999b4b971176b57c09ecef5d5edfe39dcb53))
* use os.remove instead of shutil.rmtree for symlinks ([#1372](https://github.com/kimsreng/bench/issues/1372)) ([9fd15f6](https://github.com/kimsreng/bench/commit/9fd15f6fddf337e442a517f56be6cea5750fd6f9))
* Use python* to match any pattern in env ([24b9af6](https://github.com/kimsreng/bench/commit/24b9af605b08849ee506677a6c812c1e87ea3326))
* use ref param instead of branch for get_required_deps (GitHub contents API) ([#1362](https://github.com/kimsreng/bench/issues/1362)) ([9131ba0](https://github.com/kimsreng/bench/commit/9131ba05dbc72c6a482b54219db8adad2adf9158))
* use reload only if imported ([4d02801](https://github.com/kimsreng/bench/commit/4d02801f5328e02cd0e77fc1a5bd6223800f1411))
* use remote_addr instead of user-defined header ip ([a6bb587](https://github.com/kimsreng/bench/commit/a6bb58717d3a1ae0fbe735f30d3e7baa1a2e7923))
* use six to check for string types ([#874](https://github.com/kimsreng/bench/issues/874)) ([75ffa03](https://github.com/kimsreng/bench/commit/75ffa0325e5a4d2c223c2db6148f51b6d2f0cab1))
* use specified python for venv ([df84c27](https://github.com/kimsreng/bench/commit/df84c2772d8eb7334f37ec7380bed3ac424b0cc4))
* Use subscript instead of method for regex ([e126ff2](https://github.com/kimsreng/bench/commit/e126ff2439439668e7a48aa06df9d8d0e66963fb))
* use sys version info instead of user entry ([ff48ced](https://github.com/kimsreng/bench/commit/ff48ceda915c011f91f56fac58b607fa119155b8))
* Use test frappe app - frappe_docs instead of wiki or chat ([c636c7c](https://github.com/kimsreng/bench/commit/c636c7c133f6559d0b18c0c855b88e4419c412bb))
* Use venv module instead of virtualenv ([f60c2d0](https://github.com/kimsreng/bench/commit/f60c2d0def62eb689aecd6f6174dc8dd7130b42f))
* User messages on get-app actions ([d33d987](https://github.com/kimsreng/bench/commit/d33d987b2c6286401d7cf3f9902e348d2fad356d))
* using distro instead of platform ([967d149](https://github.com/kimsreng/bench/commit/967d1498f6cb7a41bd02a324b12899f23aca93e9))
* using local clones if path is passed in get-app ([5f37135](https://github.com/kimsreng/bench/commit/5f37135ff283e7540811e8100008e03ae3907176))
* utf8mb4_general_ci ([f2e7702](https://github.com/kimsreng/bench/commit/f2e7702fdefe30ee8d0546da5dc09e9042f7f570))
* **utils:** sort imports, add parenthesis on ambigupus expr ([c64a7e9](https://github.com/kimsreng/bench/commit/c64a7e90e694737519e8a568320badb00885a48a))
* **utils:** Strip * from cmd via get_env_cmd ([6ae1997](https://github.com/kimsreng/bench/commit/6ae1997bffb3d75083fb5c720336d036b18b22ce))
* validate branch before update ([d32d905](https://github.com/kimsreng/bench/commit/d32d905567d40c99387cf7dc8cbbcaa57e631f65))
* validate branch error message + cleanup ([b856516](https://github.com/kimsreng/bench/commit/b85651653b8511fe8f683fb8f101a1be0178b27d))
* validate branch in bench update ([5762724](https://github.com/kimsreng/bench/commit/5762724cc70639aead1ef4606b42e07fcd5ecc8d))
* version check backward compatibility ([#1409](https://github.com/kimsreng/bench/issues/1409)) ([23eede5](https://github.com/kimsreng/bench/commit/23eede5fd33501f58770d32ac2f4ba1793339b82))
* version check before AbsoluteLinkError ([3502c77](https://github.com/kimsreng/bench/commit/3502c776c0c265f767d1c159e332b0e23aa9ed29))
* version check before data_filter import ([80f2e70](https://github.com/kimsreng/bench/commit/80f2e70af68a8f089b558b1a814c39ecd0b24389))
* version comparison ([6f3f8f6](https://github.com/kimsreng/bench/commit/6f3f8f6eb007ed6e07ae4c7932a41e083c5cecba))
* warning on pip reinstall ([d979751](https://github.com/kimsreng/bench/commit/d979751e0c44f8b519e77a4bb11c7e6e3f6333ee))
* wrap tarfile with error handling ([30f301e](https://github.com/kimsreng/bench/commit/30f301e3ffa8a2561160ec740d2d046355905c97))
* wrong flag description ([e9c046d](https://github.com/kimsreng/bench/commit/e9c046d56b15e39630490bc64ebaaa6727623186))
* wrong help string ([7a89ccd](https://github.com/kimsreng/bench/commit/7a89ccd53a6b5bec60bd60d636d08cd5d6981fb7))

### Features

* "bench update" from non-bench directory ([c93a25d](https://github.com/kimsreng/bench/commit/c93a25d336499a06c45251eb59160d34f234d650))
* `bench setup requirements --dev` ([#1196](https://github.com/kimsreng/bench/issues/1196)) ([b51f0ed](https://github.com/kimsreng/bench/commit/b51f0ed2b2c3c26b29e8d038bec134275dbff808))
* `bench validate-dependencies` command ([#1534](https://github.com/kimsreng/bench/issues/1534)) ([ab9b617](https://github.com/kimsreng/bench/commit/ab9b6172a4da8d230637069f06c910090d9b4505))
* ability to rollback failed bench init ([f0c1893](https://github.com/kimsreng/bench/commit/f0c189356534bd2ae6375722f390bc49dbccb40a))
* add `live_reload` to default_config ([9f74ec0](https://github.com/kimsreng/bench/commit/9f74ec0adb3616104a7004b16fec1c9d25cca834))
* add `max_requests` to gunicorn args ([b57838f](https://github.com/kimsreng/bench/commit/b57838f36615b659930a4f38cfd14375097a8ad1))
* Add alias for remove-app: rm, remove ([6890d98](https://github.com/kimsreng/bench/commit/6890d98847bd308d7e0be88369475ed4db062e34))
* add bench app-cache helper command ([42ac015](https://github.com/kimsreng/bench/commit/42ac015bff96b2318d359f24a5ded7a48c0a1a18))
* add commit hash and branch in `states.json` ([9004e1d](https://github.com/kimsreng/bench/commit/9004e1dd6a473a40bfb43fe663867e117e076f95))
* Add custom workers in Procfile ([#1201](https://github.com/kimsreng/bench/issues/1201)) ([593b80e](https://github.com/kimsreng/bench/commit/593b80eec96502901068bf5a7c734f48b71e5d31))
* add GHA tests ([e76c7dc](https://github.com/kimsreng/bench/commit/e76c7dccf57c122064dafc574b1dfa6f3d13493e))
* add no-git option to new-app command ([2a25a6d](https://github.com/kimsreng/bench/commit/2a25a6d2d9257c0a49877a6ed33905e89c8d9c23))
* Add pre-commit checks ([b1b8d70](https://github.com/kimsreng/bench/commit/b1b8d70055868ce1cf6b36789dfebc0e08936ef9))
* add required and order of install ([9ac091b](https://github.com/kimsreng/bench/commit/9ac091b4d9caac1567fe5cd4f16ba5096cbc8e22))
* Added app states ([fdab757](https://github.com/kimsreng/bench/commit/fdab757f9b4972e3a782fed75850595dbe9892d1))
* Added app states ([549e8e2](https://github.com/kimsreng/bench/commit/549e8e2a1d6fd59fb87fc30dbdfab1322f8f4a19))
* Added app_name attribute to App class ([35504f8](https://github.com/kimsreng/bench/commit/35504f81b3340b544da87316046086a0134ae5ff))
* Added bench command for resolve and install ([cdaeea1](https://github.com/kimsreng/bench/commit/cdaeea1d4a332d3c28cfb39191f46b5081a090ee))
* Added bench command for resolve and install ([7a311a2](https://github.com/kimsreng/bench/commit/7a311a242d574396df82a06cec1dc5b491a26bd8))
* added bench find command ([963b2f9](https://github.com/kimsreng/bench/commit/963b2f9ce5ba5fb1426f00f01dd790ef60212a14))
* added bench.utils.log and updated is_bench_directory api ([e322815](https://github.com/kimsreng/bench/commit/e32281557f69af748573bfd02d4ccfe44e42bd3d))
* Added exception for invalid version ([ddd498e](https://github.com/kimsreng/bench/commit/ddd498ebd03f3858705f1c6c8cbb8b4e2eac1a91))
* added option to provide custom queues ([e12f53d](https://github.com/kimsreng/bench/commit/e12f53d1a56d598d90307bdfa755db02cc37a30c))
* added specific  checks for git URLs ([30473d3](https://github.com/kimsreng/bench/commit/30473d353560b8bc0aeb7c5eb8b7c420ca2f3a21))
* Added support for backward compatibility in states ([a1a35ee](https://github.com/kimsreng/bench/commit/a1a35eed0e4729d337894474bb56f2da7a32ba49))
* added support for fetching dependencies from hooks.py ([58319a2](https://github.com/kimsreng/bench/commit/58319a21b7b40ddc76704e7505ce8ca90a2ae882))
* added support for fetching dependencies from hooks.py ([7f678a3](https://github.com/kimsreng/bench/commit/7f678a304713c33905156242f275e7521983f41c))
* Added support for mounted app in get_dependencies ([0b862c0](https://github.com/kimsreng/bench/commit/0b862c07457c9914840bd0ce87a90306fec37456))
* Aliased Commands ([b75d352](https://github.com/kimsreng/bench/commit/b75d3524548713f87fc8b8aa2791930563575507))
* allow custom image in easy install ([8ba685c](https://github.com/kimsreng/bench/commit/8ba685cc50ee333cf764181e82096c80ece4ab28))
* allow raise option in get_cmd_output ([6bb30e3](https://github.com/kimsreng/bench/commit/6bb30e314848d33ebc595b2e32745caf64b89a6e))
* Allow skipping supervisord config check in setup supervisor ([a3af905](https://github.com/kimsreng/bench/commit/a3af905d929fd1e69e35561d9601d56951650444))
* alternative request to validate branch ([8dd92c3](https://github.com/kimsreng/bench/commit/8dd92c32b1b9dc0f51e7fe1f1bfc7f9738dedbb8))
* App Meta Base Class ([ce00798](https://github.com/kimsreng/bench/commit/ce00798b5d0c6506b4164999fd8c286dcd5b7f88))
* auto-stash changes in bench (tool) on update ([186c0ea](https://github.com/kimsreng/bench/commit/186c0eafdac0adfc75905026368f8f04d6f8da05))
* bench apps commands caching ([c0afa04](https://github.com/kimsreng/bench/commit/c0afa041c83af699c87d9915ef73c5749abbdb94))
* bench drop {bench_path} ([906ad5a](https://github.com/kimsreng/bench/commit/906ad5a09936bd36af867cdf52b640f39344470f))
* bench pip * ([f0596c5](https://github.com/kimsreng/bench/commit/f0596c5928746d45984ee50dbc527d591803e9b1))
* ben…
github-actions bot pushed a commit to abcgitalbadia/bench that referenced this pull request Nov 14, 2024
# [5.7.0](v5.6.0...v5.7.0) (2024-11-14)

### Bug Fixes

* (re)Install every Frappe app even if not installed to env ([ffae670](ffae670))
* add code removed via erroneous commit ([b28cfab](b28cfab))
* add customer background workers in group ([frappe#1439](https://github.com/abcgitalbadia/bench/issues/1439)) ([4ec73c3](4ec73c3))
* add jammy package for Ubuntu 22 ([frappe#1549](https://github.com/abcgitalbadia/bench/issues/1549)) ([5a0922d](5a0922d))
* add safety filter for untarring ([e8ea985](e8ea985))
* Add support for options on bench main group ([8a0b784](8a0b784))
* add useforsecurity with fallback for <3.9 ([319809d](319809d))
* added code removed via erroneous commit ([5b64175](5b64175))
* added code removed via erroneous commit ([7e28a3d](7e28a3d))
* allow bench init with git tags ([c943b30](c943b30))
* Allow git url with custom username ([frappe#1200](https://github.com/abcgitalbadia/bench/issues/1200)) ([6411812](6411812))
* Allow sudo restart for supervisor (backwards compatibility) ([fc7c047](fc7c047))
* **ansible:** Use include_tasks instead of include ([cbd703d](cbd703d))
* Archive app for different repo/app names ([3af6058](3af6058))
* Archived app naming, apps.txt sync ([79980c3](79980c3))
* bad URL in raw.githubusercontent.com ([frappe#1363](https://github.com/abcgitalbadia/bench/issues/1363)) ([589f7a4](589f7a4))
* **build:** pin hatchling version 2nd try ([b74ff54](b74ff54))
* **build:** pin hatchling version to prevent import error ([3a73059](3a73059))
* **build:** support pyproject version ([frappe#1502](https://github.com/abcgitalbadia/bench/issues/1502)) ([7c64aa3](7c64aa3))
* Bump Nodejs v12 => v14 ([cd0fccf](cd0fccf))
* calc md5 for app cache ([16f8906](16f8906))
* case-insensitive matching ([3f57616](3f57616))
* check current branch ([2287f3f](2287f3f))
* Check for unauthorized status code in response ([e9b0112](e9b0112))
* check for valid branch in resolve ([79765e6](79765e6))
* check frappe-deps during get-app ([d93656e](d93656e))
* Check if app is installed in env via initialize_apps ([a192240](a192240))
* Check if archived_sites directory exists before running ([b11f5b0](b11f5b0))
* check if installed FF supports use-cached ([d177d8f](d177d8f))
* check md5 when fetching from cache ([efb5171](efb5171))
* Check yarn files during install ([frappe#1533](https://github.com/abcgitalbadia/bench/issues/1533)) ([1a42175](1a42175))
* checking status code to determine rate limit ([dbb1904](dbb1904))
* Cleanup import hell ([e2fd9de](e2fd9de))
* Cleanup import hell (contd) ([d2fba5f](d2fba5f))
* Clear Bench instance cache on every chdir ([ec369a1](ec369a1))
* clearer docstrings ([3c59446](3c59446))
* coerce git_url to app_name ([54b514b](54b514b))
* Command picking & execution ([2fa25d8](2fa25d8))
* **config:** Fix fail2ban filter ([frappe#1308](https://github.com/abcgitalbadia/bench/issues/1308)) ([94a25d3](94a25d3))
* correct patches.txt ([a28a0d0](a28a0d0))
* correct python path for migrate_env ([61e0f4a](61e0f4a))
* del node_modules if frappe supports app_cache ([9988b83](9988b83))
* Delete folder if --no-backup is passed ([f7f7459](f7f7459))
* don't allow uninstall frappe... ([1ab3763](1ab3763))
* don't compile python files manually. ([frappe#1469](https://github.com/abcgitalbadia/bench/issues/1469)) ([036cb62](036cb62))
* Don't fetch meta for rm app ([17edb47](17edb47))
* Don't handle `BaseException`s ([ad000f1](ad000f1))
* Don't recompute URLs when name passed in App ([0898e2d](0898e2d))
* dont attempt migrating to active virtualenv ([0e59159](0e59159))
* dont use glob pattern for `python` exec ([dc047a5](dc047a5))
* Drop support for Frappe v4-5-6 ;) ([616dff8](616dff8))
* **DX:** make warnings go to stderr ([b6b9481](b6b9481))
* easy-install for letsencrypt tls ([frappe#1424](https://github.com/abcgitalbadia/bench/issues/1424)) ([eba0f7a](eba0f7a))
* **easy-install:** set default site to site1.localhost ([fde7a82](fde7a82))
* empty states json condition ([67df07b](67df07b))
* ERROR! [DEPRECATED] ([caa5fa0](caa5fa0))
* Fetch env python if exists before returning fallback ([e5fa4df](e5fa4df))
* file-uri while app initialisation ([2fed369](2fed369))
* FileNotFound bug ([frappe#1383](https://github.com/abcgitalbadia/bench/issues/1383)) ([965e178](965e178))
* **find:** Handle OS' PermissionError ([ea94752](ea94752))
* fixed app states and checking/updating frappe version on install ([30a4ec3](30a4ec3))
* fixed app states and checking/updating frappe version on install ([42f4d74](42f4d74))
* fixed args to sync-states ([c667be9](c667be9))
* fixed frappe branch check ([6c15327](6c15327))
* fixed init in get-app and frappe versions ([88c2367](88c2367))
* fixed init in get-app and frappe versions ([e3bd34c](e3bd34c))
* Fixed order of install ([281d96a](281d96a))
* fixed org, branch for apps mounted on disk ([frappe#1293](https://github.com/abcgitalbadia/bench/issues/1293)) ([c8ef822](c8ef822))
* fixed states sync ([7f37488](7f37488))
* fixed update_app_states call ([frappe#1326](https://github.com/abcgitalbadia/bench/issues/1326)) ([45267fc](45267fc))
* frappe app can exist without public folder ([13ed9be](13ed9be))
* get-app on existing apps ([e03f597](e03f597))
* Handle collisions while moving apps ([3709682](3709682))
* Handle supervisor escalation better ([frappe#1438](https://github.com/abcgitalbadia/bench/issues/1438)) ([c690e8e](c690e8e))
* Handle tag fetching failures of disk mounted App inits ([117d456](117d456))
* Hide irrelevant stacks during exc raise ([8175239](8175239))
* ignore org check fail if using cache ([aa12aab](aa12aab))
* ignore supervisor restart failures where possible ([frappe#1400](https://github.com/abcgitalbadia/bench/issues/1400)) ([7a63f4f](7a63f4f))
* image replace and site creation ([f93f065](f93f065))
* Import bench.cli ([27128c7](27128c7))
* import path for util ([ee6a967](ee6a967))
* increase tar file limit ([d8ce1b3](d8ce1b3))
* Initialize bench in get-app with --init-bench ([a2ccc30](a2ccc30))
* install one app at a time, frappe first ([4f0193c](4f0193c))
* install wheel in venv ([4996afb](4996afb))
* logging when in init-bench ([a26f3ce](a26f3ce))
* logging when in init-bench ([de315f2](de315f2))
* merge conflicts ([61a864d](61a864d))
* merge conflicts ([ca45305](ca45305))
* migrate_env silent failures ([7f1c5ad](7f1c5ad))
* minor fixes ([94105c0](94105c0))
* minor fixes ([e629ca6](e629ca6))
* Misc fixes ([frappe#1294](https://github.com/abcgitalbadia/bench/issues/1294)) ([eb71573](eb71573))
* missing installed branch ([af3c871](af3c871))
* mkdir -p to ignore `OSError`s ([d38b63a](d38b63a))
* more reliable gunicorn restart ([2ec0c0a](2ec0c0a))
* Move logging to lower level App.get API ([4ba5422](4ba5422))
* **nginx:** Allow specifying log_format setting ([bbf0169](bbf0169))
* **nginx:** set `proxy_http_version` to `1.1` ([7da62f9](7da62f9))
* no-git support for dependency resolver ([frappe#1368](https://github.com/abcgitalbadia/bench/issues/1368)) ([fcbc2ea](fcbc2ea))
* nodejs redis v4 interprets localhost as ipv6 address ([697939e](697939e))
* override X-Forwarded-For address in bench manager ([53a8fed](53a8fed))
* parsing error ([frappe#1364](https://github.com/abcgitalbadia/bench/issues/1364)) ([4bc3a08](4bc3a08))
* Pass `skip_assets` while resolving dependant apps ([8275d67](8275d67))
* Pass abs path from get_env_cmd ([10473b6](10473b6))
* Pass cwd for cmd subprocess execution ([01b7759](01b7759))
* Patch to move archived_sites to archived/sites ([877e812](877e812))
* **patch:** Rename parent dir instead of moving individual dirs ([0bd0717](0bd0717))
* port number mismatch when having multiple benches ([frappe#1480](https://github.com/abcgitalbadia/bench/issues/1480)) ([3c8cbbc](3c8cbbc))
* PosixPath object has no attribute 'rstrip' ([aaf4856](aaf4856))
* prevent circular dependency ([7bcea60](7bcea60))
* Prevent Gunicorn child workers hangup ([36f2194](36f2194))
* Print failing command with CommandFailedError ([a1d2c52](a1d2c52))
* print help when no args passed ([228aeaf](228aeaf))
* print required by in output ([5bb3b52](5bb3b52))
* process SSH git URLs ([c8494cf](c8494cf))
* process SSH git URLs ([660287a](660287a))
* raise (by default) when exec_cmd fails ([3995b92](3995b92))
* Raise and handle Exception class ([c4b8391](c4b8391))
* Remove backup command ([frappe#1345](https://github.com/abcgitalbadia/bench/issues/1345)) ([0cd5fca](0cd5fca))
* Remove broken import path ([2c5c28b](2c5c28b))
* Remove except-pass ValueError ([d9c8335](d9c8335))
* Remove frappe cmd caching in .bench.cmd ([f773529](f773529))
* remove rem check from app-cache --clear ([4e170a2](4e170a2))
* remove unused nodemodules before caching ([0e2e8b4](0e2e8b4))
* remove unwanted `patches.txt` ([85500b7](85500b7))
* Remove virtualenv dependency ([e0f6b17](e0f6b17))
* **remove-app:** Use App.name instead of App.repo for consistent App name ([a3b859b](a3b859b))
* removed erroneous file push ([f2fe569](f2fe569))
* removed erroneous file push ([b7e46aa](b7e46aa))
* removed unnecessary requests while removing apps ([49900ce](49900ce))
* rename key ([75f8462](75f8462))
* replace certbot-auto with certbot ([frappe#1303](https://github.com/abcgitalbadia/bench/issues/1303)) ([a889325](a889325))
* replace shutil.move with Path.rename ([a648590](a648590))
* resolve filesystem app dependencies ([frappe#1450](https://github.com/abcgitalbadia/bench/issues/1450)) ([f3b55f7](f3b55f7))
* Respect bench config during restart ([25f49c2](25f49c2))
* restart proc manager if set in config ([frappe#1391](https://github.com/abcgitalbadia/bench/issues/1391)) ([c59d1ed](c59d1ed))
* **restart:** Setup restarts vars with fallback ([af14baf](af14baf))
* Revert usage of app_name for repo name ([f7fbee9](f7fbee9))
* reverted changes made by erroneous commit ([b8aa008](b8aa008))
* reverted erroneous commits ([ff98aaf](ff98aaf))
* RQ crashes on Mac ([frappe#1529](https://github.com/abcgitalbadia/bench/issues/1529)) ([f5ab045](f5ab045))
* Set correct remote_server for cloning ([9802fea](9802fea))
* Set proper branch to clone ([217f27f](217f27f))
* Set remote_server attr "better" ([e3b9c2a](e3b9c2a))
* Set verbosity if --verbose is passed anywhere period ([2caf7e7](2caf7e7))
* setup all apps is empty list is supplied ([7ab469a](7ab469a))
* Setup chdir patch earlier ([db165d1](db165d1))
* Setup exception handler for CommandFailedError only ([94a1b8c](94a1b8c))
* Show bench init job via bench get-app (conditional) ([225fce5](225fce5))
* Show better user messages when failed to update supervisord ([d89f19e](d89f19e))
* Show pip's help menu when --help is passed in pip command ([6d10d75](6d10d75))
* Show traceback if error occurs during init, get outside bench dir ([806d543](806d543))
* Show traceback in dev mode and set exit code on errors ([e074a1d](e074a1d))
* Show traceback on bench init failure ([30e3e72](30e3e72))
* Show warning while using experimental features ([b7994e2](b7994e2))
* specify hatch version in release ([87b4b1f](87b4b1f))
* support for local and remote apps when looking for dependencies ([2f17da1](2f17da1))
* support single required app ([c8205e4](c8205e4))
* Switched to native GIT way to lookup branch names ([frappe#1553](https://github.com/abcgitalbadia/bench/issues/1553)) ([1751b2d](1751b2d))
* sync apps file in init, imports and no warn in CI ([71d178d](71d178d))
* sync socketio port for old benches ([frappe#1481](https://github.com/abcgitalbadia/bench/issues/1481)) ([c2af169](c2af169))
* Trailing slash not setting app name properly ([357fcc0](357fcc0))
* trigger release ([f374e80](f374e80))
* Try setting supervisord conditionally ([7a4ade9](7a4ade9))
* update check condition ([3e749ba](3e749ba))
* Update Click requirement ([3b0bcb7](3b0bcb7))
* update install_app with using_cached flag ([10bb5a4](10bb5a4))
* update pre url coercion check ([6f074a7](6f074a7))
* updated apps.sync to support new app_name parameter ([7980709](7980709))
* Use == for dict comparison ([e80daf8](e80daf8))
* Use == to define had pinned requirement ([beac865](beac865))
* use a tuple instead of a list ([c599ee8](c599ee8))
* Use App.app_name over repo attr ([4f42392](4f42392))
* use frappe13 in py 3.7 ([5b1b84b](5b1b84b))
* Use hardcoded python3 env cmd for Bench.python ([c9c6bf4](c9c6bf4))
* use os.remove instead of shutil.rmtree for symlinks ([frappe#1372](https://github.com/abcgitalbadia/bench/issues/1372)) ([9fd15f6](9fd15f6))
* Use python* to match any pattern in env ([24b9af6](24b9af6))
* use ref param instead of branch for get_required_deps (GitHub contents API) ([frappe#1362](https://github.com/abcgitalbadia/bench/issues/1362)) ([9131ba0](9131ba0))
* use specified python for venv ([df84c27](df84c27))
* Use subscript instead of method for regex ([e126ff2](e126ff2))
* Use test frappe app - frappe_docs instead of wiki or chat ([c636c7c](c636c7c))
* Use venv module instead of virtualenv ([f60c2d0](f60c2d0))
* User messages on get-app actions ([d33d987](d33d987))
* using local clones if path is passed in get-app ([5f37135](5f37135))
* **utils:** Strip * from cmd via get_env_cmd ([6ae1997](6ae1997))
* version check backward compatibility ([frappe#1409](https://github.com/abcgitalbadia/bench/issues/1409)) ([23eede5](23eede5))
* version check before AbsoluteLinkError ([3502c77](3502c77))
* version check before data_filter import ([80f2e70](80f2e70))
* wrap tarfile with error handling ([30f301e](30f301e))
* wrong help string ([7a89ccd](7a89ccd))

### Features

* `bench validate-dependencies` command ([frappe#1534](https://github.com/abcgitalbadia/bench/issues/1534)) ([ab9b617](ab9b617))
* add `live_reload` to default_config ([9f74ec0](9f74ec0))
* add `max_requests` to gunicorn args ([b57838f](b57838f))
* Add alias for remove-app: rm, remove ([6890d98](6890d98))
* add bench app-cache helper command ([42ac015](42ac015))
* add commit hash and branch in `states.json` ([9004e1d](9004e1d))
* Add custom workers in Procfile ([frappe#1201](https://github.com/abcgitalbadia/bench/issues/1201)) ([593b80e](593b80e))
* add GHA tests ([e76c7dc](e76c7dc))
* add no-git option to new-app command ([2a25a6d](2a25a6d))
* Add pre-commit checks ([b1b8d70](b1b8d70))
* add required and order of install ([9ac091b](9ac091b))
* Added app states ([fdab757](fdab757))
* Added app states ([549e8e2](549e8e2))
* Added app_name attribute to App class ([35504f8](35504f8))
* Added bench command for resolve and install ([cdaeea1](cdaeea1))
* Added bench command for resolve and install ([7a311a2](7a311a2))
* Added exception for invalid version ([ddd498e](ddd498e))
* added option to provide custom queues ([e12f53d](e12f53d))
* Added support for backward compatibility in states ([a1a35ee](a1a35ee))
* added support for fetching dependencies from hooks.py ([58319a2](58319a2))
* added support for fetching dependencies from hooks.py ([7f678a3](7f678a3))
* Added support for mounted app in get_dependencies ([0b862c0](0b862c0))
* Aliased Commands ([b75d352](b75d352))
* allow custom image in easy install ([8ba685c](8ba685c))
* Allow skipping supervisord config check in setup supervisor ([a3af905](a3af905))
* alternative request to validate branch ([8dd92c3](8dd92c3))
* App Meta Base Class ([ce00798](ce00798))
* bench drop {bench_path} ([906ad5a](906ad5a))
* cache get-app artifacts by commit_hash ([87d4aa3](87d4aa3))
* comment out unsupported typing ([23bd717](23bd717))
* **config:** Add IPv6 listener to nginx site configuration ([frappe#1312](https://github.com/abcgitalbadia/bench/issues/1312)) ([593c7b7](593c7b7))
* Dynamic Output rendering ([f117959](f117959))
* Exiting when app does not exist ([fc0be25](fc0be25))
* flag to setup bench with developer mode enabled ([f29e25a](f29e25a))
* get-app ln -s ([e69b612](e69b612))
* Initialize bench on bench get(-app) if not created ([38382b8](38382b8))
* introduced simple resolver ([bfd69c3](bfd69c3))
* introduced simple resolver ([d41e05e](d41e05e))
* Made dynamic mount path if bench attr is passed to App class ([b36c072](b36c072))
* mimicking get-app behaviour when app is already installed ([bbca3e9](bbca3e9))
* **minor:** --install-app option in init ([8480eb5](8480eb5))
* **minor:** Any procman in bench start ([bae338a](bae338a))
* **minor:** App Meta handling on disk repos ([1865eee](1865eee))
* **minor:** Bench.python property that points to env python ([d63a988](d63a988))
* Multi queue consumption ([frappe#1475](https://github.com/abcgitalbadia/bench/issues/1475)) ([5a2c052](5a2c052))
* New easy-install.py ([044e01b](044e01b))
* New methods in Bench class ([53e811f](53e811f))
* New methods in the App Class ([54f9741](54f9741))
* **nginx:** Allow logging settings as site/combined/none ([5370129](5370129))
* Pass --use-feature='dynamic-feed' for new CLI ([b92fb14](b92fb14))
* pass verbose to npm install ([00391bf](00391bf))
* pass verbose to yarn install ([346d08d](346d08d))
* printing resolved dependencies when using resolve-deps flag wih get-app ([95b0834](95b0834))
* printing resolved dependencies when using resolve-deps flag wih get-app ([bba4019](bba4019))
* **remove-app:** Options for no backup of app & force removal ([69e14e5](69e14e5))
* Restart process manager for develop mode ([6123cd5](6123cd5))
* set `startretries` in supervisor configuration ([deadc7c](deadc7c))
* Setup dev-dependencies defined via pyproject ([75957a5](75957a5))
* Setup Requirements for specific apps ([frappe#1265](https://github.com/abcgitalbadia/bench/issues/1265)) ([28e6816](28e6816))
* Skip warnings if envvar BENCH_DEVELOPER set ([20560c9](20560c9))
* slower alternative for get_required_deps ([d0bd294](d0bd294))
* **supervisor:** restart each group separately ([839bd7c](839bd7c))
* Support Frappe app distributions with pyproject.toml ([800394c](800394c))
* using gitpython for branch validation ([cb2b0b0](cb2b0b0))
* verbose env setup & checking for compatible versions ([d178b08](d178b08))
* verbose error messages ([19f9325](19f9325))

### Performance Improvements

* add Cache-Control header for assets ([8d3270e](8d3270e))
* Avoid use of glob for fetching python executable ([8db23dd](8db23dd))
* Cache Bench and App instantiation ([cd1f526](cd1f526))
* caching deps and orgs, repos to avoid time taking checks & added slower version to check org and repo ([bd105a6](bd105a6))
* single worker in development install ([frappe#1392](https://github.com/abcgitalbadia/bench/issues/1392)) ([9c80f5d](9c80f5d))
* Using github API ([b0ae3ae](b0ae3ae))

### Reverts

* Revert "fix: resolve filesystem app dependencies ([frappe#1450](https://github.com/abcgitalbadia/bench/issues/1450))" ([frappe#1452](https://github.com/abcgitalbadia/bench/issues/1452)) ([082692c](082692c))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants