|
1 | 1 | = Neo4j Cypher Manual |
2 | 2 |
|
| 3 | +This page covers the following topics: |
| 4 | + |
| 5 | +* xref:README.adoc#building-locally[] |
| 6 | +* xref:README.adoc#raising-prs[] |
| 7 | +* xref:README.adoc#documenting-changes[] |
| 8 | +* xref:README.adoc#cypher-gql[] |
| 9 | +
|
| 10 | +
|
| 11 | +[[building-locally]] |
3 | 12 | == Building locally |
4 | 13 |
|
5 | 14 | === Prereqs |
@@ -39,7 +48,7 @@ When you run `npm start`, the project is monitored for updates to asciidoc files |
39 | 48 |
|
40 | 49 | If a change to an asciidoc file is detected, the site is automatically rebuilt. |
41 | 50 |
|
42 | | - |
| 51 | +[[raising-prs]] |
43 | 52 | == Raising PRs |
44 | 53 |
|
45 | 54 |
|
@@ -68,3 +77,43 @@ There are a few edge cases where we might want to work only on the current branc |
68 | 77 | ** Create a feature branch from `dev`, to be merged into `dev` when appropriate. |
69 | 78 | * When a new version is ready to published, the `5.x` branch will get a git tag, named with the exact version (for example, **5.1.0**), signifying that this point-in-time marks the completion of the work for that minor release. |
70 | 79 | * Updates merged into the `dev` branch for the next release are cherry-picked into the `5.x` branch. |
| 80 | + |
| 81 | +[[documenting-changes]] |
| 82 | +== Documenting changes to Cypher |
| 83 | + |
| 84 | +New, updated, deprecated, and removed features must be recorded on the xref:modules/ROOT/pages/deprecations-additions-removals-compatibility.adoc[Deprecations, additions, and compatibility] page. |
| 85 | + |
| 86 | +New and deprecated features should also be marked with a label: |
| 87 | + |
| 88 | +* If the impacted feature has its own header in the Cypher Manual, use the following: |
| 89 | + |
| 90 | +.... |
| 91 | +[role=label--new-5.x] |
| 92 | +== Header |
| 93 | +.... |
| 94 | + |
| 95 | +.... |
| 96 | +[role=label--deprecated] |
| 97 | +== Header |
| 98 | +.... |
| 99 | + |
| 100 | +* If the impacted feature is documented within a table (such as a return column in a `SHOW` command), use the following: |
| 101 | + |
| 102 | +`featureX` label:new[Introduced in 5.x] + |
| 103 | +`featureY` label:deprecated[] |
| 104 | + |
| 105 | +Labels can be difficult to apply to updated features. |
| 106 | +In these cases, it is often preferable to note the change in a sentence. |
| 107 | +For example: "As of Neo4j 5.x, `featureX` supports ..." |
| 108 | + |
| 109 | +Removed features should be deleted from the Cypher Manual. |
| 110 | + |
| 111 | +[[cypher-gql]] |
| 112 | +== Cypher and GQL |
| 113 | + |
| 114 | +When documenting a new Cypher feature, its relationship with GQL must be considered: |
| 115 | + |
| 116 | +* If the feature is part of GQL's mandatory features, it should be recorded on the page xref:modules/ROOT/pages/appendix/gql-conformance/supported-mandatory.adoc[Supported mandatory GQL features]. |
| 117 | +* If the feature is part of GQL's optional features, it should be recorded on the page xref:modules/ROOT/pages/appendix/gql-conformance/supported-optional.adoc[Supported optional GQL features]. |
| 118 | +* if the feature adds functionality for which there exists an analogous, optional GQL feature, it should be recorded on the page xref:modules/ROOT/pages/appendix/gql-conformance/analogous-cypher.adoc[Optional GQL features and analogous Cypher]. |
| 119 | +* If the feature adds functionality for which there exists no GQL equivalent, it should be recorded on the page xref:modules/ROOT/pages/appendix/gql-conformance/additional-cypher.adoc[Additional Cypher features]. |
0 commit comments