Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Jun 10 19:37
    stale[bot] closed #706
  • Jun 10 19:37
    stale[bot] closed #668
  • May 31 15:15
    tyrcho closed #698
  • May 31 00:29
    stale[bot] labeled #668
  • May 31 00:29
    stale[bot] labeled #698
  • May 31 00:29
    stale[bot] labeled #706
  • May 31 00:29
    stale[bot] commented #668
  • May 31 00:29
    stale[bot] commented #698
  • May 31 00:29
    stale[bot] commented #706
  • May 21 08:40

    mergify[bot] on master

    Update cats-effect to 3.3.12 Merge pull request #734 from sc… (compare)

  • May 21 08:40
    mergify[bot] closed #734
  • May 21 08:34
    scala-steward opened #734
  • May 20 02:17

    mergify[bot] on master

    Update circe-core, circe-generi… Merge pull request #733 from sc… (compare)

  • May 20 02:17
    mergify[bot] closed #733
  • May 20 02:12
    scala-steward opened #733
  • May 14 10:30
    scala-steward opened #732
  • Apr 30 10:34

    mergify[bot] on master

    Update scalafmt-core to 3.5.2 Merge pull request #731 from sc… (compare)

  • Apr 30 10:34
    mergify[bot] closed #731
  • Apr 30 10:29
    scala-steward opened #731
  • Apr 25 11:43

    mergify[bot] on master

    Update sbt-tpolecat to 0.3.1 Merge pull request #730 from sc… (compare)

Gavin Bisesi
@Daenyth
I see
mm
yeah so like consumer -> producer -> Stream.bracket and in the bracket, do your cleanup logic there
Then the closure of both consumer and producer waits for that
but in general I do recommend you rethink the pattern because you can't prevent or handle a kill -9
So have an idea of what cleanup you do when the process for this code just vanishes
Sebastian Voss
@sebastianvoss
OK cool, let me try this. In case the shutdown is not graceful the client will reconnect and continue where it left off. This is only needed for graceful shutdown/logout.
Sebastian Voss
@sebastianvoss
I set automaticRecovery = false. On connection error I'm seeing WARN com.rabbitmq.client.impl.ForgivingExceptionHandler - An unexpected connection driver error occured (Exception message: Connection reset). As I have to send some messages to the broker after reconnect I would prefer to let the whole app stop and cleanly restart. Is there a way to do that?
Gabriel Volpe
@gvolpe
@bpholt I set up sbt-ci-release so now the publishing to Sonatype is automated. If you want to try out your changes, you can use this SNAPSHOT version: 0.0.0+1-0af65537-SNAPSHOT. I'll make a release in the next few days when I get some time...
Brian P. Holt
@bpholt
Oh, awesome! I'll give that a shot
Brian P. Holt
@bpholt
is there a specific resolver I need to use to pull that in? I haven't tried using published snapshots before
Brian P. Holt
@bpholt
found it:
resolvers += Resolver.sonatypeRepo("snapshots")
Brian P. Holt
@bpholt
Shoot, I forgot to add the new fs2-rabbit-testkit to the aggregated projects in fs2-rabbit-root, so I don't think it was published
Gabriel Volpe
@gvolpe
Huh! Well that's easy to do and when it gets merged into master you will have a SNAPSHOT ready to try out in a few mins
Gavin Bisesi
@Daenyth
Forgetting to aggregate in sbt is the worst :(
I've done that so many times
Brian P. Holt
@bpholt
Oh yeah, I'm more surprised when I remember to do it :joy:
Gavin Bisesi
@Daenyth
I hate that everything looks fine :(
CI just runs, everything green :tada:
because you didn't run the tests for the new module either
Brian P. Holt
@bpholt
🤦‍♂️
I ran them in IntelliJ… at least, I thought I did
yeah everything looks fine to me… the laws all pass and there aren't tests in the testkit module itself

Oh! you're saying typically, when forgetting to aggregate

:joy:

moment of panic passed

Gavin Bisesi
@Daenyth
yup
sorry, I meant the general case :)
Brian P. Holt
@bpholt
no worries :)
Victor Viale
@Koroeskohr
hello! does anyone have any tips to work with fs2-rabbit in a development environment? I just lost 3 hours trying to figure out a weird issue I had before realizing it was some old non-terminated version of the program that was running in the background
Gavin Bisesi
@Daenyth
Local development? I use the rabbit docker container
you might consider using sbt-revolver if you have an app you want to reboot whenever you change code
Victor Viale
@Koroeskohr
ahhhh sbt-revolver that's the thing I forgot about
thank you Gavin!
Victor Viale
@Koroeskohr
as a slightly off topic question, would you recommend RabbitMQ in Action as the book to read on the topic or do you have something else in mind?
Gavin Bisesi
@Daenyth
I haven't read it
I just learned from a live codebase + reading docs and api methods as needed
Gavin Bisesi
@Daenyth

merged the metrics pr

@gvolpe cut a release when you have time?

Gabriel Volpe
@gvolpe
Will do :+1: , thanks. In the meantime, people can try the published snapshot: fs2-rabbit_2.13-0.0.0+1-fa7deae1-SNAPSHOT
Saskia Gennrich
@pektinasen
Hey everyone. Can someone help me to create an SSLContext for TLS without certificate checking?
In python-pika it would be this setting: ssl_options = pika.SSLOptions(context = ssl.SSLContext(ssl.PROTOCOL_TLS))
I just cannot figure it out without supplying certificate stores and whatnot
Gavin Bisesi
@Daenyth
@pektinasen I don't have time right now, but I bet if you google for doing it in java, that's going to be how you do it
assuming we're using the standard SSLContext class
Saskia Gennrich
@pektinasen
I tried that. unfortunately without success
No problem. I'll google some more. I was converting this to scala:https://stackoverflow.com/a/19723687/1041722
but didn't work.
Saskia Gennrich
@pektinasen
seems to be something else. I'm pretty sure I have setup everything correctly now.
Saskia Gennrich
@pektinasen

I'm new to rabbitmq and fs2, so my questions might not directly related to fs2-rabbit, but rabbitmq in general. I'm consuming a queue I have no control over, is there a way to tell the queue I only want events that were generated after I created the connection.
I'm getting events from 2 days ago. Which is when I first started consuming events from this queue.
Sorry, for these basic questions.

Is this even something a consumer has control over?

Gavin Bisesi
@Daenyth
yes, ish
You can construct a non-durable queue that gets created on startup and deleted once your consumer disconnects
so it won't be "a queue", it would be "a new queue for each process"
Note that under that model if publishers publish when the consumer is down, the message would be discarded or go to whatever dead-letter routing you have
Gabriel Volpe
@gvolpe
@Daenyth if you need a new release, feel free to cut a new one whenever you need it, you should have the rights to do so. All you need to do is to tag a new version starting withv (e.g. v2.3.0) and write down the release notes. sbt-ci-release will do the rest.