nodeSolidServer / nodeSolidServer/node-solid-server

URI encoding for Windows OS

Open
#1,542 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
1.8k
Forks
308
PR merge metrics
No merged PRs in 30d

Description

@timbl @angelo-v
The following PR in 2017 rejects the use of : | / in POST. I suppose it was to preserve the possibility to use NSS on windows.
https://github.com/solid/node-solid-server/commit/5bba6c931fe0b319b6b350b8338b6e144b0b67fa#diff-98a11be785b8100aab3a553eed0e3656a235f06463d2979fd08bafcdf503abdf

      slug = decodeURIComponent(slug)
      if (slug.match(/\/|\||:/)) {
        throw error(400, 'The name of new file POSTed may not contain : | or /')
      }

Using longChat in chat With Me encounters some problem because this control is not applied on PUT, when creating intermediate folders.
see https://github.com/solid/chat-pane/issues/51

I suppose we need some coherence, what is your position :

  1. remove the control in POST
  2. add the control in all write functions including PUT PATCH (filename and intermediate containers)

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

Start by reviewing commit 5bba6c931fe0b319b6b350b8338b6e144b0b67fa and the POST, PUT, and PATCH write paths, then compare the longChat failure described in solid/chat-pane#51. Done means the handling of ':', '|', and '/' is coherent for POST, PUT, PATCH, filenames, and intermediate containers, with the chosen behavior documented or covered by the relevant tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, node.js
Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.