Comments (7)
I think this would be very handy, especially for people working with large tables.
from tskit.
Let's close this - I don't think we want to make any more changes to the semantics post 1.0.
from tskit.
We should consider whether we want to do this for 1.0, and if it's something that we'd need to introduce backward incompatible changes later to support. I've added it to the 1.0 milestone for now.
from tskit.
From an API perspective, what we need to enable this is a flag to say "transfer ownership of this table collection", where the tree sequence would tree the table collection at the end of it's lifetime. This would allow us to implement load
more efficiently.
Because we need to support this behaviour, the tables
parameter and struct member must remain non-const. So the change that we need to make is to drop the const
qualifier on tsk_treeseq_init.
from tskit.
I think this is done now @benjeffery?
from tskit.
Not completly as the issue talks about borrowed references. We have only implemented stealing the reference. If we think that's enough then this could still be closed.
from tskit.
I think a stolen reference is good enough. On the C side, managing memory safety of a tree sequence if a mutable table collection is "live" will be annoying. It may be a win to discourage such things.
from tskit.
Related Issues (20)
- Use reusable workflows across repos? HOT 2
- Error pip install tskit on Windows HOT 2
- Add node_is_sample array HOT 2
- TreeSequence.f2 is not symmetric with multiallelic sites HOT 3
- Bug assertion in `ts.allele_frequency_spectrum` HOT 8
- Folded AFS between branch and site modes differs by factor of two HOT 7
- edges lost after merging two trees HOT 20
- Codecov upload issues HOT 1
- keep_intervals() giving _tskit.LibraryError: Can't squash, flush, simplify or link ancestors... HOT 7
- Update GitHub upload/download artefacts
- Add XTable.drop_metadata HOT 1
- trees.c Compilation Error HOT 2
- Split large numbers in html/cli print out.
- Post release for 0.5.7 HOT 1
- Fixup tests for lshmm 0.0.6 HOT 7
- Fix tests for numpy 2.0 HOT 1
- Drop "benchmark" CI job?
- Pass a numpy array of booleans to python simplify? HOT 7
- Cannot pickle '_tskit.Tree' object HOT 3
- AFS folding (polarised=False) HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tskit.