<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ydb/util, branch CLI_2.25.0</title>
<subtitle>Mirror of YDB github repos</subtitle>
<id>https://code.mastervirt.ru/ydb/atom?h=CLI_2.25.0</id>
<link rel='self' href='https://code.mastervirt.ru/ydb/atom?h=CLI_2.25.0'/>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/'/>
<updated>2025-08-22T07:11:15Z</updated>
<entry>
<title>Add forward-declaration of TBlob to util/generic/fwd.h</title>
<updated>2025-08-22T07:11:15Z</updated>
<author>
<name>thegeorg</name>
<email>thegeorg@yandex-team.com</email>
</author>
<published>2025-08-22T06:54:05Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=cd599f2d5b4c6593a9770488c4affb53f46e42f6'/>
<id>urn:sha1:cd599f2d5b4c6593a9770488c4affb53f46e42f6</id>
<content type='text'>
While the class itself it defined in `util/memory/blob.h`, it seems better to reuse an existing `fwd.h` rather than creating a new one.
commit_hash:3e373ab68ced34c709ee12e3ce5b544376ac8417
</content>
</entry>
<entry>
<title>Don't use deprecated literal operator</title>
<updated>2025-08-20T13:17:57Z</updated>
<author>
<name>namorniradnug</name>
<email>namorniradnug@yandex-team.com</email>
</author>
<published>2025-08-20T12:59:22Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=bb6c48f24c7a2004cb90d7f2907d49a29888b25e'/>
<id>urn:sha1:bb6c48f24c7a2004cb90d7f2907d49a29888b25e</id>
<content type='text'>
Newer clang versions produce the `deprecated-literal-operator` warning.
See https://reviews.llvm.org/D152632 and https://wg21.link/CWG2521.
commit_hash:52ebdc26dfe511681a1d73f24a8ba96592bb1b47
</content>
</entry>
<entry>
<title>TTempFile should be move-only. Implement proper move semantics.</title>
<updated>2025-08-15T09:25:32Z</updated>
<author>
<name>akhropov</name>
<email>akhropov@yandex-team.com</email>
</author>
<published>2025-08-15T07:44:33Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=4528158cce9713da50392a22f80e9390fe37423e'/>
<id>urn:sha1:4528158cce9713da50392a22f80e9390fe37423e</id>
<content type='text'>
#### Реализация move-семантики для TTempFile и оптимизация передачи параметров 📝

- 🔄 **Сделал TTempFile move-only классом**:
  - Удалили копирующий конструктор и оператор присванивания
  - Добавили перемещающий конструктор и оператор с noexcept
  - Изменили хранение имени файла в TMaybe для безопасного перемещения
  - Добавили явное удаление временного файла в операторе перемещения

- 🏗 **Оптимизировали передачу параметров в различных классах**:
  - Заменили передачу объектов по значению/константной ссылке на перемещение (std::move)
  - Основные изменения коснулись параметров среды (envParams) и аргументов процессов

- ✨ **Улучшили обработку временных файлов**:
  - Убрали лишнее поле TTempFile из TSmallEnvParams
  - Вектор временных файлов теперь корректно хранится и обрабатывается через move-семантику

- 📝 **Прочие улучшения**:
  - Исправлены контексты вызовов, где используется временная файловая система
  - Оптимизированы аргументы запуска процессов через std::move
  - Добавлено перемещение для аргументов стандартных потоков ввода-вывода

---
**Оценить качество описания можно [здесь](https://nda.ya.ru/t/_MxIaV0Q7FnCMG**

&lt;a href="https://nda.ya.ru/t/qa0kX64r7DqvtN"&gt;&lt;font size="2"&gt;Autodescription by Code Assistant&lt;/font&gt;&lt;/a&gt;
commit_hash:474bcbb9db8c7dc14d7aa204991ecdb4611e8e87
</content>
</entry>
<entry>
<title>Intermediate changes</title>
<updated>2025-08-15T09:04:53Z</updated>
<author>
<name>robot-piglet</name>
<email>robot-piglet@yandex-team.com</email>
</author>
<published>2025-08-15T07:42:46Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=c9c9e8fc0ab787644561475580a4a4f581f065d4'/>
<id>urn:sha1:c9c9e8fc0ab787644561475580a4a4f581f065d4</id>
<content type='text'>
commit_hash:c453d8ab5fbf0440dec8356e0f741bfe25d48033
</content>
</entry>
<entry>
<title>TIntrusivePtr is not needed here</title>
<updated>2025-08-11T17:33:24Z</updated>
<author>
<name>akhropov</name>
<email>akhropov@yandex-team.com</email>
</author>
<published>2025-08-11T17:16:01Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=7e1e1f8e8fb81a9389e154824a781a9adfd41293'/>
<id>urn:sha1:7e1e1f8e8fb81a9389e154824a781a9adfd41293</id>
<content type='text'>
commit_hash:54b9e74039cd4f86cc8ab610b27005a5199af4f9
</content>
</entry>
<entry>
<title>Fix grammar, better wording and fix the version of the standard</title>
<updated>2025-08-10T22:05:52Z</updated>
<author>
<name>akhropov</name>
<email>akhropov@yandex-team.com</email>
</author>
<published>2025-08-10T21:53:36Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=bc638812127dd833b78c313929603c1e3a43ac06'/>
<id>urn:sha1:bc638812127dd833b78c313929603c1e3a43ac06</id>
<content type='text'>
commit_hash:af06eeb383729e2b7ce1254d0a24f68b126591fe
</content>
</entry>
<entry>
<title>Fix typo</title>
<updated>2025-08-06T09:41:00Z</updated>
<author>
<name>mikailbag</name>
<email>mikailbag@yandex-team.com</email>
</author>
<published>2025-08-06T09:04:12Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=ba4771ba91781c6aef0bfa2506302c4b3e2a2e73'/>
<id>urn:sha1:ba4771ba91781c6aef0bfa2506302c4b3e2a2e73</id>
<content type='text'>
This fixes a typo caught by GameRoMan in https://github.com/yandex/perforator/pull/51
commit_hash:0fba8e46bed70f3afbd3f4a5a473be24c67e8f2f
</content>
</entry>
<entry>
<title>Y_HAS_CPP_ATTRIBUTE macro</title>
<updated>2025-08-04T23:11:02Z</updated>
<author>
<name>swarmer</name>
<email>swarmer@yandex-team.com</email>
</author>
<published>2025-08-04T22:56:41Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=24c1e08593d85ab866a1d74210c9c254597b0ec6'/>
<id>urn:sha1:24c1e08593d85ab866a1d74210c9c254597b0ec6</id>
<content type='text'>
The new macro `Y_HAS_CPP_ATTRIBUTE` simplifies the check for C++ attribute support by handling nested `#if defined(__has_cpp_attribute)` checks.

Before:
```cpp
    #if defined(__has_cpp_attribute)
        #if __has_cpp_attribute(attribute_name)
           // use
        #else
           // fallback
        #endif
    #else
        // fallback
    #endif
```

After:
```cpp
    #if Y_HAS_CPP_ATTRIBUTE(attribute_name)
        // use
      #else
        // fallback
    #endif
```

The new macro also allows checking C++ attributes when compiling C code without raising errors related to different tokenization rules in these languages. Of course, such a test always returns `0` when compiling source code in C.

Also, rename `Y_HAVE_ATTRIBUTE` to `Y_HAS_ATTRIBUTE` for consistency.
commit_hash:9c12fe5d0e6a570d7f11910704c0a9b05d100434
</content>
</entry>
<entry>
<title>Add Y_LIFETIME_CAPTURE_BY macro</title>
<updated>2025-08-04T17:18:27Z</updated>
<author>
<name>mikhnenko</name>
<email>mikhnenko@yandex-team.com</email>
</author>
<published>2025-08-04T16:50:37Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=a735e9e5c243f1ca47d112f947cfdb7707493327'/>
<id>urn:sha1:a735e9e5c243f1ca47d112f947cfdb7707493327</id>
<content type='text'>
commit_hash:3151ac4c7e3a3f787cd3936b642f516242f6d47c
</content>
</entry>
<entry>
<title>removed bad hardcoded constant</title>
<updated>2025-08-04T08:41:42Z</updated>
<author>
<name>salmpac</name>
<email>salmpac@yandex-team.com</email>
</author>
<published>2025-08-04T08:22:25Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=439174edf1072c301df1a24510abfb1dad15f4c3'/>
<id>urn:sha1:439174edf1072c301df1a24510abfb1dad15f4c3</id>
<content type='text'>
changed bad code
commit_hash:8053651f4c77622c3e55a5d169d7798e6a2c912d
</content>
</entry>
</feed>
