<DasSkelett[m]>
but this also allows arbitrary JS code to be inserted and executed. Is it worth this risk, because only admins can use it? Or should we do without line breaks?
<DasSkelett[m]>
Hmm, newlines are not preserved. A solution would be
<DasSkelett[m]>
but this also allows arbitrary JS code to be inserted and executed. Is it worth this risk, because only admins can fill in the lock reason text? Or should we do without line breaks?
<DasSkelett[m]>
Yep! Something else I should change? Rephrase the boilerplate?
<DasSkelett[m]>
Unlock-then-relock. Not sure where I should add an option to change the text, and quickly relocking works quite well.
<DasSkelett[m]>
Also mods have to be manually re-published after unlocking because there's no way to save the previous published state, but I think that's not much of an issue.
<DasSkelett[m]>
Also mods have to be manually re-published after unlocking because there's no way to save the previous published state, but I think that's not much of an issue, admins can do it right there.
<DasSkelett[m]>
Is this needed? AFAIK there are currently only about 3 people with admin access to prod. They should be able to find out who did it, and can discuss it here.
<DasSkelett[m]>
Ah okay. I mean, it wouldn't be hard to add, it'll behave exactly like `lock_reason`.
<DasSkelett[m]>
That's a 401. I guess CKAN will fallback to archive.org if possible, but that would need testing.
<HebaruSan[m]>
<div class="tab-pane active space-left-right" id="info">
<HebaruSan[m]>
{{ mod.description | markdown }}
<HebaruSan[m]>
</div>
<HebaruSan[m]>
```
<HebaruSan[m]>
It's nice how it sets off the message text from the boilerplate around it
<HebaruSan[m]>
Can "the support email address" be replaced with a `mailto:` link?
<HebaruSan[m]>
So the user doesn't have to figure it out
<HebaruSan[m]>
Can the admin edit the lock message?
<HebaruSan[m]>
Or is it unlock-then-relock?
<HebaruSan[m]>
What about showing the admin which other admin locked it, in case they need to discuss?
<HebaruSan[m]>
I guess I'd classify it as "nice to have". I might want to exchange forum PMs without having to ask who it was first.
<HebaruSan[m]>
What will CKAN users see if they try to download a mod that's been locked? A 404 and/or fallback to archive.org?
tehbeard has quit [Ping timeout: 378 seconds]
tehbeard has joined #spacedock
DasSkelett[m] has quit [Quit: Idle timeout reached: 10800s]
<RockyTV>
+1 for markdown
HebaruSan[m] has quit [Quit: Idle timeout reached: 10800s]
VITAS[m] has joined #spacedock
<VITAS[m]>
cool stuff
<VITAS[m]>
thank you!
<VITAS[m]>
theres a difference between site admin and server admin
<VITAS[m]>
only darklight and me have server admin
<VITAS[m]>
but about 5-6 people have site admin
<VITAS[m]>
if i had role managemant i would increase it
<VITAS[m]>
e.g. giving people only the right to feature mods
<VITAS[m]>
or even per game admin
<VITAS[m]>
(ksp2 is a new game)
DasSkelett[m] has joined #spacedock
<DasSkelett[m]>
Okay I think I have it ready now. E-Mail notifications for the user when locked is working, and the locking admin is saved in `mod.locked_by` and shown on the mod page.
<DasSkelett[m]>
Notice the `(locked by ...)` on the unlock button
<VITAS[m]>
thats so great :)
<DasSkelett[m]>
PR is up. Please take an extra close look at the database stuff, because I don't like database stuff, and I don't understand database stuff, but I had to do database stuff.
<DasSkelett[m]>
Of course I tested it, and everything seems to work as expected, but that doesn't say much.
<VITAS[m]>
yes database stuff
<DasSkelett[m]>
Never liked database stuff. Probably because I never really did much database stuff so far.
<VITAS[m]>
if you dont want to do db stuff ... the frontend code needs cleaning up and to be returend to not destroyed bootstrap ....:>
<VITAS[m]>
but only if you want to
<DasSkelett[m]>
I dislike frontend stuff even more. π
<VITAS[m]>
i will throw some eyebals on the db part later :D
<VITAS[m]>
what do you like then?
<DasSkelett[m]>
Only if you don't need them, please π
<DasSkelett[m]>
You're also welcome to look at all the other parts.
<VITAS[m]>
i expect to fin them later
<DasSkelett[m]>
No web dev at all would be preferable :P
<DasSkelett[m]>
But backend stuff is okay
<VITAS[m]>
you could check if you can migrate the backend to up to date framework an libary versions
<VITAS[m]>
i dont know what allready has been done but i remember when i moved sd to the new server it was a rough patchjob
<DasSkelett[m]>
Isn't there a problem that wells are unsupported in Bootstrap 4? I think they are used quite heavily in the frontend code.
<VITAS[m]>
yes i was talking more about flask and python
<VITAS[m]>
the frontend is a mess and should be redone compleatly
<VITAS[m]>
it could get mobile friendly at the same time and also add those cookie warnings
<DasSkelett[m]>
Flask seems to be the latest version on alpha (1.1.2). The other packages from `pip freeze` also look fine.
<DasSkelett[m]>
Only Python with 3.6 is a bit outdated, yes.
<VITAS[m]>
and can we do something about that?
<DasSkelett[m]>
I'll try moving the virtualenv and re-creating it, hopefully this pulls a newer python.
<VITAS[m]>
you are free to mess up alpha as much as you want. but clean it up afterwards please :D
<DasSkelett[m]>
I also find it kinda weird to create in virtualenv right in the project folder, I'd do it in a `venv` subfolder. But if I change this now, we'd need to adjust some pathes in scripts, and it would have to be done on prod in the future too, so I let it be.
<VITAS[m]>
no you can change as much as you want if its more inline with the official best practice
<DasSkelett[m]>
I also find it kinda weird to create an virtualenv right in the project folder, I'd do it in a `venv` subfolder. But if I change this now, we'd need to adjust some pathes in scripts, and it would have to be done on prod in the future too, so I let it be.
<VITAS[m]>
remmeber the code was written by someone who was learning python
<VITAS[m]>
if prod needs to change we can do that if we paln it properly
<DasSkelett[m]>
Ah okay, python3.6 seems to be the default on 18.04
<VITAS[m]>
yes but 20 will come in june
<VITAS[m]>
would be good to be prepared
<DasSkelett[m]>
Install Python3.8. Let's see if I can get the venv set back up
<VITAS[m]>
go DasSkelett !
<VITAS[m]>
cheers
<DasSkelett[m]>
Alpha is back up again. Downloading mods works, I guess we are fine. Let's test uploading to be sure π
<DasSkelett[m]>
Works. We are now running Python 3.8 on Alpha. I'll repeat the process on Beta.
<VITAS[m]>
cool
<VITAS[m]>
so we should do the next update on prod when prod gets ubuntu 20
<DasSkelett[m]>
Note: Python3.8-dev needs to be installed, else uwsgi won't install.
<VITAS[m]>
could you edit the readme in git with the install isntructions?
<DasSkelett[m]>
Yep. Beta also doesn't want to start for another reason, I'll try to figure it out.
<VITAS[m]>
who breaks it fixes it or calls darklight :D
<DasSkelett[m]>
Pystache is broken for some reason on beta, even if it is the same version as on alpha
<DasSkelett[m]>
Pystache is broken for some reason on beta, even though it is the same version as on alpha
<DasSkelett[m]>
pystache seems to be stuck in Python2 land (last updated 2014), thus invalid syntax. No idea why it works on alpha though, really weird.
<DasSkelett[m]>
Well now I have a few hours worth of listening to.
<VITAS[m]>
yes
<VITAS[m]>
all for your motivation :)
<DasSkelett[m]>
Hmm, the guy with the profile error says he gets 500s. Maybe it's an unpublished mod of him making problems during page load, but I can't check this.
<VITAS[m]>
wasnt there a feature to impersonate?
<VITAS[m]>
if youre not admin ill make you one
<VITAS[m]>
i need the username on SD
<DasSkelett[m]>
Yes, there is and that'll probably help, but you are right in that I'm not an admin
<DasSkelett[m]>
Take a guess
<VITAS[m]>
Tom
<VITAS[m]>
Edward
<VITAS[m]>
MrCheeseStick
<DasSkelett[m]>
Almost
<DasSkelett[m]>
Guess what, it's DasSkelett!
<VITAS[m]>
now you are
<VITAS[m]>
go my child and rescue the world from 500!
<DasSkelett[m]>
π π― π― π― π― π―
<DasSkelett[m]>
Well yeah, I can confirm he gets an internal server error...
<VITAS[m]>
hmm wheres the log i could check?
<VITAS[m]>
they have screen processes i think but i dont know the process that actualy serves you
<DasSkelett[m]>
Hmm yeah, good question We would need a log from Flask I think, not sure where we can find one.
<DasSkelett[m]>
Maybe `/var/log/apache2/spacedock.info-error.log` contains something, not sure
<DasSkelett[m]>
I submitted the PR to fix the profile page now, but there are more places we need to implement checks, for example the mod page itself.
<DasSkelett[m]>
I'm not sure what we should do with the primary download button in such a case for example.
<DasSkelett[m]>
I'd prefer setting `nullable=False` for `Mod.default_version_id`, so any action that would result in setting it `None` would fail. But that would need a somewhat complex database migration, and it would conflict with <span class="d-mention d-user">VITAS</span> plan to allow mods without releases to exist.
HebaruSan[m] has quit [Quit: Idle timeout reached: 10800s]
VITAS[m] has quit [Quit: Idle timeout reached: 10800s]
<RockyTV>
DasSkelett[m], I messed it up on my review, had some comments to add but approved before requesting changes :P