Skip to content

Latest commit

 

History

History
372 lines (276 loc) · 16.3 KB

2021-06-18.md

File metadata and controls

372 lines (276 loc) · 16.3 KB

< 2021-06-18 >

2,889,786 events, 1,482,905 push events, 2,365,598 commit messages, 178,551,415 characters

Friday 2021-06-18 01:34:42 by Quacky2200

New branch convert-to-library

Decided this project could do with some new love and attention...

What's new?

  • Web sockets I needed a web socket and rather than adding a massive external library I thought it would be nice to have another small addition and was able to learn about the underlying technology. Fun :)

  • Move to a library This project was originally supposed to be a library but it turned into a web server example project, so I have now included both. One that you can import easily, and another you can run for a demo.

  • Added a Router I had a need to port my JS client-side router to C# and found it useful so it's staying for now, this has been upgraded in the example demo.

  • New namespaces/class names I felt these are now better this way. Eventually I may tune websocket to WebSockets.Client and WebSockets.Server and currently undecided since there is no need for a WebSocket client right now...

  • Fixes to serve directory in example project This has been slightly updated so that the messages are more consistent across directories, along with removal of 'Runnables' which weren't an entirely satisfying method for index/filetype resolution.

  • cjs extension is now a route Similar to a nginx *.php route, this should now perform similar sequences but at the moment it's mostly unused functionality.

  • Fixed constant client IOException This was found as it should ideally have been handled in the request read method than outside of it, and I've changed to a sane timeout as I felt we were timing out too quickly for slow machines or network connections.

As with any commit I've made sure to tidy things up too. These changes should be quite stable... Yay :)


Friday 2021-06-18 04:23:11 by Brad Allred

Add EnumFlags.h

so that we can generically use restrictive enums with bitwise operators

sometimes I hate C++, but at least its write ugly shit once


Friday 2021-06-18 08:47:22 by Sidharth Kshatriya

  • Port over "Get rid of RR_RESERVED_ROOT_DIR_FD" from the following rr (https://github.com/rr-debugger/rr) commit:


    commit 25c93ba12c2e05d355eb599727bf9c39c95e99a1 Author: Keno Fischer keno@juliacomputing.com Date: Thu Apr 2 01:04:28 2020 -0400

    Get rid of RR_RESERVED_ROOT_DIR_FD
    
    Admittedly, this change is primarily motivated by a philisophical
    objection to RR_RESERVED_ROOT_DIR_FD, rather than any great practical
    need. It just seems to me that if the tracee went through all the
    trouble of hiding the real root, then we shouldn't just give it an
    easy way to get it back. Of course, I'm not suggesting that this
    would be the only issue with running an external rr tracer on a
    sanboxed process without compromising that sandbox's security
    guarantees - I'm sure there's many others. However, this one's
    a pretty obvious one, so I'd like to remove it if possible.
    
    That said, there are a couple of minor practical benefits:
    - It's more robust to weird setups (weird mount setups, tmp being
      a symlink).
    - It's more robust when recording programs that change uid
    - As a result, we can get rid of a few fallbacks that would only
      get used if we happened to be in one of these weird setups (e.g.
      where we would fail to map the rr page).
    - We can use memfd in more cases. This is a slightly benefit if /tmp
      happens to not be a tmpfs, which happens occasionally.
    - There was a note in the code that things could fail in the nesting
      scenario if somebody chroot'ed between the outer and the inner rr
      (e.g. by recording a container that itself launched an rr process).
      That should work fine now.
    - We avoid a corner case where after a setuid, some files in the trace
      directory would have the wrong uid.
    
    None of these are particularly important, but together, I find
    them convincing enough that I think this is worth doing (I happened
    to need the send_fd functionality this depends upon for an
    unrelated change, which made doing this quite easy).
    
    The one place where this is slightly annoying is in open_mem_fd, because
    we now need to send an fd and then get a new fd back. However, that
    only needs to happen if rr fails to open /proc/<pid>/mem. A comment
    in the code says that Ubuntu kernels have this behavior. However,
    I was unable to reproduce on current Ubuntu kernels. It's also
    counterbalanced by allowing us to do slightly fewer syscalls elsewhere.
    And lastly, with pidfd_getfd and related functionality, these kinds
    of file transfers might in the future be quite a bit faster anyway.
    

  • Also make various misc/related changes especially related to path/filename handling


