brut 0.0.27 → 0.0.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (411) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +6 -0
  3. data/.projections.json +10 -0
  4. data/.rspec +3 -0
  5. data/Dockerfile.dx +32 -14
  6. data/Gemfile.lock +1 -1
  7. data/assets/Logo-Square.pxd +0 -0
  8. data/assets/LogoPylon.pxd +0 -0
  9. data/assets/LogoStop.pxd +0 -0
  10. data/assets/LogoTall.pxd +0 -0
  11. data/bin/docs +24 -2
  12. data/bin/rspec +27 -0
  13. data/bin/setup +3 -3
  14. data/brutrb.com/.vitepress/config.mjs +1 -0
  15. data/brutrb.com/.vitepress/theme/custom.css +7 -0
  16. data/brutrb.com/.vitepress/theme/style.css +26 -15
  17. data/brutrb.com/deployment.md +123 -45
  18. data/brutrb.com/dev-environment.md +6 -5
  19. data/brutrb.com/doc-conventions.md +1 -1
  20. data/brutrb.com/getting-started.md +64 -28
  21. data/brutrb.com/images/LogoPylon.png +0 -0
  22. data/brutrb.com/images/LogoSquare.png +0 -0
  23. data/brutrb.com/images/LogoStop.png +0 -0
  24. data/brutrb.com/images/LogoTall.png +0 -0
  25. data/brutrb.com/images/OverviewMetro.graffle +0 -0
  26. data/brutrb.com/images/OverviewMetro.png +0 -0
  27. data/brutrb.com/index.md +4 -3
  28. data/brutrb.com/instrumentation.md +12 -0
  29. data/brutrb.com/layouts.md +130 -0
  30. data/brutrb.com/overview.md +6 -6
  31. data/docker-compose.dx.yml +5 -2
  32. data/docs/404.html +3 -3
  33. data/docs/ai.html +6 -6
  34. data/docs/api/Brut/BackEnd/SeedData.html +1 -1
  35. data/docs/api/Brut/BackEnd/Sidekiq/Middlewares/Server/FlushSpans.html +1 -1
  36. data/docs/api/Brut/BackEnd/Sidekiq/Middlewares/Server.html +1 -1
  37. data/docs/api/Brut/BackEnd/Sidekiq/Middlewares.html +1 -1
  38. data/docs/api/Brut/BackEnd/Sidekiq.html +1 -1
  39. data/docs/api/Brut/BackEnd/Validators/FormValidator.html +1 -1
  40. data/docs/api/Brut/BackEnd/Validators.html +1 -1
  41. data/docs/api/Brut/BackEnd.html +1 -1
  42. data/docs/api/Brut/CLI/App.html +38 -13
  43. data/docs/api/Brut/CLI/AppRunner.html +1 -1
  44. data/docs/api/Brut/CLI/Apps/BuildAssets/All.html +2 -2
  45. data/docs/api/Brut/CLI/Apps/BuildAssets/CSS.html +2 -2
  46. data/docs/api/Brut/CLI/Apps/BuildAssets/Images.html +2 -2
  47. data/docs/api/Brut/CLI/Apps/BuildAssets/JS.html +2 -2
  48. data/docs/api/Brut/CLI/Apps/BuildAssets.html +1 -1
  49. data/docs/api/Brut/CLI/Apps/DB/Create.html +2 -2
  50. data/docs/api/Brut/CLI/Apps/DB/Drop.html +2 -2
  51. data/docs/api/Brut/CLI/Apps/DB/Migrate.html +9 -3
  52. data/docs/api/Brut/CLI/Apps/DB/NewMigration.html +11 -11
  53. data/docs/api/Brut/CLI/Apps/DB/Rebuild.html +2 -2
  54. data/docs/api/Brut/CLI/Apps/DB/Seed.html +2 -2
  55. data/docs/api/Brut/CLI/Apps/DB/Status.html +12 -12
  56. data/docs/api/Brut/CLI/Apps/DB.html +1 -1
  57. data/docs/api/Brut/CLI/Apps/DeployBase/GitChecks.html +270 -0
  58. data/docs/api/Brut/CLI/Apps/DeployBase.html +257 -0
  59. data/docs/api/Brut/CLI/Apps/HerokuContainerBasedDeploy/Deploy.html +585 -0
  60. data/docs/api/Brut/CLI/Apps/HerokuContainerBasedDeploy.html +196 -0
  61. data/docs/api/Brut/CLI/Apps/Scaffold/Action/Route.html +1 -1
  62. data/docs/api/Brut/CLI/Apps/Scaffold/Action.html +2 -2
  63. data/docs/api/Brut/CLI/Apps/Scaffold/Component.html +2 -2
  64. data/docs/api/Brut/CLI/Apps/Scaffold/CustomElementTest.html +2 -2
  65. data/docs/api/Brut/CLI/Apps/Scaffold/E2ETest.html +2 -2
  66. data/docs/api/Brut/CLI/Apps/Scaffold/Form.html +2 -2
  67. data/docs/api/Brut/CLI/Apps/Scaffold/Page/Route.html +1 -1
  68. data/docs/api/Brut/CLI/Apps/Scaffold/Page.html +2 -2
  69. data/docs/api/Brut/CLI/Apps/Scaffold/RoutesEditor.html +1 -1
  70. data/docs/api/Brut/CLI/Apps/Scaffold/Test.html +2 -2
  71. data/docs/api/Brut/CLI/Apps/Scaffold.html +1 -1
  72. data/docs/api/Brut/CLI/Apps/Test/Audit.html +12 -10
  73. data/docs/api/Brut/CLI/Apps/Test/E2e.html +8 -8
  74. data/docs/api/Brut/CLI/Apps/Test/JS.html +9 -9
  75. data/docs/api/Brut/CLI/Apps/Test/Run.html +18 -18
  76. data/docs/api/Brut/CLI/Apps/Test.html +1 -1
  77. data/docs/api/Brut/CLI/Apps.html +2 -2
  78. data/docs/api/Brut/CLI/Command.html +113 -28
  79. data/docs/api/Brut/CLI/Error.html +1 -1
  80. data/docs/api/Brut/CLI/ExecutionResults/Result.html +1 -1
  81. data/docs/api/Brut/CLI/ExecutionResults.html +1 -1
  82. data/docs/api/Brut/CLI/Executor.html +169 -38
  83. data/docs/api/Brut/CLI/InvalidOption.html +1 -1
  84. data/docs/api/Brut/CLI/Options.html +68 -19
  85. data/docs/api/Brut/CLI/Output.html +1 -1
  86. data/docs/api/Brut/CLI/SystemExecError.html +1 -1
  87. data/docs/api/Brut/CLI.html +1 -1
  88. data/docs/api/Brut/FactoryBot.html +1 -1
  89. data/docs/api/Brut/Framework/App.html +1 -1
  90. data/docs/api/Brut/Framework/Config.html +1 -1
  91. data/docs/api/Brut/Framework/Container.html +110 -29
  92. data/docs/api/Brut/Framework/Error.html +1 -1
  93. data/docs/api/Brut/Framework/Errors/AbstractMethod.html +89 -1
  94. data/docs/api/Brut/Framework/Errors/Bug.html +1 -1
  95. data/docs/api/Brut/Framework/Errors/MissingConfiguration.html +1 -1
  96. data/docs/api/Brut/Framework/Errors/MissingParameter.html +1 -1
  97. data/docs/api/Brut/Framework/Errors/NoClassForPath.html +1 -1
  98. data/docs/api/Brut/Framework/Errors/NotFound.html +1 -1
  99. data/docs/api/Brut/Framework/Errors/NotImplemented.html +1 -1
  100. data/docs/api/Brut/Framework/Errors.html +31 -8
  101. data/docs/api/Brut/Framework/FussyTypeEnforcement.html +1 -1
  102. data/docs/api/Brut/Framework/MCP.html +1 -1
  103. data/docs/api/Brut/Framework/ProjectEnvironment.html +1 -1
  104. data/docs/api/Brut/Framework.html +1 -1
  105. data/docs/api/Brut/FrontEnd/AssetPathResolver.html +1 -1
  106. data/docs/api/Brut/FrontEnd/Component/Helpers.html +36 -26
  107. data/docs/api/Brut/FrontEnd/Component.html +7 -7
  108. data/docs/api/Brut/FrontEnd/Components/ConstraintViolations.html +1 -1
  109. data/docs/api/Brut/FrontEnd/Components/FormTag.html +37 -29
  110. data/docs/api/Brut/FrontEnd/Components/I18nTranslations.html +1 -1
  111. data/docs/api/Brut/FrontEnd/Components/Input.html +1 -1
  112. data/docs/api/Brut/FrontEnd/Components/Inputs/CsrfToken.html +1 -1
  113. data/docs/api/Brut/FrontEnd/Components/Inputs/InputTag.html +20 -117
  114. data/docs/api/Brut/FrontEnd/Components/Inputs/RadioButton.html +25 -23
  115. data/docs/api/Brut/FrontEnd/Components/Inputs/SelectTagWithOptions.html +73 -380
  116. data/docs/api/Brut/FrontEnd/Components/Inputs/TextareaTag.html +22 -138
  117. data/docs/api/Brut/FrontEnd/Components/Inputs.html +1 -1
  118. data/docs/api/Brut/FrontEnd/Components/LocaleDetection.html +1 -1
  119. data/docs/api/Brut/FrontEnd/Components/PageIdentifier.html +1 -1
  120. data/docs/api/Brut/FrontEnd/Components/TimeTag.html +1 -1
  121. data/docs/api/Brut/FrontEnd/Components/Traceparent.html +1 -1
  122. data/docs/api/Brut/FrontEnd/Components.html +23 -2
  123. data/docs/api/Brut/FrontEnd/Download.html +1 -1
  124. data/docs/api/Brut/FrontEnd/Flash.html +1 -1
  125. data/docs/api/Brut/FrontEnd/Form.html +1 -1
  126. data/docs/api/Brut/FrontEnd/Forms/ConstraintViolation.html +24 -68
  127. data/docs/api/Brut/FrontEnd/Forms/Input/Color.html +201 -0
  128. data/docs/api/Brut/FrontEnd/Forms/Input/TimeOfDay.html +535 -0
  129. data/docs/api/Brut/FrontEnd/Forms/Input.html +983 -35
  130. data/docs/api/Brut/FrontEnd/Forms/InputDeclarations.html +4 -4
  131. data/docs/api/Brut/FrontEnd/Forms/InputDefinition.html +29 -19
  132. data/docs/api/Brut/FrontEnd/Forms/RadioButtonGroupInput.html +9 -3
  133. data/docs/api/Brut/FrontEnd/Forms/RadioButtonGroupInputDefinition.html +1 -1
  134. data/docs/api/Brut/FrontEnd/Forms/SelectInput.html +9 -3
  135. data/docs/api/Brut/FrontEnd/Forms/SelectInputDefinition.html +1 -1
  136. data/docs/api/Brut/FrontEnd/Forms/ValidityState.html +72 -22
  137. data/docs/api/Brut/FrontEnd/Forms.html +1 -1
  138. data/docs/api/Brut/FrontEnd/GenericResponse.html +1 -1
  139. data/docs/api/Brut/FrontEnd/Handler.html +1 -1
  140. data/docs/api/Brut/FrontEnd/Handlers/CspReportingHandler.html +1 -1
  141. data/docs/api/Brut/FrontEnd/Handlers/InstrumentationHandler/TraceParent.html +1 -1
  142. data/docs/api/Brut/FrontEnd/Handlers/InstrumentationHandler.html +1 -1
  143. data/docs/api/Brut/FrontEnd/Handlers/LocaleDetectionHandler.html +1 -1
  144. data/docs/api/Brut/FrontEnd/Handlers/MissingHandler/Form.html +1 -1
  145. data/docs/api/Brut/FrontEnd/Handlers/MissingHandler.html +1 -1
  146. data/docs/api/Brut/FrontEnd/Handlers.html +1 -1
  147. data/docs/api/Brut/FrontEnd/HandlingResults.html +1 -1
  148. data/docs/api/Brut/FrontEnd/HttpMethod.html +1 -1
  149. data/docs/api/Brut/FrontEnd/HttpStatus.html +1 -1
  150. data/docs/api/Brut/FrontEnd/InlineSvgLocator.html +1 -1
  151. data/docs/api/Brut/FrontEnd/Layout.html +1 -1
  152. data/docs/api/Brut/FrontEnd/Middleware.html +1 -1
  153. data/docs/api/Brut/FrontEnd/Middlewares/AnnotateBrutOwnedPaths.html +1 -1
  154. data/docs/api/Brut/FrontEnd/Middlewares/Favicon.html +1 -1
  155. data/docs/api/Brut/FrontEnd/Middlewares/OpenTelemetrySpan.html +1 -1
  156. data/docs/api/Brut/FrontEnd/Middlewares/ReloadApp.html +6 -2
  157. data/docs/api/Brut/FrontEnd/Middlewares.html +1 -1
  158. data/docs/api/Brut/FrontEnd/Page.html +1 -1
  159. data/docs/api/Brut/FrontEnd/Pages/MissingPage.html +1 -1
  160. data/docs/api/Brut/FrontEnd/Pages.html +1 -1
  161. data/docs/api/Brut/FrontEnd/RequestContext.html +1 -1
  162. data/docs/api/Brut/FrontEnd/RouteHook.html +1 -1
  163. data/docs/api/Brut/FrontEnd/RouteHooks/AgeFlash.html +1 -1
  164. data/docs/api/Brut/FrontEnd/RouteHooks/CSPNoInlineScripts.html +1 -1
  165. data/docs/api/Brut/FrontEnd/RouteHooks/CSPNoInlineStylesOrScripts/ReportOnly.html +1 -1
  166. data/docs/api/Brut/FrontEnd/RouteHooks/CSPNoInlineStylesOrScripts.html +1 -1
  167. data/docs/api/Brut/FrontEnd/RouteHooks/LocaleDetection.html +1 -1
  168. data/docs/api/Brut/FrontEnd/RouteHooks/SetupRequestContext.html +1 -1
  169. data/docs/api/Brut/FrontEnd/RouteHooks.html +1 -1
  170. data/docs/api/Brut/FrontEnd/Routing/FormHandlerRoute.html +1 -1
  171. data/docs/api/Brut/FrontEnd/Routing/FormRoute.html +1 -1
  172. data/docs/api/Brut/FrontEnd/Routing/MissingForm.html +1 -1
  173. data/docs/api/Brut/FrontEnd/Routing/MissingHandler.html +1 -1
  174. data/docs/api/Brut/FrontEnd/Routing/MissingPage.html +1 -1
  175. data/docs/api/Brut/FrontEnd/Routing/MissingPath.html +1 -1
  176. data/docs/api/Brut/FrontEnd/Routing/PageRoute.html +1 -1
  177. data/docs/api/Brut/FrontEnd/Routing/Route.html +1 -1
  178. data/docs/api/Brut/FrontEnd/Routing.html +1 -1
  179. data/docs/api/Brut/FrontEnd/Session.html +1 -1
  180. data/docs/api/Brut/FrontEnd.html +1 -1
  181. data/docs/api/Brut/I18n/BaseMethods.html +1 -1
  182. data/docs/api/Brut/I18n/ForBackEnd.html +1 -1
  183. data/docs/api/Brut/I18n/ForCLI.html +1 -1
  184. data/docs/api/Brut/I18n/ForHTML.html +1 -1
  185. data/docs/api/Brut/I18n/HTTPAcceptLanguage/AlwaysEnglish.html +1 -1
  186. data/docs/api/Brut/I18n/HTTPAcceptLanguage.html +1 -1
  187. data/docs/api/Brut/I18n.html +1 -1
  188. data/docs/api/Brut/Instrumentation/LoggerSpanExporter.html +1 -1
  189. data/docs/api/Brut/Instrumentation/OpenTelemetry/NormalizedAttributes.html +1 -1
  190. data/docs/api/Brut/Instrumentation/OpenTelemetry/Span.html +1 -1
  191. data/docs/api/Brut/Instrumentation/OpenTelemetry.html +1 -1
  192. data/docs/api/Brut/Instrumentation.html +1 -1
  193. data/docs/api/Brut/SinatraHelpers/ClassMethods.html +1 -1
  194. data/docs/api/Brut/SinatraHelpers.html +1 -1
  195. data/docs/api/Brut/SpecSupport/ClockSupport.html +1 -1
  196. data/docs/api/Brut/SpecSupport/ComponentSupport.html +1 -1
  197. data/docs/api/Brut/SpecSupport/E2ETestServer.html +20 -20
  198. data/docs/api/Brut/SpecSupport/E2eSupport.html +1 -1
  199. data/docs/api/Brut/SpecSupport/EnhancedNode.html +1 -1
  200. data/docs/api/Brut/SpecSupport/FlashSupport.html +1 -1
  201. data/docs/api/Brut/SpecSupport/GeneralSupport/ClassMethods.html +1 -1
  202. data/docs/api/Brut/SpecSupport/GeneralSupport.html +1 -1
  203. data/docs/api/Brut/SpecSupport/HandlerSupport.html +2 -2
  204. data/docs/api/Brut/SpecSupport/Matchers/BeABug.html +142 -0
  205. data/docs/api/Brut/SpecSupport/Matchers/BePageFor.html +142 -0
  206. data/docs/api/Brut/SpecSupport/Matchers/BeRoutingFor.html +155 -0
  207. data/docs/api/Brut/SpecSupport/Matchers/HaveConstraintViolation.html +55 -25
  208. data/docs/api/Brut/SpecSupport/Matchers/HaveGenerated.html +149 -0
  209. data/docs/api/Brut/SpecSupport/Matchers/HaveHTMLAttribute.html +46 -19
  210. data/docs/api/Brut/SpecSupport/Matchers/HaveI18nString.html +149 -0
  211. data/docs/api/Brut/SpecSupport/Matchers/HaveLinkTo.html +149 -0
  212. data/docs/api/Brut/SpecSupport/Matchers/HaveRedirectedTo.html +165 -0
  213. data/docs/api/Brut/SpecSupport/Matchers/HaveReturnedHttpStatus.html +158 -0
  214. data/docs/api/Brut/SpecSupport/Matchers/HaveReturnedRackResponse.html +156 -0
  215. data/docs/api/Brut/SpecSupport/Matchers.html +2 -2
  216. data/docs/api/Brut/SpecSupport/RSpecSetup/OptionalSidekiqSupport.html +24 -24
  217. data/docs/api/Brut/SpecSupport/RSpecSetup.html +55 -20
  218. data/docs/api/Brut/SpecSupport/SessionSupport.html +1 -1
  219. data/docs/api/Brut/SpecSupport.html +1 -1
  220. data/docs/api/Brut.html +1 -1
  221. data/docs/api/Clock.html +1 -1
  222. data/docs/api/RichString.html +1 -1
  223. data/docs/api/SemanticLogger/Appender/Async.html +1 -1
  224. data/docs/api/Sequel/Extensions/BrutInstrumentation.html +5 -1
  225. data/docs/api/Sequel/Extensions/BrutMigrations.html +36 -28
  226. data/docs/api/Sequel/Extensions.html +1 -1
  227. data/docs/api/Sequel/Plugins/CreatedAt/InstanceMethods.html +1 -1
  228. data/docs/api/Sequel/Plugins/CreatedAt.html +1 -1
  229. data/docs/api/Sequel/Plugins/ExternalId/ClassMethods.html +1 -1
  230. data/docs/api/Sequel/Plugins/ExternalId/InstanceMethods.html +1 -1
  231. data/docs/api/Sequel/Plugins/ExternalId.html +1 -1
  232. data/docs/api/Sequel/Plugins/FindBang/ClassMethods.html +1 -1
  233. data/docs/api/Sequel/Plugins/FindBang.html +1 -1
  234. data/docs/api/Sequel/Plugins.html +1 -1
  235. data/docs/api/Sequel.html +1 -1
  236. data/docs/api/SpecSupport/Matchers/BeABug.html +143 -0
  237. data/docs/api/_index.html +106 -1
  238. data/docs/api/class_list.html +1 -1
  239. data/docs/api/css/full_list.css +2 -1
  240. data/docs/api/css/style.css +14 -13
  241. data/docs/api/file.README.html +1 -1
  242. data/docs/api/index.html +1 -1
  243. data/docs/api/method_list.html +530 -330
  244. data/docs/api/top-level-namespace.html +1 -1
  245. data/docs/assets/LogoStop.X8x-4riz.png +0 -0
  246. data/docs/assets/OverviewMetro.DUS-5fUZ.png +0 -0
  247. data/docs/assets/{ai.md.tZrjP9im.js → ai.md._6HCDL6d.js} +1 -1
  248. data/docs/assets/ai.md._6HCDL6d.lean.js +1 -0
  249. data/docs/assets/{app.D_yaTITQ.js → app.BhrfSt68.js} +1 -1
  250. data/docs/assets/chunks/@localSearchIndexroot.CeRAdP1K.js +1 -0
  251. data/docs/assets/chunks/{VPLocalSearchBox.B2-ZzyTY.js → VPLocalSearchBox.Dpot_2H4.js} +1 -1
  252. data/docs/assets/chunks/{theme.CfGFVRvE.js → theme.N2SNVLgU.js} +2 -2
  253. data/docs/assets/{components.md.eCttGlN-.js → components.md.CRUMdRoN.js} +1 -1
  254. data/docs/assets/{configuration.md.BRriU0cL.js → configuration.md.LG-zIBww.js} +1 -1
  255. data/docs/assets/deployment.md.BLseERGV.js +48 -0
  256. data/docs/assets/deployment.md.BLseERGV.lean.js +1 -0
  257. data/docs/assets/{dev-environment.md.BNc8AYiK.js → dev-environment.md.GZv6xvi9.js} +1 -1
  258. data/docs/assets/doc-conventions.md.-kN3Xo5C.js +1 -0
  259. data/docs/assets/{doc-conventions.md.DCfRXXi-.lean.js → doc-conventions.md.-kN3Xo5C.lean.js} +1 -1
  260. data/docs/assets/{forms.md.CBTYQ_Cz.js → forms.md.B-koVgyw.js} +23 -23
  261. data/docs/assets/{forms.md.CBTYQ_Cz.lean.js → forms.md.B-koVgyw.lean.js} +1 -1
  262. data/docs/assets/getting-started.md.Dj0qtZI2.js +25 -0
  263. data/docs/assets/getting-started.md.Dj0qtZI2.lean.js +1 -0
  264. data/docs/assets/index.md.CuBB-BdM.js +1 -0
  265. data/docs/assets/index.md.CuBB-BdM.lean.js +1 -0
  266. data/docs/assets/{instrumentation.md.CL6ax7nT.js → instrumentation.md.a9Pjps4P.js} +2 -2
  267. data/docs/assets/{instrumentation.md.CL6ax7nT.lean.js → instrumentation.md.a9Pjps4P.lean.js} +1 -1
  268. data/docs/assets/layouts.md.cPnh3NId.js +51 -0
  269. data/docs/assets/layouts.md.cPnh3NId.lean.js +1 -0
  270. data/docs/assets/lsp.md.Bsu-f6VU.js +1 -0
  271. data/docs/assets/lsp.md.Bsu-f6VU.lean.js +1 -0
  272. data/docs/assets/{overview.md.CDalkuxV.js → overview.md.DVKRM8zl.js} +4 -4
  273. data/docs/assets/overview.md.DVKRM8zl.lean.js +1 -0
  274. data/docs/assets/recipes_authentication.md.CAsXf7hk.js +1 -0
  275. data/docs/assets/recipes_authentication.md.CAsXf7hk.lean.js +1 -0
  276. data/docs/assets/{style.D73IYGCX.css → style.B2o1L9eN.css} +1 -1
  277. data/docs/assets.html +5 -5
  278. data/docs/brut-js/api/AjaxSubmit.html +1 -1
  279. data/docs/brut-js/api/AjaxSubmit.js.html +1 -1
  280. data/docs/brut-js/api/Autosubmit.html +1 -1
  281. data/docs/brut-js/api/Autosubmit.js.html +1 -1
  282. data/docs/brut-js/api/BaseCustomElement.html +1 -1
  283. data/docs/brut-js/api/BaseCustomElement.js.html +1 -1
  284. data/docs/brut-js/api/BrutCustomElements.html +1 -1
  285. data/docs/brut-js/api/BufferedLogger.html +1 -1
  286. data/docs/brut-js/api/ConfirmSubmit.html +1 -1
  287. data/docs/brut-js/api/ConfirmSubmit.js.html +1 -1
  288. data/docs/brut-js/api/ConfirmationDialog.html +1 -1
  289. data/docs/brut-js/api/ConfirmationDialog.js.html +1 -1
  290. data/docs/brut-js/api/ConstraintViolationMessage.html +1 -1
  291. data/docs/brut-js/api/ConstraintViolationMessage.js.html +1 -1
  292. data/docs/brut-js/api/ConstraintViolationMessages.html +1 -1
  293. data/docs/brut-js/api/ConstraintViolationMessages.js.html +1 -1
  294. data/docs/brut-js/api/CopyToClipboard.html +1 -1
  295. data/docs/brut-js/api/CopyToClipboard.js.html +1 -1
  296. data/docs/brut-js/api/Form.html +1 -1
  297. data/docs/brut-js/api/Form.js.html +1 -1
  298. data/docs/brut-js/api/I18nTranslation.html +1 -1
  299. data/docs/brut-js/api/I18nTranslation.js.html +1 -1
  300. data/docs/brut-js/api/LocaleDetection.html +1 -1
  301. data/docs/brut-js/api/LocaleDetection.js.html +1 -1
  302. data/docs/brut-js/api/Logger.html +1 -1
  303. data/docs/brut-js/api/Logger.js.html +1 -1
  304. data/docs/brut-js/api/Message.html +1 -1
  305. data/docs/brut-js/api/Message.js.html +1 -1
  306. data/docs/brut-js/api/PrefixedLogger.html +1 -1
  307. data/docs/brut-js/api/RichString.html +1 -1
  308. data/docs/brut-js/api/RichString.js.html +1 -1
  309. data/docs/brut-js/api/Tabs.html +1 -1
  310. data/docs/brut-js/api/Tabs.js.html +1 -1
  311. data/docs/brut-js/api/Tracing.html +1 -1
  312. data/docs/brut-js/api/Tracing.js.html +1 -1
  313. data/docs/brut-js/api/external-CustomElementRegistry.html +1 -1
  314. data/docs/brut-js/api/external-Performance.html +1 -1
  315. data/docs/brut-js/api/external-Promise.html +1 -1
  316. data/docs/brut-js/api/external-ValidityState.html +1 -1
  317. data/docs/brut-js/api/external-Window.html +1 -1
  318. data/docs/brut-js/api/external-fetch.html +1 -1
  319. data/docs/brut-js/api/global.html +1 -1
  320. data/docs/brut-js/api/index.html +1 -1
  321. data/docs/brut-js/api/index.js.html +1 -1
  322. data/docs/brut-js/api/module-testing.html +1 -1
  323. data/docs/brut-js/api/testing.AssetMetadata.html +1 -1
  324. data/docs/brut-js/api/testing.AssetMetadataLoader.html +1 -1
  325. data/docs/brut-js/api/testing.CustomElementTest.html +1 -1
  326. data/docs/brut-js/api/testing.DOMCreator.html +1 -1
  327. data/docs/brut-js/api/testing_AssetMetadata.js.html +1 -1
  328. data/docs/brut-js/api/testing_AssetMetadataLoader.js.html +1 -1
  329. data/docs/brut-js/api/testing_CustomElementTest.js.html +1 -1
  330. data/docs/brut-js/api/testing_DOMCreator.js.html +1 -1
  331. data/docs/brut-js/api/testing_index.js.html +1 -1
  332. data/docs/brut-js.html +5 -5
  333. data/docs/business-logic.html +5 -5
  334. data/docs/cli.html +5 -5
  335. data/docs/components.html +7 -7
  336. data/docs/configuration.html +6 -6
  337. data/docs/css.html +5 -5
  338. data/docs/custom-element-tests.html +5 -5
  339. data/docs/database-access.html +5 -5
  340. data/docs/database-schema.html +5 -5
  341. data/docs/deployment.html +53 -6
  342. data/docs/dev-environment.html +6 -6
  343. data/docs/doc-conventions.html +6 -6
  344. data/docs/end-to-end-tests.html +5 -5
  345. data/docs/flash-and-session.html +5 -5
  346. data/docs/forms.html +28 -28
  347. data/docs/getting-started.html +30 -7
  348. data/docs/handlers.html +5 -5
  349. data/docs/hashmap.json +1 -1
  350. data/docs/hooks.html +5 -5
  351. data/docs/i18n.html +5 -5
  352. data/docs/index.html +6 -6
  353. data/docs/instrumentation.html +6 -6
  354. data/docs/javascript.html +5 -5
  355. data/docs/jobs.html +5 -5
  356. data/docs/keyword-injection.html +5 -5
  357. data/docs/layouts.html +74 -0
  358. data/docs/lsp.html +24 -0
  359. data/docs/markdown-examples.html +5 -5
  360. data/docs/middleware.html +5 -5
  361. data/docs/not-released.html +5 -5
  362. data/docs/overview.html +9 -9
  363. data/docs/pages.html +6 -6
  364. data/docs/recipes/authentication.html +24 -0
  365. data/docs/routes.html +5 -5
  366. data/docs/security.html +5 -5
  367. data/docs/seed-data.html +5 -5
  368. data/docs/space-time-continuum.html +5 -5
  369. data/docs/tutorial.html +5 -5
  370. data/docs/unit-tests.html +5 -5
  371. data/dx/bash_customizations +7 -0
  372. data/dx/build +13 -2
  373. data/dx/docker-compose.env +1 -1
  374. data/dx/exec +25 -8
  375. data/lib/brut/cli/app.rb +7 -2
  376. data/lib/brut/cli/apps/deploy_base.rb +86 -0
  377. data/lib/brut/cli/apps/heroku_container_based_deploy.rb +194 -0
  378. data/lib/brut/cli/command.rb +7 -13
  379. data/lib/brut/cli/executor.rb +31 -5
  380. data/lib/brut/cli/options.rb +4 -0
  381. data/lib/brut/cli.rb +4 -3
  382. data/lib/brut/framework/container.rb +25 -7
  383. data/lib/brut/framework/errors/abstract_method.rb +7 -0
  384. data/lib/brut/framework/errors.rb +4 -2
  385. data/lib/brut/front_end/forms/input.rb +253 -20
  386. data/lib/brut/front_end/forms/input_definition.rb +15 -12
  387. data/lib/brut/front_end/middlewares/reload_app.rb +2 -0
  388. data/lib/brut/front_end.rb +1 -0
  389. data/lib/brut/spec_support/rspec_setup.rb +42 -2
  390. data/lib/brut/version.rb +1 -1
  391. data/lib/sequel/extensions/brut_instrumentation.rb +4 -0
  392. data/specs/brut/front_end/forms/input.spec.rb +978 -0
  393. data/specs/spec_helper.rb +27 -0
  394. data/specs/support/matchers/have_constraint_violation.rb +23 -0
  395. data/specs/support/matchers.rb +5 -0
  396. data/specs/support.rb +3 -0
  397. metadata +77 -29
  398. data/docs/assets/ai.md.tZrjP9im.lean.js +0 -1
  399. data/docs/assets/chunks/@localSearchIndexroot.BsN5i0Fi.js +0 -1
  400. data/docs/assets/deployment.md.Dbka4OTr.js +0 -1
  401. data/docs/assets/deployment.md.Dbka4OTr.lean.js +0 -1
  402. data/docs/assets/doc-conventions.md.DCfRXXi-.js +0 -1
  403. data/docs/assets/getting-started.md.Bz2s1Vjb.js +0 -2
  404. data/docs/assets/getting-started.md.Bz2s1Vjb.lean.js +0 -1
  405. data/docs/assets/index.md.B28EwVpq.js +0 -1
  406. data/docs/assets/index.md.B28EwVpq.lean.js +0 -1
  407. data/docs/assets/overview.Da81cB9R.png +0 -0
  408. data/docs/assets/overview.md.CDalkuxV.lean.js +0 -1
  409. /data/docs/assets/{components.md.eCttGlN-.lean.js → components.md.CRUMdRoN.lean.js} +0 -0
  410. /data/docs/assets/{configuration.md.BRriU0cL.lean.js → configuration.md.LG-zIBww.lean.js} +0 -0
  411. /data/docs/assets/{dev-environment.md.BNc8AYiK.lean.js → dev-environment.md.GZv6xvi9.lean.js} +0 -0
