JetBrains News

ReSharper Ultimate 2017.2: .NET Core 2.0, C# 7.0 and 7.1, better navigation, and more

Please welcome ReSharper Ultimate 2017.2: this year's second major update to a set of JetBrains .NET tools that includes ReSharper, ReSharper C++, dotCover, dotTrace, dotMemory, and dotPeek.

Highlights of ReSharper 2017.2 include:

  • Support for .NET Core 2.0 in Visual Studio 2017 15.3. Your favorite code inspections, navigation actions and refactorings are now available in .NET Core 2.0 projects, including the new ASP.NET Core Razor Pages projects. Lots of .NET Core unit testing issues have been resolved along the way, and you can now run xUnit.net, NUnit or MSTest in your .NET Core 2.0 projects.
  • Improved support for C# 7.0 including pattern matching and out variables, as well as initial support for C# 7.1: the default literal, tuple projection initializers, async main and pattern matching with generics.
  • New code inspections around IEnumerable usage and XML documentation inheritance.
  • Null checking preferences that let you tell ReSharper how you want it to introduce null checks when it generates code.
  • Multiple navigation improvements, including search in any order, exact search, textual search in Go to Everything, and navigating to nearby files.
  • TypeScript, JavaScript, JSON and Angular support improvements, including code completion performance, TypeScript 2.3 and 2.4 features, new kinds of language injections and new TypeScript refactorings.
  • Interactive tutorials to help you get started with ReSharper's functionality or get up to speed with features in new ReSharper releases.

Other ReSharper Ultimate products have received their share of improvements as well:

  • ReSharper C++ 2017.2 is mostly focused on better language understanding and supporting features from C++11 and C++17. Other changes include enhancements in code formatter and navigation, improved performance, new code inspections and quick-fixes.
  • dotMemory 2017.2 enables importing raw Windows memory dumps and analyzing them using its full range of features.
  • dotCover 2017.2 improves code coverage performance, starts to support MSTest unit tests in .NET Core applications, and introduces a new kind of markers for coverage and test status indication.
  • dotTrace 2017.2 enables profiling child processes in unit tests, introduces Timeline profiling from the command line, and learns to show navigation paths in the Call Tree view.
  • dotPeek 2017.2 supports SourceLink and extends its feature set in terms of navigation and search.

Learn more about the new features and download ReSharper Ultimate 2017.2.

YouTrack 2017.3

Please welcome YouTrack 2017.3 featuring workflows in JavaScript, improved Kanban support, project-based swimlanes and more.

The latest release brings:

  • Personal board templates
  • Authentication throttling
  • Advanced visibility option

Other enhancements:

  • Time report improvements
  • General report improvements
  • Zendesk Integration improvements
  • OAuth 2.0 Presets for GitLab and Bitbucket Cloud

For more details visit the What’s new page. Get YouTrack 2017.3 today and enjoy its wide range of issue tracking and project management capabilities. The latest version is available for download or cloud registration.

Rider 2017.1: New .NET IDE from JetBrains Hits the Market

Are you into .NET development? If you are, check out our latest offering for .NET developers: JetBrains Rider, a new cross-platform .NET IDE based on ReSharper and IntelliJ IDEA that has just reached its first official release.

Available on Windows, Mac and Linux, Rider helps you develop ASP.NET, .NET Core, .NET Framework, Xamarin and Unity applications. It provides rich editing support and code insight for languages used in .NET development, from C#, VB.NET and F# to ASP.NET Razor syntax, JavaScript, TypeScript, XAML, HTML, CSS, SCSS, JSON, and SQL.

Rider comes with 2,000+ live code inspections across the supported languages, 500+ refactorings, a variety of code base navigation helpers, a unit test runner, debugger, rich coding assistance, and a lot more advanced IDE features. Anyone who has experience using ReSharper in Visual Studio, or is familiar with JetBrains IDEs such as IntelliJ IDEA, WebStorm, or PyCharm, will feel right at home with Rider.

Rider uses the standard JetBrains licensing model: there are subscriptions available for corporate and individual customers, with monthly and yearly payment options, and an uninterrupted subscription discount to help you save up to 40% on your third year and onwards.

In addition to standalone licensing, Rider is also part of All Products pack along with other JetBrains IDEs and .NET tools. There's also a Rider + ReSharper Ultimate bundle subscription that helps you save on subscription costs while keeping access to other JetBrains .NET tools such as ReSharper and dotTrace.

Rider is available for free to selected groups of customers including Microsoft MVPs, ASP.NET insiders, students, teachers, and non-commercial Open Source projects.

Download Rider for Windows, macOS or Linux, and take it for a 30-day trial.

PyCharm Edu 4 is Out, Enhanced for Both Learners and Educators

PyCharm Edu, our easy and professional tool to learn and teach programming with Python, is now updated!

This update brings a better user experience to both learners and educators, making the product’s use as simple as possible, whether it is used for learning, or for teaching.

First of all, we’ve changed the welcoming UI. Now you begin by choosing your role, Learner or Educator. Depending on your choice, you get access to the courses you can join as a learner and can practice with the help of simple and effective “fill in the missing code” exercises. Or, you can create your own code practice tasks and integrated tests as an educator.

