You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@spamassassin.apache.org by km...@apache.org on 2018/09/01 18:09:11 UTC

svn commit: r1839836 - in /spamassassin/trunk/build: README md5sum.pl old/ old/md5sum.pl old/sha1sum.pl old/update_devel_rules repackage_latest_update_rules sha1sum.pl sha256sum.pl sha512sum.pl update_devel update_devel_rules

Author: kmcgrail
Date: Sat Sep  1 18:09:11 2018
New Revision: 1839836

URL: http://svn.apache.org/viewvc?rev=1839836&view=rev
Log:
Build process improvements synced from 3.4 - bug 7596

Added:
    spamassassin/trunk/build/old/
    spamassassin/trunk/build/old/md5sum.pl
      - copied unchanged from r1839800, spamassassin/trunk/build/md5sum.pl
    spamassassin/trunk/build/old/sha1sum.pl
      - copied unchanged from r1839800, spamassassin/trunk/build/sha1sum.pl
    spamassassin/trunk/build/old/update_devel_rules
      - copied unchanged from r1839800, spamassassin/trunk/build/update_devel_rules
    spamassassin/trunk/build/sha256sum.pl   (with props)
    spamassassin/trunk/build/sha512sum.pl   (with props)
Removed:
    spamassassin/trunk/build/md5sum.pl
    spamassassin/trunk/build/sha1sum.pl
    spamassassin/trunk/build/update_devel_rules
Modified:
    spamassassin/trunk/build/README
    spamassassin/trunk/build/repackage_latest_update_rules
    spamassassin/trunk/build/update_devel

Modified: spamassassin/trunk/build/README
URL: http://svn.apache.org/viewvc/spamassassin/trunk/build/README?rev=1839836&r1=1839835&r2=1839836&view=diff
==============================================================================
--- spamassassin/trunk/build/README (original)
+++ spamassassin/trunk/build/README Sat Sep  1 18:09:11 2018
@@ -1,75 +1,58 @@
-SPAMASSASSIN DEVELOPMENT SNAPSHOT PROCEDURE
-===========================================
+APACHE SPAMASSASSIN RELEASE PROCEDURE
+=====================================
 
-- cd to the directory for the codebase you want the devel tree to
-  come from
+- First off, checkout the branch or trunk you wish to build.
 
-    ssh spamassassin.zones.apache.org
-    cd [checkedoutdir]
-
-  NOTE: SpamAssassin.Zones is a crashed box replaced by SpamAssassin-vm.
-  A copy of the sabuildtools is in
-  /root/zonestorage-restore/spamassassin/export/home/kmcgrail/sabuildtools
-
-- ensure the required code and data is available for the build scripts:
-
-    $HOME/sabuildtools
-
-  All can be copied (or symlinked) from ~jm on spamassassin.zones.apache.org if
-  required.
-
-- ensure your PATH is correct:
-
-    PATH=$HOME/sabuildtools/bin:$PATH
-
-- run "./build/update_devel" to build the tar.gz files.
+- As the release gets close, consider switching to R-T-C development
+  mode: https://wiki.apache.org/spamassassin/DevelopmentMode
 
-- next run "./build/update_devel_rules" to build the rules tarball,
-  or run "./build/repackage_latest_update_rules" to repackage the
-  latest file on updates.spamassassin.org.
+- Using DNS resolvers like 8.8.8.8 did NOT work.  It causes spurious
+  failures on things like dnsbl.t.  Use a real DNS server.
 
-- by default, they're written to ~/public_html/devel/ . 
-  Copy them to wherever you want, yourself.
+- To build a release you need gpg, a few perl modules, re2c
+  and the signing key for the project. For CentOS 7.5, the following worked:
 
-- KAM has included all of these on one of his devel systems with perl
-  5.8.6 (the earliest supported version of Perl as of 4/28/2015).  One
-  note is that you need webmake 2.4 from
-    http://webmake.taint.org/devel/HTML-WebMake-2.4.tar.gz
-  
-  Also, a copy is mirrored at www.pccc.com/downloads/SpamAssassin
+  - yum install perl* 
+  - yum remover perl-homedir
 
