Pull to refresh
127
0,5
Rating
5
Subscribers
Send message

Кстати, забыл ещё спросить про категории в geoip и geosite. Как и откуда вообще узнать, какие существуют? Как решить практические вопросы: в какую категорию попадает этот домен / IP (ну или хотя бы более простой: попадает ли этот домен / IP в эту категорию)? Как добавить домен / IP в категорию? Как создать свою категорию?

По пункту 2: вот интересно было бы почитать, что это за «куча нюансов» и как «легко словить утечку». И почему через IPv4 нет этой «кучи» и «тяжело».

Согласен. Но в последнее время что-то его искусственно затягивают, дробя на мелкие части.

Ну так и скажите конкретно, чего не хватает. А не серчайте на отсутствие скриншотов. У меня нет роутера, который бы я мог настроить по этой статье, но как появится, я ей воспользуюсь.

Про переходную прошивку в статье сказано. И какую надо брать тоже. Вы бы сами ещё раз её внимательно перечитали, м? Но статья не про прошивку роутера, ей простительно. А то мы докатимся до того, что будем обсуждать, где: на Озоне, в DNS или на каком-нибудь Али этот роутер лучше купить.

Боже мой, какие нафиг скриншоты (ещё бы в ворд их предложили вставить)??? Текст и только текст, который легко скопировать, сохранить, переписать, а не голимый скриншот непонятно чего непонятного качества, который завтра на хостинге протухнет и ищи-свищи, чего там было «выставляем галочки как на скриншоте».

Возникло несколько вопросов после прочтения статьи:

  1. Правильно ли я понимаю, что списки серверов VPN и базы данных geoip и geosite скачиваются не через этот самый VPN, а потому провайдер спокойно видит, что вы их качаете, и, соответственно, может понять, что сейчас его будут дурить?

  2. Вроде как IPv6 более лучший протокол (все предпочитают использовать его из статьи), но вы сознательно его выключаете. В чём с ним сложность, почему нельзя всё то же самое настроить и для IPv6?

  3. Будут ли работать торренты в этой схеме? Там же peer-to-peer соединения, всё будет заворачиваться на VPN всё равно?

Если вы знаете, что код писал квалифицированный разработчик и метод cfg_strlist_insert не рефакторили после этого. В любой произвольный момент времени глядя на этот код можно предполагать все, что угодно.

Самое главное забыли. Что делает унарный плюс?

safe_filter всегда возвращает Input

А почему? Почему filter может вернуть входящий тип, а safe_filter не может? Это результат наколеночного исправления путем приписывания as_input | или какое-то фундаментальное ограничение?

Боже, опять этот фонтан…

никаких сторонних эффектов типа падения при разыменовении некорректного указателя быть не должно.

Так в С++ разыменовывания некорректного указателя никогда не бывает (а там, где бывает – это как бы и не C++), поэтому компилятор спокойно тут пользуется CMOV-ом и вы недоуменно ловите исключение.

Так что же тут наоборот-то? Forward является Input который является InputOutput, если я правильно понимаю, что написано в

Следовательно, все, что принимает Input, может принять Forward. Если раньше мы принимали только Forward, то теперь принимаем как Forward, так и Input. Почему это должно ломать клиентов, которые передавали Forward?

(повторюсь, я предполагаю, что filter возвращает тот же тип, что и принимает. К сожалению, понять, что возвращает эта функция, невозможно, поскольку вроде это и не функция вовсе, а класс, как показано в https://en.cppreference.com/w/cpp/ranges/filter_view.html)

Разве InputRange не является более общим, чем ForwardRange? Т.е. safe_filter принимает более широкий тип аргументов, чем filter, как это сломает существующие использования (разве что кто-то использовал SFINAE, ну так теперь оно же концептами заменено?)? И разве возвращаемый тип не является таким же, как принимаемый? Если кто-то передавал ForwardRange, то и получать назад будет ForwardRange.

Главное, чтобы потом не пришлось писать safer_filter и safest_filter.

Компиляторы и так уже имеют флаги, в каком стандарте компилировать код. Почему нельзя смотреть на них и выбирать поведение, соответствующее версии стандарта (да, так ненавидимые(?) комитетом редакции)? Комон, всякие линтеры/миграторы при переходе со стандарта на стандарт это уже реальность, данная нам в ощущениях, зачем пытаться делать вид, что ее нет?

Ну вы хоть объясните, что такое эти ваши контравариантность, ковариантности и инвариантность. Интереснейшая статья, но с самого начала превращается в бессмысленный непонятный бубнеж.

Отсюда следствие: если у вас структура с mut T и вы хотите ковариантности (потому что семантически ведёте себя как «только читаем»), нужно либо использовать const T, либо добавить PhantomData<T> и взять на себя ответственность за это обещание.

И тут же ниже в примере говорите, что это не работает. Ну перестаньте же морочить людям голову.

Зачем это Vec<T>? Без #[may_dangle] вот этот код не компилировался бы:

let v: Vec<&str>;
{
    let s = String::from("hello");
    v = vec![s.as_str()]; // ссылка на s внутри Vec
} // s дропается здесь
// v дропается здесь — без may_dangle компилятор требовал бы,
// чтобы &str пережил Vec строго

интересно, зачем это нужно, ведь ничего вызвать на таком векторе нельзя после блока, даже длину спросить (playground)

// Почему Cell<&'arena ()>, а не просто &'arena ()?

А почему не просто &'arena mut ()? Зачем дополнительная ссылка на неиспользуемый тип?

А SR-71 появлялся откуда не ждали, этой способности спутник не заменит никогда.

Зато сейчас со сверхсозвездиями в принципе не останется ни одного места (ну кроме наверное полюсов), которое не будет просматриваться десятком спутников сразу.

Под некоторыми экземплярами стоят поддоны для сбора топлива. JP-7 продолжает просачиваться сквозь те самые зазоры, которые были заложены 60 лет назад.

В смысле, их еще и заправляют!? Но зачем, Холмс?

Тем более, если там дыры в несколько сантиметров были, там же все бы вылилось за минуты, если б не было никакого заслона

Легко. Если конфликт в Changelog.md, то как это мешает ревьюировать код (поскольку хорошая практика – обновлять changelog в PR, который работу делает, чтобы потом концы легко искать было)?

Тем, что кому не нравятся, перепишут ваш unsafe на safe и для этого им не понадобится держать в голове весь проект. Веник лучше ломается по тростиночке.

1
23 ...

Information

Rating
2,717-th
Location
Магнитогорск, Челябинская обл., Россия
Registered
Activity