Sone.git
11 days ago🌐 Update Italian translation
David ‘Bombe’ Roden [Sun, 25 Oct 2026 20:55:00 +0000 (21:55 +0100)]
🌐 Update Italian translation

11 days ago🌐 Update French translation
David ‘Bombe’ Roden [Sun, 25 Oct 2026 20:54:48 +0000 (21:54 +0100)]
🌐 Update French translation

2 weeks ago🌐 Update Spanish translation
David ‘Bombe’ Roden [Sun, 25 Oct 2026 20:54:26 +0000 (21:54 +0100)]
🌐 Update Spanish translation

2 weeks ago🐛 Fix bug in French translation
David ‘Bombe’ Roden [Sat, 24 Oct 2026 07:01:01 +0000 (09:01 +0200)]
🐛 Fix bug in French translation

3 weeks ago🔀 Merge branch 'feature/debug-elements-loader' into next
David ‘Bombe’ Roden [Sun, 18 Oct 2026 12:31:33 +0000 (14:31 +0200)]
🔀 Merge branch 'feature/debug-elements-loader' into next

3 weeks ago🐛 Decode URI after toString()
David ‘Bombe’ Roden [Sun, 18 Oct 2026 10:09:23 +0000 (12:09 +0200)]
🐛 Decode URI after toString()

Because toString() encodes some characters again, like whitespace.

3 weeks ago🐛 Start loading elements with the decomposed & normalized URI
David ‘Bombe’ Roden [Sun, 18 Oct 2026 08:50:08 +0000 (10:50 +0200)]
🐛 Start loading elements with the decomposed & normalized URI

3 weeks ago🧑‍💻 Do not expose rejected elements as failed
David ‘Bombe’ Roden [Sun, 18 Oct 2026 07:36:54 +0000 (09:36 +0200)]
🧑‍💻 Do not expose rejected elements as failed

This should slightly improve the “Elements” debug page.

3 weeks ago🎨 Verify that failed images are not loaded again
David ‘Bombe’ Roden [Sun, 18 Oct 2026 07:36:32 +0000 (09:36 +0200)]
🎨 Verify that failed images are not loaded again

3 weeks ago🐛 Mark image as failed when it was rejected
David ‘Bombe’ Roden [Sun, 18 Oct 2026 07:35:57 +0000 (09:35 +0200)]
🐛 Mark image as failed when it was rejected

3 weeks ago🐛 Rename and fix test
David ‘Bombe’ Roden [Sun, 18 Oct 2026 07:35:20 +0000 (09:35 +0200)]
🐛 Rename and fix test

3 weeks ago♻️ Hand in URIs as lambda so it changes when loadElement() is called again
David ‘Bombe’ Roden [Sun, 18 Oct 2026 07:33:41 +0000 (09:33 +0200)]
♻️ Hand in URIs as lambda so it changes when loadElement() is called again

5 weeks ago⬆️ Update fred dependency to 1501
David ‘Bombe’ Roden [Mon, 5 Oct 2026 04:35:11 +0000 (06:35 +0200)]
⬆️ Update fred dependency to 1501

Because that’s the first build that actually declared its dependencies
correctly, making it easier for me.

5 weeks ago🐛 Fix property accessor for loaded elements
David ‘Bombe’ Roden [Sun, 4 Oct 2026 08:56:10 +0000 (10:56 +0200)]
🐛 Fix property accessor for loaded elements

5 weeks ago🐛 Synchronize on loadingLinks correctly
David ‘Bombe’ Roden [Sat, 3 Oct 2026 20:19:18 +0000 (22:19 +0200)]
🐛 Synchronize on loadingLinks correctly

5 weeks ago🐛 Use simple manifest data for filtering, when present
David ‘Bombe’ Roden [Sat, 3 Oct 2026 20:17:22 +0000 (22:17 +0200)]
🐛 Use simple manifest data for filtering, when present

5 weeks ago✨ Add debug page for element loader
David ‘Bombe’ Roden [Sat, 3 Oct 2026 20:04:28 +0000 (22:04 +0200)]
✨ Add debug page for element loader