+  - using source and CPAN as root
+    - compiled razor-agents
+    - cpan install Net::Patricia
+    - cpan install Geo::IP
+    - cpan install Devel::SawAmpersand
+    - custom compiled re2c with  ./configure --prefix=/usr/local
 
-SPAMASSASSIN RELEASE PROCEDURE
-==============================
+  - when you run perl Makefile.PL, you want full dependencies such as this
+    snippet:
 
-- First off, log in to spamassassin.zones.apache.org for some preliminary tool
-  checks.
+    checking module dependencies and their versions...
+    checking binary dependencies and their versions...
+    <snip>
+    dependency check complete...
 
-    ssh spamassassin.zones.apache.org
+    optional binary missing or nonfunctional: fetch
 
-- ensure the required code and data is available for the build scripts:
-  see above.
+  - NOTE: Missing Fetch is ok if we have wget or curl.  You just need 1 of
+    the 3.
 
-- ensure your PATH is correct:
+  - You need ~/sabuildtools/bin with a symlink to gpg
 
-    PATH=$HOME/sabuildtools/bin:$PATH
-
-- ensure ExtUtils::MakeMaker is version 6.46 or later, to create
-  a detailed-enough META.yml (TODO: this should not be required.)
+  - You need ~/sabuildtoosl/sasigningkey with chmod 700 
+ 
+- Ensure ExtUtils::MakeMaker is version 6.46 or later, to create
+  a detailed-enough META.yml 
 
     perl -MExtUtils::MakeMaker -e 'print $ExtUtils::MakeMaker::VERSION'
 
-- In your own, writable, checkout (this may be on another host instead
-  of spamassassin.zones.apache.org, such as your home machine):
-
-  Run "svn status" to ensure you're building/releasing from a pristine
+- Run "svn status" to ensure you're building/releasing from a pristine
   checkout:
 
     cd [checkedoutdir]
     svn status
 
-  The output should look like this:
+  The output should be blank or look like this:
 
+  ?      rulesrc
   ?      rules/SIQ.pm
   ?      rules/sandbox-hstern.pm
   ?      rules/sandbox-felicity.pm
@@ -77,26 +60,55 @@ SPAMASSASSIN RELEASE PROCEDURE
   (ie., no "M" or "C" files; any files marked "M" have been locally
   modified, and should be "svn revert"ed before you continue.)
 
+- Rule Source is only in trunk.  If you are building a branch, checkout 
+  trunk as well and symlink it, i.e. rulesrc -> ../trunk/rulesrc/
+
+- t.rule Source is only in trunk.  If you are building a branch, checkout
+  trunk as well and symlink it, i.e. t.rules -> ../trunk/t.rules/
+
+- Rules are ONLY published from trunk.  Rule development should use plugin
+  and version conditions to make it so one ruleset works on all modern
+  versions of SA. If you are building a branch, checkout trunk as well and
+  symlink the rules from trunk, i.e. rules -> ../trunk/rules/
+
+  With the rules in trunk symlinked, you can expect MANIFEST warnings when
+  running things such as make distclean such as:
+
+    No such file: rules/20_aux_tlds.cf
+    No such file: rules/active.list
+    No such file: rules/init.pre
+    No such file: rules/languages
+    No such file: rules/local.cf
+    No such file: rules/regression_tests.cf
+    No such file: rules/sa-update-pubkey.txt
+    No such file: rules/user_prefs.template
+    No such file: rules/v310.pre
+    No such file: rules/v312.pre
+    No such file: rules/v320.pre
+    No such file: rules/v330.pre
+    No such file: rules/v340.pre
+    No such file: rules/v341.pre
+    No such file: rules/v342.pre
+
+  NOTE: Don't remove the lines from the MANIFEST though!
+
 - Consider updating the TLD list in 20_aux_tlds.cf.  As of 4/6/2015,
   this is not automated but bug 7165 is open for this purpose.
 
