Segmentation.find_boundaries: different results for different platforms

I asked my question on stackoverflow, but did not get any answer so far (https://stackoverflow.com/questions/61015295/different-results-for-segmentation-find-boundaries-for-different-platforms)

The problem is that code

import numpy as np

import skimage.segmentation as segmentation

source = np.array([
    [0, 0, 0, 0, 0, 0, 0, 0],
    [0, 1, 1, 1, 1, 1, 1, 0],
    [0, 0, 0, 0, 0, 0, 0, 0]
])

contour = segmentation.find_boundaries(source, connectivity=1, mode='outer', background=0)

print(contour.astype(int))

gives different results on the different platforms.

The first (and right result) on Win10, python 3.6.4, scikit-image==0.15.0, scipy==1.3.1 is
[[0 1 1 1 1 1 1 0]
[1 0 0 0 0 0 0 1]
[0 1 1 1 1 1 1 0]]

But when testing it on Microsofr DevAzure (linux – Python 3.6.10, pytest-5.4.1, py-1.8.1, pluggy-0.13.1)(https://dev.azure.com/vovkvv/Test%20boundaries/_build/results?buildId=30&view=logs&j=19c563d8-3dcd-57d1-cd5e-9dd946b0a29b&t=10ebb82f-a000-5f8e-b96f-1ffc81828e7d)
the result is:

[[0 1 1 1 1 1 1 0]
 [1 1 0 0 0 0 1 1]
 [0 1 1 1 1 1 1 0]]

I wonder what can be the reason

I checked all available virtual machines for DevAzure and found out that
windows-2019, vs2017-win2016 - give right (in my opinion) result
and
ubuntu-18.04, ubuntu-16.04, macOS-10.14, macOS-10.15 - give wrong result.

So, it seems this problem is not appeared only on windows platforms.

So, it is a bug: https://github.com/scikit-image/scikit-image/issues/4558

I use
contour = segmentation.find_boundaries(source.astype(numpy.uint8), connectivity=1, mode='outer', background=0)
to omit it.