Замечания и предложения

Вообще, вроде бы так можно запихать описание:

            var descbyte = new byte[options.Description.Length * 2];
            int id = 0;
            foreach (char element in options.Description)
            {
                var ord = BitConverter.GetBytes(element);
                descbyte[id] = ord[0]; descbyte[id + 1] = ord[1];
                id += 2;
            }
            ab.SetCustomAttribute(typeof(System.Reflection.AssemblyDescriptionAttribute).GetConstructor(new Type[] { typeof(string) }), descbyte);

Ничего не падает, но и описания оно не даёт. Что-то я делаю не так.

Может я что то не понял, но ты вызываешь .GetConstructor, но не вызываешь полученный конструктор, в итоге передавая в SetCustomAttribute первым параметром System.Reflection.ConstructorInfo (или какой у него там тип).

@Sun_Serega, да, ConstructorInfo.

А, вижу… Там так и надо… А ты пробовал использовать первую перегрузку SetCustomAttribute? На msdn для неё хоть примеры есть, а массив байт - как ты знаешь как правильно в него сериализовать строку?

Я и не знаю) в BitConverter.GetBytes нет перегрузки для string.

Ну дык. Я так понял ты в юникоде раскладываешь каждый символ на 2 байта и потом всё вместе соединяешь. Вот только что то мне подсказывает что ему нужна строка в ANSI, при чём нуль-терминированная. А может и ещё что.

Страшновато такое заливать. Всё удалил, потом всё вставил. Или не всё ))

2 лайка

Сделано:

Огромное спасибо @Sun_Serega и @Raevski.
Для просмотра изменений – смотрите коммит “Директива {$Title ’ '}”, другой коммит “исправляет” кодировку (можно ли это назвать исправлением? (с) @Sun_Serega).
Желательно принять как можно быстрее, так как в Compiler.cs очень часто вносятся изменения.

На баги протесчено (хотя там и нечему ломаться).

1 лайк

Тогда прошу сделать также директиву Description - поскольку они рядом везде идут

готово

Пулл реквест приняли, теперь главное чтоб не забыли в справке прописать)))
Хотя бы сам факт что они существуют…

Нужно ещё сделать Pull Request с Description

Description добавлен к тому пулл реквесту и уже принят.

1 лайк

Тогда боюсь, что я уже выложил. Проверьте. В описании правда отображается Title. Не знаю, правильно ли это.

Кстати, меня очень радует, что появились независимые разработчики

2 лайка

Ой, что то вы не то залили))))

P.S. Но ни в самой справке, ни в коммитах я не вижу добавления этих директив в справку.

P.P.S. О боже мой

…а можно, пожалуйста, установщик предыдущего билда :smile:

Директивы тут не при чём, они внешний вид IDE не трогали.

А про

Я тут согласен с

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

2 лайка

Ну, если кто то кинет пулл реквест с багом - то он же и исправлять должен, это однозначно. Я говорю про то что отношение “лучше не трогайте” - в корне неправильно.

Это если разработчики правят. Но мелочи аля quality-of-life тоже надо кому то исправлять.

И ещё раз, если бы проблема была в коммите котова - он бы сам и исправлял, и ничего в этом плохого нет.
Но, он кидал мне версию после своих исправлений и там всё было норм.

А то что мы видим тут - похоже на неудачную попытку разработчиков исправить проблемы с маштабированием элементов IDE, о которых говорил @MrFresnel.

А где по этому принципу не работает? Хотите знать - узнавайте. Не хотите - верьте тем кто в этом разбирается.

И, когда вы читаете что то в справке или чейнджлоге - вы тоже только “верите”. Информации там не всегда отражает правду, потому что 1. она может быть устаревшая и 2. разработчики тоже имеют право ошибаться.

А то что говорю я - по крайней мере реже будет устаревшим. Я так же всегда перепроверяю что пишу, даже если на 100% уверен, но, утверждать что нигде ничего не забываю - не буду.