Wednesday 20 March 2019

What's new: ARC Desktop 13

New version of ARC has been released. It was long lasted release containing tons of changes including: stability improvements, UI redesign, architecture redesign, security updates, and new features.



UI redesign


ARC pretty much is still the same application as it was with few UI tweaks.

Status bar (bottom of the request editor) has been removed. It didn't contain any relevant information. Save request button has been moved to request drop down menu (to the right to the send button). We all love to use shortcuts (ctrl/cmd+s or ctrl/cmd+shift+cmd) anyway!

Environment selector has been promoted to the application toolbar. Environment change effect whole application, not only particular request. It shouldn't be part of the request editor if there's more than one request in the work space.

Navigation changes includes:

  • Default screen is now work space screen; other screens are sub-pages
  • Access to web sockets is now in application menu > Request
  • Added button to refresh list in the menu
  • Navigation lists now comes with 3 size settings: default, comfortable, and compact (sounds like Gmail to you?). Change it in Settings > View

I also decided to deprecate "saved" requests. It is pretty much the same object as history entry but it has a name. This only make sense if you are working on API development in which case "project" would be more natural place for saving a request. As for this and next version this will work as was working since the beginning. After that I am planning to move all saved request to "default" project and remove this menu entry. You are welcome to join the discussion if your use case justifies keeping this feature. If there's no good reason to keep it I'll remove this menu and screen soon.

Security improvements

Trust is very important and therefore I've invested some time thinking about architecture of the application to make it reliable and secure.
The application will keep storing data in Chromium's internal storage (Indexed DB). This ensures data integrity and security.

As for changes in security area:
  • Disabled node integration in the renderer process - any data rendered in the response view won't affect your OS as it no longer has access to node APIs
  • Added content security policy to rederer process of the application - this ensures that only code intended to be part of the application is executed
  • Added preload script to be very specific about code that can be executed in the renderer process. This means that functions that has access to (for example) file system have to use an abstract layer (proxy service) to access any sensitive resources.

Request panel


The work space has been redesigned for performance. This version comes with complete redesign of creating, storing, and restoring request data. It has noticeable impact on how ARC renders UI by speeding up rendering of it.

When saving request you can now associate it with more than one project! It is a single object so a change to a request object on one project will change it in any other.

New (hopefully) cool feature is drag and drop of requests. It is experimental feature that can be enabled in Settings, in Experiments section. It allows you to move requests from menu to the request workspace and back (excluding history, there's no point of it). You can also move request between menu sections (for example from history to a project).

Tabs in the work space can now be reordered (experimental drag and drop feature has to be enabled).

Headers sets has been removed after very long trial as no one (according to Google Analytics) was using it.

Finally when the app is restored it also restores latest responses.


There's much more changes to the application than this. See full changelog at https://github.com/advanced-rest-client/arc-electron/releases/tag/v13.0.0 

Happy RESTing!

No comments:

Post a Comment