<commit_before><!--
  ~ Copyright 2010 the original author or authors.
  ~
  ~ Licensed under the Apache License, Version 2.0 (the "License");
  ~ you may not use this file except in compliance with the License.
  ~ You may obtain a copy of the License at
  ~
  ~      http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing, software
  ~ distributed under the License is distributed on an "AS IS" BASIS,
  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  ~ See the License for the specific language governing permissions and
  ~ limitations under the License.
  -->

<chapter id='signing_plugin' xmlns:xi="http://www.w3.org/2001/XInclude">
    <title>The Signing Plugin</title>

    <para>
        The signing plugin adds the ability to digitally sign built files and artifacts.
        These digital signatures can then be used to prove who built the artifact the signature is attached to
        as well as other information such as when the signature was generated.
    </para>
    <para>
        The signing plugin currently only provides support for generating <ulink url='http://www.pgpi.org/'>PGP signatures</ulink> 
        (which is the signature format <ulink url="https://docs.sonatype.org/display/Repository/Central+Sync+Requirements">required for 
        publication to the Maven Central Repository</ulink>).
    </para>

    <section>
        <title>Usage</title>
        <para>To use the Signing plugin, include in your build script:</para>
        <sample id="useSigningPlugin" dir="signing/maven" title="Using the Signing plugin">
            <sourcefile file="build.gradle" snippet="use-plugin"/>
        </sample>
    </section>
    
    <section>
        <title>Signatory credentials</title>
        <para>
            In order to create PGP signatures, you will need a key pair (instructions on creating a key pair using the <ulink url="http://www.gnupg.org/">GnuPG tools</ulink> 
            can be found <ulink url="http://www.dewinter.com/gnupg_howto/english/GPGMiniHowto-3.html#ss3.1">here</ulink>). You need to provide the signing plugin
            with your key information, which means three things: <commit_msg>Point at a different location for the gnupg howtos.<commit_after><!--
  ~ Copyright 2010 the original author or authors.
  ~
  ~ Licensed under the Apache License, Version 2.0 (the "License");
  ~ you may not use this file except in compliance with the License.
  ~ You may obtain a copy of the License at
  ~
  ~      http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing, software
  ~ distributed under the License is distributed on an "AS IS" BASIS,
  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  ~ See the License for the specific language governing permissions and
  ~ limitations under the License.
  -->

<chapter id='signing_plugin'>
    <title>The Signing Plugin</title>

    <para>
        The signing plugin adds the ability to digitally sign built files and artifacts.
        These digital signatures can then be used to prove who built the artifact the signature is attached to
        as well as other information such as when the signature was generated.
    </para>
    <para>
        The signing plugin currently only provides support for generating <ulink url='http://www.pgpi.org/'>PGP signatures</ulink> 
        (which is the signature format <ulink url="https://docs.sonatype.org/display/Repository/Central+Sync+Requirements">required for 
        publication to the Maven Central Repository</ulink>).
    </para>

    <section>
        <title>Usage</title>
        <para>To use the Signing plugin, include in your build script:</para>
        <sample id="useSigningPlugin" dir="signing/maven" title="Using the Signing plugin">
            <sourcefile file="build.gradle" snippet="use-plugin"/>
        </sample>
    </section>
    
    <section>
        <title>Signatory credentials</title>
        <para>
            In order to create PGP signatures, you will need a key pair (instructions on creating a key pair using the <ulink url="http://www.gnupg.org/">GnuPG tools</ulink> 
            can be found in the <ulink url="http://www.gnupg.org/documentation/howtos.html">GnuPG HOWTOs</ulink>). You need to provide the signing plugin
            with your key information, which means three things: 
{'fraction_non_alphanumeric': 0.09064261555806088, 'fraction_numerical': 0.005411499436302142, 'mean_word_length': 3.0960295475530932, 'pattern_counts': {'":': 0, '<': 61, '<?xml version=': 0, '>': 61, 'https://': 2, 'lorem ipsum': 0, 'www.': 9, 'xml': 1}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '132045', 'n_tokens_mistral': 1218, 'n_tokens_neox': 1164, 'n_words': 482}