Про баги

Смотрю сериал.

1. В xxx-ой серии встречаю словосочетание «et cetera».
2. Вспоминаю про свое предпоследнее развлечение — «Онегин»:

Обоз обычный, три кибитки
Везут домашние пожитки,
Варенье в банках, тюфяки,
… <тут мозг спотыкнулся>
Горшки, тазы et cetera,
Ну много всяго добра.

3. Думаю — ладно, лень в распечатку (из хрома) смотреть, посмотрю в источнике.
4. Внезапно обнаруживаю там неизвестную строку

Везут домашние пожитки,
Кастрюльки, стулья, сундуки,

5. Открываю в хроме предварительный просмотр.
6. Точно — подвал страницы перекрывает последнюю строку.

7. Распечаталось точно так же.
8. И, по ходу, это на всех страницах.
9. … а потом грязно выругался.

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

PS.

У вас установлена последняя версия Chrome.
Версия 97.0.4692.71 (Официальная сборка), (64 бит)

Релиз провайдера для EF Core

Новости

Вести с полей

Всем привет.

Выложил релиз IBProvider v5.25. Я, походу, больше года думал над этой проблемой с truncate_char 🙂

Теперь вот буду думать над проблемой с schema_cache. Есть мнение, что значение по умолчанию должно быть равно нулю. То есть, кэширование должно быть отключено.

Тестовая сборка IBProvider v5.25

Привет всем.

В текущем триале IBProvider v5.25.0.36436 у свойства инициализации «truncate_char» изменилось значение по умолчанию. Теперь оно равно False.

Иными словами, теперь по умолчанию провайдер не будет усекать терминальные пробелы/нули у значений на базе типа данных CHAR.

Work in progress

Привет всем.

Закончился 13-ый месяц разработки провайдера для EFCore.

Протоптана часть проекта, связанная с Migrations.

В Migrations, на основе C#-ых конструкций, генерируются DDL запросы для создания/обновления базы данных.

Созданы тесты, проверяющие работу этих генераторов. Тестов с прогоном эти DDL-запросы на сервере пока нет. Думаю, они дальше, по ходу пьесы сформируются.


В целом, по ощущениям, завершено 90-93% проекта.

Дорожная карта с маршрутом, в принципе, есть.

Но поскольку нужно будет вникать в новые вещи, есть небольшой риск «застрять».

Будем посмотреть.

Вести с полей

Восьмого ноября будет выпущена Visual Studio 2022.

И подготовка к этому релизу достаточно неплохой способ отвлечься от монотонной работы над провайдером для EFCore 🙂

На перетряхивание было потрачено около 10 дней. Достаточно неплохо.

Итак

1. Текущий триал IBProvider (vc17) собран компилятором новой студии с указанием режима C++20.

2. В новый выпуск ADO.NET провайдера включены DDEX провайдеры для VS2022. В исследовательских целях добавлен DDEX провайдер для FW3.5. Работает, что удивительно.


Скачиваем, смотрим.

Вести с полей

Завтра закончит работать триал IBProvider с номером сборки 36410.

Поэтому, собрав волю в кулак, собрал новый триал — 36411.

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

Улыбнулся.

Бинарники инфраструктуры, подтянутые из хранилища сборок, были собраны больше года назад.

Work in progress

Всем привет.

Как и планивалось месяц назад, прошел еще один, двенадцатый по счету, месяц разработки провайдера для EFCore 🙂

Прошел он достаточно жестко — пришлось в очередной раз откатиться назад.

Проблемы были на всех уровнях. Кроме, что удивительно, IBProvider.

Но зато сейчас все тип-топ. Речь про мои проекты, разумеется.

Вообще, если смотреть трезво на этот проект для EFCore, то год назад это было очень рисковано возвращаться к нему.

TimeOnly+DateOnly, которые прямо так хорошо вписались в проект, появились позже.

Да и VS2022 тоже очень хорошо зашла. Фактически спасла проект.


На текущий момент вроде как допилил трансляцию в SQL.

Теперь на очереди — запилить поддержку миграции (Migrations).

Здесь уже есть некоторые серъезные заготовки с тестами.

Нужно просто переключиться на них и протоптать этот вопрос до упора.

По ощущениям — осталось работы на «начать и закончить».

Work in progress

Привет всем.

Надо обновить сведения о текущем состоянии проекта провайдера для EFCore.

Уже идет 12-ый месяц.

Немного продвинулся с тестами спецификации:

Собственных тестов тоже стало немного больше:

В целом, проект потихоньку продвигается вперед.

Конечно, хотелось бы его двигать быстрее. Но, увы. До сих пор приходится тратить время на реорганизацию.

Из положительных моментов:

1. Пока все получается.

2. Я переключился на оригинальные исходники EFCore 6.0.

Надеюсь, что они там ничего не сломают до релиза этой версии.

Work in progress

Привет всем.

Завершается девятый месяц с момента рестарта проекта провайдера для EFCore. Сейчас специально посмотрел срок беременности у слонов — 22 месяца. Думаю, в нашем случае процесс продлится не так долго.

Текущее состояние

1. В связи с переездом EFCore на .NET6, пришлось немного откатиться назад, чтобы прикрутить поддержку новых типов данных DateOnly и TimeOnly.

С одной стороны хочется выругаться, а с другой — этот локальный рестарт улучшил код как самого провайдера так и его тестов.

Процесс прикручивания пока не завершен, но базовая поддержка (чтение, запись, операторы сравнения) уже реализована. Осталось окучить трансляцию методов этих типов. Ничего сложного, но требуется время.
(далее…)