-- edit lib/Mail/SpamAssassin.pm and comment the $IS_DEVEL_BUILD
-  line.   Ensure the correct version number is present in $VERSION
+- edit lib/Mail/SpamAssassin.pm and comment out the $IS_DEVEL_BUILD
+  line as noted. Ensure the correct version number is present in $VERSION
   and @EXTRA_VERSION.
 
   Prereleases: formatted like this: "pre4" -- in $EXTRA_VERSION, and
-  $IS_DEVEL_BUILD is left as 1 instead of commented. When referred to in
-  full, it's "3.1.0-pre4".
+  $IS_DEVEL_BUILD is 0. When referred to in full, it's "3.1.0-pre4".
 
   Release candidates: formatted like this: "rc2" -- in $EXTRA_VERSION, and
-  $IS_DEVEL_BUILD is commented. When referred to in full, it's "3.1.0-rc2".
+  $IS_DEVEL_BUILD is 0. When referred to in full, it's "3.1.0-rc2".
 
-  Full releases: comment out @EXTRA_VERSION
+  $IS_DEVEL_BUILD is 0 even with rc and pre versions because rc and pre
+  numbers are never reused.  Just increment higher each time.
 
-  [NOTE: when editing files in these instructions, you may have to
-  use another checkout somewhere else, check in the changes there,
-  then 'svn update' in the release account -- since I think it
-  builds from a read-only checkout.]
+  Full releases: no @EXTRA_VERSION is needed and IS_DEVEL_BUILD is 0.
 
 - Ensure the new version number takes hold:
 
@@ -109,8 +121,11 @@ SPAMASSASSIN RELEASE PROCEDURE
   NOTE: If the date is old, don't worry, it will change later with the
         relbuild checkout.
 
-- create the Changes file.  Do this step on your own checkout, as
-  the release checkout is read-only.   
+  Also, a warning about "warn: config: could not find site rules
+  directory" is ok too.  It's because no init.pre exists in the default
+  rules location.
+
+- create the Changes file.  
 
   MAKE CERTAIN THIS IS RUN IN THE ROOT OF YOUR CHECKOUT!
 
@@ -160,8 +175,30 @@ SPAMASSASSIN RELEASE PROCEDURE
 
     make distcheck
 
+  With the rules in trunk symlinked, you can expect MANIFEST warnings when
+  running things such as make distclean such as:
+
+    No such file: rules/20_aux_tlds.cf
+    No such file: rules/active.list
+    No such file: rules/init.pre
+    No such file: rules/languages
+    No such file: rules/local.cf
+    No such file: rules/regression_tests.cf
+    No such file: rules/sa-update-pubkey.txt
+    No such file: rules/user_prefs.template
+    No such file: rules/v310.pre
+    No such file: rules/v312.pre
+    No such file: rules/v320.pre
+    No such file: rules/v330.pre
+    No such file: rules/v340.pre
+    No such file: rules/v341.pre
+    No such file: rules/v342.pre
+
+  NOTE: Don't remove the lines from the MANIFEST though!
+
 - run "make disttest" to ensure all default tests pass once the
