You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@grails.apache.org by bo...@apache.org on 2026/10/21 11:01:51 UTC
(grails-core) branch fix/hibernate7-many-to-many-without-owner-8.0.x updated (337f3165ad -> 3c44a009c7)
This is an automated email from the ASF dual-hosted git repository.
borinquenkid pushed a change to branch fix/hibernate7-many-to-many-without-owner-8.0.x
in repository https://gitbox.apache.org/repos/asf/grails-core.git
from 337f3165ad docs(hibernate7): say when the circular join tables hold rows, and place the Map note after the warning
add d3a41b38ec test: cover the default native id generator on every database RLikeHibernate7Spec covers
add ce72ecc848 fix: create the sequences of the default native id generator on sequence-based databases
add e43c8d2635 test: expect the generated sequence default for a native id on PostgreSQL
add 5af9ef654f Merge 8.0.x into fix/hibernate7-native-id-generator-sequences-8.0.x
add 8400b27b03 docs(upgrade): document the per-table sequences of the default id mapping on Hibernate 7
add 122c3daa7c Merge pull request #16582 from apache/fix/hibernate7-native-id-generator-sequences-8.0.x
add 411501ddb7 Add unit tests for Grails CLI command helpers.
add 1da0239a00 Address review feedback on the CLI command helper specs
add 98091dc870 Merge pull request #16643 from apache/test/shell-cli-coverage-7.0.x
add 5daa297b9e Add unit tests for Gradle model IO helpers.
add 186b59c45d Tighten the Gradle model IO helper specs
add caa0815630 Merge pull request #16642 from apache/test/gradle-model-io-7.0.x
add 23d3d4be7a Add unit tests for AntPathMatcher and ByteArrayResource.
add 3c2fced307 Tighten the AntPathMatcher and ByteArrayResource specs
add 1eda77cac5 Merge pull request #16639 from apache/test/bootstrap-antpath-7.0.x
add 45828c7c7f Add unit tests for Grails layout capture and response buffering.
add 9f8c9b899c Tighten the grails-layout capture and buffering specs
add b5fe338956 Merge pull request #16640 from apache/test/gsp-layout-coverage-7.0.x
add b8752338ef Add unit tests for web request helpers and XML writers.
add d992cfeed4 Tighten the web util and XML writer specs
add 9833d23d8b Merge pull request #16637 from apache/test/web-util-coverage-7.0.x
add e155137772 Add unit tests for the Grails JSON writers.
add 60b6b39d45 Stop the JSON writer specs pinning two misreports
add 1886349ed1 Merge pull request #16636 from apache/test/json-writers-7.0.x
add 584d7329a5 Add unit tests for Atom and HAL XML renderers.
add 49090ba585 Tighten the Atom and HAL XML renderer specs
add 9e0e8b4069 Merge pull request #16641 from apache/test/rest-renderers-7.0.x
add 0c78d805f5 Add unit tests for composite config and small core utilities.
add 452d42d942 Tighten the core config and utility specs
add 8d707a2ff2 Merge pull request #16638 from apache/test/core-config-coverage-7.0.x
add b28f38e827 Merge branch '7.0.x' into 7.1.x
add fe958347a7 Merge branch '7.1.x' into 7.2.x
add 849bc57401 Merge branch '7.2.x' into 8.0.x
add 28c013a1bb Adapt the merged layout and template specs to the 8.0.x behaviour
add 08082792ef fix(forge): keep the Grails Data plugin off the generated buildscript classpath (#16575)
add b1012aaca5 Implemented the fix for #16632.
add f89943293e Add a functional test for requests without an Authentication (#16632)
add a2f8c0ab59 Merge pull request #16654 from ruthst00/fix/16632-unauthenticated-request
add 41cea2f0a4 fix: create proxies for Groovy entities whose trait declares default values
add 776c6d948c fix: keep HibernateProxy visible on the Groovy proxy wrapper and fail fast in postInstantiate
add 72c44111e5 test: exercise the built proxy and the lazy association for trait default values
add 49fa7e809e test: cover the shared ByteBuddyState wiring in GrailsBytecodeProviderSpec
add 87a3f936e5 fix: reuse the Groovy proxy wrapper per entity and class loader on Hibernate 5
add 0e9dc2cbae fix: deserialize Groovy-aware proxies through the Grails proxy factory
add c4803120b2 test: cover trait default values and proxy serialization in the groovy-proxy apps
add c032daca86 test: load the deserialized book in the groovy-proxy apps and drop an inert proxy setting
add 38216edf7b Merge pull request #16625 from MartinJesusDev/fix/16600-trait-default-values-8.0.x
add 9ce99cde3f Return the page's property keys from the layout Content adapter
add c471280c53 Combine patterns and extract template variables as AntPathMatcher documents
add 81e4dc8373 Test File values for null instead of truth in the file system interaction
add 18d8daf59e Return the relative path of a spring script from getPathFromRoot
add e77e3cd9cc Report a misplaced endObject as such and let JSONTokener.next(n) read to the end
add bd674957eb Resolve every CompositeConfig view from the config that has the key
add 3b960eda28 Merge branch '7.0.x' into 7.1.x
add bd36ccad7a Merge branch '7.1.x' into 7.2.x
add caa413f5cb Merge branch '7.2.x' into 8.0.x
add b5377ab02c Spell getCurrentStackReference correctly on the path capturing JSON writer
add d534bf797f Merge branch '7.0.x' into 7.1.x
add d3dd89787d Merge branch '7.1.x' into 7.2.x
add ba72113c99 Merge branch '7.2.x' into 8.0.x
add 9089c2803c test: expect the platform's separator from projectPath in the file system interaction specs
add 10cf675644 test: wait for the stopped process to exit in RunningApplicationProcessSpec
add ff463ccb57 Merge pull request #16664 from codeconsole/fix/windows-project-path-spec-7.2.x
add 50441a601c Merge branch '7.2.x' into 8.0.x
add 38d5ae52ad test: expect the platform's separator from projectPath in the test-cli file system interaction spec
add 5237ae66dc Merge pull request #16666 from codeconsole/merge/7.2.x-into-8.0.x
add 72cac1bb3d [skip tests] test: expect the platform's separator from projectPath in the file system interaction specs
add 4a8aa7ad51 [skip tests] Merge branch '7.0.x' into 7.1.x
add d5e2bf45ff [skip tests] Merge branch '7.1.x' into 7.2.x
add 47bb598a35 [skip tests] Merge branch '7.2.x' into 8.0.x
add 0cf1b9cb23 [skip tests] test: wait for the stopped process to exit in RunningApplicationProcessSpec
add c18a30fe04 [skip tests] Merge branch '7.0.x' into 7.1.x
add 467edf203c [skip tests] Merge branch '7.1.x' into 7.2.x
add bd0c1394ce [skip tests] Merge branch '7.2.x' into 8.0.x
add 04f110a9df build: report a module's cli source set to JaCoCo so Codecov sees command code
add 31f8b999e6 Resolve the cli source set's directories lazily in the JaCoCo aggregate
add e70fd9f50a Merge pull request #16689 from apache/build/jacoco-cli-source-set
add ef9fec7929 [skip tests] ci: run the MongoDB functional tests on ubuntu-22.04 until the runner kernel stops tripping MongoDB 8.0's startup guard
add 87d564de74 [skip tests] Merge branch '7.0.x' into 7.1.x
add a1a105b5c2 [skip tests] Merge branch '7.1.x' into 7.2.x
add 9d5a9662b1 [skip tests] Merge branch '7.2.x' into 8.0.x
add 3c44a009c7 Merge remote-tracking branch 'origin/8.0.x' into fix/hibernate7-many-to-many-without-owner-8.0.x
No new revisions were added by this update.
Summary of changes:
.github/workflows/gradle.yml | 8 +-
.../grails/buildsrc/GrailsJacocoPlugin.groovy | 20 +-
.../grails/buildsrc/GrailsJacocoPluginSpec.groovy | 49 +++
.../org/grails/io/support/AntPathMatcher.java | 36 ++-
.../grails/io/support/AntPathMatcherSpec.groovy | 347 +++++++++++++++++++++
.../grails/io/support/ByteArrayResourceSpec.groovy | 97 ++++++
.../commands/io/FileSystemInteractionImpl.groovy | 9 +-
.../io/FileSystemInteractionImplSpec.groovy | 75 +++++
.../core/cli/io/FileSystemInteractionImpl.groovy | 9 +-
.../groovy/org/grails/config/CompositeConfig.java | 59 ++--
.../cli/io/FileSystemInteractionImplSpec.groovy | 75 +++++
.../beans/util/LazyMetaPropertyMapSpec.groovy | 138 ++++++++
.../groovy/grails/util/GrailsClassUtilsSpec.groovy | 192 ++++++++++++
.../org/grails/config/CompositeConfigSpec.groovy | 220 +++++++++++++
.../org/grails/config/PrefixedConfigSpec.groovy | 141 +++++++++
.../org/grails/core/util/StopWatchSpec.groovy | 150 +++++++++
grails-data-hibernate5/core/build.gradle | 4 +
.../proxy/ByteBuddyGroovyInterceptor.java | 23 ++
.../proxy/ByteBuddyGroovyProxyFactory.java | 30 +-
.../hibernate/proxy/GroovyProxyClassBuilder.java | 115 +++++++
.../proxy/GroovyProxyMetaClassDispatcher.java | 57 ++++
.../hibernate/proxy/SerializableGroovyProxy.java | 126 ++++++++
.../TraitInitializerProxySpec.groovy | 232 ++++++++++++++
.../proxy/ByteBuddyGroovyProxyFactorySpec.groovy | 175 +++++++++++
.../proxy/GroovyProxyClassBuilderSpec.groovy | 109 +++++++
.../GroovyProxyMetaClassDispatcherSpec.groovy | 36 +--
.../proxy/SerializableGroovyProxySpec.groovy | 111 +++++++
.../generator/GrailsNativeGenerator.java | 64 ++--
.../generator/GrailsSequenceGeneratorEnum.groovy | 4 +-
.../proxy/ByteBuddyGroovyInterceptor.java | 24 ++
.../proxy/ByteBuddyGroovyProxyFactory.java | 44 ++-
.../hibernate/proxy/GrailsBytecodeProvider.java | 10 +-
.../hibernate/proxy/GrailsProxyFactoryFactory.java | 2 +-
.../hibernate/proxy/GroovyProxyClassBuilder.java | 93 ++++++
.../proxy/GroovyProxyMetaClassDispatcher.java | 56 ++++
.../hibernate/proxy/SerializableGroovyProxy.java | 146 +++++++++
.../tests/NativeIdGeneratorHibernate7Spec.groovy | 135 ++++++++
.../TraitInitializerProxySpec.groovy | 232 ++++++++++++++
.../domainbinding/GrailsNativeGeneratorSpec.groovy | 137 ++++----
.../GrailsSequenceGeneratorEnumSpec.groovy | 8 +-
.../proxy/ByteBuddyGroovyInterceptorSpec.groovy | 28 ++
.../proxy/ByteBuddyGroovyProxyFactorySpec.groovy | 152 +++++++--
.../proxy/GrailsBytecodeProviderSpec.groovy | 47 +++
.../proxy/GroovyProxyClassBuilderSpec.groovy | 107 +++++++
.../GroovyProxyMetaClassDispatcherSpec.groovy} | 36 +--
.../proxy/SerializableGroovyProxySpec.groovy | 112 +++++++
.../GormIdentifierSnapshot16497Spec.groovy | 6 +-
grails-doc/src/en/guide/introduction/whatsNew.adoc | 3 +
.../springSecurity/core/filters.adoc | 2 +
.../src/en/guide/upgrading/upgrading80x.adoc | 79 ++++-
.../feature/database/GrailsDataHibernate5.java | 7 +-
.../feature/database/GrailsDataHibernate7.java | 7 +-
.../database/GrailsDataHibernate5Spec.groovy | 12 +-
.../database/GrailsDataHibernate7Spec.groovy | 10 +-
.../org/grails/io/support/GrailsResourceUtils.java | 4 +-
.../grails/io/support/ClassPathResourceSpec.groovy | 141 +++++++++
.../io/support/FileSystemResourceSpec.groovy | 137 ++++++++
.../io/support/GrailsResourceUtilsSpec.groovy | 262 ++++++++++++++++
.../grails/io/support/MainClassFinderSpec.groovy | 171 +++++++++-
.../org/grails/io/support/UrlResourceSpec.groovy | 136 ++++++++
.../web/layout/TokenizedHTMLPage2Content.java | 2 +-
.../web/layout/GSPGrailsLayoutPageSpec.groovy | 155 +++++++++
.../web/layout/GrailsHTMLPageParserSpec.groovy | 82 +++++
.../web/layout/GrailsLayoutTagLibSpec.groovy | 112 +++++++
.../layout/GrailsPageResponseWrapperSpec.groovy | 223 +++++++++++++
.../layout/GrailsViewBufferingResponseSpec.groovy | 165 ++++++++++
.../grails/web/layout/LayoutDecoratorSpec.groovy | 125 ++++++++
.../web/layout/RenderGrailsLayoutTagLibSpec.groovy | 102 ++++++
.../web/rest/render/atom/AtomRendererSpec.groovy | 261 ++++++++++++++++
.../web/rest/render/hal/HalXmlRendererSpec.groovy | 290 +++++++++++++++++
grails-shell-cli/build.gradle | 2 +
.../commands/io/FileSystemInteractionImpl.groovy | 9 +-
.../grails/cli/command/CommandExceptionSpec.groovy | 73 +++++
.../grails/cli/command/CommandRunnerSpec.groovy | 269 ++++++++++++++++
.../org/grails/cli/command/HelpExampleSpec.groovy | 23 +-
.../cli/command/OptionParsingCommandSpec.groovy | 84 +++++
.../io/FileSystemInteractionImplSpec.groovy | 151 +++++++++
.../templates/TemplateRendererImplSpec.groovy | 151 +++++++++
.../intercept/FilterSecurityInterceptor.groovy | 4 +
.../intercept/FilterSecurityInterceptorSpec.groovy | 141 ++++++++-
.../grails-hibernate-groovy-proxy/build.gradle | 1 +
.../grails-app/conf/application.yml | 4 +
.../grails-app/domain/example}/Book.groovy | 11 +-
.../grails-app/domain/example/Loan.groovy} | 13 +-
.../example/TraitDefaultValuesProxySpec.groovy | 189 +++++++++++
.../src/main/groovy/example/Auditable.groovy} | 14 +-
.../grails-hibernate-groovy-proxy/build.gradle | 1 +
.../grails-app/conf/application.yml | 5 +-
.../grails-app/domain/example}/Book.groovy | 11 +-
.../grails-app/domain/example/Loan.groovy} | 13 +-
.../example/TraitDefaultValuesProxySpec.groovy | 189 +++++++++++
.../src/main/groovy/example/Auditable.groovy} | 14 +-
.../grails-app/conf/application.groovy | 13 +
.../groovy/specs/NoAnonymousFilterSpec.groovy | 105 +++++++
.../groovy/org/grails/web/json/JSONTokener.java | 2 +-
.../groovy/org/grails/web/json/JSONWriter.java | 3 +-
.../web/json/PathCapturingJSONWriterWrapper.java | 40 ++-
.../org/grails/web/json/PrettyPrintJSONWriter.java | 6 +-
.../org/grails/web/json/JSONArrayApiSpec.groovy | 322 +++++++++++++++++++
.../org/grails/web/json/JSONObjectApiSpec.groovy | 345 ++++++++++++++++++++
.../org/grails/web/json/JSONTokenerApiSpec.groovy | 245 +++++++++++++++
.../org/grails/web/json/JSONWriterApiSpec.groovy | 169 ++++++++++
.../PathCapturingJSONWriterWrapperApiSpec.groovy | 164 ++++++++++
.../web/json/PrettyPrintJSONWriterApiSpec.groovy | 124 ++++++++
.../BoundedCharsAsEncodedBytesCounterSpec.groovy | 167 ++++++++++
.../web/util/IncludeResponseWrapperSpec.groovy | 181 +++++++++++
.../org/grails/web/util/IncludedContentSpec.groovy | 88 ++++++
.../groovy/org/grails/web/util/WebUtilsSpec.groovy | 269 +++++++++++++++-
.../web/xml/PrettyPrintXMLStreamWriterSpec.groovy | 112 +++++++
.../web/xml/StreamingMarkupWriterSpec.groovy | 76 +++++
110 files changed, 10016 insertions(+), 361 deletions(-)
create mode 100644 grails-bootstrap/src/test/groovy/org/grails/io/support/AntPathMatcherSpec.groovy
create mode 100644 grails-bootstrap/src/test/groovy/org/grails/io/support/ByteArrayResourceSpec.groovy
create mode 100644 grails-core-cli-legacy/src/test/groovy/grails/dev/commands/io/FileSystemInteractionImplSpec.groovy
create mode 100644 grails-core/src/test-cli/groovy/org/apache/grails/core/cli/io/FileSystemInteractionImplSpec.groovy
create mode 100644 grails-core/src/test/groovy/grails/beans/util/LazyMetaPropertyMapSpec.groovy
create mode 100644 grails-core/src/test/groovy/grails/util/GrailsClassUtilsSpec.groovy
create mode 100644 grails-core/src/test/groovy/org/grails/config/CompositeConfigSpec.groovy
create mode 100644 grails-core/src/test/groovy/org/grails/config/PrefixedConfigSpec.groovy
create mode 100644 grails-core/src/test/groovy/org/grails/core/util/StopWatchSpec.groovy
create mode 100644 grails-data-hibernate5/core/src/main/groovy/org/grails/orm/hibernate/proxy/GroovyProxyClassBuilder.java
create mode 100644 grails-data-hibernate5/core/src/main/groovy/org/grails/orm/hibernate/proxy/GroovyProxyMetaClassDispatcher.java
create mode 100644 grails-data-hibernate5/core/src/main/groovy/org/grails/orm/hibernate/proxy/SerializableGroovyProxy.java
create mode 100644 grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/proxy/traitinitializer/TraitInitializerProxySpec.groovy
create mode 100644 grails-data-hibernate5/core/src/test/groovy/org/grails/orm/hibernate/proxy/ByteBuddyGroovyProxyFactorySpec.groovy
create mode 100644 grails-data-hibernate5/core/src/test/groovy/org/grails/orm/hibernate/proxy/GroovyProxyClassBuilderSpec.groovy
copy grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/cfg/JoinTableSpec.groovy => grails-data-hibernate5/core/src/test/groovy/org/grails/orm/hibernate/proxy/GroovyProxyMetaClassDispatcherSpec.groovy (52%)
create mode 100644 grails-data-hibernate5/core/src/test/groovy/org/grails/orm/hibernate/proxy/SerializableGroovyProxySpec.groovy
create mode 100644 grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/proxy/GroovyProxyClassBuilder.java
create mode 100644 grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/proxy/GroovyProxyMetaClassDispatcher.java
create mode 100644 grails-data-hibernate7/core/src/main/groovy/org/grails/orm/hibernate/proxy/SerializableGroovyProxy.java
create mode 100644 grails-data-hibernate7/core/src/test/groovy/grails/gorm/tests/NativeIdGeneratorHibernate7Spec.groovy
create mode 100644 grails-data-hibernate7/core/src/test/groovy/grails/gorm/tests/proxy/traitinitializer/TraitInitializerProxySpec.groovy
create mode 100644 grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/proxy/GroovyProxyClassBuilderSpec.groovy
copy grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/{cfg/JoinTableSpec.groovy => proxy/GroovyProxyMetaClassDispatcherSpec.groovy} (52%)
create mode 100644 grails-data-hibernate7/core/src/test/groovy/org/grails/orm/hibernate/proxy/SerializableGroovyProxySpec.groovy
create mode 100644 grails-gradle/model/src/test/groovy/org/grails/io/support/ClassPathResourceSpec.groovy
create mode 100644 grails-gradle/model/src/test/groovy/org/grails/io/support/FileSystemResourceSpec.groovy
create mode 100644 grails-gradle/model/src/test/groovy/org/grails/io/support/GrailsResourceUtilsSpec.groovy
create mode 100644 grails-gradle/model/src/test/groovy/org/grails/io/support/UrlResourceSpec.groovy
create mode 100644 grails-gsp/grails-layout/src/test/groovy/org/apache/grails/web/layout/GSPGrailsLayoutPageSpec.groovy
create mode 100644 grails-gsp/grails-layout/src/test/groovy/org/apache/grails/web/layout/GrailsHTMLPageParserSpec.groovy
create mode 100644 grails-gsp/grails-layout/src/test/groovy/org/apache/grails/web/layout/GrailsLayoutTagLibSpec.groovy
create mode 100644 grails-gsp/grails-layout/src/test/groovy/org/apache/grails/web/layout/GrailsPageResponseWrapperSpec.groovy
create mode 100644 grails-gsp/grails-layout/src/test/groovy/org/apache/grails/web/layout/GrailsViewBufferingResponseSpec.groovy
create mode 100644 grails-gsp/grails-layout/src/test/groovy/org/apache/grails/web/layout/LayoutDecoratorSpec.groovy
create mode 100644 grails-gsp/grails-layout/src/test/groovy/org/apache/grails/web/layout/RenderGrailsLayoutTagLibSpec.groovy
create mode 100644 grails-rest-transforms/src/test/groovy/org/grails/plugins/web/rest/render/atom/AtomRendererSpec.groovy
create mode 100644 grails-rest-transforms/src/test/groovy/org/grails/plugins/web/rest/render/hal/HalXmlRendererSpec.groovy
create mode 100644 grails-shell-cli/src/test/groovy/org/grails/cli/command/CommandExceptionSpec.groovy
create mode 100644 grails-shell-cli/src/test/groovy/org/grails/cli/command/CommandRunnerSpec.groovy
copy grails-test-examples/app1/src/integration-test/groovy/functionaltests/InjectingDataSourceServiceSpec.groovy => grails-shell-cli/src/test/groovy/org/grails/cli/command/HelpExampleSpec.groovy (63%)
create mode 100644 grails-shell-cli/src/test/groovy/org/grails/cli/command/OptionParsingCommandSpec.groovy
create mode 100644 grails-shell-cli/src/test/groovy/org/grails/cli/profile/commands/io/FileSystemInteractionImplSpec.groovy
create mode 100644 grails-shell-cli/src/test/groovy/org/grails/cli/profile/commands/templates/TemplateRendererImplSpec.groovy
copy grails-test-examples/{async-events-pubsub-demo/grails-app/domain/pubsub/demo => hibernate5/grails-hibernate-groovy-proxy/grails-app/domain/example}/Book.groovy (82%)
copy grails-test-examples/{hibernate7/async-events-pubsub-demo/grails-app/domain/pubsub/demo/Author.groovy => hibernate5/grails-hibernate-groovy-proxy/grails-app/domain/example/Loan.groovy} (80%)
create mode 100644 grails-test-examples/hibernate5/grails-hibernate-groovy-proxy/src/integration-test/groovy/example/TraitDefaultValuesProxySpec.groovy
copy grails-test-examples/{mongodb/springboot/src/main/groovy/example/Book.groovy => hibernate5/grails-hibernate-groovy-proxy/src/main/groovy/example/Auditable.groovy} (74%)
copy grails-test-examples/{async-events-pubsub-demo/grails-app/domain/pubsub/demo => hibernate7/grails-hibernate-groovy-proxy/grails-app/domain/example}/Book.groovy (82%)
copy grails-test-examples/hibernate7/{async-events-pubsub-demo/grails-app/domain/pubsub/demo/Author.groovy => grails-hibernate-groovy-proxy/grails-app/domain/example/Loan.groovy} (80%)
create mode 100644 grails-test-examples/hibernate7/grails-hibernate-groovy-proxy/src/integration-test/groovy/example/TraitDefaultValuesProxySpec.groovy
copy grails-test-examples/{mongodb/springboot/src/main/groovy/example/Book.groovy => hibernate7/grails-hibernate-groovy-proxy/src/main/groovy/example/Auditable.groovy} (74%)
create mode 100644 grails-test-examples/spring-security/core/functional-test-app/src/integration-test/groovy/specs/NoAnonymousFilterSpec.groovy
create mode 100644 grails-web-common/src/test/groovy/org/grails/web/json/JSONArrayApiSpec.groovy
create mode 100644 grails-web-common/src/test/groovy/org/grails/web/json/JSONObjectApiSpec.groovy
create mode 100644 grails-web-common/src/test/groovy/org/grails/web/json/JSONTokenerApiSpec.groovy
create mode 100644 grails-web-common/src/test/groovy/org/grails/web/json/JSONWriterApiSpec.groovy
create mode 100644 grails-web-common/src/test/groovy/org/grails/web/json/PathCapturingJSONWriterWrapperApiSpec.groovy
create mode 100644 grails-web-common/src/test/groovy/org/grails/web/json/PrettyPrintJSONWriterApiSpec.groovy
create mode 100644 grails-web-common/src/test/groovy/org/grails/web/util/BoundedCharsAsEncodedBytesCounterSpec.groovy
create mode 100644 grails-web-common/src/test/groovy/org/grails/web/util/IncludeResponseWrapperSpec.groovy
create mode 100644 grails-web-common/src/test/groovy/org/grails/web/util/IncludedContentSpec.groovy
create mode 100644 grails-web-common/src/test/groovy/org/grails/web/xml/PrettyPrintXMLStreamWriterSpec.groovy
create mode 100644 grails-web-common/src/test/groovy/org/grails/web/xml/StreamingMarkupWriterSpec.groovy