Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Dec 04 19:27
    Travis lagom/lagom (1.6.x) broken (8772)
  • Dec 04 05:15

    jroper on template

    Updating 1.5.x documentation (compare)

  • Dec 03 05:12

    jroper on template

    Updating 1.5.x documentation (compare)

  • Nov 30 23:29
    mergify[bot] unlabeled #3122
  • Nov 30 23:29

    mergify[bot] on bp

    (compare)

  • Nov 30 23:29

    mergify[bot] on master

    log command type and entity id … Merge pull request #3122 from l… (compare)

  • Nov 30 23:29
    mergify[bot] closed #3122
  • Nov 30 22:26
    octonato labeled #3122
  • Nov 30 22:18
    Travis lagom/lagom (1.6.x) errored (8762)
  • Nov 30 20:40
    mergify[bot] unlabeled #3121
  • Nov 30 20:40
    mergify[bot] commented #3121
  • Nov 30 20:40
    mergify[bot] opened #3122
  • Nov 30 20:40

    mergify[bot] on bp

    log command type and entity id … (compare)

  • Nov 30 20:40

    mergify[bot] on 1.6.x

    log command type and entity id … Merge pull request #3121 from o… (compare)

  • Nov 30 20:40
    mergify[bot] closed #3121
  • Nov 30 19:52
    octonato commented #3121
  • Nov 30 17:35
    Travis lagom/lagom#3121 broken (8760)
  • Nov 30 17:22
    Travis octonato/lagom (rgc/improve-logging-on-timeout) passed (252)
  • Nov 30 17:01
    ignasi35 labeled #3121
  • Nov 30 16:58
    ignasi35 commented #3121
Sergey Morgunov
@ihostage
:point_up: September 26, 2018 1:36 PM The author is the same :smile:
kerr
@hepin1989
It will be possible to define a service call with grpc instead of rest endpoints right?
Elijah Rippeth
@erip
@hepin1989 I think that might be a better question for lagom/lagom or discuss.
Ignasi Marimon-Clos
@ignasi35
@hepin1989 yes. But, like @erip said, let’s move to a users channel instead of keeping the discussion here (contributors). Thanks. :-)
Jules Ivanic
@guizmaii
Hi @vasiliy-komarov, this channel is dedicated to discussion about implementations of new things in Lagom
can you stay in the lagom/lagom channel plz for this keed of requests
vasiliy-komarov
@vasiliy-komarov
@guizmaii Okay, sorry.
Jules Ivanic
@guizmaii
thanks :)
Renato Cavalcanti
@octonato
I created a 1.5.x branch for Lagom. This is the branch where we are going to finalize the RC cycle and cut the GA
master is now 1.6.0-SNAPSHOT
all work should be done in master and whenever we have something that we want to have in 1.5.0, we cherrypick it onto 1.5.x branch
Przemek Sokół
@falconepl

Hi all! :) I've been wondering recently... when it comes to Scala DSL for Lagom, it feels much like the Java DSL. I can see that oftentimes the return type is a Unit, with side-effects, we reference context in a few places, rather than simply provide a A => B function here and there.

Namely, instead of something like a DSL in akka-ddd [source]:

def canceledOrClosed: Actions =
  handleCommand {
    case CloseReservation(reservationId) =>
      ReservationClosed(reservationId)

    case CancelReservation(reservationId) =>
      ReservationCanceled(reservationId)
  }
  .handleEvent {
    case ReservationCanceled(_) => Canceled
    case ReservationClosed(_) => Closed
  }

we end up writing:

case (AddPost(content), ctx, state) =>
  ctx.thenPersist(PostAdded(entityId, content)) { evt =>
    ctx.reply(AddPostDone(entityId))
  }

or:

case (AddPost(content), ctx, state) =>
  if (content.title == null || content.title.equals("")) {
    ctx.invalidCommand("Title must be defined")
    ctx.done
  }

My questions is - is there any particular reason why Scala DSL for Lagom does not feel Scala-idiomatic and resembles patterns common for Java-like frameworks? (diverging from FP, side-effects etc.)

