Spent an hour today renaming env vars across three services to make them “consistent.” Broke staging in the process because one service cached the old values. Should’ve just left the mess alone — it worked fine before I touched it.

  • palordrolap@fedia.io
    link
    fedilink
    arrow-up
    1
    ·
    13 hours ago

    I once worked on a project where a third party-parser had a bug that effectively made it sensitive to the order it loaded files.

    This wasn’t a syntactic or a semantic problem. There was a stack processing issue that could be avoided by simply loading the files in a different order. This might have changed the final semantics if one file contradicted another, but that generally didn’t happen. Each file had a specific purpose and it would still break without any contradictions.

    The default load order was whatever order the file system had the files stored, but knowing that wouldn’t necessarily help because changing the size or contents of a file in such a way that it retained the same position might trigger the same issue. Therefore you could force by-Unicode load ordering and still have it choke.

    It was very hard to track down and I very much did not like editing those files for fear of triggering the parser bug. When I had to would be where the regret kicks in.

    The other regret, and maybe a little more relevant, was renaming all the files to a different filename format that didn’t make any difference in the end, but it was uglier than the original and it stuck.

    I believe a later version of that parser fixed the bug(s), but I moved on.