Shikithon

Latest version: v2.6.2

Safety actively analyzes 681866 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 8

2.5.2

Changelog

- **Исправлены модели для ресурса `Users`**
Ранее такие поля, как `website` и `birth_on`, отсутствовали в модели `UserBrief`, которая использовалась в эндпоинтах `/api/users/:id/info` и `/api/users/whoami` и были только в модели `User`, сейчас они были добавлены также и в модель `UserBrief`.
Однако, поля `birth_on`и `locale` оказались неиспользованными в модели `User`, так как эндпоинт `/api/users/:id` попросту не возвращал их, поэтому они были убраны из модели `User`
- Обновлены зависимости

**Full Changelog**: https://github.com/SecondThundeR/shikithon/compare/v2.5.1...v2.5.2

2.5.1

Changelog

- **Добавлено скрытие чувствительных полей, которые выводились с помощью `Utils.log_response_info()`**
Ранее, запросы к OAuth эндпоинтам не выводились вовсе, однако после добавления метода по детальному логгированию ответа, проверка на подобные запросы не была добавлена, из-за чего в логах могли всплывать токены _(при добавлении новых токенов или обновлению старых)_
Теперь, логи к OAuth выглядят так:
diff
...
2023-05-20T18:12:43.822609+0300 | INFO | base_client.py.request: POST https://shikimori.me/oauth/token
2023-05-20T18:12:44.006518+0300 | DEBUG | utils.py.log_response_info: Response status: 200
2023-05-20T18:12:44.007017+0300 | DEBUG | utils.py.log_response_info: Response headers: ...
-2023-05-20T18:12:44.007281+0300 | DEBUG | utils.py.log_response_info: Response data: {'access_token': 'some-access-token', 'token_type': 'Bearer', 'expires_in': 86400, 'refresh_token': 'some-refresh-token', 'scope': 'user_rates messages comments topics content clubs friends ignores', 'created_at': 1684595564}
+2023-05-20T18:12:44.007281+0300 | DEBUG | utils.py.log_response_info: Response data: {'access_token': '[REDACTED]', 'token_type': 'Bearer', 'expires_in': 86400, 'refresh_token': '[REDACTED]', 'scope': 'user_rates messages comments topics content clubs friends ignores', 'created_at': 1684595564}
...

- Исправлен пример кода в README.md и добавлена команда по добавлению библиотеки через Poetry
- Обновлены зависимости

**Full Changelog**: https://github.com/SecondThundeR/shikithon/compare/v2.5...v2.5.1

2.5

Breaking changes

- **Параметр `my_list` переименован в `mylist` для методов `animes.get_all(...)`, `mangas.get_all(...)` и `ranobes.get_all(...)`**
- **Методы `mangas.similar(...)` и `ranobes.similar(...)` теперь могут вернуть список, состоящий из моделей `MangaInfo` и `RanobeInfo`**
- Некоторые модели были разделены на несколько моделей, каждые из которых отвечали за ответ для своих эндпоинтов (Например: `/api/animes/` и `/api/animes/:id` дают разное количество полей). Это позволяет избавиться от большого количества `Optional` полей и уточнить, какие поля конкретно являются опциональными. Затронутые модели:
- `Anime` -> `AnimeInfo`, `Anime`, `CharacterAnime`
- `Character` -> `CharacterInfo`, `Character`
- `Club` -> `ClubInfo`, `Club`
- `Comment` -> `CommentInfo`, `Comment`
- `Manga` -> `MangaInfo`, `Manga`, `CharacterManga`
- `Message` -> `MessageInfo`, `Message`
- `Person` -> `PersonInfo`, `Person`
- `Ranobe` -> `RanobeInfo`, `Ranobe`, `CharacterRanobe`
- `User` -> `UserInfo`, `UserBrief`, `User`
- Модель `Birthday` переименована в `Date`
- Теперь используется для полей `birth_on`, `deceased_on` и `birthday` в модели `Person`
- Модель `SmileyConstants` переименована в `SmileyConstant`

Changelog

