This commit is contained in:
2025-10-19 22:31:02 +03:00
parent 9ff00ee785
commit d146fc6b6b
2 changed files with 106 additions and 1 deletions
+54
View File
@@ -0,0 +1,54 @@
# Security Policy
The Argenta team takes security seriously. We appreciate your efforts to responsibly disclose your findings, and we will make every effort to acknowledge your contributions.
## Supported Versions
This table shows the versions of Argenta that are currently supported with security updates.
| Version | Supported |
|---------|-----------------|
| 1.1.x | ✅ |
| < 1.1 | ❌ |
## Reporting a Vulnerability
If you believe you have found a security vulnerability in Argenta, please report it to us through one of the following methods:
- **Email**: Send a detailed report to `kolo.is.main@gmailcom`.
- **GitHub Security Advisories**: You can create a new security advisory directly in the Argenta repository.
**Please do not report security vulnerabilities through public GitHub issues.**
### What to Include
To help us understand and resolve the issue quickly, please include the following information in your report:
- A clear and descriptive title.
- The affected version(s) of Argenta.
- A detailed description of the vulnerability.
- Step-by-step instructions to reproduce the issue (a Proof-of-Concept).
- The potential impact of the vulnerability.
- Any suggested mitigations or fixes, if you have any.
You can expect a response from us within 48 hours to acknowledge receipt of your report.
## Disclosure Process
1. Upon receiving a vulnerability report, we will assign it to a team member and begin our investigation.
2. We will confirm the vulnerability and determine its severity.
3. We will work on a patch to address the issue.
4. Once the patch is ready, we will coordinate with you to schedule a release and a public disclosure. We prefer to disclose vulnerabilities through a GitHub Security Advisory.
5. We will credit you for your discovery in the advisory, unless you prefer to remain anonymous.
## Security Best Practices
As a user of Argenta, we recommend the following best practices to keep your application secure:
- Always use the latest version of Argenta.
- Regularly scan your project's dependencies for known vulnerabilities.
- If your application handles sensitive data, ensure it is stored and transmitted securely.
## Bug Bounty Program
Currently, we do not have a formal bug bounty program. However, we deeply appreciate the work of security researchers and may offer non-monetary recognition for significant contributions.
+52 -1
View File
@@ -3,4 +3,55 @@
Стандартное форматирование Стандартное форматирование
========================== ==========================
ндааааааааааааааа По умолчанию в ``Argenta`` используется библиотека ``rich`` для вывода текстовых сообщений с расширенным форматированием в консоли. ``rich`` позволяет применять цвета, стили (жирный, курсив, подчеркнутый), составлять таблицы, выделять синтаксис кода и многое другое, что значительно улучшает визуальное восприятие текста.
Вывод системных сообщений производится с помощью метода ``print`` объекта ``Console`` из библиотеки ``rich``, который обладает интерфейсом, совместимым со встроенной функцией ``print``.
------
Управление стандартным форматированием
--------------------------------------
При создании экземпляра класса ``App`` предусмотрен параметр ``overridesystemmessages`` типа ``bool`` (по умолчанию ``False``), который позволяет включать или отключать стандартное форматирование системных сообщений.
Если установить этот флаг в ``True``, стандартное форматирование, применяемое по умолчанию (например, стилизация текста и ASCII-арт), будет отключено, и системные сообщения будут выводиться в "сыром" виде, без дополнительных стилей.
Приветственное и прощальное сообщения
--------------------------------------
Приветственное (``initialmessage``) и прощальное (``farewellmessage``) сообщения по умолчанию формируются как ASCII-графика с помощью библиотеки ``art``. В частности, используется функция ``text2art``, которая преобразует обычный текст в стилизованное ASCII-арт изображение.
.. warning::
Библиотека ``art`` ориентирована на работу с ASCII-символами и **не поддерживает корректный вывод кириллицы**. Это приводит к искажению или некорректному отображению символов русского и других кириллических алфавитов. Если ваше приветственное сообщение содержит кириллицу, рекомендуется отключить стандартное форматирование с помощью ``overridesystemmessages=True`` или использовать только латинские символы.
Кастомизация вывода
-------------------
Для полной замены логики вывода сообщений в конструкторе ``App`` доступен параметр ``printfunc``.
* **printfunc**: ``Printer`` (Callable)
Этот параметр позволяет передать любую вызываемую сущность (например, функцию), которая будет использоваться для вывода всех системных сообщений. По умолчанию это обертка вокруг ``rich.console.Console().print``. Вы можете передать сюда свою функцию, чтобы, например, логировать вывод в файл или отправлять его по сети.
Пример использования
--------------------
.. code-block:: python
from argenta import App
def custom_print_function(text: str) -> None:
"""Простая пользовательская функция вывода с префиксом."""
print(f"MOЙ ВЫВОД: {text}")
# Инициализация приложения с отключенным форматированием по умолчанию
# и собственной функцией вывода.
app = App(
initialmessage="Moe Prilojenie",
overridesystemmessages=True,
printfunc=custom_print_function,
)
# При запуске `initialmessage` будет выведено через `custom_print_function`
# без преобразования в ASCII-арт и без стилей `rich`.
# app.run()