Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Use second parameter, len, of Normalize throughout #73

Merged
merged 16 commits into from
Mar 25, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
100 changes: 100 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
version: 2
jobs:
build:
docker:
- image: martinthomson/i-d-template:latest
working_directory: ~/draft

steps:
- run:
name: "Print Configuration"
command: |
xml2rfc --version
gem list -q kramdown-rfc2629
echo -n 'mmark '; mmark --version

- restore_cache:
name: "Restoring cache - Git"
keys:
- v2-cache-git-{{ .Branch }}-{{ .Revision }}
- v2-cache-git-{{ .Branch }}
- v2-cache-git-

- restore_cache:
name: "Restoring cache - References"
keys:
- v1-cache-references-{{ epoch }}
- v1-cache-references-

# Workaround for https://discuss.circleci.com/t/22437
- run:
name: Tag Checkout
command: |
if [ -n "$CIRCLE_TAG" ] && [ -d .git ]; then
remote=$(echo "$CIRCLE_REPOSITORY_URL" | \
sed -e 's,/^git.github.com:,https://github.com/,')
git fetch -f "$remote" "refs/tags/$CIRCLE_TAG:refs/tags/$CIRCLE_TAG" || \
(echo 'Removing .git cache for tag build'; rm -rf .git)
fi

- checkout

# Build txt and html versions of drafts
- run:
name: "Build Drafts"
command: "make 'CLONE_ARGS=--reference ~/git-reference'"

# Update editor's copy on gh-pages
- run:
name: "Update GitHub Pages"
command: |
if [ "${CIRCLE_TAG#draft-}" == "$CIRCLE_TAG" ]; then
make gh-pages
fi

# For tagged builds, upload to the datatracker.
- deploy:
name: "Upload to Datatracker"
command: |
if [ "${CIRCLE_TAG#draft-}" != "$CIRCLE_TAG" ]; then
make upload
fi

# Archive GitHub Issues
- run:
name: "Archive GitHub Issues"
command: "make archive || make archive DISABLE_ARCHIVE_FETCH=true && make gh-archive"

# Create and store artifacts
- run:
name: "Create Artifacts"
command: "make artifacts CI_ARTIFACTS=/tmp/artifacts"

- store_artifacts:
path: /tmp/artifacts

- run:
name: "Prepare for Caching"
command: "git reflog expire --expire=now --all && git gc --prune=now"

- save_cache:
name: "Saving Cache - Git"
key: v2-cache-git-{{ .Branch }}-{{ .Revision }}
paths:
- ~/draft/.git

- save_cache:
name: "Saving Cache - Drafts"
key: v1-cache-references-{{ epoch }}
paths:
- ~/.cache/xml2rfc


workflows:
version: 2
build:
jobs:
- build:
filters:
tags:
only: /.*?/
2 changes: 2 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Automatically generated CODEOWNERS file.
draft-ietf-jsonpath-base.md [email protected]@[email protected]@fh-dortmund.de
32 changes: 32 additions & 0 deletions .github/workflows/archive.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: "Archive Issues and Pull Requests"

on:
schedule:
- cron: '0 0 * * 0,2,4'
repository_dispatch:
types: [archive]

jobs:
build:
name: "Archive Issues and Pull Requests"
runs-on: ubuntu-latest
steps:
- name: "Checkout"
uses: actions/checkout@v2

- name: "Update Archive"
uses: martinthomson/i-d-template@v1
with:
make: archive
token: ${{ secrets.GITHUB_TOKEN }}

- name: "Update GitHub Pages"
uses: martinthomson/i-d-template@v1
with:
make: gh-archive
token: ${{ secrets.GITHUB_TOKEN }}

- name: "Save Archive"
uses: actions/upload-artifact@v2
with:
path: archive.json
58 changes: 58 additions & 0 deletions .github/workflows/ghpages.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: "Update Editor's Copy"

on:
push:
paths-ignore:
- README.md
- CONTRIBUTING.md
- LICENSE.md
- .gitignore
pull_request:
paths-ignore:
- README.md
- CONTRIBUTING.md
- LICENSE.md
- .gitignore

jobs:
build:
name: "Update Editor's Copy"
runs-on: ubuntu-latest
steps:
- name: "Checkout"
uses: actions/checkout@v2

- name: "Cache Setup"
id: cache-setup
run: |
mkdir -p "$HOME"/.cache/xml2rfc
echo "::set-output name=path::$HOME/.cache/xml2rfc"
date -u "+::set-output name=date::%FT%T"

- name: "Cache References"
uses: actions/cache@v2
with:
path: |
${{ steps.cache-setup.outputs.path }}
.targets.mk
key: refcache-${{ steps.cache-setup.outputs.date }}
restore-keys: |
refcache-${{ steps.cache-setup.outputs.date }}
refcache-

- name: "Build Drafts"
uses: martinthomson/i-d-template@v1

- name: "Update GitHub Pages"
uses: martinthomson/i-d-template@v1
if: ${{ github.event_name == 'push' }}
with:
make: gh-pages
token: ${{ secrets.GITHUB_TOKEN }}

- name: "Archive Built Drafts"
uses: actions/upload-artifact@v2
with:
path: |
draft-*.html
draft-*.txt
49 changes: 49 additions & 0 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: "Publish New Draft Version"

on:
push:
tags:
- "draft-*"

jobs:
build:
name: "Publish New Draft Version"
runs-on: ubuntu-latest
steps:
- name: "Checkout"
uses: actions/checkout@v2

# See https://github.com/actions/checkout/issues/290
- name: "Get Tag Annotations"
run: git fetch -f origin ${{ github.ref }}:${{ github.ref }}

- name: "Cache Setup"
id: cache-setup
run: |
mkdir -p "$HOME"/.cache/xml2rfc
echo "::set-output name=path::$HOME/.cache/xml2rfc"
date -u "+::set-output name=date::%FT%T"

- name: "Cache References"
uses: actions/cache@v2
with:
path: |
${{ steps.cache-setup.outputs.path }}
.targets.mk
key: refcache-${{ steps.date.outputs.date }}
restore-keys: |
refcache-${{ steps.date.outputs.date }}
refcache-

- name: "Build Drafts"
uses: martinthomson/i-d-template@v1

- name: "Upload to Datatracker"
uses: martinthomson/i-d-template@v1
with:
make: upload

- name: "Archive Submitted Drafts"
uses: actions/upload-artifact@v2
with:
path: "draft-*-[0-9][0-9].xml"
18 changes: 17 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,17 @@
.refcache/
*.html
*.pdf
*.redxml
*.swp
*.txt
*.upload
*.abnf
*~
.refcache
.tags
.targets.mk
/*-[0-9][0-9].xml
archive.json
report.xml
venv/
lib
draft-ietf-jsonpath-base.xml
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "lib"]
path = lib
url = https://github.com/martinthomson/i-d-template
7 changes: 7 additions & 0 deletions .note.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
<note title="Discussion Venues" removeInRFC="true">
<t>Discussion of this document takes place on the
JSON Path Working Group mailing list ([email protected]),
which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/jsonpath/"/>.</t>
<t>Source for this draft and an issue tracker can be found at
<eref target="https://github.com/ietf-wg-jsonpath/draft-ietf-jsonpath-jsonpath"/>.</t>
</note>
37 changes: 37 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# Contributing

This repository relates to activities in the Internet Engineering Task Force
([IETF](https://www.ietf.org/)). All material in this repository is considered
Contributions to the IETF Standards Process, as defined in the intellectual
property policies of IETF currently designated as
[BCP 78](https://www.rfc-editor.org/info/bcp78),
[BCP 79](https://www.rfc-editor.org/info/bcp79) and the
[IETF Trust Legal Provisions (TLP) Relating to IETF Documents](http://trustee.ietf.org/trust-legal-provisions.html).

Any edit, commit, pull request, issue, comment or other change made to this
repository constitutes Contributions to the IETF Standards Process
(https://www.ietf.org/).

You agree to comply with all applicable IETF policies and procedures, including,
BCP 78, 79, the TLP, and the TLP rules regarding code components (e.g. being
subject to a Simplified BSD License) in Contributions.

## Conventions

Basic conventions around source files formatting are captured in the `.editorconfig` file.
Many editors support that file natively. Others (such as VS code) require a plugin, see https://editorconfig.org/.

In the markdown file, the convention is to start a new line when starting a new sentence.

## Other Resources

Discussion of this work occurs on the
[jsonpath working group mailing list](https://mailarchive.ietf.org/arch/browse/jsonpath/)
([subscribe](https://www.ietf.org/mailman/listinfo/jsonpath)). In addition to
contributions in GitHub, you are encouraged to participate in discussions there.

**Note**: Some working groups adopt a policy whereby substantive discussion of
technical issues needs to occur on the mailing list.

You might also like to familiarize yourself with other
[working group documents](https://datatracker.ietf.org/wg/jsonpath/documents/).
4 changes: 4 additions & 0 deletions LICENSE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# License

See the
[guidelines for contributions](https://github.com/ietf-wg-jsonpath/draft-ietf-jsonpath-jsonpath/blob/main/CONTRIBUTING.md).
11 changes: 11 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
LIBDIR := lib
include $(LIBDIR)/main.mk

$(LIBDIR)/main.mk:
ifneq (,$(shell grep "path *= *$(LIBDIR)" .gitmodules 2>/dev/null))
git submodule sync
git submodule update $(CLONE_ARGS) --init
else
git clone -q --depth 10 $(CLONE_ARGS) \
-b main https://github.com/martinthomson/i-d-template $(LIBDIR)
endif
Loading