# Bendis
A patch tool for Bender to work better in Heris project.
## Author
> Albert L. Cheung, UC Irvine
> albert.cheung@cern.ch
## Features
- **URL Conversion**: Automatically converts GitHub URLs to IHEP internal Git URLs
- **Seamless Integration**: Works as a drop-in replacement for Bender
- **Fast**: Written in Rust for optimal performance
## Usage
### Initialize a project
```bash
bendis init
```
This creates a `.bendis/` directory with blank `Bender.yml` and `.bender.yml` files.
### Update dependencies
```bash
bendis update
```
This command:
1. Runs `bender update` in `.bendis/` directory
2. Converts GitHub URLs to IHEP internal URLs
3. Generates `Bender.yml` and `.bender.yml` in project root
4. Runs `bender update` in project root
5. Cleans up temporary files
### Other commands
All other commands are passed through to Bender:
## File Structure
```
project/
├── .bendis/ # Bendis working directory
│ ├── Bender.yml # Original config (GitHub URLs)
│ ├── .bender.yml # Original overrides
│ └── Bender.lock # Generated by bender
├── Bender.yml # Converted config (copied from .bendis/)
├── .bender.yml # Converted overrides (IHEP URLs)
├── Bender.lock # Final lock file
└── .bender/ # Dependencies directory
```
## License
Same as Bender (Apache-2.0 or MIT)