5 weeks ago🧑‍💻 Include reason for rejection in rejection object
David ‘Bombe’ Roden [Sat, 3 Oct 2026 13:32:44 +0000 (15:32 +0200)]
🧑‍💻 Include reason for rejection in rejection object

5 weeks ago🚧 Expose more information about not-loaded elements
David ‘Bombe’ Roden [Fri, 24 Jul 2026 14:03:56 +0000 (16:03 +0200)]
🚧 Expose more information about not-loaded elements

5 weeks ago🔀 Merge branch 'fix/xml-external-entities' into next
David ‘Bombe’ Roden [Sun, 4 Oct 2026 17:40:36 +0000 (19:40 +0200)]
🔀 Merge branch 'fix/xml-external-entities' into next

5 weeks ago🔒️ Fix XXE vulnerability and add test
David ‘Bombe’ Roden [Sun, 4 Oct 2026 15:31:57 +0000 (17:31 +0200)]
🔒️ Fix XXE vulnerability and add test

While the parser in its configuration was vulnerable to XXE, you could only
ever manipulate XML files that you inserted, and it was never possible to force
other Sone instances to re-export any data from your modified XML files.

3 months ago🔀 Merge branch 'feature/use-latest-posts-only' into next
David ‘Bombe’ Roden [Thu, 23 Jul 2026 11:03:24 +0000 (13:03 +0200)]
🔀 Merge branch 'feature/use-latest-posts-only' into next

3 months ago✨ Update Sone processor when max-age-of-posts-to-load is changed
David ‘Bombe’ Roden [Mon, 20 Jul 2026 17:26:17 +0000 (19:26 +0200)]
✨ Update Sone processor when max-age-of-posts-to-load is changed

3 months ago✨ Add new option for max age of posts to load
David ‘Bombe’ Roden [Mon, 20 Jul 2026 16:52:17 +0000 (18:52 +0200)]
✨ Add new option for max age of posts to load

3 months ago✨ Add preferences for max age of post to load
David ‘Bombe’ Roden [Mon, 20 Jul 2026 15:18:25 +0000 (17:18 +0200)]
✨ Add preferences for max age of post to load

3 months ago♻️ Slightly improve test
David ‘Bombe’ Roden [Mon, 20 Jul 2026 14:11:41 +0000 (16:11 +0200)]
♻️ Slightly improve test

3 months ago✨ Add filter for updated Sones
David ‘Bombe’ Roden [Mon, 20 Jul 2026 14:07:31 +0000 (16:07 +0200)]
✨ Add filter for updated Sones

3 months ago🧑‍💻 Allow creating slightly better mock Sone objects
David ‘Bombe’ Roden [Mon, 20 Jul 2026 14:05:56 +0000 (16:05 +0200)]
🧑‍💻 Allow creating slightly better mock Sone objects

3 months ago🧑‍💻 Make it easier to tell mocks apart
David ‘Bombe’ Roden [Mon, 20 Jul 2026 14:03:30 +0000 (16:03 +0200)]
🧑‍💻 Make it easier to tell mocks apart

3 months ago✏️ Fix some typos
David ‘Bombe’ Roden [Wed, 22 Jul 2026 13:21:00 +0000 (15:21 +0200)]
✏️ Fix some typos

3 months ago💬 Replace all mentions of Freenet with Hyphanet
David ‘Bombe’ Roden [Wed, 22 Jul 2026 13:20:23 +0000 (15:20 +0200)]
💬 Replace all mentions of Freenet with Hyphanet

3 months ago🔀 Merge branch 'feature/remove-flattr-button' into next
David ‘Bombe’ Roden [Mon, 20 Jul 2026 08:08:03 +0000 (10:08 +0200)]
🔀 Merge branch 'feature/remove-flattr-button' into next

3 months ago💄 Make tail end of page slightly more beautiful
David ‘Bombe’ Roden [Mon, 20 Jul 2026 08:07:36 +0000 (10:07 +0200)]
💄 Make tail end of page slightly more beautiful

3 months ago🔥 Remove every mention of flattr
David ‘Bombe’ Roden [Mon, 20 Jul 2026 08:07:00 +0000 (10:07 +0200)]
🔥 Remove every mention of flattr

