v8unpack


Namev8unpack JSON
Version 0.18.5 PyPI version JSON
download
home_pagehttps://github.com/saby-integration/v8unpack
SummaryUnpacking binaries 1C to JSON for GIT
upload_time2024-02-29 11:39:55
maintainer
docs_urlNone
authorRazgovorov Mikhail
requires_python>=3.7
licenseMIT
keywords 1c cf cfe epf v8unpack saby sbis сбис
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # saby v8unpack

[![img lib ver](https://img.shields.io/pypi/v/v8unpack.svg "")](https://pypi.python.org/pypi/v8unpack)
[![img python ver](https://img.shields.io/pypi/pyversions/v8unpack.svg "")](https://pypi.python.org/pypi/v8unpack)
[![img license](https://img.shields.io/pypi/l/v8unpack.svg "")](https://pypi.python.org/pypi/v8unpack)
[![img coverage](https://img.shields.io/coveralls/saby/v8unpack.svg "")](https://coveralls.io/github/saby/v8unpack)

**v8unpack** - консольная утилита для сборки и распаковки бинарных файлов 
1С:Предприятие 8.х (cf, cfe, epf) без использования технологической платформы.

В какой-то момент жить без системы контроля версий на уровне исходников стало совсем не выносимо и обозрев все 
варианты выбор пал на v8unpack. Однако, без устранения основных недостатков его использование было бы крайне 
не удобным (плоский список из нечеловекочитаемых файлов, скрытый где-то в дебрях программный код управляемых форм). 
Сразу скажу, что мы с глубоким уважением относимся к труду авторов v8unpack, данная утилита отлично выполняет все 
свои функции и без неё создание этого решения было бы не возможным. Кроме этого её Python реализация от [Infactum](https://github.com/Infactum/onec_dtools) 
была взята за основу без каких либо изменений.

## Ключевые отличия от аналогичных утилит:
* Структура хранения максимально приближена к структуре метаданных, человеко-читаемые имена файлов
* Программный код всегда хранится в отдельных файлах и может быть разделен на несколько файлов
* Общие для разных решений объекты метаданных могут автоматически браться из субмодулей
* Двоичные данные макетов и картинки хранятся в исходном виде
* При сборке под 8.2 и 8.1. автоматически комментируются директивы 8.3
* Файлы хранятся в формате json
* Видны изменения элементов форм

## Основным назначением утилиты являются:
1.	Автоматическая сборка приложений 1С (расширения конфигураций, внешние обработки) 
для различных платформ и конфигураций из одних и тех же исходников
2.	Удобное и человекочитаемое хранение исходников в системах контроля версий.

## Алгоритм работы
Утилита распаковывает и запаковывет бинарник 1С в 4 этапа:

1.	Распаковка стандартным v8unpack – на выходе текстовые файлы
2.	Конвертация в json
3.	Декодирование заголовков и разбивка по типам метаданных
4.	Организация кода и структуры хранения
  * вынос областей кода и панелей форм в отдельные файлы
  * сборка кода и форм из нескольких файлов
  * разделение объектов метаданных, панелей форм, файлов или областей кода под сабмодулям
  * версионирование кода расширения по версиям без применения областей

![Алгоритм работы](https://github.com/saby-integration/v8unpack/blob/main/docs/stage.png?raw=true)


## Установка

    pip install v8unpack

или [скачайте exe файл](https://github.com/saby-integration/v8unpack/raw/main/exe/v8unpack.exe)

Если работаете с тяжелыми конфигурациями используйте 64-bit питон последних версий.

## Распаковка файла 1С

из командной строки:

    v8unpack.exe -E d:/sample.cf d:/unpack

из python:
```python
import v8unpack

if __name__ == '__main__':
    v8unpack.extract('d:/sample.cf', 'd:/unpack')
```

## Сборка исходников

из командной строки:

    v8unpack.exe -B d:/unpack d:/repacked.cf

из python:

```python
import v8unpack

if __name__ == '__main__':
    v8unpack.build('d:/unpack', 'd:/repacked.cf')
```

## Документация

[Переход на сборку из одних исходников](https://github.com/saby-integration/v8unpack/blob/main/docs/transition.md)

[Использование](https://github.com/saby-integration/v8unpack/blob/main/docs/usage.md)

[История изменений](https://github.com/saby-integration/v8unpack/blob/main/docs/history.md)

[Участие](https://github.com/saby-integration/v8unpack/blob/main/docs/develop.md)

## Отладка

## Ограничения

Разметка форм и свойства объектов по прежнему является не читаемыми, но в этом виде проще проводить их 
анализ и при желании дополнить парсер.

На текущий момент [утилита покрывает все типы метаданных в нужном нам объеме](https://github.com/saby-integration/v8unpack/blob/main/src/v8unpack/metadata_types.py), 
если Вам нужно более детальная распаковка каких то объектов напишите здесь обращение
или сделайте самостоятельно, мы будем рады [любому участию в проекте](https://github.com/saby-integration/v8unpack/blob/main/docs/develop.md).

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/saby-integration/v8unpack",
    "name": "v8unpack",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "",
    "keywords": "1C CF CFE EPF V8UNPACK SABY SBIS \u0421\u0411\u0418\u0421 1\u0421",
    "author": "Razgovorov Mikhail",
    "author_email": "1338833@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/5e/54/95c530cdbbcee60ca6bab7503fb738774f600d790a749a14856833b3ca6f/v8unpack-0.18.5.tar.gz",
    "platform": null,
    "description": "# saby v8unpack\r\n\r\n[![img lib ver](https://img.shields.io/pypi/v/v8unpack.svg \"\")](https://pypi.python.org/pypi/v8unpack)\r\n[![img python ver](https://img.shields.io/pypi/pyversions/v8unpack.svg \"\")](https://pypi.python.org/pypi/v8unpack)\r\n[![img license](https://img.shields.io/pypi/l/v8unpack.svg \"\")](https://pypi.python.org/pypi/v8unpack)\r\n[![img coverage](https://img.shields.io/coveralls/saby/v8unpack.svg \"\")](https://coveralls.io/github/saby/v8unpack)\r\n\r\n**v8unpack** - \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u0430\u044f \u0443\u0442\u0438\u043b\u0438\u0442\u0430 \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u0438 \u0440\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u043a\u0438 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \r\n1\u0421:\u041f\u0440\u0435\u0434\u043f\u0440\u0438\u044f\u0442\u0438\u0435 8.\u0445 (cf, cfe, epf) \u0431\u0435\u0437 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b.\r\n\r\n\u0412 \u043a\u0430\u043a\u043e\u0439-\u0442\u043e \u043c\u043e\u043c\u0435\u043d\u0442 \u0436\u0438\u0442\u044c \u0431\u0435\u0437 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u0432\u0435\u0440\u0441\u0438\u0439 \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432 \u0441\u0442\u0430\u043b\u043e \u0441\u043e\u0432\u0441\u0435\u043c \u043d\u0435 \u0432\u044b\u043d\u043e\u0441\u0438\u043c\u043e \u0438 \u043e\u0431\u043e\u0437\u0440\u0435\u0432 \u0432\u0441\u0435 \r\n\u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0432\u044b\u0431\u043e\u0440 \u043f\u0430\u043b \u043d\u0430 v8unpack. \u041e\u0434\u043d\u0430\u043a\u043e, \u0431\u0435\u0437 \u0443\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u043e\u0432 \u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0431\u044b\u043b\u043e \u0431\u044b \u043a\u0440\u0430\u0439\u043d\u0435 \r\n\u043d\u0435 \u0443\u0434\u043e\u0431\u043d\u044b\u043c (\u043f\u043b\u043e\u0441\u043a\u0438\u0439 \u0441\u043f\u0438\u0441\u043e\u043a \u0438\u0437 \u043d\u0435\u0447\u0435\u043b\u043e\u0432\u0435\u043a\u043e\u0447\u0438\u0442\u0430\u0435\u043c\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432, \u0441\u043a\u0440\u044b\u0442\u044b\u0439 \u0433\u0434\u0435-\u0442\u043e \u0432 \u0434\u0435\u0431\u0440\u044f\u0445 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0439 \u043a\u043e\u0434 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0445 \u0444\u043e\u0440\u043c). \r\n\u0421\u0440\u0430\u0437\u0443 \u0441\u043a\u0430\u0436\u0443, \u0447\u0442\u043e \u043c\u044b \u0441 \u0433\u043b\u0443\u0431\u043e\u043a\u0438\u043c \u0443\u0432\u0430\u0436\u0435\u043d\u0438\u0435\u043c \u043e\u0442\u043d\u043e\u0441\u0438\u043c\u0441\u044f \u043a \u0442\u0440\u0443\u0434\u0443 \u0430\u0432\u0442\u043e\u0440\u043e\u0432 v8unpack, \u0434\u0430\u043d\u043d\u0430\u044f \u0443\u0442\u0438\u043b\u0438\u0442\u0430 \u043e\u0442\u043b\u0438\u0447\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 \u0432\u0441\u0435 \r\n\u0441\u0432\u043e\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0438 \u0431\u0435\u0437 \u043d\u0435\u0451 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u044d\u0442\u043e\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0431\u044b\u043b\u043e \u0431\u044b \u043d\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u043c. \u041a\u0440\u043e\u043c\u0435 \u044d\u0442\u043e\u0433\u043e \u0435\u0451 Python \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043e\u0442 [Infactum](https://github.com/Infactum/onec_dtools) \r\n\u0431\u044b\u043b\u0430 \u0432\u0437\u044f\u0442\u0430 \u0437\u0430 \u043e\u0441\u043d\u043e\u0432\u0443 \u0431\u0435\u0437 \u043a\u0430\u043a\u0438\u0445 \u043b\u0438\u0431\u043e \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439.\r\n\r\n## \u041a\u043b\u044e\u0447\u0435\u0432\u044b\u0435 \u043e\u0442\u043b\u0438\u0447\u0438\u044f \u043e\u0442 \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u0445 \u0443\u0442\u0438\u043b\u0438\u0442:\r\n* \u0421\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u043f\u0440\u0438\u0431\u043b\u0438\u0436\u0435\u043d\u0430 \u043a \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0435 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0445, \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u043e-\u0447\u0438\u0442\u0430\u0435\u043c\u044b\u0435 \u0438\u043c\u0435\u043d\u0430 \u0444\u0430\u0439\u043b\u043e\u0432\r\n* \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0439 \u043a\u043e\u0434 \u0432\u0441\u0435\u0433\u0434\u0430 \u0445\u0440\u0430\u043d\u0438\u0442\u0441\u044f \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u0430\u0445 \u0438 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d \u043d\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0444\u0430\u0439\u043b\u043e\u0432\r\n* \u041e\u0431\u0449\u0438\u0435 \u0434\u043b\u044f \u0440\u0430\u0437\u043d\u044b\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u043e\u0431\u044a\u0435\u043a\u0442\u044b \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u043e\u0433\u0443\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0438\u0437 \u0441\u0443\u0431\u043c\u043e\u0434\u0443\u043b\u0435\u0439\r\n* \u0414\u0432\u043e\u0438\u0447\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043c\u0430\u043a\u0435\u0442\u043e\u0432 \u0438 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u0432 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u043c \u0432\u0438\u0434\u0435\r\n* \u041f\u0440\u0438 \u0441\u0431\u043e\u0440\u043a\u0435 \u043f\u043e\u0434 8.2 \u0438 8.1. \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0438\u0440\u0443\u044e\u0442\u0441\u044f \u0434\u0438\u0440\u0435\u043a\u0442\u0438\u0432\u044b 8.3\r\n* \u0424\u0430\u0439\u043b\u044b \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 json\r\n* \u0412\u0438\u0434\u043d\u044b \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0444\u043e\u0440\u043c\r\n\r\n## \u041e\u0441\u043d\u043e\u0432\u043d\u044b\u043c \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c \u0443\u0442\u0438\u043b\u0438\u0442\u044b \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f:\r\n1.\t\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0441\u0431\u043e\u0440\u043a\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 1\u0421 (\u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0439, \u0432\u043d\u0435\u0448\u043d\u0438\u0435 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438) \r\n\u0434\u043b\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c \u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0439 \u0438\u0437 \u043e\u0434\u043d\u0438\u0445 \u0438 \u0442\u0435\u0445 \u0436\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432\r\n2.\t\u0423\u0434\u043e\u0431\u043d\u043e\u0435 \u0438 \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u043e\u0447\u0438\u0442\u0430\u0435\u043c\u043e\u0435 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u0432\u0435\u0440\u0441\u0438\u0439.\r\n\r\n## \u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0440\u0430\u0431\u043e\u0442\u044b\r\n\u0423\u0442\u0438\u043b\u0438\u0442\u0430 \u0440\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u044b\u0432\u0430\u0435\u0442 \u0438 \u0437\u0430\u043f\u0430\u043a\u043e\u0432\u044b\u0432\u0435\u0442 \u0431\u0438\u043d\u0430\u0440\u043d\u0438\u043a 1\u0421 \u0432 4 \u044d\u0442\u0430\u043f\u0430:\r\n\r\n1.\t\u0420\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u043a\u0430 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u043c v8unpack \u2013 \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0435 \u0444\u0430\u0439\u043b\u044b\r\n2.\t\u041a\u043e\u043d\u0432\u0435\u0440\u0442\u0430\u0446\u0438\u044f \u0432 json\r\n3.\t\u0414\u0435\u043a\u043e\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u043e\u0432 \u0438 \u0440\u0430\u0437\u0431\u0438\u0432\u043a\u0430 \u043f\u043e \u0442\u0438\u043f\u0430\u043c \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0445\r\n4.\t\u041e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f \u043a\u043e\u0434\u0430 \u0438 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f\r\n  * \u0432\u044b\u043d\u043e\u0441 \u043e\u0431\u043b\u0430\u0441\u0442\u0435\u0439 \u043a\u043e\u0434\u0430 \u0438 \u043f\u0430\u043d\u0435\u043b\u0435\u0439 \u0444\u043e\u0440\u043c \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b\r\n  * \u0441\u0431\u043e\u0440\u043a\u0430 \u043a\u043e\u0434\u0430 \u0438 \u0444\u043e\u0440\u043c \u0438\u0437 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u0444\u0430\u0439\u043b\u043e\u0432\r\n  * \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0445, \u043f\u0430\u043d\u0435\u043b\u0435\u0439 \u0444\u043e\u0440\u043c, \u0444\u0430\u0439\u043b\u043e\u0432 \u0438\u043b\u0438 \u043e\u0431\u043b\u0430\u0441\u0442\u0435\u0439 \u043a\u043e\u0434\u0430 \u043f\u043e\u0434 \u0441\u0430\u0431\u043c\u043e\u0434\u0443\u043b\u044f\u043c\r\n  * \u0432\u0435\u0440\u0441\u0438\u043e\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043a\u043e\u0434\u0430 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u043f\u043e \u0432\u0435\u0440\u0441\u0438\u044f\u043c \u0431\u0435\u0437 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043e\u0431\u043b\u0430\u0441\u0442\u0435\u0439\r\n\r\n![\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0440\u0430\u0431\u043e\u0442\u044b](https://github.com/saby-integration/v8unpack/blob/main/docs/stage.png?raw=true)\r\n\r\n\r\n## \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430\r\n\r\n    pip install v8unpack\r\n\r\n\u0438\u043b\u0438 [\u0441\u043a\u0430\u0447\u0430\u0439\u0442\u0435 exe \u0444\u0430\u0439\u043b](https://github.com/saby-integration/v8unpack/raw/main/exe/v8unpack.exe)\r\n\r\n\u0415\u0441\u043b\u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442\u0435 \u0441 \u0442\u044f\u0436\u0435\u043b\u044b\u043c\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f\u043c\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 64-bit \u043f\u0438\u0442\u043e\u043d \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0445 \u0432\u0435\u0440\u0441\u0438\u0439.\r\n\r\n## \u0420\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u043a\u0430 \u0444\u0430\u0439\u043b\u0430 1\u0421\r\n\r\n\u0438\u0437 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438:\r\n\r\n    v8unpack.exe -E d:/sample.cf d:/unpack\r\n\r\n\u0438\u0437 python:\r\n```python\r\nimport v8unpack\r\n\r\nif __name__ == '__main__':\r\n    v8unpack.extract('d:/sample.cf', 'd:/unpack')\r\n```\r\n\r\n## \u0421\u0431\u043e\u0440\u043a\u0430 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432\r\n\r\n\u0438\u0437 \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438:\r\n\r\n    v8unpack.exe -B d:/unpack d:/repacked.cf\r\n\r\n\u0438\u0437 python:\r\n\r\n```python\r\nimport v8unpack\r\n\r\nif __name__ == '__main__':\r\n    v8unpack.build('d:/unpack', 'd:/repacked.cf')\r\n```\r\n\r\n## \u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f\r\n\r\n[\u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u043d\u0430 \u0441\u0431\u043e\u0440\u043a\u0443 \u0438\u0437 \u043e\u0434\u043d\u0438\u0445 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432](https://github.com/saby-integration/v8unpack/blob/main/docs/transition.md)\r\n\r\n[\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435](https://github.com/saby-integration/v8unpack/blob/main/docs/usage.md)\r\n\r\n[\u0418\u0441\u0442\u043e\u0440\u0438\u044f \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439](https://github.com/saby-integration/v8unpack/blob/main/docs/history.md)\r\n\r\n[\u0423\u0447\u0430\u0441\u0442\u0438\u0435](https://github.com/saby-integration/v8unpack/blob/main/docs/develop.md)\r\n\r\n## \u041e\u0442\u043b\u0430\u0434\u043a\u0430\r\n\r\n## \u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f\r\n\r\n\u0420\u0430\u0437\u043c\u0435\u0442\u043a\u0430 \u0444\u043e\u0440\u043c \u0438 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u043f\u043e \u043f\u0440\u0435\u0436\u043d\u0435\u043c\u0443 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043d\u0435 \u0447\u0438\u0442\u0430\u0435\u043c\u044b\u043c\u0438, \u043d\u043e \u0432 \u044d\u0442\u043e\u043c \u0432\u0438\u0434\u0435 \u043f\u0440\u043e\u0449\u0435 \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u044c \u0438\u0445 \r\n\u0430\u043d\u0430\u043b\u0438\u0437 \u0438 \u043f\u0440\u0438 \u0436\u0435\u043b\u0430\u043d\u0438\u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043f\u0430\u0440\u0441\u0435\u0440.\r\n\r\n\u041d\u0430 \u0442\u0435\u043a\u0443\u0449\u0438\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 [\u0443\u0442\u0438\u043b\u0438\u0442\u0430 \u043f\u043e\u043a\u0440\u044b\u0432\u0430\u0435\u0442 \u0432\u0441\u0435 \u0442\u0438\u043f\u044b \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u043d\u0443\u0436\u043d\u043e\u043c \u043d\u0430\u043c \u043e\u0431\u044a\u0435\u043c\u0435](https://github.com/saby-integration/v8unpack/blob/main/src/v8unpack/metadata_types.py), \r\n\u0435\u0441\u043b\u0438 \u0412\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0431\u043e\u043b\u0435\u0435 \u0434\u0435\u0442\u0430\u043b\u044c\u043d\u0430\u044f \u0440\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u043a\u0430 \u043a\u0430\u043a\u0438\u0445 \u0442\u043e \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432 \u043d\u0430\u043f\u0438\u0448\u0438\u0442\u0435 \u0437\u0434\u0435\u0441\u044c \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0435\r\n\u0438\u043b\u0438 \u0441\u0434\u0435\u043b\u0430\u0439\u0442\u0435 \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e, \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0440\u0430\u0434\u044b [\u043b\u044e\u0431\u043e\u043c\u0443 \u0443\u0447\u0430\u0441\u0442\u0438\u044e \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435](https://github.com/saby-integration/v8unpack/blob/main/docs/develop.md).\r\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Unpacking binaries 1C to JSON for GIT",
    "version": "0.18.5",
    "project_urls": {
        "Homepage": "https://github.com/saby-integration/v8unpack"
    },
    "split_keywords": [
        "1c",
        "cf",
        "cfe",
        "epf",
        "v8unpack",
        "saby",
        "sbis",
        "\u0441\u0431\u0438\u0441",
        "1\u0441"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fc25b3ccdb902b32d499ec8be055a171ff6a083a0ce0d5ae392fc3b34af3d12b",
                "md5": "d26152c60ae8b925389680f790ebdecd",
                "sha256": "e64e1d4ffe69d83538a476fb78de4b7e47a6d8caa294efda8d9d90912876f45f"
            },
            "downloads": -1,
            "filename": "v8unpack-0.18.5-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "d26152c60ae8b925389680f790ebdecd",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 131377,
            "upload_time": "2024-02-29T11:39:51",
            "upload_time_iso_8601": "2024-02-29T11:39:51.447843Z",
            "url": "https://files.pythonhosted.org/packages/fc/25/b3ccdb902b32d499ec8be055a171ff6a083a0ce0d5ae392fc3b34af3d12b/v8unpack-0.18.5-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "5e5495c530cdbbcee60ca6bab7503fb738774f600d790a749a14856833b3ca6f",
                "md5": "db82b8528f7e99e871cc58f1dc839a1b",
                "sha256": "e239d99a3defd912a0baa087cce8b7aa9e8d970a5041d67084de78956ef7ac1a"
            },
            "downloads": -1,
            "filename": "v8unpack-0.18.5.tar.gz",
            "has_sig": false,
            "md5_digest": "db82b8528f7e99e871cc58f1dc839a1b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 85685,
            "upload_time": "2024-02-29T11:39:55",
            "upload_time_iso_8601": "2024-02-29T11:39:55.233107Z",
            "url": "https://files.pythonhosted.org/packages/5e/54/95c530cdbbcee60ca6bab7503fb738774f600d790a749a14856833b3ca6f/v8unpack-0.18.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-02-29 11:39:55",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "saby-integration",
    "github_project": "v8unpack",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [],
    "lcname": "v8unpack"
}
        
Elapsed time: 0.19641s