With PyCharm Edu 4, learners can now easily choose the course to join and start learning thanks to the new Welcoming UI. Learn more about PyCharm Edu for learners.

DataGrip 2017.2 is Here!

DataGrip, our IDE for SQL and databases, has reached a new version. New features and improvements:

Amazon Redshift and Microsoft Azure support
Dedicated drivers, Incremental introspection, support for Redshift functions which are absent in PostgreSQL
and for specific grammar cases.

Several databases in one PostgreSQL data source

Evaluate expression
This will help you see data without writing a query to the console.

Transaction Control
This replaced the Auto-commit option. There are two modes of transaction control now: Auto and Manual.
It can also be defined for each query console along with the isolation level.

Table DDL
We have divided the Data and DDL tabs when viewing a table. Actually, there are no more tabs.
Now, when you open a table with a double-click, you just see the data. DDL can be opened by Edit Source on the toolbar.

Integration with restore tools for PostgreSQL and MySQL

Executing queries
Attach console action, notification when a large query is finished, auto-scroll to result-set and vice versa.

Coding assistance
Completion for table-valued functions, NEW and OLD references are resolved in PostgreSQL triggers,
support for MERGE statements, resolve for sequences.

Your DataGrip Team

PyCharm 2017.2 Out Now: Docker Compose on Windows, SSH Agent, and more

We’re happy to let you know that the next version of PyCharm is now available. PyCharm 2017.2 comes with Docker Compose support on Windows, SSH Agent, Azure Databases, and Amazon Redshift support.

New in 2017.2:

  • Running your project in Docker Compose is now also supported on Windows
  • Support for using SSH Agent (or a compatible tool like Pageant) to manage your SSH keys
  • The database tools now support connecting to Amazon Redshift and Azure Databases
  • Some small improvements for editing Python files: a quick fix to change the signature of a function you’re calling, an inspection to make sure your Python 3.6-style format strings work correctly, and autocompletion for type hints
  • Data View now supports Pandas Series
  • And more, you can find the details on our website.

Learn more about PyCharm 2017.2 or upgrade now

Your PyCharm Team

CLion 2017.2 released: Clang-Tidy, Force Step Into, better C++ support and performance improvements

Please welcome the new release of your favorite cross-platform C/C++ IDE – CLion 2017.2! Focusing on C++ correctness and performance improvements, it also brings Clang-Tidy integration to expand the number of code analysis checks, a better way to get disassembly view, and lots of bug fixes and other improvements.

Read on for details and get a free 30-day trial to evaluate all the new features and enhancements:

  • Integration with Clang-Tidy
  • C++ parser and code analysis improvements
  • C++17 in the New Project wizard
  • Force Step Into for disassembly code and debugger fixes
  • Google Test configurations for targets linked with gmock
  • Non-project files
  • Performance improvements
  • Find in Path UI enhancements
  • VCS changes: Git Revert, Reword, updated commit message settings and quick-fixes

Better code quality: Clang-Tidy integration

CLion has 30+ code built-in code inspections to alert users to unused code, incompatible types, wrong declaration order, uninitialized variables and so forth. It also performs Data Flow Analysis to catch infinite recursion, endless loops, missing returns, and unreachable code. To expand the list of checks and help you ensure better code quality, we've integrated Clang-Tidy into CLion 2017.2.

In CLion Clang-Tidy checks are shown the same way as CLion's own built-in code inspections, and quick-fixes are also available via Alt+Enter.

Clang-Tidy's list of checks is long and impressive, and CLion got most of them enabled by default. To customize the list of checks and tweak it to your needs, as well as company policies and standards, go to Settings/Preferences | Editor | Inspections | C/C++ | General | Clang-Tidy settings and use the text-formed string in the Clang-Tidy command line format.

Enable C++ Core Guidelines or Clang Static Analyzer checks, try Modernize checks and many others. It's even possible to add your own checks to Clang-Tidy and get them automatically in CLion. However, be sure to use JetBrains' branch of Clang-Tidy (until our patches for the output format and response files are accepted into master).

To read more about the integration and our plans for expanding it, see this blog post.

More accurate and correct C++ parser

Looking ahead, we're planning a major overhaul of CLion's C++ parser. Starting from bottom to top, we will ensure it is correct on each level, unmasking hidden problems on the way. Some work has already been done.

At the same time, CLion 2017.2 brings dozens of fixes in various parts of the C++ parsing and resolving engine. From the user perspective, it means a reduced number of false-positive code analysis checks, more accurate navigation, refactorings, and other benefits.

In addition, CLion 2017.2 comes with a new quick-fix to preserve non-trivial constructor calls on an unused variable.

Besides, when the cast is needed in C++ code, CLion now suggests C++ type casts (<code>static_cast</code>, <code>dynamic_cast</code>, <code>reinterpret_cast</code>, <code>const_cast</code>) instead of C-style casts.

PCH for MSVC

