profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/semyon2105/events. GitMemory does not store any data, but only uses NGINX to cache data for a period of time. The idea behind GitMemory is simply to give users a better reading experience.
Semyon Ivanov semyon2105 @smartcatai Russia, Moscow

smartcatai/ts-client-gen 7

Tool to automatically generate fully functional TypeScript client to ASP.NET WebAPI app

semyon2105/fsharplu 0

This library provides a set of F# helpers for string manipulations, logging, collection data structures, file operations, text processing, security, async, parsing, diagnostics, configuration files and Json serialization.

semyon2105/futures-rs 0

Zero-cost futures and streams in Rust

semyon2105/nixpkgs 0

Nix Packages collection

semyon2105/rust-websocket 0

A WebSocket (RFC6455) library written in Rust

semyon2105/rust-websocket-transport 0

High-level transport for rust-websocket

push eventsemyon2105/monerod-exporter

Semyon Ivanov

commit sha e6a3164e081180c2ef1ece8becc635d676e08edf

Remove dead links

view details

push time in 20 days

startedspekt/junit.testlogger

started time in 2 months

startedCyan4973/xxHash

started time in 2 months

issue commentValveSoftware/csgo-osx-linux

Failure to start: game bundled tcmalloc crash with system glibc 2.33

I believe I have found a workaround that two people have used to make the game launch and work again. @cstles since you fixed it on Discord, you should probably edit your comment here.

As previously mentioned, it is to do with libtcmalloc_minimal.so.0 not being there or causing the game to segfault. To fix this (workaround really), you need to get the library or install the package and use it to replace the nonexistent or broken one in the game install folder. The package for Ubuntu users is called libtcmalloc-minimal4 so a good sudo apt install libtcmalloc-minimal4 should make it work. Everyone else, search your repositories. Once you have the package, do the following:

cd $HOME/.local/share/Steam/steamapps/common/Counter-Strike\ Global\ Offensive/bin/linux64 # if you have cs not installed in the default directory, change where this cds to
mv libtcmalloc_minimal.so.0 libtcmalloc_minimal.so.0.orig
cp /usr/lib/{,x86_64-linux-gnu/}libtcmalloc_minimal.so.4.5.9 libtcmalloc_minimal.so.0

Also @kisak-valve I'd appreciate it if you could push one of your contacts to look at #2721 as this has caused a few people to be doxxed which is just ridiculous but , no doubt the VAC and network team are busy with the CS:GO network stress.

