Skip to content

v0.4.0

Compare
Choose a tag to compare
@jayqi jayqi released this 13 Mar 19:14
· 117 commits to master since this release
  • Added rich comparison operator support to cloud paths, which means you can now use them with sorted. (#129)
  • Added polymorphic class AnyPath which creates a cloud path or pathlib.Path instance appropriately for an input filepath. See new documentation for details and example usage. (#130)
  • Added integration with Pydantic. See new documentation for details and example usage. (#130)
  • Exceptions: (#131)
    • Changed all custom cloudpathlib exceptions to be located in new cloudpathlib.exceptions module.
    • Changed all custom cloudpathlib exceptions to subclass from new base CloudPathException. This allows for easy catching of any custom exception from cloudpathlib.
    • Changed all custom exceptions names to end with Error as recommended by PEP 8.
    • Changed various functions to throw new CloudPathFileExistsError, CloudPathIsADirectoryError or CloudPathNotADirectoryError exceptions instead of a generic ValueError.
    • Removed exception exports from the root cloudpathlib package namespace. Import from cloudpathlib.exceptions instead if needed.
  • Fixed download_to method to handle case when source is a file and destination is a directory. (#121 thanks to @genziano)
  • Fixed bug where hash(...) of a cloud path was not consistent with the equality operator. (#129)
  • Fixed AzureBlobClient instantiation to throw new error MissingCredentialsError when no credentials are provided, instead of AttributeError. LocalAzureBlobClient has also been changed to accordingly error under those conditions. (#131)
  • Fixed GSClient to instantiate as anonymous with public access only when instantiated with no credentials, instead of erroring. (#131)