🎨 Data repo support for purging unreferenced indexes and objects https://github.com/siyuan-note/siyuan/issues/8054

This commit is contained in:
Liang Ding 2023-04-20 18:54:24 +08:00
parent 71110aeead
commit 38ed2a3300
No known key found for this signature in database
GPG key ID: 136F30F901A2231D
12 changed files with 116 additions and 9 deletions

View file

@ -423,6 +423,29 @@ func ResetRepo() (err error) {
return
}
func PurgeRepo() (err error) {
msg := Conf.Language(202)
util.PushEndlessProgress(msg)
defer util.PushClearProgress()
repo, err := newRepository()
if nil != err {
return
}
stat, err := repo.Purge()
if nil != err {
return
}
deletedIndexes := stat.Indexes
deletedObjects := stat.Objects
deletedSize := humanize.Bytes(uint64(stat.Size))
msg = fmt.Sprintf(Conf.Language(203), deletedIndexes, deletedObjects, deletedSize)
util.PushMsg(msg, 5000)
return
}
func InitRepoKeyFromPassphrase(passphrase string) (err error) {
passphrase = gulu.Str.RemoveInvisible(passphrase)
passphrase = strings.TrimSpace(passphrase)