Index_put_ does not work correctly with sparse tensors libtorch

Dear sir or madam,
It seems like function index_put_ (used for setting values in tensors) does not do anything with sparse tensors.

In the following code I try to insert value 42 in position (0, 0) of a sparse tensor:

  auto sparse_tensor = torch::zeros({2, 2}, torch::kSparse);

  std::cout << "Before put: " << sparse_tensor.index({0, 0}) << std::endl;
  sparse_tensor.index_put_({0, 0}, 42);
  std::cout << "After put: " << sparse_tensor.index({0, 0}) << std::endl;


The output of the code shows that no value was inserted:

Before put: 0
[ CPUFloatType{} ]
After put: 0
[ CPUFloatType{} ]


While for dense matrices the function works as intended:

  auto dense_tensor = torch::zeros({2, 2}, torch::kStrided);

  std::cout << "Before put: " << dense_tensor.index({0, 0}) << std::endl;
  dense_tensor.index_put_({0, 0}, 42);
  std::cout << "After put: " << dense_tensor.index({0, 0}) << std::endl;

Giving the following output:

Before put: 0
[ CPUFloatType{} ]
After put: 42
[ CPUFloatType{} ]

I build test application with (nightly/cpu/libtorch-cxx11-abi-shared-with-deps-latest.zip) binaries from this post: Libtorch binaries compiled with flag _GLIBCXX_USE_CXX11_ABI = 1.

Could you please help me understand whether I do something incorrectly or it is a bug?
Thank you in advance for any assistance!