Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@FlynnOConnell
Copy link
Collaborator

@FlynnOConnell FlynnOConnell commented Jun 16, 2025

git lfs is leading to errors in that install fastplotlib from github with git+ syntax.

This PR should fix that by re-adding a properly formatted lfs pointer for the corrupted image_widget_grid.png.

Closes #861

Note that after merging, you will probably (?) need to run git lfs push origin main to upload the missing binary?

Sources

@FlynnOConnell
Copy link
Collaborator Author

FlynnOConnell commented Jun 16, 2025

@kushalkolar I don't think this PR is the reason for tests failing... were these tests failing before?

All I did was remove a space between version and oid by re-uploading the same file:

image

@kushalkolar
Copy link
Member

Do you only get this on windows? I've never been able to reproduce this. I just did some pip installs with git+https this week and never got this, it is really bizarre. Ideally I want to figure out how to reproduce it before merging.

@FlynnOConnell
Copy link
Collaborator Author

No, I get it on linux, and on github actions, and @apasarkar also got this error in a github action.

@almarklein
Copy link
Collaborator

almarklein commented Aug 28, 2025

I have a different problem that seems to be caused by the same issue. I'm on MacOS. Basically, I have this:

➜  fastplotlib git:(poly-select) ✗ git status
On branch poly-select
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
	modified:   examples/screenshots/image_widget_grid.png

And there is no way to reset the file. git checkout, git reset, git restore all do not work. Deleting the file and then checking it out again... the file is marked as changed always. And because of this, I cannot change branches or merge other branches in ... because I have outstanding changes 🤷

Interestingly, the diff of that file is exactly the diff proposed in this PR. So I wonder whether there is some sort of auto-fix thing in-place in my git environment 🤔

Anyway, I'd recommend that this PR gets merged, because there is clearly something wrong, and this seems to be the fix.

@kushalkolar
Copy link
Member

How did you guys access the pointer file and change it?
@almarklein any idea how this could've gotten modified?

kushalkolar
kushalkolar previously approved these changes Aug 28, 2025
@kushalkolar
Copy link
Member

There's merge conflict 🤦‍♂️, will see what hash corresponds to the current file

@almarklein
Copy link
Collaborator

any idea how this could've gotten modified?

No idea ...

@kushalkolar
Copy link
Member

I incorporated this into #791 here since I encountered it there 🤷 . Hopefully that can be merged soon.

@kushalkolar
Copy link
Member

@FlynnOConnell this should be in main now, do you still get the issue?

@FlynnOConnell
Copy link
Collaborator Author

I'll let you know if I do, I have GIT_LFS_SKIP_SMUDGE everywhere in my configs so I'll remove them and see if the issue persists

@FlynnOConnell
Copy link
Collaborator Author

@kushalkolar Installing from my forked main branch, which is up-to-date with main:

PS C:\Users\RBO\repos\mbo_utilities> uv sync
   Updating https://github.com/MillerBrainObservatory/mbo_fastplotlib.git (main)
   Updating https://github.com/MillerBrainObservatory/LBM-Suite2p-Python.git (master)
