kristijanhusak / vim-packager

Vim plugin manager that utilizes "jobs" and "pack" features.
MIT License
245 stars 9 forks source link

"Last update" shows all updates #3

Closed bartlibert closed 5 years ago

bartlibert commented 5 years ago

When I run ":call packager#status()", I always see all updates pulled since the initial installation, instead of only the last updates. I found that it is solved by running "git checkout master" manually in the repositories of the plugins, but this is not ideal obvisouly.

VIM - Vi IMproved 8.1 (2018 May 18, compiled Nov 28 2018 01:38:28)
Included patches: 1-549

Latest version of vim-packager

git version 2.19.2

kristijanhusak commented 5 years ago

I had similar situations where i would get the whole log from the beginning of the repository. It happens randomly, and i cannot reproduce it. Do you know how can i reproduce your issue?

It's hard to retrieve information about the last update from git, because there's no proper way to do it. I'm using git log HEAD@{1}.., which checks the reflog, and works most of the time, but sometimes it returns unwanted results.

bartlibert commented 5 years ago

I know getting vim updates is difficult, I've struggled with it as well. I'll see if I can find a way to reproduce it.

bartlibert commented 5 years ago

I have not been able to reproduce the "full history", but I see currently that for all plugins I have installed, their history keeps being shown until they are updated again. I don't know if this is intentional?

kristijanhusak commented 5 years ago

In the status window? It always shows the last update that occurred. Maybe label is misleading, it should say "Last update" instead of "Updated".

bartlibert commented 5 years ago

It is indeed confusing, I thought it would only show the updates that occurred during the last update, instead of the "last update for this plugin ever executed".

kristijanhusak commented 5 years ago

I'm not sure i understand. It always shows the last update, no matter if you go to the status window from udpate window with D, or you go directly to packager#status(). Updates are fetched with get log HEAD@{1}.., which uses reflog to determine last update. Do you know a better way to get that?

bartlibert commented 5 years ago

What I mean is: after doing packager#update(), I expected to only see updates of the plugins that were actually updated in that run of the update process, while it actually shows the last update of every plugin, irregardless of wether it was updated on the last run or not.

Op do 20 dec. 2018 11:19 schreef Kristijan Husak <notifications@github.com:

I'm not sure i understand. It always shows the last update, no matter if you go to the status window from udpate window with D, or you go directly to packager#status(). Updates are fetched with get log HEAD@{1}.., which uses reflog to determine last update. Do you know a better way to get that?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/kristijanhusak/vim-packager/issues/3#issuecomment-448946559, or mute the thread https://github.com/notifications/unsubscribe-auth/AA56IujAVU87PEH4weGVHdfkbL1UwZsmks5u62QdgaJpZM4Y-BKg .

kristijanhusak commented 5 years ago

Ah, ok. I get it. I'll fix it.

kristijanhusak commented 5 years ago

This should be fixed now. When you run packager#update(), and after it finishes you go to status window with D, it will show you only installed/updated plugins.

When you do packager#install(), for same thing it will show only installed plugins.

When you close install/update window, and do only packager#status() (without closing vim), you will get the same thing accordingly.

If you close install/update window, and run PackagerStatus command, it will most likely fallback to the default status with all updates, because PackagerStatus command (the one from readme), reinitializes the packager, and it resets the flag that tells packager if there was install or update ran recently. This shouldn't be an issue, since most of the time you will look at updates immediately after.

Please let me know how it looks now.

bartlibert commented 5 years ago

Looks great to me!

kristijanhusak commented 5 years ago

Great. Closing this. Thanks for reporting.