« first day (586 days earlier)      last day (1189 days later) » 

00:15
@emanresuA why is jsdelivr broken for some files?
and how to make sure they don't break again?
@lyxal heeelp me how to show python version??? welp
c flag
won't work
@lyxal hat does c flag mean?
compiled
!!/run 1 1+ c
[@lyxal: 59686555]
2

STDERR:
global stack, register, printed, output, MAP_START, MAP_OFFSET, _join, _vertical_join, use_encoding, input_level, raw_strings, retain_items, reverse_args, this_function
stack.append(1)

stack.append(1)
rhs, lhs = pop(stack, 2); stack.append(add(lhs, rhs))
00:21
@lyxal
https://lyxal.pythonanywhere.com?flags=oj&code=%60%3A4%24%EA%98%8D%2C%5C%60%28%5B%25%5E%5D%29%5C%60%5C%5C%5C%5C%5C%60%3E%3C%2B-%2C.%5B%5D%5C%60f%3A%E2%86%92%2B%E2%88%91%25%E1%B9%A1'%3B%3AvL%C2%A60p%E1%B9%AAZ%C6%9B%C3%B7%24%EA%98%8Dnh%E2%86%90%3DTuw%E2%88%A8%E2%96%A1%E1%B8%A3%E2%88%87%E2%80%9F%C4%B0%E2%80%9EL%E2%80%BA%E2%80%9E%E2%86%B2p4%24%EA%98%8D%E2%88%91%60%20c&inputs=%3E%2B%2B%2B%2B%2B%2B%5B%7B%7B%3C%2C.%3E-%7D%7D%5D%0AMove%20the%20pointer%20to%20the%20right%0AMove%20the%20pointer%20to%20the%20left%0AIncrement%20the%20memory%20cell%20at%20the%20pointer%0ADecrement%20the%20memory%
no no it goes in the flags box
https://tio.run/##7X1tc9tGmu13/Qruh1uxKkoqAUmlyqlsFQE0QHTjRUCjAQJel65i0RPtlSWVJGcz98/PPadBUiQtWfI4O3d2qqdqIpNEN7qfl/O8onHz1/vfrq/Gf/vbXy6vfz27HN3dn737P0ej2@VfLu7ul7dHo5vbi6v75fnR6Prj/c3H@6NRNjs51fWsqod/FlGkBf59@p/XF1f48/vy9v7i3dnl6vPHu@Xp8urd9fnF1V@ORhdXmOL0cvn78hL3OPuv07t7TP@XO97w/uzi6vTifvnBfsI0GHl2y9/uf7u4O33/8erd/cX11QGuuBn9Mrq5vnllF3v487Do789ubpZX56/4@/5358vb5fvhl8ODnV8mhwf31zfYHW64PevRyPtk4utP5uWow4Pb37DIy9/unhn/68X96R/Xt68ueTnGYClNd2rp@@phN3vr@@Z/f3N48P76dpQWBYhd6dab@LO5Keez8biM/H6RdGmYZ6Zuk7AuqrKNvb7Iom4@69MiK8086dO8mD35e4zfddbUQTkNo7zpAq0SVeReHHTjNOrLxWyC73sdlLkvfenFxxM/E/5ikWGcmB1
@Fmbalbuena well of course it will only work with the external vyxal files
@lyxal ???
all the functions are defined in the vyxal repo
TIO doesn't have the vyxal files
00:29
The c flag outputs the Python program, which must be run in conjunction with the Vyxal files
!!/run `^^^^^^^^^
00:32
@Fmbalbuena ^^^^^^^^^
01:08
Nov 6 at 23:12, by user
It's surprisingly usable, but since I stuck to only basic commands, it really slowed me down. Plus, no linter (I'm sure there's plugins for Vim but weird stuff kept happening to me before)
I don't think Vim is bad, it's just hard for me to use
@user I know what you mean; I felt the same way when I first learned it (I learned the very basics as part of my Linux+ cert), but the April LotM gave me a reason/excuse to get good at using it, and so now I really like it.
Hmm, so you can learn it that quickly? There is hope for me then
Yeah, I pretty much knew how to type stuff, move around, and quit, so most of what I’ve learned about vim came from about 3 weeks of practice/learning, at which point I made my bf interpreter. That project alone taught me most of what I know about using registers/macros.
It’s really fun to golf with Vim because most of your data is displayed and modified as actual, physical text on a page, which is very different from any other language I’ve learned, and makes programming with it surprisingly intuitive.
01:36
Idea: some kind of string modifier to automatically add spaces in dictionary-compressed strings. Could be a flag or some other kind of modifier.
we need date data type
02:32
Idea: Decompress commands. Takes a string and decompresses it as one of: compressed string, compressed number, or dictionary-compressed string. Example use case: Try it Online!
02:59
@lyxal 'cos they're not in master
@emanresuA lol I already figured that out now
The css and js for the site should probably be local because it looks like jsdelivr goes off latest release
Meaning they'd only be updated once a week
For the site that is
Oh :P, I didn't realise that
(Leave the jsdelivr vylight links tho)
Yeah because those can be released any time
03:55
@OldSandboxPosts welcome to Vyxal
I'm glad to see that we have a new plate bot in our wonderful room
on a more serious note, @OldSandboxPosts do you remember how we got the code box line height to not be special?
that's what's happening rn
that's what it should look like
no no I mean on the rewrite site
The rewrite site is copied from the main site
yeah but it's got big text boxes
that's from running it on local host
04:32
What localhost port does it run on by default?
5000
Ok, it's definitely not working
(The script terminates for me)
@emanresuA why are the svgs black?
@emanresuA yeah I've had to make a few changes
@lyxal Shouldn't be
idk looks black to me
04:37
Hm, let me just edit in fill=white, which I missed
Ooops
I originally copied the svgs into separate files without editing, my bad
04:57
I suppose the links'll have to be updated when 2.6 drops
@emanresuA was it you who said you were gonna work on the permalink encoding?
if so, how's it going (if at all)
it's cool if it isn't lol
just asking because all that's left to do before 2.6 is that and PA setup
plus #275 lol
 
2 hours later…
07:09
I've done the permalinking
All that's left is to create an auto-keyboard generator (as in, it makes the descriptions for the on screen keyboard) and get the server going
08:11
@user after you have learned vim, it gets real fast
08:27
@lyxal You better not have percent encoded it
It's not
Ok good
I just copy pasted from vyxapedia
Because I hadnt the frickiest how to b64 a permalink
Don't forget to percent encode '
I just told you it's b64 encoded
Because I copy pasted hypers stuff from vyxapedia
08:32
Oh wait :P
Sorry got mixed up
 
4 hours later…
12:06
btw it'll only look like there's many files changed at the next PR because HTML is fiddly
Lyxal closed issue #275 (`Gg` flags don't work with non-iterables, Vyxal/Vyxal)
12:37
it seems I have forgotten the password to vyxal.pythonanywhere.com
and I seem to have forgotten which email address I used as well
frick.
huh
looks like it was my code golf email
this is too funny
oh boy now to remember how to github integrate on PA
fun
actually, that's for tomorrow
also, the site credentials are in the web design team
...
they're the same release
so why does one have more stars than the other
13:04
1 message moved to Sandbox
shhh
Also, expect 2.6 this week lol
I'll get the site ready tomorrow, open a PR and once that's merged, the rewrite will be finished
Sure there's stuff from #160 that still needs to be implemented, but those can be for later releases
13:34
@lyxal pog
14:11
Idea: We could potentially simplify flaggy stuff if we made the W flag able to interact with other flags. For example, If you wanted to sum the stack at the end of execution, instead of a flag like , you could just do Ws (Wrap stack, then print sum of ToS). It could also let you do stuff that there aren't flags for, such as getting the maximum value on the stack (WG) It might be complex to implement, but it could be a neat/useful change.
@AaroneousMiller how about we just make it so all flags get appended to the code, so vyxal Ws code_here essentially runs code_hereWs, and vyxal code_here '' essentially runs code_here with a score of 0 bytes!
Metavyxal
Idea: Flag to make output flags apply to all output. For example, having that flag along with the s flag will sum the ToS every time you print, instead of just at the end of execution.
14:43
Jul 15 at 5:19, by hyper-neutrino
@lyxal i mean i wouldn't put it past aaron to find another ACE exploit :p
@lyxal ^
15:24
@lyxal ^ I thought pwntools was supposed to prevent that?
lol
16:17
Wait, did you seriously access Bash through Vyxal somehow? O.O
16:37
@user I used Python: open("ACEtest", "w")
Uh
However, I thought that in the event of ACE, pwntools was supposed to prevent stuff like that from being executed
Apparently not
Hmm, any way to restrict the Python interpreter itself so it can't make new files?
securely? or just to stop Python itself making random temp files?
16:39
Securely
you'd need a proper sandbox
@AaroneousMiller pwntools is only acting on the E command, so this is only possible by using the ACE exploit I discovered
^^
@AaroneousMiller wait, I thought that screenshot of bash was a joke about having access to the PythonAnywhere console
have you actually found an ACE?
yep
this is the second one I've found, but the first one was patched
Wait, so it's more than creating new files? It also lets you execute them?
16:42
I can execute any arbitrary Python code I want
That also means that I can execute arbitrary Bash by using sys
have you published this anywhere? Does lyxal know?
Here's an explanation of the other ACE exploit I found:
13
A: A "cheating" quine

Aaroneous MillerVyxal 2.4.0, 50 bytes `\");VY_print(chr(96)+code.split('\n')[3][15:-4])# Vyxal doesn't have a way to read files, but in v2.4.0 and prior, there was an ACE exploit that allowed for arbitrary python to be executed. The ACE: Vyxal is a transpiled language, meaning that every command in a program i...

