Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Guardrail: State of the Union 2021-03-18

99d4c0ed3c8027ea1c37b53d6441d042?s=47 sullis
March 18, 2021

Guardrail: State of the Union 2021-03-18

Guardrail project
State of the Union
2021-03-18

#scala
#java
#codegen
#openapi

https://guardrail.dev

99d4c0ed3c8027ea1c37b53d6441d042?s=128

sullis

March 18, 2021
Tweet

Transcript

  1. Sean Sulliva n March 18, 2021 Guardrai l State of

    the Union
  2. Introductio n What’s ne w Artisan qualit y 2021 Roadmap

  3. Guardrai l is a code generation tool

  4. Guardrail OpenAPI Java Scala

  5. generated code OpenAPI

  6. January 2017

  7. First public release : September 2017

  8. First blog post: March 2018

  9. Guardrail is opinionated

  10. API First development

  11. Strongly typed code

  12. Make illegal states unrepresentable

  13. Leverage th e type system t o ensure correctness

  14. Embrac e referential transparency

  15. Favor immutability

  16. Generate idiomatic code

  17. What’s New?

  18. https://github.com/guardrail-dev New GitHub org

  19. sbt plugi n Maven plugi n Gradle plugin

  20. None
  21. Java collection s VAVR collections

  22. VAVR support

  23. <plugin > <groupId>com.twilio</groupId > <artifactId>guardrail-maven-plugin_2.12</artifactId> <version>0.62.2</version > … <modules >

    <module>java-vavr</module > <module>jackson</module > <module>dropwizard</module > <module>async-http-client</module> </modules > … <plugin > VAVR pom.xml
  24. Dropwizar d Spring MVC

  25. Spring

  26. Sample apps

  27. None
  28. None
  29. None
  30. Artisan quality

  31. Continuous integration

  32. Travis CI GitHu b Actions

  33. None
  34. None
  35. Which version of Java?

  36. JDK 8 JDK 1 1 JDK 13 JDK 1 4

    JDK 1 5 JDK 16
  37. Build matrix

  38. Publish to Maven Central

  39. ScalaTes t ScalaChec k Scoverage Testing, Testing, Testing

  40. EqualsVeri fi e r sbt-tes t maven-invoker-plugin Testing, Testing, Testing

  41. maven-invoker-plugin Integration tests

  42. Roadmap

  43. OpenAPI 3. 1 Dropwizard 2. x Scala 3.0

  44. Final thoughts

  45. Guardrail is awesom e API First developmen t Code generation

    is a force multiplier
  46. Contribute to guardrail !

  47. Questions?

  48. The End