It has been defunct for quite a while now. Time for it to leave.

3 months ago🔥 Delete generated version file in clean task
David ‘Bombe’ Roden [Sun, 19 Jul 2026 17:01:09 +0000 (19:01 +0200)]
🔥 Delete generated version file in clean task

3 months ago⬆️ Update JaCoCo and byte-buddy version to handle Java 21
David ‘Bombe’ Roden [Sun, 19 Jul 2026 15:18:35 +0000 (17:18 +0200)]
⬆️ Update JaCoCo and byte-buddy version to handle Java 21

3 months ago🔀 Merge branch 'feature/recognize-urls-with-colons' into next
David ‘Bombe’ Roden [Sat, 18 Jul 2026 13:15:37 +0000 (15:15 +0200)]
🔀 Merge branch 'feature/recognize-urls-with-colons' into next

3 months ago🐛 Let colons be part of links, too
David ‘Bombe’ Roden [Sat, 18 Jul 2026 13:14:56 +0000 (15:14 +0200)]
🐛 Let colons be part of links, too

3 months ago♻️ Move getRequestUri() and compareTo() implementation to default methods
David ‘Bombe’ Roden [Tue, 14 Jul 2026 05:51:57 +0000 (07:51 +0200)]
♻️ Move getRequestUri() and compareTo() implementation to default methods

4 months ago🐛 Fix incorrect use of ::javaClass
David ‘Bombe’ Roden [Sun, 5 Jul 2026 19:37:41 +0000 (21:37 +0200)]
🐛 Fix incorrect use of ::javaClass

4 months ago🔀 Merge branch 'maintenance/update-to-latest-kotlin-and-gradle' into next
David ‘Bombe’ Roden [Sun, 5 Jul 2026 10:06:21 +0000 (12:06 +0200)]
🔀 Merge branch 'maintenance/update-to-latest-kotlin-and-gradle' into next

4 months ago♻️ Use Kotlin-specific types instead of plain old Java types
David ‘Bombe’ Roden [Sun, 5 Jul 2026 10:02:12 +0000 (12:02 +0200)]
♻️ Use Kotlin-specific types instead of plain old Java types

4 months ago⬆️ Update to latest Kotlin and Gradle versions
David ‘Bombe’ Roden [Sun, 5 Jul 2026 09:46:29 +0000 (11:46 +0200)]
⬆️ Update to latest Kotlin and Gradle versions

Well, “latest” as in “latest that will still run on Java 8.”

10 months ago🚧 Make the node’s userDir available to injection
David ‘Bombe’ Roden [Sun, 6 Apr 2025 08:48:47 +0000 (10:48 +0200)]
🚧 Make the node’s userDir available to injection

10 months ago♻️ Replace deprecated ExpectedException @Rule with assertThrows
David ‘Bombe’ Roden [Sun, 6 Apr 2025 08:03:00 +0000 (10:03 +0200)]
♻️ Replace deprecated ExpectedException @Rule with assertThrows

10 months ago🔥 Remove event that was never used
David ‘Bombe’ Roden [Sun, 6 Apr 2025 06:15:12 +0000 (08:15 +0200)]
🔥 Remove event that was never used

19 months ago♻️ Rename Preferences class to DefaultPreferences
David ‘Bombe’ Roden [Fri, 4 Apr 2025 14:01:28 +0000 (16:01 +0200)]
♻️ Rename Preferences class to DefaultPreferences

Next up: extract an interface, use that everywhere.

19 months ago🚧 Provide PluginRespirator for injection, too
David ‘Bombe’ Roden [Mon, 31 Mar 2025 19:56:08 +0000 (21:56 +0200)]
🚧 Provide PluginRespirator for injection, too

It’s a surprise tool that’s going to help us later!

19 months ago🎨 Use toInstance instead of provider
David ‘Bombe’ Roden [Mon, 31 Mar 2025 18:41:13 +0000 (20:41 +0200)]
🎨 Use toInstance instead of provider

I probably always meant to do this, but didn’t manage to find the toInstance method…

