Log for #openttd on 17th April 2020:
Times are UTC Toggle Colours
00:30:14  *** Smedles has quit IRC
00:31:28  *** Smedles has joined #openttd
01:43:21  *** Flygon has joined #openttd
02:20:18  *** adikt has quit IRC
02:21:54  *** adikt has joined #openttd
02:24:51  *** glx has quit IRC
02:36:57  *** debdog has joined #openttd
02:40:21  *** D-HUND has quit IRC
03:23:26  *** Wormnest has quit IRC
03:54:41  <DorpsGek_III> [OpenTTD/OpenTTD] lanurmi commented on issue #8088: More than 327 Finnish cities or towns cannot be created.
03:57:56  *** Smedles has quit IRC
03:59:09  *** Smedles has joined #openttd
04:08:19  *** Wormnest has joined #openttd
04:34:24  *** snail_UES_ has quit IRC
06:01:39  *** Gustavo6046_ has joined #openttd
06:03:18  *** Gustavo6046 has quit IRC
06:29:41  *** andythenorth has joined #openttd
06:37:41  <DorpsGek_III> [OpenTTD/bananas-frontend-web] auge8472 commented on pull request #7: Changes to the page header
06:47:12  *** sla_ro|master has joined #openttd
06:53:57  <andythenorth> o/
07:15:17  *** rotterdxm has joined #openttd
07:58:43  <DorpsGek_III> [OpenTTD/OpenTTD] giordy commented on issue #7525: Autorenew vehicle option to Basic settings
07:59:18  <DorpsGek_III> [OpenTTD/OpenTTD] giordy commented on pull request #7729: Add: Allow autoreplace with same model vehicle
08:10:14  <DorpsGek_III> [OpenTTD/OpenTTD] nielsmh commented on issue #8088: More than 327 Finnish cities or towns cannot be created.
08:22:29  *** cHawk- has joined #openttd
08:24:11  *** cHawk has quit IRC
08:52:40  *** WormnestAndroid has quit IRC
08:52:53  *** WormnestAndroid has joined #openttd
08:56:54  *** Artea has quit IRC
09:36:55  *** Wolf01 has joined #openttd
09:48:59  *** Samu has joined #openttd
09:59:52  *** gelignite has joined #openttd
10:24:41  *** rotterdxm has quit IRC
10:25:00  *** rotterdxm has joined #openttd
10:46:33  *** supermop_Home has quit IRC
11:02:53  *** arikover has joined #openttd
11:03:53  *** rotterdxm has quit IRC
11:35:40  *** tokai has joined #openttd
11:35:40  *** ChanServ sets mode: +v tokai
11:42:26  *** tokai|noir has quit IRC
11:49:23  *** arikover has quit IRC
11:59:10  <TrueBrain> andythenorth : orudge has no time to check with a notary; how about you? :p (see my gist about legal entity)
11:59:46  * andythenorth reads the gist again
12:00:47  <orudge> Happy if somebody can get formal advice
12:00:56  <orudge> With 3 kids at home just now it's just not something I have time to do I'm afraid!
12:01:12  <orudge> The actual company admin though is minimal, for that I can speak from experience, and it is very inexpensive here
12:01:24  <orudge> But now, lunch
12:03:08  <andythenorth> I commented briefly
12:03:54  <andythenorth> I have earned myself a 44 hour working week, not bad when Monday was a holiday, must go, I will be back later
12:14:48  *** mindlesstux6 has joined #openttd
12:27:06  <planetmaker> enjoy your weekend then :)
12:36:51  <peter1138> Yes, my beer arrived :D
12:37:10  <peter1138> Admittedly about 2x the supermarket price, but hey...
12:45:41  *** gelignite has quit IRC
13:06:39  <TrueBrain> andythenorth : in that case, forget I asked plz :)
13:06:58  <andythenorth> Tl;DR stichting
13:17:10  *** snail_UES_ has joined #openttd
13:22:34  *** gelignite has joined #openttd
13:23:35  *** supermop_Home_ has joined #openttd
13:30:33  <TrueBrain> Yeah, seems to be either short term do UK or do more longterm in NL. The NL variant has more protection in terms of legislation meaning there is always a board of 3, meaning we can also do donations via it, trademark, etc. Basically it would live forever :) UK would be the way of least resistance. But I will write this out some more, so we know what we are picking etc.
13:37:31  <nielsm> checked again, a limited liability company in denmark is able to form without capital requirements, it just needs to conduct business furthering the financial interests of the owners. so it could mean that a company performing certificate duties and app store publication would need to take a "consulting fee" if formed in denmark, but I don't think there's any lower limit on the turnover in
13:37:31  <nielsm> the company
13:42:18  <Eddi|zuHause> "conduct business furthering the financial interests of the owners." <-- i don't like the sound of that
13:43:25  <Eddi|zuHause> plus, if "they" ever decide to acutally sue for infringement, that "limited liability" will probably kick you hard
13:43:34  <TrueBrain> tnx nielsm ; it is funny to me how every countries does the same, but SLIGHTLY different :D
13:46:11  <andythenorth> wouldn't limited liability be preferrable?
13:46:26  <andythenorth> in UK law LL is vastly preferrable
13:56:01  *** andythenorth has quit IRC
13:57:19  *** Flygon has quit IRC
13:58:09  <Samu> my ship depots are blocking less, but still blocking
14:24:52  <Samu> i think i made it! no more ship depots blocking
14:57:19  <supermop_Home_> incorporate as a shady corporation in Delaware?
15:09:42  *** andythenorth has joined #openttd
15:17:42  <andythenorth> dev appreciation here
15:31:38  *** kouett has quit IRC
15:50:02  * andythenorth has finished work now
15:50:08  <andythenorth> can we talk about trains and stuff?
16:06:23  <Eddi|zuHause> what about trains or stuff would be worth talking about?
16:21:48  *** glx has joined #openttd
16:21:48  *** ChanServ sets mode: +v glx
16:24:49  <Wolf01> Ok, I'm done, I can't work anymore today
16:30:31  *** gelignite has quit IRC
16:41:35  <TrueBrain> updated the gist with what I gathered from each country :)
16:56:48  <Samu> dayum, the pathfinder is outsmarting me
16:56:53  *** luaduck has quit IRC
17:01:05  * andythenorth looks for issues to close
17:02:37  *** kouett has joined #openttd
17:04:23  *** frosch123 has joined #openttd
17:04:54  <Samu> looks like a bug
17:05:09  <Samu> but it isn't
17:05:45  *** WormnestAndroid has quit IRC
17:06:02  *** WormnestAndroid has joined #openttd
17:06:05  <Samu> if it build the lock in the middle, the rivers would become disconnected to the meaningless left side river tile
17:07:47  <Samu> river becomes disconnected if it did this, lol
17:08:05  <LordAro> check your rambling, Samu
17:08:44  * andythenorth writes a comment, deletes it
17:09:55  <LordAro> // andythenorth
17:10:04  <Samu> so it builds like this
17:10:33  <Samu> just wanted to share LordAro  :(
17:10:58  <LordAro> Samu: sharing is good, needlessly spreading it over 3 images and 6 lines is a bit much
17:14:22  <andythenorth> I was going to comment about auto-replace, then I realised I was adding nothing :)
17:15:00  *** luaduck has joined #openttd
17:25:38  *** gelignite has joined #openttd
17:40:52  <TrueBrain> frosch123: uwsgi is possibly not a way to go .. turns out uwsgi creates different processes to serve the requests
17:40:57  <TrueBrain> kinda kills your sessions :D
17:41:02  <TrueBrain> means we have to put that in a database
17:41:10  <TrueBrain> still looking into it, btw .. meh
17:43:22  <frosch123> isn't there a limit to process the amount
17:43:37  <frosch123> otherwise, i guess we can run the regular flask server
17:43:54  <TrueBrain> you can limit to 1
17:43:55  <frosch123> i think the "nor for production" is about that single-threadedness
17:43:59  <TrueBrain> but that has the same issue as a regular flask server
17:44:04  <TrueBrain> it can only handle 1 request at the time
17:44:18  <TrueBrain> which means that while it is waiting on the API
17:44:19  <TrueBrain> it stalls
17:44:21  <TrueBrain> everything
17:44:37  <TrueBrain> aiohttp avoids this, by allowing other requests while stalling on net I/O
17:44:41  <TrueBrain> which is the most common I/O :)
17:45:02  <frosch123> well, there is another option
17:45:17  <dwfreed> flask sessions are completely contained within the cookie given to the client
17:45:18  <frosch123> we can make it stateless by storing all information in signed cookies
17:45:30  <frosch123> yes, what dwfreed says :p
17:45:36  <dwfreed> you don't even need to do anything special, that's just how they're implemented
17:45:38  <TrueBrain> well, he says we are doing it, which is untrue ;)
17:45:49  <DorpsGek_III> [OpenTTD/OpenTTD] DorpsGek pushed 1 commits to master
17:45:49  <DorpsGek_III>   - Update: Translations from eints (by translators)
17:45:54  <frosch123> just that i avoided that, since i don't use magic if i do not have to
17:46:07  <TrueBrain> the other step we can make is port it to aiohttp
17:46:11  <frosch123> TrueBrain: i specifically avoided using it :p
17:46:11  <TrueBrain> is nearly trivial
17:46:16  <TrueBrain> some minor syntax difference
17:46:19  <TrueBrain> :D
17:46:43  <TrueBrain> switching to aiohttp means we can make the full app async
17:46:45  <frosch123> there are two global states i use. flask.request and @afterthisrequest
17:47:12  <TrueBrain> I assume the templates are jinja2?
17:47:21  <frosch123> yes
17:47:47  <TrueBrain> so those are the two routes, I think
17:48:10  <frosch123> with escaping enabled (which for some insane reason is not the default for jinja2)
17:49:06  <frosch123> anyway, does uwsgi handle multiple requests by starting multiple processes? or can the same pythno instance handle multiple reqeuest?
17:49:25  <TrueBrain> both :D A flask process can handle multiple request, just one by one
17:49:36  <TrueBrain> uwsgi starts multiple processes, and distributes the requests
17:50:02  <TrueBrain> what I like about aiohttp, is that it makes everything simpler (no nginx or uwsgi)
17:50:07  <TrueBrain> what I like about flask, is that we already have it :D
17:50:10  <frosch123> another option is to leave that for future
17:50:26  <TrueBrain> and use "flask run" for now?
17:50:36  <TrueBrain> works for me
17:50:42  <frosch123> yes, only authors use the frontend
17:50:55  <TrueBrain> the blocking will be annoying
17:50:59  <TrueBrain> but I agree, given the deadline, no prio
17:51:07  <frosch123> can nginx cache the non-authorized sites?
17:51:23  <TrueBrain> if we add caching, it will be in the AWS infra
17:51:30  <TrueBrain> lot easier :D
17:51:42  <frosch123> ok :)
17:51:49  <TrueBrain> (I like simple Dockerfiles :P)
17:51:49  <dwfreed> ***do not*** run aiohttp on port 80/443 directly
17:52:27  <TrueBrain> okay, in that case I have most of the Docker-work done .. just need to add GitHub actions, and enable the deployment to AWS
17:52:37  <TrueBrain> dwfreed: I am kinda waiting for another sentence; those broad statements are not really useful :D
17:53:35  <TrueBrain> as for port 443, I think the statement: never run port 443 from a docker, is a valid statement :)
17:53:56  <TrueBrain> unless you REALLY know what you are doing :D
17:54:01  <TrueBrain> (nginx-ingress, traefik, ..)
17:54:02  <dwfreed> apache and nginx have gone through extensive validation that their untrusted input handling isn't terrible
17:54:12  <dwfreed> aiohttp cannot say the same
17:54:20  <TrueBrain> ah; that is what you were aiming for
17:54:29  <TrueBrain> I would even say that holds for most httpds in Python
17:54:48  <TrueBrain> well, it has been a while since a heavty CVE came by on requests
17:54:50  <TrueBrain> or urllib
17:54:56  <TrueBrain> but only a matter of time, I am sure :D
17:55:02  <dwfreed> if aiohttpd is your app server, fine, but always front it with a regular http server
17:55:18  <TrueBrain> dwfreed: how about the AWS CloudFront? And AWS ALB? Are those sufficient ? :P
17:55:27  <TrueBrain> (we are kinda not new to the scene here ;) :D)
17:55:28  <dwfreed> imo, no
17:55:45  <TrueBrain> OpenTTD has always had frontend webservers that .. are slightly more hardened than your average
17:55:46  <dwfreed> other perks: your http server can serve the static content directly, no need to touch python at all
17:56:22  <TrueBrain> dwfreed: if those are broad statements, agreed. If they are aimed at OpenTTD .. guess you never checked the OpenTTD infra :)
17:56:42  <dwfreed> nginx is significantly faster at serving static content than anything python
17:57:01  <TrueBrain> that is, in the most broad sense, not true. In the average case, it is :)
17:57:20  <TrueBrain> I remember trying to pipe 400 MiB files through nginx in the default config .. that was a horrible experience :D
17:57:48  <TrueBrain> but okay, those blank statements are not helping the current issue :)
17:58:11  <TrueBrain> frosch123: okay, this seems to work. So we run flask for now. I add it to the wishlist to improve :D
17:58:22  <TrueBrain> one thing that stalls heavily, is publishing
17:58:26  <TrueBrain> takes ~5 seconds or so
17:58:40  <TrueBrain> but .. what are the odds two BaNaNaS managers are active at the same time :P
17:59:14  <andythenorth> 1.1
17:59:47  <andythenorth> alternately, support 1 and wait for complaints
18:00:08  <TrueBrain> for launch, I am really fine with it tbh
18:00:15  <TrueBrain> we need to get it done more than anything else
18:00:32  <frosch123> coop eints was blocked for 3 minute every day at 17:45, noone complained :)
18:01:28  <TrueBrain> well, given there are pretty strict health-checks on these servers, I kinda want to solve it
18:01:30  <TrueBrain> but FOCUS :D
18:01:47  <TrueBrain> which reminds me .. is there a healthz endpoint already ..
18:02:01  <frosch123> no, unless flask has one by default
18:02:10  <TrueBrain> hope not :D
18:02:33  <frosch123> also i had a question. is the uuid you assign to files the id from tus? or do you make up your own id?
18:02:41  <TrueBrain> tus generates those
18:02:53  <TrueBrain> why?
18:03:16  <frosch123> i figured i need to dynhtml the "delete file" button after uploading one
18:03:36  <TrueBrain> haha, yes
18:03:38  <frosch123> so the js needs to know the id for deleting
18:03:44  <TrueBrain> you got tus-javascript to work?
18:03:48  *** Gustavo6046_ has quit IRC
18:04:04  <frosch123> i learned npm yesterday and managed to load it
18:04:12  <frosch123> i want to finish using it today
18:04:13  *** Gustavo6046_ has joined #openttd
18:04:17  <TrueBrain> :D
18:04:19  <TrueBrain> and never touch it again? :P
18:04:56  <frosch123> likely :)
18:05:13  <frosch123> "apt-get install npm" was funny
18:05:34  <frosch123> ~5 MB in ~250 packages
18:06:24  <TrueBrain> "funny", he says
18:06:36  <TrueBrain> but wasn't there a variant that didn't need the npm bla? Hmm
18:07:09  <frosch123> it's just a build-dep
18:07:12  <frosch123> does it matter?
18:07:33  <frosch123> the runtime gets a single .min.js
18:08:34  <frosch123> though, i guess that's only a theory until it actually works
18:08:34  <TrueBrain> good
18:08:36  <TrueBrain> no, that is fine
18:08:46  <TrueBrain> Docker can have multiple buildsteps
18:08:55  <TrueBrain> but I would hate for npm to be on the production docker :)
18:09:16  <TrueBrain> okay ... one last thing .. I need to disable the 200 log lines .. I just want it to show non-2NN
18:11:42  <TrueBrain> okay, I embedded Sentry, Dockerfile, github actions .. now all I need to do is get the AWS infra ready to start this, and it should be good to go :D
18:12:40  <frosch123> TrueBrain:
18:12:43  <TrueBrain> and that, that is a job for tomorrow :D
18:14:02  <TrueBrain> frosch123: awh, that doesn't log errors :(
18:15:06  <frosch123> huh, i expected setting the logging level to error would do just that
18:15:52  <TrueBrain> seems "500" errors are at INFO level :D
18:16:34  <frosch123> <- then it seems to be more work
18:16:36  <TrueBrain> seems INFO is doing the trick
18:17:37  <TrueBrain> no, it is not
18:17:37  <TrueBrain> hmm
18:18:00  <TrueBrain> well, otherwise I can disable it and trust Sentry informs me of issues
18:18:46  <frosch123> i added logging of non-200 api calls via the same flask loger
18:19:22  <frosch123> app.logger.warning("API failed: {}".format(r.text)) <- those are warning level
18:20:03  <TrueBrain> yeah; it uses the default logging from Python
18:20:06  <TrueBrain> so that is good :)
18:20:34  <frosch123> i guess we can set the logger to WARNING, and add some @app.after_request to add another warning for non-200 responses
18:20:35  <TrueBrain> we do need to rescope some try/excepts btw :D Some also catch programmer errors :)
18:20:46  <TrueBrain> sneaky, but I like how you think :D
18:21:13  <frosch123> i had some trouble with some API calls returning empty text, instead of json
18:21:40  <frosch123> and since i did not wanted to distinguish api calls, i just cought the exceptions and discarded them :)
18:21:49  <TrueBrain> yeah .. that is fine by me
18:21:54  <TrueBrain> but you have another try/except around that
18:22:04  <TrueBrain> :D
18:22:17  <TrueBrain> pretty sure most of our Python code needs more work .. but that is not for now
18:22:24  <TrueBrain> get-it-to-work-first-improve-after
18:22:35  <TrueBrain> right, tomorrow I will make sure this all runs on staging :)
18:23:00  *** Progman has joined #openttd
18:23:34  <frosch123> yes, if 200 json() throws, it's ok. if 401 json throws, it's not.
18:25:07  <TrueBrain> basically, with sentry, you want to get as much exceptions as possible for which you did not program :)
18:25:22  <TrueBrain> so the fewer try/except, especially with Exception, the better :)
18:25:46  <TrueBrain> I found several bugs in the API already that way :P
18:26:02  <TrueBrain> the one I haven't fixed: timeout of sessions can cause a "dictionary changed size during iteration"
18:26:11  <TrueBrain> I was sure that was no longer possible in Python .. I was wrong :P
18:27:49  <frosch123> i am too much of a c++ programmer to even imagine that would work somewhere
18:48:37  *** Artea has joined #openttd
19:20:41  <andythenorth> oof
19:20:46  * andythenorth should stop ebaying
19:21:48  <frosch123> selling lego?
19:22:25  <andythenorth> buying trains
19:22:29  <andythenorth> I do need to sell Lego
19:22:31  <peter1138> Beer o'clock
19:23:57  <peter1138> Ok, that white stilton is quite nice.
19:24:33  <andythenorth> Wolf01 what shall I sell?
19:24:53  <andythenorth> this needs to go
19:26:51  <andythenorth> maybe this too
19:27:04  <andythenorth> and this
19:27:09  <andythenorth> so much space they take up
19:28:41  <FLHerne> andythenorth:
19:29:23  <andythenorth> that's quite the website
19:30:49  <FLHerne> Besides needing three paragraphs explaining how to adjust your browser, it's quite nice :P
19:32:58  <andythenorth> it's like 1998 called
19:35:58  <FLHerne> The best thing is the note rejoicing that in 2019 Safari added support for some behaviour of frames
19:37:42  <FLHerne> Plenty of old websites still online, but still updated with attention to modern browser 'support'?
19:40:12  <Wolf01> <andythenorth> this needs to go <- I would buy this (I already have the other 2) but I don't have space too
19:43:10  *** frosch123 has quit IRC
19:47:16  *** k-man__ has joined #openttd
19:53:53  *** k-man_ has quit IRC
20:28:16  <supermop_Home_> beer here too
20:35:32  <DorpsGek_III> [OpenTTD/OpenTTD] agentw4b commented on issue #8077: Toll
20:38:16  *** syr has quit IRC
20:38:41  *** syr has joined #openttd
21:17:31  <supermop_Home_> now that i am old, it's all session ales
21:25:29  <peter1138> I had just the one.
21:26:12  <peter1138> And it was only a 1/3rd of a litre.
21:34:43  *** gnu_jj has joined #openttd
21:37:36  *** gnu_jj__ has quit IRC
21:37:46  * LordAro has broken out the whisky
21:37:50  <LordAro> i ran out of beer
21:38:04  <andythenorth> how about some methanol?
21:38:11  * andythenorth working on FIRS though
21:38:26  <LordAro> methanol bad, ethanol good
21:39:57  <andythenorth> best not confused
21:40:54  <andythenorth> maybe we should increase the cargo limit :P
21:40:55  <andythenorth>
21:40:59  <Samu> I made a topic about Native Heap
21:41:28  <Samu> - thoughts welcome there
21:41:32  <Samu> cyas good night
21:42:11  <supermop_Home_> i want to play chemicaltown
21:42:29  <andythenorth> I haven't even tried a game yet
21:42:34  <andythenorth> it's very early days :)
21:45:36  <andythenorth> some commodity chemicals need pipelines :P
21:46:10  <andythenorth> notably methane, syngas, ethylene
21:48:09  *** Samu has quit IRC
21:50:58  *** sla_ro|master has quit IRC
22:04:28  <andythenorth> oof I need to sleep :D
22:04:30  *** andythenorth has quit IRC
22:16:25  *** Wormnest has quit IRC
22:23:38  *** WormnestAndroid has quit IRC
22:26:14  *** WormnestAndroid has joined #openttd
22:26:57  *** gelignite has quit IRC
22:38:59  *** nielsm has quit IRC
22:40:40  *** nielsm has joined #openttd
22:44:52  *** Wolf01 has quit IRC
23:01:13  *** Progman has quit IRC
23:08:08  *** tokai|noir has joined #openttd
23:08:08  *** ChanServ sets mode: +v tokai|noir
23:15:00  *** tokai has quit IRC
23:45:11  *** Gustavo6046_ has quit IRC
23:45:36  *** Gustavo6046_ has joined #openttd
23:46:22  *** Gustavo6046_ is now known as Gustavo6046

Powered by YARRSTE version: svn-trunk