If you use CLion's experimental support for Microsoft Visual C++ compiler, you'll be glad to learn that precompiled headers are now supported for this case (in addition to previously supported GCC and Clang). Note there are some limitations to keep in mind.

Easy start with C++17

C++17 will be officially signed later this year, but as we see, many C++ developers have already moved to it or at least plan to do so. That's why we've added C++17 to the list of standards in the New Project wizard. This means CLion will automatically add set(CMAKE_CXX_STANDARD 17) to the CMakeLists.txt generated for the new project.

Force Step Into for disassembly view

Disassembly view (for GDB) was recently added to CLion 2017.1, and now we're adjusting its behavior based on your feedback.Some users have been facing the problem of getting into disassembly code unexpectedly, whereas they would prefer to simply skip all the frames without sources. That's why we've relocated the functionality to the Force Step Into Shift+Alt+F7 action, while the usual Step IntoF7 skips the frames without sources. We hope this makes the feature easier to use and more intuitive.

Note, that on macOS (when using GDB) Step Into still falls into disassembly view on std function calls and in some other cases (CPP-10181).

Debugger fixes

To improve the debugging process in CLion, this release comes with some important enhancements and fixes.

To inspect elements of array with big indexes without constantly clicking Expand to the next 50 elements, you can adjust the value cidr.debugger.value.maxChildren in the Registry. (Open the Find Action dialog (Shift+Ctrl+A on Linux/Windows, shift cmd A on macOS), type Registry, and then type cidr.debugger.value.maxChildren in the Registry to search for the setting.) However, remember that this change may lead to increased timeouts during array evaluation while debugging and may affect the IDE in general (beyond your current debug session or project).

Other fixes implemented in the GDB driver include:

  • Command time out when trying to attach to a non-existent local process
  • Incorrectly escaped backslashes in program arguments on Windows

Automatic Run/Debug configurations for Google Test

To perform unit tests with ease, CLion provides a built-in test runner that allows you to rerun tests/failed tests in one click, export results, navigate to the sources, and view the results in a tree view. To get the test results there, a special Run/Debug configuration should be used. For Google Test it can be created automatically by CLion for every target linked with gtest, and now with gmock.

Non-project files

Non-project files (files that do not belong to any CMake target) can now be identified easily in the editor, thanks to the the new file-wide notification. For CLion it means that code insight features should be limited in such files, for example refactorings should not be performed.

It might be useful to know, that when you create new C++ class or C/C++ source or header file CLion suggests to add a new file to CMake target and suggests most probable options to select from. Use this feature to get all your new files included into CMake targets.

Improved performance

Our team is constantly working on performance improvements, doing our best to make the IDE responsive and effective. Thanks to many CPU snapshots, logs and sample projects that you've shared with us via tech support and the CLion tracker, we can identify the areas that can be improved and make the appropriate changes.

The first performance enhancement in CLion 2017.2 is cancelable actions. The idea is to use them where possible to prevent time-consuming operations from freezing the IDE. This time we've updated Go to subclass and Go to overridden functions actions, which build a list of options and can require quite a lot of time to finish. To cancel the action, simply click to the area out of the navigation popup.

Another time-consuming operation is CMake reload. You can now cancel it at any time, by simply clicking the Stop button in the CMake tool window. The output logs were updated to get the indication of successfully finished reload (to distinguish from a canceled run).

Among other performance-related changes:

  • We've fixed laggy Enter and Backspace on some projects (for example, when the caret enters a new block, moves to a new line, or causes a code indent).
  • We've shortened indexing time by optimizing the way compiler-predefined macros are parsed in CLion.

Find in Path UI enhancements

In version 2017.1, the Find in Path window turned into a convenient and compact popup with immediate preview. CLion 2017.2 brings several improvements to make the UI more functional:

  • A left-side gutter is now available in the preview, with line numbers, navigation icons, and markers for local changes.
  • To make the preview even more compact, results from the same line are merged into one line in the preview panel.

Do more with new VCS features

Thanks to IntelliJ Platform, this release brings lots of improvements for Version Control Support:

  • If you need to revert some commits, select them and run the Git command Revert from the Git Log view.
  • To fix a typo in a commit message, or just to update it, use the Reword action (applicable to any commit that has not been pushed yet).
  • To keep commit messages easy to read and expressive, use new Preferences/Settings | Version Control | Commit Dialog settings. Configure whether to have a blank line between subject and body, set maximum text length, and check the spelling in your comments.
  • A quick-fix and the Reformat action are available in commit messages.

That's it! Explore all the new features in even more detail on our website.

Start your 30-day free evaluation and try out all these new features and fixes.

Your CLion Team

PhpStorm 2017.2 is Here

PhpStorm 2017.2, the next major update for PhpStorm, is now available!

Here are some notable highlights of this release:

  • Composer: New Composer actions (update, remove, install, self-update), PhpStorm and composer.json settings synchronization, global installation and easy project creation
  • PHP Runtime: Docker Compose, detection of enabled/disabled extensions from PHP interpreter, preserve state of Start Listening for PHP Debug Connection option
  • PHP Language Support: reworked polymorphic types support, better refactoring for PHP 7/7.1, $this highlighting, new inspections
  • Testing: Automatically run PHPUnit tests, Unified Test Frameworks settings
  • Improved PHP Formatting: new formatting options (spaces around null coalescing operator, new formatter options for blank lines, new parenthesis options for if statements, separate option for brace placement for closures, new Return type on new line option)

