Remove [RequiresUnsafe] attribute usages - #127761

Merged
agocke merged 1 commit into
dotnet:mainfrom
jjonescz:Unsafe-RemoteAttribute
May 5, 2026
Merged

Remove [RequiresUnsafe] attribute usages#127761
agocke merged 1 commit into
dotnet:mainfrom
jjonescz:Unsafe-RemoteAttribute

Conversation

@jjonescz

@jjonesczjjonescz commented May 4, 2026

Copy link
Copy Markdown
Member

It won't be possible to be used in source with new compiler (dotnet/roslyn#83295). Specifically, it will result in

error CS9379: Do not use 'RequiresUnsafeAttribute' in source; use the 'unsafe' modifier instead.

Related to #125800 and dotnet/roslyn#81207.

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @dotnet/area-system-runtime-compilerservices
See info in area-owners.md if you want to be subscribed.

@EgorBo

Copy link
Copy Markdown
Member

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

CopilotAI reviewed May 4, 2026

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@am11

am11 commented May 4, 2026

Copy link
Copy Markdown
Member

error CS9379: Do not use 'RequiresUnsafeAttribute' in source; use the 'unsafe' modifier instead.

Will it be removed from source before .NET 11 release (and docs be deleted https://learn.microsoft.com/dotnet/api/system.diagnostics.codeanalysis.requiresunsafeattribute) or does this attribute serve some other purpose?

We can probably close the lid on #125904 and other enhancement plan concerning this attribute.

@jjonescz

Copy link
Copy Markdown
MemberAuthor

Will it be removed from source before .NET 11 release (and docs be deleted https://learn.microsoft.com/dotnet/api/system.diagnostics.codeanalysis.requiresunsafeattribute) or does this attribute serve some other purpose?

The attribute is still used by the compiler, it shouldn't be removed. However, it could be moved back to CompilerServices namespace.

@jjonescz

Copy link
Copy Markdown
MemberAuthor

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

Sounds like that might be better in a separate PR (can be merged before this one though) for simpler reviewing. Here it is: #127768

@agocke

Copy link
Copy Markdown
Member

Can we onboard to the new compiler at the same time? So it correctly prohibits the use?

@jjonescz

jjonescz commented May 5, 2026

Copy link
Copy Markdown
MemberAuthor

Can we onboard to the new compiler at the same time? So it correctly prohibits the use?

We could set the compiler version but that will be overwritten by next flow from dotnet/dotnet. Changing the infra to avoid that seems like an overkill. But once dotnet/dotnet#6291 is merged, the next roslyn update will contain the change. So I think it would be good to merge this here and you will get validation with the new compiler soon after.

@jjonescz
jjonescz marked this pull request as ready for review May 5, 2026 07:58
@jjonescz

Copy link
Copy Markdown
MemberAuthor

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

@am11

am11 commented May 5, 2026

Copy link
Copy Markdown
Member

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

It's mainly for the local dev, e.g. this wrapper script calls dotnet format would produce undesired diffs:

@EgorBo

Copy link
Copy Markdown
Member

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

I think code-fixers never run, analyzers do. And for code-fixers it's very complicated to run them against CoreLib, currently, that requires a bit of hacks

@agocke

Copy link
Copy Markdown
Member

We could set the compiler version but that will be overwritten by next flow from dotnet/dotnet

I don't believe we always use the compiler from the VMR. We can just override it.

@agocke

Copy link
Copy Markdown
Member

OK, I've taken a look and I think the workarounds for the VMR/source build aren't worth it. We can just proactively remove these.

@agocke
agocke merged commit e42458b into dotnet:mainMay 5, 2026
178 checks passed
@jjonescz
jjonescz deleted the Unsafe-RemoteAttribute branch May 6, 2026 07:36
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Jun 5, 2026
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@jjonescz@EgorBo@am11@agocke@jkotas
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Remove [RequiresUnsafe] attribute usages - #127761

Merged
agocke merged 1 commit into
dotnet:mainfrom
jjonescz:Unsafe-RemoteAttribute
May 5, 2026
Merged

Remove [RequiresUnsafe] attribute usages#127761
agocke merged 1 commit into
dotnet:mainfrom
jjonescz:Unsafe-RemoteAttribute

Conversation

@jjonescz

@jjonesczjjonescz commented May 4, 2026

Copy link
Copy Markdown
Member

It won't be possible to be used in source with new compiler (dotnet/roslyn#83295). Specifically, it will result in

error CS9379: Do not use 'RequiresUnsafeAttribute' in source; use the 'unsafe' modifier instead.

Related to #125800 and dotnet/roslyn#81207.

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @dotnet/area-system-runtime-compilerservices
See info in area-owners.md if you want to be subscribed.

@EgorBo

Copy link
Copy Markdown
Member

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

CopilotAI reviewed May 4, 2026

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@am11

am11 commented May 4, 2026

Copy link
Copy Markdown
Member

error CS9379: Do not use 'RequiresUnsafeAttribute' in source; use the 'unsafe' modifier instead.

Will it be removed from source before .NET 11 release (and docs be deleted https://learn.microsoft.com/dotnet/api/system.diagnostics.codeanalysis.requiresunsafeattribute) or does this attribute serve some other purpose?

We can probably close the lid on #125904 and other enhancement plan concerning this attribute.

@jjonescz

Copy link
Copy Markdown
MemberAuthor

Will it be removed from source before .NET 11 release (and docs be deleted https://learn.microsoft.com/dotnet/api/system.diagnostics.codeanalysis.requiresunsafeattribute) or does this attribute serve some other purpose?

The attribute is still used by the compiler, it shouldn't be removed. However, it could be moved back to CompilerServices namespace.

@jjonescz

Copy link
Copy Markdown
MemberAuthor

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

Sounds like that might be better in a separate PR (can be merged before this one though) for simpler reviewing. Here it is: #127768

@agocke

Copy link
Copy Markdown
Member

Can we onboard to the new compiler at the same time? So it correctly prohibits the use?

@jjonescz

jjonescz commented May 5, 2026

Copy link
Copy Markdown
MemberAuthor

Can we onboard to the new compiler at the same time? So it correctly prohibits the use?

We could set the compiler version but that will be overwritten by next flow from dotnet/dotnet. Changing the infra to avoid that seems like an overkill. But once dotnet/dotnet#6291 is merged, the next roslyn update will contain the change. So I think it would be good to merge this here and you will get validation with the new compiler soon after.

@jjonescz
jjonescz marked this pull request as ready for review May 5, 2026 07:58
@jjonescz

Copy link
Copy Markdown
MemberAuthor

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

@am11

am11 commented May 5, 2026

Copy link
Copy Markdown
Member

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

It's mainly for the local dev, e.g. this wrapper script calls dotnet format would produce undesired diffs:

@EgorBo

Copy link
Copy Markdown
Member

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

I think code-fixers never run, analyzers do. And for code-fixers it's very complicated to run them against CoreLib, currently, that requires a bit of hacks

@agocke

Copy link
Copy Markdown
Member

We could set the compiler version but that will be overwritten by next flow from dotnet/dotnet

I don't believe we always use the compiler from the VMR. We can just override it.

@agocke

Copy link
Copy Markdown
Member

OK, I've taken a look and I think the workarounds for the VMR/source build aren't worth it. We can just proactively remove these.

@agocke
agocke merged commit e42458b into dotnet:mainMay 5, 2026
178 checks passed
@jjonescz
jjonescz deleted the Unsafe-RemoteAttribute branch May 6, 2026 07:36
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Jun 5, 2026
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@jjonescz@EgorBo@am11@agocke@jkotas
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Remove [RequiresUnsafe] attribute usages - #127761

Merged
agocke merged 1 commit into
dotnet:mainfrom
jjonescz:Unsafe-RemoteAttribute
May 5, 2026
Merged

Remove [RequiresUnsafe] attribute usages#127761
agocke merged 1 commit into
dotnet:mainfrom
jjonescz:Unsafe-RemoteAttribute

Conversation

@jjonescz

@jjonesczjjonescz commented May 4, 2026

Copy link
Copy Markdown
Member

It won't be possible to be used in source with new compiler (dotnet/roslyn#83295). Specifically, it will result in

error CS9379: Do not use 'RequiresUnsafeAttribute' in source; use the 'unsafe' modifier instead.

Related to #125800 and dotnet/roslyn#81207.

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @dotnet/area-system-runtime-compilerservices
See info in area-owners.md if you want to be subscribed.

@EgorBo

Copy link
Copy Markdown
Member

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

CopilotAI reviewed May 4, 2026

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@am11

am11 commented May 4, 2026

Copy link
Copy Markdown
Member

error CS9379: Do not use 'RequiresUnsafeAttribute' in source; use the 'unsafe' modifier instead.

Will it be removed from source before .NET 11 release (and docs be deleted https://learn.microsoft.com/dotnet/api/system.diagnostics.codeanalysis.requiresunsafeattribute) or does this attribute serve some other purpose?

We can probably close the lid on #125904 and other enhancement plan concerning this attribute.

@jjonescz

Copy link
Copy Markdown
MemberAuthor

Will it be removed from source before .NET 11 release (and docs be deleted https://learn.microsoft.com/dotnet/api/system.diagnostics.codeanalysis.requiresunsafeattribute) or does this attribute serve some other purpose?

The attribute is still used by the compiler, it shouldn't be removed. However, it could be moved back to CompilerServices namespace.

@jjonescz

Copy link
Copy Markdown
MemberAuthor

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

Sounds like that might be better in a separate PR (can be merged before this one though) for simpler reviewing. Here it is: #127768

@agocke

Copy link
Copy Markdown
Member

Can we onboard to the new compiler at the same time? So it correctly prohibits the use?

@jjonescz

jjonescz commented May 5, 2026

Copy link
Copy Markdown
MemberAuthor

Can we onboard to the new compiler at the same time? So it correctly prohibits the use?

We could set the compiler version but that will be overwritten by next flow from dotnet/dotnet. Changing the infra to avoid that seems like an overkill. But once dotnet/dotnet#6291 is merged, the next roslyn update will contain the change. So I think it would be good to merge this here and you will get validation with the new compiler soon after.

@jjonescz
jjonescz marked this pull request as ready for review May 5, 2026 07:58
@jjonescz

Copy link
Copy Markdown
MemberAuthor

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

@am11

am11 commented May 5, 2026

Copy link
Copy Markdown
Member

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

It's mainly for the local dev, e.g. this wrapper script calls dotnet format would produce undesired diffs:

@EgorBo

Copy link
Copy Markdown
Member

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

I think code-fixers never run, analyzers do. And for code-fixers it's very complicated to run them against CoreLib, currently, that requires a bit of hacks

@agocke

Copy link
Copy Markdown
Member

We could set the compiler version but that will be overwritten by next flow from dotnet/dotnet

I don't believe we always use the compiler from the VMR. We can just override it.

@agocke

Copy link
Copy Markdown
Member

OK, I've taken a look and I think the workarounds for the VMR/source build aren't worth it. We can just proactively remove these.

@agocke
agocke merged commit e42458b into dotnet:mainMay 5, 2026
178 checks passed
@jjonescz
jjonescz deleted the Unsafe-RemoteAttribute branch May 6, 2026 07:36
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Jun 5, 2026
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@jjonescz@EgorBo@am11@agocke@jkotas
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Remove [RequiresUnsafe] attribute usages - #127761

Merged
agocke merged 1 commit into
dotnet:mainfrom
jjonescz:Unsafe-RemoteAttribute
May 5, 2026
Merged

Remove [RequiresUnsafe] attribute usages#127761
agocke merged 1 commit into
dotnet:mainfrom
jjonescz:Unsafe-RemoteAttribute

Conversation

@jjonescz

@jjonesczjjonescz commented May 4, 2026

Copy link
Copy Markdown
Member

It won't be possible to be used in source with new compiler (dotnet/roslyn#83295). Specifically, it will result in

error CS9379: Do not use 'RequiresUnsafeAttribute' in source; use the 'unsafe' modifier instead.

Related to #125800 and dotnet/roslyn#81207.

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @dotnet/area-system-runtime-compilerservices
See info in area-owners.md if you want to be subscribed.

@EgorBo

Copy link
Copy Markdown
Member

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

CopilotAI reviewed May 4, 2026

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@am11

am11 commented May 4, 2026

Copy link
Copy Markdown
Member

error CS9379: Do not use 'RequiresUnsafeAttribute' in source; use the 'unsafe' modifier instead.

Will it be removed from source before .NET 11 release (and docs be deleted https://learn.microsoft.com/dotnet/api/system.diagnostics.codeanalysis.requiresunsafeattribute) or does this attribute serve some other purpose?

We can probably close the lid on #125904 and other enhancement plan concerning this attribute.

@jjonescz

Copy link
Copy Markdown
MemberAuthor

Will it be removed from source before .NET 11 release (and docs be deleted https://learn.microsoft.com/dotnet/api/system.diagnostics.codeanalysis.requiresunsafeattribute) or does this attribute serve some other purpose?

The attribute is still used by the compiler, it shouldn't be removed. However, it could be moved back to CompilerServices namespace.

@jjonescz

Copy link
Copy Markdown
MemberAuthor

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

Sounds like that might be better in a separate PR (can be merged before this one though) for simpler reviewing. Here it is: #127768

@agocke

Copy link
Copy Markdown
Member

Can we onboard to the new compiler at the same time? So it correctly prohibits the use?

@jjonescz

jjonescz commented May 5, 2026

Copy link
Copy Markdown
MemberAuthor

Can we onboard to the new compiler at the same time? So it correctly prohibits the use?

We could set the compiler version but that will be overwritten by next flow from dotnet/dotnet. Changing the infra to avoid that seems like an overkill. But once dotnet/dotnet#6291 is merged, the next roslyn update will contain the change. So I think it would be good to merge this here and you will get validation with the new compiler soon after.

@jjonescz
jjonescz marked this pull request as ready for review May 5, 2026 07:58
@jjonescz

Copy link
Copy Markdown
MemberAuthor

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

@am11

am11 commented May 5, 2026

Copy link
Copy Markdown
Member

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

It's mainly for the local dev, e.g. this wrapper script calls dotnet format would produce undesired diffs:

@EgorBo

Copy link
Copy Markdown
Member

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

I think code-fixers never run, analyzers do. And for code-fixers it's very complicated to run them against CoreLib, currently, that requires a bit of hacks

@agocke

Copy link
Copy Markdown
Member

We could set the compiler version but that will be overwritten by next flow from dotnet/dotnet

I don't believe we always use the compiler from the VMR. We can just override it.

@agocke

Copy link
Copy Markdown
Member

OK, I've taken a look and I think the workarounds for the VMR/source build aren't worth it. We can just proactively remove these.

@agocke
agocke merged commit e42458b into dotnet:mainMay 5, 2026
178 checks passed
@jjonescz
jjonescz deleted the Unsafe-RemoteAttribute branch May 6, 2026 07:36
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Jun 5, 2026
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@jjonescz@EgorBo@am11@agocke@jkotas
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Remove [RequiresUnsafe] attribute usages - #127761

Merged
agocke merged 1 commit into
dotnet:mainfrom
jjonescz:Unsafe-RemoteAttribute
May 5, 2026
Merged

Remove [RequiresUnsafe] attribute usages#127761
agocke merged 1 commit into
dotnet:mainfrom
jjonescz:Unsafe-RemoteAttribute

Conversation

@jjonescz

@jjonesczjjonescz commented May 4, 2026

Copy link
Copy Markdown
Member

It won't be possible to be used in source with new compiler (dotnet/roslyn#83295). Specifically, it will result in

error CS9379: Do not use 'RequiresUnsafeAttribute' in source; use the 'unsafe' modifier instead.

Related to #125800 and dotnet/roslyn#81207.

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @dotnet/area-system-runtime-compilerservices
See info in area-owners.md if you want to be subscribed.

@EgorBo

Copy link
Copy Markdown
Member

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

CopilotAI reviewed May 4, 2026

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@am11

am11 commented May 4, 2026

Copy link
Copy Markdown
Member

error CS9379: Do not use 'RequiresUnsafeAttribute' in source; use the 'unsafe' modifier instead.

Will it be removed from source before .NET 11 release (and docs be deleted https://learn.microsoft.com/dotnet/api/system.diagnostics.codeanalysis.requiresunsafeattribute) or does this attribute serve some other purpose?

We can probably close the lid on #125904 and other enhancement plan concerning this attribute.

@jjonescz

Copy link
Copy Markdown
MemberAuthor

Will it be removed from source before .NET 11 release (and docs be deleted https://learn.microsoft.com/dotnet/api/system.diagnostics.codeanalysis.requiresunsafeattribute) or does this attribute serve some other purpose?

The attribute is still used by the compiler, it shouldn't be removed. However, it could be moved back to CompilerServices namespace.

@jjonescz

Copy link
Copy Markdown
MemberAuthor

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

Sounds like that might be better in a separate PR (can be merged before this one though) for simpler reviewing. Here it is: #127768

@agocke

Copy link
Copy Markdown
Member

Can we onboard to the new compiler at the same time? So it correctly prohibits the use?

@jjonescz

jjonescz commented May 5, 2026

Copy link
Copy Markdown
MemberAuthor

Can we onboard to the new compiler at the same time? So it correctly prohibits the use?

We could set the compiler version but that will be overwritten by next flow from dotnet/dotnet. Changing the infra to avoid that seems like an overkill. But once dotnet/dotnet#6291 is merged, the next roslyn update will contain the change. So I think it would be good to merge this here and you will get validation with the new compiler soon after.

@jjonescz
jjonescz marked this pull request as ready for review May 5, 2026 07:58
@jjonescz

Copy link
Copy Markdown
MemberAuthor

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

@am11

am11 commented May 5, 2026

Copy link
Copy Markdown
Member

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

It's mainly for the local dev, e.g. this wrapper script calls dotnet format would produce undesired diffs:

@EgorBo

Copy link
Copy Markdown
Member

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

I think code-fixers never run, analyzers do. And for code-fixers it's very complicated to run them against CoreLib, currently, that requires a bit of hacks

@agocke

Copy link
Copy Markdown
Member

We could set the compiler version but that will be overwritten by next flow from dotnet/dotnet

I don't believe we always use the compiler from the VMR. We can just override it.

@agocke

Copy link
Copy Markdown
Member

OK, I've taken a look and I think the workarounds for the VMR/source build aren't worth it. We can just proactively remove these.

@agocke
agocke merged commit e42458b into dotnet:mainMay 5, 2026
178 checks passed
@jjonescz
jjonescz deleted the Unsafe-RemoteAttribute branch May 6, 2026 07:36
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Jun 5, 2026
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@jjonescz@EgorBo@am11@agocke@jkotas
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Remove [RequiresUnsafe] attribute usages - #127761

Merged
agocke merged 1 commit into
dotnet:mainfrom
jjonescz:Unsafe-RemoteAttribute
May 5, 2026
Merged

Remove [RequiresUnsafe] attribute usages#127761
agocke merged 1 commit into
dotnet:mainfrom
jjonescz:Unsafe-RemoteAttribute

Conversation

@jjonescz

@jjonesczjjonescz commented May 4, 2026

Copy link
Copy Markdown
Member

It won't be possible to be used in source with new compiler (dotnet/roslyn#83295). Specifically, it will result in

error CS9379: Do not use 'RequiresUnsafeAttribute' in source; use the 'unsafe' modifier instead.

Related to #125800 and dotnet/roslyn#81207.

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @dotnet/area-system-runtime-compilerservices
See info in area-owners.md if you want to be subscribed.

@EgorBo

Copy link
Copy Markdown
Member

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

CopilotAI reviewed May 4, 2026

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@am11

am11 commented May 4, 2026

Copy link
Copy Markdown
Member

error CS9379: Do not use 'RequiresUnsafeAttribute' in source; use the 'unsafe' modifier instead.

Will it be removed from source before .NET 11 release (and docs be deleted https://learn.microsoft.com/dotnet/api/system.diagnostics.codeanalysis.requiresunsafeattribute) or does this attribute serve some other purpose?

We can probably close the lid on #125904 and other enhancement plan concerning this attribute.

@jjonescz

Copy link
Copy Markdown
MemberAuthor

Will it be removed from source before .NET 11 release (and docs be deleted https://learn.microsoft.com/dotnet/api/system.diagnostics.codeanalysis.requiresunsafeattribute) or does this attribute serve some other purpose?

The attribute is still used by the compiler, it shouldn't be removed. However, it could be moved back to CompilerServices namespace.

@jjonescz

Copy link
Copy Markdown
MemberAuthor

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

Sounds like that might be better in a separate PR (can be merged before this one though) for simpler reviewing. Here it is: #127768

@agocke

Copy link
Copy Markdown
Member

Can we onboard to the new compiler at the same time? So it correctly prohibits the use?

@jjonescz

jjonescz commented May 5, 2026

Copy link
Copy Markdown
MemberAuthor

Can we onboard to the new compiler at the same time? So it correctly prohibits the use?

We could set the compiler version but that will be overwritten by next flow from dotnet/dotnet. Changing the infra to avoid that seems like an overkill. But once dotnet/dotnet#6291 is merged, the next roslyn update will contain the change. So I think it would be good to merge this here and you will get validation with the new compiler soon after.

@jjonescz
jjonescz marked this pull request as ready for review May 5, 2026 07:58
@jjonescz

Copy link
Copy Markdown
MemberAuthor

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

@am11

am11 commented May 5, 2026

Copy link
Copy Markdown
Member

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

It's mainly for the local dev, e.g. this wrapper script calls dotnet format would produce undesired diffs:

@EgorBo

Copy link
Copy Markdown
Member

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

I think code-fixers never run, analyzers do. And for code-fixers it's very complicated to run them against CoreLib, currently, that requires a bit of hacks

@agocke

Copy link
Copy Markdown
Member

We could set the compiler version but that will be overwritten by next flow from dotnet/dotnet

I don't believe we always use the compiler from the VMR. We can just override it.

@agocke

Copy link
Copy Markdown
Member

OK, I've taken a look and I think the workarounds for the VMR/source build aren't worth it. We can just proactively remove these.

@agocke
agocke merged commit e42458b into dotnet:mainMay 5, 2026
178 checks passed
@jjonescz
jjonescz deleted the Unsafe-RemoteAttribute branch May 6, 2026 07:36
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Jun 5, 2026
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@jjonescz@EgorBo@am11@agocke@jkotas
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Remove [RequiresUnsafe] attribute usages - #127761

Merged
agocke merged 1 commit into
dotnet:mainfrom
jjonescz:Unsafe-RemoteAttribute
May 5, 2026
Merged

Remove [RequiresUnsafe] attribute usages#127761
agocke merged 1 commit into
dotnet:mainfrom
jjonescz:Unsafe-RemoteAttribute

Conversation

@jjonescz

@jjonesczjjonescz commented May 4, 2026

Copy link
Copy Markdown
Member

It won't be possible to be used in source with new compiler (dotnet/roslyn#83295). Specifically, it will result in

error CS9379: Do not use 'RequiresUnsafeAttribute' in source; use the 'unsafe' modifier instead.

Related to #125800 and dotnet/roslyn#81207.

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @dotnet/area-system-runtime-compilerservices
See info in area-owners.md if you want to be subscribed.

@EgorBo

Copy link
Copy Markdown
Member

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

CopilotAI reviewed May 4, 2026

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@am11

am11 commented May 4, 2026

Copy link
Copy Markdown
Member

error CS9379: Do not use 'RequiresUnsafeAttribute' in source; use the 'unsafe' modifier instead.

Will it be removed from source before .NET 11 release (and docs be deleted https://learn.microsoft.com/dotnet/api/system.diagnostics.codeanalysis.requiresunsafeattribute) or does this attribute serve some other purpose?

We can probably close the lid on #125904 and other enhancement plan concerning this attribute.

@jjonescz

Copy link
Copy Markdown
MemberAuthor

Will it be removed from source before .NET 11 release (and docs be deleted https://learn.microsoft.com/dotnet/api/system.diagnostics.codeanalysis.requiresunsafeattribute) or does this attribute serve some other purpose?

The attribute is still used by the compiler, it shouldn't be removed. However, it could be moved back to CompilerServices namespace.

@jjonescz

Copy link
Copy Markdown
MemberAuthor

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

Sounds like that might be better in a separate PR (can be merged before this one though) for simpler reviewing. Here it is: #127768

@agocke

Copy link
Copy Markdown
Member

Can we onboard to the new compiler at the same time? So it correctly prohibits the use?

@jjonescz

jjonescz commented May 5, 2026

Copy link
Copy Markdown
MemberAuthor

Can we onboard to the new compiler at the same time? So it correctly prohibits the use?

We could set the compiler version but that will be overwritten by next flow from dotnet/dotnet. Changing the infra to avoid that seems like an overkill. But once dotnet/dotnet#6291 is merged, the next roslyn update will contain the change. So I think it would be good to merge this here and you will get validation with the new compiler soon after.

@jjonescz
jjonescz marked this pull request as ready for review May 5, 2026 07:58
@jjonescz

Copy link
Copy Markdown
MemberAuthor

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

@am11

am11 commented May 5, 2026

Copy link
Copy Markdown
Member

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

It's mainly for the local dev, e.g. this wrapper script calls dotnet format would produce undesired diffs:

@EgorBo

Copy link
Copy Markdown
Member

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

I think code-fixers never run, analyzers do. And for code-fixers it's very complicated to run them against CoreLib, currently, that requires a bit of hacks

@agocke

Copy link
Copy Markdown
Member

We could set the compiler version but that will be overwritten by next flow from dotnet/dotnet

I don't believe we always use the compiler from the VMR. We can just override it.

@agocke

Copy link
Copy Markdown
Member

OK, I've taken a look and I think the workarounds for the VMR/source build aren't worth it. We can just proactively remove these.

@agocke
agocke merged commit e42458b into dotnet:mainMay 5, 2026
178 checks passed
@jjonescz
jjonescz deleted the Unsafe-RemoteAttribute branch May 6, 2026 07:36
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Jun 5, 2026
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@jjonescz@EgorBo@am11@agocke@jkotas
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Remove [RequiresUnsafe] attribute usages - #127761

Merged
agocke merged 1 commit into
dotnet:mainfrom
jjonescz:Unsafe-RemoteAttribute
May 5, 2026
Merged

Remove [RequiresUnsafe] attribute usages#127761
agocke merged 1 commit into
dotnet:mainfrom
jjonescz:Unsafe-RemoteAttribute

Conversation

@jjonescz

@jjonesczjjonescz commented May 4, 2026

Copy link
Copy Markdown
Member

It won't be possible to be used in source with new compiler (dotnet/roslyn#83295). Specifically, it will result in

error CS9379: Do not use 'RequiresUnsafeAttribute' in source; use the 'unsafe' modifier instead.

Related to #125800 and dotnet/roslyn#81207.

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @dotnet/area-system-runtime-compilerservices
See info in area-owners.md if you want to be subscribed.

@EgorBo

Copy link
Copy Markdown
Member

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

CopilotAI reviewed May 4, 2026

CopilotAI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@am11

am11 commented May 4, 2026

Copy link
Copy Markdown
Member

error CS9379: Do not use 'RequiresUnsafeAttribute' in source; use the 'unsafe' modifier instead.

Will it be removed from source before .NET 11 release (and docs be deleted https://learn.microsoft.com/dotnet/api/system.diagnostics.codeanalysis.requiresunsafeattribute) or does this attribute serve some other purpose?

We can probably close the lid on #125904 and other enhancement plan concerning this attribute.

@jjonescz

Copy link
Copy Markdown
MemberAuthor

Will it be removed from source before .NET 11 release (and docs be deleted https://learn.microsoft.com/dotnet/api/system.diagnostics.codeanalysis.requiresunsafeattribute) or does this attribute serve some other purpose?

The attribute is still used by the compiler, it shouldn't be removed. However, it could be moved back to CompilerServices namespace.

@jjonescz

Copy link
Copy Markdown
MemberAuthor

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

Sounds like that might be better in a separate PR (can be merged before this one though) for simpler reviewing. Here it is: #127768

@agocke

Copy link
Copy Markdown
Member

Can we onboard to the new compiler at the same time? So it correctly prohibits the use?

@jjonescz

jjonescz commented May 5, 2026

Copy link
Copy Markdown
MemberAuthor

Can we onboard to the new compiler at the same time? So it correctly prohibits the use?

We could set the compiler version but that will be overwritten by next flow from dotnet/dotnet. Changing the infra to avoid that seems like an overkill. But once dotnet/dotnet#6291 is merged, the next roslyn update will contain the change. So I think it would be good to merge this here and you will get validation with the new compiler soon after.

@jjonescz
jjonescz marked this pull request as ready for review May 5, 2026 07:58
@jjonescz

Copy link
Copy Markdown
MemberAuthor

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

@am11

am11 commented May 5, 2026

Copy link
Copy Markdown
Member

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

It's mainly for the local dev, e.g. this wrapper script calls dotnet format would produce undesired diffs:

@EgorBo

Copy link
Copy Markdown
Member

This PR should probably also remove the analyzers/codefixer as well, otherwise dotnet format in our repo will bring them back

@EgorBo is this dotnet format not running in CI? Because I don't see any errors from it.

I think code-fixers never run, analyzers do. And for code-fixers it's very complicated to run them against CoreLib, currently, that requires a bit of hacks

@agocke

Copy link
Copy Markdown
Member

We could set the compiler version but that will be overwritten by next flow from dotnet/dotnet

I don't believe we always use the compiler from the VMR. We can just override it.

@agocke

Copy link
Copy Markdown
Member

OK, I've taken a look and I think the workarounds for the VMR/source build aren't worth it. We can just proactively remove these.

@agocke
agocke merged commit e42458b into dotnet:mainMay 5, 2026
178 checks passed
@jjonescz
jjonescz deleted the Unsafe-RemoteAttribute branch May 6, 2026 07:36
@github-actionsgithub-actionsBot locked and limited conversation to collaborators Jun 5, 2026
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@jjonescz@EgorBo@am11@agocke@jkotas