diff options
| author | nsfisis <nsfisis@gmail.com> | 2025-11-27 05:05:04 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2025-11-27 06:07:46 +0900 |
| commit | c754d24b162ecd504f3c4bdd8632045dd0398768 (patch) | |
| tree | 362323710bb329ad609d379df4e4a429e4229fd2 /services/nuldoc/content/posts/2025-01-26 | |
| parent | d1014de68415df8f0a5dc3389332e086119c6198 (diff) | |
| download | nsfisis.dev-c754d24b162ecd504f3c4bdd8632045dd0398768.tar.gz nsfisis.dev-c754d24b162ecd504f3c4bdd8632045dd0398768.tar.zst nsfisis.dev-c754d24b162ecd504f3c4bdd8632045dd0398768.zip | |
feat(nuldoc): Djot to Markdown
Diffstat (limited to 'services/nuldoc/content/posts/2025-01-26')
| -rw-r--r-- | services/nuldoc/content/posts/2025-01-26/yaml-breaking-changes-between-v1-1-and-v1-2.md (renamed from services/nuldoc/content/posts/2025-01-26/yaml-breaking-changes-between-v1-1-and-v1-2.dj) | 25 |
1 files changed, 9 insertions, 16 deletions
diff --git a/services/nuldoc/content/posts/2025-01-26/yaml-breaking-changes-between-v1-1-and-v1-2.dj b/services/nuldoc/content/posts/2025-01-26/yaml-breaking-changes-between-v1-1-and-v1-2.md index 44e8a4f..531a99e 100644 --- a/services/nuldoc/content/posts/2025-01-26/yaml-breaking-changes-between-v1-1-and-v1-2.dj +++ b/services/nuldoc/content/posts/2025-01-26/yaml-breaking-changes-between-v1-1-and-v1-2.md @@ -16,12 +16,11 @@ isInternal = true date = "2025-01-26" remark = "ブログ記事として一般公開" --- -::: note +:::note この記事は、2021-06-30 に [デジタルサーカス株式会社](https://www.dgcircus.com/) の社内 Qiita Team に公開された記事をベースに、加筆修正して一般公開したものです。 ::: -{#intro} -# はじめに +# はじめに {#intro} データ記述言語の一つ YAML には 1.0、1.1、1.2 のバージョンがある。 これらのうち、1.1 と 1.2 の間には無視できない非互換の変更が多く、1.2 に対応していないライブラリもある (Ruby 同梱の `yaml` など)。 @@ -29,25 +28,21 @@ remark = "ブログ記事として一般公開" 参照した仕様書はこちら: https://yaml.org/spec/1.2.2/ext/changes/ -{#breaking-changes} -# 主な破壊的変更 +# 主な破壊的変更 {#breaking-changes} -{#boolean-literals} -### Boolean としてパースされるトークンが `true` / `false` とその亜種のみに +### Boolean としてパースされるトークンが `true` / `false` とその亜種のみに {#boolean-literals} この変更の影響が最も大きいと思われる。 YAML 1.1 では、boolean 値のリテラルとして `true`、`false` のほか `yes`、`no`、`y`、`n`、`on`、`off`、それらの大文字バージョンなどが認められていた。 YAML 1.2 では、`true` と `false`、それらの大文字バージョン (`True`、`TRUE`、`False`、`FALSE`) のみが boolean としてパースされるようになった。 -{#octal-literals} -### 八進数リテラルには `0o` が必須に +### 八進数リテラルには `0o` が必須に {#octal-literals} C 言語などでは、`0` から始まる数字の列を八進数としてパースする。 YAML 1.1 もこれに準じていたが、1.2 からは `0o` のプレフィクスが必須となった ("o" は "octal" の "o")。 プログラミング言語では、Python や Haskell、Swift、Rust などがこの記法を採用している。 -{#merging} -### `<<` によるマージが不可能に +### `<<` によるマージが不可能に {#merging} YAML 1.1 では、`<<` という文字列をキーに指定することで、マップをマージすることができた。 @@ -64,13 +59,11 @@ y: 1.2 からはこれができなくなる。 -{#number-separator} -### 数字を `_` で区切るのが禁止に +### 数字を `_` で区切るのが禁止に {#number-separator} `1234567` を `1_234_567` と書けなくなった。 -{#outro} -# おわりに +# おわりに {#outro} -全体的に、_There's more than one way to do it._ から _There should be one - and preferably only one - obvious way to do it._ へ移行しているように思われる。 +全体的に、*There's more than one way to do it.* から *There should be one - and preferably only one - obvious way to do it.* へ移行しているように思われる。 データ記述言語としては望ましい方向性ではないかと感じる。 |
