Skip to content
  • Duncan Coutts's avatar
    541ac886
    Try using smaller package ids on Windows · 541ac886
    Duncan Coutts authored
    On Windows we have serious problems with path lengths. Windows imposes a
    maximum path length of 260 chars, and even if we can use the windows
    long path APIs ourselves, we cannot guarantee that ghc, gcc, ld, ar, etc
    etc all do so too.
    
    So our only choice is to limit the lengths of the paths, and the only
    real way to do that is to limit the size of the 'InstalledPackageId's
    that we generate. We do this by truncating the package names and
    versions and also by truncating the hash sizes.
    
    Truncating the package names and versions is technically ok because they
    are just included for human convenience, the full source package id is
    included in the hash.
    
    Truncating the hash size is disappointing but also technically ok. We
    rely on the hash primarily for collision avoidance not for any securty
    properties (at least for now).
    541ac886
    Try using smaller package ids on Windows
    Duncan Coutts authored
    On Windows we have serious problems with path lengths. Windows imposes a
    maximum path length of 260 chars, and even if we can use the windows
    long path APIs ourselves, we cannot guarantee that ghc, gcc, ld, ar, etc
    etc all do so too.
    
    So our only choice is to limit the lengths of the paths, and the only
    real way to do that is to limit the size of the 'InstalledPackageId's
    that we generate. We do this by truncating the package names and
    versions and also by truncating the hash sizes.
    
    Truncating the package names and versions is technically ok because they
    are just included for human convenience, the full source package id is
    included in the hash.
    
    Truncating the hash size is disappointing but also technically ok. We
    rely on the hash primarily for collision avoidance not for any securty
    properties (at least for now).
Loading