Developer Tools

JetBrains IntelliJ Red Hat OpenShift extension provides debug support for OpenShift components

JetBrains IntelliJ Red Hat OpenShift extension provides debug support for OpenShift components

The 0.2.0 release version of the Red Hat OpenShift extension for JetBrains IntelliJ is now available. You can download the OpenShift Connector extension from the JetBrains Plugins Repository. This release provides a new OpenShift: Debug action to simplify the debugging of OpenShift Components pushed to a cluster. It is similar to features developed for Visual Studio Code and JBoss Tools for Eclipse. OpenShift Connector uses OpenShift Do‘s (odo‘s) debug command under the hood and supports only local Java and Node.js components. This enhancement lets the user write and debug local code without leaving IntelliJ.

This article explains how OpenShift: Debug works and shares the difference between debugging Java and Node.js components in IntelliJ.

Continue reading “JetBrains IntelliJ Red Hat OpenShift extension provides debug support for OpenShift components”

Share
Cross-language link-time optimization using Red Hat Developer Tools

Cross-language link-time optimization using Red Hat Developer Tools

Several months ago, the LLVM project blog published an article, Closing the gap: cross-language LTO between Rust and C/C++. In it, they explained that link-time optimization can improve performance by optimizing throughout the whole program, such as inlining function calls between different objects. Since Rust and Clang both use LLVM for code generation, we can even achieve this benefit across different programming languages.

In Red Hat Developer Tools, we have the Rust and LLVM Toolsets, which can easily be used together for cross-language link-time optimization (LTO), so let’s try it out.

Continue reading “Cross-language link-time optimization using Red Hat Developer Tools”

Share
How to ignore files in Git without .gitignore

How to ignore files in Git without .gitignore

Git has a handy feature when it comes to preventing accidental file check-ins when the files are meant to stay local. The obvious candidates are compiled binaries when you only want to check in the source code. Other candidates are files with local configurations.

One can put all of those files and paths into a .gitignore file in the project. To persist those changes (and to share the common file contents with collaborators on the project), one usually adds the .gitignore file to Git like any other file in the project.

The problem

Unfortunately, there are limits to this approach.

Continue reading “How to ignore files in Git without .gitignore”

Share
Continuous integration with GDB Buildbot

Continuous integration with GDB Buildbot

Continuous integration is a hot topic these days, and the GNU Project Debugger is keeping up with the trend. Who better to serve as a role model for tracking and exterminating bugs than a debugger?

The GDB Buildbot started as a pet project back in 2014 but is now an integral part of the development process. It provides an infrastructure to test new commits pushed to the official repository, as well as a service (which we call try builds) for developers to submit their proposed changes. In this article, I share the story of our Buildbot instance, where we are right now in terms of functionality, and the plans (and challenges) for the future.

Continue reading “Continuous integration with GDB Buildbot”

Share
OpenShift Actions: Deploy to Red Hat OpenShift directly from your GitHub repository

OpenShift Actions: Deploy to Red Hat OpenShift directly from your GitHub repository

Here is a common situation: You write your code, everything is on GitHub, and you are ready to publish it. But, you know that your job is not finished yet. You need to deploy your code and this process can be a nightmare at times.

Ideally, you should be able to do this whole process all in one place, but until now, you always had to set up external services and integrate them with GitHub (or add post-commit hooks). What if, instead, you could replace all of these extras and run everything directly from your GitHub repository with just a few YAML lines? Well, this is exactly what GitHub Actions are for.

Continue reading “OpenShift Actions: Deploy to Red Hat OpenShift directly from your GitHub repository”

Share
Introducing 10 new features in Quarkus Tools for Visual Studio Code

Introducing 10 new features in Quarkus Tools for Visual Studio Code

Quarkus Tools for Visual Studio Code version 1.3.0 has been released on the VS Code Marketplace to start off the new year. As Quarkus continues to introduce improvements and new features like application.yaml and server-side templating support, Quarkus Tools for Visual Studio Code continues to evolve to accompany these new features and improvements.

Continue reading Introducing 10 new features in Quarkus Tools for Visual Studio Code

Share
Camel K standalone Java file: Now with Java language support

Camel K standalone Java file: Now with Java language support

Apache Camel K should be as lightweight as possible. Therefore, the Camel K project provides standalone Java files to describe a Camel integration. The downside to this practice is that existing IDEs cannot provide complete support out of the box. To provide a complete experience with Apache Camel K’s standalone Java files, there were three solutions:

As a result, there is no intuitive configuration. However, Red Hat’s Tooling for Apache Camel K offers a new possibility.

Continue reading “Camel K standalone Java file: Now with Java language support”

Share
Click-through learning with VS Code and Didact

Click-through learning with VS Code and Didact

The Didact project is designed to fill a void in Visual Studio Code, but what exactly is it? And more importantly, why should you care?

Didact started as a “What if?” VS Code doesn’t provide a great way to walk users through a step-wise tutorial. “What if” we could meet that need by combining the following:

  • A simple markup language (such as Markdown or AsciiDoc).
  • The ability to render the markup as HTML using the VS Code webview.
  • A way to invoke the commands we create for each VS Code extension.

And over the course of a day or so of coding, I had a working prototype.

Continue reading “Click-through learning with VS Code and Didact”

Share