Przemek Sokół
@falconepl

Wouldn't it be better if one might be able to say e.g.:

case AddPost(content) =>
  PostAdded(entityId, content)
(...)
case PostAdded(entityId, _) =>
  AddPostDone(entityId)

and:

case AddPost(Content(None, _)) | AddPost(Content(Some(""), _)) =>
  InvalidCommand("Title must be defined")

What do you think?

Ignasi Marimon-Clos
@ignasi35
If I remember correctly the main reason for not using pattern matching in lagom’s scaladsl Persistent Entities was having typed responses to commands.
Elijah Rippeth
@erip
:point_up: there are (untyped) PersistentActors in some layer of the lasagna; they may be replaceable by typed persistent actors eventually, but the bottom line was to add responses which have type info
Jules Ivanic
@guizmaii

Hi @JohnReedLOL,

This channel is for discussing about Lagom feature development and/or bug fix development. It’s not for requiring help.

Sergey Morgunov
@ihostage
Hi, contributors!
Can you share your plans about supporting Kafka 2.1.X on Lagom 1.4.X? Or It will be supported only on 1.5.X?
Current situation:
  1. Kafka 2.1.X supported by only Alpakka Kafka Connector 1.0-RC1
  2. lagom/lagom#1673. Merged to 1.5.X, but need backport to 1.4.X
  3. lagom/lagom#1671. Until not merged and not backported.
Renato Cavalcanti
@octonato
@ihostage, #1673 was merged in master and needs backport to 1.5.x
we have a 1.5.x branch for the release candidate cycle
we won't port it in 1.4.x
which bring us to your original question, Kafka 2.1.x needs to go in 1.5.0 only
Sergey Morgunov
@ihostage
@renatocaval Thanks a lot! :ok_hand:
kerr
@hepin1989
Will lagom provide an kotlin dsl?
Sergey Morgunov
@ihostage
@hepin1989 Have you specific case? We use Kotlin with Lagom Java DSL and until all fine.
kerr
@hepin1989
@ihostage I mean more kotlin native /stylish
there are some guy complain about that...
Ignasi Marimon-Clos
@ignasi35
I don’t think it’s on the roadmap, no.
Wayne Wang
@WayneWang12
getquill/quill#1299 I've made this pull request for quill to support lagom.
Can anyone do a little review for it?
And also I think lagom should have a support for aggretion query. For example, I have to change the unit test for size query
await(context.run(entitySize)) mustEqual Option(entries.size)
like this to make it run. Because Lagom only support selectOne or selectAll
maybe a function with return type Future[T] is OK?
Sergey Morgunov
@ihostage
Hi, contributors!
What do you think about lagom/lagom#1713 ?
I need feedback before I try to implement Scala part :smile:
Sergey Morgunov
@ihostage
Is anybody here? :smile: Guys, Play 2.7.0 released :tada: It's Lagom time now :joy:
Dale Wijnand
@dwijnand
work in progress :D
Sergey Morgunov
@ihostage
@dwijnand :+1:
About a month I haven't feedback for a few PR for Lagom and Recipes :disappointed:.
I know and I have seen on GitHub that this month you all were very busy the release of Play 2.7.0. :muscle:
And now I will be happy if Lagom team find time to review PR from community :wink:
lagom/lagom#1713
lagom/lagom-recipes#61
lagom/lagom-recipes#57
Dale Wijnand
@dwijnand
I'm afraid we're all very busy with the release of Lagom 1.5.0, actually. But I'll pass on your links and we'll try to review them.
Sergey Morgunov
@ihostage
Thank you, Dale :wink:
Dale Wijnand
@dwijnand
We've released Lagom 1.5.0-RC2, see https://www.lagomframework.com/blog/lagom-1-5-0-RC2.html
Sergey Morgunov
@ihostage
@dwijnand :+1:
Sergey Morgunov
@ihostage

Hi, contributors!
What do you think about this warning?

