FreeNet Changelog

What's new in FreeNet 0.7.5 Build 1498 Pre-release 1

Oct 16, 2023
  • Shorten description of sharesite freesite for english
  • gzip: replace test workaround by fixing the output of the compressor — thanks to Bombe for the SingleOffsetReplacingOutputStream!
  • replace GregorianCalendar with java.time.OffsetDateTime in CurrentTimeUTC — thanks to Veniamin Fernandes
  • CSS: Support word-wrap: anywhere
  • Move UPnP2 to normal plugins. It does not seem broken, but UPnP does
  • Move Library plugin to advanced plugins because new users tend to get lost with it
  • html-filter: allow summary and details html element. Thanks to naejadu
  • 💄 Add a bit of styling to the plugin list (for winterfacey) — thanks to Bombe
  • 🔥 Remove option that to load plugins from central server — thanks to Bombe!
  • fix: invalid max store size showed bytes with GiB suffix
  • polish: show datastore size warning with GiB suffix
  • Refine ClientRequestSelectorTest, PersistentJobRunnerImplTest, SplitFileFetcherStorageTest, and SplitFileInserterStorageTest — thanks to Veniamin Fernandes
  • Change deprecated jcenter() maven repo to mavenCentral() — thanks to Veniamin Fernandes
  • 🐛 Fix JarClassLoader’s ability to work with ServiceLoader — thanks to Bombe!
  • refactor the browser warning wizard page
  • fix the flag size of nepal — thanks to Percept0r@NYZkOs7eQ…!
  • Switch swiss flag to civil and state ensign — thanks to Percept0r@NY
  • bookmarks: Add Opennet SeedNodes stats site
  • Reorder starting bookmarks: FFS → clean spider → Index of Indexes
  • Re-order default software bookmarks by ease of use from fproxy
  • Add generate media site to the default bookmarks
  • Show the noderef in basic-mode: it is now robust enough
  • Added tests for PebbleUtils — thanks to Bombe!
  • 🐛 Fix NPE when subsets are not initialized — thanks to Bombe
  • reduce logging for too many excluded sub-arrays thanks to Hiina
  • disable setting for new-load-management (NLM broke nodes)
  • add utility to disable a config option, thanks to Bombe
  • merge debian package as default build action thanks to DC*/desyncr! This resolves one of our high impact tasks.

New in FreeNet 0.7.5 Build 1497 (Mar 5, 2023)

  • Changes in 1497:
  • This release fixes a severe vulnerability in path folding that allowed to distinguish between downloaders and forwarders with an adapted node that is directly connected via opennet.
  • This vulnerability was reported to the Project by Prof. Ming Yang and Prof. Zhen Ling from the School of Computer Science and Engineering, Southeast University, Prof. Xinwen Fu from the Miner School of Computer & Information Sciences, University of Massachusetts Lowell, and Yonghuan Xu from School of Cyber Science and Engineering, Southeast university.
  • Yonghuan also provided support in fixing the vulnerability. Thank you very much!
  • To reduce the probability of hitting other problems in path folding, we also merged the pull-request to completely avoid path folding at HTL 17 or higher.
  • Due to changes in the infrastructure, this release has to re-use the Windows Installer from 1496, so newly installed nodes on Windows will still be vulnerable for a few minutes after installation until they auto-update. This should get fixed in 1498.
  • Besides this change, there’s a German translation fix by an anonymous contributor: Email → E-Mail.
  • And a fix for a test that points towards the need to check the compression code on newer JDKs.

New in FreeNet 0.7.5 Build 1496 (Jan 7, 2023)

  • Fix keepalive:
  • This fixes breakage in keepalive by ignoring a negative maxsize.
  • This was broken by a fix to the client to actually honor the maxsize which was ignored before, so ignoring invalid values provides a compatibility layer for old plugins.
  • Update translations:
  • Imported updated translations from transifex.
  • The biggest changes were done by the Russian team, adding or updating almost 200 translations.
  • The German team changed over 70 translations.
  • And 1 to 7 changes were done by teams es, fa, fi, fr, hu, it, ja, nb-no, nl, pt (br and PT), sv, zh-cn and zh-tw.
  • A big thank you for your work!
  • Bookmark curation:
  • Replaced the unmaintained freemail site in the default bookmarks by a maintained one — thanks to Cynthia!
  • Further changes:
  • add meta charset tests
  • add missing test annotations — thanks to vwoodzell!

New in FreeNet 0.7.5 Build 1495 (Dec 30, 2022)

  • New users:
  • There is a new firsttime wizard for single-step setup, contributed by redwerk and finally merged after resolving dependency-requirements.
  • To further ease the start, the bookmarks are re-organized with "starting points" at the top.
  • User experience:
  • For integration in browser extensions, TheSeeker added support for the schemes web+freenet and ext+freenet which do not need further allow-listing by browsers to use.
  • CometZ@6DtYG~ created a new theme sky-dark-static, a clean dark scheme, simpler than Winterfacey.
  • To enable more beautiful Freesites, Spider Admin, naejadu and vwoodzell extended the CSS filter to enable sticky, transition, and word-wrap.
  • The m3u-player is now only inserted into sites which contain at least one video or audio tag. When a part of a stream fails, it is now skipped, allowing for continuous playback without user-intervention.
  • Performance:
  • For better lifetime of larger files, the healing size is increased from 16 to 256 MiB, so a 512 MiB file will keep working if accessed
  • once every 10 days. To keep alive files explicitly, you can use the keepalive plugin.
  • And the pending keys optimizations by Eleriseth should reduce the CPU load on very fast nodes with many peers.
  • Further technical improvements:
  • finally merged the HashingAPI by unixninja92, a GSoC project that had gotten lost in the pull requests. This provides an easy and well-tested way to create and verify different types of Hashes from byte arrays, including Sha256 and TigerTree. #258
  • old announcement fixes by toad were finally mergedunit tests were upgraded to junit4, thanks to vwoodzell! the client getter method now honors the max size argument