RubyMine 2017.2: Docker Compose, RuboCop Quick-fixes, Better Version Control, and more

RubyMine 2017.2 is released! This is the second major update for RubyMine this year, and we encourage you to check out our What’s new page to learn more about it and get the new version.

Here's what's new in this release:

  • Docker Compose - Now you can add Docker Compose as a remote SDK and work with your apps in containers using all the IDE features from code completion to debugging apps with the RubyMine graphical debugger.
  • RuboCop Quick-fixes - RuboCop support has been enhanced with handy right-in-the-editor autocorrections application for code smells found in the file.
  • Breadcrumbs - Added newly designed breadcrumbs for Ruby structure elements: modules, classes, methods, blocks, and custom names for RSpec groups and examples.
  • JavaScript - New Move symbol refactoring, additional code style options, improved support for SASS and SCSS, and coding assistance for webpack module resolution in JavaScript files.
  • Version Control - the Git log features the new Revert commit action that allows you to remove registered changes, and a new convenient way to Reword local commits. Moreover, you will discover new style options for the Commit dialog, and the updated Shelf.
  • User Interface - The Preview panel in Find in Path now has a Gutter – a left-side pane like in the editor – with line numbers, navigation icons and local change markers.
  • Other features include Database improvements, the debugger for Docker, RuboCop support in scratch-files, creating patches to clipboard, and a number of fixed performance issues.

    For more details please see What's New in RubyMine 2017.2 , and download a free 30-day trial for your operating system. You can also check out the release notes.

    Your RubyMine Team

IntelliJ IDEA 2017.2: smarter coding assistance, neater UI, faster performance, and more

2017.2, a new massive update for IntelliJ IDEA, is out and it’s packed full of new features and important bugfixes. Get a copy of this new release, and see for yourself, but before you do, it is worth spending a couple of minutes reading this summary for ideas on where to look.

  • Smarter code completion and control flow analysis
    • Smart Completion becomes aware of builder classes and suggests chains of method calls on its first call, and the chain suggestions are sorted according to how frequently symbols are used in the current project.
    • Control flow analysis has become much smarter and detects a wider array of problems, especially when booleans, strings, arrays, lists, and maps are involved; it also checks nullability issues when corresponding annotations are used on type parameters for collections and maps.
  • New inspections and refactorings
    • Inspections and quick-fixes: Replace with Set.of and Add Thread#onSpinWait() (both require Java 9), and Extract set from comparison chain.
    • Refactorings: Extract as Map Operation (for streams), Extract Functional Variable, and Extract Lambda to Method Reference
  • Java 9 module diagrams
  • Debugger: filtering arrays, collections, and maps
  • Spring Boot run dashboard and actuator endpoints
    • Managing multiple applications is now easier, thanks to the new Run Dashboard tool window
    • Both the Run and Run Dashboard tool windows now provide the actuator endpoint information, like Beans, Health, and Mappings.
  • Kotlin 1.1.3 support
    • The editor can now display Parameter Hints (introduced earlier for Java), along with Type Hints, that is inferred type where it’s not explicitly set.
  • Groovy 2.5.0 support
  • VCS: reverting and rewording commits, formatting commit messages
  • User interface
    • Windows 10 native look and feel
    • Better HiDPI support for multiple display setup on Windows
    • Automatic font settings adjustment to match display resolution
  • JavaScript and TypeScript improvements
    • Editor: Parameter Hints and Type Info
    • Formatting: Rearrange Code
    • Refactorings: Move (across ES6 modules)
    • Frameworks: better support for React and AngularJS
    • CSS Modules support
    • Better Webpack support
    • Code coverage for Mocha
  • Performance
    • Arbitrary modules can now temporarily Unloaded to conserve CPU and memory resources when working on large projects.
    • You can suspend indexing and resume it at your convenience, for example, to save battery power.

For more details about the new and improved features (only the most notable of which are mentioned here), check out the release What’s New page.

Your feedback, as always, is very much appreciated in our issue tracker.

JetBrains recommends: to stay up-to-date with the latest releases, and, when needed, be able to safely switch between several IDE versions, install our Toolbox App.

Announcing WebStorm 2017.2

Today we’re announcing WebStorm 2017.2!

This big summer update adds powerful Move symbol refactoring, supports new code style options for JavaScript and TypeScript, improves testing with Karma and Mocha, and much more!

Explore the new features and download WebStorm 2017.2 on our website.

Upsource 2017.2

Good news, everyone — Upsource 2017.2 is here! It comes with a number of highly anticipated features, brings some fun elements into your daily routine and, as usual, enhances the existing functionality. Here's a quick recap.

External Inspection Engines

Running SonarQube/ReSharper/IntelliJ Inspections on TeamCity? Now you can see the results straight in Upsource. This makes a reviewer's job even easier than before, especially if you're working on a .NET project!