-  distribution is fully packaged.  (this'll take a minute or two.)
+  distribution is fully packaged.  (this takes ~12 1/2 minutes on my system
+  2018-09-01)
 
     make disttest < /dev/null
 
@@ -177,11 +214,23 @@ SPAMASSASSIN RELEASE PROCEDURE
   kill all running spamd processes.  This release test suite is intended
   for a development environment.
 
+    NOTE: These likely must run as root. Some tests prompt for sudo.
+
     make test TEST_FILES="xt/*.t"
 
-    Note: As of 2014-02-04, all of these tests can pass test 
-          with no tests skipped except dcc.t which doesn't
-          properly test if dcc is not available - Bug 6944.
+    FAILURE NOTES: 
+
+          50_dcc.t - not tested and dcc.t which doesn't
+          properly test if dcc is available - Bug 6944.
+
+	  50_razor2.t - you need to register for razor
+          and the sample of a bad email may have fallen
+          out of their database.
+
+    A failure on the xt/ tests does not necessarily block a release.  
+    The xt tests are intended for people rolling an SA release or custom 
+    package.  Expect the DCC tests to fail if DCC is not installed, etc.
+
 
 - Check in the updated Changes file, and SpamAssassin.pm.
 
@@ -204,9 +253,22 @@ SPAMASSASSIN RELEASE PROCEDURE
     svn copy -m "creating tag for release $vers" \
 	$repo/branches/3.4 $repo/tags/spamassassin_release_$vers
 
+
+  - For a maintainance release candidate(x.y.1-rc1), pre-release (x.y.1-preZ) or alpha (x.y.1-alphaZ):
+
+    vers=3_4_2_pre_4
+
+    #Then run:
+
+    repo=https://svn.apache.org/repos/asf/spamassassin
+    svn delete -m "replaced old tag" $repo/tags/spamassassin_release_$vers
+    svn copy -m "creating tag for release $vers" \
+        $repo/branches/3.4 $repo/tags/spamassassin_release_$vers
+
+
   - For a trunk release (x.y.0):
 
-    vers=3_4_1
+    vers=3_4_0
 
     repo=https://svn.apache.org/repos/asf/spamassassin
     svn delete -m "replaced old tag" $repo/tags/spamassassin_release_$vers
@@ -215,7 +277,7 @@ SPAMASSASSIN RELEASE PROCEDURE
 
   - For a trunk release candidate (x.y.0-rc1), pre-release (x.y.0-preZ) or alpha (x.y.0-alphaZ):
 
-    vers=3_4_1_rc_2
+    vers=3_4_0_rc_2
 
     Then run:
 
@@ -234,9 +296,7 @@ SPAMASSASSIN RELEASE PROCEDURE
   later.)
 
 
-- In your checkout on spamassassin.zones.apache.org (may be read-only):
-
-  Check out the code from the tag you just made:
+- Check out the code from the tag you just made:
 
     #These should be set from the previous command unless you are on a
     #  different server
@@ -250,62 +310,57 @@ SPAMASSASSIN RELEASE PROCEDURE
   to ensure that the code in this build directory matches up using
   some other mechanism, since SVN is public.)
 
-- run "./build/update_stable" to build the tar.gz files.
+- run "./build/update_stable" to build the tar.gz, tar.bz2 and zip files.
 
-    PATH=$HOME/sabuildtools/bin:$PATH
+    killall gpg-agent
     ./build/update_stable
 
-  WARNING: this will use the most recently-created "sa-update" tarball for
-  the rules tgz, so if changes have been committed to the "rules" dir in
-  SVN since then, they will not be released!
-
-  if you get "gpg-agent" errors about not connecting to the PIN entry
-  module, you didn't update your $PATH.
+  NOTE: running gpg-agent with the proper homedir is needed for
+  non-privileged users.
 
-- run "./build/repackage_latest_update_rules" to repackage the
-  latest rules file for the purpose of publishing a starter rule file 
-  for people who can't run sa-update:
+- run "./build/repackage_latest_update_rules" package a rule file for 
+  people who can't run sa-update:
 
-    PATH=$HOME/sabuildtools/bin:$PATH
     ./build/repackage_latest_update_rules
 
-- test the tar.gz and zip files!  redo until they work!! ;)
+  WARNING: this will use the most recently-created "sa-update" tarball for
+  the rules tgz, so if changes have been committed to the "rules" dir in
+  SVN since then, they will not be released!
+
+- test the files!  redo until they work!! ;)
 
 - Write the release announcement mail!  This is a simple matter of copying
   the previous release's announcement, updating the version numbers and
   links, fixing the MD5 and SHA1 checksums in this mail, and summarising
   the important changes from the Changes file.
 
-    cp build/announcements/3.4.0.txt build/announcements/3.4.1.txt
+    cp build/announcements/3.4.1.txt build/announcements/3.4.2.txt
     svn add !$
     vi !$
 
