free-vscode-csharp
sqlx
free-vscode-csharp | sqlx | |
---|---|---|
17 | 155 | |
207 | 15,567 | |
5.3% | 2.6% | |
9.8 | 9.2 | |
17 days ago | 2 days ago | |
TypeScript | Rust | |
GNU General Public License v3.0 or later | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
free-vscode-csharp
-
Kotlin-Lsp: Kotlin Language Server and Plugin for Visual Studio Code
The debugger is proprietary but still works cross-platform. I don't know how Jetbrains does C# debugging in Rider exactly, but that shows that you don't have to use VS (Code) to do C# development if you don't want to.
Thanks to Samsung of all companies, there's an open source C# debugger on GitHub (https://github.com/Samsung/netcoredbg). That seems to be the basis of the open source C# extension's debugging capabilities: https://open-vsx.org/extension/muhammad-sammy/csharp
The VSCodium C# community wants Microsoft to open source their debugger instead of having to maintain an open source version themselves, but that doesn't mean you need to use Microsoft's open source version. If anything, this forceful separation makes it so that there never will be only one implementation (like there is for languages like Rust which have always been open and therefore only have one way of doing things).
- OpenVSX, which VSCode forks rely on for extensions, down for 24 hours
- Tell HN: Microsoft bans its extensions from Cursor?
-
Mozilla fixes Firefox zero-day actively exploited in attacks
If you don't like XAML, you can use https://github.com/AvaloniaUI/Avalonia.Markup.Declarative to write declarative SwiftUI-like code. You can also use F# if that's your cup of tea: https://github.com/fsprojects/Avalonia.FuncUI.
If you prefer GTK, there are rich GObject bindings that are a successor to GTK#: https://gircore.github.io/
Here are samples that demonstrate basic GTK4 usage scenarios: https://github.com/gircore/gir.core/tree/main/src/Samples/Gt...
All this should require less than 10 minutes including setup and such.
Lastly, I want to make a disclaimer that you do not need C# Dev Kit extension for VS Code, only the base C# one, which is what gives you language server, debugger, etc. If you are using VSCodium which cannot use closed-source vsdbg component that the base extension uses, you can replace it with https://github.com/muhammadsammy/free-vscode-csharp which uses open-source debugger from Samsung instead. It can be rough around the edges but works well enough in standard scenarios. Just don't use Debugger.WriteLine over Console. :D
-
Visual Studio Code is designed to fracture
C# extension works well and uses Roslyn Language Server that is part[0] of the Roslyn (C# compiler) - this is what the base C# extension[1] uses. Both of these are licensed under MIT.
The only closed-source component is 'vsdbg' which is Visual Studio's debugger shipped as a component that the extension uses. It, however, can be replaced with Samsung's 'NetCoreDbg' by using the extension fork[2].
[0]: https://github.com/dotnet/roslyn/tree/main/src/LanguageServe...
[1]: https://github.com/dotnet/vscode-csharp
[2]: https://github.com/muhammadsammy/free-vscode-csharp
-
Rust panics under the hood, and implementing them in .NET
> I spent way too long trying to get netcoredbg to work, and couldn't get it to do much of anything. Maybe it's less of a shitshow now? Given that your original reply wasn't "yeah nobody uses the MS debugger anyway", I somehow doubt it.
This got me curious. Turns out there exists an actively maintained fork of the official C# extension that comes with NetCoreDbg instead: https://github.com/muhammadsammy/free-vscode-csharp
I was able to successfully debug simple async code with it after installing the vsix, disabling the official one and restarting VS Code without changing any other settings.
So, for the trivial case it works. Submitted issues do indicate further compatibility problems like not supporting "Debug.Write" methods (just use a logger or Console.Write I guess?) or instability when bridging this extension to something that isn't VS Code.
Still, someone even managed to get it to work with Cursor: https://github.com/dgokcin/dotnet-cursor-debugging-with-brea...
> For comparison, Scala and Rust have cultures that emphasize printf-friendliness, and I rarely have to reach for a debugger at all. The difference it makes for my sanity is immense (as someone who wasted years on the shitshow that is .NET).
This is the first time I hear someone tout print-based debugging as an advantage. The approach F# takes with printfn "%A" might be more to your taste. Otherwise, DebuggerView and DebuggerDisplay are there for a reason, and I don't understand the case for not using a debugger. And when you do insert WriteLines, or logger writes, there are many tools to make the output pretty. Making a simple extension method that will do indented JsonSerializer.Serialize is already a start. Records also come with default ToString implementation.
-
A new F# compiler feature: graph-based type-checking
I only tried F# for few days, but it was a pleasant experience on both macos and linux.
dotnet CLI should take care of build process, it can even generate self-sufficient executable (that bundle parts of .NET in them). The infamous required XML boilerplate has also been cut down to near-zero.
My biggest gripe is that Microsoft's debugger is closed-source and proprietary (though free for users of official VSCode builds). There is open-source netcoredbg by Samsung, so you can use VSCod[e,ium] with https://open-vsx.org/extension/muhammad-sammy/csharp , but YMMV.
-
Open source debugger?
When looking into C# tools though, my understanding is that the main debugging tool is under a proprietary MS license, although maybe I'm misunderstanding that. My question is, is there a FOSS debugger or tool kit for C# development? I did find this on the marketplace but am not sure if this is what I'm looking for. I know this is a bit of a niche case but was hoping to clarify. I'm not committed to VSCodium and am open to other text editors/IDEs, although would prefer to stick with it if possible.
-
Proprietary Environments are a Trap
My understanding is that I can install VSCodium and that they have many of the most popular extensions available. They even seem to have an alternative for the C# debugger. I could also use VSCodium and manually install the Microsoft extensions from the distributed VSX files.
-
Is .NET open? MS pushing a proprietary extension to replace OmniSharp
and there is a VSCode extension that uses this instead of the MS debugger
https://open-vsx.org/extension/muhammad-sammy/csharp
sqlx
-
SQLx – The Rust SQL Toolkit
// https://github.com/launchbadge/sqlx/issues/367#issuecomment-...
-
You Probably Don't Need Query Builders
Because type correctness does not imply branch correctness. SQL has side effects of interpretation, and any string/query builder that is not aware of grammatical implications should be avoided in my opinion.
Check the query builder of sqlx [1]
[1] https://github.com/launchbadge/sqlx/blob/main/sqlx-core/src/...
-
Serverless semantic search - AWS Lambda, AWS Bedrock, Neon
For DB schema and migrations, I use sqlx-cli.
-
First Impressions of AWS DSQL with Lambda and Rust
I tend to default to as few as possible, which is why when working with SQL and Rust, I almost always reach for SQLx. Setting up SQLx with AWS DSQL requires using the v4 Signature signing of my credentials as fetched from my AWS configuration. I do this work in my main function so that I can reuse the Postgres Pool in my handler without having to establish this connection outside of the Cold Start initializing cycle. That setup is reflected in the below code.
-
Sqlc: Compile SQL to type-safe code
This looks like a less ergonomic version of Rust's SQLx (https://github.com/launchbadge/sqlx) but a more robust version of TypeScript's sqlx-ts (https://jasonshin.github.io/sqlx-ts/). Sqlc seems to copy the latter's unfortunate lack of inline SQL statements. Still, seems promising.
-
Build your own SQLite with Rust, Part 1
SQLx seems to do some form of this. though what you're suggesting may remove the build time dependency on "connecting" to a SQLite database.
"SQLx supports compile-time checked queries. It does not, however, do this by providing a Rust API or DSL (domain-specific language) for building queries. Instead, it provides macros that take regular SQL as input and ensure that it is valid for your database. The way this works is that SQLx connects to your development DB at compile time to have the database itself verify (and return some info on) your SQL queries."
https://github.com/launchbadge/sqlx
- SQLx: Async, pure Rust SQL crate, compile-time checked queries without a DSL
-
A tale of TimescaleDB, SQLx and testing in Rust
For PostgreSQL, the most relevent part of the code is here. With this in mind I changed some things around to rely on schemas instead of databases and even simplified some parts of the implementation as this was always meant to be for internal use only..
-
Rust as a general application language
What exactly are you missing? I haven't really written "boring corporate backend stuff" in a few years but something like sqlx provides everything I've ever needed there.
-
Hey Rustaceans! Got a question? Ask here (49/2023)!
Badges are the little rectangles you typically see at the top of a crate's README: https://github.com/launchbadge/sqlx/blob/main/README.md
What are some alternatives?
vscode-csharp - Official C# support for Visual Studio Code
mysql-proxy-rs - A highly scalable MySQL Proxy framework written in Rust
code-debug - Native debugging for VSCode
rds_iamauth_proxy - Postgres proxy which allows tools that don't natively supports IAM auth to connect to AWS RDS instances.
vscode-clangd - Visual Studio Code extension for clangd
sea-orm - 🐚 An async & dynamic ORM for Rust