Skip to content
New issue

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

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

Already on GitHub? # to your account

Adam's list of Data Liberation wishes and ideas #1957

Open
adamziel opened this issue Oct 29, 2024 · 1 comment
Open

Adam's list of Data Liberation wishes and ideas #1957

adamziel opened this issue Oct 29, 2024 · 1 comment
Assignees

Comments

@adamziel
Copy link
Collaborator

adamziel commented Oct 29, 2024

Related to #1894. Here's my private note I'm maintaining as a public issue for transparency and to enable discussion.

Data storage backends

  • Git
  • SQLite
  • In memory
  • Google Drive
  • Local filesystem
  • GitHub issues (manage issues in WP/Block editor)

Static file editor

  • Open and edit local files
  • Open on mobile to edit your notes
  • Drag&drop files in and out of the editor
  • Rename a file to change the format it's stored in

Importing

Resource quotas

  • Memory quota
  • Disk space quota
  • Max attachment size
  • Max requests per domain per minute
  • Max download retries
  • wp_suspend_cache_invalidation() before the import
  • Cleanup stale resources, like partial downloads

Security

  • Disable KSES to prevent messing up post contents
  • Check remote IP addresses and domains before requesting
  • Pin IPs to prevent dns rebinding attack

Extensibility

  • Custom frontmatter filter
  • Pre-filter any entity before importing it
  • Pre-filter any asset URL before requesting it
  • Post-filter downloaded assets
  • Filter the local filename of any created attachment

Streams

  • Let's lower the default chunk size in WP_File_Byte_Stream to 100 bytes to overexpose ourselves to streaming issues. Then, once it matures, let's increase it to a decently sized number. I'm not sure how to choose one – let's read up on PHP and linux mailing lists to figure out how these projects chose their defaults.
@brandonpayton
Copy link
Member

brandonpayton commented Dec 2, 2024

Here's my private note I'm maintaining as a public issue for transparency and to enable discussion.

This is a good example to the rest of us or at least to me :)

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
Status: Inbox
Development

No branches or pull requests

2 participants