2 years ago💚 Remove coverage recording with JaCoCo plugin
David ‘Bombe’ Roden [Wed, 2 Oct 2024 21:07:18 +0000 (23:07 +0200)]
💚 Remove coverage recording with JaCoCo plugin

The normal Coverage plugin does the job well enough.

2 years ago⬆️ Upgrade a whole bunch of dependencies
David ‘Bombe’ Roden [Wed, 2 Oct 2024 14:39:10 +0000 (16:39 +0200)]
⬆️ Upgrade a whole bunch of dependencies

* Kotlin to 2.0.20.
* JUnit to 4.13.2.
* Mockito to 4.11.0.
* Hamcrest to 3.0.
* Jsoup to 1.18.1.
* javax.activation to jakarta.activation 2.1.3.
* jsr305 from findBugs to spotbugs 4.8.6.
* Codahale Metrics to 4.2.27.
* Jackson to 2.18.0.
* Guava to 33.3.1.
* Guice to 7.0.0.

2 years ago💚 Don’t use the Gradle Daemon for running tasks
David ‘Bombe’ Roden [Wed, 2 Oct 2024 11:22:40 +0000 (13:22 +0200)]
💚 Don’t use the Gradle Daemon for running tasks

2 years ago💚 Condense compatibility checks into a single stage, add check with JDK 21
David ‘Bombe’ Roden [Wed, 2 Oct 2024 09:17:07 +0000 (11:17 +0200)]
💚 Condense compatibility checks into a single stage, add check with JDK 21

2 years ago💚 Record coverage using the default Coverage plugin
David ‘Bombe’ Roden [Tue, 1 Oct 2024 16:34:51 +0000 (18:34 +0200)]
💚 Record coverage using the default Coverage plugin

2 years ago🐛 Keep reference to logger around so its configuration isn’t lost
David ‘Bombe’ Roden [Tue, 1 Oct 2024 16:12:16 +0000 (18:12 +0200)]
🐛 Keep reference to logger around so its configuration isn’t lost

2 years ago🔀 Merge branch 'feature/fix-jenkinsfile' into next
David ‘Bombe’ Roden [Tue, 1 Oct 2024 09:42:33 +0000 (11:42 +0200)]
🔀 Merge branch 'feature/fix-jenkinsfile' into next

2 years ago💚 Add VIm modeline to Jenkinsfile
David ‘Bombe’ Roden [Tue, 1 Oct 2024 09:22:44 +0000 (11:22 +0200)]
💚 Add VIm modeline to Jenkinsfile

2 years ago💚 Build once on Java 8 and once on Java 17
David ‘Bombe’ Roden [Mon, 30 Sep 2024 16:59:07 +0000 (18:59 +0200)]
💚 Build once on Java 8 and once on Java 17

2 years ago💚 Remove unnecessary plugins, fix unit test result collection
David ‘Bombe’ Roden [Mon, 30 Sep 2024 14:21:36 +0000 (16:21 +0200)]
💚 Remove unnecessary plugins, fix unit test result collection

2 years ago👷 Add JDK to use for build in pipeline
David ‘Bombe’ Roden [Mon, 30 Sep 2024 12:43:17 +0000 (14:43 +0200)]
👷 Add JDK to use for build in pipeline

2 years ago🔥 Fix some compiler warnings
David ‘Bombe’ Roden [Sat, 28 Sep 2024 21:24:47 +0000 (23:24 +0200)]
🔥 Fix some compiler warnings

The following warnings have been taken care of:

- Unused “event” parameters, used by Guava’s EventBus to identify event
  listener methods; reworked as extension methods
- A type mismatch caused by an unbounded type parameter
- Deprecated usages of String.capitalize() and .toLowerCase()
- Replace usage of Guava’s deprecated Files.write()
- Unchecked cast (solved by removing the whole piece of code, which was
  unused)
- Some unused parameters and variables
- Uses of ExpectedException in tests; replaced by assertThrows()
- Warning about usage of deprecated getPluginTalker() method was
  suppressed
- Suppressed some more warnings about unchecked casts
- Change a number of casts to wildcard types
- Specified some type parameters explicitely

