Sneedforo

  • 🐕 I am attempting to get the site runnning as fast as possible. If you are experiencing slow page load times, please report it.
We had an issue recently where a moderator merged together a bunch of threads, and that led me to think about how I could make that action reversible in the new software. Following that train of thought I realized that revision history differences are something pretty important, available in XF2, but also probably very easy to implement due to the abundance of diff libraries in every language. So I set out to do that today just because.

1657135228184.png1657135240088.png1657135249142.png

It went Chuck -> Sneed -> Sneed 2, so you can see the differences between the three when comparing A to C and A to B. I need to make it so that you can revert to a previous item and tidy it up a bit but I'm satisfied by this little progress.

It also highlighted code that is repeated across the application for fetching user information. It's shared between a few entities now and it needs to be unified and kept clean. I'll look at that soon.

This is probably the first thing I've done explicitly for the forum and not just chat in a while. I also got error messages to render correctly, finally.

1657135373612.png
 
Is the git publicly available? I can't reach it.
 
what i wrote:
what_i_wrote.png

what i got:
what_i_got.png

first commits in over a year
commits.png


One of the major blockers in moving forward with the software before was the importance, complexity, and lack of existing Rust crates for ffmpeg, and the existing ones tend to try to compile the entire codebase of ffmpeg into your Rust binary, so I couldn't use that.

I resolved last week to actually work on this so I bit the bullet and just went with command execution for ffprobe. The issue then becomes that Rust (and, really, computing in general) has no good way of figuring out what the fuck a file is. So I'm sort of writing my own strict mimetype implementation because I have a lot, a lot, a lot of grievances with how XenForo handles attachments and the only way to adequately deal with that is to deal with it myself.

So I've easily written 1000, maybe 2000 lines of code.

The end result is that now there's a pipeline for uploading a file, having it checked for existence in the database, having it checked on the S3 compatible object_store, storing it if necessary, and then earmarking the file with its mime type as a best guess. This is a lot of the hardest work out of the way and ready to be expanded upon.
 
Thank you, Null. I knew having this thread watched would eventually pay off! Hail Sneedforo!
 
  • Like
Reactions: Tealeaf
Nice, it's getting closer and closer to not being vaporware. I still wonder how pentesting would be dealt with to make sure it's as safe as it can be before it gets deployed once it's feature complete.
 
what i wrote:
View attachment 5931414

what i got:
View attachment 5931413

first commits in over a year
View attachment 5931412


One of the major blockers in moving forward with the software before was the importance, complexity, and lack of existing Rust crates for ffmpeg, and the existing ones tend to try to compile the entire codebase of ffmpeg into your Rust binary, so I couldn't use that.

I resolved last week to actually work on this so I bit the bullet and just went with command execution for ffprobe. The issue then becomes that Rust (and, really, computing in general) has no good way of figuring out what the fuck a file is. So I'm sort of writing my own strict mimetype implementation because I have a lot, a lot, a lot of grievances with how XenForo handles attachments and the only way to adequately deal with that is to deal with it myself.

So I've easily written 1000, maybe 2000 lines of code.

The end result is that now there's a pipeline for uploading a file, having it checked for existence in the database, having it checked on the S3 compatible object_store, storing it if necessary, and then earmarking the file with its mime type as a best guess. This is a lot of the hardest work out of the way and ready to be expanded upon.
work smarter, not harder
Gamble, idiots
1713903950676.png
 
Nice, it's getting closer and closer to not being vaporware. I still wonder how pentesting would be dealt with to make sure it's as safe as it can be before it gets deployed once it's feature complete.
I bet we would find many unpaid volunteers willing to do some dilation penetration testing.
 
  • Agree
Reactions: y a t s
Maybe because you are writing a WEBSITE in RUST you fucking freak
You deserve to suffer

also
>VScode
enjoy your electron pajeet-trannyware, you will be calling yourself Jessica long before this project is finished
 
Last edited:
Where is the repository at? I can only see the repo with the commit about ffmpeg and libclang in 2023 but no 2024 commits. I wanna contribute like I did back in 2022.
 
Maybe because you are writing a WEBSITE in RUST you fucking freak
You deserve to suffer

also
>VScode
enjoy your electron pajeet-trannyware, you will be calling yourself Jessica long before this project is finished

I mean, at least it's not PHP. Which is ironic, because if this was a couple years back I'd definitely be concerned if it was PHP.
Fortunately, PHP is no longer as shit as it once was.

Where is the repository at? I can only see the repo with the commit about ffmpeg and libclang in 2023 but no 2024 commits. I wanna contribute like I did back in 2022.

I believe it went down over all the mess that was the #dropkiwifarms saga.
 
I mean, at least it's not PHP. Which is ironic, because if this was a couple years back I'd definitely be concerned if it was PHP.
PHP just works
making a copy of XenForo in Symfony or Laravel would take two weeks at the very most
 
  • Thunk-Provoking
Reactions: y a t s
Back