Python Support

Code insight functionality is now also available to teams using Python. As for other supported languages this includes code-aware navigation, static code analysis, Find Usages and Usages diff.

Reactions

When there's no need for an elaborate answer, give your feedback in a fast and compact form using a reaction.

GitLab Support

We've received a number of requests to support GitLab merge requests, so you'll be pleased to know that you can now perform code review for your GitLab merge requests in Upsource.

NPM Support

To improve "Go to declaration" and "Find usages" in JavaScript code, we install dependencies listed in your package.json file using npm or yarn (whichever is available).

Suggested Revisions in Reviews

We have employed advanced statistical analysis to suggest revisions that should be added to a review. Similar to the reviewer suggestions that were implemented several releases ago, this is another powerful tool that helps you review code more efficiently.

Achievements

To make it easier to discover new features and to add some fun to your interactions with Upsource, we are introducing an achievements/badges system. So far we've added only a few basic achievements but that's just the beginning!

That's not all of it! If you'd like to learn more about the new Upsource 2017.2 features, please check out the What's New page.

Eager to try? Download the build and don't forget to backup your current instance!

ReSharper Ultimate 2017.1: support for Visual Studio 2017 RTM, new C# 7 inspections, code styles and more

This year's first major release of ReSharper Ultimate is now available for download!

Major highlights of ReSharper 2017.1 include:

  • Visual Studio 2017 support: ReSharper respects the current target framework context; you can work in a Lightweight solution load mode; Open Folder functionality is partially supported and Move to Folder refactoring works in this mode.
  • Context actions and quick-fixes for local functions and throw expressions, and other new inspections to support C# 7 language features.
  • .NET Core unit testing support in Visual Studio 2017.
  • EditorConfig support and the new File Formatting Info window that displays the scopes and properties defined in all active .editorconfig files as well as the source of indentation settings and its value, and the status of indent autodetection.
  • Layered settings for tabs and indents to maintain a consistent code style if most of your team members use ReSharper.
  • ReSharper can automatically detect and apply indentation based on the existing file indents, when you reformat a part of code in this file, or when code is auto-formatted on editing or pasting.
  • Contextual configuration of formatting rules is available in С#, C++, JavaScript and TypeScript.
  • Usability improvements to Code Cleanup: you can create and configure custom task-specific profiles right in the Code Cleanup dialog box.
  • ReSharper applies its formatting rules to any code you paste, and, by default, only the indentation is affected.
  • Code style settings for C# type members bodies allows you to choose between always using a body block, with braces, or using the expression format.
  • New C# formatting options such as comma-first wrapping style, configurable line breaks in a single case statement.
  • Find Results window gets a new option to group and filter results by kind of usage.
  • Go to Everything and Go to Text popups support inline commands for advanced filtering of search results.
  • Full support for TypeScript 2.1 and initial support for TypeScript 2.2.
  • The Rename refactoring in TypeScript works faster for local symbols and gets a new option to disable search for dynamic usage of TypeScript symbols in JavaScript files.
  • The Generate Code menu gets a new option to generate properties or read-only properties for TypeScript classes. The Generate Overriding Members command now calls super whenever possible.
  • TypeScript gets highlights and quick-fixes for unused imports in ES6 style imports.
  • Postfix templates in JavaScript and TypeScript are supported.
  • Navigate to Implementing Members in TypeScript and Navigate to Function Exits in TypeScript and JavaScript.
  • Initial support for Angular 2 templates syntax: template expressions, template statements, NgFor directive and template variables.
  • Context menu on ReSharper's File Status Indicator provides quick access to a number of code inspections and commands.

ReSharper C++ 2017.1 comes with these improvements:

  • Support for the Open Folder functionality and CMake-based projects, as well as the Faster Project Load Visual Studio setting.
  • Performance improvements.
  • The Update file header cleanup task and a set of cleanup tasks to fix common code issues.
  • Control flow inspections for class fields.
  • Declaration and assignment can be joined inspection and an accompanying quick-fix.
  • Custom attributes in C++ 11 to mark printf-style functions, functions with side effects, and guard classes for which the Unused variable highlighting should be suppressed.
  • Extended set of C++ postfix templates.
  • New code formatting options: Indenting of preprocessor directives, Indent namespace members, Space after parentheses in cast expressions and Break line in simple case statement.

Updates to other tools within the ReSharper Ultimate family include:

  • dotMemory command line profiler which is extremely helpful when you need to automate the process of collecting memory snapshots.
  • dotMemory and dotTrace profiler can be attached to running applications using drag and drop.
  • Option to switch code coverage highlighting mode in dotCover: show markers, colored background or both.
  • Support for Portable PDB in dotPeek.

Learn more about the new features and download a free 30-day trial.

Your ReSharper Ultimate Team

JetBrains

YouTrack 2017.2

Please welcome YouTrack 2017.2 featuring a redesigned profile page, the ability to change the owner of an agile board, experimental features and more.

The latest release also brings:

  • Current sprint functionality
  • Dashboard improvements
  • Simplified board commands

For more details visit the What’s new page. Get YouTrack 2017.2 today and enjoy its wide range of issue tracking and project management capabilities. The latest version is available for download or cloud registration.

YouTrack 2017.2

Please welcome YouTrack 2017.2 featuring a redesigned profile page, the ability to change the owner of an agile board, experimental features and more.

The latest release also brings:

  • Current sprint functionality
  • Dashboard improvements
  • Simplified board commands

For more details visit the What’s new page. Get YouTrack 2017.2 today and enjoy its wide range of issue tracking and project management capabilities. The latest version is available for download or cloud registration.

CLion 2017.1 released: C++14, C++17, PCH, disassembly view, Catch, MSVC and more

Please give a warm welcome to CLion 2017.1!

Our first big update this year includes:

  • Extended support for C++14 (in brief, all except constexpr are there!)
  • First step towards C++17 support (nested namespaces!)
  • First step to modernizing your C++ code: make auto intention
  • Support for precompiled headers and headers included via -include compile option
  • Disassembly view in debugger (GDB)
  • Support for the Catch unit test framework
  • Experimental support for Microsoft Visual C++ compiler
  • Find in Path in popup
  • Enhanced Log viewer and branches popup

Modern C++ standards

As C++17 has already been approved, we've sped up to support the latest C++ standards. The following features of C++14 are recognized in v2017.1:

  • auto return type,
  • generic lambdas,
  • variable templates, and
  • generalized lambda captures.

Support for these language features includes correct highlighting and no false-positives in code analysis, as well as correct code completion, navigation and refactorings.

This means that only constexpr is actually missing from C++14. As for C++17, we've started with the most upvoted feature, nested namespaces.

There are dozens of fixes for incorrect code resolve and thus no more false code analysis and other related issues. Check out the build to see if CLion got better for you!

Support for C++11 and C++14 will be polished in 2017.1.x and 2017.2 releases, and hopefully we'll be able to devote more time to C++17.

Make auto

While working on modern C++ standards, developers see how new language features can help make their code more accurate and readable. What if an IDE could assist you with the task of modernizing your code? Sounds good, doesn't it?

The first step we've taken in this direction is to add a 'convert variable type to auto' intention in CLion 2017.1. Just put the caret on the type or variable name, and invoke the available intentions list with Alt+Enter. Be careful – keep the code modern, but self-documented. The best general cases to convert variable type to auto are iterators, type casts, new-expressions.

Precompiled headers and more

Precompiled headers and the -include compiler option is a way to reduce compilation time and keep large-scale codebases structured and clear. When using this, you simply compile expensive includes once and then guide the compiler to reuse that information.

CLion 2017.1 correctly resolves symbols from such headers, suggests code completion, navigate to the declarations and definitions. Check more details.

Debugger

The debugger in CLion 2017.1 received several important bug fixes and a workaround for the GDB timeout issue (which unfortunately still happens to some CLion users).

However, the most important and long-awaited change is the disassembly view in the debugger. When the sources are unavailable, you still can step into and view the disassembly code. Step through it to investigate the issue in your program deeper or to understand what's happening inside a library call.

For now this only works for GDB. For more about the limitations and known issues, see this.

Besides, if you just open a .s or .asm file in CLion (or other extensions, if you add them to Settings | Editor | File Types | Assembly Language) which uses the AT&T dialect and no preprocessor, it will be appropriately highlighted in the editor.

Catch

There are lots of unit testing frameworks for C++: Google Test, Boost, CppUnit, CppTest and many more. Catch is one that's known for its easy starting process (just include a simple header) and convenient and flexible test cases.

CLion has had Google Test support for a while, and now we've introduced Catch support. It includes a built-in test runner that allows you to view the test results and sort them by duration, rerun failed tests, export test results, navigate instantly to the source code, etc.

The special Catch Run/Debug configuration is flexible enough to run any preferred set of tests within CLion. For your convenience, it provides you with completion of Catch tags and wildcard-based matching templates to speed up configuration.

To learn more about Catch and how it's supported in CLion, read this detailed blog post.

MSVC

One more feature that many of our users have requested is support for Microsoft Visual C++ compiler.

There are three important things you need to know if you'd like to try it in CLion:

  1. Use the Registry option clion.enable.msvc to enable this support.
  2. CLion supports Microsoft Visual C++ compiler that ships with VS 2013, 2015 and 2017.
  3. There's no support for msbuild. CLion works through CMake and the NMake generator.

CLion auto-detects the Visual Studio versions installed on your machine; provides settings to configure the Microsoft Visual C++ compiler path, architecture and platform; and finally runs Microsoft Visual C++ compiler to compile your program. It also helps with navigation through the compiler errors in the Messages Build tool window.

It's important to understand that this support is currently experimental, meaning there are known issues, the biggest being that there's no support yet for specific Microsoft C++ language extensions. We will continue to work on it within the 2017.2 EAP.

Find in Path

In CLion it's possible to search for text across the whole project or any selected scope, with the Find in Path dialog. Now it has a popup window with immediate preview, though you can still open a separate Find Window if you wish.

VCS

CLion 2017.1 enhances its Log View, making search easier with regular expressions and the ability to match/ignore case.

If you have lots of branches in your project and are afraid of getting lost in them, mark the most important ones as Favorites. The redesigned branches popup then allows you to filter them and view only the favorites.

That's it! Explore all the new features in more detail and watch a quick demo on our website. Start your 30-day free evaluation and check all the new features and fixes.

Your CLion Team

PyCharm 2017.1 is Here!

PyCharm 2017.1, is out! Faster debugger, better unit testing, and more. In PyCharm 2017.1:

  • The Python debugger got forty times faster for Python 3.6 projects, and up to two times faster for older versions of Python
  • We’ve added support for the six compatibility library
  • Unit test runners for Python have been rebuilt from the ground up: you can now run any test configuration with PyCharm
  • Are you a full stack developer? We’ve improved our JavaScript unit testing: gutter icons indicating whether a test passed and support for Jest, Facebook’s JS testing framework (only available in PyCharm Professional edition)
  • Zero-latency typing is now on by default: typing latencies for PyCharm 2017.1 are lower than those for Sublime Text and Emacs
  • Support for native Docker for Mac – no more need to use SOCAT! (only available in PyCharm Professional edition)

PhpStorm 2017.1 is Here

PhpStorm 2017.1, the next major update for PhpStorm, is now available!

Here are some notable highlights of this release:

  • Tools and Frameworks: Support of the Codeception testing framework, support of PHPUnit 6, support of PHPDoc in Blade injections, Vue.js support
  • New editing experience: SParameter Hints, improved support of PSR-0 and rename refactoring, recognition of PHP class names in strings, improved PHP formatting, improvements in auto-import functionality
  • PHP language support: Full support of PHP 7 Uniform Variable Syntax, current scope highlighting for alternative syntax, improved support for anonymous classes in PHP 7.1, new code highlights, configurable PHP runtime
  • Code quality analysis: Detect and convert PHP 4 style constructors to PHP 5.3+, new quick-fix for undefined variables
  • PHP debugging: Grouping of user-defined constants in Debugger, allow choosing IP to be sent to Zend Debugger

DataGrip 2017.1 is Here!

DataGrip, our IDE for SQL and databases, has reached a new version. New features and improvements:

Database tree:

  • New schema management
  • SQL resolution scopes
  • Create database/schema UI
  • Color settings affect editor and grid
  • SQLite introspection

Import/export data:

  • Column mappings
  • DDL preview
  • Drag-n-drop tables
  • Export result-set to a database

Query console:

  • Respecting the default search path in PostgreSQL
  • Trigger generation pattern
  • NEW/OLD and INSERTED/UPDATED support
  • Hints for column names in INSERT statement
  • Insert string concatenation on Enter option
  • Settings for Qualifying objects
  • Editable Aliases casing
  • Statement separators
  • Jump to colors and fonts action

Database objects:

  • Double-cliсk to open column details in Modify table
  • Warning if an object has been changed in another place
  • Correct source code for views in SQLite

RubyMine 2017.1: Docker, RuboCop, Puppet, Test Generation for Rails, and More

RubyMine 2017.1 has been released! This is the first major update for RubyMine this year, and we encourage you to learn more about it and get the new version from our What’s new page.

Here's the list of all new and updated items:

  • Docker support - RubyMine provides full support for Docker through the usage of the Docker integration plugin available in RubyMine.
  • RVM gemsets - we added the ability to create new RVM gemsets from the New Project wizard, and through Settings | Ruby SDK and Gems.
  • RuboCop support - now the IDE runs cops in the background, and displays RuboCop offenses the same way as it does RubyMine inspections.
  • Test generation for Rails - you can now create tests for Rails controllers, models, helpers, and mailers from the Go to test action.
  • Puppet improvements - new Puppet modules can be generated from the New Project wizard. Also, now RubyMine finds all modules and/or environments in your project and updates the project structure when you Install dependencies from the context menu.
  • JavaScript improvements include Support for Vue.js, Auto import for React components, Integration with Jest, and more.
  • VCS features new search and display options. Also, searching in Git Log is now a lot faster.

Other improvements include parameter hints for Ruby, updated structure view of markdown files, rollbacks for generated Rails entities, updated New Ruby Class dialog, support for Cucumber 3, support for Emoji, and customizable colors for RegExp syntax highlighting.

For more details please see What's New in 2017.1, and download a free 30-day trial for your operating system. You can also check out the release notes.

Your RubyMine Team

IntelliJ IDEA 2017.1 is Here: Java 9, Kotlin 1.1, Spring, Gradle, JavaScript and more

