Skip to content

Commit

Permalink
Meta: update repository files
Browse files Browse the repository at this point in the history
See https://github.com/whatwg/spec-factory for details.

(Note that READMEEND.md is a locally maintained addition that is merged into README.md by spec-factory.)
  • Loading branch information
annevk committed Sep 27, 2023
1 parent 3e8cd02 commit 1f20347
Show file tree
Hide file tree
Showing 7 changed files with 140 additions and 32 deletions.
17 changes: 17 additions & 0 deletions .github/ISSUE_TEMPLATE/0-new-issue.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: New issue
description: File a new issue against the URL Standard.
body:
- type: markdown
attributes:
value: |
Before filling out this form, please familiarize yourself with the [Code of Conduct](https://whatwg.org/code-of-conduct). You might also find the [FAQ](https://whatwg.org/faq) and [Working Mode](https://whatwg.org/working-mode) useful.
If at any point you have questions, please reach out to us on [Chat](https://whatwg.org/chat).
- type: textarea
attributes:
label: "What is the issue with the URL Standard?"
validations:
required: true
- type: markdown
attributes:
value: "Thank you for taking the time to improve the URL Standard!"
27 changes: 27 additions & 0 deletions .github/ISSUE_TEMPLATE/1-new-feature.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: New feature
description: Request a new feature in the URL Standard.
labels: ["addition/proposal", "needs implementer interest"]
body:
- type: markdown
attributes:
value: |
Before filling out this form, please familiarize yourself with the [Code of Conduct](https://whatwg.org/code-of-conduct), [FAQ](https://whatwg.org/faq), and [Working Mode](https://whatwg.org/working-mode). They help with setting expectations and making sure you know what is required. The FAQ ["How should I go about proposing new features to WHATWG standards?"](https://whatwg.org/faq#adding-new-features) is especially relevant.
If at any point you have questions, please reach out to us on [Chat](https://whatwg.org/chat).
- type: textarea
attributes:
label: "What problem are you trying to solve?"
validations:
required: true
- type: textarea
attributes:
label: "What solutions exist today?"
- type: textarea
attributes:
label: "How would you solve it?"
- type: textarea
attributes:
label: "Anything else?"
- type: markdown
attributes:
value: "Thank you for taking the time to improve the URL Standard!"
8 changes: 8 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
blank_issues_enabled: false
contact_links:
- name: Chat
url: https://whatwg.org/chat
about: Please do reach out with questions and feedback!
- name: Stack Overflow
url: https://stackoverflow.com/
about: If you're having trouble building a web page, this is not the right repository. Consider asking your question on Stack Overflow instead.
7 changes: 3 additions & 4 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,14 @@ on:
jobs:
build:
name: Build
runs-on: ubuntu-20.04
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 2
# Note: `python` will also be this version, which various scripts depend on.
- uses: actions/setup-python@v3
- uses: actions/setup-python@v4
with:
python-version: "3.10"
python-version: "3.11"
# Note: `make deploy` will do a deploy dry run on PRs.
- run: make deploy
env:
Expand Down
5 changes: 4 additions & 1 deletion PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,21 @@
<!--
Thank you for contributing to the URL Standard! Please describe the change you are making and complete the checklist below if your change is not editorial.
When editing this comment after the PR is created, check that PR-Preview doesn't overwrite your changes.
If you think your PR is ready to land, please double-check that the build is passing and the checklist is complete before pinging.
-->

- [ ] At least two implementers are interested (and none opposed):
*
*
- [ ] [Tests](https://github.com/web-platform-tests/wpt) are written and can be reviewed and commented upon at:
*
* <!-- If these tests are tentative, link a PR to make them non-tentative. -->
- [ ] [Implementation bugs](https://github.com/whatwg/meta/blob/main/MAINTAINERS.md#handling-pull-requests) are filed:
* Chromium: …
* Gecko: …
* WebKit: …
* Deno: …
* Node.js: …
- [ ] [MDN issue](https://github.com/whatwg/meta/blob/main/MAINTAINERS.md#handling-pull-requests) is filed: …
- [ ] The top of this comment includes a [clear commit message](https://github.com/whatwg/meta/blob/main/COMMITTING.md) to use. <!-- If you created this PR from a single commit, Github copied its message. Otherwise, you need to add a commit message yourself. -->

(See [WHATWG Working Mode: Changes](https://whatwg.org/working-mode#changes) for more details.)
95 changes: 68 additions & 27 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,47 +2,88 @@ This repository hosts the [URL Standard](https://url.spec.whatwg.org/).

## Code of conduct

We are committed to providing a friendly, safe, and welcoming environment for all. Please read and
respect the [WHATWG Code of Conduct](https://whatwg.org/code-of-conduct).
We are committed to providing a friendly, safe, and welcoming environment for all. Please read and respect the [Code of Conduct](https://whatwg.org/code-of-conduct).

## Contribution opportunities

Folks notice minor and larger issues with the URL Standard all the time and we'd love your help
fixing those. Pull requests for typographical and grammar errors are also most welcome.
Folks notice minor and larger issues with the URL Standard all the time and we'd love your help fixing those. Pull requests for typographical and grammar errors are also most welcome.

We'd be happy to mentor you through this process. If you're interested and need help getting
started, leave a comment on the issue or ask around [on IRC](https://whatwg.org/irc).
Issues labeled ["good first issue"](https://github.com/whatwg/url/labels/good%20first%20issue) are a good place to get a taste for editing the URL Standard. Note that we don't assign issues and there's no reason to ask for availability either, just provide a pull request.

## Pull requests
If you are thinking of suggesting a new feature, read through the [FAQ](https://whatwg.org/faq) and [Working Mode](https://whatwg.org/working-mode) documents to get yourself familiarized with the process.

In short, change `url.bs` and submit your patch, with a
[good commit message](https://github.com/whatwg/meta/blob/main/COMMITTING.md). Consider
reading through the [WHATWG FAQ](https://whatwg.org/faq) if you are new here.
We'd be happy to help you with all of this [on Chat](https://whatwg.org/chat).

If your patch makes normative (behavioral) changes, then
[tests](https://github.com/web-platform-tests/wpt) and the
[jsdom/whatwg-url](https://github.com/jsdom/whatwg-url) implementation will need to be updated as
well (see "Tests and implementations" below). Not all of this is necessarily on you.
## Pull requests

Please add your name to the Acknowledgments section in your first pull request, even for trivial
fixes. The names are sorted lexicographically.
In short, change `url.bs` and submit your patch, with a [good commit message](https://github.com/whatwg/meta/blob/main/COMMITTING.md).

## Building "locally"
Please add your name to the Acknowledgments section in your first pull request, even for trivial fixes. The names are sorted lexicographically.

For quick local iteration, run `make`. To verify your changes locally, run `make deploy`. See more
in the
[WHATWG Contributor Guidelines](https://github.com/whatwg/meta/blob/main/CONTRIBUTING.md#building).
To ensure your patch meets all the necessary requirements, please also see the [Contributor Guidelines](https://github.com/whatwg/meta/blob/main/CONTRIBUTING.md). Editors of the URL Standard are expected to follow the [Maintainer Guidelines](https://github.com/whatwg/meta/blob/main/MAINTAINERS.md).

## Merge policy
## Tests

If you can commit to this repository, see the
[WHATWG Maintainer Guidelines](https://github.com/whatwg/meta/blob/main/MAINTAINERS.md).
Tests are an essential part of the standardization process and will need to be created or adjusted as changes to the standard are made. Tests for the URL Standard can be found in the `url/` directory of [`web-platform-tests/wpt`](https://github.com/web-platform-tests/wpt).

## Tests and implementations
A dashboard showing the tests running against browser engines can be seen at [wpt.fyi/results/url](https://wpt.fyi/results/url).

## Building "locally"

Tests can be found in the `url/` directory of
[web-platform-tests/wpt](https://github.com/web-platform-tests/wpt). A dashboard showing the tests
running against major browsers can be seen at [wpt.fyi](https://wpt.fyi/results/url).
For quick local iteration, run `make`; this will use a web service to build the standard, so that you don't have to install anything. See more in the [Contributor Guidelines](https://github.com/whatwg/meta/blob/main/CONTRIBUTING.md#building).

## Formatting

Use a column width of 100 characters.

Do not use newlines inside "inline" elements, even if that means exceeding the column width requirement.
```html
<p>The
<dfn method for=DOMTokenList lt=remove(tokens)|remove()><code>remove(<var>tokens</var>&hellip;)</code></dfn>
method, when invoked, must run these steps:
```
is okay and
```html
<p>The <dfn method for=DOMTokenList
lt=remove(tokens)|remove()><code>remove(<var>tokens</var>&hellip;)</code></dfn> method, when
invoked, must run these steps:
```
is not.

Using newlines between "inline" element tag names and their content is also forbidden. (This actually alters the content, by adding spaces.) That is
```html
<a>token</a>
```
is fine and
```html
<a>token
</a>
```
is not.

An `<li>` element always has a `<p>` element inside it, unless it's a child of `<ul class=brief>`.

If a "block" element contains a single "block" element, do not put it on a newline.

Do not indent for anything except a new "block" element. For instance
```html
<li><p>For each <var>token</var> in <var>tokens</var>, in given order, that is not in
<a>tokens</a>, append <var>token</var> to <a>tokens</a>.
```
is not indented, but
```html
<ol>
<li>
<p>For each <var>token</var> in <var>tokens</var>, run these substeps:

<ol>
<li><p>If <var>token</var> is the empty string, <a>throw</a> a {{SyntaxError}} exception.
```
is.

End tags may be included (if done consistently) and attributes may be quoted (using double quotes), though the prevalent theme is to omit end tags and not quote attributes (unless they contain a space).

## Implementations

A complete JavaScript implementation of the standard can be found at
[jsdom/whatwg-url](https://github.com/jsdom/whatwg-url). This implementation is kept synchronized
Expand Down
13 changes: 13 additions & 0 deletions READMEEND.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
## Implementations

A complete JavaScript implementation of the standard can be found at
[jsdom/whatwg-url](https://github.com/jsdom/whatwg-url). This implementation is kept synchronized
with the standard and tests.

A complete C++ implementation of the standard can be found at
[ada-url/ada](https://github.com/ada-url/ada). This implementation is kept synchronized
with the standard and tests, and is currently used in [Node.js](https://github.com/nodejs/node).

The [Live URL Viewer](https://jsdom.github.io/whatwg-url/) lets you manually test-parse any URL,
comparing your browser's URL parser to that of
[jsdom/whatwg-url](https://github.com/jsdom/whatwg-url).

0 comments on commit 1f20347

Please sign in to comment.