dirstate: replace `update_parent_file_data` with simpler `update_parent` call

This make the dirstate API simpler.
16 jobs for topic/default/dirstate-item in 28 minutes and 11 seconds (queued for 11 seconds)
Status Job ID Name Coverage
  Tests
manual check-pytype-py3 #224708
allowed to fail manual
failed checks-py2 #224695

00:03:08

failed checks-py3 #224696

00:04:20

passed rust-cargo-test-py2 #224697

00:01:56

passed rust-cargo-test-py3 #224698

00:02:05

canceled test-py2 #224699

00:01:11

canceled test-py2-chg #224706

00:00:47

failed test-py2-pure #224701

00:27:49

canceled test-py2-rust #224703

00:01:01

canceled test-py3 #224700

00:01:13

canceled test-py3-chg #224707

00:00:40

failed test-py3-pure #224702

00:14:49

canceled test-py3-rhg #224705

00:00:56

canceled test-py3-rust #224704

00:00:59

manual windows-py3 #224709
windows allowed to fail manual
 
  Phabricator
skipped phabricator-refresh #224710
 
Name Stage Failure
failed
test-py3-pure Tests
Skipped test-status.t#dirstate-v2: missing feature: Using the Rust extensions
Skipped test-symlinks.t#dirstate-v1-tree: missing feature: Using the Rust extensions
Skipped test-symlinks.t#dirstate-v2: missing feature: Using the Rust extensions
Skipped test-verify-repo-operations.py: missing feature: allow slow tests (use --allow-slow-tests)
Failed test-import-merge.t: output changed
# Ran 904 tests, 80 skipped, 1 failed.
python hash seed: 320719320
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
checks-py3 Tests
  0.266  27.309 278.680   8.830  27.043   test-check-format.t
0.014 28.081 298.700 9.200 28.067 test-check-module-imports.t
0.033 28.706 315.770 9.390 28.673 test-check-config.t
0.000 67.357 365.660 10.060 67.356 test-check-code.t
0.041 68.120 415.170 10.500 68.080 test-check-pyflakes.t
0.150 97.710 832.850 32.030 97.560 test-check-cargo-lock.t
0.130 116.255 926.990 33.790 116.125 test-check-pylint.t
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
test-py2-pure Tests
Skipped test-status.t#dirstate-v2: missing feature: Using the Rust extensions
Skipped test-symlinks.t#dirstate-v1-tree: missing feature: Using the Rust extensions
Skipped test-symlinks.t#dirstate-v2: missing feature: Using the Rust extensions
Skipped test-verify-repo-operations.py: missing feature: allow slow tests (use --allow-slow-tests)
Failed test-import-merge.t: output changed
# Ran 910 tests, 74 skipped, 1 failed.
python hash seed: 1499920486
Cleaning up file based variables
ERROR: Job failed: exit code 1
failed
checks-py2 Tests
  0.004  19.926  29.450  16.050  19.922   test-check-module-imports.t
0.006 26.491 43.440 16.680 26.485 test-check-config.t
0.022 27.243 225.370 20.830 27.222 test-check-format.t
0.007 33.653 246.890 21.690 33.646 test-check-pyflakes.t
0.001 37.859 273.300 22.490 37.858 test-check-code.t
0.014 63.760 321.360 23.910 63.746 test-check-pylint.t
0.018 73.960 594.770 44.620 73.943 test-check-cargo-lock.t
Cleaning up file based variables
ERROR: Job failed: exit code 1