⠹ Resolving dependencies...                                                                                               × Failed to download and build `mbo-fpl @ git+https://github.com/MillerBrainObservatory/mbo_fastplotlib.git@main`
  ├─▶ Git operation failed
  ╰─▶ process didn't exit successfully: `C:\Program Files\Git\cmd\git.exe reset --hard
      d0fbee3d0687ad18f231e311b3f29eff4231389c` (exit code: 128)
      --- stderr
      Downloading docs/source/_static/guide_hello_world.png (106 KB)
      Error downloading object: docs/source/_static/guide_hello_world.png (97fda35): Smudge error: Error downloading
      docs/source/_static/guide_hello_world.png (97fda350fd73fc33792447114828884563862cae1f89530f242360d72f284ccc):
      error transferring "97fda350fd73fc33792447114828884563862cae1f89530f242360d72f284ccc": [0] remote missing object
      97fda350fd73fc33792447114828884563862cae1f89530f242360d72f284ccc

      Errors logged to
      'C:\Users\RBO\AppData\Local\uv\cache\git-v0\checkouts\215ceacbd18f9c8a\d0fbee3\.git\lfs\logs\20251015T114827.2174031.log'.
      Use `git lfs logs last` to view the log.
      error: external filter 'git-lfs filter-process' failed
      fatal: docs/source/_static/guide_hello_world.png: smudge filter lfs failed

@kushalkolar
Copy link
Member

I don't know know what uv sync does, but I can clone your fork locally and the guide_hello_world.png is there. Can you skip smudge errors since the screenshots are only required for building docs or tests.

@FlynnOConnell
Copy link
Collaborator Author

Yeah I can GIT_LFS_SKIP_SMUDGE=1, which I have in CI, and its not an issue. None of my users have had this issue (yet) so I haven't been too concerned

@FlynnOConnell
Copy link
Collaborator Author

FlynnOConnell commented Oct 16, 2025

@kushalkolar interestingly I'm only getting it locally if I install from the main branch:

flynn at pop-os in ~/repos/work/testenv
$ uv pip install fastplotlib
Resolved 15 packages in 128ms
Prepared 1 package in 937ms
Installed 15 packages in 18ms
 + cffi==2.0.0
 + cmap==0.6.2
 + fastplotlib==0.5.1
 + freetype-py==2.5.1
 + hsluv==5.0.4
 + jinja2==3.1.6
 + markupsafe==3.0.3
 + numpy==2.3.4
 + pycparser==2.23
 + pygfx==0.12.0
 + pylinalg==0.6.7
 + rendercanvas==2.2.1
 + sniffio==1.3.1
 + uharfbuzz==0.51.7
 + wgpu==0.22.2

flynn at pop-os in ~/repos/work/testenv
$ uv pip install git+https://github.com/fastplotlib/fastplotlib.git@main
   Updating https://github.com/fastplotlib/fastplotlib.git (main)                                                                            error: Git operation failed
  Caused by: process didn't exit successfully: `/bin/git reset --hard e5a818a5e84d92ea718dd96fcdc4f02e6d611c3a` (exit status: 128)
--- stderr
Downloading docs/source/_static/guide_hello_world.png (106 KB)
Error downloading object: docs/source/_static/guide_hello_world.png (97fda35): Smudge error: Error downloading docs/source/_static/guide_hello_world.png (97fda350fd73fc33792447114828884563862cae1f89530f242360d72f284ccc): error transferring "97fda350fd73fc33792447114828884563862cae1f89530f242360d72f284ccc": [0] remote missing object 97fda350fd73fc33792447114828884563862cae1f89530f242360d72f284ccc

Errors logged to /home/flynn/.cache/uv/git-v0/checkouts/58a20838bd7e60cc/e5a818a/.git/lfs/logs/20251016T101339.513156683.log
Use `git lfs logs last` to view the log.
error: external filter 'git-lfs filter-process' failed
fatal: docs/source/_static/guide_hello_world.png: smudge filter lfs failed

Which I can bypass like so:

flynn at pop-os in ~/repos/work/testenv
$ GIT_LFS_SKIP_SMUDGE=1 uv pip install git+https://github.com/fastplotlib/fastplotlib.git@main
Resolved 15 packages in 487ms
      Built fastplotlib @ git+https://github.com/fastplotlib/fastplotlib.git@e5a818a5e84d92ea718dd96fcdc4f02e6d611c3a
Prepared 1 package in 150ms
Uninstalled 3 packages in 2ms
Installed 3 packages in 8ms
 - fastplotlib==0.5.1
 + fastplotlib==0.5.1 (from git+https://github.com/fastplotlib/fastplotlib.git@e5a818a5e84d92ea718dd96fcdc4f02e6d611c3a)
 - pygfx==0.12.0
 + pygfx==0.14.0
 - wgpu==0.22.2
 + wgpu==0.25.0

@FlynnOConnell
Copy link
Collaborator Author

@kushalkolar confirmed still happening even on my newest repos

@kushalkolar
Copy link
Member

@kushalkolar confirmed still happening even on my newest repos

I applied the fix from this PR in #791 here: 3c9a6d8

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.

git lfs corrupted pointer: image_widget_grid.png

4 participants