Commit Graph
77 Commits
Author SHA1 Message Date
Ilya Lavrenov 5764b5c108 Use RPATH instead of RUNPATH for wheel package (#20239) 2023-10-06 13:50:44 +04:00
Ilya LavrenovandOleg Pipikin 8349849e1c Use FindPython3.cmake (#19847)
* Use FindPython3.cmake

* Fixed compilation on macOS 14 with new core development tools

* Try to use Python3_SOABI instead of PYTHON_MODULE_EXTENSION

* Use Development.Module

* Keep specifying only Python3_EXECUTABLE

* Print PYTHON_MODULE_EXTENSION

* Added check for minimal cmake version for python API

* Returned Python3_INCLUDE_DIR for cross-compilation case

* Try to allow cmake older than 3.18

* Use build python interpreter to check cython dependency

* revert changes in .ci/openvino-onnx/Dockerfile

* removed unused code

* Fixed issue with variables scope

* Experiment: remove include dirs

* Corrected docs

* Use pybind11 function to set extension

* Revert "Experiment: remove include dirs"

This reverts commit 6f7f90211c.

* Refactor ConvolutionBackpropDataLayerTest, ConvolutionLayerTest, DeformableConvolutionLayerTest (#19810)

* Refactor ConvolutionBackpropDataLayerTest

* Refactor ConvolutionLayerTest

* Refactor DeformableConvolutionLayerTest

* Apply comments

* Apply comments

* Fix

* Updated minimum cmake version for Windows

* Simplified check

* Removed useless message status

* Use puiblic option

---------

Co-authored-by: Oleg Pipikin <oleg.pipikin@intel.com>
2023-09-26 20:57:29 +02:00
Przemyslaw Wysocki 66dd347d38 remove upper bound (#19802) 2023-09-14 07:53:00 +02:00
Przemyslaw Wysocki 25b1b4e26c Add upper bound for setuptools (#19672) 2023-09-08 11:56:39 +04:00
Ilya Lavrenov a322b8256d Unlock custom creation of PLATFORM_TAG (#19609) 2023-09-06 10:46:37 +04:00
Ilya Lavrenov e49b208393 Enabled debug build for Python wheels (#19197) 2023-08-17 16:45:18 +04:00
Ilya Lavrenov 1ffab2fe30 Added --single-version-externally-managed during python package build (#19177) 2023-08-14 17:45:23 +04:00
Ilya Lavrenov 2830b20d73 Removed 'wheel' upper bound in requirements.txt (#19170) 2023-08-14 17:40:25 +04:00
Przemyslaw Wysocki 4ad072e55c [PyOV] Add temporary workaround for wheel building issue (#19011)
* Add upper bound

* Minor changes
2023-08-07 13:06:02 +04:00
Ilya Lavrenov 4df6ef3a26 Removed ie, ngraph and core_tools cpack components (#18636)
* Removed ie, ngraph cpack components

* Introduced new components
2023-07-20 17:46:16 +04:00
Ilya Lavrenov 04cb55c37d Moved BA from openvino-dev to openvino (#18571) 2023-07-19 14:36:47 +04:00
Ilya Lavrenov 96d16b141d Ability to configure setup.py via env variables (#18538) 2023-07-13 23:12:07 +04:00
5d399faa64 convert_model() in openvino.runtime. (#18080)
* Used pip wheel to build OpenVINO wheel

* Added convert_model() to openvino.runtime.

* Removed duplication of InputCutInfo, LayoutMap

* Switched Model Conversion API tests to convert_model from openvino.runtime.

* Small correction.

* Format correction.

* Small correction.

* Removed duplication of moc frontend files.

* Small correction.

* Removed duplication of cli_parser, offline_transformations.

* Code corrections.

* Removed code duplications.

* Removed code duplications.

* Updated codeowners.

* Switched layer tests to convert_model().

* Improvements

* Small correction.

* Caffe parser path fix.

* Added python api properly into deb / rpm packages

* Moved implementation to ovc tool.

* Moved implementation to ovc tool.

* Small correction.

* Use cmake -E variant from cmake 3.13

* Namespace fixes.

* Minor fixes.

* Pylint fixes.

* Fixed BOM file.

* Small corrections.

* Minor corrections.

* Minor fix.

* Error fixes.

* Added telemetry requirement.

* Improvements to fix CI

* Some refactoring

* Don't use developer package for scripts projects

* Added exception in case when MO is not imported.

* Removed exception from init.

* Removed changes from cmake.

* Added unit ovc tests, fixed minor errors.

* Added ovc unit tests to azure.

* Corrected imports.

* Fixed path to tests.

* Added missed files.

* Corrected github labels.

* Removed benchmark app from dev package.

* Small fix.

* Small corrections.

* Comment fixed.

* Removed changes from setup.py

* Removed not needed change.

* Removed duplicating unit tests.

* Removed wrong change.

* Removed not needed change.

* Apply suggestions from code review

Co-authored-by: Roman Kazantsev <roman.kazantsev@intel.com>

* Added ovc tool test, corrected imports.

* Added legacy TF config test.

* Removed not needed files.

---------

Co-authored-by: Ilya Lavrenov <ilya.lavrenov@intel.com>
Co-authored-by: Roman Kazantsev <roman.kazantsev@intel.com>
2023-06-30 18:26:14 +04:00
Ilya Lavrenov 975616980b Removed benchmark_tool from openvino since opencv dependency is still not solved (#18206) 2023-06-24 12:00:31 +04:00
Jan Iwaszkiewicz a8ce60b651 Fix flake8 warnings and ignore VNE001 for Python samples (#18204)
* Ignore VNE001 for Python samples

* Add explanation

* Fix flake8 on wheel setup.py

* Fix onnx test reporting VNE001
2023-06-23 17:06:02 +04:00
Ilya Lavrenov 15e69c280a Used pip wheel to build OpenVINO wheel (#18029)
* Used pip wheel to build OpenVINO wheel

* Improvements

* Added python api properly into deb / rpm packages

* Use cmake -E variant from cmake 3.13

* Improvements to fix CI

* Some refactoring

* Don't use developer package for scripts projects

* Final fixes
2023-06-23 09:17:02 +04:00
Ilya Lavrenov 90a0e5f81a Refactored setup.py; used pip wheel to build package (#17991) 2023-06-12 14:42:09 +00:00
Ilya Lavrenov bd0117d648 Vcpkg conan fixes (#17765)
* Small fixes for openvino::pugixml creation for Dev packages

* Flexiable components installation

* Fixed compilation for x86

* Added extra checks for ENABLE_NCC_STYLE

* Fixed typo in RPM
2023-05-29 15:40:51 +04:00
Ilya Lavrenov a21fe95ae6 Enabled fdupes checks for Linux arm64 (#17711) 2023-05-24 23:14:29 +04:00
Maciej SmykandKarol Blaszczak 13c966f293 [DOCS] Link adjustment (Snippets) for master (#17659)
* link fix

* diagram_workflow

Removal of not used diagram_workflow.svg images

---------

Co-authored-by: Karol Blaszczak <karol.blaszczak@intel.com>
2023-05-24 14:03:54 +04:00
Ilya Lavrenov a591514250 Ability to build universal2 wheel packages (#17661) 2023-05-23 00:35:55 +04:00
Ilya Lavrenov 04171416f4 Put mingw on gcc code path (#16101)
* Supported mingw-w64

* Supported mingw-w64

* Supported mingw-w64
2023-05-17 00:47:55 +04:00
Alina Kladieva f39ab0dbc9 Upper-bound for patchelf (#17177) 2023-04-24 19:52:55 +02:00
Ilya Lavrenov a34ef680f2 Made plugins.hpp generation to be CONFIG dependent (#17139) 2023-04-24 14:48:45 +04:00
Fang XuandChen Peter 656d7fe380 prebuilt oneTBB binaries for ARM64 (#16904)
* use oneTBB for arm64

* force THREADING=TBB

* test: remove TBB_DIR for linux arm64

* update linux and mac arm64 packages

* update SHA256

* add comment

* disable add_rpath for tbb libraries on mac arm64

---------

Co-authored-by: Chen Peter <peter.chen@intel.com>
2023-04-24 09:48:47 +04:00
Ilya Lavrenov feb08c408f Return benchmark_tool to openvino-dev wheel (#16834) 2023-04-10 16:34:51 +04:00
Fang Xu 4ade0e5533 fix wheel_blacklist_extension for macos (#16799) 2023-04-07 11:28:56 +04:00
Ilya Lavrenov d2deae225a Added rpath for TBB libs to find hwloc (#16788) 2023-04-06 20:33:32 +04:00
Ilya Lavrenov d732024ccb Extended a list of libraries to exclude from wheel package (#16764) 2023-04-06 16:37:11 +04:00
Fang Xu a96da994ec Update prebuilt oneTBB2021.2.1 (#16548)
*update prebuilt oneTBB2021.2.1

*modify tbb and tbb component installation

*modify the implementation of removing soft links

*update prebuilt oneTBB2021.2.1
macos: 11.4
windows: win10+visual studio 2019(MSVC 14.21)
https://github.com/open-mpi/hwloc/archive/refs/tags/hwloc-2.8.0.tar.gz
https://github.com/open-mpi/hwloc/archive/refs/tags/hwloc-2.8.0.zip
https://github.com/oneapi-src/oneTBB/archive/refs/tags/v2021.2.1.tar.gz(commitid:96af5d3)
https://github.com/oneapi-src/oneTBB/archive/refs/tags/v2021.2.1.zip(commitid:96af5d3)

before building oneTBB 2021.2.1, replace all strings "2_4" of the source code with "2_5"

for windows, after compilation, replace all strings
INTERFACE_COMPILE_DEFINITIONS "\$<\$<CONFIG:DEBUG>:TBB_USE_DEBUG>" to INTERFACE_COMPILE_DEFINITIONS "\$<\$<CONFIG:DEBUG>:TBB_USE_DEBUG>;__TBB_NO_IMPLICIT_LINKAGE=1"
in cmake file "%cd%\install\lib\cmake\TBB\TBBTargets.cmake"
2023-03-25 08:46:43 +00:00
Przemyslaw Wysocki 8cbd8b8e03 Remove setuptools upperbound (#16054) 2023-03-02 20:58:39 +04:00
Anastasia Kuporosova 4c0d28f26d Try to update minimum setuptools req (#15971)
* Try to update setuptools req

* suppress output from setup
2023-03-01 17:05:51 +04:00
Artyom Anokhov bd8c7506f0 requirements-dev: top-limited setuptools with 65.7.0 (#15946) 2023-02-25 14:54:50 +04:00
Ilya Lavrenov bd61d317f8 Revert "Install patchelf for aarch64 linux (#15865)" (#15919)
This reverts commit e34d4e4664.
2023-02-23 23:02:00 +04:00
Ilya Lavrenov e34d4e4664 Install patchelf for aarch64 linux (#15865) 2023-02-22 12:55:27 +04:00
Ilya Lavrenov 1f3e469c5e Added -Wall for Clang and GCC (#15513)
* Added -Wall for Clang and GCC

* Fixes

* Don't use /J

* Fixed warnings

* Fixed warnings

* More fixes

* Fixed for MSVC

* Fixed more warnings on Windows

* Suppressed some warnings in template plugin

* Update src/tests/functional/plugin/shared/include/behavior/plugin/caching_tests.hpp

* Added suppression for PT FE

* Suppressed warnings in TF FE

* Suppressed warnings on Core unit tests

* Suppress warnings in python

* Suppressed Windows warning for 3rd party modules

* Suppresed one more warning
2023-02-08 15:01:00 +04:00
0513a79a79 Tensorflow Lite frontend (#14977)
* Infrastructure for tflite

* Removed submodule flatbuffers

* Added flatbuffers submodule. Fixed version to v22.12.06 aka acf39ff

* Move headers back

* Flatbuffers integration

* Small fixes

* Started parsing the Model

* flatbuffer changes

* decoder_flatbuffer changes

* Lite Input Model -- not needed as of now but looks cool

* Rolled back inherritance from ov::frontend::tensorflow::InputModel

* Results are not treated as outputs, but its ok

* Fix missplaced input vs output

* Refactor

* Load model op-by-op. Frontend API finalized

* Debugging still, there are prints here and there. Decoder is not sane

* Convolution with all attributes is translated and quantization is applied for inputs and constatants. TODO: quantize intermediate tensors, separate decoder specific logic?

* Float ssd and posenet models are showing good accuracy

* Need to refactor but work flawlessly

* Telemetry and lightweight model cutting

* Code style and test changes. Extensions supported

* Quantization and style

* Style refinements

* Move onednn back

* New portion of operations enabled

* TFLite FE doesn't inherrit TF FE

* Moved files to another directory

* Rename header op_table.hpp to common_op_table.hpp for all files in src/frontends/tensorflow_common/src/op/

* Removed visability macroses

* CMake changes

* Unit-test execution in .ci

* Update labeler.yml

* Codeowners

* Style check and fix

* Static Build arrangement

* Addressing the comments

* install common headers to previous place

* New approach with public decoder and graph_iterator

* New approach with public decoder and graph_iterator

* Move GraphIterator back

* Comments addressed

* Comments adressed

* Preliminary TF FE README.md changes

* Added target_compile_definitions OPENVINO_STATIC_LIBRARY for static build

* Fixed conflicts and added TF to common places

* Frontends use only openvino::core::dev API

* Merged common tensorflow changes and made code build and work on selective number of models

* Style

* Rollback unnecessary changes from Tensorflow FE

* Rollback unnecessary changes from Tensorflow Common

* Minor refactor

* cmake minor refactoring

* Mixed commit

* Style and merge fix

* Low hanging fruit operations

* Fix windows build

* Refactor quantization parameters representation

* license compliance. approved by OS PDT

* copyrights in generic file

* dependabot

* labeler

* Unit Test to be triggered in CI

* cmake variables naming. corrected copyright years in copyrights/generic file

* library renamed in .ci/ calls

* Copyright year update

* Set openvino-tf-frontend-maintainers as owner of /src/frontends/tensorflow_lite/

* Fixed flatc corss-compilation

* Cleaned flatbuffers header usage

* Nitpicks solved

* Update cmake/templates/OpenVINOConfig.cmake.in

* Compile with flatbuffers headers

* Fixed "which is prefixed in the source directory"

* Fixed typo in flatbuffers cmake

* Removed flatbuffers submodule

* Added fork submodule

* Fixed static build

* Fixed cross-compilatio

* Fixed -Wshadow warning

* Fixed warning on Windows

* Use only headers from flatbuffers library

* Added LTO and fixed compilation errors on Windows

* Fixed warnings in tensorflow_common

* Move ctors implementation to cpp file

* Added information about new frontends to common FEm part

* Temporaryily disable warnings

* Fixed code style using clang-format

* Fixed Windows

* reverted changes in onnx

* Revert changes in onnx_common

* Removed pragma once frm cpp

Co-authored-by: missjane <estepyreva@gmail.com>
Co-authored-by: Ilya Lavrenov <ilya.lavrenov@intel.com>
2023-01-27 06:27:59 +04:00
Jan Iwaszkiewicz 37317b130d [PyOV] Fix UserWarning in setup.py (#15334) 2023-01-26 22:02:17 +03:00
Ilya Lavrenov 90a7c083c6 Use manylinux2014 instead of manylinux_2_17 as a platform tag (#15224) 2023-01-23 23:46:10 +04:00
53e699eaba Add PyTorch Frontend (#15069)
* WIP

* update input validation

* upsample_nearest2d and upsample_bilinear2d support

* support leaky_relu add test for inplace relu

* update tests, add handler for ListConstruct

* Do not create extra outputs in main body

* add positive case with non-default value

* update testing

* update test, handle non constant size and scale

* remove ie_device

* add aten::group_norm support

* refactoring

* Enable aten::reshape_as operator and add layer test

* more tests

* Fix typo in test

* Resolve conflicts

* fix code style

* expand init version

* expand_as and tests

* add transposed convolutions support

* add tests

* initial support pad

* add circular

* update for differenced in rang

* cleanup

* refactor

* more tests

* apply review comments

* Add split+listunpack transformation

* Add split+getitem transformation

* Add test cases

* fix typo

* Minor fixes

* Apply suggestions from code review

Co-authored-by: Maxim Vafin <maxim.vafin@intel.com>

* Apply suggestions from code review

* Small fix

* Support converting models without freezing

* support BoolTensor and masked_fill

* add support aten::rsqrt and test for sqrt

* add cumsum and type_as

* support clamp

* support more matrix operations

* add tests

* Add aten::adaptive_avg_pool3d and layer test

* Change to rank

* fix code style in utils.hpp

* Update src/frontends/pytorch/src/op_table.cpp

Co-authored-by: Sergey Lyalin <sergey.lyalin@intel.com>

* fix code style

* add tests

* add xfail

* remove unnecessary broadcast

* Changes required by style formater

* aten::_convolution_mode

* Changes requested by a reviewer

* remove code duplication

* add aten::unbind transformation

* full, zeros and ones

* Support getattr list and unrolling nested ifs

* Remove line change

* Enable back freezing in layer tests

* Add aten::norm operator and layer test

* Small fix in layer test

* add aten::roll

* add empty line

* Typo fix

* fix style

* fix style v2

* add pytorch frontend to wheel

* Support all types of numeric norms

* add check for dynamic shapes

* remove random change

* merge statements

* add min and max ops support

* aten::max and aten::min

* move axes range creation to utils

* add transformation for tuple results, update tests

* fix copyright

* aten::var

* add test and translation for numel

* ignore aten::clone

* Add layer test for aten::add operator

* Fix typo

* Remove redundant import

* Add parameter name in forward method

* fix code style

* apply review comments

* Add size+slice+listunpack transform

* Add append listunpack transformation

* Register transformation

* aten::where

* update realization

* Fix issue with getitem

* Fix getitem

* Add layer test for aten::view operator

* Add tests for listunpack

* add test for aten::div

* fix style

* update aten::adaptive_max_pool2d

* fix style

* add aten::floor_divide

* aten::addmm support alpha and beta with different dtype

* nonzero

* Change test name

* update test cases to include other dtypes

* aten::arange

* prim::max transformation for ListConstruct

* rename op

* generalize conv2d implementation for conv1d and conv3d

* aten::unsqueeze_ and tests for aten::unsqueeze (#70)

* add aten::le, aten::ge and tests for other tensor comparision ops (#74)

* add support trigonometry ops (#73)

* support aten::upsample_bicubic2d, aten::ceil, aten::floor (#72)

Co-authored-by: Maxim Vafin <maxim.vafin@intel.com>

* extend and add tests for avg_pool and max_pool

* extend tests and constant filling ops

* fix as_tensor and full ops

* aten::repeat

* fix code style

* aten::im2col (#61)

* aten::im2col

* remove debug prints, add number of elements check

* fix failed tests

* move helper function

* use split

* Update src/frontends/pytorch/src/op/im2col.cpp

Co-authored-by: Maxim Vafin <maxim.vafin@intel.com>

* fix code style

Co-authored-by: Maxim Vafin <maxim.vafin@intel.com>

* Update src/frontends/pytorch/src/utils.cpp

Co-authored-by: Maxim Vafin <maxim.vafin@intel.com>

* fix code style

* revert removeinf floordiv, add floor_divide file

* Fix merge issue

* reduce code duplication

* refactor

* Add len operator with layer test

* update clamp to support mixed precision and add support torch.long for constants

* aten::selu

* add trunc mode to div

* add else statement

* Add test case to layer test

* Fix submodules (#88)

* update test file

* fix namings

* execute in fp64 and convert back to initial precision

* Revert set_output_size to master. Small fix in If validate

* Fix build and code style

* fix failed tests

* Add torchvision::nms operator and layer test

* Change requested by a reviewer

* Remove div test

* convert constants to input type

* Mark some cases in div tests as xfail (#93)

* Small refactoring (#94)

* Small refactoring

* Fix type

* Fix python codestyle

* Incremental fix code style (#95)

* Fix style (#96)

* Fix copyright

* Fix code style

* Branch clean up (#97)

* Optimize includes and force opset10 (#98)

* Optimize includes

* Force opset10 in pt fe

* Fix codestyle (#99)

* Fix style

* Fix clang codestyle

* Fix cerr with debug log

* Update src/bindings/python/src/pyopenvino/frontend/pytorch/decoder.cpp

* Add pytorch dependency only if pytorch frontend is enabled

* Update src/bindings/python/src/pyopenvino/CMakeLists.txt

* Add layer tests to precommit (#100)

* Add layer tests to precommit

* Remove accidentally added files

* Apply code style on layer tests

* batch norm tests and fixes

* move default weight and bias to else block

* reduce code duplication

* Changes requested by a reviewer

* Changes requested by a reviewer

* Remove dependency from pytorch in pyopenvino (#102)

* Remove dependency from pytorch when fe is disabled

* Change docstring

* Remove pytorch FE dependency from pyopenvino

* Apply codestyle (#107)

* Apply codestyle

* Remove commented line

* Apply suggestions from code review

Co-authored-by: Roman Kazantsev <roman.kazantsev@intel.com>

* Fix mock FE test (#108)

* Fix mock PE test (#111)

* Revert changes in StridedSlice (#114)

* Small refactoring (#116)

* Small refactoring

* Fix codestyle

* Apply suggestions from code review

Co-authored-by: Roman Kazantsev <roman.kazantsev@intel.com>

* Apply suggestions from code review

* Update src/frontends/pytorch/src/op/group_norm.cpp

* Fix cmake copyright define (#117)

* Update src/frontends/pytorch/src/op/arange.cpp

* Apply suggestions from code review

* Update build configs (#120)

* FIx build configs

* Update type cast in full.cpp

* Apply review feedback (#121)

* Apply suggestions from code review

* Apply suggestions from code review

Co-authored-by: Roman Kazantsev <roman.kazantsev@intel.com>

* Fix issue after master merge (#122)

* Fix issue after master merge

* Fix build

Co-authored-by: eaidova <ekaterina.aidova@intel.com>
Co-authored-by: bszmelcz <bartosz.szmelczynski@intel.com>
Co-authored-by: Sergey Lyalin <sergey.lyalin@intel.com>
Co-authored-by: sikorsl1 <leonard.sikorski@intel.com>
Co-authored-by: Leonard Sikorski <l.sikorski123@gmail.com>
Co-authored-by: Mateusz <mateusz.mikolajczyk@intel.com>
Co-authored-by: Roman Kazantsev <roman.kazantsev@intel.com>
2023-01-18 18:16:57 +04:00
Ilya Churaev 0c9abf43a9 Updated copyright headers (#15124)
* Updated copyright headers

* Revert "Fixed linker warnings in docs snippets on Windows (#15119)"

This reverts commit 372699ec49.
2023-01-16 11:02:17 +04:00
Ilya Lavrenov 6dd8a93735 Made OpenVINO cmake scripts Linux flavors agnostic (#14384)
* Use prebuilt cmake in install-dependencies steps

* Removed building of custom python to save Azure CI time

* Adjusted conditions in cmake

* Download VPU custom kernels compiler only for x86

* Removed -pyver argument

* Improvements

* Detect glibc version

* Usage of new glic variable

* Fixed typo

* Increased glibc version for MYRIAD case

* Made OpenVINO cmake Linux flavors agnostic

* Detect glibc version on RedHat

* Use clcompiler only since ubuntu 18.04

* Universal way to detect glibc version

* Revert some changes

* Apply suggestions from code review

fixes issue with GNA

* Apply suggestions from code review

fixed typo
2022-12-04 22:55:52 +04:00
Ilya Lavrenov c51ee524ad Tuned wheels build (#14038) 2022-11-17 00:03:34 +04:00
Ilya Lavrenov 90427b019e Unbrick TF FE (#13779) 2022-11-16 10:53:10 +04:00
Ilya Lavrenov d1c1680a81 Fixed openvino-dev version (#13962) 2022-11-11 22:43:06 +04:00
Jan Iwaszkiewicz 664c196a13 [PyOV] Fix wheel requirements for new package versions (#13871)
* Bump pybind11 to v2.10.1 release tag

* [PyOV] Fix wheel requirements for new package versions
2022-11-05 16:01:45 +04:00
Ilya Lavrenov a5a969886b Preparation for python debian package (#13800) 2022-11-03 08:19:18 +04:00
Ilya Lavrenov c40d225b6f Removed duplicated files from OpenVINO wheel (#13725) 2022-11-02 07:58:58 +04:00
Ilya Lavrenov fbd6d14c3b Several fixes for compilation fixes (#13674)
* Added i386 support

* Cross-compiled wheel package

* Fixes

* Try to use cross-env

* Fixed path to crossenv

* Strict dependency

* Removed numpy dependency

* explicitly activate crossenv

* Don't install ONNX for tests conversions during cross-compilation

* Updates

* Extra improvements

* Fixed compilation with strict flags

* Fixes

* Revert changesin .ci/azure/linux_arm64.yml
2022-10-27 17:30:24 +04:00
Ilya Lavrenov 786690a44f Added post-processing for python wheel platform tags (#13584) 2022-10-21 17:42:26 +04:00