Skip to content

Conversation

@wby1905
Copy link

@wby1905 wby1905 commented Apr 24, 2025

  • Inline Changelist Information: Shows changelist number, author, and time information for the selected line
  • Non-Intrusive Display: Information appears at the end of the line only for the currently selected line

The ChangelistLens feature primarily leverages existing, tested code from the annotation system while the UI-specific components rely on VS Code's decoration API. So tests are only done manually with different file types.

@mjcrouch
Copy link
Owner

apologies, I have just realised my email has been partially down since mid-April so I haven't been receiving notifications for issues & PRs.
This is a really nice feature and something I wanted to do, but I recall the main problem was that p4 annotate doesn't handle local changes and only includes information about the latest revision in the depot.
Does your code have any way to handle the case where the user opens the file and changes some of the lines, adds new lines, deletes lines etc?

@wby1905
Copy link
Author

wby1905 commented Jun 12, 2025

Hi @mjcrouch,

Thanks for the reply!

That's a very important point you've raised. You are correct, the current implementation relies entirely on the output of p4 annotate and therefore doesn't handle local, uncommitted changes (new, modified, or deleted lines).

My primary goal with this PR was to offer a less intrusive way to access the existing annotation data for committed lines, as a quality-of-life improvement.

@jtchen2k
Copy link

jtchen2k commented Aug 2, 2025

Great to see this feature being implemented, would be super useful. As for the inspection of local changes, is it possible to combine the information from p4 diff and p4 annotate to generate per-line change information for local edited files?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants