21
Root
4y

THIS FUCKING DEBUGGER IS IGNORING MY FUCKING BREAKPOINTS

GO TO HELL YOU PIECE OF SHIT

AND RSPEC: FUCK YOUR LIMITED METHOD HIT-COUNTING BULLSHIT! ONE HIT-COUNT PER METHOD FOR THE ENTIRE SPEC IS NOT GOOD ENOUGH!

FJA;KLGAKLGJFKSDHG

Comments
  • 1
  • 5
    `expect(FUCKING).to(receive(:BULLSHIT).exactly(1).time)`

    Error/Failure: FUCKING.BULLSHIT
    Expected: 0 times
    Received: 1 time

    YOU DENSE MOTHERFUCKER!
  • 2
  • 0
    Gosh, have some rum of something. Spread console logs like bob ross
  • 0
    @uyouthe Tried. Logs don’t show up in RubyMine when running specs 🤦🏻‍♀️. At least not on this project anymore.
  • 3
    I got it all working, finally.
    I tore apart my specs and rewrote them to avoid the RSpec bugs.

    Never did get the breakpoints working again.
  • 1
    What the fuck is actually going on with this broken code?!?!?!
  • 1
    o.o Oh, doesn't this have to do with compiled code changing positions at runtime?
  • 2
    The word "debugger" must come from "bugger off", "de" is like "remove" or "make away" 🙃
  • 0
    @Root whenever I read your rants...

    I want to know... What is this atrocity you're developing with?

    It seems not to be Rubys fault per se as far as I understand...

    But more IntelliJ / RSPEC / very common Ruby libraries....

    Out of curiosity: are the tools so shitty and brittle or is it the project itself?
  • 1
    @IntrusionCM The project is a 10+ year monster that’s been upgraded all the way from Rails 2.x. It has about 550mb of source (just the code). Figuring that out on OSX took me a good twenty minutes of manually subtracting byte counts 🙄. Stupid macs.

    Many devs have worked on this, all with their own styles, and with the changing Rails standards and best practices too.

    There are hacks and workarounds aplenty, plus quite a few deprecated features/standards/patterns/gems either outright dead or on dwindling life support. And ofc backwards compatibility for many clients who refuse to upgrade. Some are using the api deprecated in year 2!

    So. Lots of quirks and strange behavior, and a bloody lot of code to get lost in.

    The RSpec bug listed above does seem to be a real RSpec bug, however. There really is no `expect { block }.to invoke(:method).on(object)` pattern, so all method hit-counting is for the entire spec. And redefining them doesn’t always replace the mock correctly, leading to errors that don’t make sense and infuriating debugging sessions.

    I’ve also had many problems with RubyMine, though I can’t say if it’s because of the project or not. But it has always felt clunky to me.
  • 1
    @Root makes sense.

    Yeah. Not letting software (-APIs) die is a huge PITA.

    And yes, JetStorm crumbles when the source is very... Fundamentally broken.

    I remember the pain of importing large PHP into PHPStorm projects and 3-4 h of corrrecting all kind of (auto-assumed) settings. Not as large as half a GiB, but definitely around 75 to 100 MiB.

    And yes, coming with the large feature set from IntelliJ / PHPStorm, it get's bad when it has to support alot of different things.

    Usually pulling the plug or migrating for the clients is the only way to get out of it. Many (linux-) distributions can tell a tale of that... (eg looking at you Mr Python 2).

    Thanks for the explanation, again ;)

    It's always sad when something that could be good is so fundamentally broken by bad choices TM.

    I wanted to try Ruby sometime later, since I like scripted languages.

    Your rant's sparkled my curiosity. XD
  • 0
    Wait. Your rant is perfectly rhythmically aligned with Kendrick Lamar DNA fast flow part
  • 1
    @IntrusionCM Ruby is amazing. Rails is pretty nice, too. But this project is a monstrosity that should have been reincarnated at least once.
  • 1
    @Root I’m reincarnating a project right now lel
  • 2
    @OmerFlame @Root

    Reincarnated...

    I think burning it to the ground and rebuild would be wise.
  • 1
    @IntrusionCM exactly LOL, this weird Ruby code sounds so broken you need to start over
Add Comment