Live data from Hacker News

Sqlite3 WebAssembly

sqlite.org

191–200 of 200 posts

Re: Sqlite3 WebAssembly

#191

Earlier quoted context omitted.

I don't think there will ever be a package manager dictated by the Ecmascript standards.

Then ES will continue to remain an outlier among major language implementations

what package manager is dictated by the C, C++, Common Lisp, Ruby, Prolog, Pascal... any language's standard?

I am struggling to think of a single standardized language whose standard defines the package manager

Re: Sqlite3 WebAssembly

#192

Earlier quoted context omitted.

Litestreams how-we-did-this to says they take a lock on the whole db during checkpoints to work, so I don't see why shared would be needed. Seriously bro, take a massive chill pill. You have been way overcommitted to the "it's all impossible!!! How stupid to imagine! If only you were smart like me you'd see everything is impossible!" bit way too hard. Take a breather from your possessed absolute self certainty & dero…

I'm chill bro. Still waiting for your productive couple of weekends. But that'll require more than looking at docs reading the words "lock" and "shared" and assuming you know what those mean.

You've been wrong about how some of these replications work, you've been wrong about why the WAL doesn't work, and you still insist on being a pompous rude brat here? You have not been chill.

Re: Sqlite3 WebAssembly

#193

Earlier quoted context omitted.

I'm chill bro. Still waiting for your productive couple of weekends. But that'll require more than looking at docs reading the words "lock" and "shared" and assuming you know what those mean.

You've been wrong about how some of these replications work, you've been wrong about why the WAL doesn't work, and you still insist on being a pompous rude brat here? You have not been chill.

Litestream is out of process, requires shared memory WAL, doesn't work with exclusive mode WAL, wouldn't work work on Wasm.

LiteFS didn't support WAL mode initially, now does. The Wasm version doesn't support WAL mode at all.

mvSQLite doesn't support shared memory WAL. SQLSync doesn't support WAL at all.

Browser Wasm builds either don't have WAL enabled, or don't support shared memory WAL.

These replications are VFSes or FUSE drivers, and for those, it's much easier to work with rollback mode than WAL, especially if you don't want concurrency (or intend to provide concurrency through other means, like optimistic concurrency).

In open source, only Turso actually did a VFS to replicate the WAL. They had to break SQLite so much they call it libSQL. It also requires shared memory as is, would be hard (if possible) to port to Wasm.

Please, do take the challenge and build this. It will be much appreciated.

I've been asking the Turso guys to document their thing for a year, with little success. They have the interface (which just opens up undocumented internal SQLite interfaces), with no open source samples of how to use it (except a logger), and zero additional docs.

Re: Sqlite3 WebAssembly

#194

Earlier quoted context omitted.

Then ES will continue to remain an outlier among major language implementations

what package manager is dictated by the C, C++, Common Lisp, Ruby, Prolog, Pascal... any language's standard? I am struggling to think of a single standardized language whose standard defines the package manager

Languages should make it easy to use third party pieces directly, without a package manager. People actually do that, and so that status quo is maintained; any increment in the difficulty of constructing programs out of components will result in loud protests.

Package managers are an anti-pattern. When the standard package manager is present, the packaging problem is regarded as solved ("just use the package manager"), and so the actual mechanisms underlying program construction are then out of the negative feedback loop and will rot.

Re: Sqlite3 WebAssembly

#195

Earlier quoted context omitted.

what package manager is dictated by the C, C++, Common Lisp, Ruby, Prolog, Pascal... any language's standard? I am struggling to think of a single standardized language whose standard defines the package manager

Languages should make it easy to use third party pieces directly, without a package manager. People actually do that, and so that status quo is maintained; any increment in the difficulty of constructing programs out of components will result in loud protests. Package managers are an anti-pattern. When the standard package manager is present, the packaging problem is regarded as solved ("just use the package manager"…

Somewhat confused by this statement, I'm having trouble thinking of a language where it's hard to consume code without a package manager...

Re: Sqlite3 WebAssembly

#196

Earlier quoted context omitted.

Languages should make it easy to use third party pieces directly, without a package manager. People actually do that, and so that status quo is maintained; any increment in the difficulty of constructing programs out of components will result in loud protests. Package managers are an anti-pattern. When the standard package manager is present, the packaging problem is regarded as solved ("just use the package manager"…

Somewhat confused by this statement, I'm having trouble thinking of a language where it's hard to consume code without a package manager...

[deleted]

Re: Sqlite3 WebAssembly

#197
post #120
post #46

Earlier quoted context omitted.

Is there a way to statically compile an application with SQLite and the result WASM was smaller. So for example I have an app that would use only a specific subset of SQLite. Could the SQLite's WASM be built with this in mind cutting down on code that is not used? Or is there a way to prune it having the used API surface? In a regular compiler/linker scenario it would just be a static compilation. Here we have a JS a…

> Could the SQLite's WASM be built with this in mind cutting down on code that is not used? The pending 3.47 release has some build-side tweaks which enable a user to strip it down to "just the basics," but we've not yet been able to get it smaller than about 25-30% less than it otherwise is: cd ext/wasm make barebones=1 ; # requires GNU Make and the Emscripten SDK Doing that requires building it yourself - there are…

Correction:

    make barebones=1 ; # requires GNU Make and the Emscripten SDK
should be:

    make oz barebones=1 ; # requires GNU Make and the Emscripten SDK
otherwise it will build with -O0, resulting in huge wasm files.

Re: Sqlite3 WebAssembly

#198

Earlier quoted context omitted.

Languages should make it easy to use third party pieces directly, without a package manager. People actually do that, and so that status quo is maintained; any increment in the difficulty of constructing programs out of components will result in loud protests. Package managers are an anti-pattern. When the standard package manager is present, the packaging problem is regarded as solved ("just use the package manager"…

Somewhat confused by this statement, I'm having trouble thinking of a language where it's hard to consume code without a package manager...

Imagine a world where your language’s package manager became a company that basically offered “Package Management as a Service”. How effective do you imagine that would be?

Re: Sqlite3 WebAssembly

#199

Earlier quoted context omitted.

I'm chill bro. Still waiting for your productive couple of weekends. But that'll require more than looking at docs reading the words "lock" and "shared" and assuming you know what those mean.

You've been wrong about how some of these replications work, you've been wrong about why the WAL doesn't work, and you still insist on being a pompous rude brat here? You have not been chill.

TBF, to this bystander ncruces isn't the one of the two of you who is coming off as more of "a pompous rude brat".

Re: Sqlite3 WebAssembly

#200
post #104

Earlier quoted context omitted.

Yeah I’ve been waiting awhile for this myself. A few PRs with work pending for a year or so. I’ve seen some proof of concepts but nothing anywhere close to usable.

you should check out https://github.com/xmtp/diesel-wasm-sqlite reliable so far, being dogfooded in production as we speak

Sorry just saw this. Looks promising, I love diesel! Haven’t looked at the landscape in a few months and don’t work on the project that needed it anymore but very cool to see. Even uses OPFS!
Post reply on HN