[Feat][Java] Recording gap between C++ and Java library
Is your feature request related to a problem? Please describe. Now, our Java library rely on C++ library. But with iteration of C++ library, there are some gap between those two library.
Recording these gap will help Java developers to fit these changes.
Recording tamplate
# Essentially describing the main change of the feature in C++
More detals.
---
- Is compatible with Java SDK now: yes/no
- The earliest released(or to be released) C++ library's version with this feature: v x.x.x
- Related PR:
- [ ] Mark as implemented
Support filter push down
See PR.
- Is compatible with Java SDK now: yes
- The earliest released(or to be released) C++ library's version with this feature: v 0.7.0
- Related PR: #178
- [ ] Mark as implemented
Use inherit to implement EdgesCollection
To fit this change:
- Remove 4 supper classes of EdgesCollection;
- Remove
createfunction in EdgesCollection; - Write a new factory function in
util/GrapharStaticFunctions.javato create EdgesCollection, which mapsConstructEdgesCollectionin C++; - Add annotations for EdgesCollection:
- For class:
@FFIGen@FFITypeAlias@CXXHead - For return objects:
@CXXReferenceor@CXXValue
- For class:
- Modify related usage in test.
- Is compatible with Java SDK now: no
- The earliest released(or to be released) C++ library's version with this feature: v 0.10.0
- Related PR: #238
- [x] Mark as implemented
Add internal id column to vertex payload file
Remove one function and modify usage in test
- Is compatible with Java SDK now: no
- The earliest released(or to be released) C++ library's version with this feature: v 0.10.0
- Related PR: #264
- [x] Mark as implemented
Refactor the C++ SDK with forward declaration and shared ptr
The main point that may affect Java SDK is using std::shard_ptr to manage info classes, thus the usage and parameters about info classes should have corresponding changes.
Additionally, it also relates to problems concerning memory management #285 , so we should design more for Java SDK about memory management.
- Is compatible with Java SDK now: no
- The earliest released(or to be released) C++ library's version with this feature: v 0.11.0
- Related PR: #290
- [ ] Mark as implemented