И снова здравствуй, Хабр!

Неделю назад мы выпустили новую версию Upsource — инструмента для code review и навигации по репозиториям.

За полгода с момента первого релиза мы успели значительно расширить функциональность, и теперь можем поделиться результатом нашей работы.

Во-первых, мы создали IDE-плагин для сред разработки на платформе IntelliJ (в частности, IntelliJ IDEA, WebStorm, Android Studio и другие), который позволяет проводить code review, комментировать код, следить за новостями внутри проекта, получать ссылки на код, которыми в дальнейшем можно обмениваться с коллегами, и все это — не покидая уютную IDE.
IDE-плагин для code review

По многочисленным просьбам появилась поддержка веток в Subversion, а также тегов в Git и Mercurial.
Поиск в репозитории по Git-тегу

Статический анализ Java-кода и навигация внутри проектов теперь работает в проектах на Gradle, тогда как раньше все это было доступно только в проектах, использующих Maven.

Далее, в любых Java-проектах теперь доступно сравнение вхождений Java-символов в двух смежных ревизиях: Upsource покажет, сколько вхождений было добавлено, сколько удалено, а сколько не претерпело изменений.
Сравнение вхождений символа session между двумя ревизиями

Заметно упростились этапы создания и проведения code review. В частности, появилась автоматическая подсказка рецензентов, а если review проходит в несколько итераций, вам обязательно пригодится фильтрация ревизий.
Фильтрация ревизий в code review

Наконец, теперь доступны навигация и поиск вхождений JavaScript-кода внутри проектов на HTML/CSS/JavaScript. Это первый шаг к тому, чтобы статический анализ и навигация появились не только в Java-коде, но и в ряде других языков, которые поддерживаются платформой IntelliJ. Поддержка JavaScript пока носит экспериментальный характер, и вряд ли можно ожидать, что она будет работать безупречно, но мы намерены улучшать её к следующим релизам.
Навигация в JavaScript-коде

Чтобы узнать больше о новой функциональности Upsource 2.0, вы можете ознакомиться с полным списком изменений или посмотреть небольшое видео, снятое нашим техническим евангелистом Trisha Gee:


Скачать продукт можно отсюда; ознакомиться с ценами — здесь, а следить за самыми последними новостями можно, подписавшись на twitter-аккаунт Upsource.

Кстати, о ценах. Upsource 2.0 бесплатен для всех, кто купил один из планов первой версии. Кроме того, напомним, что Upsource всегда бесплатен для команд численностью до 10 человек.

Комментарии (15)


  1. BloodUnit
    28.05.2015 07:56

    Ожидается ли статический анализ для других языков и плагин для Visual studio?


    1. gorohoroh Автор
      28.05.2015 11:46
      +1

      Судя по второй части вопроса, под другими языками понимаются .NET-языки? Если так, то нам хотелось бы, но по-прежнему совершенно непонятно, когда это будет возможно.

      Что касается плагина для VS, то эту деятельность мы не рассматривали, поскольку до последнего времени никто этим не интересовался. Создал реквест, при желании голосуйте.


    1. gorohoroh Автор
      28.05.2015 11:49

      Что касается других языков вообще, то навигация и анализы в них появляться будут, но в первую очередь для тех, что поддержаны на платформе IntelliJ: Kotlin, Scala, Python, Ruby, PHP и проч. Когда именно и в какой последовательности, пока сказать трудно. Это сильно зависит от графика команд, которые разрабатывают поддержку соответствующих языков в IDE.


  1. gubber
    28.05.2015 11:21

    Добрый день.

    Мы пробовали использовать первую версию.
    Мы не очень хотим вводить в первое время какой-то полноценный бизнес-процесс review. И мы столкнулись со следующей проблемой:
    Мы помечаем комментарием часть кода, как требующую переработки в рамках ревью. Разработчик правит этот блок кода и делает коммит в репозиторий. Как мы можем увидеть, эти правки привязанные к первому комментарию?
    Есть ли во второй версии функционал, который позволяет быстро привязать коммит в VCS с неким review-комментарием?


    1. gorohoroh Автор
      28.05.2015 11:50

      Если я правильно понял проблему, то она решается с помощью IDE-плагина: в диалоге Commit можно указать, что новый коммит надо присоединить к существующему review.


      1. gubber
        28.05.2015 13:01

        А без IDE это ни как?
        Меня же коллеги просто убьют за это. Я и так у них за евангилиста считаюсь :)


        1. gorohoroh Автор
          28.05.2015 13:11

          Без IDE — пойти в существующий review в веб-морде Upsource и выбрать Add revision. Это можно было сделать и в 1.х.

          А почему вас должны убить?


          1. gubber
            28.05.2015 13:25

            На примере сегодняшнего разговора:
            В Нетбинсе нет(или ребята не знают, как сделать) перехода в html-ке по клику к определению класса в css файле. :) Таких мелочей накапливается много. У меня спрашивают, не получаю ли я процент от продаж Idea :)


            1. gorohoroh Автор
              28.05.2015 14:01

              Ясно. Желаю остаться живым )
              Есть вот такой реквест про указание review ID в commit message с последующим присоединением коммита к review. Голосуйте, наверное, если существующие варианты не подходят.


              1. gubber
                28.05.2015 14:39

                Мне казалось, что это самое естественное решение привязки коммита к review.
                Голос добавил


    1. leonya
      28.05.2015 16:08

      Нужно пойти на страницу коммита и нажать «Attach to existing review», это и в первой версии было.

      Автоматически все работает только для feature branches – если из бранча создать ревью, последующие коммиты будут добавляться в ревью автоматически.

      Добавление при упоминании ID ревью в commit message – в планах.


  1. rustler2000
    01.06.2015 09:07

    Поличините логины через гуглы на youtrack, а то нотификации рассылаете а ни залогиниться, ни пароль восстановить, ни фидбэк отправить нельзя


    1. gorohoroh Автор
      01.06.2015 16:14

      Честно говоря, не в курсе этой проблемы. Позову кого-нибудь из команды YouTrack.


    1. gorohoroh Автор
      01.06.2015 16:24

      Команда тоже по описанию не понимает, что у вас идет не так и где. О какой инсталляции YouTrack идет речь и какой она версии? Можете ли хотя бы сделать скриншот? Если речь идет о вашей приватной инсталляции, то, возможно, имеет смысл общаться через поддержку ютрека.


    1. 0mathcrap
      01.06.2015 16:35

      Здравствуйте, пришлите, пожалуйста, детали на youtrack-feedback@jetbrains.com или через упомянутую форму.