@darshanrp and @Hwesta would you be willing to take a look at the new Bag.save method in v1.5.0 on master and see that it works the way you expect?
If you have a bagit.Bag instance named bag you should be able to update the bag.info dictionary to change the metadata and then call bag.save() to persist the change.
By default save will not regenerate manifests. This guards against regenerating manifests when the bag is accidentally in a corrupted state (invalid), which would have the result of masking the corruption.
If you have modified the bag, by creating, updating or deleting payload files you can use the manifests parameter: bag.save(manifests=True) which will save both the tag metadata and regenerate the manifests.
@darshanrp and @Hwesta would you be willing to take a look at the new
Bag.savemethod in v1.5.0 on master and see that it works the way you expect?If you have a
bagit.Baginstance namedbagyou should be able to update thebag.infodictionary to change the metadata and then callbag.save()to persist the change.By default
savewill not regenerate manifests. This guards against regenerating manifests when the bag is accidentally in a corrupted state (invalid), which would have the result of masking the corruption.If you have modified the bag, by creating, updating or deleting payload files you can use the
manifestsparameter:bag.save(manifests=True)which will save both the tag metadata and regenerate the manifests.