akka-js / akka.js

Akka, for Scala.js
http://akka-js.org
475 stars 39 forks source link

Explain the status of this project after the license change of Akka #131

Open PerWiklander opened 2 years ago

PerWiklander commented 2 years ago

Will this project be able to keep doing what it does?

Will the (production) license obligation be passed to the users of the lib (like with other things that are built on top of Akka) or is there something in the new BSL license that is not compatible with the way this library works with the source code of Akka?

This would be nice to have in the top of README.md.

andreaTP commented 2 years ago

Hi @PerWiklander , thanks a lot for this question and interest in this project, I was thinking about this subject.

To make it clear, releases that happened up to today are all full Apache 2 licensed and based on upstream Apache 2 licensed Akka versions.

From now on, given the low traffic in the repo, I'm evaluating to simply archive this project. I'm interested to hear if anyone has an interest in keeping it alive and exploring alternatives.

PerWiklander commented 2 years ago

I have been interested in using it for a while now. Iā€™m envisioning actor based view state handling synced with my persistent actors in the backend.

I think it would be good to at least make a last effort to release this for the last ever Apache licensed version of Akka, which looks like it will be the current 2.6.19 or maybe .20. Then the project could chill while we wait for the inevitable community fork of Akka :-)

PerWiklander commented 2 years ago

I was also curious of if doing this kind of source port would even be compatible with the new license, for Akka 2.7 and onwards. Just to know what the options are, regardless of our feelings towards Lightbend at the moment.

andreaTP commented 2 years ago

@PerWiklander if you volunteer an update to the latest Apache released version I'll merge and try to release one last version šŸ™‚ (sorry a little too much on my plate at the moment).

Regarding the compatibility of the license, honestly, is a subject I have not much interest in šŸ˜‡ . If anyone wants to reach out to Lightbend on this project's behalf, feel free to take the initiative.

PerWiklander commented 2 years ago

After having read the BSL text, my interpretation (IANAL) is that it is still legal to make derivative works, but those need to include the same BSL license and using >2.7 with Scala JS would then require the same production license from Lightbend. I really wonder what the definition of "per core" would be there... Like make a web app with a couple million users and you're on the hook for literal billions in fees to Lightbend. There's so much that is unclear here :-)

I'll gladly contact them and ask about this actually.

PerWiklander commented 2 years ago

I can provide a PR if you give me some hints on the process. Is it as easy as bumping versions and running the tests?

andreaTP commented 2 years ago

Yup, go for it! Feel free to completely exclude new tests that are not passing at the file level (adding an empty file in the relevant folder)

PerWiklander commented 2 years ago

I sent a rather long email to Lightbend detailing the situation here. The reply was at least not "Nope":

Thanks for the note. Our intention is to do our best to enable small open source projects that use Akka to continue unimpeded. But, as you have outlined, there is complexity here and we are working through many scenarios with the use of Akka in various open source projects.

We will be in touch soon.

devlaam commented 1 year ago

From now on, given the low traffic in the repo, I'm evaluating to simply archive this project. I'm interested to hear if anyone has an interest in keeping it alive and exploring alternatives.

Just archiving would most likely mean a slow death. Such a waste for this beautiful project!! I am very much interested in keeping this alive as it is the backbone of one of my webclient applications. That being said, i too don't have the resources to work on it on a regular basis. Simple changes every now and then would be okay though.

Lately i run into some problems with the latest ScalaJS versions, and tried to compile and test the repro locally (as-is). The screen literally was flooded with warnings upon compilation and errors upon running the testsuite with no obvious solutions. So it seems a lot of things are above my current skillset which isn't a good start.

PerWiklander commented 1 year ago

Ugh, I hate saying I'll give time to projects and then end up stuck in life... Anyways, I got this reply from Lightened a while back:

On 18 Nov 2022, at 00:17, James Townley j....t...@lightbend.com wrote:

We have opened a questionnaire for projects interested in applying for the use of Akka in open source projects.

To start the process please fill out the form here: https://forms.gle/7AT6ku2MhnqXxiyw9 If you have multiple projects please fill out the form for each project.

I understand that your use case for Akka is more complex than most and may have additional questions after the survey is complete.

Thanks,

James Townley Project Manager - Akka

Lightbend

andreaTP commented 1 year ago

Thanks for sharing @PerWiklander !

PerWiklander commented 1 year ago

Hmm, now that pekko is a thing, are we even interested in cooperating with Lightbend going forwards? It's still early days and I wait to see what they will accomplish, but there might be a wider community interested in this project if it can fit under the pekko umbrella in the future.

an-tex commented 1 year ago

Hi, sorry for being late to the show ;) I'd be happy to assist too as I'm actively using this project. Also for a customer who has an Akka license so I'd be also interested in the 2.7+ path too.

Did you hear back anything from Lightbend in the time being @PerWiklander ?

devlaam commented 1 year ago

Just to inform anyone that may pass here looking for an actor system on JS, I wrote Leucine in reaction on this project being stalled. It is not a drop in replacement for AkkaJS, but migration is not difficult. Hopefully this is of use.