direnv v2.4.0

Closes #30553.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
Add tests documenting install receipt loading behavior
Normalize paths before calling Tab.from_file
Fix typo in tab test setup

This is one of the many problems with using OpenStruct.
Test that the tab round-trips through JSON
Remove explicit self
Don't mutate the tab object