Posted on May 21st 2020
We’re happy to announce the release of CodeTogether 1.2 with some fundamental improvements and key fixes that we’re sure you’ll appreciate … because you asked for them! Over the last few weeks, we’ve seen our user base grow by a few thousand users, many of whom have sent in great feedback that we’ve incorporated into this release of CodeTogether.
When it comes to the safety of your source, we are already running a pretty tight ship. Still, in this release we took this up a notch, by adding end-to-end encryption to all our sessions, as this capability was often requested. A unique key is now generated for each session and embedded into your invite URL – this key is used for AES-GCM encryption at the host and all participants. Our server never receives this key, nor stores information. Even if it were to be somehow compromised, your data would remain protected. The following diagram visualizes how the end-to-end encryption works.
Note: Each new session, even on the same host will now have a unique invite URL due to the E2E key so these URLs can no longer be reused between sessions. You can use the Invite action in the browser or host to invite others to the session.
You no longer need to create a CodeTogether account to host a shared coding session. Install the plugin / extension, and click Start Sharing – that’s it! Eventually, premium features will require a registered account, so you may still want to sign up in advance.
Our IntelliJ support is now out of early access! In the last few weeks, our early access IntelliJ users have had highly productive programming sessions with the current version. We’ve fixed many bugs that were IntelliJ specific. There are still areas for improvement, including compatibility with Rider, however, you can now reliably depend on CodeTogether as part of your pair programming needs in IntelliJ. Here are few of the issues addressed in 1.2.0:
- Multiple IDE windows can each host their own CodeTogether session
- There were several cases around which markers would not appear / disappear when expected – they are now correctly synchronized
- In 2019.1, content assist would not show language/framework proposals – this has now been fixed
- With auto-save enabled, the browser will now correctly reflect the saved-state of files in open editors
- Several issues around the management of files including creation of new files during a session have been fixed
Miscellaneous Key Fixes
Unless otherwise mentioned, most of these fixes apply to participants joining a session from a browser.
- Spaces were always used for indentation; the Tab key will now insert tabs or spaces, at the right tab size, based on indentation detected in the file
- Proxy support has been fixed for both Eclipse and IntelliJ – if you use a proxy server to connect the Internet, you can now host a CodeTogether session
- Participants will now see correctly colored code when working with Kotlin or Vue
- If a file was dirty, renaming it on the participant side would fail
- The problems view would sometimes not show all errors until the file is reopened
- With multiple tabs open and control access, you could get into a state where activating a tab would not activate the corresponding tab on the host
- With Eclipse has a host, if a participant uses content assist in an HTML file the proposal would not correctly overwrite existing text
CodeTogether issues and enhancements are now being publicly tracked on GitHub. For a comprehensive list of issues fixed in this release, do check our 1.2.0 milestone page. We’d encourage you to also use GitHub to vote on features/fixes you’d like to see in upcoming versions, or report new issues and file feature requests.
As always, thank you for the support and feedback, send us a shout on Twitter, or if you’d like to catch our team live, drop in on our CodeTogether Gitter community. If you like working with CodeTogether, please do us a favor and tell your friends and colleagues about us – thank you!