IntelliJ IDEA 2017.1 is available for download! In addition to many important bug fixes, this massive update brings lots of improvements to supported languages, frameworks, and built-in tools.

  • Java 9: The latest builds of JDK 9 are fully supported, with assisted project import and coding assistance for editing module declarations. Built-in inspections validate module declarations and provide quick-fixes for adjusting project dependencies.
  • Java 8: Quick-fixes that help migrate for loops to Stream API calls have been improved and now support more sophisticated scenarios. We’ve also added a quick-fix that turns Stream API calls back into for loops, which is handy for debugging or exploring code.
  • Async-aware debugger: Async stacktraces is a new feature that substitutes parts of a stack trace related to asynchronous code execution with data captured from where that code is invoked. This helps you focus on what you’re debugging. An improved Smart Step Into also supports asynchronous code and lambda expressions running on other threads.
  • Better VCS: The Log panel for Git and Mercurial has new display options, the Diff dialog gets an option to Ignore imports and formatting, and File History for Git is now faster. We’ve also added Favorite branches and Speed Search to the Branches popup for Git.
  • Search: The Find in Path dialog, which previously had added a Preview tab, has been reworked from the ground up and now shows instant results in the first place. What is more important, now you can open any selected result in the Editor simply by pressing Enter.
  • Spring: Spring Testing has been updated to support Spring Boot 1.4.3, and the upcoming Spring 5.0. Spring Data tools are updated to version 2.0 (including MongoDB, Redis, Solr, KeyValue, Gemfire, Apache Cassandra, REST, Neo4j, Couchbase, and Elasticsearch). There’s also a new Data tab in the Spring tool window which brings better repository navigation.
  • Gradle: Support for Composite Builds is much improved with the detection of includeBuild in Gradle settings and automatic project configuration.
  • Kotlin 1.1: Among other things, the new version of this JVM language introduces coroutines—the new non-blocking asynchronous API, and fully supports compilation to JavaScript. This means you can use Kotlin strings, collections, sequences, arrays and other core API in your JavaScript apps.
  • JavaScript: We’re bringing first-class support for Vue.js, lots of new code style options for JavaScript and TypeScript, faster and more reliable integrations with Angular, ESLint and TSLint (including language service support and TSLint-powered quick-fixes). Plus, simpler editing of project dependencies in package.json with package names and versions completion and easier running of Mocha and Jest tests with the new Run gutter icon that also displays test state.
  • Database tools: IntelliJ IDEA now allows you to transfer table schemas and data between any two databases (yes, even from MySQL to Microsoft SQL Server and back).
  • Emoji: The editor now supports Unicode emoji characters (handy for writing comments).
  • Android Studio 2.2.2: This update includes all changes from Android Studio 2.2.2.
  • Docker: The Docker plugin now supports Docker for Mac and works via "unix://".
  • Windows: The 64-bit installer for Windows lets you give IntelliJ IDEA more RAM.

For more details about IntelliJ IDEA 2017.1, check out the What's new page.

Meet WebStorm 2017.1 with Vue.js and Jest support

WebStorm 2017.1, the first big update this year, is now available!

We’ve added support for such exciting technologies as Vue.js and Jest, brought more flexibility to code styles, improved React and Angular support, and so much more!

Explore the new features and download WebStorm 2017.1 on our website.

Upsource 2017.1 Is Out

Please welcome Upsource 2017.1 with tons of new features and improvements that make your code review process smoother and more productive.

New features include:

  • Cross-project full-text search
  • Squash/rebase support
  • Review progress
  • Browser notifications
  • Docker support
  • Merge status on Review page
  • Review suggestions in revisions list
  • New code review workflows
  • Initial GitLab support

Other enhancements:

  • Revised Reviews page
  • Redesigned Administration area
  • Updated user profile
  • Android Studio, advanced Gradle settings
  • New query assist options
  • Code review workflow improvements
  • Fira Code

Please visit our What's new page for more details about this release.

Download Upsource 2017.1 and enjoy all the new goodies with its free version for 10 users!

YouTrack 2017.1

Please welcome YouTrack 2017.1 featuring search based on time tracking, attachments on Agile Board and many other improvements.

The latest release also brings:

  • Credentials management
  • Permanent access token
  • LDAP bind to a fixed account
  • Revised access tab
  • Description for banned users
  • Enhanced Auth Modules

For more details visit the What's new page. Get YouTrack 2017.1 today and enjoy its wide range of issue tracking and project management capabilities. The latest version is available for download or cloud registration.

Hub 2017.1

Please welcome Hub 2017.1 introducing new useful features and dozens of UI and usability improvements.

The latest release brings:

  • Quick navigation
  • Revised access tab
  • LDAP bind to a fixed account
  • Credentials management
  • Permanent access token

Other enhancements:

  • Description for banned users
  • Scheduled backups
  • Delete an entity from anywhere
  • Enhanced Auth Modules
  • Open service URL

Check out What's new page for more details or view the Release Notes. Download Hub 2017.1 for free and enjoy all the new features today.

Welcome PyCharm Edu 3.5

Please welcome PyCharm Edu 3.5, the newest release of our free and easy-to-use IDE for learning and teaching programming with Python.

This release brings advanced course creation options for educators and more courses for students.

Subtask Management for Educators

When teaching your students to program, you often want to give them an opportunity to work with the same code fragment, gradually making tasks more complicated and sophisticated. With PyCharm Edu 3.5 it is now possible to add steps, or subtasks, for any task in your course. Read more about the feature on the blog or find more details in the getting started tutorial.

Please see the What's New page for more details and download PyCharm Edu 3.5.