# Dependency Removal

**URL:** <https://discourse.pijul.org/t/dependency-removal/989>\
**Category:** Development\
**Created:** [September 20, 2022, 3:20pm UTC](https://discourse.pijul.org/t/dependency-removal/989 "2022-09-20T15:20:52Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![gh221](https://yyz1.discourse-cdn.com/flex031/user_avatar/discourse.pijul.org/gh221/32/490_2.png) [@gh221](https://discourse.pijul.org/u/gh221)\
**Post date:** [September 20, 2022, 3:20pm UTC](https://discourse.pijul.org/t/dependency-removal/989/1 "2022-09-20T15:20:52Z")

</div>

In Pijul, could it ever be possible to unrecord patches on which other patches inadvertently depend? Under a mental model where normal conflict resolution is completing a square by producing a combined O+A+B for a given O+A and O+B, for unrecording a dependency you could similarly provide an O+B for a given O+A and O+A+B.

---

<div class="post-metadata">

**Author:** ![joyously](https://yyz1.discourse-cdn.com/flex031/user_avatar/discourse.pijul.org/joyously/32/266_2.png) [@joyously](https://discourse.pijul.org/u/joyously)\
**Post date:** [September 20, 2022, 11:08pm UTC](https://discourse.pijul.org/t/dependency-removal/989/2 "2022-09-20T23:08:01Z")

</div>

Are you asking about theory or current Pijul?  
I think this is an area needing something, because current Pijul gives the error  
`Error: Cannot unrecord change YI7... because 5ZZ... depend on it`

You can try to follow the dependencies backward, unrecording, but it is a big mess and there isn’t a good way to see what depends on a change.  
(I wrote a script to generate a [HTML way to see dependencies](https://discourse.pijul.org/t/dependency-graph/933/2).)

I was able to unrecord most of the WordPress 6.0 changes, back to a 5.9 state, but I had several wanted changes that I had to unrecord in order to unrecord others. And then Pijul seemed to ignore what I deleted in the file during a `record` command. (I haven’t revisited that for awhile.)  
Perhaps what is needed is like a `git stash`.

It seems like the theory (based on lines) works, but the implementation (based on bytes) doesn’t quite.
