Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade to Kotlin 1.3.60 #157

Closed
wants to merge 15 commits into from
Closed

Upgrade to Kotlin 1.3.60 #157

wants to merge 15 commits into from

Conversation

jponge
Copy link
Member

@jponge jponge commented Nov 25, 2019

Also upgraded the Kotlin coroutines library.

ReceiveChannelHandler had to be added a field and a method due to additions in ReceiveChannel.
These are internal APIs so I made them throw NotImplementedError (through TODO("...")) and all tests still pass so it doesn't seem to be on a typical call path.

Also upgraded the Kotlin coroutines library.

ReceiveChannelHandler had to be added a field and a method due to additions in ReceiveChannel.
These are internal APIs so I made them throw NotImplementedError (through TODO("...")) and all tests still pass so it doesn't seem to be on a typical call path.
@jponge
Copy link
Member Author

jponge commented Nov 25, 2019

I've had to implement this in ReceiveChannelHandler due to new internal APIs:

  @InternalCoroutinesApi
  override val onReceiveOrClosed: SelectClause1<ValueOrClosed<T>>
    get() = TODO("not implemented")

  @InternalCoroutinesApi
  override suspend fun receiveOrClosed(): ValueOrClosed<T> {
    TODO("not implemented")
  }
}

This makes the code compile, and the tests suite do not seem to exerce that call path.

@slinkydeveloper
Copy link
Member

Can you check why it fails?

@jponge
Copy link
Member Author

jponge commented Nov 27, 2019 via email

@vincentfree
Copy link
Contributor

Kotlin updated to 1.3.61 containing fixes, the pull request hasn't been merged yet so maybe it's a good idea to update it to 1.3.61 before it does.

@vincentfree
Copy link
Contributor

I've had to implement this in ReceiveChannelHandler due to new internal APIs:

  @InternalCoroutinesApi
  override val onReceiveOrClosed: SelectClause1<ValueOrClosed<T>>
    get() = TODO("not implemented")

  @InternalCoroutinesApi
  override suspend fun receiveOrClosed(): ValueOrClosed<T> {
    TODO("not implemented")
  }
}

This makes the code compile, and the tests suite do not seem to exerce that call path.

I had to overcome this problem because I have the new 1.3.2 coroutines dependency in one of my applications.

I've added it like this:

override suspend fun receiveOrClosed(): ValueOrClosed<T> {
        return channel.receiveOrClosed()
    }
}

This way I was able to use Flow and create one form a Channel.

Fixes the previous TODO
@jponge
Copy link
Member Author

jponge commented Dec 9, 2019

Thanks @vincentfree

I've added delegation to both methods.

@AlexeySoshin
Copy link
Contributor

I've attempted to merge with master:
#164

@AlexeySoshin
Copy link
Contributor

@vietj Did it go out of sync again? :(

@vietj
Copy link
Contributor

vietj commented Feb 26, 2020

I will have a look rebasing this PR tomorrow

@AlexeySoshin
Copy link
Contributor

Any update on that? :)

@vietj
Copy link
Contributor

vietj commented Mar 5, 2020

on it :-)

@vietj
Copy link
Contributor

vietj commented Mar 5, 2020

Cherry-picked in master, can you have a check @jponge @AlexeySoshin ?

@vietj vietj closed this Mar 5, 2020
@jponge
Copy link
Member Author

jponge commented Mar 6, 2020

LGTM

@AlexeySoshin
Copy link
Contributor

Amazing!
Now I can start looking at Kotlin 1.3.70 :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging this pull request may close these issues.

None yet

6 participants