@@ -282,7 +282,7 @@
282
282
  </div>
283
283
 
284
284
  <div id="footer">
285
- Generated on Wed Jun 25 22:57:21 2025 by
285
+ Generated on Fri Jul 4 21:27:28 2025 by
286
286
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
287
287
  0.9.37 (ruby-3.4.4).
288
288
  </div>
@@ -314,7 +314,7 @@
314
314
  </div>
315
315
 
316
316
  <div id="footer">
317
- Generated on Wed Jun 25 22:57:21 2025 by
317
+ Generated on Fri Jul 4 21:27:29 2025 by
318
318
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
319
319
  0.9.37 (ruby-3.4.4).
320
320
  </div>
@@ -305,7 +305,9 @@
305
305
  45
306
306
  46
307
307
  47
308
- 48</pre>
308
+ 48
309
+ 49
310
+ 50</pre>
309
311
  </td>
310
312
  <td>
311
313
  <pre class="code"><span class="info file"># File 'lib/brut/front_end/middlewares/reload_app.rb', line 7</span>
@@ -334,6 +336,8 @@
334
336
  <span class='id identifier rubyid_span'>span</span><span class='period'>.</span><span class='id identifier rubyid_add_event'>add_event</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Routing reloaded</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
335
337
  <span class='const'><span class='object_link'><a href="../../../Brut.html" title="Brut (module)">Brut</a></span></span><span class='period'>.</span><span class='id identifier rubyid_container'><span class='object_link'><a href="../../../Brut.html#container-class_method" title="Brut.container (method)">container</a></span></span><span class='period'>.</span><span class='id identifier rubyid_asset_path_resolver'>asset_path_resolver</span><span class='period'>.</span><span class='id identifier rubyid_reload'>reload</span>
