code: def test_require_preserve_order(ray_start_regular_shared):
      ds = ray.data.range(100).map_batches(lambda x: x).sort()
      assert ds._plan.require_preserve_order()
      ds2 = ray.data.range(100).map_batches(lambda x: x).zip(ds)
      assert ds2._plan.require_preserve_order()
      ds3 = ray.data.range(100).map_batches(lambda x: x).repartition(10)
      assert not ds3._plan.require_preserve_order()
  
imports: import os
  from typing import List
  import numpy
  import pandas
  import pytest
  import ray
  from ray._private.internal_api import memory_summary
  from ray.data import Dataset
  from ray.data.block import BlockMetadata
  from ray.data.context import DataContext
  from ray.data.datasource import Datasource, ReadTask
  from ray.data.datasource.csv_datasource import CSVDatasource
  from ray.data.tests.util import column_udf, extract_values
  from ray.tests.conftest import *
label_desc: Use image node_id 13 for calling a global function with example usage: test_require_preserve_order(ray_start_regular_shared) without return types