gouthambs/Flask-Blogging

post versioning or history

mikofski opened this issue · 1 comments

thank you so much for this! I ❤️ Flask-Blogging. Not sure if I will get a chance to implement these, but I wanted to list some items on my wish list just in case anyone else want's to take a crack.

Wish list item #1: post versioning or history

  • when enabled and configured, the post text would be committed to a version control backend like Git (default using Dulwich), Hg or SVN
  • on the actual post page, an optional summary log is displayed of last X versions below the post
  • when a post is deleted, only it's database row is dropped, but the files in the Git repo are not, therefore, by accessing the git repo directly, the entire version can be retrieved.
    • alternately change delete post to toggle an "Active" field in the blog table, instead of dropping the row, but that's a issue for another ticket 😄
  • each new post is added to the repo as an .md file with the same name as the post and committed or authored by the same author/user as the post
    • subsequent edits are committed by the editor/user

The post versioning can be written using the plugin framework. There is some documentation that you can use to take a look at, if you want to write one. Here is where the plugins are collected:

https://github.com/gouthambs/blogging_plugins