This ticket is a placeholder for describing the roadmap for Airframe 2019 releases.
Airframe 19
airframe-http
airframe-http-finagle
airframe-http-recorder
airframe-http-client
airframe-di
airframe-surface
airframe-metrics
airframe-jmx
airframe-codec
airframe-msgpack
airframe-json
airframe-tablet (deprecated)
[ ] More robust CSV parser support
[ ] Revise input/output interfaces
airframe-sql
airframe-log
[ ] Migrate to wvlet.airframe.log? no urgency for this
- Retain wvlet.log.LogSupport
[ ] Remove the dependency to logback-core (log-rotation) Will not do this as we prefer simpler dependency configurations
airframe-jdbc
airframe-config
airspec
airframe-launcher
Scala 2.13
Miscellaneous
This ticket is a placeholder for describing the roadmap for Airframe 2019 releases.
Airframe 19
airframe-http
[ ] Add MultiMap for http request/response headersWe usually don't use generic request/response for now[ ] Add JMX metrics like TwitterServer-> airframe-http-finagle supports it[ ] gRPC support (idea)No urgency in our use casesairframe-http-finagle
[ ] Factory methods for building Finagle Requests(@takezoe) => FinagleRequestBuilder can be usedairframe-http-recorder
Custom http request matcher(headerExclude option seems sufficient for now)Custom http request handlerairframe-http-client
[ ] jetty-client[ ] akka-http client[ ] okhttp client[ ] https://github.com/softwaremill/sttpairframe-di
- [ ] Show dependency graph[ ] Rename the module to airframe-di (keep the package name as wvlet.airframe)No urgency for thisairframe-surface
airframe-metrics
airframe-jmx
[ ] Support JSON output for complex parameters-> Admin server can do a better job for HTTP server diagnosis[ ] Simplify the usage (e.g., just expose all public methods)airframe-codec
@requiredparameter airframe-codec: Add @required to mark must-have parameters #779[ ] Custom error handling: Add a parsing context-based error handling. Using default values (zero)Added@requiredairframe-codec: Add @required to mark must-have parameters #779 annotation so that we can enforce having a value.[ ] Custom parameter name normalization: snake_case, CamlCase input/outputUsing a safe default configuration is better.[ ] TimeWindow codec (e.g., retain the original duration strings)Relative time string (e.g., 1d) doesn't match with the absolute TimeWindow. Won't work on this.airframe-msgpack
[ ] InfiniteCanvas InfiniteCanvas #386airframe-json
airframe-tablet (deprecated)
[ ] More robust CSV parser support[ ] Revise input/output interfacesairframe-sql
airframe-log
[ ] Migrate to wvlet.airframe.log?no urgency for this[ ] Remove the dependency to logback-core (log-rotation)Will not do this as we prefer simpler dependency configurationsairframe-jdbc
airframe-config
[ ] Support env var in YAML fileIt will be overkillairspec
- [ ] Remove the dependency to ScalacheckUsing ScalaCheck is optionalairframe-launcher
Scala 2.13
Miscellaneous