#hangar-contrib

1 messages · Page 2 of 1

lofty comet
#

(I'd still not manage to easily create a full project from the ground up using vue, luckly almost everything is already done here)

raven kayak
#

are you planning on making the rest also collapse?

lofty comet
#

but I def. LOVE v-if, etc. in components... god that's better than how svelte does it

lofty comet
#

should literally be easy, just gotta change like 2 lines

#

since I created a CollapsibleCard component

#

and they use the normal Card component

#

just gotta switch that, and provide a "title" and done

#

can do that now

lofty comet
#

Search is so fast now that I think it's better to remove the skeleton lmao, it causes more harm than good rn

raven kayak
#

I find the minecraft versions list look a bit weird..?

hushed flower
#

I see it too

#

I think the fix is to use a light gray rather than the big horizontal triangle and try to align them vertically

lofty comet
#

That whole version list will be rewritten xd

#

Like shown here @hushed flower @raven kayak

timid briar
# lofty comet

PLEASE align platforms with the projects and not the title of projects

raven kayak
lofty comet
#

Sort and Layout buttons are gonna come there

#

(Top right of the project list)

jovial lintel
#

That's type shit, I hate it with a passion, dum typed pages shit

#

I think I thought about that when I did the search, it technically supports it I think but it really makes no sense, I would keep it as radio

#

Especially if you consider platform version filter shit

#

Not much but not irrelevant

#

Tablet as always is irrelevant

jovial lintel
#

But I am not sure there is an easy way to do that rn, but I wanna redo data fetching anyways, sooo

#

I think I caught up now

#

I too like the monochrome platform logos more than the random colors

lofty comet
lofty comet
timid briar
lofty comet
timid briar
#

moto g9 plus
but i have set it to some incredibly high resulution because i am weird and i like small things

lofty comet
#

lol

#

hmmm might need to change some stuff in lang files

#

like changing (clear) to Clear All or something

lofty comet
#

Hmm idk how I feel about it (both the method and red color)

ebon knoll
lofty comet
jovial lintel
jovial lintel
jovial lintel
lofty comet
lofty comet
lofty comet
jovial lintel
#

Oh, that seems dum, seems even more relevant for the others, no?

#

And I think it's too prominent, plus the layout shift is meh

lofty comet
#

I have an idea which might somewhat fix it it, idk

#

Will test

jovial lintel
#

Wait it clears all filters?

#

Idk I would add a way to clear stuff for any box

#

We can do more fun stuff too, like a pill thing where you can clear stuff

#

I guess we already have pills for the sorters

jovial lintel
#

mfw I rollback staging to master and it still dead locks

#

whhyyyyyyy

lofty comet
jovial lintel
#

no I meant all filters should have a way to clear, then its consistent

lofty comet
#

ah yes

#

I agree

jovial lintel
#

like, I don't hate the current (clear) thing we have, just needs to look a bit nicer I guess

#

or maybe just an icon is enough

jovial lintel
lofty comet
#

and rip backend died again

jovial lintel
#

ye bun downgrade didnt change anything, i am at a loss

#

disabled frontend again

lofty comet
#

hella weird behaviour

#

if the problem is the frontend, wouldn't me hosting the frontend locally and using staging backend also cause problems?

jovial lintel
#

idk what the problem is

#

there are many different variables compared to your local env, its build, its running bun, etc

#

I just know that the backend works, then I reload the not loading frontend 10 times and then the backend thread pool is full

#

while the actuator, running on a different port, still works fine

lofty comet
pallid tulip
#

how about a broom

lofty comet
#

also visible when collapsed

fathom girder
#

Or just a clear?

lofty comet
lofty comet
pallid tulip
#

grey text would be nice

lofty comet
#

and I shall get back to you

pallid tulip
#

like Clear in grey

#

it doesn't stand out and its clear (lol) what it does

lofty comet
#

text clutters it way too much and places where the "title" is bigger than Platforms, it would mess with the whole ui

pallid tulip
#

hmm thats true

lofty comet
#

@ mini?

pallid tulip
#

do you use bootstrap icons?

lofty comet
#

mdi

#

there is a icons.d.ts generated file

#

but no idea from where it is being generated

#

oh okay it auto imports

#

broom does look a bit better

#

yeah way better

lofty comet
#

make sure people understand what it does

#

(also redesigned tooltips a bit)

#

another example for tooltips

#

now... I think I am just gonna skip the mc version filter

#

cause that one gonna give me headaches

#

so gonna do categories first

jovial lintel
#

Looking good

lofty comet
#

hmm any ideas how I'd fix the tooltip component for this issue?

jovial lintel
#

Not without toying with it myself

#

I hate the tooltip code anyways

#

But iirc apple is still slacking on the new tooltip API

#

But of course safari doesn't implement it yet

candid thicket
jovial lintel
#

No hover?

#

What browser?

lofty comet
#

Plus you can judge the code more 🙂

lofty comet
#

@jovial lintel pushed all changes up until now, also double check if I used nuxt/fonts correctly, I am not 100% sure

lofty comet
#

PS while at it, any ideas on the best way to approach the version list? aka make it a flat list of versions that can be sorted between major versions only and all while also being searchable

#

ALSO, is it worth making the categories a scrollable list and be searchable? Aka do you plan to add more categories? Cause atm, I guess it's fine how it looks

fathom girder
#

whack that there is no preview

#

for the categories maybe display the 10 most used categories and add an "expand" button that shows all categories

candid thicket
lofty comet
lofty comet
#

something with github actions or smt

lofty comet
#

Switched this to here but idk how I feel about it, had to change it cause when clearing, it was also collapsing the card which kinda sucked

jovial lintel
#

Lame

jovial lintel
#

Might be worth since it's a long running branch, idk how easy it would be to only deploy the frontend

candid thicket
jovial lintel
jovial lintel
#

Actually, no, it's properly merged, idk why mdn claims it's experimental

#

No excuses then

#

Same for webkit

#

They just slacking

#

Recent spec development has been so cool to follow

#

Like, the reason they are thinking about the popovers and the interest invokers and shit is because it's something nearly every website uses, everybody does it differently, it's all a bunch of code they ship, most don't work on mobile, most aren't accessible, so UAs stepping in to standardize this to make the web better for everybody is so nice to see

lofty comet
lofty comet
jovial lintel
lofty comet
#

Ah okay, me not informed soo yeah

#

but I'd say it could be beneficial since I could get feedback straight away (regarding the preview)

lofty comet
#

thoughts on showing the amount selected?

#

idk if I only show it on hover or always display

#

kinda how it looks

raven kayak
#

don't like that

lofty comet
#

showing the number overall or just the showing it constantly

devout trail
#

I feel the number can be in the "Categories" rather than the button

pallid tulip
devout trail
#

Yep

lofty comet
lofty comet
jovial lintel
#

What value does it bring?

#

It seems weird to me too

lofty comet
#

Showing it when not collapsed is useless yeah

jovial lintel
#

Oh mmh

#

The exact count doesn't matter, since it doesn't convey anything useful, what's important is to know that filters are active

#

So maybe just then show the button or only then give it color

#

Like a disabled state

lofty comet
#

To clear? It already only shows only when selected

#

If that's what u mean

jovial lintel
#

Ah nice

lofty comet
#

Going back to saarbrucken now but I finally set up dev stuff in my laptop so can work there too

#

Gotta continue with my hangar streak

#

Challenge: Finish redesign before mini finishes private channels

lofty comet
#

hmm interesting, just discovered a weird bug, clear button does not show if you get redirected to an url with a filter

#

like URL/velocity

#

and it fully breaks when you do that too

#

so you can switch between platform filters still

#

but the clear button simply does not show

#

but yk.... what are the chances someone intentionally breaks it like that....

#

easy fix: Remove the links that redirect to that page

#

well actually, why does a slightly different page exist for /velocity, etc?

#

like, th

#

bug is caused by not having params in the url I think

lofty comet
#

Anyways, finally some progress on version selector, but still gotta implement clearing, searching and showing subversions

#

(gotta love compression)

lofty comet
# jovial lintel SEO

Sooo, do I NEED to fix it? Can't it jhst redirect? I guess SEO wouldnt work then

#

Or simply just applying the platform param in the url might work

jovial lintel
#

Why doesn't it work rn?

lofty comet
# jovial lintel Why doesn't it work rn?

my guess is because /velocity does not have the platform param?

Essentially, if you go to /velocity for ex., it auto selects velocity in the platform filter, but the clear button is not shown. And it keeps not showing after you manually switch the platform filter.

#

Hence why my guess is the platform param, it somehow is not detecting that a platform is selected

#

this is one of those cases where having a preview would be useful

#

do you want me to send a gif to show how it looks?

lofty comet
#

Uhm, if I am in the same network as my desktop, and I host in localhost, I can access it on my phone right? This sounds like such a stupid question and that I should probably know the answer for it lol

pallid tulip
#

yes

#

but on your phone it shouldnt be localhost but rather your desktop LAN ip

outer kettle
lofty comet
#

Which can only be properly tested in the device itself

knotty verge
timid briar
#

potentially no versions uploaded / retroactively deleted

lofty comet
#

is there a reason you simply only update the project list once data is ready to be rendered?

#

wouldn't need a skeleton

#

(which atm is doing more harm than good)

#

Something like this?

PS: Noticed this on prod but here it's more noticeable, it seems like when switching platform, the page is refreshed twice really quickly? Making it look a bit weird

#

aaand just found another bug... it appears when I clear the platform filter, nothing is displayed?

#

bit weird

#

OH wait, it appears the issue is because version is not unselected and stays in the url params, which breaks it

#

wonder if prod also has that

#

okay it does XD

lofty comet
# lofty comet Something like this? PS: Noticed this on prod but here it's more noticeable, it...

There is also this version that merges both skeletons and transition, which still sucks a bit imo, since it still shows the skeletons for a bit, but in case the search takes more than half a second, then the page would look empty which is also not ideal... unless I somehow add a delay for skeletons to show? Aka if the page stays in loading state for over a second then it enables skeletons? idk

#

Please lmk asap of thoughts 🙂

outer kettle
#

Yeah for sure, the loading indicators and skeletons shouldn’t pop up immediately but only after a little bit, that sort of disappeared after the nicer skeletons were added

#

There should be a bunch of blog posts on what a good delay before that is, it also had a specific name that I forgot

lofty comet
jovial lintel
#

no clue why it still shows up, the full meili index is rebuild frequently

#

oh wait maybe the job crashed again

#

fixed

#

not crashed but it was listed as started

#

so I guess the pod died while it was running that job?

#

no clue how to better handle that, maybe I need to detect if state = started and last_updated > 1d or something

#

anyways, thanks @knotty verge

lofty comet
#

uhm... think staging backend is down again?

#

yup getting timeouts xD

jovial lintel
#

Urg, right, I dared to push a commit

lofty comet
#

to the frontend?

jovial lintel
#

Will fix later

lofty comet
#

okok, ping me when you do so that I can continue testing

jovial lintel
#

@lofty comet fixed

lofty comet
#

PS: I added artificial throttling to show these, it has a 800ms delay

#
const showSkeletons = ref(false);
let loadingTimeout: ReturnType<typeof setTimeout> | null;

watch(() => props.loading, (isLoading) => {
  if (isLoading) {
    loadingTimeout = setTimeout(() => {
      showSkeletons.value = true;
    }, 800);
  } else {
    showSkeletons.value = false;
    if (loadingTimeout) {
      clearTimeout(loadingTimeout);
    }
  }
});

let me know your thoughts on this approach (kinda copied from a blog post)

fathom girder
#

idk if i like 3 different animations for loading.

lofty comet
#

There is only the animation when the data is ready

#

and skeletons if it takes more than 800ms to get ready (if you consider that an animation)

fathom girder
lofty comet
# fathom girder

oh yeah, honestly didn't even notice those, yeah I agree that those top ones should not exist

fathom girder
#

just the grey thing should stay

lofty comet
#

rotating one should only be used for content loading (like videos or whole page), and bars should only be used when it's confirmed it's going to take longer than 1-2s

#

skeletons are the best way of loading screen without giving the user the impression it took much time

#

now just gotta find out where th those are located in the files xD Found it and removed it!

jaunty cedar
#

Not really sure where to put this.
is this intended to be repetitive like this instead of something like csv or is it a visual bug?

lofty comet
#

Hmm interesting

#

I am not sure how it is handled but I think it might be a bug

#

You will probably have to wait till tmr for mini to see this

fathom girder
#

i think thats supposed to be

#

but im not 100% sure

#

just a quick search (i went to the first stackoverflow page and checked the accepted answer) how spring handles it shows this behavior.

jaunty cedar
#

also that endpoint is checking if the apikey has those permissions for THAT project/org correct?
Because it is returning true for other repos i dont have permission access to

lofty comet
#

in this case, 3 params named permissions exist

lofty comet
#

you can have it, but depending on the framework, they handle it differently

#

but the standard for multiple params with the same name is to just use a single one with an array

#

aka a string split by ,

#

either way, really weird, better wait for mini/kenny to see this

lofty comet
fathom girder
#

Well just test it out?

lofty comet
#

yeah ig

fathom girder
#

How does the frontend send the request?

lofty comet
#

speaking to me or silent?

#

I am way too tired to be able to say anything useful sooo

#

just gonna head to bed

jaunty cedar
#

I tested it by sending the requests manually. It appears to actually work like as described with multiple permissions params. Which i feel like its weirder than just having csv or similar.
Either way its returning true when i ask if i have permission for edit api keys for a repo i clearly dont have access to

fathom girder
#

Yeah I just checked more sites and that’s how it is it seems

#

I wonder why they didn’t use a post method in this case

lofty comet
#

Is it worth adding the "search" bar for the versions or is this enough?

#

hmm this is a problem... (Having "Platform versions" as name takes too much space

fathom girder
timid briar
lofty comet
#

show all versions button is intended to be used by those who want a specific version, I'd presume most people do not care about that

lofty comet
fathom girder
#

You asked for input lol

lofty comet
#

meanwhile gotta figure out why th filters.versions = [] doesn't visually clear selections

lofty comet
#

xD

lofty comet
scarlet lily
lofty comet
#

Probably not intended

#

But it 100% should

lofty comet
#

idk who put this in the VersionSelector file but yeah... not gonna touch it either haha

#

okay god this code indeed is a mess

#

and will be hard to fix some extra issues

#

like the fact it does not support a "clear" button

#

well

gleaming iris
#

Sometimes the best solution is to rm -rf

lofty comet
#

that would include rewriting it

#

which still does not sound ideal

lofty comet
#

aaaaaaahhhhh

#

god this feels like hell

#

where is mini, I wanna throw this rock at him so he can fix it

jaunty cedar
grand goblet
#

Oh wait I see

#

I thought they were different endpoints

jaunty cedar
grand goblet
grand goblet
lofty comet
#

@fathom girder gud?

#

(ignore weird colors due to compression)

fathom girder
#

I like it

lofty comet
#

W

#

just gotta replicate it for Categories, which should be fairly easy

#

then will start working on changing the sorters to the dropdown

#

then maybe work on different layouts for the list display

#

and maybe ( @ mini thinks that's okay) add a way to choose how many entries to display per page

#

although both layout and amount of entries per page should be stored in the DB

#

sooo, that's backend stuff

#

aka mini stuff, idk if he wants it

lofty comet
#

I set the height to a fixed size cause if I were searching, it would change the height constantly which would suck

outer kettle
#

Fixed height looks good

outer kettle
lofty comet
#

Gonna try to work on the layout stuff this week

#

Just waiting for mini to say something

#

Since it will kinda need some new stuff in the DB I'd say

timid briar
#

on the paper docs there is a site dedicated to the art assets
i was wondering what the licensing on hangar art assets is since they are not covered explicitly on that page

lofty comet
#

Currently not at home but any ideas how dark/light mode preferences are stored in Hangar? Localstorage?

fathom girder
#

In the cookie iirc

#

Or was that only for anonymous users?

lofty comet
#

which gets theme data from the db

#

for anonymous users it does use cookies

#

hmm okay, was thinking on not storing layout and amount of entries settings in the DB instead in localstorage/cookies for now since mini hasn't said anything about it, but now I am unsure if it's the best approach

#

that way I wouldn't rely on mini adding it to the backend (I don't wanna touch the backend)

lofty comet
#

@jovial lintel hey, didn't wanna ping ya but whenever ya can, care to read above? I had asked about it few days ago but got no response so yeah

lofty comet
lofty comet
#

thoughts on this sort by dropdown?

#

kinda like it being transparent background

#

but it might not fit with the rest tbf

timid briar
#

i am blind
do you have a screenshot for comparison without whatever you changed ^^

lofty comet
#

just added this

#

but here is a non transparent one for comparaison

#

(sort by dropdown is what is different)

timid briar
#

ahhhh okay
i like it
but with background is better imo

outer kettle
#

re the previous stuff, layout and number of entries of what?

lofty comet
#

So how many projects are showed per page

#

And the layout of the list so single column or 2 columns for ex.

#

Not sure if the layout is necessary but yeah

#

Entries would be nice I think

outer kettle
#

That doesn't need to be in the db I think, local store is fine

#

or can be added later

lofty comet
#

But all good

jovial lintel
jovial lintel
scarlet lily
lofty comet
#

(This all being project list)

jovial lintel
jovial lintel
#

Meh then it's not available server side

lofty comet
#

yeah

#

exactly

lofty comet
#

I have skipped that for now, working on other things

lofty comet
#

uhm @jovial lintel staging down again?

lofty comet
#

worked on this while backend was back xD

#

think it died again

jovial lintel
#

I know, I am trying to find the issues

#

sentry is going wild

#

like wtf

#

why is that even done on my request threads

#

haha enabling sentry debug freezes my IDE because it throws so many exceptions

#

HA

#

I think I have it

lofty comet
#

xd

#

what was it?

jovial lintel
#

cool so tomcat doesn't deadlock for some reason like undertow does

lofty comet
#

undertow was being used?

#

didn't know about that

#

what would be the best placement for the project search input assuming the white middle top searchbar is already present in all pages.

#

I am not really a fan on the current placement with the new design, but neither am I fan of forcing people to use the navbar search for this specially since it is supposed to have its own auto completion, etc...

#

I am personally not sure how to approach it, if the navbar search should also filter the currently shown project list and that should be used... or what... I am also not sure how the navbar search should be handled outside the project list, should it display the first few projects that match that search? What happens if you just click enter?

#

Just need some clarifications since atm my brain is confused (and I feel like this is a trivial question)

lofty comet
#

WIP but thoughts? (Specially about searchbar)

#

Top searchbar would be independent from the project list, and would display its own autocompletion, while the second searchbar would be used to search through the project list.

I thought about using the top one for everything, which means when a project list is present, using it, otherwise it uses its own autocompletion, but due to how things are structured like it all being in the header component, etc. And my lack of knowledge with vue/nuxt, I wasn't sure how to approach doing that, so this sounded like the easiest way of doing it.

Although, currently still have to somehow get the project count in the header and projects, so that I can do autocompletion... (which would work very similarly to how the projectlist works)

pallid tulip
#

I feel like the searchbar should float in the middle between the name and sort

fathom girder
#

I don’t like it

#

Well, idk, I think the previous looked better

lofty comet
#

personally prefer the previous one too

#

I mean, I still kinda dislike the fact there are 2 search bars being displayed

pallid tulip
#

I have an idea, maybe hide the upper search bar behind a magnifiying glass icon?

lofty comet
pallid tulip
#

I have a better question, why is the search bar at the top even needed?

outer kettle
#

So you can search no matter what page you're on, the top one is nice

#

but regardless of that I think the lower one looks out of place, even if the top one didn't exist

outer kettle
lofty comet
#

but I lack the brains to do that with the current structure

#

I don't have access to the projectlist in Header component (where the top search bar is)

outer kettle
#

What if you just pop it out again (sort of) like it's in the current design, and keep it visually distinct from the top bar

outer kettle
#

out of the top bar of the projects list and into the vastness of space

pallid tulip
nova vessel
#

Search always at the top seems reasonable to me and matches how a lot of other sites operate.

pallid tulip
#

While I do agree it's common, in this case it looks weird and doesn't contribute much

nova vessel
#

I fully disagree. It looks great to me. 🙂

pallid tulip
#

Well the other option I'd rather see is remove the top search bar on home page as it isn't needed

lofty comet
#

breaks consistency then though

pallid tulip
#

What I would welcome and wouldn't mind having two search bars is if the top search bar would allow to search users and just rename it to Search

lofty comet
#

if I were able to do the logic part of it

#

lol

lofty comet
pallid tulip
#

it's a really quick way of getting what you want, be it a plugin or a user

lofty comet
#

one thing that would maybe would look cool is smt like this

pallid tulip
#

e.g. searching for ViaVersion plugins (usually admins download ViaVersion and ViaBackwards)

lofty comet
#

aka when searching it popups a window in the middle of the screen

#

idk

#

quite common nowadays

#

not sure tbh

#

I have not even looked into how meili works

#

feel free to PR to my repo the logic xD

pallid tulip
#

why not just have a dropdown that includes the 5 best matches?

lofty comet
#

I can style it

#

hehe

lofty comet
#

the limiting part rn is really just project structure

#

the fact I don't have access to projects etc in the Header component for ex.

#

not sure how to approach it, that is rather the problem

lofty comet
#

looks weird though

pallid tulip
#

I mean thats how it is currently 😅

lofty comet
#

idk... I am kinda running out of options

#

I am quite limited xD

#

I just need to take a decision asap

#

so that this doesn't hurt progress in the rest

outer kettle
#

Functionally it'd be weird if the top bar behaved differently across pages, I wouldn't have that used for the search below (but I do really like having a top search bar)

#

personally I really like the current site one since it gives the main page more of a unique flair, but I can also see why it wouldn't fit the new design

lofty comet
#

dies

#

I will just go with how it was at the start

#

and we shall figure it out after

#

on another note, wonder if meili works with authors too

lofty comet
#

would it be wise to just yeet (copy) this code and use it for the auto completion of the nav search bar? xD

jovial lintel
#

It updates global state

#

So it wouldn't be an auto completion

#

Meili has proper API for auto completion we should hook into and expose to the frontend

#

I have a short week at work, maybe I can look at that later in the week

lofty comet
jovial lintel
#

idk if you can search in multiple indexes at once

#

seems like it, but doesnt seem trivial

#

or my brain is too mush rn

#

that example seems simple

lofty comet
#

Is multi_search the same as auto complete? Or different system?

#

Not familiar with meili

jovial lintel
#

No clue

fathom girder
nova vessel
fathom girder
#

bruh

jovial lintel
#

if I wanted an AI answer, I would have asked myself.

#

nor do I care about an answer rn

fathom girder
#

well, i answered mr alfonso

fathom girder
#

as far as my reading of the melisearch documentation goes only multi search exists

nova vessel
#

No, AI answered you. You screenshotted the AI to Afonso. Please don't do that, and please don't just "bruh" people's requests not to dump AI summaries into chat.

fathom girder
#

ok mbax. Noted.

fathom girder
lofty comet
#

aka giving back similar/finish indexed entries

#

which in theory is what I want... but at the same time, not sure if just text is good... I could also display some small info about project like logo and small description when searching...

#

and not sure autocomplete works with that

#

not sure, either way will wait for mini to check it out, since it apparently needs some stuff done on backend for it to work so yeah

#

until he checks it out, we shall wait

fathom girder
#

by the way i didn't mean to disrespect you with that screenshot to kinda like say "just google lol". Shouldn't have done that. In the end it probably didn't really provide the answer you were looking for and just shows you shouldn't trust AI outputs haha

jovial lintel
#

Iirc (looked briefly before at that search lib they support for auto completion) they did just do a normal search

knotty verge
#

Is there an official policy for external download links (as in they should point directly to a jar or something like that)?
Links like https://hangar.papermc.io/Lamdis/Simple-KO/versions/1.3 which just point to the homepage of the project on a different platform are not particularly useful and make these projects annoying to deal with in the API

gleaming iris
#

I don't think we have much of a policy but external download links were a mistake

#

Stuff like that should probably just be removed, imho, but MahiruShrug

lofty comet
#

I think pointing to a GH release is also okay

#

Or straight download ofc

#

But linking to another platform is just a pain and they are using it as a straight AD instead of repo

lofty comet
#

Prof decided to pull an "bruckentag" sooo no lectures on friday which means me going back to luxembourg now which means pog, can work on hangar more

lofty comet
#

On another note, debating if I should rename "Home" to "Projects" or "Plugins"... (random thought I got in the bus)

#

Cause atm it technically doesn't serve as a home page, it serves as the project browsing page

#

While coincidentally being the home page

#

It might also be a bit misleading having projects in "Home" in the nav while "Authors" matches the content of the page.

lofty comet
#

How does the dum.json file work for i18n?

#

In other words, what is the appropriate way to add/modify lang files?

#

Also, uh, any news on the search thing mini? I am working on other things in the meantime

lofty comet
#

might aswell wait for Nuxt4

jovial lintel
#

nuxt 4 isnt relevant

jovial lintel
#

dum.json in particular is for their in page translator thing

lofty comet
#

Ah okay, thanks!

knotty verge
#

Some projects show up in the search but return a 404 in the API and clicking them just hangs on the skeleton UI

#

A project that produced the same behaviour a while ago appears to be fixed now, so maybe this is a cache issue?

nova vessel
#

Caching strikes again

jovial lintel
#

It's not really caching, I assume it's the job that updates meilisearch

#

It gets stuck sometimes and the code to fix it can't be merged to master because of other issues

jovial lintel
#

I love this shit

#

even just a dum redeploy means everything falls apart

lofty comet
#

Relatable

jovial lintel
#

Request T /api/v1/projects rejected: The request was rejected because the HTTP method "T" was not included within the list of allowed HTTP methods [HEAD, DELETE, POST, GET, OPTIONS, PATCH, PUT]****

#

wat

#

why is the method T

#

wtf is tomcat doing

fathom girder
#

Generics

jovial lintel
#

what am I supposed to do now? wtf

#

I could allow T, but then the 400 would turn into a 405 method not allowed of course, since spring doesnt know wtf a T is

#

why is everything hangar so cursed

#

axios claims its sending a "get", spring receives a "T", in between I only have tomcat and nginx, worked fine with undertow

gleaming iris
#

Truncated?

jovial lintel
#

where? what? why? how?

#

I am trying to investigate http protocol version shit now

gleaming iris
#

was more a fun question to either make you ponder it as a potential and be able to nail it down, or, aid in pulling your hair out

jovial lintel
#

idk, its parsing as http/1.1 and I have no reason to belive that bun isnt sending a 1.1

gleaming iris
#

Well, yea, but idk anywhere that T would blindly show up unless the method request part was being truncated or something stupid

#

idk the architecture or how many layers are in the way, is there a sane way to see the raw request that it's getting?

jovial lintel
#

actually, isnt the method send before the version anyways?

#

ye

#

mmmmh

#

is the content length 2 right?

#

r\nHost: hangar-backend:8080\r\nContent-Length: 2\r\n\r\n

gleaming iris
#

Yea

#

what is the chance that you can test a DELETE?

jovial lintel
#

I think I just reproduced it in IJs http client

#

by port forwarding

#

ah no just my xxxx'd out ip, lmao

gleaming iris
#

I mean, the 1st screenshot there is interesting because it looks like it got the correct request just fine

#

something after it logged that looks like it messed up the request

jovial lintel
#

thats the difference between tomcat and spring

gleaming iris
#

The reason I ponder sending a DELETE request and seeing if it hits the security thing is that I wonder if there is a consistenty there

jovial lintel
#

my logging is only secondary there, spring already rejecting the http method

gleaming iris
#

Like, idk how you'd get a T there unless you ate two bytes

lofty comet
#

Use appwrite 😎

timid briar
#

just vibe that sht
claude code go brrr
give it 20 bucks of tokens and it will magically fix everything

#

-# /joke in case it wasnt clear

jovial lintel
#

assuming I don't have branches for that already

lofty comet
jovial lintel
#

Love vendor lock in

lofty comet
#

And can easily migrate elsewhere if need be

#

Think you confused it with supabase which is hell to setup selfhosting it

jovial lintel
#

I am at a loss here

#

it seems like tomcat is just recycling a coyote request before its finished?

#

????

jovial lintel
#

oooh

#

remember the content length of 2?

#

what if the request before did read those two bytes from the buffer

#

so they are missing from the start of the next request

#

ye you can see that the pointers into the buffer are wrong

#

so it compacts stuff wrong

jovial lintel
#

FUCK ME

#

I FUCKING GOT IT

#

and its so extremly dum

pallid tulip
#

nothing like reading through a dev's rant haha

jovial lintel
#

only took 17 force pushing of frantically adding souts all over tomcats byte parsing of the http protocol

jovial lintel
pallid tulip
#

true dat

fathom girder
#

What was it what was it what was it

fathom girder
#

😆

solemn wing
#

hey just wondering what’s like the high priorities for hangar for backend?

cloud root
#

What do you mean?

lofty comet
#

whatever has high prio here

#

Although one highly requested backend feature is private/restricted release channels

#

totally not biased

solemn wing
#

was thinking of doing draft releases however

lofty comet
#

just do both kekw

#

probably will need some rework on how release channels work for both of those anyways

#

If I am not mistaken, mini might have started already with private release channels, so if you are going to work on anything related to channels, I'd check with him how the progress on that is and if you can contribute to his code or anything like that

solemn wing
#

alright

#

sounds good

jovial lintel
#

I have not

solemn wing
#

never worked with meili search but after setting everything up it seems to timeout

#

seems like same as this but task is null

jovial lintel
#

The docker containers are running?

#

Can you show me the log?

solemn wing
#

yeah they’re all running

#
2025-06-27T12:26:24.356+01:00 ERROR 11355 --- [  restartedMain] o.s.boot.SpringApplication               : Application run failed

java.lang.RuntimeException: Timeout waiting for meili task null
    at io.papermc.hangar.components.index.MeiliService.waitForTask(MeiliService.java:179)
    at io.papermc.hangar.components.index.MeiliService.waitForTask(MeiliService.java:167)
    at io.papermc.hangar.components.index.MeiliService.setupProjectIndex(MeiliService.java:79)```
#
2025-06-27T11:26:49.184824Z ERROR index_scheduler: While sending data to the webhook: http://192.168.178.34:8080/api/internal/meili/webhook: Connection Failed: Connect error: connection timed out
#

thats the only error showed in meili logs

#

where even is this ip coming from?

jovial lintel
#

Oh that's my local one kekw

#

But that shouldn't matter, the webhook is only for logging, it shouldn't be related to your problem

#

It's defined in the meili config somewhere

#

Mmh, I guess not having the webhook means you have a harder time seeing if something went wrong

#

I'll take a look at your stack trace in a second

timid briar
#

to any staff that has access to hangar and can take down projects
#hangar-projects message
this project "contains" harmful code

jovial lintel
#

Pls use the report functionality

timid briar
#

i did

#

last time i reported smth it took almost a week to be taken down so just wanted to make sure it is actually seen

hollow edge
#

I've taken it down, thank you for letting us know.

timid briar
#

i reported a project once that was literally just nude pics
was up for a week 😄

lofty comet
#

Lol

mental fern
#

I mean, just a gamemode switch? I would expect at least an op toggle or something ;-;

pallid tulip
#

scammers are dumb, there's a reason they're scammers

mental fern
#

My guy couldn't figure out how to set the player's op level kekw

timid briar
# mental fern lol what shitty harmful code

There was a creative GUI command which wasn't properly registered and not even populated with items or anything
Literally just an empty inv with a title and the same game mode switch
Also imagine the server spawns you in adventure mode
Bro can't do sht

jovial lintel
#

and nobody implemented a check for the other stuff yet

jovial lintel
#

hangars platform versions now update automatically (*)

#

Populated 'platform_versions' table with 25 new versions

#

org.postgresql.util.PSQLException: ERROR: invalid input syntax for type integer: "13-pre7" [statement:"SELECT version FROM platform_versions WHERE platform = :platform ORDER BY string_to_array(version, '.')::int[]", arguments:{pos:{0:PAPER}, named:{platform:PAPER}}]]

#

haha almost

#

Populated 'platform_versions' table with 18 new versions

#

better

solemn wing
jovial lintel
#

it shouldn't be the isuse tho

#

but you can try changing it

#

ideally it would be localhost but docker/wsl is fun

#

but I dont understand why it failed with that exception

#

since it means the first task was successfully awaited, so it works

solemn wing
#

site map loads and it crashed after 5 seconds due to meili timeout

#

awaiting a null task

jovial lintel
#

the task isnt null

#

else it wouldnt havbe entered that method

#

taskUid is null, idk why

#

the meili stuff is a bit strange, sometimes it sends a uid and sometimes a taskUid

timid briar
#

is it a known fact that hangar dependencies dont work
the link is always null
i just published a new version to one of my projects and the hangar dep is null
it was also set to url instead of hangar
changing to hangar doesnt work tho

solemn wing
jovial lintel
timid briar
#

I'll create a proper issue tomorrow then

jovial lintel
#

My brain is fried, spend too much in the sun, I still don't get it

#

So yes, please 😂

outer kettle
#

download numbers are bork too

#

for everything after the 23rd

jovial lintel
#

Huh

#

Didn't I add a UI to see what's up with the jobs? 🤔

#

Well, I'll see later

#

I bet the job just crashed, but I also wrote code to revive it I think?

lofty comet
#

ah yes

#

Someone should do one of those videos just with messages of Mini being confused with Hangar

jovial lintel
#

ah it didnt crash but I guess the instance restarted while it was running

#

since the state is stuck at started

lofty comet
#

is there a status page for paper/hangar?

#

(like if it's operational, etc)

raven kayak
lofty comet
#

exactly

#

I swear it existed

#

but I tried it, and nope

#

so now I am confused

#

lol

raven kayak
jovial lintel
#

we temp disabled it

#

its back

raven kayak
#

hangar staging is not having a fun time

jovial lintel
#

nah that monitor was just down

timid briar
#

"the monitoring for hangar being down is down as well"

jovial lintel
#

well, there was an issue, I didnt ack it so the monitor paused itself after a bit

timid briar
#

I somewhat made peace with hangar being slow, but lately the response times have climbed up from a few seconds to more than 10s
the frontend times out a lot now and the api as well

outer kettle
#

I've had a bunch of these too, though just in the frontend where pages will indefinitely load, but trying again in another tab a few seconds later works just fine

timid briar
#

i have a test that calls the hangar api and all of those failed for exceeding the 10 second timeout

#

my timeout used to be 3 seconds
i had to bump it up to 10 which worked for one or two days but now it always fails

gleaming iris
#

There is some efforts to improve the monitorability coming soon™ which should hopefully help with diagnosing what is going on here

#

sadly not having full timers on this stuff creates a lot of headaches 🥹

timid briar
#

nice
i would like to be of help but no idea how

jovial lintel
#

its broken across all sites

jovial lintel
#

that was absolutely painful to fix

#

but hey, stats

jovial lintel
#

bruh

#

oh, lol, because not all backends were updated yet

outer kettle
#

the infinite loading always seems to happen the first time I open anything from the homepage (and maybe direct links?), if I then reload or do the same it works

#

maybe it was a coincidence but I'm pretty sure it's been the same thing there the last 4-5 attempts over a few days

jovial lintel
#

Wdym by infinite loading? It can never load for more than 10s

outer kettle
jovial lintel
#

Oh on page switch

knotty verge
#

Seems like the job to update the meilisearch index is stuck again

jovial lintel
#

huh, that shouldnt happen anymore

#

oh its the case where it started and then the pod dies

#

meh

#

need to handle that

#

the jobs ran now, sorry bout that

#

WTF

#

vercel brought nuxtlabs

nova vessel
#

welp

#

Nuxt and Nitro will remain independent, open source projects with an MIT license, public roadmap, and open governance.

#

... okay.

jovial lintel
#

I am not really understanding what vercel is winning here

#

which makes me very vary

#

Looking ahead, AI will be a new area of focus for us. We’re exploring how to bring AI into the Nuxt developer experience. Helping you ship ideas faster. We’re also working closely with Vercel’s AI teams, including v0, and continuing to experiment with local tooling like MCP.

#

oh god dammit

#

why waste time on that

gleaming iris
#

I mean, I feel that nuxt is falling into the area where it's probably getting so big that it looks interesting for it to be a close to them as possible?

jovial lintel
#

yeah but the whole idea about nitro and nuxt and the whole unjs ecosystem was that you shouldn't need to give a shit about providers since you can switch in seconds

#

which goes against vercels interests and against how vercel operated in the past

grand goblet
knotty verge
timid briar
#

Is it already know that on mobile hangar pretty much doesn't work at all?
This always happens a few seconds after the page already loaded
You can prevent that by just cancelling the page load but you only have like one second to do so
And when the error occurs the page tries to reload but is stuck and just loads for ever

#

Browser FF mobile

jovial lintel
jovial lintel
#

all 5.2.1-snapshot versions are gone

#

how did you run into this @knotty verge? why do you care about old snapshots?

#

I can only assume that something was wrong with uploading back then

knotty verge
#

I don’t particularly care, just wanted to notify you in case this was a bug with the current code

outer kettle
#

Migrating 1.8 to 1.8.8 and deleting the former would fix Paper, idk about Velocity

outer kettle
plucky bluff
#

Okay, I thought I was going insane. I was like there's no way people only download my plugin for modrinth OMEGALUL

fathom girder
#

I downloaded it for my smart fridge 😆

wise birch
#

can someone help me clarify somthing and or update this plugin

LunaN0va_/InventroyDropChance2

they need to add the Mace and new items like bundles as right now bundles cause a duplication glitch to occur if the item inside is protected but the bundle is not on death youll drop the bundle and keep the item in your invintory but when you pick up the bundle it also has the same item inside

cloud root
#

This channel is for people working on the site itself

wise birch
#

ah sorry

cloud root
#

No worries

wise birch
#

also how would i get ahold of them ive looked at hanger and there is no send message to dev or anything like that and i cant seem to find a github or anything to contact them

cloud root
wise birch
#

well crap it says on their page to contact them but leave no info

lofty comet
#

uh trying to recall why I "stopped" working on the hangar frontend

#

was I waiting for smt?

#

bruh

mental fern
#

You got bored

#

Maybe

timid briar
lofty comet
#

probably meilisearch auto completion

#

so that I can work on that

mental fern
#

-# As always, it is Mini's fault.
Just kidding, Mini is doing great work, thank you Mini!

lofty comet
#

was about to open the redesign on my pc and...

#

think staging is down xD

#
captured { code: 'ECONNREFUSED',
  requestUrl: '/api/v1/projects',
  status: undefined,
  data: undefined,
  message: '' }
render error page Server Error An error occurred
``` interesting
#

and as always, restarting the IDE works lol

#

th platforms not showing out of a sudden?

#

legit didn't touch the code???

#

did anything change on the backend?

#

no platforms nor versions are displayed

#

lol

outer kettle
#

there's some buggy versions but that shouldn't cause errors

knotty verge
lofty comet
#

but that seems to be empty

lofty comet
#

wait I read that wrong

#

it's using useVisiblePlatforms

#

yup and that is returning an empty array

#

which is coming from the backend

#

oh shit, might be the fact that I am 39 commits behind Hangar staging? lol

#

I forgot I was on a different branch and didn't update that one

#

Uh thing is, it says that if I want to sync up the branch I need to discard my commits, how do I approach this?

outer kettle
#

Do a merge pull locally

#

Back up your branch before that just in case. Getting things back is generally always possible but that makes it easier

lofty comet
#

Everything "mostly" worked out

#

although when trying to run devStaging, it seems like it gets stuck trying to init sentry?

#

Sentry DSN not set, skipping Sentry initialization

#

well, it says it skipped it but it's just stuck there

#

OH right when I decide to write about it suddenly works, after 6 minutes lol

#

Yeah will have to still fix some stuff that stopped working with the recent updates mini did

#

Next time I can't stay that long without syncing it up

#

lol

#

Also, just noticed, thought I was hallucinating but almost all text is underlined, including in staging, is that intended?

lofty comet
#

yeah wth, is my browser fked? Any ideas what this could be?

outer kettle
#

Some accessibility setting?

lofty comet
latent walrus
#

probably because it's clickable

lofty comet
#

well even non clickable elements had it

#

sooo

#

maybe a bug

#

but ig

lofty comet
#

holy I was expecting to be behind, that's a W.

#

But I am still have to redo some parts due to some changes mini did

#

and I am way too lazy for that

#

lol

mental fern
fathom girder
#

What bugs?

lofty comet
#

lol

fathom girder
#

Is there a reason why hangar does the whole oauth2 handling by itselef and doesnt use a spring provided solution?

jovial lintel
#

since its fixed now

jovial lintel
jovial lintel
#

error: GH006: Protected branch update failed for refs/heads/master.

#

pff

lofty comet
#

Hey @jovial lintel was thinking on going back to the frontend stuff but staging is down and I kinda use it for development...

Could you maybe revive it whenever possible and ping me 🙂

jovial lintel
#

Isn't it only the frontend that's broken?

#

I have been sick the whole week, idk if I have energy this weekend

lofty comet
lofty comet
lofty comet
#

Well, it is it appears

#

might be time to just setup the backend again on my pc

#

problem is that I probs can't do the same on my laptop as it doesn't have much ram

jovial lintel
#

Lemme try rerunning an old deployment

lofty comet
#

Well atm I am (trying) to make it all run locally in my PC, specially useful if I (suddenly) decide I wanna touch the backend maybe. But having staging back up would be nice either way for during the week.

#

But don't worry too much bout it, make sure to rest and get better

jovial lintel
#

First retry failed, second one thru but it's still bork

#

Wait I also didn't get any deploy ping in discord

lofty comet
#

didn't know that was a thing

jovial lintel
#

well, auto deploy works by flux checking for new docker images and then making a commit, triggering a deploy

#

anyways, manually hacked an old backend image in, staging is back onlinbe

lofty comet
#

Just pushing the convo here.

lofty comet
#

wait was supportedPlatforms removed from the project object? I kinda was using that

#

lol

jovial lintel
#

Wasn't that a new thing?

lofty comet
#

it might have been yeeted from index.ts?

#

eh nope

#

they still there

#

wth

#

OOOOHHH

#

props receives either a normal Project or a compact one

#

in this case the compact one does not have it

#

would this be an easy fix?

lofty comet
#

LET ME COOK

#

I just realized, forgot there was a star icon already lol

#

gotta switch that, either way it's WIP

#

(Don't ask me how optimized this is nor how many requests it does per second, I genuinely don't know)

mental fern
#

He's back at it again, let's go!

#

-# The talking about Hangar finally got him to continue, the plan has succeeded, time to return to the shadows 🥷

lofty comet
#

Lmao

#

Btw is there a specific process to adding new i18n texts? Do I just add them to both dummy and en?

outer kettle
#

I don't think you have to touch the dummy one

jovial lintel
#

Don't touch dummy

#

It's generated by crowdin, I guess I should pull them down sometime, that isn't automatic

#

It's pulled on deploy, like all other languages, but not committed

#

It's for crowdins in site editing

lofty comet
#

I actually do wonder if I have touched it before... hope not

lofty comet
lofty comet
jovial lintel
jovial lintel
#

I wouldn't recommend anyone to spend time on crowdin rn tho

lofty comet
lofty comet
#

I mean, I don't think there even is a language option anyways.

lofty comet
lofty comet
#

Making it look less flat...

#

(search bars are next)

jovial lintel
lofty comet
#

Holy it's quite obscure xD, I only found this out now?!

lofty comet
#

Need some feedback on this... Made sidebar sticky and well, grouped search and sort in a card which is now also sticky. I am not sure that card looks that nice in there...

lofty comet
outer tiger
mental fern
hollow edge
#

If the screen height is so small that it obscures part of the sidebar, can you scroll the sidebar separately to reveal the rest of the options? The sticky sidebar seems nice, I'm just concerned whether it works well on small screens.

lofty comet
lofty comet
outer kettle
#

If you hover over it you’d still know where to click with a highlight

lofty comet
outer kettle
#

Don’t give the sorter its own subcard/background

lofty comet
outer kettle
#

Ah right, whatever it is try making the background transparent

lofty comet
#

is is?

outer kettle
#

On our Button component there’s a transparent type too

#

The outline too/no outline, sorry I’m on my phone it’s hard to see PepeLa

lofty comet
#

Also, fy, it already is transparent.

#

is this better?

#

(to see on the phone)

outer kettle
#

Yeah, try without the outline

#

But I don’t have any other useful feedback to give, I’ll let you cook

lofty comet
lofty comet
#

Added a button to choose how many entries are shown per page, although atm it isn't really stored anywhere, not sure if this should be stored locally or in the account itself...

snow plume
lofty comet
lofty comet
#

Added EOL warning

Putting this here for the record.

snow plume
lofty comet
#

I mean, yeah, I was planning on storing it locally, just didn't know if mini preferred it being stored on the account itself

snow plume
#

Ah so. Then I'll keep quiet
All your changes look very nice, keep up the good work!

lofty comet
#

Thanks, appreciate the kind words 🙂

timid briar
#

Because then the eye candy might never be merged

lofty comet
#

-# For legal reasons, I am joking

#

On another note Is making FAQ a modal a good or bad idea?

#

Always disliked it being at the bottom

timid briar
lofty comet
fathom girder
# lofty comet

can we not put this somewhere, where the whole sidebar is shifted down?

lofty comet
fathom girder
#

What about above the first list entry?

#

Or one could argue if it is even necessary to show it.

#

Plus please swap waterfall with velocity

#

Or make the select red, and put an (i) next to it explaining it’s no longer supported

lofty comet
lofty comet
#

@fathom girder okay so basically... to add that I kinda need to modify a bunch of components to a point where it becomes a mess and it's simply not worth it lol

#

This is how it would look if it was above the projects

#

which tbh doesn't look bad

nova vessel
#

If that's done, Velocity should be clickable link imo

lofty comet
#

this good? The default link color/style looked weird in this red

#

(aka the blue)

#

-# the underline only shows on hover fy

fathom girder
#

it should be clear that its clickable

#

so i think the underline should be shown anytime

lofty comet
#

sounds about right

#

Final design I guess?

#

On another note, I need to take some time and go through all open issues and try to make a list of all issues the redesign will solve lol

fathom girder
#

also - idk if you saw my message - can you swap waterfall with velocity in the platform list?

lofty comet
#

Why would I have 2x Velocity? I am confused

queen tartan
#

think he means move velocity up so its above waterfall

lofty comet
nova vessel
#

If we're already hardcoding a waterfall warning maybe let's hardcode an added weight to waterfall to make it always go lower

lofty comet
#

it's quite literally a one line fix

#

but it's in the backend.

#

I could change it locally but that wouldn't matter as rn since I am using staging's backend, not running it locally.

#

I could also just put it at the bottom "artificially" in the frontend

lofty comet
queen tartan
nova vessel
lofty comet
#

I still haven't gotten the backend to run locally

#

some error smh

#

will see tmr, I just can't forget to create a new branch.

#

btw shouldn't Folia be considered a Platform?

timid briar
lofty comet
#

Any ideas what else to put?

lofty comet
#

On a totally different note, thoughts on adding a badge that displays that a plugin is open source? Would maybe encourage people to open source?

timid briar
#

Nah I would make an anti badge to indicate a plugin is not open source

mental fern
#

A red "Closed Source" badge with a ⚠️ icon infront

lofty comet
#

Ngl yeah that sounds nice

#

But not sure how mini would feel about that xD

#

Cc @jovial lintel thoughts?

jovial lintel
#

obviously not a prio

lofty comet
lofty comet
jovial lintel
#

Yes, it's hiding the content I want Google to read

lofty comet
#

So no modals for external links? 🥺

jovial lintel
#

Mmh?

#

I was talking about the FAQ

#

Eternal links we remove attribution from anyways, I don't care if Google doesn't sees them

lofty comet
#

Oh okay so W, I can do modals, yay

#

Always found modals for external links better than a separate page

knotty verge
#

Has the search index updating job gotten stuck again?

lofty comet
knotty verge
#

Because we keep getting 404‘s while fetching the members of a project

#

Generally that means the project has been deleted, but the search still shows it

jovial lintel
#

lemme take a look

#

huh thats a new one

#

well, whatever

#

it should have fixed itself on the next server restart, but I manually fixed it, good enough for now

#

thanks

#

it is concerning how long these run

mental fern
noble fog
#

wtf kind of characters are those

mental fern
noble fog
#

speaking in ancient hieroglyphics

mental fern
#

》Hi《

jovial lintel
#

Samsung is dum

lofty comet
#

Damn, that's a lot