« first day (1223 days earlier)      last day (2611 days later) » 

7:00 PM
sd toasted
 
metasmoke now on 5.1.0rc1. Ping me with regressions.
 
all of them
 
@Glorfindel I've got a "prototype" of READi almost finished; would you like me to put it up on GH?
 
@Undo 31/6 x + 159/4
 
7:11 PM
CI on 62a7ad1 succeeded.
 
!!/pull
 
@Undo CI build is still pending, wait until the build has finished and then pull again.
 
Mrph
 
Restart: API quota is 18218.
 
thx
 
7:12 PM
Rene I was reminded your name is cool.
No sarcasm, really. Your name sounds cool.
 
@quartata it took me way too long to get that :P
 
@Undo :P
 
Rene Shriekin'
 
sd k
 
7:13 PM
tpu- by MAR
 
This one again
 
LOL [duplicate]
I wish we could close spam as dupe of other spam.
 
That almost looks like an intelligent attempt to get the system to mark the referenced questions as duplicates
Which means this one is specializing
 
Well, still stupid enough to be caught
 
Does Metasmoke's WebSocket give me the latest posts? I don't see anything about that in the documentation, just feedbacks
 
7:16 PM
ApiChannel does, yes.
The docs aren't really anything currently
 
@M.A.R. I'm cool ...
 
@rene I'm not sure low temperatures are healthy for a plant
 
@NobodyNada looks cool! I don't have much time this weekend, but I'm eager to try it out.
 
@Glorfindel thanks!
 
@M.A.R. you're right, I've had enough freezing over
 
7:23 PM
blahs
@Undo so stupid question, are answers still being caught correctly or no?
(i.e. is it still fubar)
 
I don't know
Haven't seen one come through, but I don't have a good way to test
 
mmkay i'mma load Overlord and disable that try/accept for a few minutes and see if anything else explodifies
'cause that'll be a traceback then
!!/location
 
@ThomasWard teward/ESXi
 
!!/standby teward/ESXi
 
teward/ESXi is switching to standby
Undo's Raspberry Pi received failover signal.
Restart: API quota is 18133.
 
7:27 PM
wow
!!/standby Undo
aaand it blew up
!!/location
hey look a key error lolo
knew there'd be issues somewhere
 
Restart: API quota is 19993.
 
!!/location
 
@ThomasWard Undo's Raspberry Pi
 
!!/standby Undo
 
7:29 PM
i think it's busted?
!!/location
 
@ThomasWard teward/Overlord
 
oop no it's just slow
 
Restart: API quota is 18129.
[ SmokeDetector ] SmokeDetector started in standby mode at rev 47d0cf9 (Thomas Ward: Remove "Destroy Queue Pickles" from ws.py init.) (running on Undo's Raspberry Pi)
 
oh your RPi is behind
 
7:30 PM
Restart: API quota is 18127.
 
geez that's a LOT of new / hybrid intermediate IDs o.O
twelve lines of IDs o.O
 
Are we supposed to say yes or no @ThomasWard or are you just dabbling in utter amazement?
 
@rene i randomly speak about odd things in Smokey here
wasn't expecting 12 lines of post IDs though lol
 
Ok, noted
 
7:49 PM
@Undo @ArtOfCode so I can see posts going through the answer sections, so I think it's detecting spam proper, maybe. At least if all the other structs work without issue and objects don't have odd encodings
though I'd love to take all our strings and unicodeify them
 
@ThomasWard feel free
 
... but I'm horridly horridly lazy lol
 
@Undo bad user?
 
7:52 PM
yeah, destroyed on SR and I don't feel like pinging a hundred moderators
 
He's got five accounts
unless the one on SR isn't there despite being listed
 
@JanDvorak destroyed on SR so
 
maybe he recreated it already?
 
it's cached
 
7:54 PM
the link 404s
 
That's the likelier explanation
 
ArtOfCode/EC2 received failover signal.
Restart: API quota is 19999.
 
8:15 PM
@NobodyNada thanks, I'll test it tomorrow once there is some spam to flag :P. I got a crash when 1) I choose spam/rude the first time 2) the authentication dialog pops up, and I click 'Done' without authenticating and 3) I choose spam/rude again.
 
@Glorfindel I'll debug; thanks! It can't submit flags yet BTW, just feedback
 
@NobodyNada well, that works :)
It reminds me of the first version of AIM: it doesn't do much yet, but it works and it's easy to see the potential.
 
Crash was because I was lazy; should be fixed now
 
Well, I can't test because I'm authenticated now :P
 
delete and reinstalling clears the token
 
8:21 PM
I know, but I'm lazy as well ...
 
8:45 PM
@ThomasWard Where exactly is this problematic try?
Rules throwing errors is no bueno and should be caught by CI in the findspam tests
 
Was Smokey not catching answers fixed?
 
I believe so.
!!/location
 
@quartata ArtOfCode/EC2
fp- by NobodyNada
 
9:07 PM
Are you sure?
seems fishy
 
@quartata well, that's an actual problem that happens on the site
 
We see these from time to time. This could very well be a legitimate (but off-topic) question - I personally estimate this case to be 50-50. That's not nearly enough to cast a spam flag / feedback tpu-.
 
@NobodyNada Oh all right. I assumed it was just a trick to get you to click on it.
 
[ SmokeDetector | MS ] Bad keyword in body: Its about human growth by makinggood on meta.SE
 
^ blatantly off-topic, but (IMHO) not spam.
 
9:13 PM
animuson got it
 
@SmokeDetector f
@JasonC I have added spam posts from Meta Stack Exchange to the dump.
The dumps might also be useful to run through Smokey, and see what posts aren't detected (yet). Maybe someone of the Python wizards in this room has some spare time to do this?
 
[ SmokeDetector | MS ] Manually reported answer: Tkinter create_image by Mr. Hi on stackoverflow.com
tpu- by Glorfindel
 
9:47 PM
@quartata It's not a try that's been causing issues. It's the except: pass that meant we just ignored errors and continued that caused issues. I've been investigating the core issue, but I more or less have fixed the issue - though, we have other references to question['answers'] in findspam and/or spamhandling that I have to patch
but then after that it should be good to go
@M.A.R. Mostly, we're still ironing out some issues I'm uncovering
 
I've been wanting to clean up how much stuff Smokey logs to console for a while, just so we can get some clearer idea of what's happening
 
@ArtOfCode I think we really should clear up things. But the problem is how we capture error messages, it is all caught somewhere and fubars things
but i agree with you
 
I'm gonna regret doing this... searches for print in entire project
 
so yeah this should work fine
@ArtOfCode you'll find some comments of course from me
 
@ArtOfCode finds himself suffocating under a huge pile of print
 
9:50 PM
leftovers from debugging I kept in place
@ArtOfCode @Undo @angussidney @quartata in case you're curious exactly how I captured the errors in the check_if_spam checks...
^ I basically used that, and lol that's an ugly onebox
 
Yikes
 
(basically, created parent/child from the one link @Undo gave earlier from MS, populated the Post dicts to handle as API requests, and executed.)
(hence, AttributeError and TypeError detections worked)
lel, thanks @ArtOfCode
i was gonna edit it once i was done typing
 
only 68 print calls
 
@ArtOfCode how many are in comments?
 
If we could get those annoying TLD warnings out of the way that would be nice too
 
9:54 PM
since nocrash.py had a bunch of commented out prints more or less to debug the exit codes
@quartata those warnings are there because your system is misconfigured
WITHOUT those warnings, things explode.
they're there like the "Git doesn't work in Windows" stuff because we want to make people know about possible runtime misconfigurations
you'll only see that at startup time if I remember right, when we call nocrash.py
 
!!/errorlogs 100
 
  RAN: /usr/bin/git push origin auto-blacklist-1490307602.74

  STDOUT:


  STDERR:
fatal: could not read Username for 'https://github.com': No such device or address
2017-03-23 22:20:03.535463 UTC
  File "/home/ubuntu/Smokey/excepthook.py", line 48, in run_with_except_hook
    run_old(*args, **kw)

  File "/usr/lib/python2.7/threading.py", line 754, in run
    self.__target(*self.__args, **self.__kwargs)

  File "/home/ubuntu/Smokey/ChatExchange/chatexchange/browser.py", line 714, in _runner
    self.on_activity(json.loads(a))
 
!!/rev
 
