Comments (9)
After 1.0.9 could come 1.0.10.
Your suggestion looks good, but I have another suggestion. I think an intermediate point between what we have at the moment and your suggested 2.0.0
is a version that's using typed arrays and more optimized JavaScript, but still does not use C++. That would be 2.0.0
, with the C++ version likely being 3.0.0
.
Another thing to consider is some kind of bleeding-edge fork or branch. I'm thinking that SIMD would provide very large performance improvements, and be ready for production without much effort, but only be ready on some particular platforms.
from vectorious.
For the meantime, where do we stand with version numbers, and deploying recent changes to npm?
from vectorious.
I added two milestones (2.0.0 and 3.0.0) to keep better track of issues.
Maybe we could have some sort of system, like x.y.z
, where x
is breaking API changes, y
is major optimizations or API additions and z
is small bug fixes or minor improvements.
I seriously don't know, versions confuse me. Maybe you have a better system? :)
from vectorious.
What you have described is pretty much the the 'semantic versioning' or 'semver' system. I think that putting breaking API changes into the major version number makes the most sense.
Also, I think large architectural changes would merit another version number. Arguably Typed Arrays would change the API or it's maybe compatibility, so I think that changing to Typed Arrays would warrant a major version too.
Basically I think 2.0.0
should contain the recent fixes and optimizations, and be released relatively soon.
from vectorious.
Ok, so you're suggesting we introduce the recent optimizations in 2.0.0
and let 3.0.0
be typed arrays and 4.0.0
C/C++ bindings?
from vectorious.
Yes, I think that's a good sequence to plan for. However, if for some reason we think it's worth introducing an API change in the meantime let's not be too rigid about sticking to that versioning. I kind-of doubt that will happen before 3.0.0
but I'm mentioning it anyway.
The C++ bindings seem like quite a big challenge. I don't know how long it will take. However, version 4.0.0
having the C++ bindings looks like a sensible goal at this point.
Let's also make Version 2.0.0
fully / much better documented before it gets released.
from vectorious.
Agreed.
from vectorious.
We now have milestones for versions 2.0.0
, 3.0.0
and 4.0.0
and we have a pretty good understanding of how to work, so I consider this issue resolved at least for now.
from vectorious.
I was getting annoyed by the milestones not showing in order when displayed, so I set some due dates, giving far more than enough time. Then I think we should bring the due dates forward once we know what a release schedule actually is.
from vectorious.
Related Issues (20)
- Write migration guide for version 5 -> 6
- I'm confused about the transpose of a matrix. HOT 4
- Update copy method to copy underlying data into c-contiguous order
- Add more examples
- Add usage guides/tutorials
- Use files property instead of .npmignore
- Split up NDIter and NDMultiIter into separate files
- Add benchmarks to iterators
- Matrix multiply ignores strides
- SIMD support HOT 2
- will support numpy's numpy.pad function? HOT 1
- Bypass coordinate counting in single iterator if data is C-contiguous
- Implement astype(dtype: DType) for simple type casting
- Support constructing array from JSON
- CodeClimate test reporter ID can be safely put in CI.yml HOT 1
- blas `axpy` test is not meaningful HOT 2
- Docs website is down HOT 1
- Iteration is not usable HOT 6
- Remove old docs HOT 1
- Can't resolve nlapack, nblas and util in node_modules HOT 9
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 vectorious.