2
0
mirror of https://github.com/frappe/bench.git synced 2025-01-10 17:24:41 +00:00
Commit Graph

2185 Commits

Author SHA1 Message Date
Gavin D'souza
077d960d5e Merge branch 'develop' into staging 2021-12-17 18:21:26 +05:30
semantic-release-bot
1b4b186bed chore(release): Bumped to Version 5.7.1
## [5.7.1](https://github.com/frappe/bench/compare/v5.7.0...v5.7.1) (2021-12-10)

### Bug Fixes

* process SSH git URLs ([c8494cf](c8494cffa6))
2021-12-10 07:16:18 +00:00
Saurabh
ad026a421a
Merge pull request #1231 from frappe/staging
chore: Merge staging into v5.x
2021-12-10 12:45:27 +05:30
Dany Robert
aaf48566b7
fix: PosixPath object has no attribute 'rstrip' 2021-12-09 13:03:01 +05:30
phot0n
6b99d1d60b chore: change the default version to 13 of erpnext and frappe when installing using easyinstall 2021-12-08 20:25:30 +05:30
Rohan Bansal
c8494cffa6 fix: process SSH git URLs 2021-12-08 16:09:52 +05:30
Ankush Menat
cd1e191b5b
Merge pull request #1227 from Alchez/fix-ssh-git-url
fix: process SSH git URLs
2021-12-08 16:05:02 +05:30
Rohan Bansal
660287a1a7 fix: process SSH git URLs 2021-12-07 15:16:49 +05:30
Gavin D'souza
ec369a16a1 fix: Clear Bench instance cache on every chdir 2021-12-02 14:22:34 +05:30
Gavin D'souza
814bcc6320 refactor: Bench restart
* Commonify reloading processes' logic
* Add functionality to restart web workers in development
* Use Bench.reload instead
2021-12-02 14:21:52 +05:30
Gavin D'souza
cbf30b4e6a chore: Remove invalid classifier 2021-12-02 00:39:52 +05:30
semantic-release-bot
8a3e72ce54 chore(release): Bumped to Version 5.7.0
# [5.7.0](https://github.com/frappe/bench/compare/v5.6.0...v5.7.0) (2021-12-01)

### Bug Fixes

* Allow git url with custom username ([#1200](https://github.com/frappe/bench/issues/1200)) ([6411812](641181260e))
* Archived app naming, apps.txt sync ([79980c3](79980c3c55))
* Check if app is installed in env via initialize_apps ([a192240](a192240cec))
* Check if archived_sites directory exists before running ([b11f5b0](b11f5b0f96))
* Cleanup import hell ([e2fd9de](e2fd9de921))
* Cleanup import hell (contd) ([d2fba5f](d2fba5fe52))
* correct patches.txt ([a28a0d0](a28a0d0d23))
* Don't fetch meta for rm app ([17edb47](17edb4797b))
* Drop support for Frappe v4-5-6 ;) ([616dff8](616dff8fbb))
* frappe app can exist without public folder ([13ed9be](13ed9beca5))
* Handle collisions while moving apps ([3709682](3709682231))
* Import bench.cli ([27128c7](27128c7c18))
* import path for util ([ee6a967](ee6a967a20))
* Initialize bench in get-app with --init-bench ([a2ccc30](a2ccc30bc3))
* Move logging to lower level App.get API ([4ba5422](4ba5422b65))
* Pass `skip_assets` while resolving dependant apps ([8275d67](8275d678f4))
* Patch to move archived_sites to archived/sites ([877e812](877e812fbb))
* raise (by default) when exec_cmd fails ([3995b92](3995b9237b))
* Raise and handle Exception class ([c4b8391](c4b8391716))
* remove unwanted `patches.txt` ([85500b7](85500b7751))
* rename key ([75f8462](75f84625ad))
* Show bench init job via bench get-app (conditional) ([225fce5](225fce5be6))
* Show pip's help menu when --help is passed in pip command ([6d10d75](6d10d75bb1))
* Show traceback if error occurs during init, get outside bench dir ([806d543](806d543fac))
* Show traceback in dev mode and set exit code on errors ([e074a1d](e074a1d886))
* Show traceback on bench init failure ([30e3e72](30e3e725a8))
* Show warning while using experimental features ([b7994e2](b7994e21b1))
* sync apps file in init, imports and no warn in CI ([71d178d](71d178dde9))
* Trailing slash not setting app name properly ([357fcc0](357fcc0bbd))
* Use test frappe app - frappe_docs instead of wiki or chat ([c636c7c](c636c7c133))

### Features

* add `live_reload` to default_config ([9f74ec0](9f74ec0adb))
* Add alias for remove-app: rm, remove ([6890d98](6890d98847))
* Add custom workers in Procfile ([#1201](https://github.com/frappe/bench/issues/1201)) ([593b80e](593b80eec9))
* add no-git option to new-app command ([2a25a6d](2a25a6d2d9))
* added option to provide custom queues ([e12f53d](e12f53d1a5))
* Aliased Commands ([b75d352](b75d352454))
* App Meta Base Class ([ce00798](ce00798b5d))
* bench drop {bench_path} ([906ad5a](906ad5a099))
* Dynamic Output rendering ([f117959](f117959801))
* Initialize bench on bench get(-app) if not created ([38382b8](38382b84fb))
* **minor:** --install-app option in init ([8480eb5](8480eb5df7))
* **minor:** Any procman in bench start ([bae338a](bae338ad0b))
* **minor:** App Meta handling on disk repos ([1865eee](1865eeeb6d))
* **minor:** Bench.python property that points to env python ([d63a988](d63a9883e0))
* New methods in Bench class ([53e811f](53e811fe0a))
* New methods in the App Class ([54f9741](54f9741385))
* Pass --use-feature='dynamic-feed' for new CLI ([b92fb14](b92fb1401b))
* Restart process manager for develop mode ([6123cd5](6123cd5b49))
* Skip warnings if envvar BENCH_DEVELOPER set ([20560c9](20560c97c4))

### Performance Improvements

* Cache Bench and App instantiation ([cd1f526](cd1f526d09))
2021-12-01 19:02:44 +00:00
gavin
3c50f5249b
chore: Update node required for semantic-release 2021-12-02 00:31:47 +05:30
gavin
5dc691a4f5
Merge pull request #1220 from frappe/staging
chore: Merge staging into v5.x
2021-12-02 00:27:24 +05:30
Gavin D'souza
e2858cb223 Merge branch 'develop' into staging 2021-12-01 17:18:16 +05:30
gavin
3ee2e3d243
Merge pull request #1218 from phot0n/no-git-option-in-new-app
feat: add no-git option to new-app command
2021-12-01 17:15:36 +05:30
phot0n
2a25a6d2d9 feat: add no-git option to new-app command 2021-12-01 00:00:18 +05:30
Gavin D'souza
382ce2ce78 Merge branch 'develop' into staging 2021-11-30 17:48:48 +05:30
Gavin D'souza
b11f5b0f96 fix: Check if archived_sites directory exists before running 2021-11-30 17:46:56 +05:30
Gavin D'souza
05d824e905 Merge branch 'develop' into staging 2021-11-30 15:48:15 +05:30
Gavin D'souza
dc197cf974 docs: Update releases information in README 2021-11-30 15:46:34 +05:30
Gavin D'souza
357fcc0bbd fix: Trailing slash not setting app name properly
Re-do of https://github.com/frappe/bench/pull/1021, somewhat
2021-11-30 11:33:02 +05:30
gavin
99d4e5af3c
Merge pull request #1208 from gavindsouza/get-app-on-steroids
feat: get-app on steroids
2021-11-29 22:14:12 +05:30
Gavin D'souza
a17af670df style: Black-ish make & app 2021-11-29 18:57:40 +05:30
Gavin D'souza
8275d678f4 fix: Pass skip_assets while resolving dependant apps 2021-11-29 18:55:47 +05:30
Gavin D'souza
8480eb5df7 feat(minor): --install-app option in init 2021-11-29 18:55:21 +05:30
Gavin D'souza
a2ccc30bc3 fix: Initialize bench in get-app with --init-bench 2021-11-29 18:34:58 +05:30
Gavin D'souza
877e812fbb fix: Patch to move archived_sites to archived/sites
This patch runs only if Frappe >= v14. Doesn't do anything else

Frappe PR: https://github.com/frappe/frappe/pull/15060
2021-11-26 18:53:13 +05:30
Gavin D'souza
b7994e21b1 fix: Show warning while using experimental features
This shows a "WARNING:..." whenever any --use-feature flag is used
2021-11-26 16:28:18 +05:30
Gavin D'souza
1b2bb87ab7 refactor: Bench verbosity
It's off by default. If you want it enabled, pass --verbose or -v
following `bench`. The verbosity only changes how pip installs work.
Other stuff is immaterial at this point.

Eg: bench -v setup requirements
2021-11-26 16:24:56 +05:30
Gavin D'souza
6081690d7b refactor(minor): python packages setup 2021-11-26 12:47:29 +05:30
Gavin D'souza
4798992abf chore: Update setup.py
* Add long description using README.md
* Add project URLs. This will brighten up
  https://pypi.org/project/frappe-bench/ a bit
* Update contact, license info, etc
* Add project classifiers
2021-11-26 12:00:29 +05:30
Gavin D'souza
d63a9883e0 feat(minor): Bench.python property that points to env python 2021-11-26 11:54:32 +05:30
Gavin D'souza
27128c7c18 fix: Import bench.cli
For whatever reason, Travis complained saying "AttributeError: module 'bench' has no attribute 'cli'" but works fine locally :')
2021-11-18 19:02:22 +05:30
Gavin D'souza
a8564f3991 chore: Mark methods under job/step 2021-11-18 18:26:48 +05:30
Gavin D'souza
7c653db703 refactor: CLI entry point
* Optimized condiitonal checks
* Removed warnings for src, --version
* Handled positional shifts due to usages of --use-feature (by
  set.intersection)
* Raise Exception always instead of hiding the traceback
2021-11-18 18:26:39 +05:30
Gavin D'souza
225fce5be6 fix: Show bench init job via bench get-app (conditional)
This happens when dynamic-feed is enabled
2021-11-18 18:13:14 +05:30
Gavin D'souza
f230778972 refactor: CLI Rendering Engine
* Hanlde job-step renders
* Use context manager for managing renders and state
* Job and Step remain process agnostic - neither are dependant on the
  other
2021-11-18 18:10:01 +05:30
Gavin D'souza
6d10d75bb1 fix: Show pip's help menu when --help is passed in pip command 2021-11-18 18:07:32 +05:30
Gavin D'souza
7c4b6cea2b style: Black-ish + Flake8 2021-11-18 12:02:37 +05:30
Gavin D'souza
b92fb1401b feat: Pass --use-feature='dynamic-feed' for new CLI 2021-11-18 12:02:03 +05:30
Gavin D'souza
806d543fac fix: Show traceback if error occurs during init, get outside bench dir 2021-11-18 01:04:02 +05:30
Gavin D'souza
f117959801 feat: Dynamic Output rendering
Each operation can be broken down to multiple jobs. For instance, the
update operation can be broken down into: setting up bench dirs, env,
backups, requirements, etc.

Each step has a lot of output since Frappe requires a lot of complex
stuff to be done as a pre-requisite. Bench tries to simplify a lot in a
single command. Once, a step is completed, it's output is not really
required. So, we can ignore it to reduce the noise.

Here's where the `bench.cli.fancy` variable kicks in. Along with the
refactored log and new step wrapper, it makes the above thing possible.

At this point, there's no way to set this var from the end user...given
I'm still developing this. In the later commits, the idea is to pass a
flag similar to pip's --use-feature flag.
2021-11-18 01:00:04 +05:30
Gavin D'souza
3995b9237b fix: raise (by default) when exec_cmd fails 2021-11-18 00:41:37 +05:30
Gavin D'souza
cd1f526d09 perf: Cache Bench and App instantiation 2021-11-18 00:39:48 +05:30
Gavin D'souza
ac07d8dc52 refactor: bench.utils.log
Maintain `bench.LOG_BUFFER` for entire process when `bench.cli.fancy` is set
2021-11-18 00:36:13 +05:30
Gavin D'souza
747be65f92 refactor(minor): switch branch
* Don't update node packages twice (already managed via
  update_requirements)
* Don't reload bench.utils - this made sense back when bench was updated
  along with the apps
* Fix utils namespaces. Import instead of ....
2021-11-18 00:31:51 +05:30
Gavin D'souza
58e3d4931b refactor: bench update workflow
* Separate out branch validation logic
* Add type hints
* Raise named Exception "CannotUpdateReleaseBench" instead of SystemExit
* Use "newer" APIs wherever possible
2021-11-18 00:18:10 +05:30
Gavin D'souza
4655f6e785 refactor(minor): Dependency resolving
* Added a requirements method under BenchSetup
* Resolve Frappe dependencies prior to other apps
* Fixed issues with missing path in update_env_pip
2021-11-18 00:10:25 +05:30
Gavin D'souza
84d1b209ba chore: Added Typing + styling 2021-11-18 00:03:42 +05:30