hydrusnetwork / hydrusnetwork/hydrus

Support more filetypes / arbitrary file import

Open
#261 26 comments 36 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature-request system:file-management
Dominant language
Python
Stars
3.2k
Forks
207
PR merge metrics
No merged PRs in 30d

Description

Some screenshots from the discord

Since PSD files are already allowed, there is probably no reason not to allow these:
image
image
image
Same, .wav files are not very different from mp3 files:
image
You get the idea:
image

The actual issue

Since this gets requested a lot, it is probably worth discussing arbitrary file imports (i.e. allowing any file to be imported, without checking if it's "allowed" first):
image
This is potentially dangerous though, since the act of opening a file sometimes changes the hash of the file. (for example: when opening a .epub file with calibre, it adds/changes the META-INF/calibre-bookmarks.txt file inside the epub/zip.
This would break hydrus' hash-based system.

So: please discuss: "should hydrus prevent users from importing such files?"

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No file, test, or entry point is named. Start by reviewing the arbitrary-import proposal and the EPUB/ZIP hash-integrity example, then trace the existing import and hashing behavior. Done requires an agreed approach for unsupported files that does not undermine the hash-based system.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
backend, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.