> WARNING: Cannot update TLD names, due to tld being system-wide installed and not user-level installed. Skipping TLD names update.
 
9:55 PM
this may also be a terrible idea... creating a helpers.print method and doing a global regex substitution
 
ah that's because we do that once every ws.py start
 
I've seen this on every Smokey instance so everyone's doing something wrong
 
@quartata that's because most people use sudo pip install tld and not pip install --user tld
we need better documentation but still.
 
@ThomasWard Ahh.
A Smokey Docker image could help with that.
 
@ThomasWard that's because it's in requirements.txt and everything else in there should be a global install
 
9:56 PM
in ESXi and Aurora, they're user-space installed tld images, because the tld update command requires write access to the library data dir
 
@quartata yeah, let's not
 
@ArtOfCode True statement. But we may need to separate to user_requirements.txt and then adjust the rules
 
@ArtOfCode Hm?
 
@quartata docker images... let's just not do that
 
@quartata Yeah let's not work with docker images, kthxbai. slaps @quartata's recommendation into /dev/null
 
9:57 PM
I mean, replace docker image with whatever your preferred VM appliance is
 
@quartata Same core issue.
and then we get into different images with different library versions, different Python versions, unpatched OpenSSL...
do you REALLY want to open the can of worms that Docker, and incite the evil that is my tirade about the security risks of Docker?
Pretty sure the answer to that is "no"
 
I was thinking more just the fact that it's effort to have to set up virtual machines to run Smokey. An EC2 server is enough sysadministrative hassle
 
That was very bold.
And italics too.
 
@ArtOfCode or in my case, an ESXi VM on my infrastructure, though I have templates I can just spin, and lxd containers on Daedalus that can load in only a few moments.
but point still stands.
 
9:59 PM
@quartata yes, but that was added more or less to let a windows environment run a dev smokey for testing things
 
@quartata sure, but that's an accessory for Windows development, not a required thing that you have to have to host Smokey
 
less so actual production instances.
 
Did I say it would be a requirement? That would be dumb.
 
point.missed
anyways
 
I just meant for lazy people who wanted to spin up an instance without worrying about fiddly things like this tld thing
 
9:59 PM
@ThomasWard ..missed
 
I sure wouldn't remember to do that
 
would it not be far easier just to separate into requirements and user_requirements?
 
@ArtOfCode yes
 
Wait, that's a thing?
 
hell, even create a two-line install script if you like
 
10:00 PM
@quartata But there's more than just smokey you have to worry about
MetaSmoke keys, etc.
@ArtOfCode that's actually real easy heh
want me to?
(MORE PYTHON DAMN IT!)
 
if you feel like it
 
I've been doing tests and junk without MS. (I don't mean an actual instance that runs in chat, just dev)
 
@ThomasWard nah, for two lines just use bash
sudo -H python -m pip install -r requirements.txt
python -m pip install --user -r user_requirements.txt
 
I would hope everyone who was starting an official instance would know more about this than me
 
i'll go poke things.
 
10:02 PM
@ArtOfCode Oh, I see what you mean.
Hey @ArtOfCode, can you send something (anything) down ApiChannel?
 
@ArtOfCode behold, pushed.
we just need to update readme and wiki
 
@quartata ding
 
Yeah, OK, so for some reason I'm not getting subscribed...
 
@ThomasWard tut making me do more git pulling
@quartata code?
 
It's in Perl, are you sure you want it?
 
10:05 PM
CI on b73576c succeeded.
 
hit me
 
committed.
 
gonna regret this but sure
 
@ArtOfCode would you rather have to rewrite smokey from scratch? :P
 
@ThomasWard Funny, I've debated that a few times too...
 
10:06 PM
LOL
 
that really does sound like effort though
 
CI on 2fe4f08 succeeded.
 
@ArtOfCode at least git commits automagically work and can easily be reverted
flat files with no version control on the other hand...
!!/pull
 
#!/usr/bin/env perl
# vim: set filetype=perl tabstop=2 shiftwidth=2 expandtab:

use AnyEvent::WebSocket::Client;
use JSON;

use feature qw/say switch/;
use strict;
use warnings;

my $MS_HOST = "metasmoke.erwaysoftware.com";
my $MS_KEY  = "<key>";

my $ms_socket;

