@ArneBab ArneBab released this Nov 3, 2017 · 341 commits to next since this release

Assets 10
Freenet 0.7.5 build 1479 is now available. [overview]

This release ships WoT 19 which provides
performance and UI improvements. For details
see SSK@OJlMHMDMWe7KmHgFS7XlJWGU0XVfop3ADDMsdLrGlqI,bB-kcuDCGlEvp5rAf8cwrCRI7dTaMi0C37HD7Q6JucI,AQACAAE/WoT-19-changelog.txt
or  https://github.com/freenet/plugin-WebOfTrust/releases/tag/build0019

update.sh can now provide a failover via clearnet again
(which was broken when our website SSL certificate
provider stopped providing SSL certificates),
but only for fproxy itself, not for plugins or
dependencies. This is the first step to allow us
to again ship changes which touch routing algorithms.
On GNU/Linux and MacOSX you can use `./update.sh`
to get the most recent version. Note however that
this will contact github via clearnet. You should
only need that if we break the auto-updater in the
larger transitions to come (hopefully not).

You can speed up the web interface by letting the browser
cache SSK and CHK content (there is a new config option).
This will however leave traces in your browser cache.

Also:

- optimized network settings for the new structure since the link
  length fix : less peers for the same bandwidth should result in
  higher throughput per connection. This allows for less powerful
  devices to join (with low bandwidth settings) and should provide
  better bandwidth utilization for very fast nodes.

- Re-enable RSA-based ciphers for SSL-connections to the node

- add jfniki index bookmark (use "add default bookmarks" to get it)
- l10n: pull translations from transifex

- plugins: WebOfTrust build0019,
  source available at
  CHK@gt~foMPFR5ZAhOhSOsFw68f5PBjJuCYpe~ZXPPA1t6g,pk7h34mG5hRsBPhVFWr5UllVbJXU-PS7tC9rbILvoOk,AAMC--8/WebOfTrust-build0019-source.tar.bz2
- plugins: Freemail v0.2.7.3 (new translations)
  source available at
  CHK@ZOfWMdsxhS1Lg6QKWK4CJZvVt9RYkkjFnU6-PCizHbg,zfTEQX6DexdUm9-eGyDSP5vKvp76b38SCBS7W9zkoGE,AAMC--8/Freemail-v0.2.7.3-source.tar.bz2

Thank you for using Freenet!

- Arne Babenhauserheide

Developer changelog:

2017-11-03

Changes in 1479:

This build finally updates WoT to build 19. For details, see
SSK@OJlMHMDMWe7KmHgFS7XlJWGU0XVfop3ADDMsdLrGlqI,bB-kcuDCGlEvp5rAf8cwrCRI7dTaMi0C37HD7Q6JucI,AQACAAE/WoT-19-changelog.txt
It now provides a developer manual:
https://github.com/freenet/plugin-WebOfTrust/blob/cc62a06eb541a147d88ffae84ab43cd48c18adc5/developer-documentation/core-developers-manual/OadSFfF-version1.2-non-print-edition.pdf

Also update.sh can provide a failover via clearnet
again, but only for fproxy itself, not for plugins
or dependencies. This is the first step to allow us
to again ship changes which touch routing algorithms.

You can speed up the web interface by letting the browser
cache SSK and CHK content (there is a new config option).
This will however leave traces in your browser cache.

Also:

- optimized network settings for the new structure since the link
  length fix : less peers for the same bandwidth should result in
  higher throughput per connection. This allows for less powerful
  devices to join (with low bandwidth settings) and should provide
  better bandwidth utilization for very fast nodes.

- Re-enable RSA-based ciphers for SSL-connections to the node

- add jfniki index bookmark (use "add default bookmarks" to get it)
- l10n: pull translations from transifex

- plugins: WebOfTrust build0019,
  Changelog: https://github.com/freenet/plugin-WebOfTrust/releases/tag/build0019
  or: SSK@OJlMHMDMWe7KmHgFS7XlJWGU0XVfop3ADDMsdLrGlqI,bB-kcuDCGlEvp5rAf8cwrCRI7dTaMi0C37HD7Q6JucI,AQACAAE/WoT-19-changelog.txt
  source available at
  CHK@gt~foMPFR5ZAhOhSOsFw68f5PBjJuCYpe~ZXPPA1t6g,pk7h34mG5hRsBPhVFWr5UllVbJXU-PS7tC9rbILvoOk,AAMC--8/WebOfTrust-build0019-source.tar.bz2
- plugins: Freemail v0.2.7.3 (new translations)
  source available at
  CHK@ZOfWMdsxhS1Lg6QKWK4CJZvVt9RYkkjFnU6-PCizHbg,zfTEQX6DexdUm9-eGyDSP5vKvp76b38SCBS7W9zkoGE,AAMC--8/Freemail-v0.2.7.3-source.tar.bz2

- Arne Babenhauserheide (release manager)

---!Fred changes
Arne Babenhauserheide (freenet releases) (18):
      l10n: pull translations from transifex
      update NEWS.md
      Update Freemail to v0.2.7.3
      Update WebOfTrust to build0019
      update NEWS.md
      NEWS.md: Add CHK to source for updated plugins
      fix whitespace
      plugins: WebOfTrust recommend v19
      l10n: fix broken tag in nb-no
      Update default bookmark editions
      Update default bookmark editions
      dependencies.properties: update.sh with duct tape
      NEWS: note that RSA is for SSL
      bookmarks: note maintainer of statistics site
      update statistics bookmark manually
      update statistics bookmark to latest version
      Update default bookmark editions
      Build 1479

David ‘Bombe’ Roden (2):
      Make handleDownload method private
      Add config option to allow caching of CHK and SSK keys

Florent Daigniere (1):
      Re-enable RSA-based ciphers

drak@kaverne (13):
      adjust bw limit: min peers 4 and min bandwidth 5KiB/s
      opennet: last network size estimate: 3000
      node: set minimum bandwidth to 4KiB
      add JFniki Index of indexes
      jfniki: forkable -> collaborative
      update NEWS.md for 1479
      bookmarks: add the statistics page
      README: fix test skipping instruction
      bookmarks: fix jumping layout on missing activelink
      Bookmarks: Update descriptions of operhiem1 and ArneBab
      fix binary or used instead of boolean or
      NEWS: link changelog of WoT19
      CSS: tabify

---!Freemail changes
Freemail changes:
Arne Babenhauserheide (freenet releases) (3):
      l10n: pull de,fr,hu,it,nl,pl,ru from transifex
      update version to 0.2.7.3
      also increase build number

---!WoT changes (duplicate lines removed)
Bert Massop (1):
      Improve captchas by randomization

Daniel Roberts (1):
      Edit IfNull guard so that it throws when nickname is null