- **Добавлена поддержка `/api/reviews`**
- `reviews.create_anime(...)` - создает рецензию для аниме
- ~~`reviews.create_manga(...)` - создает рецензию для манги~~
> В данный момент API не имеет подобного функционала
- `reviews.update(...)` - обновляет созданную рецензию
- `reviews.delete(...)` - удаляет созданную рецензию
- **Добавлена поддержка `/api/clubs/:id/collections`**
> Добавленный метод: `clubs.collections(...)`
- **Добавлена поддержка `/api/clubs/:id/clubs`**
> Добавленный метод: `clubs.clubs(...)`
- **Добавлена модель для поддержки рецензий в топиках**
> Можно получить при запросе к `/api/topics` с типом `Topics::EntryTopics::CritiqueTopic`
- Добавлена модель `TopicUpdate` для `/api/topics/update`
- Обновлен тип полей `aired_on`и `released_on` с `Optional[str]` на `Optional[date]`
- Обновлены и уточнены типы полей моделей
> Некоторые изменены с опциональных на неопциональные и наоборот
- Обновлены зависимости проекта

> Подробный ченджлог доступен в 17

**Full Changelog**: https://github.com/SecondThundeR/shikithon/compare/v2.4.2...v2.5

2.4.2

Changelog

- **Обновлен домен Shikimori для запросов**
> https://shikimori.me/forum/news/505429-novyy-domen-sayta-shikimori-me
- Обновлены зависимости

**Full Changelog**: https://github.com/SecondThundeR/shikithon/compare/v2.4.1...v2.4.2

2.4.1

Changelog

- **Логирование теперь отключено по умолчанию**
> Если вы использовали логирование до этого обновления, то теперь необходимо указать это в инициализации API, [как указано здесь](https://github.com/SecondThundeR/shikithon#%D0%BF%D0%B0%D1%80%D0%B0-%D1%83%D1%82%D0%BE%D1%87%D0%BD%D0%B5%D0%BD%D0%B8%D0%B9-%D0%BF%D0%BE-%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8E)
- Обновлены зависимости
- Небольшие исправления класса `BaseClient`

**Full Changelog**: https://github.com/SecondThundeR/shikithon/compare/v2.4...v2.4.1

2.4

Breaking Changes

- Переименован ресурс `Calendar` в `Calendars`
> `api.calendar.get_all(...) -> api.calendars.get_all(...)`
- Некоторые методы теперь запрашивают енамы, вместо обычных переменных, которые валидировались перед отправкой запроса
> Пример импортирования: `from shikithon.enums import CommentableType, MessageType, ...`
- Параметр `is_nickname` для некоторых запросов теперь вычисляется динамически и удален из параметров метода
- Переименованы названия некоторых API методов к названиям из документации
- `api.abuse_requests.comment_offtopic -> api.abuse_requests.offtopic`
- `api.abuse_requests.comment_review -> api.abuse_requests.review`
- `api.abuse_requests.violation_request -> api.abuse_requests.abuse`
- `api.abuse_requests.spoiler_abuse_request -> api.abuse_requests.spoiler`
- `api.(achievements|bans|calendars|forums|genres|publishers|studios).get -> api.(achievements|bans|calendars|forums|genres|publishers|studios).get_all`
- `api.(animes|mangas|ranobes).creators -> api.(animes|mangas|ranobes).roles`
- `api.(animes|mangas|ranobes).related_content -> api.(animes|mangas|ranobes).related`
- `api.(animes|mangas|ranobes).franchise_tree -> api.(animes|mangas|ranobes).franchise`
- Обновлены параметры некоторых методов
- `api.appears.mark([..., ..., ...]) -> api.appears.mark(..., ..., ...)`

Changelog

- **Добавлена поддержка полей `logo` и `is_private` в методе `Clubs.update`**
> Теперь можно изменять картинку клуба напрямую через метод обновления
- **Обновлена и исправлена типизация в проекте**
> Теперь методы имеют корректные типы параметров и возвращаемые типы
- Обновлено логирование
- Добавлен цветной вывод в консоль
- Добавлено больше точек логирования
- Изменен формат времени в консоли
- Изменен вывод с `sys.stderr` на `sys.stdout`
- Исправлен текст у некоторых точек логирования
- Обновлены зависимости проекта
- **Обновлены и исправлены модели**
> В частности, исправлены некоторые поля, которые могли принимать сразу модели `Manga` и `Ranobe`
- Удалены валидаторы параметров методов API
> При неверных параметрах, теперь выбрасывается ошибка `ShikimoriAPIResponseError` в которой описана полностью ошибка запроса
- *Различные исправления и улучшения*

> Подробный ченджлог доступен в 16

**Full Changelog**: https://github.com/SecondThundeR/shikithon/compare/v2.3.1...v2.4

Page 2 of 8

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.