<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ydb/library/cpp/yt/string/string.h, branch CLI_2.30.0</title>
<subtitle>Mirror of YDB github repos</subtitle>
<id>https://code.mastervirt.ru/ydb/atom?h=CLI_2.30.0</id>
<link rel='self' href='https://code.mastervirt.ru/ydb/atom?h=CLI_2.30.0'/>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/'/>
<updated>2025-08-05T11:03:29Z</updated>
<entry>
<title>YT: Make trim helpers noncopying; lesser copies in rich ypath parsing</title>
<updated>2025-08-05T11:03:29Z</updated>
<author>
<name>dgolear</name>
<email>dgolear@yandex-team.com</email>
</author>
<published>2025-08-05T10:50:26Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=54123d3ffd393903bd5211cfc76cecb51a0b671b'/>
<id>urn:sha1:54123d3ffd393903bd5211cfc76cecb51a0b671b</id>
<content type='text'>
commit_hash:88244dc0263029f091579dd66bba1e03132449fe
</content>
</entry>
<entry>
<title>YT-18571: Rename TCaseInsensitiveStringEqualityComparer -&gt; TCaseInsensitiveStringEqualComparer, add TCaseInsensitiveStringLessComparer</title>
<updated>2025-07-14T15:59:50Z</updated>
<author>
<name>babenko</name>
<email>babenko@yandex-team.com</email>
</author>
<published>2025-07-14T14:30:01Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=552acf29b10e279e67a90cf1136a30aa57f5dcd1'/>
<id>urn:sha1:552acf29b10e279e67a90cf1136a30aa57f5dcd1</id>
<content type='text'>
commit_hash:2dbe3c3cf419a5310e7bf45d161f839e99040788
</content>
</entry>
<entry>
<title>YT-22593: Migrate HTTP headers to std::string</title>
<updated>2025-05-12T14:41:42Z</updated>
<author>
<name>babenko</name>
<email>babenko@yandex-team.com</email>
</author>
<published>2025-05-12T14:06:01Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=f206f4d5846545715fd46266938ba92bc49b522d'/>
<id>urn:sha1:f206f4d5846545715fd46266938ba92bc49b522d</id>
<content type='text'>
[diff:runtime]
commit_hash:262b2e671526b138d7a9631daf5d34400fc2208c
</content>
</entry>
<entry>
<title>YT-22593: More trivial TString-&gt;std::string migrations</title>
<updated>2025-02-22T14:48:29Z</updated>
<author>
<name>babenko</name>
<email>babenko@yandex-team.com</email>
</author>
<published>2025-02-22T14:28:25Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=59afaa0cb7cd89146dd10f5446256afcce33bd0e'/>
<id>urn:sha1:59afaa0cb7cd89146dd10f5446256afcce33bd0e</id>
<content type='text'>
[nodiff:runtime]
commit_hash:1ba799aed1703ab7c6304b6da7090b3337f768dd
</content>
</entry>
<entry>
<title>YT-21233: Adjust (To/From)ErrorAttributeValue CPOs, revert ConvertTo becoming CPO, move TErrorCode and TError to library/cpp/yt/error</title>
<updated>2024-12-25T04:31:55Z</updated>
<author>
<name>arkady-e1ppa</name>
<email>arkady-e1ppa@yandex-team.com</email>
</author>
<published>2024-12-25T04:12:23Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=b5dd91799751f9924acb7c17ddad16ddb2086bba'/>
<id>urn:sha1:b5dd91799751f9924acb7c17ddad16ddb2086bba</id>
<content type='text'>
\[nodiff:caesar\]

