Skip to content

Update CSV adapter - #748

Open
AndrewSasmito wants to merge 13 commits into
Point72:mainfrom
AndrewSasmito:csv-adapter
Open

Update CSV adapter#748
AndrewSasmito wants to merge 13 commits into
Point72:mainfrom
AndrewSasmito:csv-adapter

Conversation

@AndrewSasmito

@AndrewSasmito AndrewSasmito commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

Closes #259.

Summary

Rewrite the CSV adapter to use a C++ engine rather than pure Python. This new implementation also allows the 'symbol_column' parameter to be optional, allowing for greater flexibility than the original implementation.

Limitations

Initial current implementation is with basic C++, hopefully we can do the following:

  • Potentially add more speedups/optimizations if needed
  • Rewrite the wiki since the Python implementation has changed
  • Currently does not support more than one date time column

Signed-off-by: Andrew Sasmito <asasmito1920@gmail.com>

Refactor CsvInputAdapterManager for improved clarity

Add new fields and methods to CsvInputAdapterManager

Fix error
Signed-off-by: Andrew Sasmito <asasmito1920@gmail.com>
Signed-off-by: Andrew Sasmito <asasmito1920@gmail.com>
Signed-off-by: Andrew Sasmito <asasmito1920@gmail.com>
Signed-off-by: Andrew Sasmito <asasmito1920@gmail.com>
Signed-off-by: Andrew Sasmito <asasmito1920@gmail.com>
Comment thread cpp/csp/adapters/csv/CsvInputAdapterManager.cpp Outdated
Comment thread cpp/cmake/modules/FindDepsCsvAdapter.cmake

- **line 3**: this is where the instance of an adapter *--impl--* registers itself with the `CSVReaderImpl`.
- **line 6+**: this is where we define `CSVReadAdapter`, the *--graph--* time representation of a CSV adapter, returned from `CSVReader.subscribe`
TODO

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

We definitely want to keep an example of this

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

For sure, I will try rewriting the docs right before we merge in case changes are made during review (which might require another rewrite).

Comment thread csp/tests/adapters/test_csv.py
Signed-off-by: Andrew Sasmito <asasmito1920@gmail.com>
Signed-off-by: Andrew Sasmito <asasmito1920@gmail.com>
@robambalu
robambalu marked this pull request as draft August 14, 2026 15:06
@timkpaine timkpaine added type: feature Issues and PRs related to new features lang: c++ Issues and PRs related to the C++ codebase lang: python Issues and PRs related to the Python codebase adapter: general Issues and PRs related to input/output adapters in general part: build Issues and PRs related to the build process labels Aug 14, 2026
AndrewSasmito and others added 2 commits August 14, 2026 19:44
Signed-off-by: Andrew Sasmito <asasmito1920@gmail.com>
@AndrewSasmito
AndrewSasmito force-pushed the csv-adapter branch 2 times, most recently from 89ead06 to 33774fc Compare August 17, 2026 00:47
Signed-off-by: Andrew Sasmito <asasmito1920@gmail.com>
@AndrewSasmito
AndrewSasmito marked this pull request as ready for review August 17, 2026 17:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

adapter: general Issues and PRs related to input/output adapters in general lang: c++ Issues and PRs related to the C++ codebase lang: python Issues and PRs related to the Python codebase part: build Issues and PRs related to the build process type: feature Issues and PRs related to new features

Projects

None yet

Development

Successfully merging this pull request may close these issues.

CSV adapter difficult to use and not very flexible

3 participants