А когда менять версию сборки?
Хорошо было в Delphi. Там можно было выбрать галочку "Наращивать при каждом билде" и у тебя каждый раз новенькая версия. Тем более, что от нее ничего и не зависело. Так, для красоты была. А тут пришел пи..., простите, .NET.
Первое что я там увидел и сильно порадовался: атрибут AssemblyVersion.
О, подумал я, - моща. Скомпилировал, смотрю версия у моей сборки, что-то типа 1.0.0.34765. И при каждой компиляции растет не по-децки. Это мне не понравилось. А тут еще старина Рихтер, со своим: "Не юзайте ни в коем разе звездочку в версии, это Микрософты плохо придумали и уже жалеют об этом. Я точно знаю, бо я с ними пиво пью!".
Что делать?
Да разве такой проблемой остановишь настоящего индейца? А make-файлы на что? Короче написали мы наращивание версии в make-файлах, получилось почти как в delphi. Только опять попадалово! Мы ж не просто себе нотепад пишем, мы Библиотеку(!) пишем. А ее потом в паре-тройке проектов другие пацаны юзают. Оказалось, что в .NET-е от версии много чего зависит. Может быть так, что твою сборку даже не загрузят только за то, что у нее версия не совпадает с эталонной. Так и получалось, когда я правил багу в библиотеке и выкладывал на тестирование, а пацаны свои проекты не перекомпилировали. Не работали их проекты.
Пока оставим вопрос открытым....
Как и когда менять версию?
Первое что я там увидел и сильно порадовался: атрибут AssemblyVersion.
[assembly: AssemblyVersion("1.0.*")]
О, подумал я, - моща. Скомпилировал, смотрю версия у моей сборки, что-то типа 1.0.0.34765. И при каждой компиляции растет не по-децки. Это мне не понравилось. А тут еще старина Рихтер, со своим: "Не юзайте ни в коем разе звездочку в версии, это Микрософты плохо придумали и уже жалеют об этом. Я точно знаю, бо я с ними пиво пью!".
Что делать?
Да разве такой проблемой остановишь настоящего индейца? А make-файлы на что? Короче написали мы наращивание версии в make-файлах, получилось почти как в delphi. Только опять попадалово! Мы ж не просто себе нотепад пишем, мы Библиотеку(!) пишем. А ее потом в паре-тройке проектов другие пацаны юзают. Оказалось, что в .NET-е от версии много чего зависит. Может быть так, что твою сборку даже не загрузят только за то, что у нее версия не совпадает с эталонной. Так и получалось, когда я правил багу в библиотеке и выкладывал на тестирование, а пацаны свои проекты не перекомпилировали. Не работали их проекты.
Пока оставим вопрос открытым....
Как и когда менять версию?
Коментарі