-  NOTE: Here's a quick example to concat the MD5 or SHA1 checksums:
-        ls *3.4.1.* | grep md5 | xargs cat --
-        ls *3.4.1.* | grep sha1 | xargs cat --
+  NOTE: Here's a quick example to concat the checksums:
+        ls *3.4.2* | grep sha | xargs cat --
 
 - If there are any issues to note, make sure to edit the UPGRADE file.
   Every x.x.0 release at a minimum should include a section.
 
 - Check the README file for any items to change.
 
+- Review the CREDITS to update Committers - http://whimsy.apache.org/
+  can help with this.
+
+- Review the CREDITS to update Copyright
+
+- Review the Project Branding Report Checklist at
+  https://www.apache.org/foundation/marks/pmcs
+
 - (for any rc, prerelease, or full release) Place the tarballs in a
   discreet location (discreet means not linked from the "downloads" page
   of the website, but included in the vote mail) and request a vote on the
   development mailing list to make the release.  Post the URL,
-  md5sums/sha1sums, and proposed release announcement mail to the dev
-  list.  The default location -- ~/public_html/devel/ , or
-  http://people.apache.org/~jm/devel/ , qualifies as "discreet".
+  SHA sums, and proposed release announcement mail to the dev list.  
 
-  If you build on the zone, you will need to scp them over:
-
-    scp ~/public_html/devel/Mail-SpamAssassin-* people.apache.org:public_html/devel/
-
-  While doing this, also upload a copy of the proposed release
-  announcement to the website.  
-
-  As of 2014-02-04, this is done by adding announcement to the devel 
-  directory for the website and running webmake. See main.wmk in site svn.
+    http://people.apache.org/~kmcgrail/devel/ qualifies as "discreet".
 
   Pre-releases and RCs require just lazy consensus -- ie. no objections.
 
@@ -323,8 +378,10 @@ SPAMASSASSIN RELEASE PROCEDURE
 
         Mail-SpamAssassin-3.4.1-rc2-TRIAL.tar.gz
 
+**** TESTED TO HERE
+
 - (for a full release) 3 +1's votes from PMC members are required to 
-  proceed with an official (not pre-release) ASF software release.
+  proceed with an official, non pre-release ASF software release.
 
 - If you've been doing some steps in private, for a security release,
   now's the time to perform them publicly; tagging etc.
@@ -424,7 +481,7 @@ SPAMASSASSIN RELEASE PROCEDURE
   below but using the SVN repository at:
 
     https://dist.apache.org/repos/dist/dev/SpamAssassin
- 
+
   The choice is up to the Release Manager for these test builds.
 
 
@@ -456,28 +513,18 @@ SPAMASSASSIN RELEASE PROCEDURE
   run, so the old downloads page will stick around for a while before it's
   safe to do so.)
 
-- (for full release builds) update the main website "downloads" page:
+- (for full release builds) update the main website "downloads" page in
+  svn:
 
-        ssh spamassassin.zones.apache.org
-        cd /var/www/buildbot.spamassassin.org/staging/website
-        vi main.wmk
+    https://svn.apache.org/repos/asf/spamassassin/site
 
-  See the comment at the top of the file; you'll need to change at
-  least one variable ("relversion") to the new version number, and
-  possibly more, depending on if this is the first release of a new
-  release line.
+  2018-09-01: Not sure what this warning means:
 
   When changing the timestamp in the downloads.cgi link URL, ensure you
   use a time 2 hours from now.  The ASF websites are synced internally to
   the public HTTP servers on a bi-hourly basis, so it may take up to this
   long for a file-download link to become valid and not a 404.
 
-- rebuild the SpamAssassin website with webmake:
-
-        PATH=$HOME/sabuildtools/bin:$PATH
-        cd /var/www/buildbot.spamassassin.org/staging/website
-        webmake -F
-
 - update the 'doc' tree in the SpamAssassin website 
 
   WARNING: if you're moving to a new major release, x.y.0, you need to edit
@@ -503,7 +550,7 @@ SPAMASSASSIN RELEASE PROCEDURE
 
 - and check the entire website into SVN (see bug 4998 for reasons why).
   Note that you may need to resolve conflicts and ensure the contents of
-  'full/3.3.x' are all added successfully:
+  'full/3.4.x' are all added successfully:
 
         svn up
         svn commit -m "added new release to website"
