EPIC slug aggregator
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 35/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- javascript
調査の方向性
まず、文書化されている /v1/id/slug と /since/slug のリクエストパスを追跡し、次に slug ヘッダーと ?slug= クエリ文字列について、CREATE POST と更新の処理を確認します。提示されている正規化、所有権、一意性、長さ、バージョニングのルールを受け入れ基準として使用し、slug による検索と _id による検索の違いも含めます。
索引モデルが issue の本文から書いたものです。
説明
We've got some light slug functionality, but we need it to work all the time. Here's what they do...
9.7. The Slug Header link
Slug is an HTTP entity-header whose presence in a POST to a Collection constitutes a request by the client to use the header’s value as part of any URIs that would normally be used to retrieve the to-be-created Entry or Media Resources.
Servers MAY use the value of the Slug header when creating the Member URI of the newly created Resource, for instance, by using some or all of the words in the value for the last URI segment.
In addition to the "get by _id" lookup for documents, a request like "https://store.rerum.io/v1/id/slug-life" should return the document matching { "__rerum.slug" : "slug-life" } in the repository.
An application suggests a slug by passing in a slug header in the CREATE POST or by adding a "?slug=" query string. If both exist, the header is used as the server will ignore query strings.
RERUM saves a new object with the __rerum.slug property and separate generated _id. RERUM responds with the normalized slug in the @id field of the response object.
In an update, a document owner can move the slug to a new version, prompting RERUM to update the __rerum.slug properties for both records.
API behaviors will be listed below as they may each interreact differently. Slug conditions in all cases are clear:
- Only one document can hold a slug at any time.
- Only the owner can move slug from one document to another.
- Slugs are entirely lowercase, with accented characters replaced by letters from the English alphabet and whitespace characters replaced by a dash or an underscore, in order to avoid being encoded. Punctuation marks are generally removed.
- This, That & the Other! Various Outré Considerations <= input
- this-that-the-other-various-outre-considerations <= stored slug
- Slugs are trimmed to 50 characters.
- A document may only have one slug assigned to it at a time.
- Slugs are helpful and efficient, but not a promise of durability, so the
_idmust be used in all versioning.- A "/since/slug" request with a slug is not idempotent, because the slug may have moved, but "since/_id" is.
- An "/id/slug" request may not always return the same document and may go 404, which a deleted document does not.
- 主要言語
- JavaScript
- スター
- 3
- フォーク
- 6
- 平均マージ
- 4日 9時間
- マージ済み PR(30日)
- 5
環境構築
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
CenterForDigitalHumanities/rerum_server_nodejs のほかの issue
-
bug documentation
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
-
backend dependencies easy
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
CenterForDigitalHumanities/rerum_server_nodejs#290 · コメント 1 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 50/100
-
難易度 3/5 1〜2日 初心者へのやさしさ 74/100
CenterForDigitalHumanities/rerum_server_nodejs の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 86/100
メンテナーはふだん 1 日以内に返信
-
curriculum documentation quality
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
githubnext/gh-aw-workshop#3897 ·
メンテナーはふだん 2 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
メンテナーはふだん 1 日以内に返信
-
agent/quality hive/hosted-available-lke648397-260827-5n31 quality testing
難易度 2/5 1〜3時間 初心者へのやさしさ 91/100
メンテナーはふだん 1 日以内に返信