TeamCity user interface has always been quite responsive. We are trying to avoid the whole page refresh as much as possible. As such we need some way to deliver events occurring on the server to browsers. For this we traditionally used HTTP polling. While being quite reliable, it still has disadvantages:
- it increases the load on the server especially in case of a large number of users
- its responsiveness is limited by the poll interval
While responsiveness is a nice addition, a high server load is still a bigger problem. We attempted to solve these issues in this TeamCity EAP. Now it uses the WebSocket protocol for events, running builds updates and statistics counters (the number of builds in the queue, the number of agents, etc). Now every client establishes a single WebSocket connection with the TeamCity server, and the server pushes information about events to the browsers once they occur. Then it's up to the client code to decide what and how should be updated on the page.
For each failed or failed to start dependency you can select one of the four options:
- Run build, but add problem: the dependent build will be run and the problem will be added to it, changing its status to failed (if problem was not muted earlier)
- Run build, but do not add problem: the dependent build will be run and no problems will be added
- Make build failed to start: the dependent build will not run and will be marked as "Failed to start"
- Cancel build: the dependent build will not run and will be marked as "Canceled"
Floating Point Numbers Support for Statistic Values
TeamCity now supports configuration of Mercurial options per repository leaving behind the old approach which implied editing global mercurial configuration files on the server and agents. Now it is possible to enable some mercurial extensions only in the repositories where they are required.
- Now the Maven artifact dependency trigger can use authorization configured using the new advanced settings of the trigger.
- REST API: added support for tagging queued and running builds, added ability to download build's artifacts in an archive
- Location of memory dumps produced by TeamCity has changed from the
<TeamCity installation directory>/binto
<TeamCity installation directory>/logs/memoryDumps/directory.
- Bundled Maven 3.2.x
- NTLM authentication can be used for Subversion repositories
- fixed issues