New in FreeNet 0.7.5 Build 1495 Pre-release (Dec 3, 2022)

  • New firsttime wizard (single-step joining with clearer defaults)
  • Add web+freenet and ext+freenet as supported schemas to support extensions. Thanks to TheSeeker
  • New theme: sky-dark-static - thanks to CometZ@6DtYG~
  • Re-organize default bookmarks: first section has "starting points"
  • M3u-player: skip broken files
  • M3u-player: only inline the m3u player if the page contains media tags
  • Client getter honor max size argument
  • Finally merged the HashingAPI by unixninja92, a GSoC project that had gotten lost in the pull requests. This provides an easy and
  • Well-tested way to create and verify different types of Hashes from byte arrays, including Sha256 and TigerTree.
  • Upgrade unit tests to junit4
  • Eleriseth pending keys merged (performance)
  • Healing size increased (better lifetime for popular files)
  • CSS: enable sticky
  • CSS: enable transition and word-wrap — thanks to naejadu
  • Old announcement fixes by toad finally merged

New in FreeNet 0.7.5 Build 1494 (Jul 3, 2022)

  • This build improves four broad areas:
  • Streaming on demand,
  • Configuration,
  • Security, and
  • Bugfixes.
  • Developer changelog:
  • In addition to these improvements, bugs got fixed:
  • Fix build with modern Java: add opens jvmargs on java 17.
  • Remove Frost on ChatForumsToadlet from non-updated translations
  • (removed 2019 from the original english).
  • Fix parts of the German translation.
  • Do not store blocks in the cache, if they are eligible for the store
  • (should increase usable cache size). Thanks to Trivuele!
  • How a user alert (once every Freenet update) if the datastore is
  • Below 10% of available space with a link to the store size wizard page
  • To make it easy to increase the store ― thanks to Trivuele
  • Do not store blocks in the cache, if they are eligible for the store
  • (should increase usable cache size) thanks to Trivuele
  • M3u-player: more robust sizes, do not use overlay for audio. This
  • Finally enables convenient Samizdat Radio
  • Randomize pitch black defense times and wait at least 12 hours
  • Between pitch black mitigations to prevent timing attacks
  • Bandwidth settings: parse bit suffix correctly
  • Improve /imagecreator/ thanks to Oleh from Redwerk
  • Disable write local to datastore functionality when opennet is
  • Enabled; it can be useful on a small darknet, but on opennet it
  • Makes it easier to find downloaders. thanks to Trivuele
  • Make it easier to build fred without network access thanks to Trivuele
  • Fix build with modern Java: add opens jvmargs on java 17
  • Fix: a FOAF mitigation wasn t operational, because it lacked a
  • Conversion to percent. thanks to freedom-of-depression
  • Remove Frost on ChatForumsToadlet from non-updated translations
  • (removed 2019 from the original english)
  • Fix parts of the German translation

New in FreeNet 0.7.5 Build 1494 Pre-release (Jun 25, 2022)

  • Allow ImageCreator url from freesites by @Olezha in #682
  • randomize pitch black defense times by @ArneBab in #747
  • bandwidth: parse bit suffix correctly by @ArneBab in #764
  • Propagate translation changes by @ArneBab in #767
  • m3u-player: more robust sizes, do not use overlay for audio. by @ArneBab in #768
  • add opens jvmargs when building on java 17 by @ArneBab in #769
  • remove old unconditional logging line that has been ignored for a dec… by @ArneBab in #770
  • fix FOAFMitigationHack by @ArneBab in #772
  • Trivuele batch 1 v3 by @ArneBab in #776
  • Stop storing blocks twice by @ArneBab in #779

New in FreeNet 0.7.5 Build 1493 (Apr 5, 2022)

  • This build provides four core improvements:
  • Curated default bookmarks, including an actively maintained index and Shoeshop for sneakernet
  • Better peer scaling for very fast nodes
  • Updated defaults to adapt to the higher capacities of modern systems.
  • Compatibility with Java 17, first in the installers, with the following update for all nodes

New in FreeNet 0.7.5 Build 1493 Pre-release 1 (Mar 28, 2022)

  • Merge branch 'next' of github.com:freenet/fred into next

New in FreeNet 0.7.5 Build 1492 (Nov 5, 2021)

  • And several plugins received updates:
  • KeyUtils got bugfixes from TheSeeker
  • Library now searches all indexes if you just hit search — thanks to redwerk.
  • Library now also allows setting a custom link suffic (docname) — thanks to TheSeeker.
  • Spider got bugfixes from redwerk and juiceman.
  • FlogHelper provides simple clickable audio and video tags.
  • Just put a m3u link into the video tag to have video-on-demand.
  • Included Bugfixes if fred (the Freenet Reference Daemon):
  • skip in support.io.SkipShieldingInputStream must return
  • non-negative. Thanks to dennisnez.
  • NodeConfig was reading a particular config from default on every
  • start up. Thanks to desyncr.
  • OpenJDK 16+ compat: add wrapper.conf argument to allow access to
  • internal openjdk modules.
  • Correct "current size" option in Wizard => datastore size.
  • Thanks to AC4BB21B.

New in FreeNet 0.7.5 Build 1492 Pre-release (Oct 28, 2021)

  • This release finalizes the mitigation of the pitch black attack with a test that shows that the mitigation is effective at reducing the impact of the attack and recovering from it.
  • The video-player was optimized to prevent most visual flickering.
  • To help performance analysis, there is now a diagnostics component with thread runtime information. You can activate it in the advanced core settings of your node.
  • And several plugins received updates:
  • KeyUtils got bugfixes from TheSeeker
  • Library now searches all indexes if you just hit search — thanks to redwerk.
  • Library now also allows setting a custom link suffic (docname) — thanks to TheSeeker.
  • Spider got bugfixes from redwerk and juiceman.
  • FlogHelper provides simple clickable audio and video tags.
  • Just put a m3u link into the video tag to have video-on-demand.
  • Included Bugfixes if fred (the Freenet Reference Daemon):
  • skip in support.io.SkipShieldingInputStream must returnnon-negative. Thanks to dennisnez.
  • NodeConfig was reading a particular config from default on every start up. Thanks to desyncr.
  • OpenJDK 16+ compat: add wrapper.conf argument to allow access to internal openjdk modules.
  • Correct "current size" option in Wizard => datastore size.

