Repository navigation
Labels
audience/nvda-devPR or issue is relevant to NVDA / Add-on developersPR or issue is relevant to NVDA / Add-on developersp2https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priorityhttps://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priorityrelease/blockingthis issue blocks the milestone releasethis issue blocks the milestone releaserelease/blocking-betasecuritytriagedHas been triaged, issue is waiting for implementation.Has been triaged, issue is waiting for implementation.
Milestone
Description
Related issues, PRs or discussions
What is the current state of the codebase?
NVDA uses pickle for some data persistance tasks.
Why are changes required?
Pickle is an inherently unsafe data persistance format, which allows arbitrary code execution.
What technical changes are required?
- Use a safe serialization format for add-on state #19559
- Remove pickle to JSON migration for add-ons state #19743
- Use a safe serialization format for update check state #19560
- Deprecate usage of pickle #19745
Are the proposed technical changes API breaking?
No. The format of NDA's configuration on-disk is considered to be an implementation detail and is not part of the API.
Are there potential risks or issues with the proposed implementation?
Unlikely. We do not need the power offered by the pickle format for any of our data persistance tasks.
Metadata
Metadata
Assignees
Labels
audience/nvda-devPR or issue is relevant to NVDA / Add-on developersPR or issue is relevant to NVDA / Add-on developersp2https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priorityhttps://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priorityrelease/blockingthis issue blocks the milestone releasethis issue blocks the milestone releaserelease/blocking-betasecuritytriagedHas been triaged, issue is waiting for implementation.Has been triaged, issue is waiting for implementation.
Activity