336
338
  <span class='id identifier rubyid_span'>span</span><span class='period'>.</span><span class='id identifier rubyid_add_event'>add_event</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Asset Path Resolver reloaded</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
339
+ <span class='const'><span class='object_link'><a href="../../../Brut.html" title="Brut (module)">Brut</a></span></span><span class='period'>.</span><span class='id identifier rubyid_container'><span class='object_link'><a href="../../../Brut.html#container-class_method" title="Brut.container (method)">container</a></span></span><span class='period'>.</span><span class='id identifier rubyid_reload'>reload</span>
340
+ <span class='id identifier rubyid_span'>span</span><span class='period'>.</span><span class='id identifier rubyid_add_event'>add_event</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>Brut.container reloaded</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
337
341
  <span class='op'>::</span><span class='const'>I18n</span><span class='period'>.</span><span class='id identifier rubyid_reload!'>reload!</span>
338
342
  <span class='id identifier rubyid_span'>span</span><span class='period'>.</span><span class='id identifier rubyid_add_event'>add_event</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>I18n reloaded</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
339
343
  <span class='kw'>rescue</span> <span class='op'>=&gt;</span> <span class='id identifier rubyid_ex'>ex</span>
@@ -362,7 +366,7 @@
362
366
  </div>
363
367
 
364
368
  <div id="footer">
365
- Generated on Wed Jun 25 22:57:21 2025 by
369
+ Generated on Fri Jul 4 21:27:28 2025 by
366
370
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
367
371
  0.9.37 (ruby-3.4.4).
368
372
  </div>
@@ -115,7 +115,7 @@
115
115
  </div>
116
116
 
117
117
  <div id="footer">
118
- Generated on Wed Jun 25 22:57:19 2025 by
118
+ Generated on Fri Jul 4 21:27:27 2025 by
119
119
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
120
120
  0.9.37 (ruby-3.4.4).
121
121
  </div>
@@ -763,7 +763,7 @@ inside.</p>
763
763
  </div>
764
764
 
765
765
  <div id="footer">
766
- Generated on Wed Jun 25 22:57:20 2025 by
766
+ Generated on Fri Jul 4 21:27:28 2025 by
767
767
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
768
768
  0.9.37 (ruby-3.4.4).
769
769
  </div>
@@ -787,7 +787,7 @@ next steps to take.</p>
787
787
  </div>
788
788
 
789
789
  <div id="footer">
790
- Generated on Wed Jun 25 22:57:20 2025 by
790
+ Generated on Fri Jul 4 21:27:28 2025 by
791
791
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
792
792
  0.9.37 (ruby-3.4.4).
