Cursor update changed line endings in entire codebase without consent

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

After updating Cursor, it automatically converted line endings (LF→CRLF)
in a large legacy file (47,000+ lines), mixing legitimate code changes
with line ending changes. This happened even with AI in “Ask Mode” (read-only).

Steps to Reproduce

When there is a popup for new version update, click the update button.

Expected Behavior

  • Cursor should preserve existing line endings by default
  • Updates should not modify editor settings that affect file content
  • Users should be warned if line ending auto-conversion is enabled

Operating System

Windows 10/11

Version Information

Version: 2.4.27 (system setup)
VSCode Version: 1.105.1
Commit: 4f2b772756b8f609e1354b3063de282ccbe7a690
Date: 2026-01-31T21:24:58.143Z
Build Type: Stable
Release Track: Default
Electron: 39.2.7
Chromium: 142.0.7444.235
Node.js: 22.21.1
V8: 14.2.231.21-electron.0
OS: Windows_NT x64 10.0.26200

Does this stop you from using Cursor

Sometimes - I can sometimes use Cursor

4 Likes

Hey, thanks for the report. Looks like a known issue with files changing on Cursor update/launch on Windows - usually tied to line endings settings and unaccepted changes from Agent/Composer.

Need a bit more info to pinpoint the exact cause:

Git config:

  • What does git config --global core.autocrlf return?

Cursor settings Ctrl+,:

  • files.eol - what’s the value?
  • files.insertFinalNewline - enabled?
  • files.trimTrailingWhitespace - enabled?

Project:

  • Any .editorconfig or .gitattributes in the project?
  • Was there a pending review from Agent/Composer in this file that you didn’t accept before updating?

Temporary workaround (based on similar cases):
If there are unaccepted changes in the Review panel - try opening each file and hitting “Accept all changes”, then revert git changes and restart Cursor. This fixed it for a few users.

Let me know the results - it’ll help figure out if we need a new ticket or if it’s a variant of the known issue.

Hi Dean,

Git config:
I’ve set it to true after I encountered the bug. I don’t know what was the value before.

files.eol - what’s the value? auto
files.insertFinalNewline - enabled? no
files.trimTrailingWhitespace - enabled? no

I used Cursor to create .editorconfig and .gitattributes, but only after I encountered the bug.
I don’t remember any pending review.

1 Like

Hi Dean,
The problem is more serious than I thought.
I just opened the app, and it updated these 3 files.
Since I started using Cursor, these are the only files I have ever asked the app to create or update.

image

I can see the issue is more serious. The files change every time you open the IDE, not only during an update.

This looks a lot like a bug that was fixed in version 2.3. The IDE used to add blank lines on startup to files that Agent had edited before. You’re on 2.4.27, so this is either a regression or a slightly different case related to line endings.

Main question: do you have any pending changes for these files in the Review panel?

  • Open the Review panel
  • Check if those 3 files are listed there (DataProvider.cs, CacheRace.aspx, CacheRace.aspx.cs)

If they are, try this workaround that helped many users with a similar bug:

  1. Open each file from the Source Control tab
  2. Click the Keep button (or press Ctrl+Y)
  3. Remove the extra changes (in your case, revert to the original line endings)
  4. Restart Cursor

After that, the files should stop “sticking” on IDE startup.

Let me know what you see in the Review panel and whether the workaround helped. If not, I’ll create a ticket for the team since this looks like a regression of a bug that was already fixed.

1 Like

Review panel:
There are no pending changes for these files in the Review panel.
When opening Cursor, no Review panel appears, and the following files are not listed there:
* DataProvider.cs
* CacheRace.aspx
* CacheRace.aspx.cs

No Accept/Reject UI is shown at any point. The changes do not go through the Review workflow.

Findings / repro:

* DataProvider.cs contains pure CRLF line endings (LF-only lines: 0, verified at byte level).
* On reopening Cursor, the file is rewritten to LF without any user edits.
* LastWriteTime changes on reopen, confirming the file is written on open.
* This happens even when launching Cursor with --disable-extensions (so not extension-related).
* .editorconfig is being read (indentation rules apply), including [*.cs] end_of_line = crlf.
* Workspace/folder settings do not override anything.
* .gitattributes includes *.cs text eol=crlf, but Cursor still writes LF.
* files.eol was tested with “\r\n” and “auto”; behavior is unchanged.

Conclusion:
Cursor core (not Agent/Review, not extensions) is saving files on open and normalizing line endings to LF, bypassing the Review panel and ignoring EditorConfig end_of_line = crlf.

Me and my coworkers are also experencing this which is quite annoying

1 Like

