I realised that I can just read a block and dedisperse afterwards, but I thought I will report it anyways.
fil = FilReader(file)
data = fil.read_block(0, fil.header.nsamples)
data_dd = fil.read_dedisp_block(0, fil.header.nsamples, 0)
print(data_dd == data_dd[0]) # all rows are the same as the 0th
print(data_dd[0] == data) # The 0th row is the same as the last row in the data.
I realised that I can just read a block and dedisperse afterwards, but I thought I will report it anyways.
Output