Friday 2021-06-18 08:47:29 by Anirudh Uppunda

This commit adds today's weather along with the morning, evening and night weather details. Also adds nested scrolling to support landscape mode


Friday 2021-06-18 09:41:37 by Keno Fischer

Get rid of RR_RESERVED_ROOT_DIR_FD

Admittedly, this change is primarily motivated by a philisophical objection to RR_RESERVED_ROOT_DIR_FD, rather than any great practical need. It just seems to me that if the tracee went through all the trouble of hiding the real root, then we shouldn't just give it an easy way to get it back. Of course, I'm not suggesting that this would be the only issue with running an external rr tracer on a sanboxed process without compromising that sandbox's security guarantees - I'm sure there's many others. However, this one's a pretty obvious one, so I'd like to remove it if possible.

That said, there are a couple of minor practical benefits:

  • It's more robust to weird setups (weird mount setups, tmp being a symlink).
  • It's more robust when recording programs that change uid
  • As a result, we can get rid of a few fallbacks that would only get used if we happened to be in one of these weird setups (e.g. where we would fail to map the rr page).
  • We can use memfd in more cases. This is a slightly benefit if /tmp happens to not be a tmpfs, which happens occasionally.
  • There was a note in the code that things could fail in the nesting scenario if somebody chroot'ed between the outer and the inner rr (e.g. by recording a container that itself launched an rr process). That should work fine now.
  • We avoid a corner case where after a setuid, some files in the trace directory would have the wrong uid.

None of these are particularly important, but together, I find them convincing enough that I think this is worth doing (I happened to need the send_fd functionality this depends upon for an unrelated change, which made doing this quite easy).

The one place where this is slightly annoying is in open_mem_fd, because we now need to send an fd and then get a new fd back. However, that only needs to happen if rr fails to open /proc//mem. A comment in the code says that Ubuntu kernels have this behavior. However, I was unable to reproduce on current Ubuntu kernels. It's also counterbalanced by allowing us to do slightly fewer syscalls elsewhere. And lastly, with pidfd_getfd and related functionality, these kinds of file transfers might in the future be quite a bit faster anyway.

(cherry picked from commit 25c93ba12c2e05d355eb599727bf9c39c95e99a1)


Friday 2021-06-18 17:03:15 by Akash Askoolum

feat: Define SSMRunCommandPolicy in the CDK stack

Moving the SSMRunCommandPolicy resource into the CDK stack.

This is chosen because it's fairly easy to test if it works: if successful, we can continue to connect to an instance using ssm-scala.

AMIgo's stack defines two additional actions over the standard GuSSMRunCommandPolicy:

  1. ssm:StartSession
  2. ssm:TerminateSession

Slightly annoyingly, GuSSMRunCommandPolicy is a singleton and doesn't accept additional input. Therefore, we have to add these actions into a new statement on the policy.

GuSSMRunCommandPolicy's Roles array is kinda hilarious (see snapshot test change). The good news is it's done by AWS CDK magic, so should work!


Friday 2021-06-18 18:03:32 by Misa

Fix regression: quick stopping changing drawframe

This fixes a regression that desyncs my Nova TAS after re-removing the 1-frame input delay.

Quick stopping is simply holding left/right but for less than 5 frames. Viridian doesn't decelerate when you let go and they immediately stop in place. (The code calls this tapping, but "quick stopping" is a better name because you can immediately counter-strafe to stop yourself from decelrating in the first place, and that works because of this same code.)

So, the sequence of events in 2.2 and previous looks like this:

  • gameinput()
    • If quick stopping, set vx to 0
  • gamerender()
    • Change drawframe depending on vx
  • gamelogic()
    • Use drawframe for collision (whyyyyyyyyyyyyyyyyyyyyyyyyyyy)

And now (ignoring the intermediate period where the whole loop order was wrong), the sequence of events in 2.3 looks like this:

  • gamerenderfixed()
    • Change drawframe depending on vx
  • gamerender()
  • gameinput()
    • If quick stopping, set vx to 0
  • gamelogic()
    • Use drawframe for collision (my mind has become numb to pain)

So, this means that all the player movement stuff is completely the same. Except their drawframe is going to be different.