The warning on the RenderFilter has been intentionally left in, because
at some point I need to figure out _why_ I thought that this expression
could be null.

2 years ago👽️ Use non-deprecated variant of @JvmDefault
David ‘Bombe’ Roden [Sat, 28 Sep 2024 19:38:37 +0000 (21:38 +0200)]
👽️ Use non-deprecated variant of @JvmDefault

2 years ago👽️ Use Unsafe instead of reflection to set private field for test
David ‘Bombe’ Roden [Sat, 28 Sep 2024 16:33:54 +0000 (18:33 +0200)]
👽️ Use Unsafe instead of reflection to set private field for test

This feels like a gigantic step backwards. Additionally, JEP 471 already
plans to phase out the method used in here until Java 27 or so, so at
some point I will have to fix the underlying issue of the
PageMakerInteractionFactory being non-accessible for tests.

2 years ago🔀 Merge branch 'feature/update-tests-to-build01498' into next
David ‘Bombe’ Roden [Sat, 28 Sep 2024 20:19:46 +0000 (22:19 +0200)]
🔀 Merge branch 'feature/update-tests-to-build01498' into next

2 years ago🔥 Remove erroneous call to FreenetURI constructor
David ‘Bombe’ Roden [Sat, 28 Sep 2024 16:10:15 +0000 (18:10 +0200)]
🔥 Remove erroneous call to FreenetURI constructor

2 years ago✅ Mock methods instead of setting private fields
David ‘Bombe’ Roden [Sat, 28 Sep 2024 16:04:37 +0000 (18:04 +0200)]
✅ Mock methods instead of setting private fields

2 years ago⬆️ Update Fred dependency to build 1498
David ‘Bombe’ Roden [Sat, 28 Sep 2024 15:56:07 +0000 (17:56 +0200)]
⬆️ Update Fred dependency to build 1498

3 years ago🚸 Make colons not part of links
David ‘Bombe’ Roden [Fri, 4 Aug 2023 11:28:35 +0000 (13:28 +0200)]
🚸 Make colons not part of links

3 years ago🎨 🔊 log string leading to exception
David ‘Bombe’ Roden [Thu, 8 Jun 2023 16:01:33 +0000 (18:01 +0200)]
🎨 🔊 log string leading to exception

3 years ago🔀 Merge “refactoring/no-negative-identity-filter”
David ‘Bombe’ Roden [Tue, 13 Dec 2022 20:49:45 +0000 (21:49 +0100)]
🔀 Merge “refactoring/no-negative-identity-filter”

3 years ago♻️ Use new filter class instead of filtering inline
David ‘Bombe’ Roden [Tue, 6 Dec 2022 21:42:31 +0000 (22:42 +0100)]
♻️ Use new filter class instead of filtering inline

3 years ago🚧 Add no-negative identity filter
David ‘Bombe’ Roden [Tue, 6 Dec 2022 21:40:01 +0000 (22:40 +0100)]
🚧 Add no-negative identity filter

This mirrors exactly what the IdentityManager already does but it adds a test!

3 years ago🎨 Add methods to create explicit and implicit trust values
David ‘Bombe’ Roden [Tue, 6 Dec 2022 21:36:04 +0000 (22:36 +0100)]
🎨 Add methods to create explicit and implicit trust values

3 years ago🎨 Add empty set as default for contexts
David ‘Bombe’ Roden [Tue, 6 Dec 2022 21:30:24 +0000 (22:30 +0100)]
🎨 Add empty set as default for contexts

4 years ago🚧 Don’t cancel on archive manifests
David ‘Bombe’ Roden [Mon, 12 Sep 2022 18:55:28 +0000 (20:55 +0200)]
🚧 Don’t cancel on archive manifests

4 years ago🚸 Download the files, including from archives
David ‘Bombe’ Roden [Sun, 11 Sep 2022 11:32:58 +0000 (13:32 +0200)]
🚸 Download the files, including from archives

4 years ago🔊 Log element loader’s decisions and results
David ‘Bombe’ Roden [Fri, 2 Sep 2022 15:56:58 +0000 (17:56 +0200)]
🔊 Log element loader’s decisions and results