(thanks @cstles and subsequently @smirkybg for pointing it out at #2651 and another subsequent (English might be my first language but I suck at it) thanks to @Jan1s2 at #2593)

Thanks for this. With this fix, CSGO starts successfully every other time instead of every 10-50th time. Let's just hope this won't cause any VAC issues...

mahlersand

comment created time in 2 months

Pull request review commentsmartcatai/ts-client-gen

Feature/add null and optional configuration csms 12461

 By default TSClientGen uses controller name with the `Controller` suffix removed  * `--plugins-assembly <assemblypath>` (or `-p <assemblypath>`) - specifies a plugin assembly for customizing and extending the code generation process. This assembly should contain a bunch of classes implementing interfaces from `TSClientGen.Extensibility.dll` and marked with [MEF](https://docs.microsoft.com/en-us/dotnet/framework/mef/) `Export` attribute. See the section about [customizing TSClientGen with plugins](#Customize-with-a-plugin) for more details on the topic. +* `--nullability` (or `-N`): accepts `'Default' | 'JsonProperty' | 'Nrt' | 'DataAnnotations'`.

не вижу смысла заморачиваться с нуллабельностью, опциональности имхо будет достаточно. Усложение в UX тулы перевешивает выгоду от возможности форсить на фронтенде явное указание null у поля вместо пропуска поля

bessgeor

comment created time in 3 months

Pull request review commentsmartcatai/ts-client-gen

Feature/add null and optional configuration csms 12461

+using System;+using System.Reflection;+using TSClientGen.Nullability;++namespace TSClientGen+{+    public struct JsonPropertyWrapper+    {+        private readonly Attribute _attributeValue;++        public JsonPropertyWrapper(Attribute attributeValue)

не стоит ли здесь вместо класса с конструктором сразу создавать TsZeroType статическим методом наподобие

public static TsZeroType? FromAttribute(Attribute ...)
bessgeor

comment created time in 3 months

Pull request review commentsmartcatai/ts-client-gen

Feature/add null and optional configuration csms 12461

 By default TSClientGen uses controller name with the `Controller` suffix removed  * `--plugins-assembly <assemblypath>` (or `-p <assemblypath>`) - specifies a plugin assembly for customizing and extending the code generation process. This assembly should contain a bunch of classes implementing interfaces from `TSClientGen.Extensibility.dll` and marked with [MEF](https://docs.microsoft.com/en-us/dotnet/framework/mef/) `Export` attribute. See the section about [customizing TSClientGen with plugins](#Customize-with-a-plugin) for more details on the topic. +* `--nullability` (or `-N`): accepts `'Default' | 'JsonProperty' | 'Nrt' | 'DataAnnotations'`.

ну и хз где может пригодиться тип T | null | undefined, полученный от скрещивания опциональности и нуллабельности

bessgeor

comment created time in 3 months

Pull request review commentsmartcatai/ts-client-gen

Feature/add null and optional configuration csms 12461

 By default TSClientGen uses controller name with the `Controller` suffix removed  * `--plugins-assembly <assemblypath>` (or `-p <assemblypath>`) - specifies a plugin assembly for customizing and extending the code generation process. This assembly should contain a bunch of classes implementing interfaces from `TSClientGen.Extensibility.dll` and marked with [MEF](https://docs.microsoft.com/en-us/dotnet/framework/mef/) `Export` attribute. See the section about [customizing TSClientGen with plugins](#Customize-with-a-plugin) for more details on the topic. +* `--nullability` (or `-N`): accepts `'Default' | 'JsonProperty' | 'Nrt' | 'DataAnnotations'`.+  * `Default`: the previous behavior (reference types are always required, value types are optional if wrapped into `Nullable<T>`). This is the default.+  * `JsonProperty`: nullability/optionality is decided based on `JsonPropertyAttribute.Required` value. This is the most explicit way to describe it because JsonProperty.Required has all of the four possible combinations of optional/required, null/not null. If no attribute found, `Default` is used as a fallback.+  * `Nrt`: nullability of reference types is checked via C# 8 NRT, value types use `Default` policy. Nullable reference type is nullable and required by default, which may be overriden with `--nullable-props-are-optional-too-if-unspecified`. if no nullable context is found (e.g. no `#nullable enable` is present for the type being mapped or it's assembly), falls back to `Default`.+  * `DataAnnotations`: reference type property is nullable and required if no `System.ComponentModel.DataAnnotations.RequiredAttribute` is present on it. It also may be made optional via the `--nullable-props-are-optional-too-if-unspecified` option.+* `--nullable-props-are-optional-too-if-unspecified`: make nullable properties optional too if no explicit optionality is given (like it's done via `JsonProperty`). Default is false.+* `--check-nullability-for-overrides`: check if the overriden (by the `TSSubstituteTypepropertyAttribute`, for example) property is nullable/optional and apply nullability/optionality to an overriden type. Default is false.

и не понял, как через этот атрибут опциональностью можно управлять

bessgeor

comment created time in 3 months

Pull request review commentsmartcatai/ts-client-gen

Feature/add null and optional configuration csms 12461

   <ItemGroup>
     <ProjectReference Include="..\TSClientGen.Contract\TSClientGen.Contract.csproj" />
     <ProjectReference Include="..\TSClientGen.Core\TSClientGen.Core.csproj" />
+    <ProjectReference Include="..\TSClientGen.Tests.CodeGen\TSClientGen.Tests.CodeGen.csproj" OutputItemType="Analyzer" ReferenceOutputAssembly="false" />

осталась лишняя ссылка и ниже один ItemGroup тоже лишний

bessgeor

comment created time in 3 months

Pull request review commentsmartcatai/ts-client-gen

Feature/add null and optional configuration csms 12461

 public class Arguments 		
 		[Option('p', "plugins-assembly")]
 		public string PluginsAssembly { get; set; }
+
+		[Option('N', "nullability")]
+		public NullabilityHandling NullabilityHandling { get; set; } = NullabilityHandling.Default;
+
+		[Option("check-nullability-for-overrides")]
+		public bool CheckNullabilityForOverrides { get; set; }

остались поля от флагов

bessgeor

comment created time in 3 months

Pull request review commentsmartcatai/ts-client-gen

Feature/add null and optional configuration csms 12461

 By default TSClientGen uses controller name with the `Controller` suffix removed  * `--plugins-assembly <assemblypath>` (or `-p <assemblypath>`) - specifies a plugin assembly for customizing and extending the code generation process. This assembly should contain a bunch of classes implementing interfaces from `TSClientGen.Extensibility.dll` and marked with [MEF](https://docs.microsoft.com/en-us/dotnet/framework/mef/) `Export` attribute. See the section about [customizing TSClientGen with plugins](#Customize-with-a-plugin) for more details on the topic. +* `--nullability` (or `-N`): accepts `'Default' | 'JsonProperty' | 'Nrt' | 'DataAnnotations'`.+  * `Default`: the previous behavior (reference types are always required, value types are optional if wrapped into `Nullable<T>`). This is the default.+  * `JsonProperty`: nullability/optionality is decided based on `JsonPropertyAttribute.Required` value. This is the most explicit way to describe it because JsonProperty.Required has all of the four possible combinations of optional/required, null/not null. If no attribute found, `Default` is used as a fallback.+  * `Nrt`: nullability of reference types is checked via C# 8 NRT, value types use `Default` policy. Nullable reference type is nullable and required by default, which may be overriden with `--nullable-props-are-optional-too-if-unspecified`. if no nullable context is found (e.g. no `#nullable enable` is present for the type being mapped or it's assembly), falls back to `Default`.+  * `DataAnnotations`: reference type property is nullable and required if no `System.ComponentModel.DataAnnotations.RequiredAttribute` is present on it. It also may be made optional via the `--nullable-props-are-optional-too-if-unspecified` option.+* `--nullable-props-are-optional-too-if-unspecified`: make nullable properties optional too if no explicit optionality is given (like it's done via `JsonProperty`). Default is false.+* `--check-nullability-for-overrides`: check if the overriden (by the `TSSubstituteTypepropertyAttribute`, for example) property is nullable/optional and apply nullability/optionality to an overriden type. Default is false.

если я правильно понял этот флаг, то имхо это не очевидное поведение по умолчанию, когда указываешь [TSSubstituteType("MyType | null")], а в TS в итоге получаешь MyType

bessgeor

comment created time in 3 months

PullRequestReviewEvent
PullRequestReviewEvent

startedmonero-project/monero

started time in 3 months