793
793
  </div>
@@ -115,7 +115,7 @@
115
115
  </div>
116
116
 
117
117
  <div id="footer">
118
- Generated on Wed Jun 25 22:57:19 2025 by
118
+ Generated on Fri Jul 4 21:27:27 2025 by
119
119
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
120
120
  0.9.37 (ruby-3.4.4).
121
121
  </div>
@@ -1302,7 +1302,7 @@ not present in this <code>RequestContext</code>.</p>
1302
1302
  </div>
1303
1303
 
1304
1304
  <div id="footer">
1305
- Generated on Wed Jun 25 22:57:20 2025 by
1305
+ Generated on Fri Jul 4 21:27:28 2025 by
1306
1306
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1307
1307
  0.9.37 (ruby-3.4.4).
1308
1308
  </div>
@@ -414,7 +414,7 @@ determine what information is avaiable.</p>
414
414
  </div>
415
415
 
416
416
  <div id="footer">
417
- Generated on Wed Jun 25 22:57:20 2025 by
417
+ Generated on Fri Jul 4 21:27:28 2025 by
418
418
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
419
419
  0.9.37 (ruby-3.4.4).
420
420
  </div>
@@ -232,7 +232,7 @@
232
232
  </div>
233
233
 
234
234
  <div id="footer">
235
- Generated on Wed Jun 25 22:57:21 2025 by
235
+ Generated on Fri Jul 4 21:27:28 2025 by
236
236
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
237
237
  0.9.37 (ruby-3.4.4).
238
238
  </div>
@@ -239,7 +239,7 @@ by the temporary use of inline styles.</p>
239
239
  </div>
240
240
 
241
241
  <div id="footer">
242
- Generated on Wed Jun 25 22:57:21 2025 by
242
+ Generated on Fri Jul 4 21:27:29 2025 by
243
243
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
244
244
  0.9.37 (ruby-3.4.4).
245
245
  </div>
@@ -254,7 +254,7 @@ This is useful for existing apps where you want to migrate to a more secure poli
254
254
  </div>
255
255
 
256
256
  <div id="footer">
257
- Generated on Wed Jun 25 22:57:21 2025 by
257
+ Generated on Fri Jul 4 21:27:29 2025 by
258
258
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
259
259
  0.9.37 (ruby-3.4.4).
260
260
  </div>
@@ -251,7 +251,7 @@
251
251
  </div>
252
252
 
253
253
  <div id="footer">
254
- Generated on Wed Jun 25 22:57:21 2025 by
254
+ Generated on Fri Jul 4 21:27:29 2025 by
255
255
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
256
256
  0.9.37 (ruby-3.4.4).
257
257
  </div>
@@ -274,7 +274,7 @@ Ruby's <code>I18n</code> to use it. This will also store the value in the sessi
274
274
  </div>
275
275
 
276
276
  <div id="footer">
277
- Generated on Wed Jun 25 22:57:21 2025 by
277
+ Generated on Fri Jul 4 21:27:28 2025 by
278
278
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
279
279
  0.9.37 (ruby-3.4.4).
280
280
  </div>
@@ -242,7 +242,7 @@ and strings provided by Rack.</p>
242
242
  </div>
243
243
 
244
244
  <div id="footer">
245
- Generated on Wed Jun 25 22:57:21 2025 by
245
+ Generated on Fri Jul 4 21:27:29 2025 by
246
246
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
247
247
  0.9.37 (ruby-3.4.4).
248
248
  </div>
@@ -105,7 +105,7 @@
105
105
  </div>
106
106
 
107
107
  <div id="footer">
108
- Generated on Wed Jun 25 22:57:19 2025 by
108
+ Generated on Fri Jul 4 21:27:27 2025 by
109
109
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
110
110
  0.9.37 (ruby-3.4.4).
111
111
  </div>
@@ -217,7 +217,7 @@
217
217
  </div>
218
218
 
219
219
  <div id="footer">
220
- Generated on Wed Jun 25 22:57:20 2025 by
220
+ Generated on Fri Jul 4 21:27:28 2025 by
221
221
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
222
222
  0.9.37 (ruby-3.4.4).
223
223
  </div>
@@ -295,7 +295,7 @@
295
295
  </div>
296
296
 
297
297
  <div id="footer">
298
- Generated on Wed Jun 25 22:57:20 2025 by
298
+ Generated on Fri Jul 4 21:27:28 2025 by
299
299
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
300
300
  0.9.37 (ruby-3.4.4).
301
301
  </div>
@@ -314,7 +314,7 @@
314
314
  </div>
315
315
 
316
316
  <div id="footer">
317
- Generated on Wed Jun 25 22:57:20 2025 by
317
+ Generated on Fri Jul 4 21:27:28 2025 by
318
318
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
319
319
  0.9.37 (ruby-3.4.4).
320
320
  </div>
@@ -309,7 +309,7 @@
309
309
  </div>
310
310
 
311
311
  <div id="footer">
312
- Generated on Wed Jun 25 22:57:20 2025 by
312
+ Generated on Fri Jul 4 21:27:28 2025 by
313
313
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
314
314
  0.9.37 (ruby-3.4.4).
315
315
  </div>
@@ -305,7 +305,7 @@
305
305
  </div>
306
306
 
307
307
  <div id="footer">
308
- Generated on Wed Jun 25 22:57:20 2025 by
308
+ Generated on Fri Jul 4 21:27:28 2025 by
309
309
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
310
310
  0.9.37 (ruby-3.4.4).
311
311
  </div>
@@ -305,7 +305,7 @@
305
305
  </div>
306
306
 
307
307
  <div id="footer">
