rbackup Changelog ================= Version 0.5.3 ------------- * rbackup.rsync * Log at the exception level, not at the library level * rbackup.config.config_files * load_list_from_option() * Use non-mutable default argument * Ensure that list is returned if fallback is unset * rbackup.struct.repository.Repository * Implement __eq__(), __ne__(), and __hash__() * Update docstrings explaining what happens to snapshot_symlink when snapshot is deleted * Building * Add sphinx build commands to setup.py * Explain replacing colons on datetime on default snapshot name * Project Structure * Move config module to rbackup.config.config_files * Move config files to config_files/ in root dir * Delete rbackup.plugins.pacman module Version 0.5.2 ------------- * Use try..finally blocks within context manager functions Version 0.5.1 ------------- Bug Fixes ^^^^^^^^^ * backup script * Fix uninitialized repo variable * If rsync process fails, exit by its return code Version 0.5 ----------- * rbackup.plugins.package_managers.PackageManager * Raise NotimplementedError for non-supported operations * rbackup.struct.hierarchy.Hierarchy * Move Repository.gen_metadata to Hierarchy._gen_metadata() * rbackup.struct.repository.Repository * Add basic logic for updating symlink after snapshot removal * Implement snapshot deletion using __delitem__() * Add basic logic for symlinking after snapshot removal * rbackup.struct.repository.Snapshot * Add attribute code to _gen_metadata * Add ctime attribute * Project structure * Add file for snapshot management script * Rename rbackup.package_managers package to rbackup.plugins Version 0.4.1 ------------- * backup script * Change umask to 0000 when running backup Version 0.4 ----------- * backup script * Use fallback option * rbackup.config Folder * Add [main] to default config file * rbackup.config.config_files * Add load_list_from_option() Version 0.3 ----------- * rbackup.rsync * Add default rsync options list * rbackup.struct.hierarchy.Hierarchy * Don't calculate private attributes each time they are called * rbackup.struct.repository.Repository * Add gen_metadata() * Add symlink_snapshot() * Ignore PermissionError when creating snapshot symlink * config_files * Include /root in default paths * Split config file handling into its own module * Doctest cleanup Version 0.2 ----------- * rbackup.config * Merge, filter, and sort file entries from multiple files * rbackup.rsync * Change execution of rsync subprocess to text mode * rbackup.config_files * Split etc-include and system-include config files * rbackup.package_managers.packagemanager.PackageManager * Remove type and value checking * Add gen_db_archive() * Check for valid compression mode before proceeding with gen_db_archive() * rbackup.struct.hierarchy.Hierarchy * Add metadata_path * Subclass os.PathLike * Make write_metadata() an atomic operation * Log metadata read/write operations * rbackup.struct.repository.Repository * Add cleanup() * Add is_valid_snapshot_name() * Add gen_snapshot_path() * Remove current_snapshot attribute * Implement __repr__ * Use regex to parse user snapshot name input * Split snapshot metadata lists * Change serialization backend from pickle to JSON * Raise ValueError when snapshot name contains a '/' * rbackup.struct.repository.Snapshot * Remove all attributes except for pkg_dir * Project structure * Do not ship test suite under rbackup package * Rename rbackup.hierarchy package to rbackup.struct Version 0.1 ----------- * Initial commit * Project structure * Add basic modules * Add LICENSE