├── .gitattributes ├── .github └── workflows │ └── deploy.yml ├── .gitignore ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE.md ├── README.md ├── fetch.bs ├── out └── server.ts └── w3c.json /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto 2 | *.bs diff=html linguist-language=HTML 3 | -------------------------------------------------------------------------------- /.github/workflows/deploy.yml: -------------------------------------------------------------------------------- 1 | name: Deploy 2 | on: [push] 3 | 4 | jobs: 5 | deploy: 6 | name: Deploy 7 | runs-on: ubuntu-latest 8 | permissions: 9 | id-token: write 10 | contents: read 11 | 12 | steps: 13 | - name: Clone repository 14 | uses: actions/checkout@v2 15 | 16 | - name: Build spec 17 | run: | 18 | mkdir -p out 19 | curl --retry 2 --fail https://api.csswg.org/bikeshed/ --output out/index.html --header "Accept: text/plain, text/html" -F die-on=fatal -F file=@"fetch.bs" 20 | 21 | - name: Upload to Deno Deploy 22 | uses: denoland/deployctl@v1 23 | with: 24 | project: "wintercg-fetch" 25 | entrypoint: ./server.ts 26 | root: out/ 27 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /fetch.spec.whatwg.org/ 2 | /deploy.sh 3 | /fetch.html 4 | -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | # Code of Conduct 2 | 3 | All documentation, code and communication under this repository are covered by 4 | the 5 | [W3C Code of Ethics and Professional Conduct](https://www.w3.org/Consortium/cepc/). 6 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Fetch spec 2 | 3 | ## Building the spec 4 | 5 | To build the spec locally first install bikeshed: 6 | 7 | ```sh 8 | pip3 install bikeshed && bikeshed update 9 | ``` 10 | 11 | Then to build the spec (index.bs) into HTML (index.html), run one of the below 12 | commands: 13 | 14 | ```sh 15 | bikeshed spec # build once 16 | 17 | # or 18 | 19 | bikeshed watch # rebuild on changes 20 | ``` 21 | 22 | ## Formatting 23 | 24 | Use a column width of 100 characters. 25 | 26 | Do not use newlines inside "inline" elements, even if that means exceeding the 27 | column width requirement. 28 | 29 | ```html 30 |
  • Execute 31 | set response's CSP list 32 | on response. CSP 33 | ``` 34 | 35 | is okay and 36 | 37 | ```html 38 |

  • Execute 39 | set response's CSP 40 | list on response. CSP 41 | ``` 42 | 43 | is not. 44 | 45 | Using newlines between "inline" element tag names and their content is also 46 | forbidden. (This actually alters the content, by adding spaces.) That is 47 | 48 | ```html 49 | token 50 | ``` 51 | 52 | is fine and 53 | 54 | ```html 55 | token 56 | 57 | ``` 58 | 59 | is not. 60 | 61 | An `

  • ` element always has a `

    ` element inside it, unless it's a child of 62 | `