Size: a a a

Сообщество Python Программистов

2021 February 16

VA

Vadim Apenko in Сообщество Python Программистов
Language:
py3


Source:
import ipaddress
network = ipaddress.ip_network('192.168.0.0/28')

print(network.num_addresses)


Result:
16
источник

VA

Vadim Apenko in Сообщество Python Программистов
лови
источник

VA

Vadim Apenko in Сообщество Python Программистов
там даже генератор со всеми адресами есть
источник

БГ

Бензофуран Гетероцик... in Сообщество Python Программистов
Vadim Apenko
Language:
py3


Source:
import ipaddress
network = ipaddress.ip_network('192.168.0.0/28')

print(network.num_addresses)


Result:
16
Чорт, опередил)
источник

VA

Vadim Apenko in Сообщество Python Программистов
Вот небольшой уютный ламповый автоматический репликатор базы данных SQLite, интересная идея (интересно только программистам): https://github.com/benbjohnson/litestream

Но больше, чем сама программа, меня заинтересовало объяснение автора о том, что он не хочет, чтобы ему присылали изменения исходников - что для починки багов, что для новых возможностей. "Открытые исходники, но не открыто для совместной работы" (Open-source, not open -contribition).

Почему вообще нужно такое заявление? Ну не хочешь принимать чужой код, и не принимай, никто не может тебя заставить. Мне кажется, что дело в том, что практически весь опенсорс перешел на github.com, а там царит культура pull request. Любой может открыть в твоем проекте pull request и попросить тебя принять код, и ты конечно ничего не обязан сделать, но ожидается, что ты постараешься отнестить благосклонно.

Когда-то в доисторическую эпоху, до Гитхаба, если я скачивал откуда-то в интернете опенсорсную библиотеку или программу, у меня не было автоматического ожидания, что я могу послать автору патч и он с ним станет что-то делать. Я искал какое-то README в архиве и смотрел, что там написано на эту тему - если ничего, то мог спросить у автора почтой, перед тем, как слать код. Теперь это все кажется лишним: вот же он, репозиторий на Гитхабе, посылай pull request и все.

Проблема решается легко: надо всего лишь сделать так, чтобы владелец репозитория на Гитхабе мог запретить в нем pull requests. Тогда и объяснять ничего не надо, видно, что закрыто тут. У Гитхаба пользователи выпрашивают эту возможность последние лет семь. Гитхаб аккуратно отвечает, что да-да, мы планируем сделать, и не делают. При этом ясно же, что для них это более или менее тривиально сделать. Им просто наплевать или это хитрая политика такая?

Наверное, это пример того, как мелочь в дизайне продукта (Гитхаба в данном случае) дает огромный эффект. Меня не удивит, если десятки тысяч владельцев проектов тратят сотни тысяч часов своего времени зря, рассматривая всякие запросы с кодом, который им нафиг не нужен, потому что им неловко оттого, что кто-то уже написал этот код и сделал запрос. Люди даже боты всякие пишут, которые автоматически закрывают все созданные запросы с извинениями от автора (больше одного такого бота видел). И все из-за того, что нет одного маааахонького чекбокса в настройках проекта. Поставить галочку "не хочу запросов" и все. Но нет.
источник

DD

Danylo Dymarchuk in Сообщество Python Программистов
Vadim Apenko
Language:
py3


Source:
import ipaddress
network = ipaddress.ip_network('192.168.0.0/28')

print(network.num_addresses)


Result:
16
ValueError: 91.124.230.205/30 has host bits set
источник

БГ

Бензофуран Гетероцик... in Сообщество Python Программистов
Danylo Dymarchuk
ValueError: 91.124.230.205/30 has host bits set
Да, это не адрес подсети, а адрес хоста с маской подсети
источник

DD

Danylo Dymarchuk in Сообщество Python Программистов
и что сделать?
источник

VA

Vadim Apenko in Сообщество Python Программистов
Danylo Dymarchuk
ValueError: 91.124.230.205/30 has host bits set
network = ipaddress.ip_network('91.124.230.207/30', False)
источник
2021 February 17

DD

Danylo Dymarchuk in Сообщество Python Программистов
Vadim Apenko
network = ipaddress.ip_network('91.124.230.207/30', False)
+++++
источник

K

KarmaBot in Сообщество Python Программистов
Вы увеличили карму Vadim Apenko до 4794.54 (+7.75)
источник

DD

Danylo Dymarchuk in Сообщество Python Программистов
Работает
источник

DD

Danylo Dymarchuk in Сообщество Python Программистов
Но в примере на сайте там 2 подключения,  а мне 4 вышло
источник

DD

Danylo Dymarchuk in Сообщество Python Программистов
Думмаю всё ок
источник

VA

Vadim Apenko in Сообщество Python Программистов
Danylo Dymarchuk
Работает
источник

DD

Danylo Dymarchuk in Сообщество Python Программистов
thx
источник

БГ

Бензофуран Гетероцик... in Сообщество Python Программистов
Danylo Dymarchuk
Но в примере на сайте там 2 подключения,  а мне 4 вышло
Потому что на сайте не учитывают широковещательный и нулевой адреса, скорее всего
источник

DD

Danylo Dymarchuk in Сообщество Python Программистов
А класс ip адреса как узнать?
источник

DD

Danylo Dymarchuk in Сообщество Python Программистов
get_ip_class_from_raw_address(raw_address)
источник

DD

Danylo Dymarchuk in Сообщество Python Программистов
Вот такая дичь))
источник