@pxeger I'm going to put an explanation of it in the Web Design Team in a private post so we can get it fixed
ah, ok
lmao the fact you did that by pasting in the password
But you don't have to use the password to screw stuff up
This is freaky
The formatting of the password showed some of the bugs, which I then built off of to construct the ACE
Btw, what gave you the idea to put the password in in the first place?
¯\_(ツ)_/¯ Curiosity?
17:36
Well, I guess it's a good thing you did :P
Do you have an answer you'd like a +100 bounty on? I'll give it to you once we fix this
I think this is probably why I did:
Jun 23 at 4:56, by wasif
the password is valid vyxal code
Ah
@user I'd probably go with this one
17:38
Oof, the nontrivial Vim interpreter strikes again!
@hyper-neutrino what provider is this?
@pxeger racknerd i believe
@lyxal The password was sent to my email in plain text via a GitHub notification. I suggest we switch to a better method of sharing it (and change the password)
@hyper-neutrino thanks!
@pxeger We shared the password for the current site over discord
17:43
that's not as bad, but still bad
@pxeger BB84 time :P
We could all meet up Down Under. To verify that we're all the real Vyxal gang, everyone must comment on how well Vyxal is implemented. Whoever says "I love the way Vyxal is written" will be ejected into space
actually, I could meet up down under
Make sure to bring your mag boots and antigravity pack
it's ok, I've been before. I'm used to it
@user I don't need to verify my identity. You all know what I look like.
17:50
you am plat
Can I work on integration (i.e. continuous deployment) to PythonAnywhere?
@lyxal
Obviously I'm not lyxal, but I don't see why not.
18:06
@pxeger What's the deploy key for?
Also what's a deploy key?
you know how you can add an SSH key to your GitHub profile so you can connect to all your GitHub repositories?
a deploy key is like that, but attached to a single repository instead of a single user
ah
Is it for the PythonAnywhere thing?
it's to allow code running on PythonAnywhere to access GitHub
Cool. It sounds like you know what you're doing, but I will mention that before, we just used a webook to trigger a git pull whenever there was an update. If you think this is better, though, go right ahead.
well this is basically gonna be that
 
1 hour later…
19:24
structure = tuple(
                k
                for k in structure_dictionary
                if character == structure_dictionary[k][0]
            )[
                0
            ]
bruh
19:44
what the hell
tbf Python doesn't seem to have a normal find method with a predicate, you have to do next(x for x in xs if pred(x)) for some reason
19:58
I'm working on a branch made off of the master branch and am getting a bizarre error now: the line this_function = FN_functionname is erroring because it can't find FN_functionname even though that line is literally inside the function called FN_functionname
20:16
@user is the branch on Github?
No, lemme push it
I just reset and added my changes again, and now the function names aren't being mangled the way I was doing them, they're preserved :|
@AaroneousMiller ^
@hyper-neutrino lol ur right
 
1 hour later…
21:50
@pxeger sure
@AaroneousMiller I uh may be trying to avoid using pwntools because it takes up so much server space
Like holy crap all the documentation it installs and all the other useless libraries
@user why are you working off master?
Because functions aren't actually transpiled as FN_{name}.
They're now VAR_{name}
@lyxal Well I'll PR later
I don't want to make changes directly
@lyxal Oh wait, are we using fresh-beginnings for the site now?
I thought the online interpreter was still on master, that's why I made a new branch off of it
@user online is on finishing touches too
Ah
Welp
There's basically no reason to touch master any more
@AaroneousMiller that happens now anyway
Flags are applied in order of appearance now
As in they are applied using a for loop
22:12
@lyxal When did that become a thing?
@AaroneousMiller a few days ago
It was on the cli-implementation branch
Anyhow yeah I'm not using pwntools anymore
It takes up at least 300mb of the 500mb I have available on PA
Because it needs to be pip installed and it adds a whole bunch of crap that's never used
Because of all its dependencies
So instead I'm using ast.literal_eval
It's built into python and StackOverflow recommended it

« first day (586 days earlier)      last day (1189 days later) »