\[ y'(x)=\frac {y(x) (y(x)+1)}{x (x y(x)-y(x)-1)} \] ✓ Mathematica : cpu = 1.07857 (sec), leaf count = 66
DSolve[Derivative[1][y][x] == (y[x]*(1 + y[x]))/(x*(-1 - y[x] + x*y[x])),y[x],x]
\[\text {Solve}\left [\frac {2^{2/3} \left (x y(x) \left (-\log \left (\frac {x y(x)}{(x-1) y(x)-1}\right )+\log \left (\frac {y(x)+1}{-x y(x)+y(x)+1}\right )+\log (x)+1\right )-1\right )}{9 x y(x)}=c_1,y(x)\right ]\] ✓ Maple : cpu = 0.134 (sec), leaf count = 26
dsolve(diff(y(x),x) = y(x)*(1+y(x))/x/(-y(x)-1+x*y(x)),y(x))
\[y \left (x \right ) = -\frac {1}{x \operatorname {LambertW}\left (\frac {{\mathrm e}^{-\frac {1}{x}}}{x c_{1}}\right )+1}\]