Выпущен GoFrame v1.11, базовая среда разработки для Go

Go

GF(Go Frame) goframe.orgЭто модульная высокопроизводительная базовая среда разработки Go производственного уровня. Он достиг относительно полного построения инфраструктуры, включая часто используемые основные компоненты разработки, такие как: кеш, журнал, файл, время, очередь, массив, коллекция, строка, таймер, командная строка, блокировка файла, блокировка памяти, пул объектов, соединение объединение ресурсов, управление ресурсами, проверка данных, кодирование данных, мониторинг файлов, запланированные задачи, ORM базы данных, компоненты TCP/UDP, управление процессами/связь, параллельные контейнеры безопасности и т. д. И предоставляет ряд основных компонентов для разработки веб-сервисов, таких как: маршрутизатор, файлы cookie, сеанс, промежуточное ПО, регистрация службы, управление конфигурацией, механизм шаблонов и т. д., поддержка горячего перезапуска, горячего обновления, многодоменного имени, многопортового , мультисервисный, HTTPS, такие функции, как перезапись.

GFОн имеет множество базовых модулей, полную цепочку инструментов и подробную документацию по разработке. Открытый исходный код в течение почти двух лет,GFОн был подтвержден и поддержан все большим количеством мелких партнеров. Он широко используется в производственных проектах на уровне предприятия, таких как микросервисы, Интернет вещей, блокчейн, системы электронной коммерции и банковские системы. Он прошел миллионы испытаний. из 10 000 уровней и десятков миллионов проектов в 2019 году было облаком кодаgiteeОценивается какGVPСамый ценный проект с открытым исходным кодом.GFОн быстро растет и в настоящее время поддерживает правило выпуска итеративных версий в течение 1-2 месяцев, а сообщество активно.

Наконец, я желаю всем счастливого Нового 2020 года и процветания в Году Крысы!

новые возможности

  1. С Новым годом и новой погодой документы официального сайта сильно обновлены:goframe.org/index
  2. GFОбновление цепочки инструментов:перейти на frame.org/tool ​​chain/от…
    • новыйgf runГорячая компиляция и запуск команд;
    • новыйgf dockerКоманда компиляции образа Docker;
    • новыйgf gen modelМощная команда автоматической генерации модели;
    • gf buildКоманда добавляет поддержку конфигурации файла конфигурации;
    • Множество улучшений инструмента командной строки;
    • Добавлена ​​функция автоматической настройки прокси;
  3. база данныхORMНовые возможности:

Функциональные улучшения

container

  1. garray
    • новыйNew*ArrayRangeМетод инициализации массива, который создает указанный диапазон значений.
    • новыйIterator*Метод обратного обхода элементов элемента массива.
    • Улучшить модульные тесты.
  2. gvar
    • УлучшатьMapStrStr,MapStrStrDeepреализация метода.

net

  1. ghttp
    • Улучшить HTTP-клиент, увеличить автоматическую отправку параметровContent-Typeидентификационная функция.
    • Requestувеличение объектаParseметод, который используется для быстрой конвертации объектов, т.е. проверки параметров.
    • Request.GetPost*все методы отмечены какdeprecated, Режим отправки унифицированных параметров клиентаQueryString, Form, Body.
    • УдалитьResponseразбор шаблонаGet/PostВстроенные переменные, новыеQuery, Form, RequestВстроенные переменные:зайдите на frame.org/net/http/day…
    • УлучшатьResponse.WriteJson*иResponse.WriteXml*метод, увеличьтеstring, []byteПоддержка параметра типа.
    • ServerновыйGetRouterArrayспособ представления и доступа к прикладному уровнюServerСписок маршрутизации.
    • ServerновыйUseметод, которыйBindMiddlewareDefaultПсевдоним, используемый для глобальной регистрации промежуточного программного обеспечения.
    • ServerновыйRouteOverWriteЭлемент конфигурации для управления автоматическим переопределением при регистрации конфликта маршрутов. По умолчанию он отключен и запрашивается.
    • ServerновыйGracefulЭлемент конфигурации, используемый для управления включением/отключением функции плавного перезапуска в сценарии с одной службой. Он включен по умолчанию.
    • Улучшить модульные тесты.
  2. gtcp
    • Улучшить функцию отправки и получения пакетов данных по простому протоколу.
    • Установите время истечения срока действия кэша по умолчанию для пула соединений.30Секунды изменены на10второй.
    • Улучшить модульные тесты.

database

  1. gdb
    • новыйAsМетод псевдонима таблицы данных.
    • Улучшить автоматическую идентификацию безопасных символов в таблицах и полях данных.
    • новыйDBМетод переключения объекта базы данных.
    • новыйTXМетоды поддержки транзакций связанных операций.
    • Улучшить модульные тесты.

os

  1. gcfg

    • новыйGetMapStrStrметод.
  2. gcmd

    • Добавлен парсинг параметровstrictСтрогие параметры, строгое разрешение по умолчанию, ошибка отчета возвращает, когда нет указанного имени параметра / опции.
  3. genv

    • УлучшатьRemoveМетод поддерживает удаление нескольких переменных среды.
  4. gfile

    • УлучшатьTempDirМетод доступа к временному каталогу, в*nixПо умолчанию система/tmpсодержание.
    • новыйReadLines, ReadByteLinesметод для чтения содержимого файла по обратному вызову строки.
    • новыйCopy*Метод копирования файлов/каталогов поддерживает рекурсию.
    • новыйReplace*Метод замены на содержимое файла в каталоге поддерживает рекурсию.
    • УлучшатьScan*Метод для извлечения и возврата всех файлов/каталогов в указанном каталоге, поддержки спецификации режима файла и поддержки рекурсии.
    • Улучшить модульные тесты.
  5. gproc

    • Улучшить метод запуска командной строки.
    • УлучшатьShellЛогика получения командного файла.
    • Улучшить экспериментальный дизайн межпроцессного взаимодействия.
  6. gtime

    • метод пакета, а такжеTimeметод временной метки объектаSecond, Millisecond, Microsecond, NanosecondОтмечено как отмена, Добавить новоеTimestamp, TimestampMilli, TimestampMicro, TimestampNanoзаменять.
    • Следует отметить, что вышеуказанные модификации могут иметь проблемы совместимости со старыми версиями.
  7. gview

    • Функция разбора, улучшения дизайна кеша.
    • новыйencode, decodeФункции шаблона кодирования/декодирования HTML.
    • новыйconcatФункция шаблона конкатенации строк.
    • новыйdumpШаблонная функция, которая работает какg.Dumpметод.
    • новыйAutoEncodeЭлемент конфигурации для автоматического вывода транскодированияHTMLсодержание, часто используемое для предотвращенияXSS, выключено по умолчанию. Обратите внимание, что эта функция не влияетincludeВстроенные функции:зайдите на frame.org/OS/view/hour…
    • Идеальное модульное тестирование.

crypto

  1. gmd5
    • УвеличиватьMustEncrypt, MustEncryptBytes, MustEncryptString, MustEncryptFileметод.
  2. gsha1
    • УвеличиватьMustEncryptFileметод

encoding

  1. gbase64
    • новыйMustEncodeFile, MustEncodeFileToString, MustDecode, MustDecodeToStringметод.
  2. gjson/gparser
    • новыйGetMapStrStrметод.
    • новыйMust*метод, который используется для генерации при сбое преобразования указанного формата данныхpanicошибка без возвратаerrorпараметр.

util

  1. gconv
    • УлучшатьConvertметод увеличения[]int32, []int64, []uint, []uint32, []uint64, []float32, []float64Поддержка преобразования типов данных.
    • УлучшатьStringПоддержка метода преобразования строк для аргументов указателя.
    • УлучшатьMap*Структура кода и производительность метода преобразования карты.
    • новыйFloats, Float32s, Float64sправильно[]float32, []float64Метод преобразования типов.
    • новыйInts, Int32s, Int64sправильно[]int, []int32, []int64Метод преобразования типов.
    • новыйUints, Uint32s, Uint64sправильно[]uint, []uint32, []uint64Метод преобразования типов.
    • Улучшить модульные тесты.

frame

  1. gins
    • Все одноэлементные объекты генерируются при сбое выборкиpanicОшибка.

Bug Fix

  1. Добавлена ​​поддержка распространенных неправильных форматов маршрутизации, таких как/user//indexсовместимая поддержка.
  2. ремонтgtcp/gudpПроблема с единицей времени интервала при получении данных.
  3. ремонтgfile/gspath/gfsnotifyПакет строго не судит о существовании файла.
  4. ремонтgproc.Killметод вwindowsПроблема блокировки операций под системой.
  5. ремонтgstr.TrimLeftStr/gstr.TrimRightStrПроблема переполнения массива, когда длина заменяемой строки меньше длины заменяемой строки.