308
- Generated on Wed Jun 25 22:57:20 2025 by
308
+ Generated on Fri Jul 4 21:27:28 2025 by
309
309
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
310
310
  0.9.37 (ruby-3.4.4).
311
311
  </div>
@@ -317,7 +317,7 @@
317
317
  </div>
318
318
 
319
319
  <div id="footer">
320
- Generated on Wed Jun 25 22:57:20 2025 by
320
+ Generated on Fri Jul 4 21:27:28 2025 by
321
321
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
322
322
  0.9.37 (ruby-3.4.4).
323
323
  </div>
@@ -751,7 +751,7 @@
751
751
  </div>
752
752
 
753
753
  <div id="footer">
754
- Generated on Wed Jun 25 22:57:20 2025 by
754
+ Generated on Fri Jul 4 21:27:28 2025 by
755
755
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
756
756
  0.9.37 (ruby-3.4.4).
757
757
  </div>
@@ -917,7 +917,7 @@
917
917
  </div>
918
918
 
919
919
  <div id="footer">
920
- Generated on Wed Jun 25 22:57:20 2025 by
920
+ Generated on Fri Jul 4 21:27:28 2025 by
921
921
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
922
922
  0.9.37 (ruby-3.4.4).
923
923
  </div>
@@ -1185,7 +1185,7 @@ the following logic:</p>
1185
1185
  </div>
1186
1186
 
1187
1187
  <div id="footer">
1188
- Generated on Wed Jun 25 22:57:20 2025 by
1188
+ Generated on Fri Jul 4 21:27:28 2025 by
1189
1189
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
1190
1190
  0.9.37 (ruby-3.4.4).
1191
1191
  </div>
@@ -124,7 +124,7 @@ JavaScript and CSS, and processing form submissions. It contrasts to
124
124
  </div>
125
125
 
126
126
  <div id="footer">
127
- Generated on Wed Jun 25 22:57:19 2025 by
127
+ Generated on Fri Jul 4 21:27:27 2025 by
128
128
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
129
129
  0.9.37 (ruby-3.4.4).
130
130
  </div>
@@ -921,7 +921,7 @@ has pluralizations and no count: was given</p>
921
921
  </div>
922
922
 
923
923
  <div id="footer">
924
- Generated on Wed Jun 25 22:57:19 2025 by
924
+ Generated on Fri Jul 4 21:27:27 2025 by
925
925
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
926
926
  0.9.37 (ruby-3.4.4).
927
927
  </div>
@@ -292,7 +292,7 @@ their values are not necessarily HTML-escaped.</p>
292
292
  </div>
293
293
 
294
294
  <div id="footer">
295
- Generated on Wed Jun 25 22:57:19 2025 by
295
+ Generated on Fri Jul 4 21:27:27 2025 by
296
296
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
297
297
  0.9.37 (ruby-3.4.4).
298
298
  </div>
@@ -292,7 +292,7 @@ their values are not necessarily HTML-escaped.</p>
292
292
  </div>
293
293
 
294
294
  <div id="footer">
295
- Generated on Wed Jun 25 22:57:19 2025 by
295
+ Generated on Fri Jul 4 21:27:27 2025 by
296
296
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
297
297
  0.9.37 (ruby-3.4.4).
298
298
  </div>
@@ -286,7 +286,7 @@ this string in a Phlex view, you <em>must</em> call <code>#raw</code> and pass i
286
286
  </div>
287
287
 
288
288
  <div id="footer">
289
- Generated on Wed Jun 25 22:57:19 2025 by
289
+ Generated on Fri Jul 4 21:27:27 2025 by
290
290
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
291
291
  0.9.37 (ruby-3.4.4).
292
292
  </div>
@@ -306,7 +306,7 @@ to replace this with a known value later on.</p>
306
306
  </div>
307
307
 
308
308
  <div id="footer">
309
- Generated on Wed Jun 25 22:57:20 2025 by
309
+ Generated on Fri Jul 4 21:27:28 2025 by
310
310
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
311
311
  0.9.37 (ruby-3.4.4).
312
312
  </div>
@@ -920,7 +920,7 @@ In general, this returns true if the values came from the Accept-Language header
920
920
  </div>
921
921
 
922
922
  <div id="footer">
923
- Generated on Wed Jun 25 22:57:20 2025 by
923
+ Generated on Fri Jul 4 21:27:28 2025 by
924
924
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
925
925
  0.9.37 (ruby-3.4.4).
926
926
  </div>
@@ -117,7 +117,7 @@
117
117
  </div>
118
118
 
119
119
  <div id="footer">
120
- Generated on Wed Jun 25 22:57:19 2025 by
120
+ Generated on Fri Jul 4 21:27:27 2025 by
121
121
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
122
122
  0.9.37 (ruby-3.4.4).
123
123
  </div>
@@ -425,7 +425,7 @@ log spans in a more traditional log-style format.</p>
425
425
  </div>
426
426
 
427
427
  <div id="footer">
428
- Generated on Wed Jun 25 22:57:21 2025 by
428
+ Generated on Fri Jul 4 21:27:28 2025 by
429
429
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
430
430
  0.9.37 (ruby-3.4.4).
431
431
  </div>
@@ -276,7 +276,7 @@
276
276
  </div>
277
277
 
278
278
  <div id="footer">
279
- Generated on Wed Jun 25 22:57:21 2025 by
279
+ Generated on Fri Jul 4 21:27:28 2025 by
280
280
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
281
281
  0.9.37 (ruby-3.4.4).
282
282
  </div>
@@ -292,7 +292,7 @@ booleans, and converts the rest to strings via <code>to_s</code>.</p>
292
292
  </div>
293
293
 
294
294
  <div id="footer">
295
- Generated on Wed Jun 25 22:57:21 2025 by
295
+ Generated on Fri Jul 4 21:27:28 2025 by
296
296
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
297
297
  0.9.37 (ruby-3.4.4).
298
298
  </div>
@@ -854,7 +854,7 @@ the span so you can call further methods on it.</p>
854
854
  </div>
855
855
 
856
856
  <div id="footer">
857
- Generated on Wed Jun 25 22:57:21 2025 by
857
+ Generated on Fri Jul 4 21:27:28 2025 by
858
858
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
859
859
  0.9.37 (ruby-3.4.4).
860
860
  </div>
@@ -116,7 +116,7 @@ instrumentation by default.</p>
116
116
  </div>
117
117
 
118
118
  <div id="footer">
119
- Generated on Wed Jun 25 22:57:19 2025 by
119
+ Generated on Fri Jul 4 21:27:27 2025 by
120
120
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
121
121
  0.9.37 (ruby-3.4.4).
122
122
  </div>
@@ -522,7 +522,7 @@ require responding to GET even though they aren't rendering pages nor considered
522
522
  </div>
523
523
 
524
524
  <div id="footer">
525
- Generated on Wed Jun 25 22:57:19 2025 by
525
+ Generated on Fri Jul 4 21:27:27 2025 by
526
526
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
527
527
  0.9.37 (ruby-3.4.4).
528
528
  </div>
@@ -271,7 +271,7 @@
271
271
  </div>
272
272
 
273
273
  <div id="footer">
