travis: enable markdownlint checks
authorRich Salz <rsalz@akamai.com>
Thu, 7 May 2020 11:42:14 +0000 (13:42 +0200)
committerDr. Matthias St. Pierre <matthias.st.pierre@ncp-e.com>
Fri, 8 May 2020 14:22:01 +0000 (16:22 +0200)
Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org>
Reviewed-by: Matthias St. Pierre <Matthias.St.Pierre@ncp-e.com>
(Merged from https://github.com/openssl/openssl/pull/11739)

.travis.yml
dev/release-aux/README.md
dev/release-aux/fixup-CHANGES.md-postrelease.pl
dev/release-aux/fixup-NEWS.md-postrelease.pl
util/markdownlint.rb [new file with mode: 0644]

index 4c49c3449f1101d21adfd1737807b55bbed801c4..2bc040fe28f992a39014f6de8d2de2c598ccc4b5 100644 (file)
@@ -135,7 +135,7 @@ jobs:
           script: true
         - os: linux
           compiler: gcc
-          env: CONFIGURE_TARGET="linux-generic32" CONFIG_OPTS="--strict-warnings no-shared no-dso no-pic no-aria no-async no-autoload-config no-blake2 no-bf no-camellia no-cast no-chacha no-cmac no-cms no-cmp no-comp no-ct no-des no-dgram no-dh no-dsa no-dtls no-ec2m no-engine no-filenames no-gost no-idea no-ktls no-mdc2 no-md4 no-multiblock no-nextprotoneg no-ocsp no-ocb no-poly1305 no-psk no-rc2 no-rc4 no-rmd160 no-seed no-siphash no-siv no-sm2 no-sm3 no-sm4 no-srp no-srtp no-ssl3 no-ssl3-method no-ts no-ui-console no-whirlpool no-asm -DOPENSSL_NO_SECURE_MEMORY -DOPENSSL_SMALL_FOOTPRINT"
+          env: CONFIGURE_TARGET="linux-generic32" MARKDOWNLINT="yes" CONFIG_OPTS="--strict-warnings no-shared no-dso no-pic no-aria no-async no-autoload-config no-blake2 no-bf no-camellia no-cast no-chacha no-cmac no-cms no-cmp no-comp no-ct no-des no-dgram no-dh no-dsa no-dtls no-ec2m no-engine no-filenames no-gost no-idea no-ktls no-mdc2 no-md4 no-multiblock no-nextprotoneg no-ocsp no-ocb no-poly1305 no-psk no-rc2 no-rc4 no-rmd160 no-seed no-siphash no-siv no-sm2 no-sm3 no-sm4 no-srp no-srtp no-ssl3 no-ssl3-method no-ts no-ui-console no-whirlpool no-asm -DOPENSSL_NO_SECURE_MEMORY -DOPENSSL_SMALL_FOOTPRINT"
 
 
 before_script:
@@ -204,6 +204,12 @@ script:
           echo -e '\052\052 FAILED -- MAKE DOC-NITS';
           travis_terminate 1;
       fi
+    - if test -n "$MARKDOWNLINT" ; then
+          echo -e "====START MARKDOWNLINT====";
+          gem install mdl || travis_terminate 1;
+          mdl -s util/markdownlint.rb . || travis_terminate 1;
+          echo -e "====END MARKDOWNLINT====";
+      fi
     - if ! $make2; then
           echo -e '\052\052 FAILED -- MAKE';
           travis_terminate 1;
index 9d05ae5f980902f1f1cec75a8e4fe810671df32c..01c5a207733fdc4248aa340cdf6dd951f0c7668f 100644 (file)
@@ -1,30 +1,30 @@
 Auxilliary files for dev/release.sh
 ===================================
 
--   release-state-fn.sh
+- release-state-fn.sh
 
-    This is the main version and state update logic...  you could say
-    that it's the innermost engine for the release mechanism.  It
-    tries to be agnostic of versioning schemes, and relies on
-    release-version-fn.sh to supply necessary functions that are
-    specific for versioning schemes.
-    
--   release-version-fn.sh
+  This is the main version and state update logic...  you could say
+  that it's the innermost engine for the release mechanism.  It
+  tries to be agnostic of versioning schemes, and relies on
+  release-version-fn.sh to supply necessary functions that are
+  specific for versioning schemes.
 
-    Supplies functions that are specific to versioning schemes:
-    
-    get_version() gets the version data from appropriate files.
+- release-version-fn.sh
 
-    set_version() writes the version data to appropriate files.
+  Supplies functions that are specific to versioning schemes:
 
-    fixup_version() updates the version data, given a first argument
-    that instructs it what update to do.
-    
--   openssl-announce-pre-release.tmpl and openssl-announce-release.tmpl
+  get_version() gets the version data from appropriate files.
 
-    Templates for announcements
-    
--   fixup-*-release.pl and fixup-*-postrelease.pl
+  set_version() writes the version data to appropriate files.
 
-    Fixup scripts for specific files, to be done for the release
-    commit and for the post-release commit.
+  fixup_version() updates the version data, given a first argument
+  that instructs it what update to do.
+
+- openssl-announce-pre-release.tmpl and openssl-announce-release.tmpl
+
+  Templates for announcements
+
+- fixup-*-release.pl and fixup-*-postrelease.pl
+
+  Fixup scripts for specific files, to be done for the release
+  commit and for the post-release commit.
index 6592635dc3abf176e33c5efb44c638f0675f4c4a..0fb2e9134f9be178f4d16f29403940634906cacd 100644 (file)
@@ -18,11 +18,11 @@ if (/^### Changes between (\S+) and (\S+) \[xx XXX xxxx\]/
     # If this is a pre-release, we do nothing
     if ($RELEASE !~ /^\d+\.\d+\.\d+-(?:alpha|beta)/) {
         $_ = <<_____
-### Changes between $v2 and $RELEASE_TEXT [xx XXX xxxx] ###
+### Changes between $v2 and $RELEASE_TEXT [xx XXX xxxx]
 
  * 
 
-### Changes between $v1 and $v2 [$PREV_RELEASE_DATE] ###
+### Changes between $v1 and $v2 [$PREV_RELEASE_DATE]
 _____
     }
 }
index b1d47264b0c79367610804843e07038e79c24d41..ff41ab29df569bdfe9a38cd81b44717f379c2704 100644 (file)
@@ -18,11 +18,11 @@ if (/^### Major changes between OpenSSL (\S+) and OpenSSL (\S+) \[under developm
     # If this is a pre-release, we do nothing
     if ($RELEASE !~ /^\d+\.\d+\.\d+-(?:alpha|beta)/) {
         $_ = <<_____
-### Major changes between OpenSSL $v2 and OpenSSL $RELEASE_TEXT [under development] ###
+### Major changes between OpenSSL $v2 and OpenSSL $RELEASE_TEXT [under development]
 
  * 
 
-### Major changes between OpenSSL $v1 and OpenSSL $v2 [$PREV_RELEASE_DATE] ###
+### Major changes between OpenSSL $v1 and OpenSSL $v2 [$PREV_RELEASE_DATE]
 _____
     }
 }
diff --git a/util/markdownlint.rb b/util/markdownlint.rb
new file mode 100644 (file)
index 0000000..75eb21e
--- /dev/null
@@ -0,0 +1,21 @@
+# markdownlint style rules for OpenSSL
+# See https://github.com/markdownlint/markdownlint/blob/master/docs/RULES.md
+
+all
+
+# Use --- and === for H1 and H2.
+rule 'MD003', :style => :setext_with_atx
+# Code blocks are indented
+rule 'MD046', :style => :indented
+
+# Bug in mdl, https://github.com/markdownlint/markdownlint/issues/313
+exclude_rule 'MD007'
+
+exclude_rule 'MD004' # Unordered list style TODO(fix?)
+exclude_rule 'MD005' # Inconsistent indentation for list items at the same level
+exclude_rule 'MD006' # Consider starting bulleted lists at the beginning of the line
+exclude_rule 'MD014' # Dollar signs used before commands without showing output
+exclude_rule 'MD024' # Multiple headers with the same content
+exclude_rule 'MD025' # Multiple top level headers in the same document
+exclude_rule 'MD029' # Ordered list item prefix
+exclude_rule 'MD036' # Emphasis used instead of a header