Director of Customer Engagement - Loves technology and almost everything related to computing. Wants to help you write better software. Follow at @brianfernandes.
Posted on Jun 29th 2021
This CodeTogether release brings to you server sharing, support for SAP ABAP development, and a boatload of community related features and core fixes that are sure to improve your everyday development experience. From rename refactoring to workspace-wide open symbol and full file content search for all, you are bound to find something you love.
Check out this video and then read on for details.
It works like magic, seriously! Let’s say you’re running a web application locally on your machine, and are actively coding it with your teammates. It’s only natural that other people involved should be able to test the application too, maybe just to see how it looks on their devices, or to try something quick during development. Here’s where Server Sharing comes into play, allowing you to give your teammates access to the application running locally – you don’t need to publicly deploy it!
And it’s not just web applications, you can use this tech to relay a remote debug session, database connections, web sockets, etc.
In most cases, CodeTogether will automatically detect your running servers – including servers that are running independently, external to the IDE. You can also add them manually from the CodeTogether view – just hover over the Shared Servers node and use the Add Server action. A host can choose to stop and start sharing servers anytime during the session.
On the participant side, simply double click a shared server to establish a connection. The view will display the port at which the server will be locally accessible.
An IntelliJ client connecting to an application running on the host, on port 4200
Coding and Navigation Enhancements
Our most common refactoring request – the ability to rename symbols, as a participant, is now available in this release. Simply use your IDEs usual shortcuts and menu actions to initiate the rename, and CodeTogether will take care of the rest. As with most language features, the host IDE will execute the rename and the changes will be propagated to all participants.
We are aware that refactoring is an important participant ability and are continuing to work on making more refactorings available to participants. Do let us know which actions you’d like to see next by adding a comment here.
One of our favorite code navigation capabilities has been implemented across all clients – Open Symbol is now accessible through your IDE’s normal shortcuts for this feature. Depending on the host IDE, Open Symbol could allow you to filter beyond top level types, and into fields and methods as well, for example.
Note: In IntelliJ clients, if you were only interested in Classes, you could use the Open Classes action instead to filter through them.
Easy Java Class Creation
Creating a new Java class from an empty file can be tiresome, so we’ve added a handy default. If you create a new file with a java extension within a Java source folder, we’ll figure out what package it’s in, and create a minimally scaffolded class, ready for further code.
Full File Content Search
You can search within the contents of remote files:
Use the Find in Files in IntelliJ and VS Code.
Use Search > File > Remote File Search in Eclipse.
Use View > Search in the browser.
Note: This feature was already working in the Browser and VS Code, it now works in Eclipse and IntelliJ clients too.
Support for SAP ABAP
If you’re an ABAP developer, 4.1 allows you to work collaboratively with server-side SAP code! Syntax highlighting, validation, content assist and even remote program activation are supported in this release. In a collaborative session, you can even work on ABAP in IntelliJ, imagine that!
Join our technical preview for access to these capabilities, as well as to help shape the future of collaborate ABAP development capabilities through CodeTogether. See this page for further details, and watch this video for an ultra-quick overview.
Easy Updates for On-Premises Users
When you update your on-premises distribution to a newer version of CodeTogether, your IDE plugins / extensions can now be updated without users having to manually download updated binaries. In VS Code, the extension will be automatically updated when you start the IDE. For IntelliJ and Eclipse (where this was already supported), you can use Help > Check for Updates and/or the plugin will be automatically updated based on your IDE’s update settings.
Helm Chart Now Available
Helm greatly simplifies the installation and management of CodeTogether on Kubernetes. If you use Helm in your Kubernetes environment, head on over to our On-Premises Installation Guide for instructions on how to install CodeTogether using our packaged Helm chart.
Based on increased CodeTogether usage in Asia, and in particular, India, we’ve added new CodeTogether edge servers in Mumbai, India. If you’re a developer in this zone, you should already have noticed an increase in responsiveness of content assist, appearance of validation markers, and reaction to miscellaneous IDE actions as a result of the lower latency between your IDE and these servers. Give us a shout out on Twitter if you’re an older CodeTogether user who is now enjoying an even better collaborative coding experience.
Limited Free Usage
After one and a half years of offering free unlimited usage of CodeTogether due to the pandemic, we will begin enforcing limits effective July 15, 2021. To use a CodeTogether session for longer than 45 minutes, a Teams account is required for the session Host. We offer a free 30-day trial when you set up a team.
A few developers weren’t too fond of the colored border (IntelliJ & Eclipse only) we added around your editors to signify your current collaborative state. These borders can now be turned off from the CodeTogether preferences page.
You now no longer need an account to join a collaborative session from an IDE.
We’re continuing to improve our proxy support in VS Code – this release now respects non proxy hosts and better detects certain problematic configurations. If you’ve experienced issues getting connected to a CodeTogether server, please see our VS Code Proxy Troubleshooting page.
Folder and file rename/move actions will no longer result in inconsistent states on clients.
If you’ve wanted to prevent files and folders from being shared in a session, the .codetogether.ignore file has now been enhanced to support more advanced globbing patterns.
If you created or joined a Team, the plugin will now immediately see corresponding changes in the CodeTogether view, without having to restart the IDE.
CodeTogether continues to improve thanks to feedback from users like you! Here’s just a bit of what you can look forward to in our next release:
Simple remote Run support—Re-run tasks that the host has run during the session, such as a build or running a server.
Unit Test Run & Visualization support—Primarily for IntelliJ and Eclipse hosts, provide richer support for the unit test frameworks in those IDEs and visualize across all clients, including remote running of tests.
Have a feature you’d like to see implemented in the near future? Consider creating an issue, or voting for an existing one to increase its priority.
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!