[warn]     * com.lightbend.akka.management:akka-management-cluster-bootstrap_2.12:1.0.0-RC3 is selected over 0.20.0
[warn]         +- com.lightbend.lagom:lagom-cluster-core_2.12:1.5.0-RC2 (depends on 1.0.0-RC3)
[warn]         +- com.lightbend.rp:reactive-lib-akka-cluster-bootstrap_2.12:1.7.0 (depends on 0.20.0)

I think that it’s a big problem. Now I have two version akka-discovery (because different group name) in classpath:

  • com.typesafe.akka:akka-discovery_2.12:2.5.21
  • com.lightbend.akka.discovery:akka-discovery_2.12:0.20.0

And I got a problem with bootstrapping a cluster:

Caused by: java.lang.ClassCastException: class scala.runtime.Nothing$ is not assignable from class akka.discovery.SimpleServiceDiscovery
    at akka.actor.ReflectiveDynamicAccess.$anonfun$getClassFor$1(ReflectiveDynamicAccess.scala:24)
    at scala.util.Try$.apply(Try.scala:209)
    at akka.actor.ReflectiveDynamicAccess.getClassFor(ReflectiveDynamicAccess.scala:21)
    at akka.discovery.Discovery$.checkClassPathForOldDiscovery(Discovery.scala:111)
    at akka.discovery.Discovery.<init>(Discovery.scala:17)
    at akka.discovery.Discovery$.createExtension(Discovery.scala:103)
    at akka.discovery.Discovery$.createExtension(Discovery.scala:96)
    at akka.actor.ActorSystemImpl.registerExtension(ActorSystem.scala:962)
    at akka.actor.ExtensionId.apply(Extension.scala:79)
    at akka.actor.ExtensionId.apply$(Extension.scala:78)
    at akka.discovery.Discovery$.apply(Discovery.scala:97)
    at akka.management.cluster.bootstrap.ClusterBootstrap.<init>(ClusterBootstrap.scala:52)
    at akka.management.cluster.bootstrap.ClusterBootstrap$.createExtension(ClusterBootstrap.scala:114)
    at akka.management.cluster.bootstrap.ClusterBootstrap$.createExtension(ClusterBootstrap.scala:108)
    at akka.actor.ActorSystemImpl.registerExtension(ActorSystem.scala:962)
    at akka.actor.ExtensionId.apply(Extension.scala:79)
    at akka.actor.ExtensionId.apply$(Extension.scala:78)
    at akka.management.cluster.bootstrap.ClusterBootstrap$.apply(ClusterBootstrap.scala:108)
    at com.lightbend.rp.akkaclusterbootstrap.ClusterBootstrapAutostart.<init>(ClusterBootstrapAutostart.scala:33)
    at com.lightbend.rp.akkaclusterbootstrap.ClusterBootstrapAutostart$.createExtension(ClusterBootstrapAutostart.scala:41)
    at com.lightbend.rp.akkaclusterbootstrap.ClusterBootstrapAutostart$.createExtension(ClusterBootstrapAutostart.scala:38)
    at akka.actor.ActorSystemImpl.registerExtension(ActorSystem.scala:962)
    at akka.actor.ActorSystemImpl.$anonfun$loadExtensions$1(ActorSystem.scala:995)
Sergey Morgunov
@ihostage
@TimMoore @ignasi35 ?
Dale Wijnand
@dwijnand
@ihostage yeah they're incompatible. It's part of the migration to Lagom 1.5 is no longer using reactive-lib-akka-cluster-bootstrap
Sergey Morgunov
@ihostage
@dwijnand But now nobody can’t test Lagom-1.5.0-RC2, because service can't start in Prod-mode. :cry:
Need to remove reactive-lib-akka-cluster-bootstrap from transitive dependencies of sbt-reactive-app? I’m right?
Dale Wijnand
@dwijnand
I've not followed the details, but the migration guides are being written as we speak :)
Sergey Morgunov
@ihostage
For details, I use the latest versions Lagom/Reactive App/Reactive CLI :smile:
Ignasi Marimon-Clos
@ignasi35
@ihostage don’t use sbt-reactive-app with Lagom 1.5.0-RC2
Sergey Morgunov
@ihostage
@ignasi35 What to use?