This should make it way easier to find out why a certain element wasn’t loaded.

4 years ago🚸 Improve text extraction even further
David ‘Bombe’ Roden [Fri, 2 Sep 2022 15:27:11 +0000 (17:27 +0200)]
🚸 Improve text extraction even further

This actually revamps the way the first paragraph is extracted from freesites and could cause a lot more descriptions to show up in Sone — which was the goal!

Previously I tried to locate all top-level nodes (under <body>) that themselves had text nodes below them and whose name did not start with an “h” (to exclude the header tags) but it turns out this can be easily defeated by wrapping all of the site in e.g. a <center> tag. And I’m sure that a <div> tag would do exactly the same…

So now I use a CSS selector query to get all <p> and <div> nodes, get those with text nodes below them and then get their text (which flattens them for me and removes embedded tags like <a> or <span>).

4 years ago🚸 Improve text extraction from freesites
David ‘Bombe’ Roden [Fri, 2 Sep 2022 15:18:21 +0000 (17:18 +0200)]
🚸 Improve text extraction from freesites

4 years ago♻️ Add matcher for linked elements
David ‘Bombe’ Roden [Fri, 2 Sep 2022 15:14:06 +0000 (17:14 +0200)]
♻️ Add matcher for linked elements

4 years ago♻️ Move extension methods out of classes
David ‘Bombe’ Roden [Fri, 2 Sep 2022 14:42:41 +0000 (16:42 +0200)]
♻️ Move extension methods out of classes

4 years ago✅ Rewrite test to not use Mockito
David ‘Bombe’ Roden [Fri, 26 Aug 2022 11:10:25 +0000 (13:10 +0200)]
✅ Rewrite test to not use Mockito

4 years ago🎨 Reduce dependency on Node’s fields
David ‘Bombe’ Roden [Fri, 26 Aug 2022 10:15:00 +0000 (12:15 +0200)]
🎨 Reduce dependency on Node’s fields

Using fields is getting increasingly hard to mock with more recent Java
versions. This change moves some of the necessary field access to the
dependency injection configuration so it’s restricted to a single place in the
source code and tests don’t have to mess with this.

4 years ago🔀 Merge bugfix/too-long-urls
David ‘Bombe’ Roden [Fri, 26 Aug 2022 09:57:16 +0000 (11:57 +0200)]
🔀 Merge bugfix/too-long-urls

4 years ago💚 Declare output for “writeVersion” task
David ‘Bombe’ Roden [Fri, 26 Aug 2022 09:55:30 +0000 (11:55 +0200)]
💚 Declare output for “writeVersion” task

4 years ago🐛 🐛 Fix too-long URLs on pages with mane unloaded elements
David ‘Bombe’ Roden [Fri, 26 Aug 2022 09:55:16 +0000 (11:55 +0200)]
🐛 🐛 Fix too-long URLs on pages with mane unloaded elements

All the URLs were collected into a single URL for a GET requests and browsers
and servers may not like it that long.

4 years ago⬆️ Upgrade to Kotlin 1.7
David ‘Bombe’ Roden [Fri, 26 Aug 2022 09:52:40 +0000 (11:52 +0200)]
⬆️ Upgrade to Kotlin 1.7

And fix a bug while doing this!

4 years ago👷 Update Gradle to 7.5
David ‘Bombe’ Roden [Sun, 24 Jul 2022 12:22:46 +0000 (14:22 +0200)]
👷 Update Gradle to 7.5

4 years ago✅ Fix tests failing with non-English locales
David ‘Bombe’ Roden [Sat, 23 Jul 2022 21:57:33 +0000 (23:57 +0200)]
✅ Fix tests failing with non-English locales

For most of the tests it was sufficient to use the OverrideLocale TestRule added in the previous commit but in one case the creation of a date formatter needed to be delayed so that it uses the update locale during the test.

4 years ago✅ Add JUnit Rule to override locales during tests
David ‘Bombe’ Roden [Sat, 23 Jul 2022 21:24:13 +0000 (23:24 +0200)]
✅ Add JUnit Rule to override locales during tests

