Skip to content

Conversation

@petrelharp
Copy link
Collaborator

Probably we should not merge this and just wait for tskit 1.0.0; but we'll see if there's any issues.

@petrelharp
Copy link
Collaborator Author

Well this works, but how about let's just leave this open and I'll use it to merge in the official release when it comes.

@bhaller
Copy link
Contributor

bhaller commented Nov 29, 2025

Well this works, but how about let's just leave this open and I'll use it to merge in the official release when it comes.

OK, the time has come for that! :->

omit integrity check in compute_mutation_parents
@petrelharp petrelharp changed the title update to tskit 1.0.0b2 update to tskit 1.0.0 Nov 30, 2025
ret = tsk_table_collection_build_index(&output_tables, 0);
if (ret < 0) handle_error("tsk_table_collection_build_index", ret);
ret = tsk_table_collection_compute_mutation_parents(&output_tables, 0);
ret = tsk_table_collection_compute_mutation_parents(&output_tables, TSK_NO_CHECK_INTEGRITY);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's the motivation for this change? Does this simply preserve the pre-existing behavior (because tskit's default behavior changed), or will this change SLiM's behavior in some way?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well, from the CHANGELOG to 1.2.0:

Add the TSK_NO_CHECK_INTEGRITY option to tsk_table_collection_compute_mutation_parents to skip the integrity checks that are normally run when computing mutation parents. This is useful for speeding up the computation of mutation parents when the tree sequence is certainly known to be valid. (:user:benjeffery, :pr:3212).

So - this removes the "check integrity" check from this function, so in principle we might be less likely to catch an error; however, we have just checked integrity on the previous line in tsk_table_collection_build_index, so it's unnecessary.

if (ret < 0) handle_error("tsk_table_collection_build_index", ret);

ret = tsk_table_collection_compute_mutation_parents(tables_copy, 0);
ret = tsk_table_collection_compute_mutation_parents(tables_copy, TSK_NO_CHECK_INTEGRITY);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same question as above.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ditto

@bhaller
Copy link
Contributor

bhaller commented Nov 30, 2025

@petrelharp Had one question about this, see above. In addition to that: I'm expecting that tskit-dev/tskit#3306 will be fixed in the coming days, and to get that we'll need to merge tskit in again. Do you prefer that I merge tskit 1.0 here, and then merge whatever the following release is that has that addition as a separate PR? Or do you prefer to levae this PR unmerged for now, and then do a single merge later to get the addition? I'm fine either way; up to you since you're the one doing the work! :->

@petrelharp
Copy link
Collaborator Author

I guess I vote to merge this (pending checking about the question above), since it's cleaner.

@petrelharp
Copy link
Collaborator Author

Question - I think - resolved; merge away?

@bhaller bhaller merged commit ac19636 into MesserLab:master Dec 2, 2025
16 checks passed
@bhaller
Copy link
Contributor

bhaller commented Dec 2, 2025

Done! Thanks!

@bhaller bhaller added the trees related to tree-seq, tskit, etc. label Dec 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

trees related to tree-seq, tskit, etc.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants