...

пятница, 16 мая 2014 г.

Consulo + .NET плагин, спустя два месяца

После моей первой публикации прошло два месяца. После него, я немного сменил приоритет на одну задачу. А именно реализация дебаггера, хотя бы для Mono .NET

Debugger




Как я написал выше — я решил реализовать поддержку дебагера для Mono .NET. Как я уже говорил в комментах, Mono имеет Soft Debugger, который использует протокол подобный Java (JWDP). В итоге появилась библиотека на Java, для Mono дебагинга.

Пару скринов:


image


image


Также можно увидить в тестовом видео здесь


Во время паузы можно изменять значения для примитивных типов, и строк.


Из известных мне недоработок — не работает Watchers, так как они базируются на Evaluate Expressions, а это доволи обьемная задача, которую пока я отложил на полку


Microsoft .NET дебагер, также имеет низкий приоритет, нету пока у меня времени писать оболочку(Не хочется юзать command line debugger, ибо это нужно будет писать отдельную реализация для дебагера, я планирую реализовать mono дебагер к Microsoft .NET). Если есть желающие — пишите на почту.


.NET




Добавлена поддержка Mono Docs, которые хранятся в доволи специфичном формате.

image


C#




За это время много чего было реализовано.

* Lambda expressions, теперь обрабатываются, и их параметры имеют корректный тип.

image


* Method extensions. Была поправлена декомпиляция методов, для правильного определения this модификатора. Также был сделан поиск этих же методов


image


* Корректная поддержка версии шарпа. Сейчас уже подсвечивается выражения которые не поддерживаются версией языка, который вы поставили в настройках


image


image


* Multi-dimenstion arrays


image


* Поддержка Partial типов


* Бинарые операции терь возращают корректный тип


Песочница




Этот раздел — касатся разных задач, которые косвенно касаются .NET/C# плагинов.

* Сделана поддержка NUnit, но пока она далеко до идеала, нужно больше времени уделить ей


image


* Сделана начальная поддержка импорта проектов Visual Studio


* Есть начальная реализация для IKVM


image


image


Поддерживается статичная и динамичная компиляция для Microsoft .NET. Для Mono .NET поддерживатся только динамический запуск. Статичная компиляция сломана у оффициальных билдов Mono


P.S.




Текущий статус — альфа. Пока что не годится для работы в production. Ещё много багов — которые правятся и создаются каждый день. Продолждать работать я буду, неизвестно пока с какой силой, так как я могу сменить место жительства, и это будет мешать. Желающие помочь — было бы хорошо.

Я хочу ответить на пару вопросов, которые мне задали раньше.


Переноса на .NET платформу(через IKVM) — не будет. Главная причина, это смена шила на мыло. А вторая это то что даже автор IKVM, не поддерживает Mono.


Перенос на IntelliJ платформу, также не будет. Причины есть, которые я не хочу тут писать, во избежания флейма. Одна из них, я не люблю тучу IDE на компе. Кто захочет — может перенести. Но я знаю — это практически не возможно(много времени уйдет на перенос).


Спасибо за внимание.


Links




* Основной репозиторий

* Репозиторий плагина .NET / C#

* Night Builds(плагин устанавливается через интерфейс — Microsoft .NET или Mono .NET):

Windows

Mac

Linux

This entry passed through the Full-Text RSS service — if this is your content and you're reading it on someone else's site, please read the FAQ at http://ift.tt/jcXqJW.


Комментариев нет:

Отправить комментарий