Product News

Conan.io: Package management in C++

Diego Rodríguez-Losada is interviewed about Conan.io

Package management in C++

by Andrew Nesbitt and Alex Pounds

Though a bit outdated because it was recorded 9 months ago, still or, in fact, more than valid knowledge about tooling in C++. From the excerpt: We talk about what inspired the development of Conan, package management problems specific to C/C++ package management and the plans for the future.

 

HPX V1.2.1 released—STE||AR Group

The STE||AR Group has released V1.2.1 of HPX -- A C++ Standard library for parallelism and concurrency.

HPX V1.2.1 Released

The newest version of HPX (V1.2.1) is now available for download! Please see here for the release notes. This release is a pure bug fix release that addresses a couple of compatibility problems (in particular with Boost V1.69). We have also included some important improvements that were merged since the previous release.

    HPX is a general purpose parallel C++ runtime system for applications of any scale. It implements all of the related facilities as defined by the C++ Standard. As of this writing, HPX provides the only widely available open-source implementation of the new C++17 parallel algorithms. Additionally, HPX implements functionalities proposed as part of the ongoing C++ standardization process, such as large parts of the C++ Concurrency TS, Parallelism TS V2, data-parallel algorithms, executors, and many more. It also extends the existing C++ Standard APIs to the distributed case (e.g. compute clusters) and for heterogeneous systems (e.g. GPUs).

    HPX seamlessly enables a new Asynchronous C++ Standard Programming Model that tends to improve the parallel efficiency of our applications and helps reducing complexities usually associated with parellism and concurrency.

 

Using VS Code for C++ development with containers—Marc Goodner

It can do it.

Using VS Code for C++ development with containers

by Marc Goodner

From the article:

This post builds on using multi-stage containers for C++ development. That post showed how to use a single Dockerfile to describe a build stage and a deployment stage resulting in a container optimized for deployment. It did not show you how to use a containers with your development environment. Here we will show how to use those containers with VS Code. The source for this article is the same as that of the previous article: the findfaces GitHub repo...

ReSharper C++ 2018.3 is released

ReSharper C++ extension makes Microsoft Visual Studio a much better C++ IDE. ReSharper C++ v2018.3 has had literally every smart feature in it tuned, making them work more precisely on modern C++ code.

ReSharper C++ 2018.3: every bit better!

by Anastasia Kazakova

From the article:

ReSharper C++ 2018.3 brought the following enhancements:

  • Performance improvements meaning a more responsive editor
  • Formatter: auto-detection of formatter settings, and C++ naming schemes
  • More information in Parameter info, especially on dependent code. Name hints. Better error diagnostics in templated code
  • New context actions and inspections
  • Support for Catch 2.5
  • Enhanced C++/CLI support and support for Unreal Engine projects
  • Visual Studio 2019 Preview 1 support

 

 

Free PVS-Studio for those who develops open source projects

On the New 2019 year's eve, a PVS-Studio team decided to make a nice gift for all contributors of open-source projects hosted on GitHub or Bitbucket. They are given free usage of PVS-Studio static analyzer for development of open source projects.

Free PVS-Studio for those who develops open source projects

by Andrey Karpov

From the article:

Everyone who wishes, can get a free license for 1 year. To get the license, you need to:

  1. Go to the page: https://www.viva64.com/en/open-source-license/
  2. Enter the e-mail, where you will be sent a license key;
  3. Enter the link to your GitHub/Bitbucket profile;
  4. Send a request for a free license.

Boost 1.69.0

New release.

Boost 1.69.0

From the article:

Notes for non-Windows users
The Boost build system now supports visibilities. If you are building shared libraries, they will use hidden visibility by default. As a result Boost shared libraries become smaller, load faster and have less chances to get a symbol collision.

See Boost.Build visibility and local-visibility for more info.

To disable that feature you can use use a command line ./b2 visibility=global to build...

Using multi-stage containers for C++ development—Marc Goodner

An interesting method.

Using multi-stage containers for C++ development

by Marc Goodner

From the article:

Containers are a great tool for configuring reproducible build environments. It’s fairly easy to find Dockerfiles that provide various C++ environments. Unfortunately, it is hard to find guidance on how to use newer techniques like multi-stage builds. This post will show you how you can leverage the capabilities of multi-stage containers for your C++ development. This is relevant to anyone doing C++ development regardless what tools you are using...

AI-Assisted Code Completion Suggestions Come to C++ via IntelliCode—Nick Uhlenhuth

Impressive.

AI-Assisted Code Completion Suggestions Come to C++ via IntelliCode

by Nick Uhlenhuth

From the article:

After reading and writing enough code, you begin to notice certain usage patterns. For example, if a stream is open, it will eventually be closed. More interestingly, if a string is used in the context of an if-statement, it will often be to check if the string is empty or if it has a certain size. You begin to identify and use these coding patterns over time, but what if Visual Studio already knew these common patterns and could suggest them to you as you code? That’s exactly what IntelliCode does...