xor-freenet (329):
      English l10n: Improve Common.UnknownIdentityExceptionDescription
      CreateOwnIdentityWizardPage.BackButton/ContinueButton: Add direction     symbols
      CreateOwnIdentityWizardPage.RetryButton: Improve grammar
      English l10n: Continue backporting improvements from German
      German l10n: Fix accidental double space
      German l10n: "URI" / "Private key" -> "Secret key"
      German l10n: Shorten
      German l10n: "Erroneous name" -> "Name not allowed"
      German l10n: "nickname" -> "name"
      German l10n: Reduce sentence length
      English l10n: "Preferences" -> "Settings"
      German l10n: Fix missing plural
      German l10n: Clarify that trust values are assigned by the user
      German l10n: Cross-reference sentences
      German l10n: Reduce length of sentences
      German l10n: Better explanation of captcha procedure
      German l10n: Fix imprecise error message
      German l10n: Match word used for request URI on multiple UI pages
      German l10n: Improve variety of words used to explain captchas
      German l10n: Unify
      German l10n: Move text to paragraph which it belongs to
      German l10n: Add missing quotation marks
      German l10n: Remove useless "also" ("auch")
      German l10n: Remove escape symbol from Transifex import
      German/English l10n: Add missing unit to statistics
      German l10n: Add missing space
      English l10n: Finish backporting improvements from German
      English/German l10n: Use different wording in tooltip than string     described by it
      English l10n: Fix remaining occurrence of "fetch" -> "download"
      English l10n: Fix remaining occurrence of "insert" -> "upload"
      English l10n: Fix wrong capitalization
      English / German l10n: Differentiate box header from box content on "My     identity" page
      Stuff which should have been in previous commit
      Ant builder: Fail if JUnit not found; Tell user how to fix this
      Merge branch 'issue-0006557-fail-build-if-no-junit' into next
      WOTUtil: Fix falsely succeeding with commands such as -testAndRepair if     database does not exist
      Merge branch 'issue-0006651-wotutil-testAndRepair-fix' into next
      XMLTransformer: Disallow import of trust lists with too many trusts
      XMLTransformer: Log parsing failures as warning so developers notice     them
      Merge branch 'issues-0006663-0006671-xml-parsing-fixes' into next
      KnownIdentitiesPage: Workaround for issue 6596
      KnownIdentitiesPage.getPageCount(): Fix handling identityCount==0
      Merge branch 'issues-0006596-0006640-KnownIdentitiesPage-fixes' into     next
      IdentityFileProcessor: Fix processing slowing down startup
      WebOfTrust unit test constructor: Apply same changes as previous commit     applied to non-test constructor
      Merge branch 'issue-0006653-startup-performance' into next
      StatisticsPage: Add stats about incremental distrust computations which     took more than 10 seconds
      Merge branch 'issue-0006648-score-computation-stats' into next
      WebOfTrust: New function isTerminated()
      AbstractFullNodeTest: Test WebOfTrust.isTerminated() (fails     currently!) and .verifyDatabaseIntegrity()
      AbstractFullNodeTest: Fix for discoveries of     https://bugs.freenetproject.org/view.php?id=6683
      AbstractFullNodeTest: Fix false failure
      WebOfTrust: New function: getDatabaseFile()
      AbstractFullNodeTest: Fix DatabaseClosedException
      AbstractFullNodeTest: Test Score database correctness after tests are     finished
      ScoreTest: Ensure correctness of database in terms of     WebOfTrust.verifyAndCorrectStoredScores()
      AbstractJunit3BaseTest: Organize imports
      AbstractJUnit3BaseTest: After tests are finished, test Scores, database     integrity and termination
      WebOfTrust: Fix getDatabaseFile() to work upon WoT's constructed using     WebOfTrust(String)
      AbstractJUnit4BaseTest: After tests are finished, test Scores, database     integrity and termination
      AbstractFullNodeTest: New function testTerminate(): Tests plugin     unloading
      Merge branch 'issues-0006588-0006682-0006686-unit-tests' into next
      WebOfTrust.cloneDatabase(): Add TODO of fixing misuse of HashSet
      IdentitifierHashSet: Implement hashCode() and equals()
      IdentifierHashSet: Add skeleton for unit test of this class
      IdentifierHashSetTest: Reduce line count
      AbstractJUnit4BaseTest.addRandomTrustValues(): Return Trusts; be less     strict in parameter requirements
      RankComputationTest: Compile-fix
      IdentifierHashSetTest: Implement setUp()
      IdentifierHashSetTest: Fix AssertionFailedError
      IdentifierHashSetTest: Implement testAdd()
      IdentifierHashSet.add(): Document & test behavior of add(null)
      IdentifierHashSetTest: Implement testAddAll()
      IdentifierHashSetTest: Improve test dataset
      IdentifierHashSetTest: Documentation
      IdentifierHashSetTest: Self-test
      IdentifierHashSetTest: Implement testClear()
      IdentifierHashSetTest: Implement testContains()
      IdentifierHashSetTest: Implement testContainsAll()
      IdentifierHashSetTest: Reduce probability of over-catching
      IdentifierHashSetTest: Implement testIsEmpty()
      IdentifierHashSetTest: Implement testIterator
      IdentifierHashSetTest: Improve robustness
      IdentifierHashSetTest.testIsEmpty(): Use duplicates
      IdentifierHashSetTest: Implement testRemove()
      IdentifierHashSet.add(): Fix modifying set when it should not
      IdentifierHashSetTest: Improve test data set
      IdentifierHashSetTest.testIterator(): Document why this tests more than     apparent; improve tests of that
      IdentifierHashSetTest: Impelement testRemoveAll()
      IdentifierHashSetTest: Fix code duplication
      IdentifierHashSetTest: Improve existing tests
      IdentifierHashSetTest: Implement testRetainAll()
      IdentifierHashSetTest: Implement testSize()
      IdentifierHashSetTest: Implement testToArray()
      IdentifierHashSetTest: Implement testToArrayTArray()
      IdentifierHashSetTest: Implement testHashCode()
      IdentifierHashSetTest: Add more self-tests
      IdentifierHashSetTest: Improve tests by recycling return values we     already get anyway
      IdentifierHashSetTest: Test stability of hashCode()
      IdentifierHashTestTest: Finish implementation by implementing     testEqualsObject()
      IdentifierHashSet: Add FIXME
      IdentifierHashSet.equals(): Fix to comply with Object.equals()     specification
      IdentifierHashSet.equals(): Optimize performance
      IdentifierHashSet: Fix visiblity
      IdentifierHashSet: Allow specifying an initial capacity
      IntroductionClient: Fix invalid use of HashSet
      IdentifierHashSet: Allow specifying an initial data set
      WebOfTrust.cloneDatabase(): Fix invalid use of HashSet
      WebOfTrust.cloneDatabase(): Fix code duplication
      WoTTest: JavaDoc
      AbstractJUnit4BaseTest: Add addRandomIdentities() which also produces     OwnIdentitys
      AbstractJUnit4BaseTest: Make JavaDoc point developers to new function of     previous commit
      AbstractJUnit4BaseTest.addRandomIdentities(): Add test for that function
      AbstractJUnit4BaseTest: Move self-tests to     AbstractJUnit4BaseTestSelfTest
      WebOfTrust.deleteDuplicateObjects(): Make more visible for unit tests
      Add draft of unit test for WebOfTrust.deleteDuplicateObjects()
      WOTUtil: Add fcpCall() to use FCP messages upon WoT
      WOTUtil: Fix non-output on stdout, use stderr instead
      WOTUtil: Implement "-fcp" command line operation using fcpCall()
      Merge branch 'issue-0006812-wotutil-fcp' into next
      WebOfTrustTest.testDeleteDuplicateObjects(): Remove premature     optimization
      WebOfTrustTest.testDeleteDuplicateObjects(): Finish implementation     (fails expectedly)
      Identity.deleteWithoutCommit(): JavaDoc dangerous use
      WebOfTrustTest.testDeleteDuplicateObjects(): Test whether after deleting     duplicates the database is equals to what it was before creating them
      WebOfTrustTest.testDeleteDuplicateObjects(): Fix bogus setup
      WebOfTrust.deleteDuplicateObjects(): Deprecate & explain why
      Rewrite WebOfTrust.deleteDuplicateObjects(): Fix to properly deal with     Trusts & also deal with Scores (unit tests still failing!)
      Merge branch 'issue-0006814-setNickname-NPE-text-tweak' into next
      l10n: Update existing translations from Transifex to remove/update     strings which changed in English; fix web interface to handle removed     trailing whitespace
      l10n: Add new languages from Transifex: Croatian, Portugese (Portugal)
      Merge branch 'issue-0006569-English-l10n-revamp' into next
      l10n: Fix wrong filenames of Norwegian Bokmål and Portuguese (Brazil)
      Merge branch 'issue-0006817-fix-broken-translations' into next
      l10n: Add config for Transifex command line tool "tx"
      Merge branch 'issue-0006815-add-transifex-config' into next
      AbstractJUnit4BaseTest: Fix overly restrictive assert()
      WebOfTrustTest.testDeleteDuplicateObjects(): Fix bogus failure
      WebOfTrustTest.testDeleteDuplicateObjects(): Workaround failure due to     db4o bug
      English l10n- DeleteOwnIdentityPage.DeleteIdentityBox.Text2: Grammar     fix
      English l10n - StatisticsPage.SummaryBox.FullRecomputations: Fix missing     plural 's'
      English l10n - StatisticsPage.SummaryBox.NotInsertedCaptchasSolutions:     Fix ambiguity
      WebOfTrust.deleteDuplicateObjects(): Fix typo in JavaDoc
      WebOfTrust.deleteDuplicateObjects(): Tweak misconception in the JavaDoc
      WebOfTrust.computeRankFromScratch(): Improve readability
      WebOfTrust.computeRankFromScratch_Caching(): Improve readability
      IdentifierHashSet: Add documentation FIXME
      AbstractJUnit3BaseTest: JavaDoc dangerous use of HashSet
      Merge branch 'issue-0006818-english-l10n-transifex-issues' into next
      Add skeleton of build0019 changelog
      build0019 Changelog: Add draft of summary and outlook
      build0019 Changelog: Mention startup time improvement
      build0019 Changelog: Add instructions how to update
      build0019 Changelog: Import issue list from bugtracker; sort it
      Add xor's WoT bachelor thesis as developer's manual
      Merge branch 'issue-0006840-add-wot-thesis' into next
      build0019 Changelog: Add issue 0006840
      build0019 Changelog: Remove useless " - resolved." / " - assigned" from     copypasting
      build0019 Changelog: Sort issues by importance - user part only
      build0019 Changelog: Move issue from developer to user section
      build0019 Changelog: Reflect renaming / recategorization of issues
      build0019 Changelog: Mention WoT bachelor's thesis in summary
      build0019 Changelog: Sort issues by importance - developer part
      build0019 Changelog: Issue 0006653
      build0019: Issue 0006663
      build0019 Changelog: Issue 0006640
      AbstractJUnit3BaseTest: Documentation
      AbstractJUnit3BaseTest: Add getAll{Identities,Trusts,Scores}()
      WoTTest.test_RestoreOwnIdentity_DeleteOwnIdentity_Chained(): Fix     dangerous use of HashSet
      AbstractJUnit4BaseTest: Add functions from AbstractJUnit3BaseTest
      AbstractJUnit3BaseTest: Deprecate functions which were copied to     AbstractJUnit4BaseTest
      SubscriptionManagerFCPTest: Fix dangerous use of HashSet
      build0019 Changelog: Issue 0006815
      build0019 Changelog: Issue 0006557
      build0019 Changelog: Issue 0006588
      build0019 Changelog: Issue 0006686
      build0019 Changelog: Security warning about version correlation. Thanks     to ArneBab!
      build0019 Changelog: Issue 0006682
      build0016 Changelog: Issue 0006594
      build0019 Changelog: Issue 0006671
      build0019 Changelog: Issue 0006814
      AbstractJUnit3BaseTest: Reduce code duplication
      AbstractJUnit3BaseTest: Reduce duplication of documentation
      AbstractJUnit3BaseTest.newHashSetFromUniqueObjects(): Test input
      AbstractJUnit3BaseTest: Fix JavaDoc syntax errors
      Add new interface ReallyCloneable
      AbstractJUnit4BaseTest: Add new functions from AbstractJUnit3BaseTest
      AbstractJUnit3BaseTest: Fix JavaDoc links to reflect changing of     function signature
      AbstractJUnit4BaseTest: Reduce code duplication
      build0019 Changelog: Issue 0006840
      build0019 Changelog: Issue 0006651
      build0019 Changelog: Issue 0006812
      IdentityFile: Change visibility to public
      WOTUtil: New command: -dumpIdentityFile
      Merge branch 'issue-0006847-IdentityFile-dumper' into next
      build0019 Changelog: Sync with bugtracker
      IdentityFile: Begin changing to human readable file format: Specify     format
      IdentityFile: Adapt members and getters to new file format
      IdentityFile: Adapt write() to new file format
      XMLTransformer: Move charset to constant
      IdentityFile: Finish changing to new file format (NOT TESTED): Adapt     read()
      IdentityFile: Organize imports, add missing ones
      IdentityFile: Make file format more similar to FCP messages
      IdentityFile: Use CRC32 as checksum instead of various hashCode()     implementations
      IdentityFile: Bump file format version
      IdentityFile: Fix outdated documentation
      IdentityFile: Rename "FileFormatVersion" to "Version"
      Revert "Merge branch 'issue-0006847-IdentityFile-dumper' into next"
      IdentityFile: Fix syntax error. Sorry.
      IdentityFile: Document lack of ability to specify a Charset when writing     a SimpleFieldSet
      Merge branch 'issue-0006846-human-readable-IdentityFile' into next
      Ant builder: Compile for Java 7
      Eclipse builder: Compile for Java 7
      Merge branch 'issue-0006849-use-java7' into next
      Travis CI: Copy config from fred
      Travis config: Adapt for WoT
      Travis CI: Don't update fred code if we just pulled it
      Travis CI: Always recompile fred in case its code changed
      Travis CI: Fix Git error
      Travis CI: Remove redundant config
      Travis CI: Attempt to fix directory structure issues
      Travis CI: Fix config syntax error
      Travis CI: Fix compiler errors due to missing JUnit API
      Travis CI: Fix WoT not finding BouncyCastle
      Travis CI: Replace outdated bcprov.jar versions in Travis cache
      Travis CI: Fix JRE buffer overflow
      Merge branch 'issue-0006760-use-travis-ci' into next
      newHashSetFromUniqueObjects(): Be less restrictive in parameter type     requirements
      newHashSetFromUniqueObjects(): Rename to listToSetWithDuplicateCheck()
      listToSetWithDuplicateCheck(): Fix JavaDoc to relax requirements of     parameters and mention all features of the function
      listToSetWithDuplicateCheck(): Adapt code to more promises having been     made in the JavaDoc
      listToSetWithDuplicateCheck(): Rename parameter to match renaming of     function
      Ant builder: Begin implementing Cobertura support: Add directory
      Cobertura: Add on/off switch, opportunistically enable if JAR is found
      Cobertura: Inject Cobertura code into unit test WoT JAR
      Cobertura: Finish implementation: Run in tests, generate HTML report.
      Cobertura: Fix JVM crash on Java 7
      Merge branch 'issue-0006861-analyze-test-coverage' into next
      IntroductionPuzzle: Implement ReallyCloneable
      IntroductionPuzzleStoreTest.testGetUninsertedOwnPuzzlesByInserter(): Fix     dangerous use of HashSet
      IntroductionPuzzleStoreTest.testGetUnsolvedByInserter(): Fix dangerous     use of HashSet
      IntroductionPuzzleStoreTest.testGetOfTodayByInserter(): Fix dangerous     use of HashSet
      IntroductionPuzzleStoreTest.testGetUnsolvedPuzzles(): Documentation
      IntroductionPuzzleStoreTest.testGetUnsolvedPuzzles(): Fix dangerous     use of HashSet
      IntroductionPuzzleStoreTest: Finish fixing dangerous use of HashSet for     this class
      SubscriptionManagerFCPTest: Documentation
      build0019 Changelog: Adjust summary to recent influx of new developer     tools
      build0019 Changelog: Issue 0006849
      build0019 Changelog: Issue 0006760
      AbstractFullNodeTest: Fix for fred build 1474 changes
      L10n: Fix to comply with fred >1475 language codes
      build0019 Changelog: Issue 0006861
      build0019 Changelog: Issue 0006846
      build0019 Changelog: Issue 0006817
      build0019 Changelog: Issue 0006816
      build0019 Changelog: Issue 0006615
      build0019 Changelog: Say thanks to the Transifex folks
      build0019 Changelog: Batch-describe the 8 English l10n issues
      build0019 Changelog: Issue 0006596
      build0019 Changelog: Remove some template stuff
      build0019 Changelog: Finish summary
      build0019 Changelog: Remove issue 6615
      English l10n: Fix leftover usage of "score" to be "trust value" instead
      build0019 Changelog: Issue 0006648
      Remove empty constructor
      WebOfTrust.computeAllScores...(): Fix dangerous/slow use of HashMap
      Documentation
      IntroductionPuzzleStoreTest: Trim imports
      WebOfTrustTest: Trim imports
      ScoreComputationBenchmark: Organize imports
      IdentifierHashSet.equals(): Document lack of compliance to interface,     thanks to bertm!
      Merge branch 'issue-0006594-fix-HashMap-Set-etc-misuse' into next
      build0019 Changelog: Remove FIXME which is resolved in branch next
      build0019 Changelog: Remove issue 0006797, was closed
      CaptchaFactory1: Move JPEG generation code to class
      CaptchaFactory1: Indent
      CaptchaFactory1: Don't pass around stream, not needed
      CaptchaFactory1: Add main() for testing, creates captcha JPG files
      CaptchaFactory1: Organize imports
      CaptchaFactory1.main(): Fix crashing upon random creation of same text
      CaptchaFactory1: Resolve TODO of estimating max captcha size
      CaptchaFactory1: Remove useless variable
      Merge branch 'issue-0006722-captcha-security-improvement' into next
      build0019 Changelog: Issue 0006722
      Merge branch 'build0019-changelog' into next
      build0019 Changelog: Change minor version
      build0019 Changelog: Don't mention which fred release this will be     bundled with, not sure yet.
      build0019 Changelog: Fix outdated info on Freenet not having funds
      build0019 Changelog: Inline link
      build0019 Changelog: Grammar fix
      build0019 Changelog: Finish
      Fix "Correcting wrong IdentityFetcher shouldFetch state: was: false;     should be: true" during startup with assertions enabled
      WebOfTrust.deleteDuplicateObjects(): Improve performance
      Update edition numbers of seed identities
      build0019 Changelog: Update test coverage links
      Version 0.4.5 build0019