@@ -512,7 +559,7 @@ SPAMASSASSIN RELEASE PROCEDURE
 
     repo=https://svn.apache.org/repos/asf/spamassassin
     svn delete -m "updating for new release"  $repo/tags/spamassassin_current_release_3.4.x
-    svn copy -m "updating for new release" $repo/tags/spamassassin_release_3_4_1 $repo/tags/spamassassin_current_release_3.4.x
+    svn copy -m "updating for new release" $repo/tags/spamassassin_release_3_4_2 $repo/tags/spamassassin_current_release_3.4.x
 
 - upload release .tar.gz (not .bz2) tarball to CPAN at http://pause.cpan.org/:
 
@@ -538,21 +585,6 @@ SPAMASSASSIN RELEASE PROCEDURE
   otherwise it'll be bounced by the ASF's custom spam filtering
   rules.  See [1] below for more requirements for the announce email.
 
-# IGNORING 2014-02-11 - NOT BOTHERING WITH FRESHMEAT - TOO OUT OF DATE AND
-# NOW FREECODE
-#
-#- Before doing the next step, run through the release summary mail, and
-#  write up a really short summary of the important changes in
-#  human-readable format.  This should be less than 600 chars to fit into
-#  Freshmeat's format, and to be easily understandable.
-
-#- announce to Freshmeat at http://freshmeat.net/:
-#
-#        http://freshmeat.net/projects/spamassassin/releases/new
-
-- SourceForge - We have an account with SF and haven't published to it in
-  some time.  Need to consider doing so.
-
 - Approve the posting to the announce list (the list admins will get a
   mail indicating how to do this.)
 
@@ -565,33 +597,27 @@ SPAMASSASSIN RELEASE PROCEDURE
         https://issues.apache.org/SpamAssassin/editmilestones.cgi?action=add&product=Spamassassin
         (use a sortkey of "0")
 
+- Confirm with SpamAssassin SysAdmins group that we are ready in DNS for
+  masscheck and rule updates for the next version
+
+  For many years all releases since 3.3.3 use the same ruleset.  
+    3.4.2 already has a cname for this.  
+    3.3.2 and before are set to a static ruleset.  
+
+  We have been good on using version specific and plugin conditions to 
+  allow one ruleset to rule them all.  
+
+  Since we plan to release rules that continue to be version compatible 
+  back to 3.3.3, only a CNAME is needed for newer releases to point at 
+  3.3.3.
+
 - Change the sortkey for the previous release's milestone from "0" to "10":
 
         https://issues.apache.org/SpamAssassin/editmilestones.cgi?product=Spamassassin
 
-- When releasing 3.4.0, we also did the following tasks which are less
-  documented in this README:
+- Update http://en.wikipedia.org/wiki/SpamAssassin
+
 
- - Reviewed the CREDITS to update inactive Committers
- - Reviewed the CREDITS to update Copyright
- - Reviewed the website and wiki for less obvious items like:
-	- updating things that refered to 3.3 to 3.4 such as SVN Checkout
-	  instructions.
-	- The how to Upgrade Instructions
- - Updated http://en.wikipedia.org/wiki/SpamAssassin
- - Reviewed the Project Branding Report Checklist
-
-
-- Issues not resolved with the release of 3.4.0 2014-02-11 and still not
-  resolved with the release of 3.4.1 2015-04-28
-
- - We updated to 3.4.0 and 3.4.1 is the current trunk version.  Need to
-   confirm what needs to change on the updatesd scripts to make this
-   happen.
-
- - Do we stop 3.3.X update releases?  Or do we just make sure we aren't
-   running masscheck for that version and release the updates with proper
-   ifplugin loops for any new features? 
 
 
 -------------

Modified: spamassassin/trunk/build/repackage_latest_update_rules
URL: http://svn.apache.org/viewvc/spamassassin/trunk/build/repackage_latest_update_rules?rev=1839836&r1=1839835&r2=1839836&view=diff
==============================================================================
--- spamassassin/trunk/build/repackage_latest_update_rules (original)
+++ spamassassin/trunk/build/repackage_latest_update_rules Sat Sep  1 18:09:11 2018
@@ -4,7 +4,8 @@ umask 002
 
 srcdir=`pwd`
 tmpdir=$srcdir/tmp/rulesdir.$$
-rm -rf $tmpdir; mkdir -p $tmpdir         || exit $?
+rm -rf $tmpdir; 
+mkdir -p $tmpdir         || exit $?
 
 
 PERL=${PERL:-perl}
@@ -34,11 +35,13 @@ fi
 DISTVNAME=$DISTNAME-$VERSION.r$SVNVER
 DISTVBASE=$DISTNAME-$VERSION
 
-MIRROR=http://buildbot.spamassassin.org/updatestage/
+MIRROR="http://bbmass.spamassassin.org/updates"
 
-wget -O $tmpdir/rules.tgz      $MIRROR/$SVNVER.tar.gz
-wget -O $tmpdir/rules.tgz.sha1 $MIRROR/$SVNVER.tar.gz.sha1
-wget -O $tmpdir/rules.tgz.asc  $MIRROR/$SVNVER.tar.gz.asc
+echo $SVNVER
+
+wget -O $tmpdir/rules.tgz        $MIRROR/$SVNVER.tar.gz
+wget -O $tmpdir/rules.tgz.sha256 $MIRROR/$SVNVER.tar.gz.sha256
+wget -O $tmpdir/rules.tgz.asc    $MIRROR/$SVNVER.tar.gz.asc
 
 # ensure non-empty
 [ -s $tmpdir/rules.tgz ] || exit 3
@@ -63,20 +66,20 @@ cp rules/*.pre $sitetmp
                -p /dev/null --lint \
                 || exit $?
 
-awk '{print $1}' $tmpdir/rules.tgz.sha1 > $tmpdir/sha.orig
+awk '{print $1}' $tmpdir/rules.tgz.sha256 > $tmpdir/sha.orig
 
 (
   cd $tmpdir
   ln rules.tgz $DISTVNAME.tgz
-  $PERL $srcdir/build/md5sum.pl $DISTVNAME.tgz > rules.tgz.md5    || exit $?
-  # rebuild the SHA1 sum
-  $PERL $srcdir/build/sha1sum.pl $DISTVNAME.tgz > rules.tgz.sha1  || exit $?
+  # rebuild the SHA sums
+  $PERL $srcdir/build/sha256sum.pl $DISTVNAME.tgz > rules.tgz.sha256  || exit $?
+  $PERL $srcdir/build/sha512sum.pl $DISTVNAME.tgz > rules.tgz.sha512  || exit $?
 )
 
-awk '{print $1}' $tmpdir/rules.tgz.sha1 > $tmpdir/sha.new
+awk '{print $1}' $tmpdir/rules.tgz.sha256 > $tmpdir/sha.new
 cmp $tmpdir/sha.orig $tmpdir/sha.new                              || exit $?
 
-for ext in tgz tgz.md5 tgz.sha1 tgz.asc ; do
+for ext in tgz tgz.sha256 tgz.sha512 tgz.asc ; do
   rm -f $RELDIR/$DISTVBASE.*.$ext
   if [ -f $tmpdir/rules.$ext ] ; then
     mv $tmpdir/rules.$ext $RELDIR/$DISTVNAME.$ext
@@ -84,6 +87,6 @@ for ext in tgz tgz.md5 tgz.sha1 tgz.asc
   fi
 done
 
-chgrp -R spamassassin $RELDIR || true
+#chgrp -R spamassassin $RELDIR || true
 rm -rf $tmpdir
 

Added: spamassassin/trunk/build/sha256sum.pl
URL: http://svn.apache.org/viewvc/spamassassin/trunk/build/sha256sum.pl?rev=1839836&view=auto
==============================================================================
--- spamassassin/trunk/build/sha256sum.pl (added)
+++ spamassassin/trunk/build/sha256sum.pl Sat Sep  1 18:09:11 2018
@@ -0,0 +1,11 @@
+#!/usr/bin/perl
+
+BEGIN {
+  require Digest::SHA; import Digest::SHA qw(sha256_hex sha512_hex);
+}
+
+$/=undef;
+
+while(<>) {
+  print sha256_hex($_),"  $ARGV\n";
+}

Propchange: spamassassin/trunk/build/sha256sum.pl
------------------------------------------------------------------------------
    svn:executable = *

Added: spamassassin/trunk/build/sha512sum.pl
URL: http://svn.apache.org/viewvc/spamassassin/trunk/build/sha512sum.pl?rev=1839836&view=auto
==============================================================================
--- spamassassin/trunk/build/sha512sum.pl (added)
+++ spamassassin/trunk/build/sha512sum.pl Sat Sep  1 18:09:11 2018
@@ -0,0 +1,11 @@
+#!/usr/bin/perl
+
+BEGIN {
+  require Digest::SHA; import Digest::SHA qw(sha256_hex sha512_hex);
+}
+
+$/=undef;
+
+while(<>) {
+  print sha512_hex($_),"  $ARGV\n";
+}

Propchange: spamassassin/trunk/build/sha512sum.pl
------------------------------------------------------------------------------
    svn:executable = *

Modified: spamassassin/trunk/build/update_devel
URL: http://svn.apache.org/viewvc/spamassassin/trunk/build/update_devel?rev=1839836&r1=1839835&r2=1839836&view=diff
==============================================================================
--- spamassassin/trunk/build/update_devel (original)
+++ spamassassin/trunk/build/update_devel Sat Sep  1 18:09:11 2018
@@ -46,15 +46,21 @@ gzip  -f9vc $DISTVNAME.tar > $DISTVNAME.
 bzip2 -f9vc $DISTVNAME.tar > $DISTVNAME.tar.bz2 || exit $?
 zip   -rv - $DISTDNAME     > $DISTVNAME.zip     || exit $?
 
+#Adding information to run gpg-agent so a non-privileged user can sign - There should be a check to see if this is done
+gpg-agent --homedir $HOME/sabuildtools/sasigningkey --daemon --write-env-file "${HOME}/sabuildtools/sasigningkey/.gpg-agent-info"
+
 for ext in tar.bz2 tar.gz zip ; do
   cp $DISTVNAME.$ext $RELDIR
 
-  perl build/md5sum.pl $DISTVNAME.$ext > $RELDIR/$DISTVNAME.$ext.md5  || exit $?
-  perl build/sha1sum.pl $DISTVNAME.$ext > $RELDIR/$DISTVNAME.$ext.sha1 || exit $?
+  #NO LONGER SIGNING WITH SHA1 OR MD5
+  #perl build/md5sum.pl $DISTVNAME.$ext > $RELDIR/$DISTVNAME.$ext.md5  || exit $?
+  #perl build/sha1sum.pl $DISTVNAME.$ext > $RELDIR/$DISTVNAME.$ext.sha1 || exit $?
+  perl build/sha256sum.pl $DISTVNAME.$ext > $RELDIR/$DISTVNAME.$ext.sha256 || exit $?
+  perl build/sha512sum.pl $DISTVNAME.$ext > $RELDIR/$DISTVNAME.$ext.sha512 || exit $?
 
   rm -f $DISTVNAME.$ext.asc*
   if [ -d $HOME/sabuildtools/sasigningkey ]; then
-    $HOME/sabuildtools/bin/gpg --homedir $HOME/sabuildtools/sasigningkey -bsa $DISTVNAME.$ext || exit $?
+    gpg --homedir $HOME/sabuildtools/sasigningkey --detach-sign --sign --armor $DISTVNAME.$ext || exit $?
     mv $DISTVNAME.$ext.asc $RELDIR/$DISTVNAME.$ext.asc || exit $?
   fi
 
@@ -64,5 +70,5 @@ done
 test -f Makefile && make distclean
 rm -f $DISTVNAME.*
 
-chgrp -R spamassassin $RELDIR
+#chgrp -R spamassassin $RELDIR
 ls -l $RELDIR