code: public static Version from(int major, int minor, int patch, String preRelease) {
          return new Version(buildSemVer(major, minor, patch, preRelease, null));
      }
docs: Build valid {@link Version} from major, minor, and patch version ("X.Y.Z").
  
  @param major      The major version component.
  @param minor      The minor version component.
  @param patch      The patch version component.
  @param preRelease The pre-release version component.
  @return The {@link Version} instance built from the given parameters.