Skip to content
This repository has been archived by the owner on Aug 13, 2020. It is now read-only.

Changelog should show difference with the previous version #934

Open
JasonBarnabe opened this issue Dec 15, 2019 · 6 comments
Open

Changelog should show difference with the previous version #934

JasonBarnabe opened this issue Dec 15, 2019 · 6 comments
Labels
enhancement Enhancing an existing feature in progress This is actively being worked on nuisance This is annoying to users priority: low This issue is low priority public-facing Visible to users

Comments

@JasonBarnabe
Copy link
Contributor

The property changelog diff shows the difference between what was there before the change and the current version. It should instead show before/after the change.

@JasonBarnabe JasonBarnabe added the bug Something isn't working label Dec 15, 2019
@andrewmcodes andrewmcodes added enhancement Enhancing an existing feature and removed bug Something isn't working labels Dec 16, 2019
@andrewmcodes
Copy link
Contributor

@JasonBarnabe I am not sure I follow. The changelog shows before/after a change. The real purpose of the changelog is to allow admins to quickly rollback changes.
image

@JasonBarnabe
Copy link
Contributor Author

JasonBarnabe commented Dec 16, 2019

@andrewmcodes The changes are always being compared to the current version instead of the state before the change.

For example, look at property 550. The two changes show:

  • Diff between Version 3653 and Current Version
  • Diff between Version 3752 and Current Version

I would expect:

  • Diff between Version 3653 and (whatever version it was when it was created)
  • Diff between Version 3752 and 3653

@andrewmcodes
Copy link
Contributor

Ah ok I understand now. I know we use a library for this so I will see if I can configure it to do this.

@coderberry coderberry added nuisance This is annoying to users priority: low This issue is low priority public-facing Visible to users labels Jan 8, 2020
@andrewmcodes andrewmcodes added the in progress This is actively being worked on label Feb 16, 2020
@andrewmcodes
Copy link
Contributor

andrewmcodes commented Feb 16, 2020

@JasonBarnabe Ok after reading through this library’s and our source a bit it, it finally clicked for me. We are showing you the version of the record you select compared to the state of the record now bc we are giving you the option to rollback to that version, bc that is that is why this feature exists. This is less of a changelog (or at least it doesn’t seem to have started off with that being the main intent) and more of a way for you to chose some point in the past that you would like to revert to. At least that is my understanding just from reading the code and tracking it’s evolution through old commit messages.

That being said, the library we are using to display the diffs in that nice format is somewhat limited but it’s only standing in front of the actual library making this all possible. Behind the hood we are using PaperTrail which literally saves a “paper trail” of the records each time they are about to be updated in the DB so that’s why we can access and even rollback changes.

I took a peek at alternatives to Diffy, which is what is formatting the diff itself, but didn’t see anything off the bat that I thought would work well for us or wasn’t abandoned. I was able to remove those fields you requested in your other issue around this, but I don’t love that I had to go about accomplishing it the way I did.

At this point I see a few possible paths that I need to talk to the team about and wanted to get your thoughts/feedback on as well.

If being able to review the changes to the record is the only reason most people use this, then I’d actually prefer to formalize around that and create a place in the app where that can live. Or create a rails engine and open source that for the community to use now that I know there isn’t a great solution for it.

Im also not entirely sure whether we want to keep supporting the rollback capabilities it currently provides given some major changes that will be rolling out soon on the advertiser side.

@JasonBarnabe Let me know your thoughts on this, and sorry for being long winded. Wanted to get this out while it was all fresh. 😅 As always, thanks for bringing this to my attention and I apologize it’s taken me so long to get around to doing a deeper dive into it. You’ve definitely got my brain churning on this now though.

I’m personally leaning towards removing the feature as it stands now and giving it it’s own home in the app so you can see and sort through all the changes that affect your account and not have it scoped the way it is now, bc imo that seems to be the true benefit it can provide. I’m hoping you can help confirm or deny that 🎉

@hopsoft ☝️lets talk about this sometime next week and come up with a game plan.

@JasonBarnabe
Copy link
Contributor Author

The potential use for this would be to see what happened when, and possibly correlate that to changes in the stats (e.g. to record that I changed ad formats on Jan 12, then seeing what that did to revenue). The most useful format for this data I think would be something like I do on my site, where you see a list of changes, then can choose versions to compare.

However, I say "potential" above because I've never actually used it for anything other than satisfying my curiosity yet. The reason I created this issue was that the feature is confusing as-is (it says changelog, but doesn't act like a changelog).

I also don't see much use for a "rollback" function. If I know the changes that were made, I can just do this manually. I'd be scared to press "rollback" because it's not clear what exactly it would do (rollback to the data prior to this change, or rollback this specific change?)

@andrewmcodes
Copy link
Contributor

Awesome thanks @JasonBarnabe, I will talk to the team and will let you know what we decide to do with this.

@andrewmcodes andrewmcodes removed their assignment Feb 14, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement Enhancing an existing feature in progress This is actively being worked on nuisance This is annoying to users priority: low This issue is low priority public-facing Visible to users
Projects
None yet
Development

No branches or pull requests

3 participants