Question: I want to group the array of objects based on the key and concat all the grouped objects into a single array. GroupBy based on the id

example,

**payload**

```
[
  {
    id: 1,
    name: 'a'
  },
  {
    id: 1,
    name: 'b'
  },
  {
    id: 1,
    name: 'c'
  },
  {
    id: 2,
    name: 'b'
  },
  {
    id: 2,
    name: 'c'
  }
]

```

**expected response**

```
[
  [
    {
      id: 1,
      name: 'a'
    },
    {
      id: 1,
      name: 'b'
    },
    {
      id: 1,
      name: 'c'
    }
  ],
  [
    {
      id: 2,
      name: 'b'
    },
    {
      id: 2,
      name: 'c'
    }
  ]
]

```

All the matched elements are in the same array and all the arrays should be in a single array.

Answer: 
I got a similar issue while compiling ros noetic on my Fedora. It was able to find `Boost 1.76.0` so I thought the issue should be with the python component. I guess it was not able to find the right `libboost_python` version. So when I checked for the library I found it at this location: `/usr/lib64/libboost_python310.so`.
So I updated the `cv_bridge/CMakeLists.txt` to specifically use 3.10 version :

```
if(NOT ANDROID)
  find_package(PythonLibs)

  if(PYTHONLIBS_VERSION_STRING VERSION_LESS "3.8")
    # Debian Buster
    find_package(Boost REQUIRED python37)
  else()
    # Ubuntu Focal

    # Because I am using python 3.10 I updated
    # this line. If you are using a version less
    # than 3.8, then update the previous line

    # Updated line
    find_package(Boost REQUIRED python310)
  endif()
else()
find_package(Boost REQUIRED)
endif()

```

Setting it to specifically find the 3.10 version fixed the issue and I was able to compile.

EDIT:
Didn't realize that the question was for Windows Platform but this answer may still help
I had the same problem. I tried to give the lib and include folders explicitly to cmake, so as the library itself and I also tried to rename libboost\_python37-vc143-mt-x64-1\_78.lib to libboost\_python3.lib but non of these worked.

What worked was to simply providing the root to cmake:

```
cmake -DBOOST_ROOT=C:\\Boost ..

```

in my case `C:\\Boost` contains the `lib` and `ìnclude` folders that I created using:

```
.\b2 --with-python -j16 --prefix=C:\Boost --libdir=C:\Boost\lib --includedir=C:\Boost\include install

```