oXygen (+ git add-on?) seem to modify files unasked
Posted: Mon Mar 25, 2024 10:27 pm
Hi all, do forgive this somewhat sketchy report and an unusual test suite. I'm seeing some kind of issue connected to the git add-on, but it doesn't come up for all repositories. I observed it in the last last 26.0 build for linux, with its corresponding git add-on, and today I see the same under 26.1, after add-on upgrade.
The reason I chose to post here is that the weird behaviour of the add-on may be triggered by something that oXygen does, correcting "offending" characters in filenames. In our case, it was the "è" in "phonothèque" that oXygen apparently wasn't able to tolerate. And it seems that oXygen's escaping the character and changing the filename made the add-on lose it completely.
Issue: after I try to switch branches in the git plugin, the plugin hangs (with a rotating disc), the branch is not switched, but, instead "git status" in the cmdline reports modified files. It looks like it reverts at least two last commits.
how to recreate:
I am not able to stash the above (rotating disc, no changes in git), and if I do checkout on the commandline, the add-on window gets updated (although the disc keeps rotating). But if I try to do checkout from inside the add-on, the branch remains unchanged and "git status" yields the following:
These are not random objects, they are on top of the commit tree. It looks like the add-on reverts the repo to an earlier state when I try to switch branches. I am not sure how relevant the "Phonoth?que" file is, in all that. That was my freshest commit against the "dev" branch (I went to plain ASCII, to avoid the hassle). The "fGZIP" and friends were one commit earlier and not by me, this isn't local corruption.
Ah, I have run git fsck and git-repair on the modified repo, but they didn't report errors.
And let me stress: I used the git add-on yesterday, with another repo, and with no issues at all. Everything started when I noticed that oXygen tries oh so hard to modify the "offending" file name, which, I guess, shouldn't be offending.
Let me also add the state of my options, in case that matters. I have changed the first from ASCII to UTF-8, not really hoping for an effect. And there was no effect indeed.
Sometimes (like, now, as I was triple-checking this report) a dialog opens, asking me if I want to stash or move changes when I checkout. Stashing doesn't succeed, and this time I had to click a few more times, and eventually the add-on again dug out the previous commits and untracked them. Moving changes to the branch to be checked out didn't succeed either.
HTH, thanks!
The reason I chose to post here is that the weird behaviour of the add-on may be triggered by something that oXygen does, correcting "offending" characters in filenames. In our case, it was the "è" in "phonothèque" that oXygen apparently wasn't able to tolerate. And it seems that oXygen's escaping the character and changing the filename made the add-on lose it completely.
Issue: after I try to switch branches in the git plugin, the plugin hangs (with a rotating disc), the branch is not switched, but, instead "git status" in the cmdline reports modified files. It looks like it reverts at least two last commits.
how to recreate:
- git clone https://github.com/clarin-eric/standards.git
- git checkout formats , git checkout dev (they differ very slightly, but maybe crucially)
- "dev" is the clean branch, so open oXygen to look at the files in this branch; I opened some files from under clarin/data/ just to make the editor scan the directory or whatever it's doing (was just groping in the dark)
- switch to the git add-on and attempt to switch the branch to "formats"
- note the rotating disc, kill oXygen, do "git status" in the command line
I am not able to stash the above (rotating disc, no changes in git), and if I do checkout on the commandline, the add-on window gets updated (although the disc keeps rotating). But if I try to do checkout from inside the add-on, the branch remains unchanged and "git status" yields the following:
Code: Select all
On branch dev
Your branch is up to date with 'origin/dev'.
Changes not staged for commit:
(use "git add/rm <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: ../../../.github/ISSUE_TEMPLATE/incorrect-missing-format-description.md
modified: recommendations/FIN-CLARIN-recommendation.xml
deleted: recommendations/MMSHs-Phonotheque-recommendation.xml
Untracked files:
(use "git add <file>..." to include in what will be committed)
formats/fCWB-VRT.xml
formats/fGZIP.xml
formats/fLMF.xml
formats/fTAR.xml
formats/fTSV.xml
formats/fZIP.xml
recommendations/._MMSHs-Phonoth?que-recommendation.xml2151942400694989099.tmp
Ah, I have run git fsck and git-repair on the modified repo, but they didn't report errors.
And let me stress: I used the git add-on yesterday, with another repo, and with no issues at all. Everything started when I noticed that oXygen tries oh so hard to modify the "offending" file name, which, I guess, shouldn't be offending.
Let me also add the state of my options, in case that matters. I have changed the first from ASCII to UTF-8, not really hoping for an effect. And there was no effect indeed.
Sometimes (like, now, as I was triple-checking this report) a dialog opens, asking me if I want to stash or move changes when I checkout. Stashing doesn't succeed, and this time I had to click a few more times, and eventually the add-on again dug out the previous commits and untracked them. Moving changes to the branch to be checked out didn't succeed either.
HTH, thanks!