Some tests fail when run with a non-English locale. This was found by debbiedub (see https://github.com/Bombe/Sone/pull/23) but their proposed solution was not quite to my liking.

This TestRule will store the JVM’s current default locale and set a custom locale before running a test. After the test the previous locale will be restored, in order not to mess up any other tests.

4 years ago👷 Remove FindBugs plugin
David ‘Bombe’ Roden [Sat, 16 Apr 2022 11:51:11 +0000 (13:51 +0200)]
👷 Remove FindBugs plugin

It cannot handle Kotlin and it will not be getting any upgrades. It also
prevents me from updating Gradle so it has to go. It will probably be replaced
by detekt once Gradle has been updated.

4 years ago✅ Fix failing memory database test
David ‘Bombe’ Roden [Sat, 16 Apr 2022 11:45:52 +0000 (13:45 +0200)]
✅ Fix failing memory database test

The test failed because of timing issues with the rate limiter when saving post
replies. The first part of the fix is to inject the rate limiter in the
constructor. The second part would be to create a special rate limiter that
only ever lets the first request pass and not the second one but for now a rate
limit of 1 element per 1000 seconds should be enough, even for the slowest
tests… unless it isn’t.

There are other rate limiters in the memory database which can cause other
tests to fail at random times in the future. Those will be left as an exercise
for another day.

5 years agoFix test names that cause problems on Windows
David ‘Bombe’ Roden [Mon, 27 Sep 2021 14:48:03 +0000 (16:48 +0200)]
Fix test names that cause problems on Windows

I think I already complained about nobody ever compiling Sone on Windows
before, didn't I? Yes, I think I did.

5 years agoImprove names of startup-related tests
David ‘Bombe’ Roden [Mon, 27 Sep 2021 14:08:29 +0000 (16:08 +0200)]
Improve names of startup-related tests

Because honestly, what does "new config" even mean? Nobody knows unless
they also know the implementation (which ties a boolean value to an
annotation named "NewConfig") so stating clearly in which scenarios the
tests are running is preferrable. Like, by A LOT.

5 years agoUpdate Kotlin to latest 1.4
David ‘Bombe’ Roden [Mon, 27 Sep 2021 13:24:10 +0000 (15:24 +0200)]
Update Kotlin to latest 1.4

Somehow JetBrains keeps releasing new versions of Kotlin whenever I take
a step back for a week (or a year :D) so I have to keep updating this.

5 years agoFix incorrect comparison
David ‘Bombe’ Roden [Mon, 27 Sep 2021 12:34:26 +0000 (14:34 +0200)]
Fix incorrect comparison

The result of Object.equals(Object) will _always_ be non-null because a
primitive is always non-null. So once we use the correct method to check
the result of the equals call everything will be fine.

5 years agoReplace image implementation test with Kotlin version
David ‘Bombe’ Roden [Mon, 27 Sep 2021 12:34:03 +0000 (14:34 +0200)]
Replace image implementation test with Kotlin version

5 years agoMerge branch 'update/java-11-lts' into next
David ‘Bombe’ Roden [Mon, 27 Sep 2021 11:30:44 +0000 (13:30 +0200)]
Merge branch 'update/java-11-lts' into next

5 years agoMake test work with Java 8, too
David ‘Bombe’ Roden [Mon, 27 Sep 2021 11:03:39 +0000 (13:03 +0200)]
Make test work with Java 8, too

Because the Files.writeString method was only added in Java 11 but I
still want Sone to be compilable and runnable with Java 8 because
a) it's what I still use (yes, I'm proper ashamed) and b) it's probably
what many other people still use as long as Freenet doesn't bundle its
own Java (which it really should).

5 years agoFix test so it runs on Windows, too
David ‘Bombe’ Roden [Mon, 27 Sep 2021 09:36:28 +0000 (11:36 +0200)]
Fix test so it runs on Windows, too

This also means that nobody ever tried to compile Sone on Windows. I
mean, I know that _I_ didn't do it but seeing that apparently nobody
else in the whole wide world has done it kinda makes me sad. Anyway,
it's a simple fix.