List of changes:

 1) Make `ConvertTo` a normal function again (basically, a revert of previous change). It turned out to be very inconvenient entry point

 2) Introduce concept for "Primitive types" which are handled without yt/core module. Please note that inclusion of core **does not** affect work with primitive types (otherwise we would be facing and ODR violation). These are numerics, duration, instant, string-like objects and guid

 3) Introduce `FromErrorAttributeValue` which is a substitute to `ConvertTo` with special behavior (see below)

 4) Scheme for (de-)serialization has changed:

    1) Primitive types are handled via `ConvertToTextYsonString` and `ConvertFromTextYsonString`

    2) Other types are not supported without yt/core. Otherwise `ConvertToYsonString(value, EYsonFormat::Text)` used for serialization and `ConvertTo&lt;T&gt;(value)` for deserialization.

 5) New format of attribute value storage allows to not care about concrete type of the attribute (text yson strings can be detected since they start with `\"` and deserialized so are text yson bools, everything else is already human readable). This drops dependency on `TTokenizer`

 6) Some small parts (e.g. enums or constants or aliases) of yt/core/misc files were moved to library/cpp/yt/\* locations and re-included to drop dependencies of stripped\_error on them

 7) `TErrorAttributes` is now a simple hash map instead of a handle to `IAttributeDictionary`

 8) `ExtractFromAttributes` weak symbol is finally moved to library/cpp/yt/error due to point 9 allowing to fully drop dependency on `IAttributeDictionary`. Combined with point 7 this drops dep on yt/core/ytree altogether

 9) Moved `TErrorCode` to library/cpp/yt/error. There is a logger there which forces dep on library/cpp/yt/logging. It is not required really, and can be later removed

10) Moved `TError` with format and macroes to library/cpp/yt/error. It still (and probably forever will) depend on yson.

What can be done next: Switch TYsonString to TString and move ConvertTo/FromTextYsonString to library/cpp/yt/error. This would remove dep on library/cpp/yt/yson\_string
commit_hash:6f11dc478ab782a1f98a5aedcd45a4800d3f4e7b
</content>
</entry>
<entry>
<title>YTORM-1187: Fix IN and BETWEEN expression work with indexes</title>
<updated>2024-10-17T15:50:05Z</updated>
<author>
<name>dgolear</name>
<email>dgolear@yandex-team.com</email>
</author>
<published>2024-10-17T15:38:56Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=ba777c7e02eaa66c9eaec1c16085e641360c1690'/>
<id>urn:sha1:ba777c7e02eaa66c9eaec1c16085e641360c1690</id>
<content type='text'>
commit_hash:12d86de033f73ea238ebde7f47b689d30014119a
</content>
</entry>
<entry>
<title>YT-22473: Enable for-each formatting in known ranges</title>
<updated>2024-08-07T11:35:26Z</updated>
<author>
<name>arkady-e1ppa</name>
<email>arkady-e1ppa@yandex-team.com</email>
</author>
<published>2024-08-07T10:31:32Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=b92a4e77b0ee24fc7ae9d4488d97999ac39f48e3'/>
<id>urn:sha1:b92a4e77b0ee24fc7ae9d4488d97999ac39f48e3</id>
<content type='text'>
5a3405e64b730f0056e381af07658d6c2edcb92b
</content>
</entry>
<entry>
<title>YT-21868: Reorganize files to prevent unclear missing include errors</title>
<updated>2024-07-02T12:40:39Z</updated>
<author>
<name>arkady-e1ppa</name>
<email>arkady-e1ppa@yandex-team.com</email>
</author>
<published>2024-07-02T12:28:09Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=3336f268eb26aa0318cd3fa3f97116c43545f87b'/>
<id>urn:sha1:3336f268eb26aa0318cd3fa3f97116c43545f87b</id>
<content type='text'>
Moving files around so that include of either `string_builder.h` or `format.h` would result in being able to use both `Format` and `TStringBuilder`
8a2abbea2ae7027c1cd3a243ab3de55bdd5d3d27
</content>
</entry>
<entry>
<title>YT-21233: Remove TSimpleException and teach TCompositeException storing simple attributes</title>
<updated>2024-03-28T06:58:54Z</updated>
<author>
<name>arkady-e1ppa</name>
<email>arkady-e1ppa@yandex-team.com</email>
</author>
<published>2024-03-28T06:47:08Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=48212452a70da88a5e4b814979dd82f22379801f'/>
<id>urn:sha1:48212452a70da88a5e4b814979dd82f22379801f</id>
<content type='text'>
Expand the CompositeException
9a10ec65bfc1df854e03bb3a4d8d0a0c0e4a3a5d
</content>
</entry>
<entry>
<title>Natively support %x and %X in Format</title>
<updated>2022-08-26T07:04:55Z</updated>
<author>
<name>babenko</name>
<email>babenko@yandex-team.com</email>
</author>
<published>2022-08-26T07:04:55Z</published>
<link rel='alternate' type='text/html' href='https://code.mastervirt.ru/ydb/commit/?id=af6b0b93037268a9ca1343dd09629cf910c944d9'/>
<id>urn:sha1:af6b0b93037268a9ca1343dd09629cf910c944d9</id>
<content type='text'>
</content>
</entry>
</feed>
