I have managed to reproduce with a smaller change:
message = ''
timestamp = '2022-04-26T03:26:54.272457Z'
[[authors]]
key = '94BGzJNAVHTvXncvPdTN6GWHkvjUsye6ePXJtFXddMGi'
# Dependencies
[2] 7Q5PDV3Y5T2XVNZ5HAOAFWVWHTL5ZZNTAWHBUW262C6KXWKVSQUQC
[3]+4K6N3NQIDYAQYKOKPWRRDOZZBCT44Q3O4KCCGGLPL5K64G6Q7DCQC
[*] 4K6N3NQIDYAQYKOKPWRRDOZZBCT44Q3O4KCCGGLPL5K64G6Q7DCQC
[*] GBOI6XYBRN2TOGPZMFNOGK6YS7E2LAKW6SWBTLJV4OMCNI434CLQC
[*] G4ICQLCQ2FDGM7REWFUFXC6EXUH5NFOBSC22C2YIPJAJH33IB5ZAC
[*] L4KONRCO3AR5QPKH7UD7EPVB7V2FNV5L5ZG6XMRIR2OI5LMBR6QAC
[*] MFVZ32OZOYQAQFI5FU3QHP77BZV2ZZFKAVYGVLU4SOCV32QUMFGQC
[*] FLFRPTT3PZMSNVV6II24IXRPNHKDXKG5JGJMPGYVPAKREJRT7QHQC
[*] CPN2HCEVLRBQ7UWTARPGJPJMCDUWBN7AIXTSCXRSNVNFEKZPRTNAC
[*] FAAALW4QE6OJIVRYVCF2NGUYIKSK7OFSNLTOS2TIKPRQMMDDIVZAC
[*] 3VCG3CQASYKYIPWOUDE6KKASJIRBYKKQZNXPRXST4Y3CGBT6HKAQC
# Hunks
1. File deletion: "build" 2.256 "binary"
BF:BFD 3.1 -> 2.239:255/2, BF:BFD 2.255 -> 2.256:256/2
How did you create this change? Could post a shell script to recreate it?
@spacefrogg both changes were generated entirely by pijul record
; no other tools were involved.
@spacefrogg sorry I misunderstood. This script is sufficient to replicate the bug:
mkdir 676
cd 676
pijul init
mkdir a
touch a/b
pijul add a/b
pijul record -m 1
rm -r a
pijul record -m 2 a
It’s an issue with deleting empty files (or directories) as an even simpler replications is:
mkdir 676
cd 676
pijul init
mkdir a
pijul add a
pijul record -m 1
rmdir a
pijul record -m 2 a
Empty files are recorded but when viewing the change errors Invalid change
.
The Can't parse change
is due to directory deletion. The parser doesn’t know it’s a directory because there’s not enough context and instead thinks it’s a binary file
1. File deletion: "a" 2.13 "binary"
BF:BFD 3.1 -> 2.0:12/2, BF:BFD 2.12 -> 2.13:13/2
Binary files can’t be recorded interactively so there’s no parsing logic for them.
However, real binary changes should never have got this far so the attached change makes the assumption it’s a directory. Still produces an Invalid change
.
4QGVAI46ZDCZBZWW3EVL3JMG46FXMZRIQUFGN5PZ7AKAE5F4D73AC
pmeunier seems to have fixed this in the main channel
Yes, fixed already
pijul record
has been failing for me with the errorError: Cannot parse change
This is the diff generated: