Skip to content

Conversation

@devcrocod
Copy link
Contributor

  • update Kotlin version to 2.1.20
  • use atomics from kotlin.concurrent
  • refactor lock in StrdioServerTransport, using Channel
  • remove the atomicfu plugin

How Has This Been Tested?

  • unit test
  • run a custom mcp server with Claude via stdio

Breaking Changes

No breaking changes

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation update

Checklist

  • I have read the MCP Documentation
  • My code follows the repository's style guidelines
  • New and existing tests pass locally
  • I have added appropriate error handling
  • I have added or updated documentation as needed

Additional context

default atomics: https://kotlinlang.org/docs/whatsnew2120.html#common-atomic-types

@devcrocod devcrocod requested a review from Copilot April 15, 2025 12:14
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot reviewed 8 out of 8 changed files in this pull request and generated no comments.

@devcrocod devcrocod requested a review from e5l April 15, 2025 12:15
Copy link
Contributor

@e5l e5l left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@devcrocod devcrocod enabled auto-merge (squash) April 17, 2025 09:52
@devcrocod devcrocod merged commit 63a50c1 into main Apr 17, 2025
3 checks passed
@devcrocod devcrocod deleted the devcrocod/update-kotlin-2.1.20 branch April 17, 2025 09:54
@Stream29
Copy link
Contributor

It's just a question, but why you deprecate atomicfu?

It have performance issues or compatibility issues?

I'm curious.

@devcrocod
Copy link
Contributor Author

@Stream29
I didn't deprecate atomicfu
In Kotlin 2.1.20, atomic types were added to std kotlin.concurrent.atomics
This allowed us to remove the dependency on the atomicfu plugin, since in this code we only use common atomic types.
You can read more about it here

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants