Русский
Русский
English
Статистика
Реклама

Golang-дайджест 2(1 28 февраля 2021)

Свежая подборка новостей и материалов

Интересное в этом выпуске

  • Веб-браузер

  • Мониторинг почтовых служб

  • Сканер уязвимостей

  • Зашифрованная файловая система

Приятного чтения!

Материалы для обучения

Новости, события

  • Модули включены по умолчанию в Go 1.16 теперь go-команда по умолчанию создает пакеты в режиме с поддержкой модулей

  • Профилирование блоков в Go контролирует долю событий блокировки горутин

  • Generic предложение добавить дженерики принято

  • Embed новый пакет embed обеспечивает доступ к файлам, встроенным в программу во время компиляции, с помощью новой директивы //go:embed

  • Unicode пакет unicode и связанная с ним поддержка во всей системе были обновлены с Unicode 12.0.0 до Unicode 13.0.0, что добавляет 5930 новых символов, включая 4 новых скрипта и 55 новых эмодзи

Предложения по улучшению языка

  • https://github.com/golang/go/issues/44221 - encoding/csv: Добавить возможность получения номера строки записи

    Предложение предлагает новый метод:

    func (r *Reader) Line() int
    
  • https://github.com/golang/go/issues/44253 Предложение добавить в дженерики тип и размер массива

    type Array8[T any] interface {type [8]T}type ArraysOfSomeSizes[T any] interface {type [2]T, [4]T, [8]T, [16]T}
    

    предложение предлагает следующий синтаксис для выражения этой идеи:

    type Array[T any] interface {type []T}
    
  • https://github.com/golang/go/issues/36460 - cmd/go: Отложенная загрузка модуля

  • https://github.com/golang/go/issues/44551 Предложение добавить поддержку тестирования фаззинга

    func FuzzMarshalFoo(f *testing.F) {    // Seed the initial corpus f.Add("cat", big.NewInt(1341)) f.Add("!mouse", big.NewInt(0)) // Run the fuzz test   f.Fuzz(func(t *testing.T, a string, num *big.Int) {     t.Parallel() // seed corpus tests can run in parallel   if num.Sign() <= 0 {     t.Skip() // only test positive numbers  }  val, err := MarshalFoo(a, num)  if err != nil {      t.Skip()    }  if val == nil {      t.Fatal("MarshalFoo: val == nil, err == nil")   }  a2, num2, err := UnmarshalFoo(val)  if err != nil {      t.Fatalf("failed to unmarshal valid Foo: %v", err)  }  if a2 == nil || num2 == nil {    t.Error("UnmarshalFoo: a==nil, num==nil, err==nil")     }  if a2 != a || !num2.Equal(num) {     t.Error("UnmarshalFoo does not match the provided input")   }  })}
    
  • https://github.com/golang/go/issues/44412 Предложение добавить Time.UnixMilli и Time.UnixMicro

    // UnixMilli returns the local Time corresponding to the given Unix time,// msec milliseconds since January 1, 1970 UTC.func UnixMilli(msec int64) Time {if msec%1e3 < 0 {return unixTime(msec/1e3-1, int32((msec%1e3)1e6)+1e9)}return unixTime(msec/1e3, int32((msec%1e3)1e6))}// UnixMicro returns the local Time corresponding to the given Unix time,// usec milliseconds since January 1, 1970 UTC.func UnixMicro(usec int64) Time {if usec%1e6 < 0 {return unixTime(usec/1e6-1, int32((usec%1e6)1e3)+1e9)}return unixTime(usec/1e6, int32((usec%1e6)1e3))}
    

Статьи

Инструменты

  • Пример реализации чистой архитектуры в проектах Go (Golang)

  • Инструмент непрерывной доставки GitOps для Kubernetes Argo CD

  • Сканирование для различных протоколов TCP, DNS, HTTP, File на основе шаблонов Nuclei сканер уязвимостей

  • Плагин для Terraform, который позволяет управлять полным жизненным циклом ресурсов AWS. Этот провайдер поддерживается внутри группы HashiCorp AWS Provider Terraform

  • Высокопроизводительная библиотека по работе с json Замена "encoding / json"

  • Инструмент обнаружения поддоменов. Обнаруживает поддомены для веб-сайтов с помощью пассивных онлайн-источников. Он имеет простую модульную архитектуру и оптимизирован по скорости Subfinder

  • Кросс-платформенное прокси сервер/клиент с шифрованием Brook

  • Настраиваемый механизм подсказок для любой оболочки, который может изменять строку подсказки с помощью функции или переменной Oh-my-posh

  • Горизонтально масштабируемая и распределенная база данных GraphQL с бэкендом графа Dgraph

  • Инструмент для изучения шахматных дебютов Chess-explorer-go

  • Небольшой и простой компилятор Go Babygo

  • Cli инструмент для выполнения sql запросов: поддержка sql, csv, ltsv, json, tbln Trdsql

  • Инструмент для работы с типом файлов MP4 Go-mp4

  • Платформа для создания приложений блокчейна на Golang Cosmos-SDK

  • Мониторинг почтовых служб, получение писем, проверка аккаунтов Сheck-mail

  • Высокопроизводительный, неблокирующий tcp фреймворк Nbio

  • Быстрый и гибкий DNS-сервер CoreDns

  • Веб-браузер умеет управлять cookie, историей, созданием вкладок, подменой юзер-агента Surf

  • Зашифрованная файловая система GoCryptfs

  • Консольное приложение для отслеживания и мониторинга статистики криптовалют в режиме реального времени Cointop

  • Интерфейс командной строки git Bit

  • Сервис собирает забавные сообщения о коммитах из Github Commits.lol

  • Структура файловой системы, обеспечивающая простой, унифицированный и универсальный API Afero

  • Реализация FrodoKEM, практическая инкапсуляция ключей с квантовой безопасностью FrodoKEM

  • Симулятор движения мыши Busy

Видео

Подкасты

Сообщества

Источник: habr.com
К списку статей
Опубликовано: 01.03.2021 08:19:52
0

Сейчас читают

Комментариев (0)
Имя
Электронная почта

Блог компании всеинструменты.ру

Go

Golang

Digest

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru