linkTaskManagerChoice: guard calling methods on None
linkTaskManager: Log error location, input
ChoicesDict: implement .fromstring constructor
Revert "linkTaskManagerChoice: print backtraces"

Stderr is already being printed into the MCPServer log, and the
Dashboard log is owned by a different user so this introduced unexepcted
issues.

It would still be advantageous to convert the MCPServer to use the
logging module in the future.

This reverts commit 94d9c36ec3a4ac47baf28ae588d3863cc4389d3f.
Revert PREMIS event limiting SQL

This was intended to limit PREMIS events for Maildir messages, but
instead was eliminating *all* PREMIS events for certain transfer types.

The immediate issue is that transfer type can be NULL under certain
circumstances, which caused != and = comparisons to both return false.
However, even after fixing this, the resulting METS seems to have a
few fewer events.

This change may come back after further testing.

This reverts commit 24d31e0c76106e6e076c90a72bd50c91f05f9977.
Update store AIP for Storage Service changes

Storage service requires pipeline URI for creating a package.  Also added
error printing to the storeAIP script.

Note that this still works if the storage service has not been update.
Add user-specified manual normalization event details

refs #5216

Add a form to enter event detail information for manually normalized files
after Normalization takes place.  Only works for files that were normalized
prior to Transfer.

Update normalize.py to add Derivation and Event for manually normalized
files.  Files are left in the manualNormalization directory so that redo
normalization doesn't delete them with Archivematica-generated files.
Update the cleanup script to remove duplicate Events and Derivations. Update
scipt that associates original and manual normalized files to modify an
existing Event, if it can find one.

Add Events & Derivations to models.py.
Add wait point for entering manual normalization metadata

refs #5216

Add a 'user choice' after handling manually normalized files, so the system
pauses until manual normalization event detail information has been
entered. Since this is not a real choice, use set replacement dict with no
real value in replacement dict.
Add preconfigured choice to skip entering manual normalization metadata

refs #5216

Add 'skip waiting to allow manual normalization of metadata entry' to
preconfigured choices, and set the default to yes (skip waiting).
Move watchedDirectory to correct location
Minor fixes from code review
Add metadata entry reminder at the end of transfer

This adds an optional new processing step that prompts users to add
Dublin Core metadata at the last possible step before the AIP METS file
is written. It can be disabled via the processing configuration screen.

Refs #6217
removing elasticsearch from dependencies

refs: #6343

ElasticSearch will need to be installed separately from 1.1 relase and on.
Rather than maintaining our own custom .deb package, Archivematica will use the
official ElasticSearch deb from packages.elasticsearch.org

Installation instructions have been updated on wiki at
https://www.archivematica.org/wiki/Install-1.1-packages

dev-installer will need to be updated still.
Update pre-METS creation metadata reminder

refs #6217, #5216

Both 5216 and 6217 require a wait before the AIP METS is created to
allow the user to enter metadata.  Removed the 5216 manually normalized
files only wait, and updated the more general wait to work in all cases.

Moved the wait to before the MicroServiceChainLink split and added a
watched directory, removed the manually normalized files only wait and
associated watched directory.
Communicate paths to/from storage service as base64

It's possible for users to attempt to begin transfers using files whose
names contain non-Unicode, non-ASCII characters. Since communication
to/from the storage service and between the dashboard and JS frontend
occurs via JSON responses, which mandates Unicode, it's necessary to
find an alternate way to represent paths.

This moves to communicate paths back and forth in base64 encoding, and
vendors a JS base64 library to let the UI decode and encode paths as
appropriate.

refs #6067
Treat paths as binary blobs, not unicode strings

Since paths can contain any arbitrary characters, and are essentially
treated on-disk as binary, Archivematica needs to treat these as
binary strings that could contain any arbitrary characters.

This alters several database fields to be binary types, alters several
bits of intenral code so that paths are always treated as str types
instead of unicode strings, and fixes up a few existing bits of string
decoding to ensure they can cope with non-unicode strings (at the cost
of potentially creating mojibake).

refs #6067

Closes #11.
Add base64.js to all templates that use a file explorer

refs #6067
directory_to_dict: return base64-encoded values

refs #6067
Minor fixes

Fixed template typo, added display for when formset is empty.
Clean up exception logs

Clean up output when an exception happens, print more detailed information
about error.