New in FreeNet 0.7.5 Build 1491 Pre-release (May 3, 2021)

  • disable pitch black defense if swapping is disabled because the node uses opennet this should resolve problems to the network structure introduced during the pitch-black fix because opennet nodes started swapping when they had network-issues. Sorry for that :-(
  • start pitch black defense 10 minutes after startup, not 1 minute after startup further reduce the probability of stray swapping
  • fix streaming: deal with proxies providing a http node via https streaming should now work over proxies.
  • m3u compability for mobile devices - thanks to DC* some mobile browsers answer the query "supports m3u" with "maybe" O_o
  • add OpenBSD support thanks to jv@D7b92AQB2664AkrR
  • Add compatibility method for plugins (SCGIPublisher needs it)
  • recover constructor for compatibility with plugins
  • Fixed several unused variables issues - thanks to Jan Gerritsen
  • Fix label for logged attribute RoutingDisabled - thanks to Jan Gerritsen

New in FreeNet 0.7.5 Build 1490 Pre-release (Mar 14, 2021)

  • Streaming in the browser,
  • Mitigating the pitch black attack, and
  • Providing the windows-installer from the node again.

New in FreeNet 0.7.5 Build 1489 Pre-release (Dec 15, 2020)

  • Add m3u support with mp3, ogg, oga, ogv, and flac. Thanks to Bombe for reviewing!
  • Reduce max backoff times from 3 hours to 8 minutes;
  • the one safe change from the let-it-burn patchset.
  • This might increase bandwidth available. Thanks to TheSeeker.
  • add explicit license for Libre-JS to progresspage.js
  • rewrite checkall to match the class for all input elements,
  • add explicit license for Libre-JS
  • Arne Babenhauserheide

New in FreeNet 0.7.5 Build 1488 Pre-release (Nov 8, 2020)

  • In this build we only updated translations to make Freenet more inviting:
  • Add Hungarian
  • Update French

New in FreeNet 0.7.5 Build 1487 (Oct 6, 2020)

  • The focus of this build are plugin-updates:
  • Add KeepAlive which allows keeping files alive in Freenet (ready as official plugin thanks to redwerk),
  • plugin-FlogHelper adds audio- and video-tag and more translations,
  • Sharesite provides better default CSS (more beautiful sites) and clearer wording,
  • Freemail uses the newer WoT API,
  • KeyUtils has a small fix to adjust for internal API change (was broken in 1486).
  • Add UPnP2 plugin for testing.

New in FreeNet 0.7.5 Build 1486 Pre-Release 4 (Aug 3, 2020)

  • Emergency-release from next to address Java breakage on Windows.

New in FreeNet 0.7.5 Build 1485 Pre-Release (Jan 27, 2020)

  • Freenet 0.7.5 build 1485 is now available:
  • Fix a possible reason for the startup loop
  • Skip file compression where compression typically does not yield much improvement
  • Compressor: skip LZMA (old) if it is not the only requested compression method
  • Switch to java8 as the minimum required version
  • Capture fetchKeyBoxAboveBookmarks from the theme as default value
  • If there are *.fref files in a peers-offers/ folder, ask user whether to connect to them
  • Theora fixes thanks to redwerk: we can get Video safely now (the first step for streaming)!
  • Changes in 1485:
  • avoid quadratic memory allocation if PooledFileRandomAccessBuffer is swapped to disk (should fix startup loops)
  • compressor: skip LZMA (old) if it is not the only requested compression method
  • remove the contrib submodule from the fred repo because gradle does not need it and it hinders self-hosting
  • switch to java8 as the minimum required version
  • fix bug7102: don't attempt to pre-allocate when we truncate
  • capture fetchKeyBoxAboveBookmarks from the theme as default value
  • skip file compression where compression typically does not yield much improvement
  • If there are *.fref files in a peers-offers/ folder, ask user whether to connect to them
  • Theora fixes thanks to redwerk: can filter Video now!

New in FreeNet 0.7.5 Build 1483 (Feb 16, 2019)

  • Use BELOW_NORMAL_PRIORITY_CLASS instead of BACKGROUND_MODE on windows
  • This should fix excessive memory usage reported on Windows.

New in FreeNet 0.7.5 Build 1482 Pre-Release (Nov 12, 2018)

  • Reduce opennet peernumber scaling_constant from 4 to 1.61803.
  • Reduced peer-count should reduce the CPU load from routing.
  • Since all reduce their peercount, the bandwidth per peer rises,
  • and bandwidth should stay the same.
  • Reduce log level of removing wrong node or removing twice to minor
  • Apply the winterfacey adaptions by poets

New in FreeNet 0.7.5 Build 1481 Pre-Release (Jul 9, 2018)

  • Switch to gradle. If you block network access of your development box,
  • you can use ./gradlew --offline jar test (you will then need to get
  • the dependencies yourself).
  • Switch from JNI (Java Native Interfaces) to JNA (Java Native
  • Access). This might allow getting rid of hard-to-build
  • freenet-ext.jar. Added a workaround for JNA bug in multi-user system:
  • move tempdir into the freenet folder: java.io.tmpdir=./tmp/; Needed
  • until https://github.com/java-native-access/jna/issues/985 is fixed
  • upstream.
  • Changes to update keys: Rekey the update URIs to ensure they are
  • RFC6979. Split off java 7 into its own update key for 1482, so we can
  • use java 8 starting with 1483. The updated keys have been split into
  • shares using ssss-split and distributed among core developers. See
  • https://github.com/freenet/scripts/blob/master/generate_autoupdate_key
  • Don't send RecentlyFailed until we've visited 25% of the routing
  • table, but at least 3 peers. This might reduce recently failed errors
  • and as such remove a major annoyance for content accessed shortly
  • after publication.
  • Add Winterfacey theme. Set sky-static as default theme until Winterfacey got more testing.
  • Further changes:
  • - Fix commons-compress bug, might help fix the Gentoo ebuild.
  • - Execute in background mode (reduced I/O priority) on windows NT6+.
  • - Override list request identifier
  • - use fallocate
  • - ipv6 fixes
  • - fix warnings
  • - optimization
  • - Persist "Bookmark Updated" notifications across restarts
  • - minimum bandwidth increased to 10KiB again
  • - undo update of pinned SSL certificates (site no longer exists)
  • - Add support for GIF89a
  • - Fix wrapped FCP message
  • - Add config option to allow caching of CHK and SSK keys
  • - bookmarks: fix jumping layout (missing activelink)
  • - reduce thread usage.
  • A heartfelt thank you to all involved!
  • - Arne Babenhauserheide
  • ---
  • Arne Babenhauserheide (6):
  • add task ./gradlew tar, still pretty rough
  • wrapper.conf: add JNA tmpdir on update if it is not yet set
  • commit COMPRESS-449 workaround, see https://freenet.mantishub.io/view.php?id=6921, thanks to dennisne
  • always use BouncyCastle in KeyGenUtils
  • use a SkipShieldingInputStream as commons compress workaround
  • use the SkipShieldingInputStream
  • Arne Babenhauserheide (freenet releases) (15):
  • update version to 1480 to be in sync with master
  • remove unnecessary TODO
  • remove stray files
  • remove stray import
  • Update default bookmark editions
  • add 1480 section to NEWS
  • increase minimum bandwith to 10KiB again
  • adjust wizard and comment to increased min bandwidth
  • fix typo (found by TheSeeker)
  • Build 1481
  • undo SSL certificates switched to AWS
  • add jna-platform and order
  • Update default bookmark editions
  • Update default bookmark editions
  • Build 1481
  • Bert Massop (42):
  • Rewrite BitArray to use BitSet internally
  • Use LinkedList instead of our own DoublyLinkedList
  • Move LimitedEnumeration into its sole using class
  • Remove unused LimitedRangeIntByteArrayMap
  • Deprecate SortedIntSet, document its peculiarities and simplify
  • Remove unused Timer
  • SessionManager: remove dead sanity check
  • Improve SparseBitmap efficiency
  • Integer.hashCode() is not available on Java 7; just use the value
  • Add default serialVersionUIDs
  • Fix rawtypes and unchecked warnings
  • Remove redundant casts
  • Fix warnings about missing @Deprecated
  • Suppress fallthrough warnings in PNGFilter
  • Implement hashCode where equals is overridden
  • Remove unnecessary Math.min()
  • Fix SRGA breakage due to misinterpretation of array generics
  • Improve clarity and brevity of SortedIntSet
  • Add unit test for SortedIntSet
  • Make the open file descriptor count non-static for unit tests
  • Remove writeFilter: it is never used and implementations are broken
  • Implement GIF87a filter
  • Also remove writeFilter-related advice messages
  • Add support for GIF89a
  • Throw user-readable exception on EOFException
  • Fix missing block termination
  • Add support for Netscape GIF Loop Extension
  • Improve GIFFilter documentation
  • Add GIFFilter error messages to l10n
  • Update GIFFilter status
  • Simplify condition
  • Use IMAGE_SEPARATOR constant appropriately
  • Actually filter GIF87a instead of just preparing for it
  • Add unit test for GIFFilter
  • Get rid of some asserts; clamp the values instead
  • Add wildcard copy for filter test files
  • Make SSL work on Java 8+
  • Extend self-signed certificate life to 10 years
  • Switch to non-outdated high-security SSL crypto
  • Improve SSL error messages
  • Factor out magic values for SSL
  • nextgens suggested to use 256-bit ECDSA instead
  • Carlo Alberto Ferraris (4):
  • Have fred execute in background mode (reduced I/O priority) on windows NT6+ This patch uses JNA (3.2.7) to call the native OS libraries. jna.jar is not included in the patch but can be fetched from http://java.net/projects/jna/downloads
  • Fix small review issues
  • Use proper exception
  • Add comments and license.
  • D-sha (4):
  • Add nice links to README.md
  • Fix donation link in README.md
  • tidy README.building.md
  • more tidy README.building.md
  • David ‘Bombe’ Roden (10):
  • Fix wrapped FCP message
  • Override list request identifier
  • Add test for FCP message wrapper
  • Fix wrapping a null FCP message
  • Don’t send unwanted list request identifiers
  • Remove parameter that’s always “true”
  • Simplify methods that previously used the parameter
  • Make handleDownload method private
  • Add config option to allow caching of CHK and SSK keys
  • Fix code for non-DOS systems
  • Dean (1):
  • Update README.md
  • Florent Daigniere (98):
  • Initial gradle support
  • Update the travis build-file, make it use/cache gradle arctefacts
  • Fix the unit tests not passing
  • get rid of it since it's not used yet
  • Ensure that Travis caches properly
  • fix version-string updating
  • fork a JVM for every test
  • give up on PooledFileRandomAccessBufferTest
  • Just disable the failing test when we know it won't succeed
  • try bertm's new patch
  • Replace our NativeThread JNI with JNA
  • Use posix_fallocate()/fallocate() where possible
  • doh
  • untested code factoring out the legacy fallocate
  • CPUID isn't used anymore
  • use rfc5014: IPV6_PREFER_SRC_PUBLIC
  • Don't output to wrapper.log if it's a small resize
  • set IPV6_PREFER_SRC_PUBLIC regardless of the bindTo type
  • Add JNA to ant too
  • bug6668: NPE while try hide not-enough-disk-space alert
  • Use java7 try syntax
  • Add mockito to the ant build
  • fix a warning
  • Tweak the travis buildfile
  • specify which JDK was used in the manifest
  • Fix a potential problem with fallocate()
  • add a few seconds to ensure it happens
  • Fix posix_fallocate() on POSIX
  • Turns out that OSX isn't POSIX
  • Replace a HashMap by a ConcurrentSkipListMap
  • Remove the socket-timeout for fproxy
  • Take Bombe's comments into consideration
  • Take Bombe's comments into consideration (round2)
  • More cosmetic changes
  • We don't need that if
  • Add logging
  • Implement the osx/linux equivalent
  • Display the default value as intended
  • bug6562: mark temporary files as hidden
  • Bad things happen if ipv6 isn't available
  • Handle EOPNOTSUP
  • s/operating/file/ system
  • handle ENOSYS too
  • get rid of ant-buildfiles
  • add gradle.properties to .gitignore
  • Ensure that we don't have to truncate the file after fallocate()
  • It's only safe if the total length is above 4KB!
  • It's only safe if the total length is above 4KB!
  • Error codes aren't the same cross-platform
  • get rid of IDE config too; get gradle to generate them for you
  • add gradle wrapper
  • move gradle-witness into gradle's folder
  • Re-enable RSA-based ciphers
  • Re-enable RSA-based ciphers
  • Upgrade to BC 1.56
  • Update the BC tests for rfc7539 compliance
  • Fix a potential click-jacking vulnerability
  • update the javadoc on commit
  • doh
  • only build/deploy it with java7/oracle (once)
  • This prevents caching
  • try to dynamically update transifex
  • try with the JVM that does build successfully
  • add skip_cleanup
  • Auto-upload the l10n for translation when it hits next
  • ArneBab wants to do it manually
  • doh
  • download freenet-ext from the new repo
  • Update Version,bookmarks,plugins and l10n from master
  • clarify NEWS.md
  • update NEWS.md
  • Bump BC version to 1.57
  • bump version number to 1478
  • build against jdk8 and jdk9
  • turns out that openjdk9 is not a thing yet
  • upgrade to BC1.58
  • build the javadoc on JDK8
  • update the l10n
  • fix useless warning
  • Fix a typo in the Norvegian l10n
  • update to gradle 4.2.1, simplify the build script
  • tell travis to deploy tags
  • use openjdk instead
  • don't fail on javadoc errors
  • avoid running the tests twice
  • do the opposite since we can't build the javadoc that way
  • bookmarks: fix jumping layout (missing activelink)
  • doh; we need that to be set to false for reproducible builds
  • Get travis to deploy snapshots to github-releases
  • ignore the result of building the javadoc
  • doh
  • Ensure that there is a single Version file
  • ensure that compileVersion runs after compileJava
  • fix the dependency
  • turns out that you need to set it twice
  • display the SHA-256 hash now that it ought to be reproducible
  • the assemble task messes the checksum up; not sure why yet
  • 94c367e895 was missing the dep's checksum
  • GNU Emacs User (4):
  • fix compile error
  • try adjusting only jna.tmpdir, not java.io.tmpdir
  • need java.io.tmpdir=./tmp/ jna.tmpdir does not work.
  • actually use the default theme as initial theme; switches to sky-static
  • Matthew Toseland (5):
  • Factor out maxCountWaiting()
  • Don't send RecentlyFailed until we've visited half the routing table, but at least 3 peers.
  • Consistency, avoid locking twice
  • 1/4 of routing table max
  • And no more than 10 peers.
  • Stephen Oliver (2):
  • Build: add jna-platform for Windows-specific types
  • Use JNA interface mapping instead of direct in ProcessPriority on Win
  • Steve Dougherty (17):
  • MemoryLimitedJobRunnerTest: avoid high thread counts
  • JVMVersion: fix spelling of "beyond"
  • JVMVersion: add distinction between EoL alert and updater
  • Revert "Merge remote-tracking branch 'origin/much-less-recentlyfailed' into next"
  • gradle: fix typo in wrapper verification configuration
  • README: focus on developers and update for Gradle
  • README: link Travis build badge to Travis
  • README: link Coverity badge to Coverity
  • README: fix Coverity badge link
  • README: remove errant dash
  • build: upgrade Bouncy Castle to 1.59
  • dependencies: add JNA 4.2.2 dependency
  • dependencies: upgrade Bouncy Castle to 1.59
  • Revert "Build 1481"
  • build: enable deterministic tars
  • build: use bzip2 compression for source archive
  • Rekey the update URIs to ensure they are RFC6979
  • TheSeeker (1):
  • fix memory limit setting on windows v2
  • Zero King (1):
  • Fix typo
  • blacklightwork (1):
  • Update theme.css
  • drak@kaverne (2):
  • add Winterfacey theme
  • fix binary or used instead of boolean or
  • xor-freenet (16):
  • Class IfNull: Deprecate in favor of Java 7 providing the same
  • Documentation: Convert some comments to JavaDoc
  • Documentation: Deduct purpose of a constructor...
  • Documentation: Fix obsolete claims about purpose of some constructors
  • Remove constructors which were needed only by db4o
  • BookmarkItem: Remove unused constructor...
  • BookmarkItem: Store the belonging BookmarkManager
  • BookmarkItem: Persist "Bookmark Updated" user alerts across restarts
  • BookmarkManager: Fix losing update alerts if shutting down <5 min after them
  • FProxy: If a plugin throws during startup then show the stack trace
  • FProxy bookmarks: Mark updated ones with bold link
  • FProxy bookmarks: Add button to dismiss update notifications
  • FProxy bookmarks: After clicking the dismiss button go back to same section of page
  • Fix whitespace to adhere to Google Java Style Guide
  • Remove trivially obvious comment
  • TimeUtilTest: Test setTimeToZero()

New in FreeNet 0.7.5 Build 1480 (Jan 23, 2018)

  • Ship new Windows Installer and Tray
  • Update Freemail version to v0.2.7.3-r2

New in FreeNet 0.7.5 Build 1479 (Nov 4, 2017)

  • 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.
  • 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.
  • 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
  • plugins: Freemail v0.2.7.3 (new translations)

New in FreeNet 0.7.5 Build 1478 (Aug 21, 2017)

  • prepare pinned certs for the new Amazon-web-services based site.

New in FreeNet 0.7.5 Build 1477 (Apr 5, 2017)

  • This fixes two vulnerabilities, one reported by beardog108, the other accidentally introduced in 1476

New in FreeNet 0.7.5 Build 1476 (Apr 5, 2017)

  • Highlights:
  • efficiency improvements, especially for fast nodes
  • a new gif filter with improved security against malicious files
  • show persistent update info alongside bookmarks
  • improved maintainability by replacing custom code with standard code
  • update plugins: Sharesite 0.4.4, Library v37, Freereader 6
  • Sharesite plugin highlights:
  • Mask the timezone
  • Allow setting the path
  • Provide default content
  • Also Library and Freereader got bugfixes and cleanup.

New in FreeNet 0.7.5 Build 1475 (Jul 16, 2016)

  • Highlights:
  • Warn that Java 7 is End of Life. (Please update!)
  • Improve load balancing.
  • Add support for HTML5 audio tags.
  • Fix a major bug that might explain the poor connectivity since 1473.

New in FreeNet 0.7.5 Build 1473 (May 23, 2016)

  • Plugin updates:
  • Add Sharesite - a fork of ShareWiki - as an official plugin. Thanks to ArneBab for getting it ready! It includes an earlier version of TextileJ to avoid license problems, and adds syntax help, external activelink support, and a template with div IDs for easier CSS.
  • Update Freereader with the ability to configure the site title and subtitle, and fix the translation support.
  • User-facing core change highlights:
  • Improve MP3 filtering.
  • Add The Filtered Index to the default bookmark list.
  • Fix handling of filenames with non-ASCII spaces.
  • Alphabetize language configuration dropdown.
  • Add Hungarian translation support. The translation was added previously but not actually available.
  • Fix dropping low-traffic connections. This helps with simulations.
  • Optimize FProxy CSS load order, and fix bugs which prevented caching static assets. This improves web interface responsiveness.

New in FreeNet 0.7.5 Build 1472 (Mar 20, 2016)

  • This is the last build to support Java 6! The next build will require Java 7 or higher. Nodes running Java 7 or higher and using the official update key will now use a new update key. Nodes on Java 6 remain using the old update key and will not be updated to further builds.
  • This version was initially partially released as build 1471 - it was released on GitHub but not offered from the website or auto-update. Build 1472 fixes a bug which when using Java 6 prevented nodes from starting for the first time. It did not break existing installations.
  • Highlights:
  • Fix uploads stalling when using MAXIMUM physical security.
  • Fix lots of "setNativePriority(X) has failed!", which was caused by a serious thread priority problem. This might fix nodes unexpectedly losing peers.
  • Order alerts within a category by time: if you have lots of messages from darknet peers they will remain nicely sorted.
  • Translations:
  • Add partial Greek translation.
  • Update German, Bokmål, Brazilian Portuguese, Simplified Chinese, and Traditional Chinese translations.
  • Fix Bokmål localization loading.
  • Also:
  • Remove Gantros Index because it stopped updating.
  • Remove Linkageddon because it stopped updating.
  • New version of UPnP to fix some instability and compatibility problems. Thanks to 007pig we have a new UPnP plugin in development which supports UPnP2, but it is not yet included.
  • New version of KeyUtils.
  • WebOfTrust now has an updatable testing version built and maintained by xor. To use it, unload WebOfTrust, then load "WebOfTrust Testing Versions" on the Plugins page. Versions built by xor will not work with Java 6.
  • Sites can set favicons with . (type could be "image/x-icon")
  • Extensive review and improvement of English source strings and French and Spanish translations. Tests for and fixes of value substitution in translations.
  • The default theme is now sky-static instead of clean-dropdown. This looks less outdated, though not modern.
  • There is now a caching layer on the store. This should significantly reduce I/O load.
  • Fix default bookmarks missing the "software" category since build 1470. If you don't see this category please re-add the default bookmark set from the bookmark editing page.
  • IpToCountry database is updated. (This allows providing the country flags on the peers pages. It is local to each instance and does not contact an external service.)
  • WebOfTrust is updated to build 18. Its changelog is separate, but one of the major changes is incremental score recomputation which requires roughly 3% of the time of a full recomputation.
  • Add partial CSS3 support, including viewport lengths.

New in FreeNet 0.7.5 Build 1470 (Aug 17, 2015)

  • This release fixes Freemail problems that prevented sending mail, and removes a compromised opennet seed node. Freemail also gains a new message link on the inbox page, links to senders' WoT profiles, and new translations: Czech, Greek, Spanish, Finnish, Dutch, Polish, Portuguese, Serbian and Turkish

New in FreeNet 0.7.5 Build 1469 (Jul 20, 2015)

  • This release fixes two bugs introduced in build 1468. One caused very slow operation and high CPU usage with large files and physical security levels above None (i.e. Freenet-level disk encryption). The other prevented interactive usage (e.g. freesite browsing) while finishing large downloads or starting large uploads.

New in FreeNet 0.7.5 Build 1468 (Jul 13, 2015)

  • In this release, the way Freenet stores data locally has changed drastically by no longer using the now-deprecated db4o object storage. It is replaced with the product of toad's summer of work - a custom on-disk format that is much more robust against corruption and more efficient.
  • Existing unfinished downloads and uploads will be imported to a new format, which requires restarting them from the beginning.
  • Space for downloads is now all allocated at the start, so machines very low on disk space may run out, which causes downloads to temporarily fail until more space is available.
  • CHKs will change due to metadata bugfixes.
  • Some unofficial plugins will need to be updated because of API changes. Sone already works, as do all official plugins.
  • The queue format changes should make it extremely rare to lose the entire queue: the impact of corruption will almost always be localized.
  • Multi-container / site uploads can now be persistent, making it more practical to upload large sites.
  • Passworded physical security is now much stronger. (Full-disk encryption is still preferable.)
  • The Windows installer now defaults to starting Freenet on login.
  • There is a new Windows tray app with some useful features that is included with new installations. If you are using the existing Windows tray app you can download the new one here. No need to put it in a specific directory - it will try the default installation location and prompt if it can't find it.
  • The list of download keys moved from downloads/listFetchKeys.txt to downloads/listKeys.txt.
  • A list of upload keys is now available at uploads/listKeys.txt
  • Gantros' index is now in the default bookmarks. It uses the same software as Enzo's index, which is no longer updated.
  • The obsolete and deprecated XMLLibrary and XMLSpider plugins are no longer officially supported. They will still load for those who have them added, but are no longer shown on the plugin page.
  • In the interests of releasing this build more quickly, the new version of FlogHelper does not support exporting and importing backups from the web UI. The old backup code did not work with the new Freenet version after removing db4o. People can instead back up "plugins.floghelper.FlogHelper" files in the plugin-data directory. These can be dropped into the directory after unloading FlogHelper to restore a backup.
  • ThawIndexBrowser works again.
  • Fred translations are updated.
  • Add two seed nodes, one sponsored by meshnet.pl - the Polish radio/meshnet darknet users group, and another run by ArneBab. Thanks!
  • Update existing seed node references.

New in FreeNet 0.7.5 Build 1467 (Nov 26, 2014)

  • It now disables the Java installer's sponsor offers.
  • It gained a Finnish translation.

New in FreeNet 0.7.5 Build 1466 (Nov 10, 2014)

  • Add Hungarian Windows installer translation.
  • Allow hiding the Java version End Of Life alert.
  • Upgrades to the next version (that is, when running this build's upgrade code) should no longer get stuck in an upgrade loop.
  • Increase opennet peer limit to 142 peers. This now has more math behind it and will change when network parameters are adjusted.
  • Add more opennet seed nodes.
  • This build will be mandatory starting 2014-11-16, because old nodes will reject new nodes with more than 110 peers. Updates only take a few hours to spread, so this should only cause short term disruption.

New in FreeNet 0.7.5 Build 1465 (Aug 11, 2014)

  • Add Russian Windows installer translation. In addition to Russian there are currently translations for Spanish, French, and Dutch.
  • Enhance the CSS filter to prevent pages from appearing differently based on browser history.
  • Update German, Finnish, French, Japanese, Dutch, Brazilian Portuguese, and Simplified Chinese translations.
  • Update seed nodes.

New in FreeNet 0.7.5 Build 1464 (Aug 11, 2014)

  • Translation updates for French, German, Italian, Japanese, Dutch, Brazilian Portuguese, and Simplified Chinese.
  • Untranslated strings appear again in the translation page in Fred. This problem was due to Transifex returning untranslated strings as though they were translations.
  • Code cleanup.

New in FreeNet 0.7.5 Build 1463 (Aug 11, 2014)

  • Translation updates for Freenet, Freemail, FlogHelper, and KeyUtils thanks to volunteers on Transifex. To upgrade a plugin, reload it from the Plugins page and check "Remove the plugin from the cache."
  • Update default bookmarks.
  • Code cleanup.
  • Fix seed node problems.

New in FreeNet 0.7.5 Build 1462 (Aug 11, 2014)

  • Add an opennet seed node.
  • Add Korean Windows tray application translation. Thanks ilbe123!
  • Fix potential security problems with malicious UPnP devices. Thanks to waldheinz for the report.
  • Select options by default on the "Add a Friend" page.
  • Omit empty plugin groups on the plugin page.
  • Avoid leaking node location in link length probe.
  • Base stats page average distance on actual location instead of 0.0.

New in FreeNet 0.7.5 Build 1461 (Aug 11, 2014)

  • In this release:
  • Add Brazilian Portuguese translation.
  • Update Swedish, Simplified Chinese, and Traditional Chinese translations.
  • Add CSS filter support for "nth" psuedoclasses. Thanks paul@jCa8...!
  • Limit length of log displayed on startup page. Thanks vwoodzell!
  • Fix store location stats checking the wrong store. Thanks Matthias Treydte!
  • Update default jSite bookmark.
  • Fix JPEG filter omitting extension code.
  • Fix a bug that prevented Sone from inserting updates when physical security was set high enough.
  • Changes in Freemail:
  • Add German, Italian, Brazilian Portuguese, Portuguese, and Simplified Chinese translations.
  • Update French and Norwegian translations.
  • Fix a bug that prevented working with LCWoT.
  • Fix labelling SMTP bind address configuration option as IMAP.
  • Changes in FlogHelper:
  • Add Italian and Traditional Chinese translations.
  • Update French and German translations.
  • Changes in KeyUtils:
  • Add French, Italian, Brazilian Portuguese, and Simplified Chinese translations.
  • Changes in JSTUN:
  • Update STUN server list.

New in FreeNet 0.7.5 Build 1459 (Jan 21, 2014)

  • Fix seed nodes logging a negotiation error with negtype 10. It's not
  • clear whether clients are able to consistently connect with negtype 10.
  • Link to SSKs of release notes instead of USKs to give specific version.
  • Fix configuration page partially allowing unsupported large bandwidth
  • limits. (1 GBps or higher) This is because the bandwidth rate limiting
  • currently requires a positive integer of nanoseconds per byte
  • transferred. [1]
  • Translation updates from Transifex.
  • The update shell script can be run from outside the installation
  • directory.

New in FreeNet 0.7.5 Build 1458 (Jan 7, 2014)

  • Quadrocube's negtype 10 with cumulative acks.
  • Quadrocube's direct file transfer bandwidth usage bugfix.
  • Updated French and Italian translations thanks to volunteers on Transifex. [0] The French translation has complete coverage!
  • Links to changelog and fullchangelog from the update alert and statistics page. It would be nice to have a notification after the update is installed as well, but that isn't implemented yet.
  • Update jar has additional integrity checks.
  • New Freenet installations are portable: they can run without changes after being moved between directories.
  • To make an existing installation portable shut down Freenet and edit freenet.ini to make these paths relative:
  • fproxy.CSSOverride (if one is specified)
  • node.masterKeyFile
  • node.downloadsDir
  • node.install.userDir
  • node.install.tempDir
  • node.install.pluginDir
  • node.install.persistentTempDir
  • node.install.cfgDir
  • node.install.runDir
  • node.install.nodeDir
  • node.install.storeDir
  • node.install.pluginStoresDir

New in FreeNet 0.7.5 Build 1457 (Sep 23, 2013)

  • Allow empty ("") docname for SSKs. This is consistent with GenerateSSK
  • not including a docname, and also helps with WoT development.
  • Prevent uncaught database corruption exceptions during plugin store
  • migration from interrupting startup.

New in FreeNet 0.7.5 Build 1456 (Sep 23, 2013)

  • Automatically update the wrapper binaries on linux/mac systems (other than Gentoo). This should fix a major bug on Linux where after updating the node can get stuck in a loop until it is manually restarted (or the computer is rebooted). This is a lot more work than it sounds because we need to replace a whole bunch of files at once, then restart the wrapper (not just the node).
  • An important bugfix to the transport layer, should improve bandwidth usage on fast connections, this is especially obvious when transferring files between nodes (e.g. from the node-to-node text messaging system, click on a Friend and send a file).
  • Download the latest version of update.sh, and make it executable. The updater was downloading an old, broken version of update.sh, and was not making it executable. This is the last-resort manual update script for linux/mac.
  • Various bugfixes for the updater.
  • Make node references more robust, any line which contains e.g. spaces will be base64 encoded, so passing noderefs via e.g. IRC/instant messaging should be significantly more reliable.
  • Turn off NLM when upgrading from 1455 or earlier. It's broken at the moment.
  • Config fixes. This *might* change your settings for SSL, load management and file locations (as previous fixes in these areas were being ignored).

New in FreeNet 0.7.5 Build 1455 (Sep 2, 2013)

  • The web interface now sends Content-Security-Policy headers to web browsers. This was designed to prevent cross-site-scripting attacks and provides an extra layer of protection against browser exploits and web-bugs. Note that you may have to enable Javascript support on "Configuration" -> "Web interface" if you use plugins which use Javascript (e.g. FlogHelper, Sone). Note to plugin authors: Please do not use sendReplyHeader(..., Date). There are several new sendReplyHeader* methods, sendReplyHeader() without a Date should be fine for most generated content.
  • New encryption for on-disk temporary buckets (temporary files used by non-persistent downloads), when physical security level is not LOW.
  • Plugin data is now stored in separate files on disk rather than in node.db4o[.crypt]. So it won't be lost when the database is corrupted. Note that this only affects a few plugins, notably FlogHelper (and Library if you have customised your indexes list).
  • New version of the Library plugin, with a new search index. (Sadly by the same person as the last one)
  • Minor French translation update (thanks romnGit, who is also working on a new Windows installer).

New in FreeNet 0.7.5 Build 1454 (Aug 28, 2013)

  • Fix a major memory leak (mostly in the client layer).
  • Fix a NullPointerException when unloading some plugins.
  • Freemail 0.2.4.2.
  • Minor fix to fproxy's use of temporary files when handling POSTs (i.e. almost anything using buttons).
  • Comments, javadocs.

New in FreeNet 0.7.5 Build 1453 (Aug 24, 2013)

  • This includes Web of Trust version 13, which has some major improvements including much better support for recovering old identities from backups, and some minor bugfixes and robustness improvements for the updater, but the main change is to the installers.
  • We now use an up to date version of the wrapper in both the Windows installer and the Linux/Mac installer. For new installs, this should fix some of the antivirus problems on Windows (notably issues with Freenet taking ages to restart and sometimes not succeeding at all on Kaspersky). It should also improve the stability problems on Linux when updating, where Freenet would download a new build and then constantly restart without ever successfully updating. If you see that bug on an old node, the correct fix is to shut down the node manually and start it up again (./run.sh stop; ./run.sh start).
  • Finally, the Unix/Mac installer now supports a few more platforms, notably FreeBSD on x86 (32 and 64), Linux on Itanium, and Linux on ARM (both versions). This is not full support as we don't have the (optional but important) native libraries for these platforms yet, but it should install, run, and auto-update without too much trouble, rather than having to run without the wrapper.
  • None of this applies to existing installs. romnGit is working on a tool to upgrade the wrapper on existing Windows installs, and upgrading it on Mac or Linux should be fairly straightforward, but is not implemented yet.

New in FreeNet 0.7.5 Build 1452 (Aug 20, 2013)

  • Auto-updater: Create wrapper.jar file (in wrapper\ on Windows, otherwise in .). On the next update this will be patched into the classpath at the beginning. This will allow us to update the wrapper, at least in new installs.
  • Auto-updater: Update wrapper.conf to create an anchor file on older Windows nodes. This will be helpful in improving update.cmd and in updating the wrapper.
  • Auto-updater: Various bugfixes and minor improvements to auto-update and Update Over Mandatory (the last resort update mechanism).
  • Temporarily reinstate support for builds prior to 1422. This will be removed again soon, UOM backward compatibility should only be broken when we change the auto-update key.
  • Fix a NullPointerException breaking some plugins when rendering menus.
  • Add some more code documentation (javadocs), especially at package level.

New in FreeNet 0.7.5 Build 1451 (Aug 14, 2013)

  • Update Bouncycastle to version 1.49.
  • Allow base64 encoding in noderefs. This will be used in future for more robust noderefs. (Sorry I thought I'd deployed this in a previous build)
  • Better MIME type handling.
  • Minor web interface fixes.
  • New versions of Library of FlogHelper, remove Freetalk for now.
  • Connections pages now show the FOAF locations separately after the main table.
  • French translation update.
  • Various minor internal improvements / code cleanups.

New in FreeNet 0.7.5 Build 1407 (Apr 18, 2012)

  • Tweak to how the connection limit is determined. This may cause a temporary performance loss while the network adjusts, but should improve average performance after that
  • The new site-insert code is now default (except for persistent inserts e.g. on the uploads page). This should significantly improve performance of larger freesites. Also, there is a fix for the too-big-container bug
  • Hooks for more sophisticated themes such as the darknet-freestyle theme
  • Various user interface tweaks
  • Support for :target in CSS3
  • Fixes related to a new certificate for HTTPS on freenetproject.org (only an issue if using update.* or downloading plugins over HTTPS, otherwise the node doesn't talk to our webserver)
  • Various minor code tidyups

New in FreeNet 0.7.5 Build 1406 (Apr 18, 2012)

  • Various improvements to the web interface, including a Diagnostics page (similar to stats page but standardised to help debugging), plugin groups, and various fixes
  • A new version of WebOfTrust, version 11, with some major optimisations
  • Russian translation update
  • Lots of client layer fixes and cleanups

New in FreeNet 0.7.5 Build 1405 (Feb 23, 2012)

  • Allow plugins to exempt themselves from the content filter.
  • Low-level change paving the way to a load management change in the next build, very minor tweaks to routing.
  • Fix GetCHKOnly
  • Fix a USK subscription leak, and various other minor client layer changes.
  • Add PrivateURI to FCP PersistentPut/PersistentPutDir. (Be careful when reporting FCP logs)
  • Improvements to CompatibilityMode and PersistentGet.
  • Improvements to the bandwidth page on the first-time wizard.
  • Wait 100ms before trying to search the disk to get more entropy on startup, and fix a rare crypto bug (not serious).
  • German update.
  • New versions of Freetalk and WebOfTrust.
  • Filter fixes.
  • Always use AIMDs (like Freenet was in July and earlier). It appears they are essential even with NLM.
  • Allow switching advanced simple mode on any page.
  • Allow building without junit, if skipping tests.

New in FreeNet 0.7 Alpha 2 (Jan 30, 2008)

  • No longer necessary to find other people to connect to, Freenet can find other people for you. However, you can still connect to your friends for maximum security
  • Many other improvements, including speed, and many bugs have been fixed