Unfortunately, I had overlooked that gameinput() sets vx and that animateentities() (in gamerenderfixed()) checks vx. Although, to be fair, it's a pretty dumb decision to make collision detection be based on the actual sprites' pixels themselves, instead of a hitbox, in the first place, so you'd expect THAT to be the end of the dumb parade. Or maybe you shouldn't, I don't know.

So, what's the solution?

What I've done here is added duplicates of framedelay, drawframe, and walkingframe, for collision use only. They get updated in gamelogic(), after gameinput(), which is after when vx could be set to 0.

I've kept the original framedelay, drawframe, and walkingframe around, to keep the same visuals as closely as possible.

However, due to the removal of the input delay, whenever you quick stop, your sprite will be wrong for just 1 frame - because when you let go of the direction key, the game will set your vx to 0 and the logical drawframe will update to reflect that, but the previous frame cannot know in advance that you'll release the key on the next frame, and so the visual drawframe will assume that you keep holding the key.

Whereas in 2.2 and below, when you release a direction key, the player's position will only update to reflect that on the next frame, but the current frame can immediately recognize that and update the drawframe now, instead of retconning it later.

Basically the visual drawframe assumes that you keep holding the key, and if you don't, then it takes on the value of the collision drawframe anyway, so it's okay. And it's only visual, anyway - the collision drawframe of the next frame (when you release the key) will be the same as the drawframe of the frame you release the key in 2.2 and below.

But I really don't care to try and fix this for if you re-enable the input delay because it's minor and it'd be more complicated.


Friday 2021-06-18 18:10:56 by Terrain2

sort anims into folders

the filenames are used in the scripts, NOT their names in the animation controller, and since some were duplicate, they got an _0 or _1 at the end by the decompile, and that broke the scripts because the player was looking for an anim called "Eat" and that didn't work when the anim was actually called "Eat_0" in the fucking files, holy shit what is this why did that not work, anyways fixed now, no more issue


Friday 2021-06-18 19:34:11 by Voyage

The first alpha is almost finished !

YAY !

With constant values support ! I'll go with that first, anyway. Dynamic variables support might follow afterwards. I have to support constant first, since ReadDynamicVariable needs you to provide the name... through a constant string value !

You can try to load the Example program (and don't click on Save before, or you'll nuke it !) to see how it goes at the moment.

There's still SO many things to fix. I've hit many issues with Godot, with things like :

  • Inability to parse 64-bit integers from strings (in 2021)
  • Hash() functions returning the same numbers on different strings
  • The sheer inability for Godot to provide code completion on typed onready var variables
  • The whole inspector to script nodes attributions being broken

Still, the GraphEdit system is kind of working correctly, and thanks to that, the first alpha should be released once the interpretor is done on the NeosVR side. I'll add Websocket streaming support for that reason, since parsing files on NeosVR is stupidly hard, if you want some user-friendlly interaction.

So, yeah... SOON ! ON YOUR SCREEN ! Remote LOGIX Alpha 1

Signed-off-by: Voyage voyage@miouyouyou.fr


Friday 2021-06-18 20:37:46 by Alexandru Scurtu

[DNM] raphael: Ignore selinux neverallows

  • Fuck you, Dirac.

Change-Id: If2df6adb12d28219c9541ed2ff7a0d9a6f54b745


Friday 2021-06-18 22:27:56 by Ferran-Roger Basart i Bosch

I was missing the whole I FUCKING HATE MY LIFE kind of feel UwU


Friday 2021-06-18 22:35:36 by EdwardNashton

Bad Boys Den: Update of Raider's Base. (#325)

  • Bad Boys Den: Update of Raider's Base.

Remade one shop to Butcher Shop. Add a small Warehouse with graveyard. Slightly remade a Garage, improved living house and the Bar.

  • Bad Boys Den: Small Fixes

  • Bad Boys Den: Hatred of Low Walls

Fixed god damn low walls. Also added a few things like carcass. pickaxes etc.

  • Bad Boys Den: Extra Fixes fo free!

Spotted a some few small errors. Fixed it.

  • Bad Boys Den: End My Suffering

  • Bad Boys Den: Area Errors...Area Errors Everywhere!

Fixed an areas near Administration.

Co-authored-by: Edward Nashton eddienigma48@gmail.com


Friday 2021-06-18 23:15:19 by Doodlebot11

fuck you yo worthless piece of shit external hard drive I fucking hate you


< 2021-06-18 >