Developer Tools

Maven mirrors on OpenShift with and without Source to Image (S2I)

velocimetroI’m guessing if you’ve done enough repeated builds on OpenShift, using Maven, that you are probably aware of the “download the internet” phenomenon that plagues build times. You start a build, expecting all those Maven dependencies you downloaded for your last build to be re-used, but quickly see your network traffic ramp up while the same 100MB of jars are downloaded again and again. Even builds of a few minutes tend to grind on me, frustrate me as a developer when I’m trying to test/deploy/fix quickly.

Thankfully, Maven has a nice feature that allows you to set up local mirrors that cache dependencies and make them available to future builds, only updating from the upstream repo as needed on a regular (and configurable) schedule.

Continue reading “Maven mirrors on OpenShift with and without Source to Image (S2I)”

Share

Red Hat at the ISO C++ Standards Meeting (March 2016): Library

Earlier this year I attended the WG21 C++ standards committee meeting in Jacksonville, Florida, and as usual I spent most of my time in the Library and Library Evolution Working Groups. You can read about some of the other groups’ work in Jason’s Core report and Torvald’s Parallelism & Concurrency report.

As Jason wrote, several of the Technical Specifications published in the last few years were proposed for inclusion into the next revision of the C++ standard (C++17) and most of them added new features to the Standard Library. That meant that the Library Working Group spent much of the week doing careful review of those large documents, to ensure that what was added to the standard was correctly specified and that it was coherent with the rest of the library. This blog summarizes some of the significant changes from this meeting.

Continue reading “Red Hat at the ISO C++ Standards Meeting (March 2016): Library”

Share

Red Hat CDK installation in just minutes!

Ready to develop container application in
just over 4 minutes?

Since I started playing around with OpenShift in its various forms, such as Online with cartridges and then later as containerized images, nothing has gotten me more excited than the availability of the Red Hat Container Development Kit (CDK).

This kit has made it possible to easily gain access to a full, product based installation of OpenShift as you would interact with it in application development in just minutes. While exploring all the steps involved to get this installed locally, I decided to roll it all into the demo template that is used extensively on both JBoss Demo Central and Red Hat Demo Central.

Continue reading “Red Hat CDK installation in just minutes!”

Share

JBoss Fuse Tooling – Camel File Validation – Existing, Improved and New

Red Hat JBoss Fuse is an open source, lightweight and modular integration platform that allows you to connect services and systems across your entire application portfolio. And if you’re familiar with Fuse, you’re probably familiar with the Fuse Tooling that comes with Red Hat JBoss Developer Studio.

As I mentioned in this earlier post, the 8.0.0.Beta2 version of JBoss Fuse Tooling is available. In this article I will cover another new and updated feature: validations. I will explain what was already available and what’s new which improves productivity.

Continue reading “JBoss Fuse Tooling – Camel File Validation – Existing, Improved and New”

Share

JBoss Fuse Tooling – Support of Global configurations

Red Hat JBoss Fuse is an open source, lightweight and modular integration platform that allows you to connect services and systems across your entire application portfolio. And if you’re familiar with Fuse, you’re probably familiar with the Fuse Tooling that comes with Red Hat JBoss Developer Studio.

As I mentioned in an earlier post, the 8.0.0.Beta2 version of JBoss Fuse Tooling is now available. Apart from the diagram tooling rework, there is yet another new, awaited feature. You can find it in the new “Configurations” editor — designed to manipulate global configurations, i.e. elements defined at the Camel context scope.

Continue reading “JBoss Fuse Tooling – Support of Global configurations”

Share

JBoss Fuse Tooling – Diagram reworked: New shiny colors! (and more)

If you are a developer working on integration projects with JBoss Fuse, you’ll be happy to hear that the Fuse tooling has recently been reworked to provide a brighter look and feel, a more sensible, approachable automatic layout.

The work is still in progress, but already available in beta. It can be installed into the new JBoss Developer Studio version 9.1.0.GA.

To check out the latest features, please install the latest JBoss Developer Studio (available here). Then follow the steps below (see screenshot for reference) to add JBoss Fuse Tooling 8.0 Beta 2.

Continue reading “JBoss Fuse Tooling – Diagram reworked: New shiny colors! (and more)”

Share
New beta: Software Collections 2.2 and Developer Toolset 4.1

New beta: Software Collections 2.2 and Developer Toolset 4.1

Red Hat Developer Toolset has already been available for nearly four years and Red Hat Software Collections has been out for two and a half. We’ve seen excellent adoption of these as more and more developers and customers utilize the newer technologies that become available.

So, this week we announced more with these two new beta releases.

Continue reading “New beta: Software Collections 2.2 and Developer Toolset 4.1”

Share

Red Hat at the ISO C++ Standards Meeting (March 2016): Parallelism, Concurrency, and Coroutines

Several Red Hat engineers recently attended the JTC1/SC22/WG21 C++ Standards Committee meetings in March 2016 in Jacksonville, Florida, USA.  This post focuses on the sessions of SG1 (the standards committee sub-group 1 – for concurrency and parallelism) and on several proposals related to coroutines.

The biggest news from a parallelism and concurrency (P&C) perspective is that the Parallelism Technical Specification v1 was voted into the working draft of the standard.

This means that C++17 will offer support for several parallel algorithms, provided that the standard is approved in the remaining stages of the ISO voting process. If approved, this will make utilizing parallelism easier for many users – e.g., a parallel “for-each” loop, as a simple example.

Several proposals for support of vector execution are also progressing, and I believe that they might be ready before version 2 of the Parallelism Technical Specification is published.

Continue reading “Red Hat at the ISO C++ Standards Meeting (March 2016): Parallelism, Concurrency, and Coroutines”

Share
Upcoming features in GCC 6

Upcoming features in GCC 6

The GCC project has traditionally made major releases yearly in the March/April timeframe.  March is rapidly approaching and the GCC project’s engineers are busy polishing things up for the GCC 6 release.  I’m going to take a short break from my own release efforts to briefly talk about some of the new features.

Warnings GCC strives to implement warnings which help developers catch errors at compile time rather than allow potentially dangerous code to be silently accepted and ultimately deployed.   For GCC 6, the major warning additions are:

Misleading indentation: The goal of the misleading indentation warning is to detect code where the block structure likely does not match how a human would read the code.  The most obvious example is the the “Apple SSL bug” from 2014 where mis-indented code made it look like a GOTO was guarded by a prior IF conditional, when in fact it was not guarded at all.  This will be covered in more detail in a blog post from David Malcolm.

Tautological comparisons: Code which compares an object to itself and which always evaluates to the same result often represents a typo/bug in the source code.  GCC 6 will now warn for such comparisons.

Continue reading “Upcoming features in GCC 6”

Share