)]}'
{
  "commit": "04899645cc75160ed74fe88edbb7c9f516d21360",
  "tree": "47816e6e215291f82606344f8a461e7dcc7f9c83",
  "parents": [
    "288a3fde6b25def4c53be449cbde095516acbbc8"
  ],
  "author": {
    "name": "Sameer Agarwal",
    "email": "sameeragarwal@google.com",
    "time": "Wed Aug 10 09:55:43 2022 -0700"
  },
  "committer": {
    "name": "Sameer Agarwal",
    "email": "sameeragarwal@google.com",
    "time": "Wed Aug 10 10:03:03 2022 -0700"
  },
  "message": "LinearOperator::FooMultiply -\u003e LinearOperator::FooMultiplyAndAccumulate\n\nThese methods were historically poorly named and every time I read code\nI get confused whether they are just multiplying or multiplying and\nadding. Clarifying them also gives us the changce to introduce\nRightMultiply and LeftMultiply methods in the base class which will\nsimplify a number call sites in a subsequent CL.\n\nFixes https://github.com/ceres-solver/ceres-solver/issues/855\n\nChange-Id: Ice4fb483f1acd02527a6dd753ef0c5a66037f4b0\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "07d6cd38ac0dac3dda7921bce70867da90a22197",
      "old_mode": 33188,
      "old_path": "internal/ceres/block_jacobi_preconditioner.cc",
      "new_id": "fdba2b857da915f458b689817e81aa18baf3feef",
      "new_mode": 33188,
      "new_path": "internal/ceres/block_jacobi_preconditioner.cc"
    },
    {
      "type": "modify",
      "old_id": "0928919f1e100e1dff4a3ced38d11a5d150e0da5",
      "old_mode": 33188,
      "old_path": "internal/ceres/block_jacobi_preconditioner.h",
      "new_id": "7728eb9313ce537e2a502e89c6f113b38a861324",
      "new_mode": 33188,
      "new_path": "internal/ceres/block_jacobi_preconditioner.h"
    },
    {
      "type": "modify",
      "old_id": "5a9f772ae9beec2a6f36b3d2ef0459360f4a5d61",
      "old_mode": 33188,
      "old_path": "internal/ceres/block_random_access_diagonal_matrix.cc",
      "new_id": "006713fb50ab9a23970430005bccf5be219eaa9e",
      "new_mode": 33188,
      "new_path": "internal/ceres/block_random_access_diagonal_matrix.cc"
    },
    {
      "type": "modify",
      "old_id": "45e3d02d71d849526fa3cdb221f19830de3dc414",
      "old_mode": 33188,
      "old_path": "internal/ceres/block_random_access_diagonal_matrix.h",
      "new_id": "2a726a0ed132b43a591770d94e5df4990305844c",
      "new_mode": 33188,
      "new_path": "internal/ceres/block_random_access_diagonal_matrix.h"
    },
    {
      "type": "modify",
      "old_id": "42a309f46bbd196f19a5639f86bc081e396257f4",
      "old_mode": 33188,
      "old_path": "internal/ceres/block_random_access_diagonal_matrix_test.cc",
      "new_id": "37e1f88331b38a5ab0ad3525d3847187bd2d6c95",
      "new_mode": 33188,
      "new_path": "internal/ceres/block_random_access_diagonal_matrix_test.cc"
    },
    {
      "type": "modify",
      "old_id": "3ae0cbaf426c5cc8db88bcdea03d47828959c381",
      "old_mode": 33188,
      "old_path": "internal/ceres/block_random_access_sparse_matrix.cc",
      "new_id": "2df4c71f29102c0f9c386283de6d78f071510ffd",
      "new_mode": 33188,
      "new_path": "internal/ceres/block_random_access_sparse_matrix.cc"
    },
    {
      "type": "modify",
      "old_id": "882292c53069c478045bcd5f4dba8eccac103b0f",
      "old_mode": 33188,
      "old_path": "internal/ceres/block_random_access_sparse_matrix.h",
      "new_id": "fe2b13c88e576f43786d12cdf78bbf05e96944c2",
      "new_mode": 33188,
      "new_path": "internal/ceres/block_random_access_sparse_matrix.h"
    },
    {
      "type": "modify",
      "old_id": "7224b65f9b356373b5b46dc6f05c005eb2d396b1",
      "old_mode": 33188,
      "old_path": "internal/ceres/block_random_access_sparse_matrix_test.cc",
      "new_id": "605bfbeb649087bc196db6b4b2b133268719a456",
      "new_mode": 33188,
      "new_path": "internal/ceres/block_random_access_sparse_matrix_test.cc"
    },
    {
      "type": "modify",
      "old_id": "1bfa343ec459554b7ebebd1cff301e47933f2480",
      "old_mode": 33188,
      "old_path": "internal/ceres/block_sparse_matrix.cc",
      "new_id": "ae6bd3a75d5986bf241f78d1e96d0973f5dbab69",
      "new_mode": 33188,
      "new_path": "internal/ceres/block_sparse_matrix.cc"
    },
    {
      "type": "modify",
      "old_id": "da6b641f74ff5a513657ff961136261b6473232c",
      "old_mode": 33188,
      "old_path": "internal/ceres/block_sparse_matrix.h",
      "new_id": "7cef18deb3b038904ac4b642be471ed3feca6dec",
      "new_mode": 33188,
      "new_path": "internal/ceres/block_sparse_matrix.h"
    },
    {
      "type": "modify",
      "old_id": "7fab13ae705104a3e3884717585f98d65c4a0998",
      "old_mode": 33188,
      "old_path": "internal/ceres/block_sparse_matrix_test.cc",
      "new_id": "4b02abf829cd671f511df60b1528362db58ee5b1",
      "new_mode": 33188,
      "new_path": "internal/ceres/block_sparse_matrix_test.cc"
    },
    {
      "type": "modify",
      "old_id": "f79b897e3c837607915c5b2655d9a46893c94fc0",
      "old_mode": 33188,
      "old_path": "internal/ceres/cgnr_solver.cc",
      "new_id": "99d53755b1057f92a832cac3c41f4d4713696e80",
      "new_mode": 33188,
      "new_path": "internal/ceres/cgnr_solver.cc"
    },
    {
      "type": "modify",
      "old_id": "9c78565996dbed5322f8037b14e2157c29f72d79",
      "old_mode": 33188,
      "old_path": "internal/ceres/compressed_row_sparse_matrix.cc",
      "new_id": "574b0c0221e67cf156055703951fc0940ec0e889",
      "new_mode": 33188,
      "new_path": "internal/ceres/compressed_row_sparse_matrix.cc"
    },
    {
      "type": "modify",
      "old_id": "1d1ac956ab268f2ff9d36d01d470bbdb2db295e3",
      "old_mode": 33188,
      "old_path": "internal/ceres/compressed_row_sparse_matrix.h",
      "new_id": "25800455a0d8f1113965b3b91e933f1ddd5afa41",
      "new_mode": 33188,
      "new_path": "internal/ceres/compressed_row_sparse_matrix.h"
    },
    {
      "type": "modify",
      "old_id": "0f1b9489028c1f7d964b45ff40f659cd52e3fef5",
      "old_mode": 33188,
      "old_path": "internal/ceres/compressed_row_sparse_matrix_test.cc",
      "new_id": "42f5498d0a2f50415711c17d177434edbe19b445",
      "new_mode": 33188,
      "new_path": "internal/ceres/compressed_row_sparse_matrix_test.cc"
    },
    {
      "type": "modify",
      "old_id": "6254d2cb37831a61fd075472384e180f2d776d8a",
      "old_mode": 33188,
      "old_path": "internal/ceres/conjugate_gradients_solver.h",
      "new_id": "93f9e25e91dffee407681feab1ddbd9eff6e3cfc",
      "new_mode": 33188,
      "new_path": "internal/ceres/conjugate_gradients_solver.h"
    },
    {
      "type": "modify",
      "old_id": "3324b52c9e173c45ed228e69810fc51b81ac77e6",
      "old_mode": 33188,
      "old_path": "internal/ceres/context_impl.h",
      "new_id": "d4bd436ac7e0ab13fc75c31f6f8afb94bd473f69",
      "new_mode": 33188,
      "new_path": "internal/ceres/context_impl.h"
    },
    {
      "type": "modify",
      "old_id": "f8abf13b84341fff4b79d6bcccb930fe05406b10",
      "old_mode": 33188,
      "old_path": "internal/ceres/cuda_buffer.h",
      "new_id": "dba1706878166c00f177c2fd2329f9e0cdc87b13",
      "new_mode": 33188,
      "new_path": "internal/ceres/cuda_buffer.h"
    },
    {
      "type": "modify",
      "old_id": "fbdc4b389ef21dd05c851889bcd64f0f01d60947",
      "old_mode": 33188,
      "old_path": "internal/ceres/cuda_kernels_test.cc",
      "new_id": "83b922d123d4a8f09675eb7984a7ba462a68631d",
      "new_mode": 33188,
      "new_path": "internal/ceres/cuda_kernels_test.cc"
    },
    {
      "type": "modify",
      "old_id": "e71546b86bece6a772ca511f4945ed026175886b",
      "old_mode": 33188,
      "old_path": "internal/ceres/dense_sparse_matrix.cc",
      "new_id": "67c3d2b5908589e3b1faff0ffe647aeca3f47bde",
      "new_mode": 33188,
      "new_path": "internal/ceres/dense_sparse_matrix.cc"
    },
    {
      "type": "modify",
      "old_id": "160a59133d106b0d1bde908601827ff2f8d24fa2",
      "old_mode": 33188,
      "old_path": "internal/ceres/dense_sparse_matrix.h",
      "new_id": "5fc71c20de700e05ff6a36ac4892ebfee0575faa",
      "new_mode": 33188,
      "new_path": "internal/ceres/dense_sparse_matrix.h"
    },
    {
      "type": "modify",
      "old_id": "6bce0b43799ed8ec1c347083f366c332c70e2e4c",
      "old_mode": 33188,
      "old_path": "internal/ceres/dense_sparse_matrix_test.cc",
      "new_id": "0ba9fc235d443e6b889d3a877706c37ddb8309d4",
      "new_mode": 33188,
      "new_path": "internal/ceres/dense_sparse_matrix_test.cc"
    },
    {
      "type": "modify",
      "old_id": "ac8c7d77976042d00e5d80b667871416c945c9ec",
      "old_mode": 33188,
      "old_path": "internal/ceres/dogleg_strategy.cc",
      "new_id": "0db57de1cc55590544ff6a2393128ad452d1c7ce",
      "new_mode": 33188,
      "new_path": "internal/ceres/dogleg_strategy.cc"
    },
    {
      "type": "modify",
      "old_id": "992d48c4a53b5a98747df1a665593dde14b3c15f",
      "old_mode": 33188,
      "old_path": "internal/ceres/dynamic_sparse_normal_cholesky_solver.cc",
      "new_id": "81cf933a0d6267e2bedba526e3ab00cb65d9591e",
      "new_mode": 33188,
      "new_path": "internal/ceres/dynamic_sparse_normal_cholesky_solver.cc"
    },
    {
      "type": "modify",
      "old_id": "f9ff44353da77b94d59ed34220b31475968caf52",
      "old_mode": 33188,
      "old_path": "internal/ceres/dynamic_sparse_normal_cholesky_solver_test.cc",
      "new_id": "8d66022ff50dcb8008318466329b417c3d296cb8",
      "new_mode": 33188,
      "new_path": "internal/ceres/dynamic_sparse_normal_cholesky_solver_test.cc"
    },
    {
      "type": "modify",
      "old_id": "7946a568b0bf3c42479760ec0de5134b00cbc3d0",
      "old_mode": 33188,
      "old_path": "internal/ceres/implicit_schur_complement.cc",
      "new_id": "751612f9c3bb81b81222cfb6e08cd1472fe1e5e4",
      "new_mode": 33188,
      "new_path": "internal/ceres/implicit_schur_complement.cc"
    },
    {
      "type": "modify",
      "old_id": "75e05a42e5d1794178ad2d149f9e2a054f143cc6",
      "old_mode": 33188,
      "old_path": "internal/ceres/implicit_schur_complement.h",
      "new_id": "8fcc309eee3377c3933eea2b57b761ccbe9cf3bd",
      "new_mode": 33188,
      "new_path": "internal/ceres/implicit_schur_complement.h"
    },
    {
      "type": "modify",
      "old_id": "baa381afb0eb4add7c42e8c2f6e7df10eb3cd126",
      "old_mode": 33188,
      "old_path": "internal/ceres/implicit_schur_complement_test.cc",
      "new_id": "0ebde31e96d21a46068bc98ed292b38fbc56a319",
      "new_mode": 33188,
      "new_path": "internal/ceres/implicit_schur_complement_test.cc"
    },
    {
      "type": "modify",
      "old_id": "90ff5114a3a729a549bfff2863c8469ac7dfe764",
      "old_mode": 33188,
      "old_path": "internal/ceres/iterative_refiner.cc",
      "new_id": "aaeefa332df7b471c4c73e3a6d3fc5f818b2090c",
      "new_mode": 33188,
      "new_path": "internal/ceres/iterative_refiner.cc"
    },
    {
      "type": "modify",
      "old_id": "9ea2340e52fe2f5ea9987056baf67f146d83f3b7",
      "old_mode": 33188,
      "old_path": "internal/ceres/iterative_refiner_test.cc",
      "new_id": "49e379e92481c786498793f1c415f38ff5f974d4",
      "new_mode": 33188,
      "new_path": "internal/ceres/iterative_refiner_test.cc"
    },
    {
      "type": "modify",
      "old_id": "e93d3e9078610a4d167c22b568dfeda64a0c00ba",
      "old_mode": 33188,
      "old_path": "internal/ceres/line_search_direction.cc",
      "new_id": "f14292fba55d72813c886224f0fdb0af0b2e0152",
      "new_mode": 33188,
      "new_path": "internal/ceres/line_search_direction.cc"
    },
    {
      "type": "modify",
      "old_id": "cab87e7aaa2479715090426db511423021efb5db",
      "old_mode": 33188,
      "old_path": "internal/ceres/linear_operator.h",
      "new_id": "8a1e902d23136538e592164292a4e9bd883af712",
      "new_mode": 33188,
      "new_path": "internal/ceres/linear_operator.h"
    },
    {
      "type": "modify",
      "old_id": "42827e2ac5c43c1ac06b57cb8001cd72ee4e4070",
      "old_mode": 33188,
      "old_path": "internal/ceres/low_rank_inverse_hessian.cc",
      "new_id": "c471844867890de156a996442ae428c30e00a9ef",
      "new_mode": 33188,
      "new_path": "internal/ceres/low_rank_inverse_hessian.cc"
    },
    {
      "type": "modify",
      "old_id": "de30f544bda67efa12d127230d06ac46f1fc91bf",
      "old_mode": 33188,
      "old_path": "internal/ceres/low_rank_inverse_hessian.h",
      "new_id": "878db81d44b90be936b62fd0ffba02090864341f",
      "new_mode": 33188,
      "new_path": "internal/ceres/low_rank_inverse_hessian.h"
    },
    {
      "type": "modify",
      "old_id": "13057203510f01c60899d317c3207e921a2cecf3",
      "old_mode": 33188,
      "old_path": "internal/ceres/partitioned_matrix_view.h",
      "new_id": "7fb1a095d7789476108cfec8303659fbf11832a2",
      "new_mode": 33188,
      "new_path": "internal/ceres/partitioned_matrix_view.h"
    },
    {
      "type": "modify",
      "old_id": "a33b86d86fabd6987ae78355f474b5307839c77a",
      "old_mode": 33188,
      "old_path": "internal/ceres/partitioned_matrix_view_impl.h",
      "new_id": "2150660629326ad7209b9ed443068c8d6ab5842e",
      "new_mode": 33188,
      "new_path": "internal/ceres/partitioned_matrix_view_impl.h"
    },
    {
      "type": "modify",
      "old_id": "e43e32f784201bac522486c517697c6d2a45a89c",
      "old_mode": 33188,
      "old_path": "internal/ceres/partitioned_matrix_view_test.cc",
      "new_id": "cb3dd141fb6f69d044bfa960cbdea4eee290f22a",
      "new_mode": 33188,
      "new_path": "internal/ceres/partitioned_matrix_view_test.cc"
    },
    {
      "type": "modify",
      "old_id": "391e1b5bcef9fd58d694d1d5fcad7d4916e38abe",
      "old_mode": 33188,
      "old_path": "internal/ceres/preconditioner.cc",
      "new_id": "33174dea5d22cc2a8191b86427ef21b794331dd4",
      "new_mode": 33188,
      "new_path": "internal/ceres/preconditioner.cc"
    },
    {
      "type": "modify",
      "old_id": "75613fb50ef60dcf6e41b1a776b3e7a8af3629af",
      "old_mode": 33188,
      "old_path": "internal/ceres/preconditioner.h",
      "new_id": "2d343bd43efb77a305345ad158f1f946ac713a8c",
      "new_mode": 33188,
      "new_path": "internal/ceres/preconditioner.h"
    },
    {
      "type": "modify",
      "old_id": "4e478373e0e5ad3f59b313aa177e013aa8560a08",
      "old_mode": 33188,
      "old_path": "internal/ceres/schur_complement_solver.cc",
      "new_id": "1f10ac27ade8b6887fcd2a00b61af0a602be2714",
      "new_mode": 33188,
      "new_path": "internal/ceres/schur_complement_solver.cc"
    },
    {
      "type": "modify",
      "old_id": "d452ba4967bc487c05ebd3f58e40177ba7bfba95",
      "old_mode": 33188,
      "old_path": "internal/ceres/schur_jacobi_preconditioner.cc",
      "new_id": "331792763cd0a1bc0def33904fb80bbc9086d44d",
      "new_mode": 33188,
      "new_path": "internal/ceres/schur_jacobi_preconditioner.cc"
    },
    {
      "type": "modify",
      "old_id": "76a7b3d8ddca5ddc5c7cff24d15967fdaadb244d",
      "old_mode": 33188,
      "old_path": "internal/ceres/schur_jacobi_preconditioner.h",
      "new_id": "ddf471c137ee1fe80beafebe3371022b5d7b05f9",
      "new_mode": 33188,
      "new_path": "internal/ceres/schur_jacobi_preconditioner.h"
    },
    {
      "type": "modify",
      "old_id": "9fe33a30fdae3140273aa3188a35faaeffe41f2b",
      "old_mode": 33188,
      "old_path": "internal/ceres/sparse_matrix.h",
      "new_id": "da6af184e9525628fce825be8fc8620c4776662e",
      "new_mode": 33188,
      "new_path": "internal/ceres/sparse_matrix.h"
    },
    {
      "type": "modify",
      "old_id": "949991b89c0892a2e8c6c2b5717b154d0b605425",
      "old_mode": 33188,
      "old_path": "internal/ceres/sparse_normal_cholesky_solver.cc",
      "new_id": "99205fa2c811169d1a4fc33b763978c7fc0ff865",
      "new_mode": 33188,
      "new_path": "internal/ceres/sparse_normal_cholesky_solver.cc"
    },
    {
      "type": "modify",
      "old_id": "b7d4a39656d05e9bf313ea04ceb18f6da99fa0af",
      "old_mode": 33188,
      "old_path": "internal/ceres/sparse_normal_cholesky_solver_test.cc",
      "new_id": "002b7076193754417357302d2f9f60aed456caf4",
      "new_mode": 33188,
      "new_path": "internal/ceres/sparse_normal_cholesky_solver_test.cc"
    },
    {
      "type": "modify",
      "old_id": "a22854599f9ecfd741224628e398327280ff8947",
      "old_mode": 33188,
      "old_path": "internal/ceres/subset_preconditioner.cc",
      "new_id": "5dc364f524c19d6e4372373eddc80ad2187004f3",
      "new_mode": 33188,
      "new_path": "internal/ceres/subset_preconditioner.cc"
    },
    {
      "type": "modify",
      "old_id": "1f1c6ec3aade49527cf4e81227fca65d676a0de2",
      "old_mode": 33188,
      "old_path": "internal/ceres/subset_preconditioner.h",
      "new_id": "7139ca650ad33a22381b01c6746e02b52038e79d",
      "new_mode": 33188,
      "new_path": "internal/ceres/subset_preconditioner.h"
    },
    {
      "type": "modify",
      "old_id": "2f5e044f4c0a476eb56861bd16e5c8ae3a75a0fa",
      "old_mode": 33188,
      "old_path": "internal/ceres/subset_preconditioner_test.cc",
      "new_id": "cd86695620c23158f7db9aea350e94ee3ff42cb5",
      "new_mode": 33188,
      "new_path": "internal/ceres/subset_preconditioner_test.cc"
    },
    {
      "type": "modify",
      "old_id": "b8f43adbd04dab745968cd7899bce4300a6af179",
      "old_mode": 33188,
      "old_path": "internal/ceres/triplet_sparse_matrix.cc",
      "new_id": "49d367a1fbb3b8a2f82925e15d0f66f56a111de4",
      "new_mode": 33188,
      "new_path": "internal/ceres/triplet_sparse_matrix.cc"
    },
    {
      "type": "modify",
      "old_id": "a2ba1f19897c81e5157c8c1ab73eaccf5e8ce2a4",
      "old_mode": 33188,
      "old_path": "internal/ceres/triplet_sparse_matrix.h",
      "new_id": "c9624556da291b1a6831094efeeb50b246f567b2",
      "new_mode": 33188,
      "new_path": "internal/ceres/triplet_sparse_matrix.h"
    },
    {
      "type": "modify",
      "old_id": "577d95990ad60efe5ef9254fdd7184f7e5791681",
      "old_mode": 33188,
      "old_path": "internal/ceres/triplet_sparse_matrix_test.cc",
      "new_id": "b41d9918092bb915831def288222eef78f0676c5",
      "new_mode": 33188,
      "new_path": "internal/ceres/triplet_sparse_matrix_test.cc"
    },
    {
      "type": "modify",
      "old_id": "739304ae72404fbd271ea181590fa1a0f0cd42a6",
      "old_mode": 33188,
      "old_path": "internal/ceres/trust_region_minimizer.cc",
      "new_id": "6693e6eae40cdb51db191fc23952e47d088680a4",
      "new_mode": 33188,
      "new_path": "internal/ceres/trust_region_minimizer.cc"
    },
    {
      "type": "modify",
      "old_id": "0a7b19f97e12f410bd33f02c8984357af3766b83",
      "old_mode": 33188,
      "old_path": "internal/ceres/visibility_based_preconditioner.cc",
      "new_id": "bdbe3c40a0d90a505f731dca080a3a975ecab68e",
      "new_mode": 33188,
      "new_path": "internal/ceres/visibility_based_preconditioner.cc"
    },
    {
      "type": "modify",
      "old_id": "39bdc9fea87d743ad652da813cae421881062f92",
      "old_mode": 33188,
      "old_path": "internal/ceres/visibility_based_preconditioner.h",
      "new_id": "f27eb9e5f15a9b8be0d370db46fc87fea3bde2ec",
      "new_mode": 33188,
      "new_path": "internal/ceres/visibility_based_preconditioner.h"
    },
    {
      "type": "modify",
      "old_id": "8e0d5fd70be445ab5d717fbefacb850a4e004824",
      "old_mode": 33188,
      "old_path": "internal/ceres/visibility_based_preconditioner_test.cc",
      "new_id": "4cf1dbe7cebd46bb973e3db0e9f59c5cf8fc2121",
      "new_mode": 33188,
      "new_path": "internal/ceres/visibility_based_preconditioner_test.cc"
    }
  ]
}