sub ws_connect {
  say "Connecting to MS...";

  $ms_socket->send(encode_json({
    identifier => {
      channel => "ApiChannel",
      key => $MS_KEY
    },

    command => "subscribe"
  }));
}

sub ws_post {
  say $_[1]->body;
}

AnyEvent::WebSocket::Client->new
 
10:07 PM
Y'know, if we're going to do a python 3 refactor, we may as well make a smokey 2. There are a lot of things that we've had a hard time doing because the codebase is so old, so it might just be worth rewriting at some point
 
Restart: API quota is 19409.
 
@angussidney This, though a large portion of the code base, such as Post objects, can be kept. They actually work and are fairly compliant with Python 3 except for type hinting, but that's not hard to migrate over.
 
@quartata assuming your code is syntactically correct, the connection logic is sound
 
It is. I get pings but I'm guessing my subscription request isn't being sent.
 
@quartata try again? I'll see what logs it generates
 
10:09 PM
Done.
Worth noting that, assuming the message IDs are sequential, the pings give away how many people are currently listening on the cable
 
@quartata {"command"=>"subscribe", "identifier"=>{"channel"=>"ApiChannel", "key"=>"<key>"}
that's literal copy from the logs
 
@ArtOfCode The hell?
Oh, stupid encode_json. One second.
 
CI on d765f66 succeeded.
 
^ you can ignore that one, i just got tired of some of the system stuffs bitching in my IDE environment
 
@quartata oh no, sensitive information ;)
 
10:11 PM
so suppressed the warnings :P
 
@ArtOfCode I know I know :P
Well that's odd. Replacing the send with a print shows it like normal: {"command":"subscribe","identifier":{"channel":"ApiChannel","key":"<key>"}}
@ArtOfCode Wait, is this in JSON or weird magical Ruby syntax?
 
You should be sending JSON
 
I meant the output in the logs
 
logs always show Ruby
 
OK, so I am sending JSON. What's wrong with my JSON?
 
10:14 PM
the fact that you're sending literal <key> instead of an actual key
 
OK, take a look now...
I copy-pasted the MCVE just to make sure it worked. Awkward.
 
okay, you're sending a key now, but identifier should be a string, not an object/hash/dict
 
Ahh yes right
Thank you
Yay!
 
Successfully upgraded to WebSocket (REQUEST_METHOD: GET, HTTP_CONNECTION: upgrade, HTTP_UPGRADE: WebSocket)
 
10:27 PM
[ SmokeDetector | MS ] Pattern-matching website in body: AMP WordPress validation errors by Jose Pablo on stackoverflow.com
 
I'm... not sure what to think of that one
@Undo would know better :P
 
I think that was a little harsh IMO. I mean, he put in a location and title on his profile so he's at least a human, and 5 minutes isn't that much time. I'm not saying the question isn't bad but there's a good chance it's not intended to be spam
At least on PPCG I don't usually sit around refreshing after posting a challenge.
 
they edited \o/
it still needs work but it's no longer looking like weird breast pump / financial investment spam
 
@SmokeDetector f
 
Conflicting feedback on AMP WordPress validation errors.
 
10:40 PM
@QPaysTaxes well, we are power users
 
Conflicting feedback on AMP WordPress validation errors.
Conflicting feedback on AMP WordPress validation errors.
 
new users just use the site differently from us
 
CI on 3d4bf9d failed.
 
shut up flake
 
lol flake
@ArtOfCode is it complaining about line endings?
or something else?
 
10:43 PM
no it's complaining because I'm a tit
 
oh wow
you also broke tests
how massively did you fubar the code, @ArtOfCode
also, starring that XD
 
@ThomasWard probably very
it's probably checking messages that aren't what they used to be any more
 
More than likely.
 
CI on 133a4f1 failed.
 
@QPaysTaxes lol whoops.
 
10:47 PM
they're literally all UnicodeEncodeErrors
 
CI on 4d2d738 failed.
 
@QPaysTaxes that's old now :)
I expect to have broken some different tests this time
...this build log is 7.5k lines long.
and we wait for the next failure
 
CI on c466df8 failed.
CI on 8a5b630 failed.
 
Didn't even have time to go to Vegas and place my bets
 

« first day (1223 days earlier)      last day (2611 days later) »