We are also experiencing this. It’s not just inconvenient, its costing us money in time. Please considering fixing this as an urgent hotfix issue. If it helps, when viewed in VS afterwards, the message appears “These files have different encodings. Left file: Unicode (UTF-8) with signature. Right file: Unicode (UTF-8) without signature. You can resolve the difference by saving the right X
file with the encoding Unicode (UTF-8) with signature.” I don’t see UTF-8 with signature as an option in the Cursor encoding dropdown, so maybe that needs to be added? In Github online, it mentioned with or without a BOM-so maybe that one too?

1 Like

This issue is making Cursor unusable for our team.

1 Like

Same here - I have to remember to commit all work before even thinking about opening cursor otherwise it edits 300+ files to change their line endings to LF. If i forget, then my working folder is polluted with these changes and its time consuming to recover from. I have tried all VS Code settings (in Cursor) to do with line endings, and nothing works. As the OP says, this also occurs after deleting the workspace cache from AppData so that Cursor loads with no files open at all, just a new agent on screen. It still tramples over the same files on the next load. I love Cursor, but this is making the workflow difficult.

Incidentally, this is what Cursor itself advises after spending hours trying to fix it:

If it’s Cursor (no extension)

Then there is no setting we can change in your project to make it “stop touching all my files.” The only real fix is Cursor changing their code so they don’t write files when they shouldn’t. Your options are:

  • Report the behavior (e.g. “Cursor rewrites 100+ files to LF on startup despite files.eol and files.eolConversion”).

  • Check Cursor release notes / settings for anything like “indexing”, “codebase”, “normalize”, or “line endings” and turn it off if it exists.

  • As a last resort, use another editor for this repo until Cursor fixes it.

So: run with --disable-extensions first; that tells you whether we can fix it (extension) or we’re blocked on Cursor (core behavior).

1 Like

also experiencing the same issue.
Cursor 2.4.31

1 Like

I installed the latest version (2.5.25) and it seems to have fixed the bug.
Thank you.

I have Cursor 2.6.12 and the issue is either back or not fixed:

Version: 2.6.12 (user setup)
VSCode Version: 1.105.1
Commit: 1917e900a0c4b0111dc7975777cfff60853059d0
Date: 2026-03-04T21:41:18.914Z
Build Type: Stable
Release Track: Default
Electron: 39.6.0
Chromium: 142.0.7444.265
Node.js: 22.22.0
V8: 14.2.231.22-electron.0
OS: Windows_NT x64 10.0.26100

We’re using svn for revision control, all files are committed. Then I open my project in Cursor and line endings from several files (not all) are converted from CRLF (Windows) to LF (Linux).

It’s very annoying to say the least.

1 Like

Still happens in 2.6.21

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

Cursor agent on Windows creates new files with CRLF line endings no matter what, even though LF line ending was specified in all settings (i.e., files.eol, .editorconfig, and .gitattributes), git config --global core.autocrlf is not set, and the whole project uses LF (not CRLF).

Steps to Reproduce

Set files.eol (editor setting) to \n (LF).
Create an .editorconfig in the project root with end_of_line = lf.
Create .gitattributes with * text=auto eol=lf (and no mention of crlf).

Open new chat with any model (tested with Composer 2 and Opus 4.6) and execute this prompt:

❝Create a new test file called hello_world.js that prints “Hello World” to the console when run with Node.❞

cursor_hello_world_test_file.txt (944 Bytes)

Expected Behavior

The new file should have LF line endings.

Operating System

Windows 10/11

Version Information

Version: 2.6.22 (user setup)
VSCode Version: 1.105.1
Commit: c6285feaba0ad62603f7c22e72f0a170dc8415a0
Date: 2026-03-27T15:59:31.561Z
Build Type: Stable
Release Track: Default
Electron: 39.8.1
Chromium: 142.0.7444.265
Node.js: 22.22.1
V8: 14.2.231.22-electron.0
OS: Windows_NT x64 10.0.19045

For AI issues: which model did you use?

Composer 2
Opus 4.6

Additional Information

This is causing headaches for our team. I’m guessing developers at Cursor are Mac-centric, but we would really appreciate if you could give this some attention. Fancy new features are not valuable if editor basics are broken.

This bug report is a DUPLICATE of the first one below (151096). I am re-reporting because that one no longer allows comments, and Cursor’s bug reporting guidelines say that bugs affecting more users will get more attention. I see no other way to let the Cursor team know that this is still an issue affecting Windows users.

Issues with Cursor converting LF to CRLF or creating files with CRLF despite LF settings have been reported repeatedly for the past 2 months.


New files (DUPLICATE of this bug report)

2/6/2026


Changing files

1/30/2026

2/1/2026

2/4/2026

2/12/2026

2/9/2026

Does this stop you from using Cursor

Sometimes - I can sometimes use Cursor

This issue “seemed” to be fixed for a cpl of versions recently, but is back - i am running 3.1.10 - would be good to get some acknowledgment from the cursor team of this???

This issue is very much still present. It seems that fixes followed by regressions are a very common problem with Cursor. To clarify, this is happening on macOS, in a codebase that never had CRLF ever in it before, ever.