Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor ASF Celix file utils and FILE* usage to work with libuv Stream Abstraction #771

Open
2 tasks
pnoltes opened this issue Oct 6, 2024 · 0 comments
Open
2 tasks
Labels
component/framework Categorizes an issue or PR relevant to the framework. component/utils Categorizes an issue or PR relevant to the utils. kind/api-change Categorizes issue or PR as related to adding, removing, or otherwise changing an API kind/improvement Categorizes issue or PR as related to improvements.
Milestone

Comments

@pnoltes
Copy link
Contributor

pnoltes commented Oct 6, 2024

Introduction

Refactor file utilities that currently use FILE* to use libuv's file and stream abstractions (uv_fs_t, uv_file). This ensures better cross-platform file handling.

Steps

  • Replace FILE* usage in the public api with uv_file

This includes the celix_filter.h, celix_properties.g, celix_bundle context.h headers and many more.

  • Replace FILE* usage in the internal code

This includes usage of fprintf, open_memstream, etc.

@pnoltes pnoltes added kind/api-change Categorizes issue or PR as related to adding, removing, or otherwise changing an API component/framework Categorizes an issue or PR relevant to the framework. component/utils Categorizes an issue or PR relevant to the utils. kind/improvement Categorizes issue or PR as related to improvements. labels Oct 6, 2024
@pnoltes pnoltes added this to the 3.0.0 milestone Oct 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component/framework Categorizes an issue or PR relevant to the framework. component/utils Categorizes an issue or PR relevant to the utils. kind/api-change Categorizes issue or PR as related to adding, removing, or otherwise changing an API kind/improvement Categorizes issue or PR as related to improvements.
Projects
None yet
Development

No branches or pull requests

1 participant