274
- Generated on Wed Jun 25 22:57:19 2025 by
274
+ Generated on Fri Jul 4 21:27:27 2025 by
275
275
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
276
276
  0.9.37 (ruby-3.4.4).
277
277
  </div>
@@ -373,7 +373,7 @@
373
373
  </div>
374
374
 
375
375
  <div id="footer">
376
- Generated on Wed Jun 25 22:57:19 2025 by
376
+ Generated on Fri Jul 4 21:27:27 2025 by
377
377
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
378
378
  0.9.37 (ruby-3.4.4).
379
379
  </div>
@@ -492,7 +492,7 @@ always generate HTML, again call <span class='object_link'><a href="#generate_an
492
492
  </div>
493
493
 
494
494
  <div id="footer">
495
- Generated on Wed Jun 25 22:57:19 2025 by
495
+ Generated on Fri Jul 4 21:27:27 2025 by
496
496
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
497
497
  0.9.37 (ruby-3.4.4).
498
498
  </div>
@@ -284,13 +284,13 @@ from the given bin dir</p>
284
284
  <pre class="lines">
285
285
 
286
286
 
287
- 12
288
- 13
289
- 14
290
- 15</pre>
287
+ 15
288
+ 16
289
+ 17
290
+ 18</pre>
291
291
  </td>
292
292
  <td>
293
- <pre class="code"><span class="info file"># File 'lib/brut/spec_support/e2e_test_server.rb', line 12</span>
293
+ <pre class="code"><span class="info file"># File 'lib/brut/spec_support/e2e_test_server.rb', line 15</span>
294
294
 
295
295
  <span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span><span class='lparen'>(</span><span class='label'>bin_dir:</span><span class='rparen'>)</span>
296
296
  <span class='ivar'>@bin_dir</span> <span class='op'>=</span> <span class='id identifier rubyid_bin_dir'>bin_dir</span>
@@ -323,12 +323,12 @@ from the given bin dir</p>
323
323
  <pre class="lines">
324
324
 
325
325
 
326
- 4
327
- 5
328
- 6</pre>
326
+ 7
327
+ 8
328
+ 9</pre>
329
329
  </td>
330
330
  <td>
331
- <pre class="code"><span class="info file"># File 'lib/brut/spec_support/e2e_test_server.rb', line 4</span>
331
+ <pre class="code"><span class="info file"># File 'lib/brut/spec_support/e2e_test_server.rb', line 7</span>
332
332
 
333
333
  <span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_instance'>instance</span>
334
334
  <span class='ivar'>@instance</span> <span class='op'>||=</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='label'>bin_dir:</span> <span class='const'><span class='object_link'><a href="../../Brut.html" title="Brut (module)">Brut</a></span></span><span class='period'>.</span><span class='id identifier rubyid_container'><span class='object_link'><a href="../../Brut.html#container-class_method" title="Brut.container (method)">container</a></span></span><span class='period'>.</span><span class='id identifier rubyid_project_root'>project_root</span> <span class='op'>/</span> <span class='tstring'><span class='tstring_beg'>&quot;</span><span class='tstring_content'>bin</span><span class='tstring_end'>&quot;</span></span><span class='rparen'>)</span>
@@ -369,9 +369,6 @@ from the given bin dir</p>
369
369
  <pre class="lines">
370
370
 
371
371
 
372
- 18
373
- 19
374
- 20
375
372
  21
376
373
  22
377
374
  23
@@ -389,10 +386,13 @@ from the given bin dir</p>
389
386
  35
390
387
  36
391
388
  37
392
- 38</pre>
389
+ 38
390
+ 39
391
+ 40
392
+ 41</pre>
393
393
  </td>
394
394
  <td>
395
- <pre class="code"><span class="info file"># File 'lib/brut/spec_support/e2e_test_server.rb', line 18</span>
395
+ <pre class="code"><span class="info file"># File 'lib/brut/spec_support/e2e_test_server.rb', line 21</span>
396
396
 
397
397
  <span class='kw'>def</span> <span class='id identifier rubyid_start'>start</span>
398
398
  <span class='kw'>if</span> <span class='op'>!</span><span class='ivar'>@pid</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
@@ -445,9 +445,6 @@ from the given bin dir</p>
445
445
  <pre class="lines">
446
446
 
447
447
 
448
- 41
449
- 42
450
- 43
451
448
  44
452
449
  45
453
450
  46
@@ -461,10 +458,13 @@ from the given bin dir</p>
461
458
  54
462
459
  55
463
460
  56
464
- 57</pre>
461
+ 57
462
+ 58
463
+ 59
464
+ 60</pre>
465
465
  </td>
466
466
  <td>
467
- <pre class="code"><span class="info file"># File 'lib/brut/spec_support/e2e_test_server.rb', line 41</span>
467
+ <pre class="code"><span class="info file"># File 'lib/brut/spec_support/e2e_test_server.rb', line 44</span>
468
468
 
469
469
  <span class='kw'>def</span> <span class='id identifier rubyid_stop'>stop</span>
470
470
  <span class='kw'>if</span> <span class='ivar'>@pid</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
@@ -493,7 +493,7 @@ from the given bin dir</p>
493
493
  </div>
494
494
 
495
495
  <div id="footer">
496
- Generated on Wed Jun 25 22:57:20 2025 by
496
+ Generated on Fri Jul 4 21:27:28 2025 by
497
497
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
498
498
  0.9.37 (ruby-3.4.4).
499
499
  </div>
@@ -132,7 +132,7 @@
132
132
  </div>
133
133
 
134
134
  <div id="footer">
135
- Generated on Wed Jun 25 22:57:19 2025 by
135
+ Generated on Fri Jul 4 21:27:27 2025 by
136
136
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
137
137
  0.9.37 (ruby-3.4.4).
138
138
  </div>
@@ -393,7 +393,7 @@ matching nodes, the test fails.</p>
393
393
  </div>
394
394
 
395
395
  <div id="footer">
396
- Generated on Wed Jun 25 22:57:20 2025 by
396
+ Generated on Fri Jul 4 21:27:28 2025 by
397
397
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
398
398
  0.9.37 (ruby-3.4.4).
399
399
  </div>
@@ -268,7 +268,7 @@
268
268
  </div>
269
269
 
270
270
  <div id="footer">
271
- Generated on Wed Jun 25 22:57:19 2025 by
271
+ Generated on Fri Jul 4 21:27:27 2025 by
272
272
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
273
273
  0.9.37 (ruby-3.4.4).
274
274
  </div>
@@ -391,7 +391,7 @@ string, <code>Date.parse</code> is used to convert it to a <code>Time</code>.</p
391
391
  </div>
392
392
 
393
393
  <div id="footer">
394
- Generated on Wed Jun 25 22:57:19 2025 by
394
+ Generated on Fri Jul 4 21:27:27 2025 by
395
395
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
396
396
  0.9.37 (ruby-3.4.4).
397
397
  </div>
@@ -185,7 +185,7 @@
185
185
  </div>
186
186
 
187
187
  <div id="footer">
188
- Generated on Wed Jun 25 22:57:19 2025 by
188
+ Generated on Fri Jul 4 21:27:27 2025 by
189
189
  <a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
190
190
  0.9.37 (ruby-3.4.4).
191
191
  </div>