TODO
Книги
PyNEng
Добавить тему: как организовать код в проекте. На основе того, что уже записала, но без привязки к PyPi и большим проектам. Придумать пример реорганизации как было в лекции, два скрипта, выделяем общее, делаем import package.
Там же поговорить про функции, примеры рефакторинга с большой функции на более мелкие. И переделать одну с привязкой условно к команде и парсингу (+ threads) на три отдельные функции: отправить show, threads, и потом уже объединяем в специфику.
pyneng-quiz
- Переделать после выхода стабильной версии и документации textual
- Добавить выбор языка
- Добавить scroll для вывода вопросов
Перевести на uk- Перевести на en
pyneng-cli
remove course optionstranslate- add lang selection for task/test/chapter update (add lang_repo_dict in
__init__
)
pyneng-tasks
- 24.2b check single cmd and cmd list
PyNEng UK
Waiting for:
- tasks unification (en messages)
- tests unification (en messages)
solutionspyneng-cli
Book
- update code output to Python 3.11!
- Translation
- Tasks https://github.com/natenka/pyneng-tasks-uk
PyNEng Book
Проверить все выводы кода, перевести на Python 3.10.
- Обновить задания pyneng-14 -> pyneng-open
Сделать pyneng-cli по аналогии c pyneng-cli-course- Chapter 2: добавить вариант выполнения заданий на replit (4-17 разделы)
Notes:
- unify all tests/tasks with eng messages
pyneng tasks
- 6.6b сделать тест в котором будет не только первый раз неправильный адрес, второй раз правильный, но и сделать вариант когда 2-3 раза вводится неправильный адрес
other
- timecode vim
- timecode tmux
timecode pdb- translate questions (quiz)
- add advpyneng quiz
- advpyneng task in English
- причесать скрипты для курсов (создание репозитория/приглашения)
Бонусные лекции
Бонусные лекции PyNEng
Функции
*args
,**kwargs
*
,/
- изменяемые типы данных в значении по умолчанию
- что выносить в функцию, о каких вещах подумать чтобы было меньше зависимости между функциями
pyneng-tasks
12.1
Утилиты ping в Linux и Windows возвращают разные return codes: Linux: Success: code 0 No reply: code 1 Other errors: code 2
Windows Success: code 0 No reply or network unrechable: code 0 Other errors: code 1
Задание исправила, добавить в книгу returncode
AdvPyNEng
- переделать тесты type annotations на запуск mypy с флагами?
- 4.3 запись в yaml с идентификацией устройств. Явно написать что надо не только cli создать с click, но и написать код функций
- 8.2 невнятно написано про вызов функции что будет ошибка до выполнения - она будет и после, только другая
- улучшить описание ошибки в тесте 8.4/8.4a когда подключений меньше на 1
- 10.1 не хватает тестов для str/repr
- 18.2 написать что надо использовать async subprocess
- тест 12.5 не проверяет что классы возвращаются
- тест 12.3a не проверяет, что генерируется исключение KeyError для несуществующих ключей
- Добавиь в раздел по pytest xfail
в 12.3a не учитывается один вариант работы со словарем:
In [3]: t1.topology
Out[3]:
{('R1', 'Eth0/0'): ('SW1', 'Eth0/1'),
('R2', 'Eth0/0'): ('SW1', 'Eth0/2'),
('R2', 'Eth0/1'): ('SW2', 'Eth0/11'),
('R3', 'Eth0/0'): ('SW1', 'Eth0/3'),
('R3', 'Eth0/1'): ('R4', 'Eth0/0'),
('R3', 'Eth0/2'): ('R5', 'Eth0/0')}
In [5]: t1[('SW1', 'Eth0/3')] = ("SW2", "Eth0/0")
In [6]: t1.topology
Out[6]:
{('R1', 'Eth0/0'): ('SW1', 'Eth0/1'),
('R2', 'Eth0/0'): ('SW1', 'Eth0/2'),
('R2', 'Eth0/1'): ('SW2', 'Eth0/11'),
('R3', 'Eth0/0'): ('SW1', 'Eth0/3'),
('R3', 'Eth0/1'): ('R4', 'Eth0/0'),
('R3', 'Eth0/2'): ('R5', 'Eth0/0'),
('SW1', 'Eth0/3'): ('SW2', 'Eth0/0')}
pyneng-cli-course
TODO:
add print to stdout with -c: “Все задания раздела можно сдать командой pyneng -c”add update feature (check for available updates for task/tests). Update diff? Update all chapter(s)update commandpyneng update
:pyneng update 1
(task only),pyneng update
- all in chapter, –testsadd docs optionadd save-all option
Maybe:
- hint flag to receive hints for selected task (в hints можно делать отсылки на видео)
Future:
- add authentication for -a (answers) - user github user (requires custom site). FastAPI API для получения ответов