Skip to content

Extensive Additions and Modifications Getting Ready for v4.0.0.#1

Draft
dshepperton wants to merge 22 commits into
mainfrom
version_4.0.0
Draft

Extensive Additions and Modifications Getting Ready for v4.0.0.#1
dshepperton wants to merge 22 commits into
mainfrom
version_4.0.0

Conversation

@dshepperton

Copy link
Copy Markdown
Contributor

Extensive Additions and Modifications Getting Ready for v4.0.0.

This pulls in many classes that were formerly part of Traction TeamPage, refactored to support more generic usage, and removing very TeamPage-specific APIs and usages.

The next commits before 4.0.0 should include:

  • Additional comments.
  • Pulling in the test cases from Traction TeamPage source code.
  • Adding more test cases.
  • Adding a default TempFile.Factory implementation.
  • Other cosmetic cleanups.

@dshepperton dshepperton self-assigned this May 23, 2026
slf4j-api for compile, slf4j-simple for testing.
Also added junit dependency.
Add and use variables for version numbers of some significant
dependencies.
Includes some sample images for testing reading dimensions,
including reading hi DPI (retina-style) image dimensions and
transforming those dimensions.
Easier to deal with. Also added Test annotations for test methods
in Base64UtilTest.
Lots of other minor tweaks, such as unifying the usage of some
annotations, removing some unnecessary methods, and more.
- Brought in or added many test cases.
- Moved some classes and methods to more sensible locations.
- Import htmlcleaner library for HTML cleanup and HTML-to-text
transformations; and make TextTransformerService into
HtmlTransformerService, and back the lone
textExtractionSnippets() with an HtmlCleanerAdapterTransformer for
HTML-to-text.
- Use that to provide a proper implementation (with test cases) of
newly moved HtmlUtil.getTextSnippetFromHtml.
- Added ConfiguredObject interface.
- Added transform(Reader, Writer) to TextTransformer API.
- Added JaxpXsltTextTransformer and XslFileTextTransformer.
- Refined FilteringTextMapper, CharBasedFilteringTextMapper, and
CodePointBasedFilteringTextMapper APIs and added required
implementations to allow their TextTransformer adapters to function
properly (improvements are still required in the
transform(Reader, Writer) case).
And added isNotEmpty. This is in parallel with other idioms used
elsewhere (e.g., StringUtils.isEmpty/isNotEmpty) that are more
expressive.
Some pulled from existing code (from which some classes were
copied or derived) and some completely new.
Also fixed a few bugs identified during testing.
Removed HexUtil, which is now more or less completely duplicated
by the built-in java.util.HexFormat class.
And several fixes found as a result of the new tests, and other
inspections.
This includes many new test cases, many annotations for nullness,
several fixes for code that wasn't quite working correctly, and
various other cleanup.
Also simplified the URLUtil.URLParameterValueCallback API - some
of them could just be Consumer<String>.
Also added many @nonnull and @nullable annotations and some
@CanIgnoreReturnValue annotations, but there are probably many more
that are needed.
and horizontally; and make it just return the image if it's already
square. Also adjusted test cases.
Revisions are focused on IOUtil, FileUtil, FileNameUtil.
Also adding @Nonnull/@nullable annotations everywhere I can.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant