3.0
Major change
This is a major refactor to refocus Jex on the JDK HttpServer API. Lots of changes, details below.
What's Changed
- Bump avaje dependencies by @rob-bygrave in #47
- Bump jetty dependency to 11.0.15 by @rbygrave in #48
- Update dependencies and HttpClient use in tests by @rbygrave in #49
- [JDK Server] Write more than a single byte at once by @SentryMan in #50
- Delete grizzly/jetty implementation by @SentryMan in #52
- Refactor to only use built-in JDK Server by @SentryMan in #53
- Bump version to 3.0-SNAPSHOT by @rbygrave in #55
- Update Workflows by @SentryMan in #57
- [workflow]: Bump actions/checkout from 2 to 4 by @dependabot in #60
- [workflow]: Bump actions/cache from 2 to 4 by @dependabot in #58
- [workflow]: Bump actions/setup-java from 2 to 4 by @dependabot in #59
- Bump the dependencies group with 15 updates by @dependabot in #61
- Use JDK Filters by @SentryMan in #56
- Get Roles and Basic Auth by @SentryMan in #62
- Support InputStream/byte[] response type by @SentryMan in #63
- Add before/after convenience methods by @SentryMan in #64
- Refactor Internals by @SentryMan in #65
- Refactor Error Handling registration by @SentryMan in #66
- Remove Unused Code by @SentryMan in #67
- Remove duplicate exception method by @SentryMan in #68
- Fix name collision with JDK 23 module imports by @SentryMan in #69
- Tidy Context, imports, javadoc, whitespace by @rbygrave in #70
- Change Context.Cookie into an interface by @rbygrave in #71
- Bump the dependencies group with 2 updates by @dependabot in #72
- Re-Add Static File support by @SentryMan in #73
- Add OPTIONS by @SentryMan in #75
- Add
bodyAsInputStream
by @SentryMan in #76 - Rename Exception Method by @SentryMan in #77
- Handle No Response by @SentryMan in #78
- Simplify JsonService interface by @SentryMan in #79
- Update test for AutoCloseIterator by @rbygrave in #82
- Use explicit close rather than try-with-resources for AutoClosable it… by @rbygrave in #83
- Tidy core - final classes and whitespace by @rbygrave in #80
- Tidy jdk package - final classes, getFirst, isEmpty, whitespace by @rbygrave in #81
- Add Compression by @SentryMan in #85
- Add htmx module by @rbygrave in #84
- Add some header methods by @SentryMan in #86
- Service Load
JexPlugin
s by @SentryMan in #87 - Handle Exception Handlers Throwing Exceptions by @SentryMan in #88
- Fix Static Directories paths by @SentryMan in #89
- Tidy routes with final classes and remove unnecessary public access by @rbygrave in #91
- Tidy top package with final classes and remove unnecessary public access by @rbygrave in #92
- Remove SpiContext by @SentryMan in #93
- Move FilterChain and ResourceLocation by @SentryMan in #94
- Javadocs/Fix Port by @SentryMan in #96
- Add
package-info.java
s by @SentryMan in #97 - Rewrite Routing by @SentryMan in #98
- Tidy Config by @SentryMan in #99
- Restore contextPath by @rbygrave in #101
- Re-Enable Host Config by @SentryMan in #103
- Restore binding to any local address (rather than loopback address) by @rbygrave in #104
- Tidy javadoc and unneeded public modifiers on interfaces by @rbygrave in #105
- CompressedOutputStream as final class by @rbygrave in #107
- Add support for Multiple Handlers for a single route by @rbygrave in #106
- Add example-robaho project by @rbygrave in #108
- Expose Context.outputStream() such that outputStream can be used directly by @rbygrave in #109
- Move classes from jdk package into core so that less need to be public by @rbygrave in #110
- Rename JdkServerStart to BootstrapServer, more classes non-public by @rbygrave in #111
- Make ExceptionManager non-public by @rbygrave in #112
- Bump com.fasterxml.jackson.core:jackson-databind from 2.18.1 to 2.18.2 in the dependencies group by @dependabot in #113
- Improve flaky test FilterTest (with after filter) by @rbygrave in #114
- Sentry man remove applog by @rbygrave in #115
- Fuse ServiceManager implementation by @SentryMan in #116
- Change RoutesBuilder to use LinkedHashMap (preserve order of added routes?) by @rbygrave in #117
- Fix path ordering route building issue - RouteIndexBuild.Entry.pathMa… by @rbygrave in #118
- Change Handler Signatures to handle Checked Exceptions by @SentryMan in #119
- Fix jex-test failing without jackson by @SentryMan in #122
- Split static resources into it's own module by @SentryMan in #121
- Remove a null check that isn't required by @rbygrave in #123
- Void Write Methods by @SentryMan in #124
- Fix Context void by @SentryMan in #125
- Add SameSite and Partitioned options to Cookie by @rbygrave in #126
- [static-files] Add precompression by @SentryMan in #127
- Tidy HttpResponseException by @SentryMan in #128
- Remove unused attributes by @SentryMan in #130
- Add Json body field to HttpResponseException by @SentryMan in #129
- change group to be a consumer by @SentryMan in #131
- Basic routing methods on
Jex
by @SentryMan in #132 - Add javadoc for exceptions, rename status() method by @rbygrave in #133
- Update role registration by @SentryMan in #135
- Rename StaticContentService to StaticContent and add Builder interface by @rbygrave in #134
- Rename
path
togroup
by @SentryMan in #136 - Make
jsonWriteStream
a default method by @SentryMan in #137 - Support generics in json by @SentryMan in #138
- remove encoding decision based on response header by @SentryMan in #140
- Add more avaje config options by @SentryMan in #141
- Restore json fromJson() using Class by @rbygrave in #142
- Optimize Jackson Service by @SentryMan in #139
- Bump org.graalvm.buildtools:native-maven-plugin from 0.10.3 to 0.10.4 in the dependencies group by @dependabot in #143
- Default to jsonb if both jackson and jsonb are present by @SentryMan in #144
- Bump the dependencies group with 3 updates by @dependabot in #145
- Make parent pom useful by @SentryMan in #146
- Bump the dependencies group with 7 updates by @dependabot in #147
- Fix Jex version and autorun
Ebean
by @SentryMan in #148 - Bump the dependencies group with 6 updates by @dependabot in #149
- Fix
contextPath
having no effect on routes by @SentryMan in #150 - Bump the dependencies group with 3 updates by @dependabot in #151
- Make avaje processors provided scope by @SentryMan in #152
- Bump the dependencies group with 2 updates by @dependabot in #153
- Bump the dependencies group with 4 updates by @dependabot in #154
- Support Custom Compressors by @SentryMan in #156
- [static-content] Add Roles by @SentryMan in #155
- Rename method CompressionConfig.compressor() by @rbygrave in #157
- Fix compression error log by @SentryMan in #158
- Bump the dependencies group with 2 updates by @dependabot in #159
- [boot] AutoConfigure
ssl
if present by @SentryMan in #160 - Remove unnecessary flush by @SentryMan in #161
- Bump the dependencies group with 6 updates by @dependabot in #162
- Make response buffer configurable by @SentryMan in #163
- Add sslSession method by @SentryMan in #165
- Sort Context members by @SentryMan in #166
- Bump the dependencies group with 7 updates by @dependabot in #167
- Tidy internals by @SentryMan in #169
- Improve startup message by @SentryMan in #164
- Handle Errors before After Handlers by @SentryMan in #170
- Simplify BootJex by @SentryMan in #171
- Bump the dependencies group with 3 updates by @dependabot in #172
- Fix Jsonb Example by @SentryMan in #174
- Support Jetty SPI Impl by @SentryMan in #173
- Bump the dependencies group with 7 updates by @dependabot in #175
- Reproducible only when deploying by @SentryMan in #176
- Add jetty to README by @SentryMan in #177
- Bump the dependencies group with 8 updates by @dependabot in #179
- Add
HttpServerProvider
config by @SentryMan in #178 - Enum Response Content/Status by @SentryMan in #181
- Add
HttpServerProvider
to auto config by @SentryMan in #180 - Increase default max buffer size by @SentryMan in #183
- Move handler classes to http package by @SentryMan in #182
- Bump the dependencies group with 6 updates by @dependabot in #184
- Fix ignore trailing slashes by @SentryMan in #186
- Re-enable generation example by @SentryMan in #185
- Bump the dependencies group across 1 directory with 4 updates by @dependabot in #188
- Fix
contextPath
slash error by @SentryMan in #189 - Fix path methods by @SentryMan in #190
- Create Jdk Filter Mapper by @SentryMan in #192
- Avoid sending headers twice on write error by @SentryMan in #194
- Bump the dependencies group with 3 updates by @dependabot in #196
- fix query param decoding of "+" by @SentryMan in #195
- Fix Client.Imports replacing old types attribute to value by @rbygrave in #198
- Add avaje-jsonb JsonOutput as performance option by @rbygrave in #199
- Add JsonType json method by @SentryMan in #200
- Fix javadoc bug with triple * instead of ** by @rbygrave in #201
- Bump the dependencies group with 5 updates by @dependabot in #204
- Add SSE support by @SentryMan in #203
- Move SseHandler into sse package and use SseClient.handler() method by @rbygrave in #205
- Unseal SseClient by @SentryMan in #206
- Remove sealed from API - Jex, JexConfig, Routing, AppLifecycle by @rbygrave in #208
- Add
onClose
method to SseClient by @SentryMan in #209 - make
toJsonStream
a default method by @SentryMan in #210 - Bump the dependencies group with 4 updates by @dependabot in #211
- Normalize header constants by @SentryMan in #212
- Bump the dependencies group with 2 updates by @dependabot in #213
- Fix startup log by @SentryMan in #214
- fix example builds by @SentryMan in #215
- Update PathSegmentParser Regex by @SentryMan in #216
- Bump the dependencies group with 4 updates by @dependabot in #217
- Rename static content builder methods by @SentryMan in #218
- Remove
fromJson(Class)
by @SentryMan in #219 - Remove flush from JsonOutput by @SentryMan in #220
- [static content] add default resourceLoader method by @SentryMan in #221
- add m2e lifecycle config by @SentryMan in #222
- Bump the dependencies group with 5 updates by @dependabot in #223
- Bump the dependencies group with 4 updates by @dependabot in #226
- Fix compression content types by @SentryMan in #225
- Cache
bodyAsBytes
result by @SentryMan in #224 - Create overview.html by @SentryMan in #228
- Remove Executor Config by @SentryMan in #227
- Bump the dependencies group with 7 updates by @dependabot in #229
- Revert "Remove Executor Config" by @SentryMan in #230
- Fix root static content by @SentryMan in #231
- Add Grizzly
jdk.httpserver
SPI by @SentryMan in #232 - Fix Jetty no response by @SentryMan in #233
- Add multivalue header methods by @SentryMan in #234
- Fix
fullUrl
on jetty by @SentryMan in #235 - Use
charAt
instead off startsWith where applicable by @SentryMan in #237 - Add robaho workflow by @SentryMan in #238
- basic auth tests by @SentryMan in #239
- Bump the dependencies group with 3 updates by @dependabot in #240
- Bump avaje-inject to 11.4 and prisms 1.42 by @rbygrave in #241
New Contributors
- @rob-bygrave made their first contribution in #47
- @SentryMan made their first contribution in #50
- @dependabot made their first contribution in #60
Full Changelog: avaje-jex-parent-2.5...3.0