├── .buildscript
├── prepare_mkdocs.sh
└── restore_v2_docs.sh
├── .editorconfig
├── .github
├── renovate.json5
└── workflows
│ ├── .java-version
│ ├── build.yml
│ ├── gradle-wrapper.yaml
│ └── release.yml
├── .gitignore
├── BUG-BOUNTY.md
├── CHANGELOG.md
├── CONTRIBUTING.md
├── LICENSE.txt
├── Package.swift
├── README.md
├── RELEASING.md
├── Wire.podspec
├── WireCompiler.podspec
├── build-support
├── build.gradle.kts
├── settings.gradle.kts
├── settings
│ ├── README.md
│ ├── build.gradle.kts
│ ├── settings.gradle.kts
│ └── src
│ │ └── main
│ │ └── kotlin
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ └── buildsettings
│ │ └── WireSettingsPlugin.kt
└── src
│ └── main
│ └── kotlin
│ └── com
│ └── squareup
│ └── wire
│ └── buildsupport
│ ├── WireBuildExtension.kt
│ └── WireBuildPlugin.kt
├── build.gradle.kts
├── docs
├── code_of_conduct.md
├── css
│ └── app.css
├── images
│ ├── gradle_basic@2x.png
│ ├── gradle_inputs_and_outputs@2x.png
│ ├── gradle_library@2x.png
│ ├── gradle_pruning@2x.png
│ ├── icon-square.png
│ └── logo-square.png
├── index.md
├── security.md
├── wire_compiler.md
├── wire_grpc.md
├── wire_json.md
└── wire_vs_protoc.md
├── gen-tests.gradle.kts
├── gradle.properties
├── gradle
├── libs.versions.toml
├── license-header.txt
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
├── kotlin-js-store
└── yarn.lock
├── mkdocs.yml
├── samples
├── android-app-java-sample
│ ├── build.gradle.kts
│ └── src
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ └── android
│ │ │ └── app
│ │ │ └── java
│ │ │ └── MainActivity.java
│ │ ├── proto
│ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ └── android
│ │ │ └── app
│ │ │ └── java
│ │ │ └── text.proto
│ │ └── res
│ │ ├── drawable-v24
│ │ └── ic_launcher_foreground.xml
│ │ ├── drawable
│ │ ├── border_gb.xml
│ │ └── ic_launcher_background.xml
│ │ ├── layout
│ │ └── activity_main.xml
│ │ ├── mipmap-anydpi-v26
│ │ ├── ic_launcher.xml
│ │ └── ic_launcher_round.xml
│ │ ├── mipmap-hdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-mdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xxhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xxxhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ └── values
│ │ ├── colors.xml
│ │ ├── strings.xml
│ │ └── styles.xml
├── android-app-kotlin-minsdk-sample
│ ├── build.gradle.kts
│ └── src
│ │ ├── androidTest
│ │ └── java
│ │ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ └── android
│ │ │ └── app
│ │ │ └── kotlin
│ │ │ └── minsdk
│ │ │ └── DeserializeTest.kt
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ └── android
│ │ │ └── app
│ │ │ └── kotlin
│ │ │ └── minsdk
│ │ │ └── MainActivity.kt
│ │ ├── proto
│ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ └── android
│ │ │ └── app
│ │ │ └── kotlin
│ │ │ └── text.proto
│ │ └── res
│ │ ├── drawable-v24
│ │ └── ic_launcher_foreground.xml
│ │ ├── drawable
│ │ ├── border_gb.xml
│ │ └── ic_launcher_background.xml
│ │ ├── layout
│ │ └── activity_main.xml
│ │ ├── mipmap-xxxhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ └── values
│ │ ├── colors.xml
│ │ ├── strings.xml
│ │ └── styles.xml
├── android-app-kotlin-sample
│ ├── build.gradle.kts
│ └── src
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ └── android
│ │ │ └── app
│ │ │ └── kotlin
│ │ │ └── MainActivity.kt
│ │ ├── proto
│ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ └── android
│ │ │ └── app
│ │ │ └── kotlin
│ │ │ └── text.proto
│ │ └── res
│ │ ├── drawable-v24
│ │ └── ic_launcher_foreground.xml
│ │ ├── drawable
│ │ ├── border_gb.xml
│ │ └── ic_launcher_background.xml
│ │ ├── layout
│ │ └── activity_main.xml
│ │ ├── mipmap-anydpi-v26
│ │ ├── ic_launcher.xml
│ │ └── ic_launcher_round.xml
│ │ ├── mipmap-hdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-mdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xxhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ ├── mipmap-xxxhdpi
│ │ ├── ic_launcher.png
│ │ └── ic_launcher_round.png
│ │ └── values
│ │ ├── colors.xml
│ │ ├── strings.xml
│ │ └── styles.xml
├── android-app-variants-sample
│ ├── build.gradle.kts
│ └── src
│ │ ├── debug
│ │ └── proto
│ │ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ └── android
│ │ │ └── app
│ │ │ └── variants
│ │ │ └── debug.proto
│ │ ├── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── squareup
│ │ │ │ └── wire
│ │ │ │ └── android
│ │ │ │ └── app
│ │ │ │ └── variants
│ │ │ │ └── MainActivity.kt
│ │ ├── proto
│ │ │ └── com
│ │ │ │ └── squareup
│ │ │ │ └── wire
│ │ │ │ └── android
│ │ │ │ └── app
│ │ │ │ └── variants
│ │ │ │ └── common.proto
│ │ └── res
│ │ │ ├── drawable-v24
│ │ │ └── ic_launcher_foreground.xml
│ │ │ ├── drawable
│ │ │ └── ic_launcher_background.xml
│ │ │ ├── layout
│ │ │ └── activity_main.xml
│ │ │ ├── mipmap-anydpi-v26
│ │ │ ├── ic_launcher.xml
│ │ │ └── ic_launcher_round.xml
│ │ │ ├── mipmap-hdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-mdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-xhdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── mipmap-xxxhdpi
│ │ │ ├── ic_launcher.png
│ │ │ └── ic_launcher_round.png
│ │ │ ├── values-night
│ │ │ └── themes.xml
│ │ │ └── values
│ │ │ ├── colors.xml
│ │ │ ├── strings.xml
│ │ │ └── themes.xml
│ │ ├── release
│ │ └── proto
│ │ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ └── android
│ │ │ └── app
│ │ │ └── variants
│ │ │ └── release.proto
│ │ ├── test
│ │ └── java
│ │ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ └── android
│ │ │ └── app
│ │ │ └── variants
│ │ │ └── CommonUnitTest.kt
│ │ ├── testDebug
│ │ └── java
│ │ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ └── android
│ │ │ └── app
│ │ │ └── variants
│ │ │ └── DebugUnitTest.kt
│ │ └── testRelease
│ │ └── java
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ └── android
│ │ └── app
│ │ └── variants
│ │ └── ReleaseUnitTest.kt
├── android-lib-java-sample
│ ├── build.gradle.kts
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ └── android
│ │ │ └── lib
│ │ │ └── java
│ │ │ └── SomeObject.java
│ │ └── proto
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ └── android
│ │ └── lib
│ │ └── java
│ │ └── text.proto
├── android-lib-kotlin-sample
│ ├── build.gradle.kts
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ └── android
│ │ │ └── lib
│ │ │ └── kotlin
│ │ │ └── SomeObject.kt
│ │ └── proto
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ └── android
│ │ └── lib
│ │ └── kotlin
│ │ └── text.proto
├── js
│ ├── build.gradle.kts
│ └── src
│ │ └── main
│ │ ├── kotlin
│ │ └── Main.kt
│ │ └── proto
│ │ └── human
│ │ └── person.proto
├── multi-target
│ ├── build.gradle.kts
│ └── src
│ │ └── commonMain
│ │ ├── kotlin
│ │ └── Main.kt
│ │ └── proto
│ │ └── human
│ │ └── person.proto
├── native
│ ├── build.gradle.kts
│ └── src
│ │ ├── commonMain
│ │ └── proto
│ │ │ └── human
│ │ │ └── person.proto
│ │ └── nativeMain
│ │ └── kotlin
│ │ └── Main.kt
├── simple-sample
│ ├── build.gradle.kts
│ ├── rules.txt
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── squareup
│ │ │ └── dinosaurs
│ │ │ └── Sample.java
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
├── wire-codegen-sample
│ ├── build.gradle.kts
│ └── src
│ │ ├── main
│ │ └── java
│ │ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ └── sample
│ │ │ └── ServiceGenerator.java
│ │ └── test
│ │ └── java
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ └── sample
│ │ └── ServiceGeneratorTest.kt
└── wire-grpc-sample
│ ├── README.md
│ ├── client
│ ├── build.gradle.kts
│ └── src
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ └── whiteboard
│ │ │ ├── GrpcClientProvider.kt
│ │ │ ├── MainActivity.kt
│ │ │ └── ui
│ │ │ ├── MainContentView.kt
│ │ │ └── WhiteboardView.kt
│ │ └── res
│ │ ├── drawable-v24
│ │ └── ic_launcher_foreground.xml
│ │ ├── drawable
│ │ └── ic_launcher_background.xml
│ │ ├── mipmap-anydpi-v26
│ │ ├── ic_launcher.xml
│ │ └── ic_launcher_round.xml
│ │ └── values
│ │ └── strings.xml
│ ├── protos
│ ├── build.gradle.kts
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ └── whiteboard
│ │ └── whiteboard.proto
│ └── server
│ ├── build.gradle.kts
│ └── src
│ └── main
│ ├── java
│ └── com
│ │ └── squareup
│ │ └── wire
│ │ └── whiteboard
│ │ ├── Grpc.kt
│ │ ├── MiskGrpcServer.kt
│ │ ├── WhiteboardConfig.kt
│ │ ├── WhiteboardGrpcAction.kt
│ │ └── WhiteboardGrpcModule.kt
│ └── resources
│ ├── ssl
│ ├── server_cert.pem
│ └── server_cert_key_combo.pem
│ └── whiteboard-common.yaml
├── settings.gradle.kts
├── wire-benchmarks
├── README.md
├── build.gradle.kts
└── src
│ ├── jmh
│ └── java
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ └── benchmarks
│ │ ├── AllTypesBenchmark.kt
│ │ └── SimpleMessageBenchmark.java
│ └── main
│ ├── kotlin
│ └── com
│ │ └── squareup
│ │ └── wire
│ │ └── benchmarks
│ │ └── SampleData.kt
│ ├── proto
│ └── squareup
│ │ └── wire
│ │ └── benchmarks
│ │ ├── EmailMessageProto.proto
│ │ ├── EmailSearchResponseProto.proto
│ │ ├── EmailThreadProto.proto
│ │ ├── NameAndAddressProto.proto
│ │ ├── all_types_proto2.proto
│ │ └── all_types_proto3.proto
│ └── resources
│ ├── all_types_proto2.json
│ ├── all_types_proto3.json
│ └── medium_value.bytes
├── wire-bom
└── build.gradle.kts
├── wire-compiler
├── api
│ └── wire-compiler.api
├── build.gradle.kts
└── src
│ ├── main
│ └── java
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ ├── ConsoleWireLogger.kt
│ │ ├── DryRunFileSystem.kt
│ │ ├── Manifest.kt
│ │ ├── WireCompiler.kt
│ │ ├── WireException.kt
│ │ └── schema
│ │ └── Target.kt
│ └── test
│ └── java
│ └── com
│ └── squareup
│ └── wire
│ ├── CommandLineOptionsTest.kt
│ ├── ManifestParseTest.kt
│ ├── StringWireLogger.kt
│ ├── WireCompilerErrorTest.kt
│ ├── WireCompilerTest.kt
│ └── schema
│ ├── CycleCheckerTest.kt
│ ├── LinkerTest.kt
│ ├── MarkdownHandler.kt
│ ├── OptionsLinkingTest.kt
│ └── WireRunTest.kt
├── wire-golden-files
├── README.md
├── build.gradle.kts
└── src
│ └── main
│ ├── kotlin
│ ├── Field.kt
│ ├── HundredsFields.kt
│ └── squareup
│ │ └── wire
│ │ ├── alltypes
│ │ └── AllTypes.kt
│ │ ├── boxedoneof
│ │ └── BoxedOneOfs.kt
│ │ ├── buildersonly
│ │ └── SomeMessage.kt
│ │ ├── mutable
│ │ ├── MutableHeader.kt
│ │ ├── MutablePacket.kt
│ │ └── MutablePayload.kt
│ │ ├── repeateddata
│ │ ├── ParameterValue.kt
│ │ └── ParameterValueWithArray.kt
│ │ └── unrecognized_constant
│ │ ├── Easter.kt
│ │ └── EasterAnimal.kt
│ └── proto
│ └── squareup
│ └── wire
│ ├── all_types.proto
│ ├── boxed_oneof.proto
│ ├── easter_unrecognized_enum.proto
│ ├── hundreds_redacted.proto
│ ├── mutable_types.proto
│ ├── repeated_data.proto
│ └── some_message.proto
├── wire-gradle-plugin-playground
├── README.md
├── build.gradle.kts
└── src
│ └── main
│ ├── java
│ └── MyListener.java
│ └── proto
│ ├── protos.jar
│ └── squareup
│ └── player.proto
├── wire-gradle-plugin
├── api
│ └── wire-gradle-plugin.api
├── build.gradle.kts
└── src
│ ├── main
│ └── kotlin
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ └── gradle
│ │ ├── InputLocation.kt
│ │ ├── Move.kt
│ │ ├── WireExtension.kt
│ │ ├── WireInput.kt
│ │ ├── WireOutput.kt
│ │ ├── WirePlugin.kt
│ │ ├── WireTask.kt
│ │ ├── internal
│ │ ├── GradleWireLogger.kt
│ │ └── projects.kt
│ │ └── kotlin
│ │ └── SourceRoots.kt
│ └── test
│ ├── kotlin
│ └── com
│ │ └── squareup
│ │ └── wire
│ │ └── gradle
│ │ └── WirePluginTest.kt
│ ├── libs
│ └── com
│ │ └── squareup
│ │ └── wire
│ │ └── dinosaur
│ │ ├── all-protos-plus-martians
│ │ ├── 1.0
│ │ │ ├── all-protos-plus-martians-1.0.jar
│ │ │ └── all-protos-plus-martians-1.0.pom
│ │ └── maven-metadata.xml
│ │ ├── all-protos
│ │ ├── 1.0
│ │ │ ├── all-protos-1.0.jar
│ │ │ └── all-protos-1.0.pom
│ │ └── maven-metadata.xml
│ │ └── only-dinosaur
│ │ ├── 1.0
│ │ ├── only-dinosaur-1.0.jar
│ │ └── only-dinosaur-1.0.pom
│ │ └── maven-metadata.xml
│ └── projects
│ ├── cache-include-paths-1
│ ├── build.gradle
│ ├── settings.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── protos.jar
│ ├── cache-include-paths-2
│ ├── build.gradle
│ ├── settings.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── protos.jar
│ ├── cache-relocation-1
│ ├── build.gradle
│ ├── settings.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── geology
│ │ └── period.proto
│ ├── cache-relocation-2
│ ├── build.gradle
│ ├── settings.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── geology
│ │ └── period.proto
│ ├── configuration-cache-failure
│ ├── build.gradle.kts
│ ├── gradle.properties
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── dinosaur.proto
│ ├── consecutive-runs
│ ├── .gitignore
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── geology
│ │ └── period.proto
│ ├── custom-output-no-such-class
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── geology
│ │ └── period.proto
│ ├── custom-output
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── geology
│ │ └── period.proto
│ ├── customize-configuration
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── dinosaurs
│ │ └── dig.proto
│ ├── customize-task
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── dinosaurs
│ │ └── dig.proto
│ ├── different-java-out
│ ├── .gitignore
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── geology
│ │ └── period.proto
│ ├── different-kotlin-out
│ ├── .gitignore
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── geology
│ │ └── period.proto
│ ├── different-proto-out
│ ├── .gitignore
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── geology
│ │ └── period.proto
│ ├── do-not-emit-wire-runtime-protos
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ ├── google
│ │ └── protobuf
│ │ │ ├── any.proto
│ │ │ ├── duration.proto
│ │ │ ├── empty.proto
│ │ │ ├── struct.proto
│ │ │ ├── timestamp.proto
│ │ │ └── wrappers.proto
│ │ ├── squareup
│ │ └── polygons
│ │ │ └── octagon.proto
│ │ └── wire
│ │ └── extensions.proto
│ ├── dry-run
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── emit-java-options
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── options
│ │ └── documentation.proto
│ │ └── polygons
│ │ └── octagon.proto
│ ├── emit-java-then-emit-kotlin
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── emit-kotlin-and-emit-java
│ ├── build.gradle
│ ├── settings.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── emit-kotlin-options
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── options
│ │ └── documentation.proto
│ │ └── polygons
│ │ └── octagon.proto
│ ├── emit-kotlin-then-emit-java
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── emit-options-with-includes
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── options
│ │ └── documentation.proto
│ │ ├── other_options
│ │ └── documentation.proto
│ │ └── polygons
│ │ └── octagon.proto
│ ├── emit-options-without-conflicts
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── options
│ │ └── documentation.proto
│ │ └── polygons
│ │ └── octagon.proto
│ ├── emit-proto-with-prune
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── emit-proto-with-root
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── emit-proto
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── emit-service-name-suffix
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ ├── battle.proto
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── emit-service-none
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ ├── battle.proto
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── emit-service-two-ways
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ ├── battle.proto
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── emit-service
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ ├── battle.proto
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── field-prune
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── field-prunes
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── field-root
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── field-roots
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── field-rule-prune
│ ├── build.gradle
│ ├── rules.txt
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── field-rule-root
│ ├── build.gradle
│ ├── rules.txt
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── java-project-java-protos
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── squareup
│ │ │ └── dinosaurs
│ │ │ └── Sample.java
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── java-project-kotlin-protos
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── squareup
│ │ │ └── dinosaurs
│ │ │ └── Sample.java
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── kotlin-enum-mode
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ ├── enum
│ │ └── geology
│ │ │ └── period.proto
│ │ └── sealed
│ │ └── geology
│ │ └── period.proto
│ ├── kotlin-multiplatform
│ ├── build.gradle
│ ├── gradle.properties
│ ├── settings.gradle
│ └── src
│ │ └── commonMain
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── kotlin-project-java-protos
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── squareup
│ │ │ └── dinosaurs
│ │ │ └── Sample.kt
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── kotlin-project-kotlin-protos
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── squareup
│ │ │ └── dinosaurs
│ │ │ └── Sample.kt
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── kotlinsourcesjar
│ ├── build.gradle.kts
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── geology
│ │ └── period.proto
│ ├── lazy-configuration-resolution
│ ├── dep-project
│ │ └── build.gradle.kts
│ ├── gradle.properties
│ ├── settings.gradle
│ └── wire-project
│ │ ├── build.gradle.kts
│ │ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── geology
│ │ └── period.proto
│ ├── listener-no-such-class
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── geology
│ │ └── period.proto
│ ├── listener
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── geology
│ │ └── period.proto
│ ├── missing-kotlin-plugin
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── geology
│ │ └── period.proto
│ ├── missing-plugin
│ └── build.gradle
│ ├── move-message
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── only-version
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── media
│ │ └── news.proto
│ ├── opaque-message
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── cafe
│ │ └── cafe.proto
│ ├── package-cycles-permitted
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ ├── locations
│ │ ├── office.proto
│ │ └── residence.proto
│ │ └── people
│ │ ├── employee.proto
│ │ └── office_manager.proto
│ ├── package-cycles
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ ├── locations
│ │ ├── office.proto
│ │ └── residence.proto
│ │ └── people
│ │ ├── employee.proto
│ │ └── office_manager.proto
│ ├── project-dependencies-typesafe-accessor
│ ├── build.gradle
│ ├── dinosaurs
│ │ ├── build.gradle
│ │ └── src
│ │ │ └── main
│ │ │ └── proto
│ │ │ └── squareup
│ │ │ └── dinosaurs
│ │ │ └── dinosaur.proto
│ ├── geology
│ │ ├── build.gradle
│ │ └── src
│ │ │ └── main
│ │ │ └── proto
│ │ │ └── squareup
│ │ │ └── geology
│ │ │ └── period.proto
│ ├── location
│ │ ├── build.gradle
│ │ └── src
│ │ │ └── main
│ │ │ └── proto
│ │ │ └── squareup
│ │ │ └── location
│ │ │ ├── continent.proto
│ │ │ └── planet.proto
│ └── settings.gradle
│ ├── project-dependencies
│ ├── build.gradle
│ ├── dinosaurs
│ │ ├── build.gradle
│ │ └── src
│ │ │ └── main
│ │ │ └── proto
│ │ │ └── squareup
│ │ │ └── dinosaurs
│ │ │ └── dinosaur.proto
│ ├── geology
│ │ ├── build.gradle
│ │ └── src
│ │ │ └── main
│ │ │ └── proto
│ │ │ └── squareup
│ │ │ └── geology
│ │ │ └── period.proto
│ ├── location
│ │ ├── build.gradle
│ │ └── src
│ │ │ └── main
│ │ │ └── proto
│ │ │ └── squareup
│ │ │ └── location
│ │ │ ├── continent.proto
│ │ │ └── planet.proto
│ └── settings.gradle
│ ├── proto-library
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── protopath-maven
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── dinosaurs
│ │ └── dig.proto
│ ├── reject-unused
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── require-target
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── since-until
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── media
│ │ └── news.proto
│ ├── sourceaar-local-protopath
│ ├── build.gradle
│ ├── only-dinosaur-1.0.aar
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── geology
│ │ └── period.proto
│ ├── sourcedir-exclude
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── squareup
│ │ │ └── dinosaurs
│ │ │ └── Sample.kt
│ │ └── proto
│ │ ├── excluded
│ │ └── martian.proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── sourcedir-include
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ ├── java
│ │ └── com
│ │ │ └── squareup
│ │ │ └── dinosaurs
│ │ │ └── Sample.kt
│ │ └── proto
│ │ ├── excluded
│ │ └── martian.proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── sourcejar-local-many-files
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── protos.jar
│ ├── sourcejar-local-nonproto-file
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── protos-plus-nonprotos.jar
│ ├── sourcejar-local-single-file
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── protos.jar
│ ├── sourcejar-mixed-conflicts
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── sourcejar-remote-many-files
│ └── build.gradle
│ ├── sourcejar-remote-protopath
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── geology
│ │ └── period.proto
│ ├── sourcejar-remote-version-catalog
│ ├── build.gradle
│ └── settings.gradle
│ ├── sourcejar-remote-wildcards
│ └── build.gradle
│ ├── sourcepath-and-protopath-intersect
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── protos.jar
│ ├── sourcepath-build-dir
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── copydir
│ │ └── squareup
│ │ └── geology
│ │ └── period.proto
│ ├── sourcepath-default
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── sourcepath-dir
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── sourcepath-file
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── geology
│ │ └── period.proto
│ ├── sourcepath-maven-single-file
│ └── build.gradle
│ ├── sourcepath-maven
│ └── build.gradle
│ ├── sourcepath-no-sources
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── dummy.md
│ ├── sourcepath-nonexistent-dir
│ └── build.gradle
│ ├── sourcepath-nonexistent-srcdir-with-protopath
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── protopath
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── sourcepath-nonexistent-srcdir
│ └── build.gradle
│ ├── sourcepath-uri
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── geology
│ │ └── period.proto
│ ├── sourcetree-many-srcdirs
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ ├── proto
│ │ └── squareup
│ │ │ └── geology
│ │ │ └── period.proto
│ │ └── proto2
│ │ └── squareup
│ │ └── dinosaurs
│ │ └── dinosaur.proto
│ ├── sourcetree-one-srcdir-many-files
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ ├── dinosaurs
│ │ └── dinosaur.proto
│ │ └── geology
│ │ └── period.proto
│ ├── sourcetree-one-srcdir-one-file
│ ├── build.gradle
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── geology
│ │ └── period.proto
│ ├── sourcezip-local-protopath
│ ├── build.gradle
│ ├── only-dinosaur-1.0.zip
│ └── src
│ │ └── main
│ │ └── proto
│ │ └── squareup
│ │ └── geology
│ │ └── period.proto
│ └── task-dependency
│ ├── build.gradle.kts
│ └── src
│ └── main
│ └── proto
│ └── dinosaur.proto
├── wire-grpc-client
├── api
│ └── wire-grpc-client.api
├── build.gradle.kts
└── src
│ ├── commonMain
│ └── kotlin
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ ├── GrpcCall.kt
│ │ ├── GrpcClient.kt
│ │ ├── GrpcClientStreamingCall.kt
│ │ ├── GrpcDeferredResponse.kt
│ │ ├── GrpcException.kt
│ │ ├── GrpcHeaders.kt
│ │ ├── GrpcHttpUrl.kt
│ │ ├── GrpcMethod.kt
│ │ ├── GrpcRequest.kt
│ │ ├── GrpcRequestBody.kt
│ │ ├── GrpcResponse.kt
│ │ ├── GrpcResponseBody.kt
│ │ ├── GrpcServerStreamingCall.kt
│ │ ├── GrpcStatus.kt
│ │ ├── GrpcStreamingCall.kt
│ │ ├── GrpcStreamingCallExtensions.kt
│ │ ├── WireGrpcExperimental.kt
│ │ └── internal
│ │ ├── GrpcDecoder.kt
│ │ ├── GrpcEncoder.kt
│ │ ├── GrpcMessageSink.kt
│ │ ├── GrpcMessageSource.kt
│ │ ├── platform.common.kt
│ │ └── util.kt
│ ├── jsMain
│ └── kotlin
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ ├── GrpcClient.kt
│ │ ├── GrpcHeaders.kt
│ │ ├── GrpcHttpUrl.kt
│ │ ├── GrpcRequest.kt
│ │ ├── GrpcRequestBody.kt
│ │ ├── GrpcResponse.kt
│ │ ├── GrpcResponseBody.kt
│ │ └── internal
│ │ └── platform.kt
│ ├── jvmMain
│ └── kotlin
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ ├── GrpcCalls.kt
│ │ ├── GrpcClient.kt
│ │ ├── GrpcHeaders.kt
│ │ ├── GrpcHttpUrl.kt
│ │ ├── GrpcRequest.kt
│ │ ├── GrpcRequestBody.kt
│ │ ├── GrpcResponse.kt
│ │ ├── GrpcResponseBody.kt
│ │ └── internal
│ │ ├── BlockingMessageSource.kt
│ │ ├── PipeDuplexRequestBody.kt
│ │ ├── RealGrpcCall.kt
│ │ ├── RealGrpcClientStreamingCall.kt
│ │ ├── RealGrpcServerStreamingCall.kt
│ │ ├── RealGrpcStreamingCall.kt
│ │ ├── grpc.kt
│ │ └── platform.kt
│ └── nativeMain
│ └── kotlin
│ └── com
│ └── squareup
│ └── wire
│ ├── GrpcClient.kt
│ ├── GrpcHeaders.kt
│ ├── GrpcHttpUrl.kt
│ ├── GrpcRequest.kt
│ ├── GrpcRequestBody.kt
│ ├── GrpcResponse.kt
│ ├── GrpcResponseBody.kt
│ └── internal
│ └── platform.kt
├── wire-grpc-mockwebserver
├── api
│ └── wire-grpc-mockwebserver.api
├── build.gradle.kts
└── src
│ └── main
│ └── java
│ └── com
│ └── squareup
│ └── wire
│ └── mockwebserver
│ └── GrpcDispatcher.kt
├── wire-grpc-tests
├── build.gradle.kts
└── src
│ └── test
│ ├── java
│ └── com
│ │ └── squareup
│ │ └── wire
│ │ ├── GrpcCallsTest.kt
│ │ ├── GrpcClientTest.kt
│ │ ├── GrpcExceptionTest.kt
│ │ ├── GrpcOnMockWebServerTest.kt
│ │ ├── GrpcStreamingCallsTest.kt
│ │ └── MockRouteGuideService.kt
│ ├── proto-grpc
│ └── routeguide
│ │ ├── Feature.kt
│ │ ├── FeatureDatabase.kt
│ │ ├── GrpcRouteGuideClient.kt
│ │ ├── Point.kt
│ │ ├── Rectangle.kt
│ │ ├── RouteGuideClient.kt
│ │ ├── RouteNote.kt
│ │ └── RouteSummary.kt
│ └── proto
│ └── routeguide
│ └── RouteGuideProto.proto
├── wire-gson-support
├── api
│ └── wire-gson-support.api
├── build.gradle.kts
└── src
│ ├── main
│ └── java
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ ├── AnyMessageTypeAdapter.kt
│ │ ├── EnumTypeAdapter.kt
│ │ ├── GsonJsonIntegration.kt
│ │ ├── MessageTypeAdapter.kt
│ │ └── WireTypeAdapterFactory.kt
│ └── test
│ └── java
│ ├── com
│ └── squareup
│ │ └── wire
│ │ ├── GsonAllStructsTest.kt
│ │ ├── GsonNoAdapterTest.java
│ │ ├── GsonTest.java
│ │ └── proto2
│ │ ├── RepeatedPackedAndMap.java
│ │ ├── alltypes
│ │ └── AllTypes.java
│ │ ├── dinosaurs
│ │ ├── java
│ │ │ └── Dinosaur.java
│ │ ├── javainteropkotlin
│ │ │ └── Dinosaur.kt
│ │ └── kotlin
│ │ │ └── Dinosaur.kt
│ │ ├── geology
│ │ ├── java
│ │ │ └── Period.java
│ │ ├── javainteropkotlin
│ │ │ └── Period.kt
│ │ └── kotlin
│ │ │ └── Period.kt
│ │ ├── kotlin
│ │ └── Getters.kt
│ │ └── person
│ │ └── kotlin
│ │ └── Person.kt
│ └── squareup
│ ├── proto2
│ └── keywords
│ │ ├── KeywordJava.java
│ │ └── KeywordKotlin.kt
│ └── proto3
│ ├── AllStructs.kt
│ ├── BuyOneGetOnePromotion.kt
│ ├── FreeDrinkPromotion.kt
│ ├── FreeGarlicBreadPromotion.kt
│ ├── Pizza.kt
│ └── PizzaDelivery.kt
├── wire-java-generator
├── api
│ └── wire-java-generator.api
├── build.gradle.kts
└── src
│ ├── main
│ └── java
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ └── java
│ │ ├── JavaGenerator.java
│ │ └── JavaSchemaHandler.kt
│ └── test
│ └── java
│ └── com
│ └── squareup
│ └── wire
│ └── java
│ ├── JavaGeneratorHelper.kt
│ ├── JavaGeneratorTest.java
│ └── JavaWithProfilesGenerator.kt
├── wire-kotlin-generator
├── api
│ └── wire-kotlin-generator.api
├── build.gradle.kts
└── src
│ ├── main
│ └── java
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ └── kotlin
│ │ ├── EnumMode.kt
│ │ ├── FieldExtensions.kt
│ │ ├── KotlinGenerator.kt
│ │ ├── KotlinSchemaHandler.kt
│ │ ├── RpcCallStyle.kt
│ │ └── RpcRole.kt
│ └── test
│ └── java
│ └── com
│ └── squareup
│ └── wire
│ └── kotlin
│ ├── KotlinGeneratorTest.kt
│ └── KotlinWithProfilesGenerator.kt
├── wire-moshi-adapter
├── api
│ └── wire-moshi-adapter.api
├── build.gradle.kts
└── src
│ ├── main
│ └── java
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ ├── AnyMessageJsonAdapter.kt
│ │ ├── EnumJsonAdapter.kt
│ │ ├── MessageJsonAdapter.kt
│ │ ├── MoshiJsonIntegration.kt
│ │ ├── RedactingJsonAdapter.kt
│ │ └── WireJsonAdapterFactory.kt
│ └── test
│ └── java
│ ├── com
│ └── squareup
│ │ └── wire
│ │ ├── MoshiAllStructsTest.kt
│ │ ├── MoshiNoAdapterTest.kt
│ │ ├── MoshiPersonTest.kt
│ │ ├── MoshiPizzaTest.kt
│ │ ├── MoshiTest.java
│ │ └── proto2
│ │ ├── RepeatedPackedAndMap.java
│ │ ├── alltypes
│ │ └── AllTypes.java
│ │ ├── dinosaurs
│ │ ├── java
│ │ │ └── Dinosaur.java
│ │ ├── javainteropkotlin
│ │ │ └── Dinosaur.kt
│ │ └── kotlin
│ │ │ └── Dinosaur.kt
│ │ ├── geology
│ │ ├── java
│ │ │ └── Period.java
│ │ ├── javainteropkotlin
│ │ │ └── Period.kt
│ │ └── kotlin
│ │ │ └── Period.kt
│ │ ├── kotlin
│ │ └── Getters.kt
│ │ └── person
│ │ ├── java
│ │ └── Person.java
│ │ ├── javainteropkotlin
│ │ └── Person.kt
│ │ └── kotlin
│ │ └── Person.kt
│ └── squareup
│ ├── proto2
│ └── keywords
│ │ ├── KeywordJava.java
│ │ └── KeywordKotlin.kt
│ └── proto3
│ ├── AllStructs.kt
│ ├── BuyOneGetOnePromotion.kt
│ ├── FreeDrinkPromotion.kt
│ ├── FreeGarlicBreadPromotion.kt
│ ├── Pizza.kt
│ └── PizzaDelivery.kt
├── wire-protoc-compatibility-tests
├── build.gradle.kts
└── src
│ ├── main
│ └── proto
│ │ ├── protos.jar
│ │ └── squareup
│ │ ├── proto2
│ │ ├── java
│ │ │ └── interop
│ │ │ │ ├── interop_message.proto
│ │ │ │ ├── interop_test.proto
│ │ │ │ └── type
│ │ │ │ └── interop_types.proto
│ │ └── kotlin
│ │ │ ├── alloptions
│ │ │ └── all_options.proto
│ │ │ ├── alltypes
│ │ │ └── all_types.proto
│ │ │ ├── buildersonly
│ │ │ └── builders_only_message.proto
│ │ │ ├── extensions
│ │ │ └── wire_message.proto
│ │ │ ├── interop
│ │ │ ├── interop_message.proto
│ │ │ ├── interop_service.proto
│ │ │ ├── interop_test.proto
│ │ │ ├── repeated_enum.proto
│ │ │ └── type
│ │ │ │ └── interop_types.proto
│ │ │ ├── map_types.proto
│ │ │ ├── simple
│ │ │ └── simple_message.proto
│ │ │ └── unrecognized_constant
│ │ │ └── easter.proto
│ │ └── proto3
│ │ ├── java
│ │ ├── alltypes
│ │ │ ├── all_empty.proto
│ │ │ ├── all_structs.proto
│ │ │ ├── all_types_test_proto3_optional.proto
│ │ │ └── all_wrappers.proto
│ │ └── interop
│ │ │ ├── interop_message.proto
│ │ │ ├── interop_test.proto
│ │ │ ├── test_proto3_optional.proto
│ │ │ └── type
│ │ │ └── interop_types.proto
│ │ └── kotlin
│ │ ├── alltypes
│ │ ├── all32.proto
│ │ ├── all64.proto
│ │ ├── all_empty.proto
│ │ ├── all_structs.proto
│ │ ├── all_types_test_proto3_optional.proto
│ │ ├── all_wrappers.proto
│ │ └── camel_case.proto
│ │ ├── extensions
│ │ └── wire_message.proto
│ │ ├── interop
│ │ ├── interop_message.proto
│ │ ├── interop_test.proto
│ │ ├── test_proto3_optional.proto
│ │ └── type
│ │ │ └── interop_types.proto
│ │ ├── map_types.proto
│ │ ├── pizza
│ │ └── pizza.proto
│ │ ├── requiredextension
│ │ └── required_extension.proto
│ │ └── unrecognized_constant
│ │ └── easter.proto
│ └── test
│ └── java
│ └── com
│ └── squareup
│ └── wire
│ ├── DurationRoundTripTest.kt
│ ├── EmptyRoundTripTest.kt
│ ├── InstantRoundTripTest.kt
│ ├── InteropChecker.kt
│ ├── InteropTest.kt
│ ├── Proto2WireProtocCompatibilityTests.kt
│ ├── Proto3WireProtocCompatibilityTests.kt
│ ├── ProtocStructHelper.kt
│ ├── ProtocWrappersHelper.kt
│ ├── SchemaEncoderInteropTest.kt
│ ├── StructTest.kt
│ └── UnwantedValueStripper.kt
├── wire-reflector
├── api
│ └── wire-reflector.api
├── build.gradle.kts
└── src
│ ├── main
│ ├── kotlin
│ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ └── reflector
│ │ │ └── SchemaReflector.kt
│ └── resources
│ │ └── grpc
│ │ └── reflection
│ │ └── v1alpha
│ │ └── reflection.proto
│ └── test
│ ├── kotlin
│ └── com
│ │ └── squareup
│ │ └── wire
│ │ └── reflector
│ │ ├── GrpcurlProto2InteropTest.kt
│ │ ├── GrpcurlProto3InteropTest.kt
│ │ └── SchemaReflectorTest.kt
│ └── proto
│ ├── RouteGuideProto.proto
│ ├── echo2
│ └── echo2.proto
│ ├── echo3
│ └── echo3.proto
│ └── google
│ ├── api
│ ├── annotations.proto
│ └── http.proto
│ └── protobuf
│ └── any.proto
├── wire-runtime-swift
├── .gitignore
├── README.md
├── build.gradle.kts
├── pod_helpers.rb
└── src
│ ├── main
│ └── swift
│ │ ├── AnyMessage.swift
│ │ ├── Codable
│ │ ├── Codable+Wire.swift
│ │ ├── CodingUserInfoKey+Wire.swift
│ │ ├── Duration+Codable.swift
│ │ ├── ProtoArray.swift
│ │ ├── ProtoEnum.swift
│ │ ├── ProtoMap.swift
│ │ ├── StringCodable.swift
│ │ ├── StringEncoded+Data.swift
│ │ ├── StringEncoded.swift
│ │ └── Timestamp+Codable.swift
│ │ ├── Constants.swift
│ │ ├── ExtensibleUnknownFields.swift
│ │ ├── Int+Additions.swift
│ │ ├── ProtoCodable
│ │ ├── FieldWireType.swift
│ │ ├── ProtoCodable+Implementations.swift
│ │ ├── ProtoCodable.swift
│ │ ├── ProtoDecoder.swift
│ │ ├── ProtoEncoder.swift
│ │ ├── ProtoIntCodable+Implementations.swift
│ │ ├── ProtoIntCodable.swift
│ │ ├── ProtoReader.swift
│ │ ├── ProtoWriter.swift
│ │ ├── ReadBuffer.swift
│ │ ├── WriteBuffer+Additions.swift
│ │ └── WriteBuffer.swift
│ │ ├── ProtoExtensible.swift
│ │ ├── ProtoMessage.swift
│ │ ├── ProtoSyntax.swift
│ │ ├── Redactable.swift
│ │ ├── propertyWrappers
│ │ ├── CopyOnWrite.swift
│ │ ├── CustomDefaulted.swift
│ │ ├── Indirect.swift
│ │ └── ProtoDefaulted.swift
│ │ └── wellknowntypes
│ │ ├── Duration.swift
│ │ ├── ExtensionRangeOptions.swift
│ │ ├── OneofOptions.swift
│ │ └── Timestamp.swift
│ └── test
│ ├── proto
│ ├── any.proto
│ ├── cycles.proto
│ ├── empty.proto
│ ├── extensible.proto
│ ├── large.proto
│ ├── negative_value_enum.proto
│ ├── nested1.proto
│ ├── nested2.proto
│ ├── nested3.proto
│ ├── nested4.proto
│ ├── nested5.proto
│ ├── nested6.proto
│ ├── oneofs.proto
│ ├── parent.proto
│ ├── person.proto
│ ├── person3.proto
│ ├── redacted.proto
│ ├── redacted_option.proto
│ ├── simple2.proto
│ ├── simple3.proto
│ ├── the_clash.proto
│ └── type.proto
│ └── swift
│ ├── AnyMessageTests.swift
│ ├── CodableTests.swift
│ ├── CyclesTests.swift
│ ├── Data+TestAdditions.swift
│ ├── DefaultEmpty.swift
│ ├── DefaultEmptyTests.swift
│ ├── DefaultedTests.swift
│ ├── ExtensibleTests.swift
│ ├── Int+AdditionsTests.swift
│ ├── PerformanceTests.swift
│ ├── ProtoDecoderTests.swift
│ ├── ProtoEncoderTests.swift
│ ├── ProtoEnumCodableTests.swift
│ ├── ProtoEnumTests.swift
│ ├── ProtoReaderTests.swift
│ ├── ProtoWriterTests.swift
│ ├── RedactableTests.swift
│ ├── RoundTripTests.swift
│ ├── StringEncodedTests.swift
│ ├── WriteBufferTests.swift
│ └── sample
│ ├── Dinosaur.swift
│ └── Period.swift
├── wire-runtime
├── api
│ └── wire-runtime.api
├── build.gradle.kts
├── src
│ ├── commonMain
│ │ └── kotlin
│ │ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ ├── AnyMessage.kt
│ │ │ ├── ByteArrayProtoReader32.kt
│ │ │ ├── Duration.kt
│ │ │ ├── EnumAdapter.kt
│ │ │ ├── FieldEncoding.kt
│ │ │ ├── Instant.kt
│ │ │ ├── Message.kt
│ │ │ ├── MessageSink.kt
│ │ │ ├── MessageSource.kt
│ │ │ ├── OneOf.kt
│ │ │ ├── ProtoAdapter.kt
│ │ │ ├── ProtoReader.kt
│ │ │ ├── ProtoReader32.kt
│ │ │ ├── ProtoReader32AsProtoReader.kt
│ │ │ ├── ProtoWriter.kt
│ │ │ ├── ReverseProtoWriter.kt
│ │ │ ├── Service.kt
│ │ │ ├── Syntax.kt
│ │ │ ├── WireEnclosingType.kt
│ │ │ ├── WireEnum.kt
│ │ │ ├── WireEnumConstant.kt
│ │ │ ├── WireField.kt
│ │ │ ├── WireRpc.kt
│ │ │ └── internal
│ │ │ ├── -Platform.kt
│ │ │ ├── DoubleArrayList.kt
│ │ │ ├── FieldOrOneOfBinding.kt
│ │ │ ├── FloatArrayList.kt
│ │ │ ├── ImmutableList.kt
│ │ │ ├── IntArrayList.kt
│ │ │ ├── Internal.kt
│ │ │ ├── LongArrayList.kt
│ │ │ ├── MathMethods.kt
│ │ │ ├── MessageBinding.kt
│ │ │ ├── MutableOnWriteList.kt
│ │ │ ├── RuntimeMessageAdapter.kt
│ │ │ └── Util.kt
│ ├── commonTest
│ │ └── kotlin
│ │ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ ├── DurationTest.kt
│ │ │ ├── InstantTest.kt
│ │ │ ├── ProtoAdapterTest.kt
│ │ │ ├── ProtoReader32Test.kt
│ │ │ ├── ProtoReaderTest.kt
│ │ │ ├── ProtoWriterTest.kt
│ │ │ ├── ReverseProtoWriterTest.kt
│ │ │ └── internal
│ │ │ ├── DoubleArrayListTest.kt
│ │ │ ├── FloatArrayListTest.kt
│ │ │ ├── IntArrayListTest.kt
│ │ │ ├── InternalTest.kt
│ │ │ └── LongArrayListTest.kt
│ ├── darwinMain
│ │ └── kotlin
│ │ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ └── ProtoAdapter.kt
│ ├── jsMain
│ │ └── kotlin
│ │ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ └── internal
│ │ │ └── -Platform.kt
│ ├── jvmMain
│ │ └── kotlin
│ │ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ ├── AndroidMessage.kt
│ │ │ ├── Duration.kt
│ │ │ ├── EnumAdapter.kt
│ │ │ ├── Instant.kt
│ │ │ ├── KotlinConstructorBuilder.kt
│ │ │ ├── Message.kt
│ │ │ ├── MessageSerializedForm.kt
│ │ │ ├── MessageSink.kt
│ │ │ ├── MessageSource.kt
│ │ │ ├── ProtoAdapter.kt
│ │ │ ├── RuntimeEnumAdapter.kt
│ │ │ ├── Wire.kt
│ │ │ └── internal
│ │ │ ├── -Platform.kt
│ │ │ ├── DurationJsonFormatter.kt
│ │ │ ├── EnumJsonFormatter.kt
│ │ │ ├── FieldBinding.kt
│ │ │ ├── InstantJsonFormatter.kt
│ │ │ ├── InternalJvm.kt
│ │ │ ├── JsonFormatter.kt
│ │ │ ├── JsonIntegration.kt
│ │ │ ├── OneOfBinding.kt
│ │ │ └── reflection.kt
│ ├── nativeMain
│ │ └── kotlin
│ │ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ └── internal
│ │ │ └── -Platform.kt
│ ├── nonJvmMain
│ │ └── kotlin
│ │ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ ├── Duration.kt
│ │ │ ├── EnumAdapter.kt
│ │ │ ├── Instant.kt
│ │ │ ├── Message.kt
│ │ │ ├── MessageSink.kt
│ │ │ ├── MessageSource.kt
│ │ │ ├── ProtoAdapter.kt
│ │ │ └── internal
│ │ │ └── -Platform.kt
│ ├── wasmJsMain
│ │ └── kotlin
│ │ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ └── internal
│ │ │ └── -Platform.kt
│ └── wasmWasiMain
│ │ └── kotlin
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ └── internal
│ │ └── -Platform.kt
└── webpack.config.d
│ └── config.js
├── wire-schema-tests
├── README.md
├── api
│ └── wire-schema-tests.api
├── build.gradle.kts
└── src
│ ├── commonMain
│ └── kotlin
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ ├── SchemaBuilder.kt
│ │ └── WireTestLogger.kt
│ ├── commonTest
│ └── kotlin
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ ├── SchemaBuilderTest.kt
│ │ └── recipes
│ │ ├── ErrorReportingSchemaHandler.kt
│ │ ├── ErrorReportingSchemaHandlerTest.kt
│ │ ├── LogToFileHandler.kt
│ │ ├── LogToFileHandlerTest.kt
│ │ ├── LogToWireLoggerHandler.kt
│ │ ├── LogToWireLoggerHandlerTest.kt
│ │ ├── MarkdownHandler.kt
│ │ └── MarkdownHandlerTest.kt
│ └── jvmTest
│ └── kotlin
│ └── com
│ └── squareup
│ └── wire
│ └── SchemaBuilderTest.kt
├── wire-schema
├── api
│ └── wire-schema.api
├── build.gradle.kts
└── src
│ ├── commonMain
│ └── kotlin
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ ├── WireLogger.kt
│ │ └── schema
│ │ ├── ClaimedDefinitions.kt
│ │ ├── ClaimedPaths.kt
│ │ ├── CoreLoader.kt
│ │ ├── CycleChecker.kt
│ │ ├── DirectedAcyclicGraph.kt
│ │ ├── EmittingRules.kt
│ │ ├── EnclosingType.kt
│ │ ├── EnumConstant.kt
│ │ ├── EnumType.kt
│ │ ├── ErrorCollector.kt
│ │ ├── EventListener.kt
│ │ ├── Extend.kt
│ │ ├── Extensions.kt
│ │ ├── Field.kt
│ │ ├── FileLinker.kt
│ │ ├── LinkedOptionEntry.kt
│ │ ├── Linker.kt
│ │ ├── Loader.kt
│ │ ├── Location.kt
│ │ ├── MarkSet.kt
│ │ ├── MessageType.kt
│ │ ├── Multimap.kt
│ │ ├── OneOf.kt
│ │ ├── Options.kt
│ │ ├── PartitionedSchema.kt
│ │ ├── Profile.kt
│ │ ├── ProfileLoader.kt
│ │ ├── ProtoFile.kt
│ │ ├── ProtoMember.kt
│ │ ├── ProtoType.kt
│ │ ├── Pruner.kt
│ │ ├── PruningRules.kt
│ │ ├── Reserved.kt
│ │ ├── Root.kt
│ │ ├── Rpc.kt
│ │ ├── Schema.kt
│ │ ├── SchemaException.kt
│ │ ├── SchemaHandler.kt
│ │ ├── SchemaLoader.kt
│ │ ├── SchemaProtoAdapterFactory.kt
│ │ ├── SemVer.kt
│ │ ├── Service.kt
│ │ ├── SyntaxRules.kt
│ │ ├── Target.kt
│ │ ├── Type.kt
│ │ ├── WireRun.kt
│ │ └── internal
│ │ ├── CommonSchemaLoader.kt
│ │ ├── DagChecker.kt
│ │ ├── ProfileFileElement.kt
│ │ ├── ProfileParser.kt
│ │ ├── SchemaEncoder.kt
│ │ ├── TypeConfigElement.kt
│ │ ├── TypeMover.kt
│ │ ├── Util.kt
│ │ └── parser
│ │ ├── EnumConstantElement.kt
│ │ ├── EnumElement.kt
│ │ ├── ExtendElement.kt
│ │ ├── ExtensionsElement.kt
│ │ ├── FieldElement.kt
│ │ ├── GroupElement.kt
│ │ ├── MessageElement.kt
│ │ ├── OneOfElement.kt
│ │ ├── OptionElement.kt
│ │ ├── OptionReader.kt
│ │ ├── ProtoFileElement.kt
│ │ ├── ProtoParser.kt
│ │ ├── ReservedElement.kt
│ │ ├── RpcElement.kt
│ │ ├── ServiceElement.kt
│ │ ├── SyntaxReader.kt
│ │ └── TypeElement.kt
│ ├── commonTest
│ └── kotlin
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ └── schema
│ │ ├── Assertions.kt
│ │ ├── EmittingRulesTest.kt
│ │ ├── MavenVersionsTest.kt
│ │ ├── ProtoFileTest.kt
│ │ ├── ProtoTypeTest.kt
│ │ ├── PruningRulesTest.kt
│ │ ├── SemVerTest.kt
│ │ └── internal
│ │ ├── DagCheckerTest.kt
│ │ ├── ProfileParserTest.kt
│ │ ├── UtilTest.kt
│ │ └── parser
│ │ ├── EnumElementTest.kt
│ │ ├── ExtendElementTest.kt
│ │ ├── ExtensionsElementTest.kt
│ │ ├── FieldElementTest.kt
│ │ ├── MessageElementTest.kt
│ │ ├── OneOfElementTest.kt
│ │ ├── OptionElementTest.kt
│ │ ├── ProtoFileElementTest.kt
│ │ ├── ProtoParserTest.kt
│ │ └── ServiceElementTest.kt
│ ├── jsMain
│ └── kotlin
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ └── schema
│ │ ├── CoreLoader.kt
│ │ ├── Multimap.kt
│ │ ├── Profile.kt
│ │ ├── Roots.kt
│ │ ├── SchemaLoader.kt
│ │ └── internal
│ │ └── UtilJS.kt
│ ├── jvmMain
│ ├── kotlin
│ │ └── com
│ │ │ └── squareup
│ │ │ └── wire
│ │ │ └── schema
│ │ │ ├── AdapterConstant.kt
│ │ │ ├── CoreLoader.kt
│ │ │ ├── EventListeners.kt
│ │ │ ├── Multimap.kt
│ │ │ ├── Profile.kt
│ │ │ ├── Roots.kt
│ │ │ ├── SchemaLoader.kt
│ │ │ ├── WireLoggers.kt
│ │ │ └── internal
│ │ │ ├── JvmLanguages.kt
│ │ │ ├── UtilJVM.kt
│ │ │ └── fileSystems.kt
│ └── resources
│ │ ├── google
│ │ └── protobuf
│ │ │ ├── any.proto
│ │ │ ├── descriptor.proto
│ │ │ ├── duration.proto
│ │ │ ├── empty.proto
│ │ │ ├── struct.proto
│ │ │ ├── timestamp.proto
│ │ │ └── wrappers.proto
│ │ └── wire
│ │ └── extensions.proto
│ ├── jvmTest
│ └── kotlin
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ └── schema
│ │ ├── DynamicSerializationTest.kt
│ │ ├── ManifestPartitionTest.kt
│ │ ├── OptionsTest.kt
│ │ ├── ProfileLoaderTest.kt
│ │ ├── PrunerTest.kt
│ │ ├── RootTest.kt
│ │ ├── SchemaLoaderTest.kt
│ │ ├── SchemaProtoAdapterTest.kt
│ │ ├── SchemaTest.kt
│ │ └── internal
│ │ ├── SchemaEncoderTest.kt
│ │ ├── TypeMoverTest.kt
│ │ └── parser
│ │ └── ParsingTester.kt
│ └── nativeMain
│ └── kotlin
│ └── com
│ └── squareup
│ └── wire
│ └── schema
│ ├── CoreLoader.kt
│ ├── Multimap.kt
│ ├── Profile.kt
│ ├── Roots.kt
│ ├── SchemaLoader.kt
│ └── internal
│ └── UtilNative.kt
├── wire-swift-generator
├── api
│ └── wire-swift-generator.api
├── build.gradle.kts
└── src
│ └── main
│ └── java
│ └── com
│ └── squareup
│ └── wire
│ └── swift
│ ├── SwiftGenerator.kt
│ └── SwiftSchemaHandler.kt
├── wire-test-utils
├── build.gradle.kts
└── src
│ ├── commonMain
│ └── kotlin
│ │ └── com
│ │ └── squareup
│ │ └── wire
│ │ ├── schema
│ │ └── SchemaHelpers.kt
│ │ └── testing
│ │ └── files.kt
│ └── jvmMain
│ └── kotlin
│ └── com
│ └── squareup
│ └── wire
│ ├── json
│ └── Json.kt
│ ├── schema
│ └── SchemaHelpersJvm.kt
│ └── testing
│ ├── UnwantedValueStripper.kt
│ └── filesJvm.kt
├── wire-tests-proto3-swift
├── build.gradle.kts
└── src
│ └── main
│ └── swift
│ ├── ContainsDuration.swift
│ └── ContainsTimestamp.swift
├── wire-tests-swift
├── build.gradle.kts
├── manifest
│ ├── module_one
│ │ ├── ExtensionMessage.swift
│ │ ├── SortOrder.swift
│ │ ├── SwiftModuleOneEnum.swift
│ │ ├── SwiftModuleOneMessage.swift
│ │ ├── SwiftModuleThreeMessage.swift
│ │ └── build.gradle.kts
│ ├── module_three
│ │ ├── SwiftModuleThreeMessage.swift
│ │ └── build.gradle.kts
│ └── module_two
│ │ ├── SwiftModuleTwoMessage.swift
│ │ └── build.gradle.kts
├── no-manifest
│ ├── build.gradle.kts
│ └── src
│ │ ├── main
│ │ └── swift
│ │ │ ├── AllTypes.swift
│ │ │ ├── DeprecatedEnum.swift
│ │ │ ├── DeprecatedProto.swift
│ │ │ ├── EmbeddedMessage.swift
│ │ │ ├── EnumVersionOne.swift
│ │ │ ├── EnumVersionTwo.swift
│ │ │ ├── Error_.swift
│ │ │ ├── ExternalMessage.swift
│ │ │ ├── FooBar.swift
│ │ │ ├── ForeignEnum.swift
│ │ │ ├── ForeignMessage.swift
│ │ │ ├── Form.swift
│ │ │ ├── Mappy.swift
│ │ │ ├── MappyTwo.swift
│ │ │ ├── MessageUsingMultipleEnums.swift
│ │ │ ├── MessageWithOptions.swift
│ │ │ ├── MessageWithStatus.swift
│ │ │ ├── ModelEvaluation.swift
│ │ │ ├── NegativeValueEnum.swift
│ │ │ ├── NegativeValueMessage.swift
│ │ │ ├── NestedVersionOne.swift
│ │ │ ├── NestedVersionTwo.swift
│ │ │ ├── NoFields.swift
│ │ │ ├── OneOfMessage.swift
│ │ │ ├── OptionalEnumUser.swift
│ │ │ ├── OtherMessageWithStatus.swift
│ │ │ ├── OuterMessage.swift
│ │ │ ├── Percents.swift
│ │ │ ├── Person.swift
│ │ │ ├── RedactedOneOf.swift
│ │ │ ├── Screen.swift
│ │ │ ├── SwiftEdgeCases.swift
│ │ │ ├── Thing.swift
│ │ │ ├── VersionOne.swift
│ │ │ ├── VersionTwo.swift
│ │ │ └── VeryLongProtoNameCausingBrokenLineBreaks.swift
│ │ └── test
│ │ └── swift
│ │ └── JsonLitmusTest.swift
└── opaques
│ └── OuterOpaqueType.swift
└── wire-tests
├── build.gradle.kts
└── src
├── commonMain
└── kotlin
│ └── com
│ └── squareup
│ └── wire
│ └── Tests.kt
├── commonTest
├── kotlin
│ └── com
│ │ └── squareup
│ │ └── wire
│ │ ├── AnyMessageTest.kt
│ │ ├── Asserts.kt
│ │ ├── BoxOneOfTest.kt
│ │ ├── CustomGrpcClient.kt
│ │ ├── IgnoreJs.kt
│ │ ├── IgnoreNative.kt
│ │ ├── KotlinBuildTest.kt
│ │ ├── KotlinEnumTest.kt
│ │ ├── KotlinListTest.kt
│ │ ├── KotlinMapTest.kt
│ │ ├── OneOfTest.kt
│ │ ├── ParseTest.kt
│ │ ├── ProtoAdapterTest.kt
│ │ ├── ProtoReader32AsProtoReaderTest.kt
│ │ ├── RedactTest.kt
│ │ ├── TestAllTypes.kt
│ │ ├── TestAllTypesData.kt
│ │ ├── UnknownFieldsTest.kt
│ │ └── WireTest.kt
├── proto-kotlin
│ ├── com
│ │ └── squareup
│ │ │ ├── dinosaurs
│ │ │ └── Dinosaur.kt
│ │ │ ├── geology
│ │ │ └── Period.kt
│ │ │ └── wire
│ │ │ ├── proto3
│ │ │ └── kotlin
│ │ │ │ ├── all_types
│ │ │ │ └── AllTypes.kt
│ │ │ │ └── person
│ │ │ │ └── Person.kt
│ │ │ └── protos
│ │ │ ├── custom_options
│ │ │ ├── EnumOptionOption.kt
│ │ │ ├── EnumValueOptionOption.kt
│ │ │ ├── FooBar.kt
│ │ │ ├── GrpcServiceWithOptionsClient.kt
│ │ │ ├── MessageWithOptions.kt
│ │ │ ├── MethodOptionOneOption.kt
│ │ │ ├── MyFieldOptionFiveOption.kt
│ │ │ ├── MyFieldOptionOneOption.kt
│ │ │ ├── MyFieldOptionSevenOption.kt
│ │ │ ├── MyFieldOptionSixOption.kt
│ │ │ ├── MyFieldOptionThreeOption.kt
│ │ │ ├── MyFieldOptionTwoOption.kt
│ │ │ ├── MyMessageOptionEightOption.kt
│ │ │ ├── MyMessageOptionFourOption.kt
│ │ │ ├── MyMessageOptionNineOption.kt
│ │ │ ├── MyMessageOptionSevenOption.kt
│ │ │ ├── MyMessageOptionTwoOption.kt
│ │ │ ├── RepeatedEnumValueOptionOneOption.kt
│ │ │ ├── RepeatedEnumValueOptionOption.kt
│ │ │ ├── RepeatedEnumValueOptionTwoOption.kt
│ │ │ ├── ServiceOptionOneOption.kt
│ │ │ └── ServiceWithOptionsClient.kt
│ │ │ ├── kotlin
│ │ │ ├── BoxedOneOfs.kt
│ │ │ ├── DeprecatedEnum.kt
│ │ │ ├── DeprecatedProto.kt
│ │ │ ├── Form.kt
│ │ │ ├── MessageUsingMultipleEnums.kt
│ │ │ ├── MessageWithStatus.kt
│ │ │ ├── NegativeValueEnum.kt
│ │ │ ├── NegativeValueMessage.kt
│ │ │ ├── NoFields.kt
│ │ │ ├── OneOfMessage.kt
│ │ │ ├── OptionalEnumUser.kt
│ │ │ ├── OtherMessageWithStatus.kt
│ │ │ ├── VeryLongProtoNameCausingBrokenLineBreaks.kt
│ │ │ ├── alltypes
│ │ │ │ └── AllTypes.kt
│ │ │ ├── bool
│ │ │ │ └── TrueBoolean.kt
│ │ │ ├── edgecases
│ │ │ │ ├── NoFields.kt
│ │ │ │ ├── OneBytesField.kt
│ │ │ │ ├── OneField.kt
│ │ │ │ └── Recursive.kt
│ │ │ ├── foreign
│ │ │ │ ├── ForeignEnum.kt
│ │ │ │ ├── ForeignEnumValueOptionOption.kt
│ │ │ │ └── ForeignMessage.kt
│ │ │ ├── map
│ │ │ │ ├── Mappy.kt
│ │ │ │ ├── MappyTwo.kt
│ │ │ │ └── Thing.kt
│ │ │ ├── person
│ │ │ │ └── Person.kt
│ │ │ ├── redacted
│ │ │ │ ├── NotRedacted.kt
│ │ │ │ ├── RedactedChild.kt
│ │ │ │ ├── RedactedCycleA.kt
│ │ │ │ ├── RedactedCycleB.kt
│ │ │ │ ├── RedactedExtension.kt
│ │ │ │ ├── RedactedFields.kt
│ │ │ │ ├── RedactedOneOf.kt
│ │ │ │ ├── RedactedRepeated.kt
│ │ │ │ ├── RedactedRequired.kt
│ │ │ │ └── buildersonly
│ │ │ │ │ ├── NotRedacted.kt
│ │ │ │ │ ├── RedactedChild.kt
│ │ │ │ │ ├── RedactedCycleA.kt
│ │ │ │ │ ├── RedactedCycleB.kt
│ │ │ │ │ ├── RedactedExtension.kt
│ │ │ │ │ ├── RedactedFields.kt
│ │ │ │ │ ├── RedactedRepeated.kt
│ │ │ │ │ └── RedactedRequired.kt
│ │ │ ├── simple
│ │ │ │ ├── ExternalMessage.kt
│ │ │ │ ├── SimpleMessage.kt
│ │ │ │ └── buildersonly
│ │ │ │ │ └── SimpleMessage.kt
│ │ │ └── unknownfields
│ │ │ │ ├── EnumVersionOne.kt
│ │ │ │ ├── EnumVersionTwo.kt
│ │ │ │ ├── NestedVersionOne.kt
│ │ │ │ ├── NestedVersionTwo.kt
│ │ │ │ ├── VersionOne.kt
│ │ │ │ └── VersionTwo.kt
│ │ │ └── usesany
│ │ │ └── UsesAny.kt
│ └── squareup
│ │ ├── proto2
│ │ └── keywords
│ │ │ └── KeywordKotlin.kt
│ │ └── protos
│ │ ├── opaque_types
│ │ └── OuterOpaqueType.kt
│ │ └── packed_encoding
│ │ ├── EmbeddedMessage.kt
│ │ └── OuterMessage.kt
├── proto
│ ├── java
│ │ ├── all_types.proto
│ │ ├── bar.proto
│ │ ├── child_pkg.proto
│ │ ├── collection_types.proto
│ │ ├── custom_options.proto
│ │ ├── depend_on_kotlin_option.proto
│ │ ├── differentpackage
│ │ │ ├── bar.proto
│ │ │ └── foo.proto
│ │ ├── edge_cases.proto
│ │ ├── extension_collision.proto
│ │ ├── extension_collision_1.proto
│ │ ├── extension_collision_2.proto
│ │ ├── external_message.proto
│ │ ├── foo.proto
│ │ ├── foreign.proto
│ │ ├── letter.proto
│ │ ├── map.proto
│ │ ├── name_collisions.proto
│ │ ├── one_extension.proto
│ │ ├── one_of.proto
│ │ ├── option_redacted.proto
│ │ ├── options.proto
│ │ ├── packed_encoding.proto
│ │ ├── person.proto
│ │ ├── poem.proto
│ │ ├── recursive_map.proto
│ │ ├── redacted_test.proto
│ │ ├── request_response.proto
│ │ ├── retrofit_service.proto
│ │ ├── roots.proto
│ │ ├── samebasename
│ │ │ └── single_level.proto
│ │ ├── service.proto
│ │ ├── service_root.proto
│ │ ├── simple_message.proto
│ │ ├── simple_service.proto
│ │ ├── simple_service2.proto
│ │ ├── single_level.proto
│ │ └── unknown_fields.proto
│ ├── kotlin-serialization
│ │ └── cdn_resource.proto
│ └── kotlin
│ │ ├── all_types.proto
│ │ ├── bool.proto
│ │ ├── boxed_oneofs.proto
│ │ ├── custom_options.proto
│ │ ├── custom_options2.proto
│ │ ├── deprecated.proto
│ │ ├── deprecated_enum.proto
│ │ ├── easter.proto
│ │ ├── edge_cases.proto
│ │ ├── external_message.proto
│ │ ├── foreign.proto
│ │ ├── form.proto
│ │ ├── map.proto
│ │ ├── negative_value_enum.proto
│ │ ├── no_fields.proto
│ │ ├── one_of.proto
│ │ ├── opaque_types.proto
│ │ ├── option_redacted.proto
│ │ ├── optional_enum.proto
│ │ ├── packed_encoding.proto
│ │ ├── percents_in_kdoc.proto
│ │ ├── person.proto
│ │ ├── protos.jar
│ │ ├── recursive_map.proto
│ │ ├── redacted_one_of.proto
│ │ ├── redacted_test.proto
│ │ ├── redacted_test_builders_only.proto
│ │ ├── repeated.proto
│ │ ├── same_name_enum.proto
│ │ ├── service_kotlin.proto
│ │ ├── service_kotlin_with_all_flags.proto
│ │ ├── service_without_package.proto
│ │ ├── simple_message.proto
│ │ ├── simple_message_builders_only.proto
│ │ ├── swift_edge_cases.proto
│ │ ├── swift_module_one.proto
│ │ ├── swift_module_three.proto
│ │ ├── swift_module_two.proto
│ │ ├── swift_modules_manifest.yaml
│ │ ├── to_string.proto
│ │ ├── unknown_fields.proto
│ │ └── uses_any.proto
├── proto3
│ ├── java
│ │ ├── all_types.proto
│ │ └── person.proto
│ └── kotlin
│ │ ├── all_types.proto
│ │ ├── contains_duration.proto
│ │ ├── contains_timestamp.proto
│ │ └── person.proto
└── shared
│ ├── json
│ ├── all_32_max_proto3.json
│ ├── all_32_min_proto3.json
│ ├── all_64_max_proto3.json
│ ├── all_64_min_proto3.json
│ ├── all_struct_identity_proto3.json
│ ├── all_struct_identity_written_proto3.json
│ ├── all_struct_proto3.json
│ ├── all_types_explicit_identity_proto3.json
│ ├── all_types_identity_proto2.json
│ ├── all_types_identity_proto3.json
│ ├── all_types_identity_written_proto3.json
│ ├── all_types_proto2.json
│ ├── all_types_proto3.json
│ ├── all_wrappers_proto3.json
│ ├── camel_case_proto3.json
│ ├── map_types_proto3.json
│ ├── pizza_delivery_literal_nulls_proto3.json
│ ├── pizza_delivery_proto3.json
│ ├── pizza_delivery_unknown_type_proto3.json
│ └── pizza_delivery_without_type_proto3.json
│ └── proto
│ ├── proto2
│ ├── all_types_proto2.proto
│ ├── collection_types.proto
│ ├── dinosaur_java.proto
│ ├── dinosaur_java_interop_kotlin.proto
│ ├── dinosaur_kotlin.proto
│ ├── getters_kotlin.proto
│ ├── keyword_java.proto
│ ├── keyword_kotlin.proto
│ ├── period_java.proto
│ ├── period_java_interop_kotlin.proto
│ ├── period_kotlin.proto
│ ├── person_java.proto
│ ├── person_java_interop_kotlin.proto
│ └── person_kotlin.proto
│ └── proto3
│ ├── all32.proto
│ ├── all64.proto
│ ├── all_structs.proto
│ ├── all_types_proto3_test_proto3_optional.proto
│ ├── all_wrappers.proto
│ ├── camel_case.proto
│ ├── map_types.proto
│ └── pizza.proto
├── darwinTest
└── kotlin
│ └── com
│ └── squareup
│ └── wire
│ └── DarwinProtoAdapterTest.kt
├── jsTest
└── kotlin
│ └── com
│ └── squareup
│ └── wire
│ ├── CustomGrpcClient.kt
│ ├── IgnoreJs.kt
│ └── IgnoreNative.kt
├── jvmJavaAndroidCompactTest
└── proto-java
│ └── com
│ └── squareup
│ └── wire
│ └── protos
│ └── person
│ └── Person.java
├── jvmJavaAndroidTest
└── proto-java
│ └── com
│ └── squareup
│ └── wire
│ └── protos
│ └── person
│ └── Person.java
├── jvmJavaCompactTest
└── proto-java
│ └── com
│ └── squareup
│ └── wire
│ └── protos
│ └── alltypes
│ └── AllTypes.java
├── jvmJavaNoOptionsTest
└── proto-java
│ ├── com
│ └── squareup
│ │ ├── differentpackage
│ │ └── protos
│ │ │ ├── bar
│ │ │ └── Bar.java
│ │ │ └── foo
│ │ │ └── Foo.java
│ │ ├── foobar
│ │ └── protos
│ │ │ ├── bar
│ │ │ └── Bar.java
│ │ │ └── foo
│ │ │ └── Foo.java
│ │ ├── services
│ │ ├── HeresAllTheDataRequest.java
│ │ ├── HeresAllTheDataResponse.java
│ │ ├── LetsDataRequest.java
│ │ ├── LetsDataResponse.java
│ │ └── anotherpackage
│ │ │ ├── SendDataRequest.java
│ │ │ └── SendDataResponse.java
│ │ └── wire
│ │ ├── map
│ │ ├── Mappy.java
│ │ ├── MappyTwo.java
│ │ └── Thing.java
│ │ └── protos
│ │ ├── ChildPackage.java
│ │ ├── RepeatedPackedAndMap.java
│ │ ├── alltypes
│ │ └── AllTypes.java
│ │ ├── custom_options
│ │ ├── FooBar.java
│ │ └── MessageWithOptions.java
│ │ ├── depend_on_kotlin_option
│ │ └── Letter.java
│ │ ├── edgecases
│ │ ├── NoFields.java
│ │ ├── OneBytesField.java
│ │ ├── OneField.java
│ │ └── Recursive.java
│ │ ├── foreign
│ │ ├── ForeignEnum.java
│ │ └── ForeignMessage.java
│ │ ├── namecollisions
│ │ └── Message.java
│ │ ├── one_extension
│ │ ├── Foo.java
│ │ └── OneExtension.java
│ │ ├── oneof
│ │ └── OneOfMessage.java
│ │ ├── person
│ │ └── Person.java
│ │ ├── redacted
│ │ ├── NotRedacted.java
│ │ ├── RedactedChild.java
│ │ ├── RedactedCycleA.java
│ │ ├── RedactedCycleB.java
│ │ ├── RedactedExtension.java
│ │ ├── RedactedFields.java
│ │ ├── RedactedRepeated.java
│ │ └── RedactedRequired.java
│ │ ├── roots
│ │ ├── A.java
│ │ ├── B.java
│ │ ├── C.java
│ │ ├── D.java
│ │ ├── E.java
│ │ ├── G.java
│ │ ├── H.java
│ │ ├── I.java
│ │ ├── J.java
│ │ ├── K.java
│ │ ├── TheRequest.java
│ │ ├── TheResponse.java
│ │ └── UnnecessaryResponse.java
│ │ ├── simple
│ │ ├── ExternalMessage.java
│ │ └── SimpleMessage.java
│ │ ├── single_level
│ │ ├── Bar.java
│ │ ├── Bars.java
│ │ ├── Foo.java
│ │ └── Foos.java
│ │ └── unknownfields
│ │ ├── EnumVersionOne.java
│ │ ├── EnumVersionTwo.java
│ │ ├── NestedVersionOne.java
│ │ ├── NestedVersionTwo.java
│ │ ├── VersionOne.java
│ │ └── VersionTwo.java
│ └── squareup
│ └── protos
│ ├── extension_collision
│ └── CollisionSubject.java
│ └── packed_encoding
│ ├── EmbeddedMessage.java
│ └── OuterMessage.java
├── jvmJavaPrunedTest
└── proto-java
│ └── com
│ └── squareup
│ └── wire
│ └── protos
│ └── roots
│ ├── A.java
│ ├── D.java
│ ├── E.java
│ └── H.java
├── jvmJavaTest
├── java
│ └── com
│ │ └── squareup
│ │ └── wire
│ │ ├── MapTest.kt
│ │ ├── MoshiRedactedTest.kt
│ │ ├── OneOfTest.java
│ │ ├── ParseTest.java
│ │ ├── ProtoAdapterTest.java
│ │ ├── RuntimeMessageAdapterRedactTest.java
│ │ ├── SerializableTest.java
│ │ ├── TestAllTypes.java
│ │ ├── TestAllTypesData.java
│ │ ├── UnknownFieldsTest.java
│ │ └── WireTest.java
├── kotlin
│ └── com
│ │ └── squareup
│ │ └── wire
│ │ ├── AnnotationsTestAgainstJava.kt
│ │ ├── ProtoAdapterIdentityTest.kt
│ │ ├── ProtoAdapterTypeUrlTest.kt
│ │ └── WireKotlinTest.kt
├── proto-java
│ ├── com
│ │ └── squareup
│ │ │ ├── differentpackage
│ │ │ └── protos
│ │ │ │ ├── bar
│ │ │ │ └── Bar.java
│ │ │ │ └── foo
│ │ │ │ └── Foo.java
│ │ │ ├── foobar
│ │ │ └── protos
│ │ │ │ ├── bar
│ │ │ │ └── Bar.java
│ │ │ │ └── foo
│ │ │ │ └── Foo.java
│ │ │ ├── services
│ │ │ ├── HeresAllTheDataRequest.java
│ │ │ ├── HeresAllTheDataResponse.java
│ │ │ ├── LetsDataRequest.java
│ │ │ ├── LetsDataResponse.java
│ │ │ └── anotherpackage
│ │ │ │ ├── SendDataRequest.java
│ │ │ │ └── SendDataResponse.java
│ │ │ └── wire
│ │ │ ├── ModelEvaluation.java
│ │ │ ├── map
│ │ │ ├── Mappy.java
│ │ │ ├── MappyTwo.java
│ │ │ └── Thing.java
│ │ │ ├── proto3
│ │ │ └── java
│ │ │ │ ├── all_types
│ │ │ │ └── AllTypes.java
│ │ │ │ └── person
│ │ │ │ └── Person.java
│ │ │ └── protos
│ │ │ ├── ChildPackage.java
│ │ │ ├── RepeatedPackedAndMap.java
│ │ │ ├── alltypes
│ │ │ └── AllTypes.java
│ │ │ ├── custom_options
│ │ │ ├── EnumOptionOption.java
│ │ │ ├── EnumValueOptionOption.java
│ │ │ ├── FooBar.java
│ │ │ ├── MessageWithOptions.java
│ │ │ ├── MethodOptionOneOption.java
│ │ │ ├── MyFieldOptionFiveOption.java
│ │ │ ├── MyFieldOptionOneOption.java
│ │ │ ├── MyFieldOptionSevenOption.java
│ │ │ ├── MyFieldOptionSixOption.java
│ │ │ ├── MyFieldOptionThreeOption.java
│ │ │ ├── MyFieldOptionTwoOption.java
│ │ │ ├── MyMessageOptionEightOption.java
│ │ │ ├── MyMessageOptionFourOption.java
│ │ │ ├── MyMessageOptionNineOption.java
│ │ │ ├── MyMessageOptionSevenOption.java
│ │ │ ├── MyMessageOptionTwoOption.java
│ │ │ ├── RepeatedEnumValueOptionOneOption.java
│ │ │ ├── RepeatedEnumValueOptionOption.java
│ │ │ ├── RepeatedEnumValueOptionTwoOption.java
│ │ │ └── ServiceOptionOneOption.java
│ │ │ ├── depend_on_kotlin_option
│ │ │ └── Letter.java
│ │ │ ├── edgecases
│ │ │ ├── NoFields.java
│ │ │ ├── OneBytesField.java
│ │ │ ├── OneField.java
│ │ │ └── Recursive.java
│ │ │ ├── foreign
│ │ │ ├── ForeignEnum.java
│ │ │ ├── ForeignEnumValueOptionOption.java
│ │ │ └── ForeignMessage.java
│ │ │ ├── namecollisions
│ │ │ └── Message.java
│ │ │ ├── one_extension
│ │ │ ├── Foo.java
│ │ │ └── OneExtension.java
│ │ │ ├── oneof
│ │ │ └── OneOfMessage.java
│ │ │ ├── person
│ │ │ └── Person.java
│ │ │ ├── redacted
│ │ │ ├── NotRedacted.java
│ │ │ ├── RedactedChild.java
│ │ │ ├── RedactedCycleA.java
│ │ │ ├── RedactedCycleB.java
│ │ │ ├── RedactedExtension.java
│ │ │ ├── RedactedFields.java
│ │ │ ├── RedactedRepeated.java
│ │ │ └── RedactedRequired.java
│ │ │ ├── roots
│ │ │ ├── A.java
│ │ │ ├── B.java
│ │ │ ├── C.java
│ │ │ ├── D.java
│ │ │ ├── E.java
│ │ │ ├── G.java
│ │ │ ├── H.java
│ │ │ ├── I.java
│ │ │ ├── J.java
│ │ │ ├── K.java
│ │ │ ├── TheRequest.java
│ │ │ ├── TheResponse.java
│ │ │ └── UnnecessaryResponse.java
│ │ │ ├── simple
│ │ │ ├── ExternalMessage.java
│ │ │ └── SimpleMessage.java
│ │ │ ├── single_level
│ │ │ ├── Bar.java
│ │ │ ├── Bars.java
│ │ │ ├── Foo.java
│ │ │ └── Foos.java
│ │ │ └── unknownfields
│ │ │ ├── EnumVersionOne.java
│ │ │ ├── EnumVersionTwo.java
│ │ │ ├── NestedVersionOne.java
│ │ │ ├── NestedVersionTwo.java
│ │ │ ├── VersionOne.java
│ │ │ └── VersionTwo.java
│ └── squareup
│ │ ├── options
│ │ └── misc
│ │ │ ├── HideOption.java
│ │ │ ├── HttpOneOnlyOption.java
│ │ │ ├── MessageExportEnabledOption.java
│ │ │ ├── RelevantOption.java
│ │ │ ├── TextAlignmentOption.java
│ │ │ └── UnusedOption.java
│ │ └── protos
│ │ ├── extension_collision
│ │ └── CollisionSubject.java
│ │ ├── extension_collision_1
│ │ ├── AOption.java
│ │ └── BOption.java
│ │ ├── extension_collision_2
│ │ ├── AOption.java
│ │ └── COption.java
│ │ ├── opaque_types
│ │ └── OuterOpaqueType.java
│ │ └── packed_encoding
│ │ ├── EmbeddedMessage.java
│ │ └── OuterMessage.java
└── proto-kotlin
│ └── com
│ └── squareup
│ └── wire
│ └── protos
│ └── custom_options
│ └── FooBar2.kt
├── jvmJsonJavaTest
└── proto-java
│ ├── com
│ └── squareup
│ │ └── wire
│ │ ├── proto2
│ │ └── alltypes
│ │ │ └── AllTypes.java
│ │ └── proto3
│ │ └── alltypes
│ │ └── AllTypes.java
│ └── squareup
│ └── proto3
│ ├── All32.java
│ ├── All64.java
│ ├── AllStructs.java
│ ├── AllWrappers.java
│ ├── BuyOneGetOnePromotion.java
│ ├── CamelCase.java
│ ├── FreeDrinkPromotion.java
│ ├── FreeGarlicBreadPromotion.java
│ ├── MapTypes.java
│ ├── Pizza.java
│ └── PizzaDelivery.java
├── jvmJsonKotlinTest
└── proto-kotlin
│ ├── com
│ └── squareup
│ │ └── wire
│ │ ├── proto2
│ │ └── alltypes
│ │ │ └── AllTypes.kt
│ │ └── proto3
│ │ └── alltypes
│ │ └── AllTypes.kt
│ └── squareup
│ └── proto3
│ ├── All32.kt
│ ├── All64.kt
│ ├── AllStructs.kt
│ ├── AllWrappers.kt
│ ├── BuyOneGetOnePromotion.kt
│ ├── CamelCase.kt
│ ├── FreeDrinkPromotion.kt
│ ├── FreeGarlicBreadPromotion.kt
│ ├── MapTypes.kt
│ ├── Pizza.kt
│ └── PizzaDelivery.kt
├── jvmJsonTest
├── README.md
└── kotlin
│ └── com
│ └── squareup
│ └── wire
│ ├── WireJsonTest.kt
│ └── internal
│ ├── DurationJsonFormatterTest.kt
│ └── InstantJsonFormatterTest.kt
├── jvmKotlinAndroidTest
└── proto-kotlin
│ └── com
│ └── squareup
│ └── wire
│ └── protos
│ └── kotlin
│ └── person
│ └── Person.kt
├── jvmKotlinInteropTest
├── kotlin
│ └── com
│ │ └── squareup
│ │ └── wire
│ │ ├── AnnotationsTestAgainstKotlin.kt
│ │ ├── KotlinMapTest.kt
│ │ ├── KotlinRepeatedTest.kt
│ │ ├── OneOfTest.kt
│ │ ├── ProtoAdapterTest.kt
│ │ ├── RecursiveMapTest.kt
│ │ ├── SerializableTest.kt
│ │ ├── TestAllTypes.kt
│ │ ├── TestAllTypesData.kt
│ │ └── UnknownFieldsTest.kt
└── proto-kotlin
│ ├── ModelEvaluation.kt
│ ├── com
│ └── squareup
│ │ └── wire
│ │ └── protos
│ │ ├── custom_options
│ │ ├── EnumOptionOption.kt
│ │ ├── EnumValueOptionOption.kt
│ │ ├── FooBar.kt
│ │ ├── GrpcServiceWithOptionsClient.kt
│ │ ├── MessageWithOptions.kt
│ │ ├── MethodOptionOneOption.kt
│ │ ├── MyFieldOptionFiveOption.kt
│ │ ├── MyFieldOptionOneOption.kt
│ │ ├── MyFieldOptionSevenOption.kt
│ │ ├── MyFieldOptionSixOption.kt
│ │ ├── MyFieldOptionThreeOption.kt
│ │ ├── MyFieldOptionTwoOption.kt
│ │ ├── MyMessageOptionEightOption.kt
│ │ ├── MyMessageOptionFourOption.kt
│ │ ├── MyMessageOptionNineOption.kt
│ │ ├── MyMessageOptionSevenOption.kt
│ │ ├── MyMessageOptionTwoOption.kt
│ │ ├── RepeatedEnumValueOptionOneOption.kt
│ │ ├── RepeatedEnumValueOptionTwoOption.kt
│ │ ├── ServiceOptionOneOption.kt
│ │ └── ServiceWithOptionsClient.kt
│ │ ├── depend_on_kotlin_option
│ │ └── Letter.java
│ │ ├── kotlin
│ │ ├── DeprecatedProto.kt
│ │ ├── Form.kt
│ │ ├── MessageUsingMultipleEnums.kt
│ │ ├── MessageWithStatus.kt
│ │ ├── NoFields.kt
│ │ ├── OneOfMessage.kt
│ │ ├── OtherMessageWithStatus.kt
│ │ ├── Percents.kt
│ │ ├── alltypes
│ │ │ └── AllTypes.kt
│ │ ├── foreign
│ │ │ ├── ForeignEnum.kt
│ │ │ ├── ForeignEnumValueOptionOption.kt
│ │ │ └── ForeignMessage.kt
│ │ ├── map
│ │ │ ├── Mappy.kt
│ │ │ ├── MappyTwo.kt
│ │ │ └── Thing.kt
│ │ ├── person
│ │ │ └── Person.kt
│ │ ├── redacted
│ │ │ └── RedactedOneOf.kt
│ │ ├── repeated
│ │ │ ├── Repeated.kt
│ │ │ └── Thing.kt
│ │ ├── services
│ │ │ ├── GrpcNoPackageServiceClient.kt
│ │ │ ├── GrpcSomeServiceClient.kt
│ │ │ ├── NoPackageRequest.kt
│ │ │ ├── NoPackageResponse.kt
│ │ │ ├── NoPackageServiceClient.kt
│ │ │ ├── SomeRequest.kt
│ │ │ ├── SomeResponse.kt
│ │ │ ├── SomeServiceClient.kt
│ │ │ └── all_flags_on
│ │ │ │ ├── SomeRequest.kt
│ │ │ │ ├── SomeResponse.kt
│ │ │ │ └── SomeServiceSomeMethodSomeSuffix.kt
│ │ ├── simple
│ │ │ ├── ExternalMessage.kt
│ │ │ └── SimpleMessage.kt
│ │ └── unknownfields
│ │ │ ├── EnumVersionOne.kt
│ │ │ ├── EnumVersionTwo.kt
│ │ │ ├── NestedVersionOne.kt
│ │ │ ├── NestedVersionTwo.kt
│ │ │ ├── VersionOne.kt
│ │ │ └── VersionTwo.kt
│ │ └── usesany
│ │ └── UsesAny.kt
│ └── squareup
│ ├── Easter.kt
│ ├── EasterAnimal.kt
│ └── protos
│ └── packed_encoding
│ ├── EmbeddedMessage.kt
│ └── OuterMessage.kt
├── jvmKotlinProtoReader32Test
├── kotlin
│ └── com
│ │ └── squareup
│ │ └── wire
│ │ └── ProtoReader32AdapterTest.kt
└── proto-kotlin
│ └── com
│ └── squareup
│ └── wire
│ └── protos
│ └── kotlin
│ └── alltypes
│ └── AllTypes.kt
├── jvmTest
└── kotlin
│ └── com
│ └── squareup
│ └── wire
│ ├── CustomGrpcClient.kt
│ ├── IgnoreJs.kt
│ └── IgnoreNative.kt
└── nativeTest
└── kotlin
└── com
└── squareup
└── wire
├── CustomGrpcClient.kt
├── IgnoreJs.kt
└── IgnoreNative.kt
/.buildscript/prepare_mkdocs.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # The website is built using MkDocs with the Material theme.
4 | # https://squidfunk.github.io/mkdocs-material/
5 | # It requires Python to run.
6 | # Install the packages with the following command:
7 | # pip install mkdocs mkdocs-material
8 |
9 | set -ex
10 |
11 | # Generate the API docs
12 | ./gradlew dokkaHtml
13 |
14 | # Copy in special files that GitHub wants in the project root.
15 | cp CHANGELOG.md docs/changelog.md
16 | cp CONTRIBUTING.md docs/contributing.md
17 |
--------------------------------------------------------------------------------
/.buildscript/restore_v2_docs.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # Commit 0e1192aaa1d074c9703748fae100daef707218d4 contains Javadoc for Wire 2.x. Those should be
4 | # present on gh-pages and published along with the other website content, but if for some reason
5 | # they have to be re-added to gh-pages - run this script locally.
6 |
7 | set -ex
8 |
9 | DIR=temp-clone
10 |
11 | # Delete any existing temporary website clone
12 | rm -rf $DIR
13 |
14 | # Clone the current repo into temp folder
15 | git clone . $DIR
16 |
17 | # Move working directory into temp folder
18 | cd $DIR
19 |
20 | # Restore docs from 2.x
21 | git checkout 0e1192aaa1d074c9703748fae100daef707218d4
22 | mkdir -p ../site
23 | mv ./2.x ../site/2.x
24 |
25 | # Delete our temp folder
26 | cd ..
27 | rm -rf $DIR
28 |
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | insert_final_newline=true
5 | end_of_line=lf
6 | charset=utf-8
7 | indent_size=2
8 | trim_trailing_whitespace=true
9 |
10 | [*.{kt,kts}]
11 | ij_kotlin_allow_trailing_comma=true
12 | ij_kotlin_allow_trailing_comma_on_call_site=true
13 | ij_kotlin_imports_layout=*
--------------------------------------------------------------------------------
/.github/workflows/.java-version:
--------------------------------------------------------------------------------
1 | 23
2 |
--------------------------------------------------------------------------------
/.github/workflows/gradle-wrapper.yaml:
--------------------------------------------------------------------------------
1 | name: gradle-wrapper
2 |
3 | on:
4 | pull_request:
5 | paths:
6 | - 'gradlew'
7 | - 'gradlew.bat'
8 | - 'gradle/wrapper/**'
9 |
10 | jobs:
11 | validate:
12 | runs-on: ubuntu-latest
13 | steps:
14 | - uses: actions/checkout@v4
15 | - uses: gradle/actions/wrapper-validation@v4
16 |
17 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # IDEA
2 | .idea
3 | *.iml
4 | classes
5 |
6 | # Eclipse
7 | .classpath
8 | .project
9 |
10 | gen/
11 | out/
12 |
13 | # Kotlin
14 | .kotlin
15 |
16 | # Gradle
17 | .gradle
18 | build
19 | generated
20 | gradlew
21 | gradlew.bat
22 |
23 | # Maven
24 | plugin*.xml
25 |
26 | # SPM
27 | .build
28 | .swiftpm
29 |
30 | # Special Mkdocs files
31 | docs/3.x
32 | docs/changelog.md
33 | docs/contributing.md
34 |
35 | local.properties
36 |
37 | # for dependency watching with https://github.com/JakeWharton/dependency-watch/
38 | watched-deps
39 | deps-watch.toml
40 |
41 |
--------------------------------------------------------------------------------
/BUG-BOUNTY.md:
--------------------------------------------------------------------------------
1 | Serious about security
2 | ======================
3 |
4 | Square recognizes the important contributions the security research community
5 | can make. We therefore encourage reporting security issues with the code
6 | contained in this repository.
7 |
8 | If you believe you have discovered a security vulnerability, please follow the
9 | guidelines at https://bugcrowd.com/squareopensource
10 |
11 |
--------------------------------------------------------------------------------
/build-support/settings/README.md:
--------------------------------------------------------------------------------
1 | # Wire Settings Plugin
2 |
3 | This is a Gradle plugin applied to the root `settings.gradle` via `includeBuild`
4 | which automatically adds the `build-support/` Gradle plugin to all projects.
5 |
--------------------------------------------------------------------------------
/build-support/settings/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | `kotlin-dsl`
3 | `java-gradle-plugin`
4 | }
5 |
6 | gradlePlugin {
7 | plugins {
8 | create("wireSettings") {
9 | id = "com.squareup.wire.settings"
10 | displayName = "Wire settings plugin"
11 | description = "Gradle plugin for Wire build settings"
12 | implementationClass = "com.squareup.wire.buildsettings.WireSettingsPlugin"
13 | }
14 | }
15 | }
16 |
17 | repositories {
18 | mavenCentral()
19 | gradlePluginPortal()
20 | google()
21 | }
22 |
--------------------------------------------------------------------------------
/build-support/settings/settings.gradle.kts:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/build-support/settings/settings.gradle.kts
--------------------------------------------------------------------------------
/docs/images/gradle_basic@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/docs/images/gradle_basic@2x.png
--------------------------------------------------------------------------------
/docs/images/gradle_inputs_and_outputs@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/docs/images/gradle_inputs_and_outputs@2x.png
--------------------------------------------------------------------------------
/docs/images/gradle_library@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/docs/images/gradle_library@2x.png
--------------------------------------------------------------------------------
/docs/images/gradle_pruning@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/docs/images/gradle_pruning@2x.png
--------------------------------------------------------------------------------
/docs/images/icon-square.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/docs/images/icon-square.png
--------------------------------------------------------------------------------
/docs/images/logo-square.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/docs/images/logo-square.png
--------------------------------------------------------------------------------
/docs/security.md:
--------------------------------------------------------------------------------
1 | Security Policy
2 | ===============
3 |
4 | ## Supported Versions
5 |
6 | | Version | Supported |
7 | |---------| ---------- |
8 | | 4.x | ✅ |
9 | | 3.x | ✅ |
10 | | 2.x | |
11 | | 1.x | |
12 |
13 |
14 | ## Reporting a Vulnerability
15 |
16 | Square recognizes the important contributions the security research community
17 | can make. We therefore encourage reporting security issues with the code
18 | contained in this repository.
19 |
20 | If you believe you have discovered a security vulnerability, please follow the
21 | guidelines at https://bugcrowd.com/squareopensource
22 |
--------------------------------------------------------------------------------
/gradle.properties:
--------------------------------------------------------------------------------
1 | org.gradle.jvmargs='-Dfile.encoding=UTF-8'
2 |
3 | GROUP=com.squareup.wire
4 | VERSION_NAME=5.4.0-SNAPSHOT
5 |
6 | # Publishing SHA 256 and 512 hashes of maven-metadata is not supported by Sonatype and Nexus.
7 | # See https://github.com/gradle/gradle/issues/11308 and https://issues.sonatype.org/browse/NEXUS-21802
8 | systemProp.org.gradle.internal.publish.checksums.insecure=true
9 |
10 | kotlin.js.compiler=ir
11 |
12 | # Hide warnings that Kotlin Multiplatform Projects are an Alpha feature.
13 | kotlin.mpp.stability.nowarn=true
14 |
15 | # For the gRPC client sample.
16 | android.useAndroidX=true
17 |
18 | # Signals to our own plugin that we are building within the repo.
19 | com.squareup.wire.internal=true
20 |
--------------------------------------------------------------------------------
/gradle/license-header.txt:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (C) $YEAR Square, Inc.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 |
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionBase=GRADLE_USER_HOME
2 | distributionPath=wrapper/dists
3 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.12.1-all.zip
4 | networkTimeout=10000
5 | validateDistributionUrl=true
6 | zipStoreBase=GRADLE_USER_HOME
7 | zipStorePath=wrapper/dists
8 |
--------------------------------------------------------------------------------
/samples/android-app-java-sample/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | id("com.android.application")
3 | id("com.squareup.wire")
4 | }
5 |
6 | wire {
7 | java {
8 | android = true
9 | }
10 | }
11 |
12 | dependencies {
13 | implementation(libs.androidx.appcompat)
14 | implementation(libs.androidx.constraintLayout)
15 | }
16 |
17 | buildscript {
18 | repositories {
19 | mavenCentral()
20 | google()
21 | }
22 | dependencies {
23 | classpath(libs.pluginz.android)
24 | classpath("com.squareup.wire:wire-gradle-plugin")
25 | }
26 | }
27 |
28 | android {
29 | namespace = "com.squareup.wire.android.app.java"
30 | }
31 |
--------------------------------------------------------------------------------
/samples/android-app-java-sample/src/main/res/drawable/border_gb.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
--------------------------------------------------------------------------------
/samples/android-app-java-sample/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/android-app-java-sample/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/android-app-java-sample/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-java-sample/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/samples/android-app-java-sample/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-java-sample/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/samples/android-app-java-sample/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-java-sample/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/samples/android-app-java-sample/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-java-sample/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/samples/android-app-java-sample/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-java-sample/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/samples/android-app-java-sample/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-java-sample/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/samples/android-app-java-sample/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-java-sample/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/samples/android-app-java-sample/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-java-sample/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/samples/android-app-java-sample/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-java-sample/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/samples/android-app-java-sample/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-java-sample/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/samples/android-app-java-sample/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #008577
4 | #00574B
5 | #D81B60
6 |
7 |
--------------------------------------------------------------------------------
/samples/android-app-java-sample/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | SomeText JavaOnly
3 |
4 |
--------------------------------------------------------------------------------
/samples/android-app-java-sample/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
--------------------------------------------------------------------------------
/samples/android-app-kotlin-minsdk-sample/src/main/res/drawable/border_gb.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
--------------------------------------------------------------------------------
/samples/android-app-kotlin-minsdk-sample/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-kotlin-minsdk-sample/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/samples/android-app-kotlin-minsdk-sample/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-kotlin-minsdk-sample/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/samples/android-app-kotlin-minsdk-sample/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #008577
4 | #00574B
5 | #D81B60
6 |
7 |
--------------------------------------------------------------------------------
/samples/android-app-kotlin-minsdk-sample/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | SomeText Kotlin MinSDK
3 |
4 |
--------------------------------------------------------------------------------
/samples/android-app-kotlin-minsdk-sample/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
--------------------------------------------------------------------------------
/samples/android-app-kotlin-sample/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | id("com.android.application")
3 | id("org.jetbrains.kotlin.android")
4 | id("com.squareup.wire")
5 | }
6 |
7 | wire {
8 | kotlin {
9 | android = true
10 | }
11 | }
12 |
13 | dependencies {
14 | implementation(libs.androidx.appcompat)
15 | implementation(libs.androidx.constraintLayout)
16 | }
17 |
18 | buildscript {
19 | repositories {
20 | mavenCentral()
21 | google()
22 | }
23 | dependencies {
24 | classpath(libs.pluginz.android)
25 | classpath("com.squareup.wire:wire-gradle-plugin")
26 | }
27 | }
28 |
29 | android {
30 | namespace = "com.squareup.wire.android.app.kotlin"
31 | }
32 |
--------------------------------------------------------------------------------
/samples/android-app-kotlin-sample/src/main/res/drawable/border_gb.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
--------------------------------------------------------------------------------
/samples/android-app-kotlin-sample/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/android-app-kotlin-sample/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/android-app-kotlin-sample/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-kotlin-sample/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/samples/android-app-kotlin-sample/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-kotlin-sample/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/samples/android-app-kotlin-sample/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-kotlin-sample/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/samples/android-app-kotlin-sample/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-kotlin-sample/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/samples/android-app-kotlin-sample/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-kotlin-sample/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/samples/android-app-kotlin-sample/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-kotlin-sample/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/samples/android-app-kotlin-sample/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-kotlin-sample/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/samples/android-app-kotlin-sample/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-kotlin-sample/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/samples/android-app-kotlin-sample/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-kotlin-sample/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/samples/android-app-kotlin-sample/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-kotlin-sample/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/samples/android-app-kotlin-sample/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #008577
4 | #00574B
5 | #D81B60
6 |
7 |
--------------------------------------------------------------------------------
/samples/android-app-kotlin-sample/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | SomeText JavaOnly
3 |
4 |
--------------------------------------------------------------------------------
/samples/android-app-kotlin-sample/src/main/res/values/styles.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
--------------------------------------------------------------------------------
/samples/android-app-variants-sample/src/main/res/layout/activity_main.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/samples/android-app-variants-sample/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/android-app-variants-sample/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/android-app-variants-sample/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-variants-sample/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/samples/android-app-variants-sample/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-variants-sample/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/samples/android-app-variants-sample/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-variants-sample/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/samples/android-app-variants-sample/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-variants-sample/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/samples/android-app-variants-sample/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-variants-sample/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/samples/android-app-variants-sample/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-variants-sample/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/samples/android-app-variants-sample/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-variants-sample/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/samples/android-app-variants-sample/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-variants-sample/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/samples/android-app-variants-sample/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-variants-sample/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/samples/android-app-variants-sample/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/samples/android-app-variants-sample/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/samples/android-app-variants-sample/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #FFBB86FC
4 | #FF6200EE
5 | #FF3700B3
6 | #FF03DAC5
7 | #FF018786
8 | #FF000000
9 | #FFFFFFFF
10 |
--------------------------------------------------------------------------------
/samples/android-app-variants-sample/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | MyVariantSample
3 |
--------------------------------------------------------------------------------
/samples/android-lib-java-sample/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | id("com.android.library")
3 | id("com.squareup.wire")
4 | }
5 |
6 | wire {
7 | java {
8 | android = true
9 | }
10 | }
11 |
12 | buildscript {
13 | repositories {
14 | mavenCentral()
15 | google()
16 | }
17 | dependencies {
18 | classpath(libs.pluginz.android)
19 | classpath("com.squareup.wire:wire-gradle-plugin")
20 | }
21 | }
22 |
23 | android {
24 | namespace = "com.squareup.wire.android.lib.java"
25 | }
26 |
--------------------------------------------------------------------------------
/samples/android-lib-kotlin-sample/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | id("com.android.library")
3 | id("org.jetbrains.kotlin.android")
4 | id("com.squareup.wire")
5 | }
6 |
7 | wire {
8 | kotlin {
9 | android = true
10 | javaInterop = true
11 | }
12 | }
13 |
14 | buildscript {
15 | repositories {
16 | mavenCentral()
17 | google()
18 | }
19 | dependencies {
20 | classpath(libs.pluginz.android)
21 | classpath("com.squareup.wire:wire-gradle-plugin")
22 | }
23 | }
24 |
25 | android {
26 | namespace = "com.squareup.wire.android.lib.kotlin"
27 | }
28 |
--------------------------------------------------------------------------------
/samples/js/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | kotlin("js")
3 | id("com.squareup.wire")
4 | }
5 |
6 | repositories {
7 | mavenCentral()
8 | }
9 |
10 | kotlin {
11 | js(IR) {
12 | binaries.executable()
13 | browser {
14 | commonWebpackConfig {
15 | cssSupport {
16 | enabled.set(true)
17 | }
18 | }
19 | }
20 | nodejs {
21 | }
22 | }
23 | }
24 |
25 | wire {
26 | protoLibrary = true
27 |
28 | kotlin {
29 | buildersOnly = true
30 | }
31 | }
32 |
33 |
34 | buildscript {
35 | repositories {
36 | mavenCentral()
37 | }
38 | dependencies {
39 | classpath("com.squareup.wire:wire-gradle-plugin")
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/samples/js/src/main/proto/human/person.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto3";
2 |
3 | package human;
4 |
5 | message Person {
6 | string name = 1;
7 | PhoneNumber phone_number = 2;
8 |
9 | message PhoneNumber {
10 | string area = 1;
11 | string number = 2;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/samples/multi-target/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | kotlin("multiplatform")
3 | id("com.squareup.wire")
4 | }
5 |
6 | repositories {
7 | mavenCentral()
8 | }
9 |
10 | wire {
11 | root("human.Person")
12 |
13 | kotlin {
14 | javaInterop = true
15 | }
16 | }
17 |
18 | kotlin {
19 | jvm { }
20 |
21 | js(IR) {
22 | nodejs()
23 | }
24 |
25 | iosArm64 {
26 | binaries.framework {
27 | baseName = "shared"
28 | isStatic = true
29 | }
30 | }
31 |
32 | sourceSets {
33 | val commonMain by getting
34 | }
35 | }
36 |
37 |
38 | buildscript {
39 | repositories {
40 | mavenCentral()
41 | }
42 | dependencies {
43 | classpath("com.squareup.wire:wire-gradle-plugin")
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/samples/multi-target/src/commonMain/proto/human/person.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto3";
2 |
3 | package human;
4 |
5 | message Person {
6 | string name = 1;
7 | PhoneNumber phone_number = 2;
8 |
9 | message PhoneNumber {
10 | string area = 1;
11 | string number = 2;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/samples/native/src/commonMain/proto/human/person.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto3";
2 |
3 | package human;
4 |
5 | message Person {
6 | string name = 1;
7 | PhoneNumber phone_number = 2;
8 |
9 | message PhoneNumber {
10 | string area = 1;
11 | string number = 2;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/samples/simple-sample/rules.txt:
--------------------------------------------------------------------------------
1 | # This file is a list of proto types that should be included or excluded from code generation.
2 | #
3 | # Lines prefixed with '+' denote types which we want to generate.
4 | #
5 | #+squareup.dinosaurs.Dinosaur#name
6 |
7 | # Lines prefixed with '-' denote types to explicitly exclude from generation that would otherwise
8 | # be generated transitively from an include.
9 | #
10 | #-squareup.dinosaurs.Dinosaur#name
--------------------------------------------------------------------------------
/samples/simple-sample/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/samples/simple-sample/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/samples/wire-codegen-sample/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | kotlin("jvm")
3 | }
4 |
5 | dependencies {
6 | implementation(projects.wireRuntime)
7 | implementation(projects.wireSchema)
8 | implementation(projects.wireJavaGenerator)
9 | implementation(projects.wireCompiler)
10 | implementation(libs.okio.core)
11 | implementation(libs.guava)
12 | implementation(libs.javapoet)
13 | testImplementation(libs.junit)
14 | testImplementation(libs.assertk)
15 | }
16 |
--------------------------------------------------------------------------------
/samples/wire-grpc-sample/client/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | id("com.android.application")
3 | id("org.jetbrains.kotlin.android")
4 | }
5 |
6 | dependencies {
7 | implementation(libs.androidx.compose)
8 | implementation(libs.androidx.ktx)
9 | implementation(libs.contour)
10 | implementation(libs.contour)
11 | implementation(libs.kotlin.coroutines.android)
12 | implementation(projects.wireGrpcClient)
13 | implementation(projects.samples.wireGrpcSample.protos)
14 | }
15 |
16 | android {
17 | namespace = "com.squareup.wire.whiteboard"
18 | }
19 |
--------------------------------------------------------------------------------
/samples/wire-grpc-sample/client/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/samples/wire-grpc-sample/client/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/samples/wire-grpc-sample/client/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | Whiteboard
3 |
4 |
--------------------------------------------------------------------------------
/samples/wire-grpc-sample/protos/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | kotlin("jvm")
3 | id("com.squareup.wire")
4 | }
5 |
6 | wire {
7 | protoLibrary = true
8 |
9 | kotlin {
10 | rpcCallStyle = "suspending"
11 | rpcRole = "client"
12 | singleMethodServices = false
13 | }
14 | }
15 |
16 | dependencies {
17 | implementation(projects.wireGrpcClient)
18 | }
19 |
--------------------------------------------------------------------------------
/samples/wire-grpc-sample/server/src/main/resources/whiteboard-common.yaml:
--------------------------------------------------------------------------------
1 | web:
2 | port: 8080
3 | idle_timeout: 300000
4 | http2: true
5 | ssl:
6 | port: 8443
7 | mutual_auth: DESIRED
8 | cert_store:
9 | resource: classpath:/ssl/server_cert_key_combo.pem
10 | passphrase: doesntmatter
11 | format: PEM
12 | trust_store:
13 | resource: classpath:/ssl/server_cert.pem
14 | format: PEM
15 |
--------------------------------------------------------------------------------
/wire-benchmarks/README.md:
--------------------------------------------------------------------------------
1 | Wire Benchmarks
2 | ===============
3 |
4 | This module contains JMH microbenchmarks. Run benchmarks locally with Gradle:
5 |
6 | ```
7 | $ ./gradlew jmh
8 | ```
9 |
10 | Select and configure benchmarks in the `jmh` section of `wire-benchmarks/build.gradle.kts`.
11 |
--------------------------------------------------------------------------------
/wire-benchmarks/src/main/resources/medium_value.bytes:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/wire-benchmarks/src/main/resources/medium_value.bytes
--------------------------------------------------------------------------------
/wire-golden-files/README.md:
--------------------------------------------------------------------------------
1 | Wire Golden Files
2 | ===============
3 |
4 | This module contains golden files of generated proto types and services. This is meant to be a
5 | replacement of `gen-tests.gradle.kts` which relies on `WireCompiler` instead of going through the
6 | Wire Gradle plugin.
7 |
--------------------------------------------------------------------------------
/wire-golden-files/src/main/proto/squareup/wire/mutable_types.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.wire.mutable;
4 |
5 | message Header {
6 | optional uint64 id = 1;
7 | }
8 |
9 | message Payload {
10 | enum Type {
11 | TYPE_TEXT_PLAIN = 1;
12 | TYPE_TEXT_HTML = 2;
13 | TYPE_IMAGE_JPEG = 3;
14 | TYPE_IMAGE_PNG = 4;
15 | TYPE_UNKNOWN = 10;
16 | }
17 | optional string preamble = 1;
18 | optional bytes content = 2;
19 | optional Type type = 3;
20 | repeated string footers = 4;
21 | }
22 |
23 | message Packet {
24 | optional Header header = 1;
25 | repeated Payload payload = 2;
26 | }
27 |
--------------------------------------------------------------------------------
/wire-gradle-plugin-playground/README.md:
--------------------------------------------------------------------------------
1 | ## Wire Gradle Plugin Playground
2 |
3 | This module is to allow a simple usage of the Wire Gradle plugin for debug purposes. This is useful
4 | when developing a new feature on the plugin or debugging a bug. Unit tests should not live in this
5 | module but in the Wire Gradle plugin own module' test suite.
6 |
7 | The `protos.jar` file under `src/main/proto` contains two files:
8 | ```
9 | squareup/geology/period.proto
10 | squareup/dinosaurs/dinosaur.proto
11 | ```
12 |
--------------------------------------------------------------------------------
/wire-gradle-plugin-playground/src/main/proto/protos.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/wire-gradle-plugin-playground/src/main/proto/protos.jar
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/libs/com/squareup/wire/dinosaur/all-protos-plus-martians/1.0/all-protos-plus-martians-1.0.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/wire-gradle-plugin/src/test/libs/com/squareup/wire/dinosaur/all-protos-plus-martians/1.0/all-protos-plus-martians-1.0.jar
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/libs/com/squareup/wire/dinosaur/all-protos-plus-martians/1.0/all-protos-plus-martians-1.0.pom:
--------------------------------------------------------------------------------
1 |
2 |
4 | 4.0.0
5 | com.squareup.wire.dinosaur
6 | all-protos-plus-martians
7 | 1.0
8 |
9 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/libs/com/squareup/wire/dinosaur/all-protos-plus-martians/maven-metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | com.squareup.wire.dinosaur
4 | all-protos-plus-martians
5 |
6 | 1.0
7 |
8 | 1.0
9 |
10 | 20191222023454
11 |
12 |
13 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/libs/com/squareup/wire/dinosaur/all-protos/1.0/all-protos-1.0.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/wire-gradle-plugin/src/test/libs/com/squareup/wire/dinosaur/all-protos/1.0/all-protos-1.0.jar
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/libs/com/squareup/wire/dinosaur/all-protos/1.0/all-protos-1.0.pom:
--------------------------------------------------------------------------------
1 |
2 |
4 | 4.0.0
5 | com.squareup.wire.dinosaur
6 | all-protos
7 | 1.0
8 |
9 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/libs/com/squareup/wire/dinosaur/all-protos/maven-metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | com.squareup.wire.dinosaur
4 | all-protos
5 |
6 | 1.0
7 |
8 | 1.0
9 |
10 | 20191222023454
11 |
12 |
13 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/libs/com/squareup/wire/dinosaur/only-dinosaur/1.0/only-dinosaur-1.0.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/wire-gradle-plugin/src/test/libs/com/squareup/wire/dinosaur/only-dinosaur/1.0/only-dinosaur-1.0.jar
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/libs/com/squareup/wire/dinosaur/only-dinosaur/1.0/only-dinosaur-1.0.pom:
--------------------------------------------------------------------------------
1 |
2 |
4 | 4.0.0
5 | com.squareup.wire.dinosaur
6 | only-dinosaur
7 | 1.0
8 | POM was created from install:install-file
9 |
10 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/libs/com/squareup/wire/dinosaur/only-dinosaur/maven-metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | com.squareup.wire.dinosaur
4 | only-dinosaur
5 |
6 | 1.0
7 |
8 | 1.0
9 |
10 | 20191222023530
11 |
12 |
13 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/cache-include-paths-1/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'org.jetbrains.kotlin.jvm'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | // This file should be kept in sync with `cache-include-paths-2/build.gradle` with the exception of
7 | // the new `include` statement inside `sourcePath`.
8 |
9 | wire {
10 | sourcePath {
11 | srcJar("src/main/proto/protos.jar")
12 | include("squareup/geology/period.proto")
13 | }
14 |
15 | kotlin {
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/cache-include-paths-1/settings.gradle:
--------------------------------------------------------------------------------
1 | buildCache {
2 | local {
3 | directory = new File(rootDir, '../.cache-include-paths-build-cache')
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/cache-include-paths-1/src/main/proto/protos.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/wire-gradle-plugin/src/test/projects/cache-include-paths-1/src/main/proto/protos.jar
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/cache-include-paths-2/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'org.jetbrains.kotlin.jvm'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | // This file should be kept in sync with `cache-include-paths-1/build.gradle` with the exception of
7 | // the missing `include` statement inside `sourcePath`.
8 |
9 | wire {
10 | sourcePath {
11 | srcJar("src/main/proto/protos.jar")
12 | include("squareup/geology/period.proto")
13 | include("squareup/dinosaurs/dinosaur.proto")
14 | }
15 |
16 | kotlin {
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/cache-include-paths-2/settings.gradle:
--------------------------------------------------------------------------------
1 | buildCache {
2 | local {
3 | directory = new File(rootDir, '../.cache-include-paths-build-cache')
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/cache-include-paths-2/src/main/proto/protos.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/wire-gradle-plugin/src/test/projects/cache-include-paths-2/src/main/proto/protos.jar
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/cache-relocation-1/settings.gradle:
--------------------------------------------------------------------------------
1 | buildCache {
2 | local {
3 | directory = new File(rootDir, '../.relocation-build-cache')
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/cache-relocation-1/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/cache-relocation-2/settings.gradle:
--------------------------------------------------------------------------------
1 | buildCache {
2 | local {
3 | directory = new File(rootDir, '../.relocation-build-cache')
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/cache-relocation-2/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/configuration-cache-failure/gradle.properties:
--------------------------------------------------------------------------------
1 | org.gradle.caching=false
2 | org.gradle.unsafe.configuration-cache=true
3 | org.gradle.configuration-cache=true
4 | VERSION_NAME=5.4.0-SNAPSHOT
5 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/configuration-cache-failure/src/main/proto/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | import "period.proto";
4 |
5 | message Dinosaur {
6 | optional Period period = 5;
7 | }
8 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/consecutive-runs/.gitignore:
--------------------------------------------------------------------------------
1 | custom
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/consecutive-runs/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | kotlin {
9 | out 'custom'
10 | }
11 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/consecutive-runs/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/custom-output-no-such-class/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | wire {
7 | sourcePath 'src/main/proto'
8 |
9 | custom {
10 | schemaHandlerFactoryClass = "NoSuchClass"
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/custom-output-no-such-class/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/custom-output/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/customize-configuration/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | // See installProtoJars task in wire-gradle-plugin/build.gradle.kts
7 | repositories {
8 | maven {
9 | url "file://${projectDir.absolutePath}/../../../../../build/localMaven"
10 | }
11 | }
12 |
13 | configurations.protoPath {
14 | dependencies.add(project.dependencies.create('com.squareup.wire.dinosaur:all-protos:+'))
15 | }
16 |
17 | wire {
18 | java {
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/customize-configuration/src/main/proto/squareup/dinosaurs/dig.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 | import "squareup/dinosaurs/dinosaur.proto";
9 |
10 | message Dig {
11 | optional string location = 1;
12 | optional squareup.geology.Period artifact_period = 2;
13 | repeated squareup.dinosaurs.Dinosaur dinosaurs = 3;
14 | }
15 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/customize-task/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | // See installProtoJars task in wire-gradle-plugin/build.gradle.kts
7 | repositories {
8 | maven {
9 | url "file://${projectDir.absolutePath}/../../../../../build/localMaven"
10 | }
11 | }
12 |
13 |
14 | configurations {
15 | dinosaurProto
16 | }
17 |
18 | dependencies {
19 | dinosaurProto("com.squareup.wire.dinosaur:all-protos:+") { transitive = false }
20 | }
21 |
22 | task helloWorld() {
23 | println 'Hello, World!'
24 | }
25 |
26 | wire {
27 | java {
28 | }
29 | }
30 |
31 | afterEvaluate {
32 | tasks.getByName("generateProtos").dependsOn helloWorld
33 | }
34 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/customize-task/src/main/proto/squareup/dinosaurs/dig.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | message Dig {
8 | optional string location = 1;
9 | }
10 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/different-java-out/.gitignore:
--------------------------------------------------------------------------------
1 | custom
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/different-java-out/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | wire {
7 | java {
8 | out 'custom'
9 | }
10 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/different-java-out/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/different-kotlin-out/.gitignore:
--------------------------------------------------------------------------------
1 | custom
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/different-kotlin-out/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | kotlin {
9 | out 'custom'
10 | }
11 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/different-kotlin-out/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/different-proto-out/.gitignore:
--------------------------------------------------------------------------------
1 | custom
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/different-proto-out/build.gradle:
--------------------------------------------------------------------------------
1 | import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
2 |
3 | plugins {
4 | id 'application'
5 | id 'org.jetbrains.kotlin.jvm'
6 | id 'com.squareup.wire'
7 | }
8 |
9 | wire {
10 | proto {
11 | out 'custom'
12 | }
13 | }
14 |
15 | tasks.withType(JavaCompile).configureEach {
16 | sourceCompatibility = JavaVersion.VERSION_11.toString()
17 | targetCompatibility = JavaVersion.VERSION_11.toString()
18 | }
19 |
20 | tasks.withType(KotlinCompile).configureEach {
21 | kotlinOptions {
22 | jvmTarget = "11"
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/different-proto-out/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/do-not-emit-wire-runtime-protos/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | java {}
9 | kotlin {}
10 | }
11 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/dry-run/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | wire{
7 | dryRun = true
8 |
9 | java{
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/dry-run/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/dry-run/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-java-options/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | java {
9 | emitDeclaredOptions = true
10 | emitAppliedOptions = true
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-java-then-emit-kotlin/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | java {
9 | // Java gets the named types only.
10 | includes = ['squareup.dinosaurs.Dinosaur']
11 | }
12 | kotlin {
13 | // Kotlin gets everything else.
14 | }
15 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-java-then-emit-kotlin/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-java-then-emit-kotlin/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-kotlin-and-emit-java/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | kotlin {
9 | // Kotlin gets the named types only.
10 | includes = ['squareup.dinosaurs.Dinosaur']
11 | }
12 | java {
13 | // Java gets everything.
14 | exclusive = false
15 | }
16 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-kotlin-and-emit-java/settings.gradle:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/wire-gradle-plugin/src/test/projects/emit-kotlin-and-emit-java/settings.gradle
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-kotlin-and-emit-java/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-kotlin-and-emit-java/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-kotlin-options/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | kotlin {
9 | emitDeclaredOptions = true
10 | emitAppliedOptions = true
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-kotlin-then-emit-java/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | kotlin {
9 | // Kotlin gets the named types only.
10 | includes = ['squareup.dinosaurs.Dinosaur']
11 | }
12 | java {
13 | // Java gets everything else.
14 | }
15 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-kotlin-then-emit-java/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-kotlin-then-emit-java/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-options-with-includes/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | kotlin {
9 | includes = ['squareup.polygons.*', 'squareup.options.*']
10 | emitDeclaredOptions = true
11 | emitAppliedOptions = true
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-options-without-conflicts/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | kotlin {
9 | emitDeclaredOptions = true
10 | emitAppliedOptions = true
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-proto-with-prune/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | prune 'squareup.geology.Period'
9 | proto {}
10 | }
11 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-proto-with-prune/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-proto-with-prune/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-proto-with-root/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | root 'squareup.geology.Period'
9 | proto {}
10 | }
11 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-proto-with-root/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-proto-with-root/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-proto/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | proto {}
9 | }
10 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-proto/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-proto/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-service-name-suffix/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | kotlin {
9 | rpcRole = 'server'
10 | nameSuffix = 'Client'
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-service-name-suffix/src/main/proto/squareup/dinosaurs/battle.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/dinosaurs/dinosaur.proto";
8 |
9 | service BattleService {
10 | rpc Fight(Dinosaur) returns (Dinosaur) {}
11 | rpc Brawl(stream Dinosaur) returns (stream Dinosaur) {}
12 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-service-name-suffix/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-service-name-suffix/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-service-none/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | kotlin {
9 | rpcRole = 'none'
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-service-none/src/main/proto/squareup/dinosaurs/battle.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/dinosaurs/dinosaur.proto";
8 |
9 | service BattleService {
10 | rpc Fight(Dinosaur) returns (Dinosaur) {}
11 | rpc Brawl(stream Dinosaur) returns (stream Dinosaur) {}
12 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-service-none/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-service-none/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-service-two-ways/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | // Blocking Server API.
9 | kotlin {
10 | exclusive = false
11 | singleMethodServices = true
12 | rpcCallStyle = 'blocking'
13 | rpcRole = 'server'
14 | }
15 | // Coroutines Client API.
16 | kotlin {
17 | excludes = ['squareup.dinosaurs.Dinosaur', 'squareup.geology.Period']
18 | exclusive = false
19 | singleMethodServices = false
20 | rpcCallStyle = 'suspending'
21 | rpcRole = 'client'
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-service-two-ways/src/main/proto/squareup/dinosaurs/battle.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/dinosaurs/dinosaur.proto";
8 |
9 | service BattleService {
10 | rpc Fight(Dinosaur) returns (Dinosaur) {}
11 | rpc Brawl(stream Dinosaur) returns (stream Dinosaur) {}
12 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-service-two-ways/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-service-two-ways/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-service/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | kotlin {
9 | }
10 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-service/src/main/proto/squareup/dinosaurs/battle.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/dinosaurs/dinosaur.proto";
8 |
9 | service BattleService {
10 | rpc Fight(Dinosaur) returns (Dinosaur) {}
11 | rpc Brawl(stream Dinosaur) returns (stream Dinosaur) {}
12 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-service/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/emit-service/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/field-prune/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | // Keeps all fields, except 'name', in 'Dinosaur'
9 | prune 'squareup.dinosaurs.Dinosaur#name'
10 |
11 | kotlin {}
12 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/field-prune/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/field-prune/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/field-prunes/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | // Keeps all fields, except 'name' and 'length_meters', in 'Dinosaur'
9 | prune 'squareup.dinosaurs.Dinosaur#name'
10 | prune 'squareup.dinosaurs.Dinosaur#length_meters'
11 |
12 | kotlin {}
13 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/field-prunes/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/field-prunes/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/field-root/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | // Keeps only 'Dinosaur#name' as the root of the object graph
9 | root 'squareup.dinosaurs.Dinosaur#name'
10 |
11 | kotlin {}
12 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/field-root/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/field-root/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/field-roots/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | // Keeps 'Dinosaur#name' and 'squareup.geology.Period' as roots of the object graph
9 | root 'squareup.dinosaurs.Dinosaur#name'
10 | root 'squareup.dinosaurs.Dinosaur#length_meters'
11 |
12 | kotlin {}
13 | }
14 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/field-roots/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/field-roots/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/field-rule-prune/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | rules 'rules.txt'
9 |
10 | kotlin {}
11 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/field-rule-prune/rules.txt:
--------------------------------------------------------------------------------
1 | # This file is a list of proto types that should be included or excluded from code generation.
2 | #
3 | # Lines prefixed with '-' denote types to explicitly exclude from generation that would otherwise
4 | # be generated transitively from an include.
5 | #
6 | -squareup.dinosaurs.Dinosaur#name
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/field-rule-prune/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/field-rule-prune/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/field-rule-root/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | rules 'rules.txt'
9 |
10 | kotlin {}
11 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/field-rule-root/rules.txt:
--------------------------------------------------------------------------------
1 | # This file is a list of proto types that should be included or excluded from code generation.
2 | #
3 | # Lines prefixed with '+' denote types which we want to generate.
4 | #
5 | +squareup.dinosaurs.Dinosaur#name
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/field-rule-root/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/field-rule-root/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/java-project-java-protos/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | mainClassName = 'com.squareup.dinosaurs.Sample'
7 |
8 | repositories {
9 | maven {
10 | url "file://${projectDir.absolutePath}/../../../../../build/localMaven"
11 | }
12 | mavenCentral()
13 | }
14 |
15 | dependencies {
16 | implementation "com.squareup.wire:wire-runtime:$VERSION_NAME"
17 | }
18 |
19 | wire{
20 | java{
21 | }
22 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/java-project-java-protos/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/java-project-java-protos/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/java-project-kotlin-protos/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/java-project-kotlin-protos/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/kotlin-enum-mode/build.gradle:
--------------------------------------------------------------------------------
1 | import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
2 |
3 | plugins {
4 | id 'application'
5 | id 'org.jetbrains.kotlin.jvm'
6 | id 'com.squareup.wire'
7 | }
8 |
9 | wire {
10 | kotlin {
11 | includes = ["enum.geology.*"]
12 | enumMode = "enum_class"
13 | }
14 | kotlin {
15 | includes = ["sealed.geology.*"]
16 | enumMode = "sealed_class"
17 | }
18 | }
19 |
20 | tasks.withType(JavaCompile).configureEach {
21 | sourceCompatibility = JavaVersion.VERSION_11.toString()
22 | targetCompatibility = JavaVersion.VERSION_11.toString()
23 | }
24 |
25 | tasks.withType(KotlinCompile).configureEach {
26 | kotlinOptions {
27 | jvmTarget = "11"
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/kotlin-multiplatform/gradle.properties:
--------------------------------------------------------------------------------
1 | VERSION_NAME=5.4.0-SNAPSHOT
2 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/kotlin-multiplatform/settings.gradle:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/wire-gradle-plugin/src/test/projects/kotlin-multiplatform/settings.gradle
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/kotlin-multiplatform/src/commonMain/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/kotlin-multiplatform/src/commonMain/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/kotlin-project-java-protos/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/kotlin-project-java-protos/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/kotlin-project-kotlin-protos/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/kotlin-project-kotlin-protos/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/kotlinsourcesjar/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | id("org.jetbrains.kotlin.jvm") version "1.9.22"
3 | id("com.squareup.wire")
4 | }
5 |
6 | wire {
7 | kotlin {
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/kotlinsourcesjar/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/lazy-configuration-resolution/dep-project/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | id("org.jetbrains.kotlin.jvm") version "1.9.22"
3 | }
4 |
5 | // The below is redundant since the kotlin plugin above does it too
6 | // but some future version of the kotlin plugin may not, and we still
7 | // want to capture this explicitly. The projectsEvaluated call fails
8 | // if a gradle mutation guard is in place, which means it fails if
9 | // wire-project forces this project to be configured while in the middle
10 | // of applying the wire plugin (i.e. because the wire plugin evaluates
11 | // the project dependency). Wire should not evaluate the project
12 | // dependency eagerly.
13 | gradle.projectsEvaluated {
14 | }
15 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/lazy-configuration-resolution/gradle.properties:
--------------------------------------------------------------------------------
1 | org.gradle.configureondemand=true
2 | VERSION_NAME=5.4.0-SNAPSHOT
3 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/lazy-configuration-resolution/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':wire-project'
2 | include ':dep-project'
3 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/lazy-configuration-resolution/wire-project/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | id("org.jetbrains.kotlin.jvm") version "1.9.22"
3 | id("com.squareup.wire")
4 | }
5 |
6 | dependencies {
7 | protoSource(project(":dep-project"))
8 | }
9 |
10 | wire {
11 | kotlin {
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/lazy-configuration-resolution/wire-project/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/listener-no-such-class/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | sourcePath 'src/main/proto'
9 |
10 | eventListenerFactoryClass("NoSuchClass")
11 |
12 | kotlin {}
13 | }
14 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/listener-no-such-class/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/listener/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/missing-kotlin-plugin/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | wire {
7 | kotlin {}
8 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/missing-kotlin-plugin/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/missing-plugin/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'com.squareup.wire'
3 | }
4 |
5 | wire{
6 | java{
7 | }
8 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/move-message/build.gradle:
--------------------------------------------------------------------------------
1 | import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
2 |
3 | plugins {
4 | id 'application'
5 | id 'org.jetbrains.kotlin.jvm'
6 | id 'com.squareup.wire'
7 | }
8 |
9 | wire {
10 | move {
11 | type = "squareup.geology.Period"
12 | targetPath = "squareup/geology/geology.proto"
13 | }
14 |
15 | proto {}
16 | }
17 |
18 | tasks.withType(JavaCompile).configureEach {
19 | sourceCompatibility = JavaVersion.VERSION_11.toString()
20 | targetCompatibility = JavaVersion.VERSION_11.toString()
21 | }
22 |
23 | tasks.withType(KotlinCompile).configureEach {
24 | kotlinOptions {
25 | jvmTarget = "11"
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/move-message/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/move-message/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/only-version/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | // Targets the version "19.9.5". This will prune:
9 | // * declarations preceding the beginning of the range (wire.until = "19.9.5" and earlier)
10 | // * declarations following the end of the range (wire.since > "19.9.5")
11 | onlyVersion "19.9.5"
12 |
13 | kotlin {}
14 | }
15 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/only-version/src/main/proto/squareup/media/news.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | import "wire/extensions.proto";
4 |
5 | package squareup.media;
6 |
7 | option java_package = "com.squareup.media";
8 |
9 | message NewsFlash {
10 | optional string title = 1;
11 | optional string author = 2;
12 | optional string radio = 3 [(wire.until) = "19.9.0"]; // Omit this field on versions >= "19.9.0".
13 | optional string tv = 4 [(wire.since) = "19.5.0"]; // Omit this field on versions < "19.5.0".
14 | optional string website = 5 [(wire.since) = "20.0.0"]; // Omit this field on versions < "20.0.0".
15 | }
16 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/opaque-message/build.gradle:
--------------------------------------------------------------------------------
1 | import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
2 |
3 | plugins {
4 | id 'application'
5 | id 'org.jetbrains.kotlin.jvm'
6 | id 'com.squareup.wire'
7 | }
8 |
9 | wire {
10 | opaque("cafe.EspressoShot")
11 |
12 | proto {}
13 | }
14 |
15 | tasks.withType(JavaCompile).configureEach {
16 | sourceCompatibility = JavaVersion.VERSION_11.toString()
17 | targetCompatibility = JavaVersion.VERSION_11.toString()
18 | }
19 |
20 | tasks.withType(KotlinCompile).configureEach {
21 | kotlinOptions {
22 | jvmTarget = "11"
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/opaque-message/src/main/proto/cafe/cafe.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package cafe;
4 |
5 | message CafeDrink {
6 | optional int32 size_ounces = 1;
7 | repeated EspressoShot shots = 2;
8 | }
9 |
10 | message EspressoShot {
11 | optional Roast roast = 1;
12 | optional bool decaf = 2;
13 | }
14 |
15 | enum Roast {
16 | MEDIUM = 1;
17 | DARK = 2;
18 | }
19 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/package-cycles-permitted/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | repositories {
8 | maven {
9 | url "file://${projectDir.absolutePath}/../../../../../build/localMaven"
10 | }
11 | mavenCentral()
12 | }
13 |
14 | dependencies {
15 | implementation "com.squareup.wire:wire-runtime:$VERSION_NAME"
16 | }
17 |
18 | wire {
19 | permitPackageCycles true
20 | kotlin {}
21 | }
22 |
23 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/package-cycles-permitted/src/main/proto/locations/office.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | import "people/office_manager.proto";
4 |
5 | package locations;
6 |
7 | message Office {
8 | optional people.OfficeManager office_manager = 1;
9 | }
10 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/package-cycles-permitted/src/main/proto/locations/residence.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package locations;
4 |
5 | message Residence {
6 | }
7 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/package-cycles-permitted/src/main/proto/people/employee.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | import "locations/office.proto";
4 | import "locations/residence.proto";
5 |
6 | package people;
7 |
8 | message Employee {
9 | optional locations.Office office = 1;
10 | optional locations.Residence residence = 2;
11 | }
12 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/package-cycles-permitted/src/main/proto/people/office_manager.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package people;
4 |
5 | message OfficeManager {
6 | }
7 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/package-cycles/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | repositories {
8 | maven {
9 | url "file://${projectDir.absolutePath}/../../../../../build/localMaven"
10 | }
11 | mavenCentral()
12 | }
13 |
14 | dependencies {
15 | implementation "com.squareup.wire:wire-runtime:$VERSION_NAME"
16 | }
17 |
18 | wire {
19 | kotlin {}
20 | }
21 |
22 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/package-cycles/src/main/proto/locations/office.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | import "people/office_manager.proto";
4 |
5 | package locations;
6 |
7 | message Office {
8 | optional people.OfficeManager office_manager = 1;
9 | }
10 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/package-cycles/src/main/proto/locations/residence.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package locations;
4 |
5 | message Residence {
6 | }
7 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/package-cycles/src/main/proto/people/employee.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | import "locations/office.proto";
4 | import "locations/residence.proto";
5 |
6 | package people;
7 |
8 | message Employee {
9 | optional locations.Office office = 1;
10 | optional locations.Residence residence = 2;
11 | }
12 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/package-cycles/src/main/proto/people/office_manager.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package people;
4 |
5 | message OfficeManager {
6 | }
7 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/project-dependencies-typesafe-accessor/dinosaurs/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'com.squareup.wire'
3 | id 'org.jetbrains.kotlin.jvm'
4 | }
5 |
6 | dependencies {
7 | protoPath projects.geology
8 | }
9 |
10 | wire {
11 | sourcePath {
12 | srcDir 'src/main/proto'
13 | }
14 |
15 | sourcePath {
16 | srcProject projects.location
17 | include 'squareup/location/continent.proto'
18 | }
19 |
20 | kotlin {
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/project-dependencies-typesafe-accessor/dinosaurs/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 | import "squareup/location/continent.proto";
9 |
10 | message Dinosaur {
11 | /** Common name of this dinosaur, like "Stegosaurus". */
12 | optional string name = 1;
13 |
14 | /** URLs with images of this dinosaur. */
15 | repeated string picture_urls = 2;
16 |
17 | optional double length_meters = 3;
18 | optional double mass_kilograms = 4;
19 | optional squareup.geology.Period period = 5;
20 | optional squareup.location.Continent continent = 6;
21 | }
22 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/project-dependencies-typesafe-accessor/geology/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'com.squareup.wire'
3 | id 'org.jetbrains.kotlin.jvm'
4 | }
5 |
6 | wire {
7 | protoLibrary = true
8 |
9 | kotlin {
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/project-dependencies-typesafe-accessor/geology/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/project-dependencies-typesafe-accessor/location/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'com.squareup.wire'
3 | id 'org.jetbrains.kotlin.jvm'
4 | }
5 |
6 | wire {
7 | protoLibrary = true
8 |
9 | kotlin {
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/project-dependencies-typesafe-accessor/location/src/main/proto/squareup/location/continent.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.location;
4 |
5 | option java_package = "com.squareup.location";
6 |
7 | enum Continent {
8 | AFRICA = 0;
9 | AMERICA = 1;
10 | ANTARCTICA = 2;
11 | ASIA = 3;
12 | AUSTRALIA = 4;
13 | EUROPE = 5;
14 | }
15 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/project-dependencies-typesafe-accessor/location/src/main/proto/squareup/location/planet.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.location;
4 |
5 | option java_package = "com.squareup.location";
6 |
7 | enum Planet {
8 | MERCURY = 0;
9 | VENUS = 1;
10 | EARTH = 2;
11 | MARS = 3;
12 | JUPITER = 4;
13 | SATURN = 5;
14 | URANUS = 6;
15 | NEPTUNE = 7;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/project-dependencies-typesafe-accessor/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':dinosaurs'
2 | include ':geology'
3 | include ':location'
4 |
5 | enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS")
6 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/project-dependencies/build.gradle:
--------------------------------------------------------------------------------
1 | import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
2 |
3 | plugins {
4 | id 'com.squareup.wire' apply false
5 | id 'org.jetbrains.kotlin.jvm' apply false
6 | }
7 |
8 | allprojects {
9 | repositories {
10 | maven {
11 | url "file://${project.rootProject.projectDir}/../../../../../build/localMaven"
12 | }
13 | mavenCentral()
14 | }
15 |
16 | tasks.withType(JavaCompile).configureEach {
17 | sourceCompatibility = JavaVersion.VERSION_11.toString()
18 | targetCompatibility = JavaVersion.VERSION_11.toString()
19 | }
20 |
21 | tasks.withType(KotlinCompile).configureEach {
22 | kotlinOptions {
23 | jvmTarget = "11"
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/project-dependencies/dinosaurs/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'com.squareup.wire'
3 | id 'org.jetbrains.kotlin.jvm'
4 | }
5 |
6 | dependencies {
7 | protoPath project(":geology")
8 | }
9 |
10 | wire {
11 | sourcePath {
12 | srcDir 'src/main/proto'
13 | }
14 |
15 | sourcePath {
16 | srcProject ':location'
17 | include 'squareup/location/continent.proto'
18 | }
19 |
20 | kotlin {
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/project-dependencies/dinosaurs/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 | import "squareup/location/continent.proto";
9 |
10 | message Dinosaur {
11 | /** Common name of this dinosaur, like "Stegosaurus". */
12 | optional string name = 1;
13 |
14 | /** URLs with images of this dinosaur. */
15 | repeated string picture_urls = 2;
16 |
17 | optional double length_meters = 3;
18 | optional double mass_kilograms = 4;
19 | optional squareup.geology.Period period = 5;
20 | optional squareup.location.Continent continent = 6;
21 | }
22 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/project-dependencies/geology/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'com.squareup.wire'
3 | id 'org.jetbrains.kotlin.jvm'
4 | }
5 |
6 | wire {
7 | protoLibrary = true
8 |
9 | kotlin {
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/project-dependencies/geology/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/project-dependencies/location/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'com.squareup.wire'
3 | id 'org.jetbrains.kotlin.jvm'
4 | }
5 |
6 | wire {
7 | protoLibrary = true
8 |
9 | kotlin {
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/project-dependencies/location/src/main/proto/squareup/location/continent.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.location;
4 |
5 | option java_package = "com.squareup.location";
6 |
7 | enum Continent {
8 | AFRICA = 0;
9 | AMERICA = 1;
10 | ANTARCTICA = 2;
11 | ASIA = 3;
12 | AUSTRALIA = 4;
13 | EUROPE = 5;
14 | }
15 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/project-dependencies/location/src/main/proto/squareup/location/planet.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.location;
4 |
5 | option java_package = "com.squareup.location";
6 |
7 | enum Planet {
8 | MERCURY = 0;
9 | VENUS = 1;
10 | EARTH = 2;
11 | MARS = 3;
12 | JUPITER = 4;
13 | SATURN = 5;
14 | URANUS = 6;
15 | NEPTUNE = 7;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/project-dependencies/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':dinosaurs'
2 | include ':geology'
3 | include ':location'
4 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/proto-library/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'kotlin'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | wire {
7 | protoLibrary = true
8 | }
9 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/proto-library/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/proto-library/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/protopath-maven/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | // See installProtoJars task in wire-gradle-plugin/build.gradle.kts
7 | repositories {
8 | maven {
9 | url "file://${projectDir.absolutePath}/../../../../../build/localMaven"
10 | }
11 | }
12 |
13 | wire {
14 | protoPath {
15 | srcJar 'com.squareup.wire.dinosaur:all-protos:+'
16 | }
17 | sourcePath {
18 | srcDir 'src/main/proto'
19 | }
20 | java{
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/protopath-maven/src/main/proto/squareup/dinosaurs/dig.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 | import "squareup/dinosaurs/dinosaur.proto";
9 |
10 | message Dig {
11 | optional string location = 1;
12 | optional squareup.geology.Period artifact_period = 2;
13 | repeated squareup.dinosaurs.Dinosaur dinosaurs = 3;
14 | }
15 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/reject-unused/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | // Keeps 'Dinosaur#name' and 'squareup.geology.Period' as roots of the object graph
9 | root 'squareup.dinosaurs.Dinosaur#height'
10 | root 'squareup.dinosaurs.Crustacean'
11 | prune 'squareup.mammals.Human'
12 |
13 | kotlin {}
14 | }
15 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/reject-unused/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/reject-unused/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/require-target/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/require-target/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/require-target/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/since-until/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'org.jetbrains.kotlin.jvm'
4 | id 'com.squareup.wire'
5 | }
6 |
7 | wire {
8 | // Support versions "19.9.5" through "20.0.0" inclusive. This will prune:
9 | // * declarations preceding the beginning of the range (wire.until = "19.9.5" and earlier)
10 | // * declarations following the end of the range (wire.since = "20.0.1" and later)
11 | sinceVersion "19.9.5"
12 | untilVersion "20.0.1"
13 |
14 | kotlin {}
15 | }
16 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/since-until/src/main/proto/squareup/media/news.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | import "wire/extensions.proto";
4 |
5 | package squareup.media;
6 |
7 | option java_package = "com.squareup.media";
8 |
9 | message NewsFlash {
10 | optional string title = 1;
11 | optional string author = 2;
12 | optional string radio = 3 [(wire.until) = "19.9.0"]; // Omit this field on versions >= "19.9.0".
13 | optional string tv = 4 [(wire.since) = "19.5.0"]; // Omit this field on versions < "19.5.0".
14 | optional string website = 5 [(wire.since) = "20.0.0"]; // Omit this field on versions < "20.0.0".
15 | }
16 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourceaar-local-protopath/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | // See installProtoJars task in wire-gradle-plugin/build.gradle.kts
7 | repositories {
8 | maven {
9 | url "file://${projectDir.absolutePath}/../../../../../build/localMaven"
10 | }
11 | }
12 |
13 | wire {
14 | sourcePath {
15 | srcJar 'only-dinosaur-1.0.aar'
16 | include 'squareup/dinosaurs/dinosaur.proto'
17 | }
18 | protoPath {
19 | srcDir 'src/main/proto'
20 | include 'squareup/geology/period.proto'
21 | }
22 | java{
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourceaar-local-protopath/only-dinosaur-1.0.aar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/wire-gradle-plugin/src/test/projects/sourceaar-local-protopath/only-dinosaur-1.0.aar
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourceaar-local-protopath/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcedir-exclude/src/main/proto/excluded/martian.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package excluded;
4 |
5 | option java_package = "com.excluded";
6 |
7 | message Martian {
8 | optional string name = 1;
9 | }
10 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcedir-exclude/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcedir-exclude/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcedir-include/src/main/proto/excluded/martian.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package excluded;
4 |
5 | option java_package = "com.excluded";
6 |
7 | message Martian {
8 | optional string name = 1;
9 | }
10 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcedir-include/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcedir-include/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcejar-local-many-files/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | wire {
7 | sourcePath {
8 | srcJar 'src/main/proto/protos.jar'
9 | include 'squareup/geology/period.proto', 'squareup/dinosaurs/dinosaur.proto'
10 | }
11 | java{
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcejar-local-many-files/src/main/proto/protos.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/wire-gradle-plugin/src/test/projects/sourcejar-local-many-files/src/main/proto/protos.jar
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcejar-local-nonproto-file/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | wire {
7 | sourcePath {
8 | srcJar 'src/main/proto/protos-plus-nonprotos.jar'
9 | }
10 | java{
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcejar-local-nonproto-file/src/main/proto/protos-plus-nonprotos.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/wire-gradle-plugin/src/test/projects/sourcejar-local-nonproto-file/src/main/proto/protos-plus-nonprotos.jar
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcejar-local-single-file/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | wire {
7 | sourcePath {
8 | srcJar 'src/main/proto/protos.jar'
9 | include 'squareup/geology/period.proto'
10 | }
11 | java{
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcejar-local-single-file/src/main/proto/protos.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/wire-gradle-plugin/src/test/projects/sourcejar-local-single-file/src/main/proto/protos.jar
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcejar-mixed-conflicts/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | // See installProtoJars task in wire-gradle-plugin/build.gradle.kts
7 | repositories {
8 | maven {
9 | url "file://${projectDir.absolutePath}/../../../../../build/localMaven"
10 | }
11 | }
12 |
13 | wire {
14 | sourcePath {
15 | srcJar 'com.squareup.wire.dinosaur:all-protos-plus-martians:+'
16 | exclude 'excluded/**'
17 | }
18 | sourcePath {
19 | srcDir 'src/main/proto'
20 | include 'squareup/**/*.proto'
21 | exclude 'squareup/geology/period.proto'
22 | }
23 | java{
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcejar-mixed-conflicts/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcejar-mixed-conflicts/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcejar-remote-many-files/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | // See installProtoJars task in wire-gradle-plugin/build.gradle.kts
7 | repositories {
8 | maven {
9 | url "file://${projectDir.absolutePath}/../../../../../build/localMaven"
10 | }
11 | }
12 |
13 | wire {
14 | sourcePath {
15 | srcJar 'com.squareup.wire.dinosaur:all-protos:+'
16 | include 'squareup/geology/period.proto', 'squareup/dinosaurs/dinosaur.proto'
17 | }
18 | java{
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcejar-remote-protopath/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | // See installProtoJars task in wire-gradle-plugin/build.gradle.kts
7 | repositories {
8 | maven {
9 | url "file://${projectDir.absolutePath}/../../../../../build/localMaven"
10 | }
11 | }
12 |
13 | wire {
14 | sourcePath {
15 | srcJar 'com.squareup.wire.dinosaur:only-dinosaur:+'
16 | include 'squareup/dinosaurs/dinosaur.proto'
17 | }
18 | protoPath {
19 | srcDir 'src/main/proto'
20 | include 'squareup/geology/period.proto'
21 | }
22 | java{
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcejar-remote-protopath/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcejar-remote-version-catalog/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | // See installProtoJars task in wire-gradle-plugin/build.gradle.kts
7 | repositories {
8 | maven {
9 | url "file://${projectDir.absolutePath}/../../../../../build/localMaven"
10 | }
11 | }
12 |
13 | wire {
14 | sourcePath {
15 | srcJar libs.allprotos
16 | include 'squareup/geology/period.proto'
17 | }
18 | java{
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcejar-remote-version-catalog/settings.gradle:
--------------------------------------------------------------------------------
1 | dependencyResolutionManagement {
2 | versionCatalogs {
3 | create("libs") {
4 | library("allprotos", "com.squareup.wire.dinosaur:all-protos:1.0")
5 | }
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcejar-remote-wildcards/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | // See installProtoJars task in wire-gradle-plugin/build.gradle.kts
7 | repositories {
8 | maven {
9 | url "file://${projectDir.absolutePath}/../../../../../build/localMaven"
10 | }
11 | }
12 |
13 | wire {
14 | sourcePath {
15 | srcJar 'com.squareup.wire.dinosaur:all-protos-plus-martians:+'
16 | include 'squareup/geology/*.proto', '**/dinosaur.proto'
17 | }
18 | java{
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-and-protopath-intersect/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | // See installProtoJars task in wire-gradle-plugin/build.gradle.kts
7 | repositories {
8 | maven {
9 | url "file://${projectDir.absolutePath}/../../../../../build/localMaven"
10 | }
11 | }
12 |
13 | wire {
14 | protoPath {
15 | srcJar 'com.squareup.wire.dinosaur:all-protos:+'
16 | include 'squareup/geology/period.proto'
17 | }
18 | sourcePath {
19 | srcJar 'com.squareup.wire.dinosaur:all-protos:+'
20 | include 'squareup/dinosaurs/dinosaur.proto'
21 | }
22 | java{
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-and-protopath-intersect/src/main/proto/protos.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/wire-gradle-plugin/src/test/projects/sourcepath-and-protopath-intersect/src/main/proto/protos.jar
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-build-dir/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | final String OUTPUT_REPO_DIR = "$buildDir/src/main/proto/squareup"
7 |
8 | task copyProtos(type: Copy) {
9 | from 'src/main/copydir/squareup'
10 | include 'dinosaurs/*.proto'
11 | include 'geology/*.proto'
12 |
13 | into OUTPUT_REPO_DIR
14 | fileMode = 0644
15 | includeEmptyDirs false
16 | }
17 |
18 | afterEvaluate {
19 | tasks.getByName('generateProtos').dependsOn copyProtos
20 | }
21 |
22 | wire {
23 | sourcePath {
24 | srcDir OUTPUT_REPO_DIR
25 | }
26 | java{
27 | }
28 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-build-dir/src/main/copydir/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-default/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | wire{
7 | java{
8 | }
9 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-default/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-default/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-dir/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | wire {
7 | sourcePath 'src/main/proto'
8 | java{
9 | }
10 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-dir/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-dir/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-file/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | wire {
7 | sourcePath 'src/main/proto/squareup/geology/period.proto'
8 | java{
9 | }
10 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-file/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-maven-single-file/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | // See installProtoJars task in wire-gradle-plugin/build.gradle.kts
7 | repositories {
8 | maven {
9 | url "file://${projectDir.absolutePath}/../../../../../build/localMaven"
10 | }
11 | }
12 |
13 | wire {
14 | sourcePath {
15 | srcJar 'com.squareup.wire.dinosaur:all-protos:+'
16 | include 'squareup/geology/period.proto'
17 | }
18 | java{
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-maven/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | // See installProtoJars task in wire-gradle-plugin/build.gradle.kts
7 | repositories {
8 | maven {
9 | url "file://${projectDir.absolutePath}/../../../../../build/localMaven"
10 | }
11 | }
12 |
13 | wire {
14 | sourcePath 'com.squareup.wire.dinosaur:all-protos:+'
15 | java{
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-no-sources/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | wire{
7 | java{
8 | }
9 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-no-sources/src/main/proto/dummy.md:
--------------------------------------------------------------------------------
1 | Added to keep this folder structure for a test
2 |
3 | https://stackoverflow.com/questions/115983/how-can-i-add-an-empty-directory-to-a-git-repository/21422128#21422128
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-nonexistent-dir/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | wire {
7 | sourcePath 'src/main/proto'
8 | java{
9 | }
10 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-nonexistent-srcdir-with-protopath/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | wire {
7 | protoPath {
8 | srcDir 'src/main/protopath'
9 | }
10 | java{
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-nonexistent-srcdir-with-protopath/src/main/protopath/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-nonexistent-srcdir-with-protopath/src/main/protopath/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-nonexistent-srcdir/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | wire {
7 | sourcePath {
8 | srcDir 'src/main/proto'
9 | }
10 | java{
11 | }
12 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-uri/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | wire {
7 | sourcePath 'http://www.squareup.com'
8 | java{
9 | }
10 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcepath-uri/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcetree-many-srcdirs/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | wire {
7 | sourcePath {
8 | srcDirs 'src/main/proto', 'src/main/proto2'
9 | include 'squareup/**'
10 | }
11 | java{
12 | }
13 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcetree-many-srcdirs/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcetree-many-srcdirs/src/main/proto2/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcetree-one-srcdir-many-files/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | wire {
7 | sourcePath {
8 | srcDir 'src/main/proto'
9 | include 'squareup/**'
10 | }
11 | java{
12 | }
13 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcetree-one-srcdir-many-files/src/main/proto/squareup/dinosaurs/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.dinosaurs;
4 |
5 | option java_package = "com.squareup.dinosaurs";
6 |
7 | import "squareup/geology/period.proto";
8 |
9 | message Dinosaur {
10 | /** Common name of this dinosaur, like "Stegosaurus". */
11 | optional string name = 1;
12 |
13 | /** URLs with images of this dinosaur. */
14 | repeated string picture_urls = 2;
15 |
16 | optional double length_meters = 3;
17 | optional double mass_kilograms = 4;
18 | optional squareup.geology.Period period = 5;
19 | }
20 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcetree-one-srcdir-many-files/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcetree-one-srcdir-one-file/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | wire {
7 | sourcePath {
8 | srcDir 'src/main/proto'
9 | include 'squareup/**'
10 | }
11 | java{
12 | }
13 | }
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcetree-one-srcdir-one-file/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcezip-local-protopath/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'application'
3 | id 'com.squareup.wire'
4 | }
5 |
6 | // See installProtoJars task in wire-gradle-plugin/build.gradle.kts
7 | repositories {
8 | maven {
9 | url "file://${projectDir.absolutePath}/../../../../../build/localMaven"
10 | }
11 | }
12 |
13 | wire {
14 | sourcePath {
15 | srcJar 'only-dinosaur-1.0.zip'
16 | include 'squareup/dinosaurs/dinosaur.proto'
17 | }
18 | protoPath {
19 | srcDir 'src/main/proto'
20 | include 'squareup/geology/period.proto'
21 | }
22 | java{
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcezip-local-protopath/only-dinosaur-1.0.zip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/wire-gradle-plugin/src/test/projects/sourcezip-local-protopath/only-dinosaur-1.0.zip
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/sourcezip-local-protopath/src/main/proto/squareup/geology/period.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | package squareup.geology;
4 |
5 | option java_package = "com.squareup.geology";
6 |
7 | enum Period {
8 | /** 145.5 million years ago — 66.0 million years ago. */
9 | CRETACEOUS = 1;
10 |
11 | /** 201.3 million years ago — 145.0 million years ago. */
12 | JURASSIC = 2;
13 |
14 | /** 252.17 million years ago — 201.3 million years ago. */
15 | TRIASSIC = 3;
16 | }
17 |
--------------------------------------------------------------------------------
/wire-gradle-plugin/src/test/projects/task-dependency/src/main/proto/dinosaur.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 |
3 | import "period.proto";
4 |
5 | message Dinosaur {
6 | optional Period period = 5;
7 | }
8 |
--------------------------------------------------------------------------------
/wire-grpc-mockwebserver/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | kotlin("jvm")
3 | }
4 |
5 | dependencies {
6 | implementation(projects.wireRuntime)
7 | implementation(projects.wireGrpcClient)
8 | implementation(libs.okio.core)
9 | api(libs.okhttp.mockwebserver)
10 | }
11 |
--------------------------------------------------------------------------------
/wire-gson-support/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | kotlin("jvm")
3 | }
4 |
5 | dependencies {
6 | implementation(projects.wireRuntime)
7 | api(libs.gson)
8 | api(libs.okio.core)
9 | testImplementation(libs.junit)
10 | testImplementation(libs.assertj)
11 | testImplementation(libs.assertk)
12 | testImplementation(projects.wireTestUtils)
13 | }
14 |
--------------------------------------------------------------------------------
/wire-java-generator/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | id("java-library")
3 | kotlin("jvm")
4 | }
5 |
6 | dependencies {
7 | api(projects.wireSchema)
8 | implementation(projects.wireRuntime)
9 | implementation(libs.okio.core)
10 | implementation(libs.guava)
11 | api(libs.javapoet)
12 | compileOnly(libs.jsr305)
13 | testImplementation(projects.wireTestUtils)
14 | testImplementation(libs.junit)
15 | testImplementation(libs.kotlin.test.junit)
16 | testImplementation(libs.truth)
17 | testImplementation(libs.jimfs)
18 | }
19 |
--------------------------------------------------------------------------------
/wire-kotlin-generator/build.gradle.kts:
--------------------------------------------------------------------------------
1 |
2 | plugins {
3 | id("java-library")
4 | kotlin("jvm")
5 | }
6 |
7 | dependencies {
8 | api(projects.wireSchema)
9 | implementation(projects.wireRuntime)
10 | implementation(projects.wireGrpcClient)
11 | implementation(libs.okio.core)
12 | api(libs.kotlinpoet)
13 | testImplementation(projects.wireTestUtils)
14 | testImplementation(libs.kotlin.test.junit)
15 | testImplementation(libs.assertk)
16 | }
17 |
--------------------------------------------------------------------------------
/wire-moshi-adapter/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | kotlin("jvm")
3 | }
4 |
5 | dependencies {
6 | implementation(projects.wireRuntime)
7 | api(libs.moshi)
8 | testImplementation(projects.wireTestUtils)
9 | testImplementation(libs.assertj)
10 | testImplementation(libs.assertk)
11 | testImplementation(libs.junit)
12 | testImplementation(libs.moshiKotlin)
13 | }
14 |
--------------------------------------------------------------------------------
/wire-protoc-compatibility-tests/src/main/proto/protos.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/wire-protoc-compatibility-tests/src/main/proto/protos.jar
--------------------------------------------------------------------------------
/wire-protoc-compatibility-tests/src/main/proto/squareup/proto2/kotlin/unrecognized_constant/easter.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto2";
2 | package squareup.proto2.kotlin.unrecognized_constant;
3 |
4 | import "squareup/proto3/kotlin/unrecognized_constant/easter.proto";
5 |
6 | // Proto2 message with a proto3 enum.
7 | message Easter {
8 | optional squareup.proto3.kotlin.unrecognized_constant.EasterAnimal optional_easter_animal = 2;
9 | required squareup.proto3.kotlin.unrecognized_constant.EasterAnimal required_easter_animal = 3;
10 | repeated squareup.proto3.kotlin.unrecognized_constant.EasterAnimal easter_animals = 4;
11 | }
12 |
--------------------------------------------------------------------------------
/wire-protoc-compatibility-tests/src/main/proto/squareup/proto3/kotlin/unrecognized_constant/easter.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto3";
2 | package squareup.proto3.kotlin.unrecognized_constant;
3 |
4 | // Proto3 message with a proto3 enum.
5 | message Easter {
6 | optional EasterAnimal optional_easter_animal = 2;
7 | EasterAnimal identity_easter_animal = 3;
8 | repeated EasterAnimal easter_animals_repeated = 4 [packed = false];
9 | repeated EasterAnimal easter_animals_packed = 5 [packed = true];
10 | }
11 |
12 | enum EasterAnimal {
13 | EASTER_ANIMAL_DEFAULT = 0;
14 | BUNNY = 1;
15 | HEN = 2;
16 | // Creating on purpose a constance using a Kotlin keyword.
17 | object = 15;
18 | }
19 |
--------------------------------------------------------------------------------
/wire-reflector/api/wire-reflector.api:
--------------------------------------------------------------------------------
1 | public final class com/squareup/wire/reflector/SchemaReflector {
2 | public fun (Lcom/squareup/wire/schema/Schema;Z)V
3 | public synthetic fun (Lcom/squareup/wire/schema/Schema;ZILkotlin/jvm/internal/DefaultConstructorMarker;)V
4 | public final fun process (Lgrpc/reflection/v1alpha/ServerReflectionRequest;)Lgrpc/reflection/v1alpha/ServerReflectionResponse;
5 | }
6 |
7 |
--------------------------------------------------------------------------------
/wire-runtime-swift/.gitignore:
--------------------------------------------------------------------------------
1 | src/test/swift/gen/
2 |
--------------------------------------------------------------------------------
/wire-runtime/webpack.config.d/config.js:
--------------------------------------------------------------------------------
1 | module.exports = module.exports || {};
2 | module.exports.resolve = module.exports.resolve || {};
3 | module.exports.resolve.fallback = module.exports.resolve.fallback || {};
4 | module.exports.resolve.fallback.os = false
5 |
--------------------------------------------------------------------------------
/wire-swift-generator/build.gradle.kts:
--------------------------------------------------------------------------------
1 |
2 | plugins {
3 | id("java-library")
4 | kotlin("jvm")
5 | }
6 |
7 |
8 |
9 | dependencies {
10 | api(libs.swiftpoet)
11 | api(projects.wireSchema)
12 | }
13 |
--------------------------------------------------------------------------------
/wire-tests-proto3-swift/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | id("swift-library")
3 | id("xcode")
4 | id("xctest")
5 | }
6 |
7 | library {
8 | sourceCompatibility = SwiftVersion.SWIFT5
9 | dependencies {
10 | api(projects.wireRuntimeSwift)
11 | }
12 |
13 | module.set("WireTestsProto3")
14 | }
15 |
--------------------------------------------------------------------------------
/wire-tests-swift/manifest/module_one/SortOrder.swift:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.kotlin.swift_modules.SortOrder in swift_module_one.proto
3 | import Wire
4 |
5 | /**
6 | * Collides with Foundation.SortOrder
7 | */
8 | public enum SortOrder : Int32, CaseIterable, Proto2Enum {
9 |
10 | case DESC = 0
11 | case ASC = 1
12 |
13 | public var description: String {
14 | switch self {
15 | case .DESC: return "DESC"
16 | case .ASC: return "ASC"
17 | }
18 | }
19 |
20 | }
21 |
22 | extension SortOrder : Sendable {
23 | }
24 |
--------------------------------------------------------------------------------
/wire-tests-swift/manifest/module_one/SwiftModuleOneEnum.swift:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.kotlin.swift_modules.SwiftModuleOneEnum in swift_module_one.proto
3 | import Wire
4 |
5 | public enum SwiftModuleOneEnum : Int32, CaseIterable, Proto2Enum {
6 |
7 | case DO_NOT_USE = 0
8 | case ONE = 1
9 | case TWO = 2
10 |
11 | public var description: String {
12 | switch self {
13 | case .DO_NOT_USE: return "DO_NOT_USE"
14 | case .ONE: return "ONE"
15 | case .TWO: return "TWO"
16 | }
17 | }
18 |
19 | }
20 |
21 | extension SwiftModuleOneEnum : Sendable {
22 | }
23 |
--------------------------------------------------------------------------------
/wire-tests-swift/manifest/module_one/SwiftModuleThreeMessage.swift:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.kotlin.swift_modules.SwiftModuleThreeMessage in swift_module_three.proto
3 | /**
4 | * *Note:* This type only exists to maintain class structure for its nested types and is not an actual message.
5 | */
6 | public enum SwiftModuleThreeMessage {
7 |
8 | /**
9 | * *Note:* This type only exists to maintain class structure for its nested types and is not an actual message.
10 | */
11 | public enum NestedMessage {
12 | }
13 |
14 | }
15 |
--------------------------------------------------------------------------------
/wire-tests-swift/manifest/module_one/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | id("swift-library")
3 | id("xcode")
4 | id("xctest")
5 | }
6 |
7 | library {
8 | sourceCompatibility = SwiftVersion.SWIFT5
9 | dependencies {
10 | api(projects.wireRuntimeSwift)
11 | }
12 |
13 | module.set("module_one")
14 |
15 | source.from(file("."))
16 | }
17 |
18 | tasks.matching { it.name == "compileDebugSwift" }.configureEach {
19 | dependsOn("compileReleaseSwift", "linkRelease")
20 | }
21 | tasks.getByName("spotlessJava").dependsOn("compileDebugSwift")
22 | tasks.getByName("spotlessKotlin").dependsOn("compileDebugSwift")
23 | tasks.getByName("spotlessSwift").dependsOn("compileDebugSwift")
24 |
--------------------------------------------------------------------------------
/wire-tests-swift/manifest/module_three/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | id("swift-library")
3 | id("xcode")
4 | id("xctest")
5 | }
6 |
7 | library {
8 | sourceCompatibility = SwiftVersion.SWIFT5
9 | dependencies {
10 | api(projects.wireRuntimeSwift)
11 | implementation(projects.wireTestsSwift.manifest.moduleOne)
12 | }
13 |
14 | module.set("module_three")
15 |
16 | source.from(file("."))
17 | }
18 |
19 | tasks.matching { it.name == "compileDebugSwift" }.configureEach {
20 | dependsOn("compileReleaseSwift", "linkRelease")
21 | }
22 | tasks.getByName("spotlessJava").dependsOn("compileDebugSwift")
23 | tasks.getByName("spotlessKotlin").dependsOn("compileDebugSwift")
24 | tasks.getByName("spotlessSwift").dependsOn("compileDebugSwift")
25 |
26 |
--------------------------------------------------------------------------------
/wire-tests-swift/manifest/module_two/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | id("swift-library")
3 | id("xcode")
4 | id("xctest")
5 | }
6 |
7 | library {
8 | sourceCompatibility = SwiftVersion.SWIFT5
9 | dependencies {
10 | api(projects.wireRuntimeSwift)
11 | implementation(projects.wireTestsSwift.manifest.moduleOne)
12 | }
13 |
14 | module.set("module_two")
15 |
16 | source.from(file("."))
17 | }
18 |
19 | tasks.matching { it.name == "compileDebugSwift" }.configureEach {
20 | dependsOn("compileReleaseSwift", "linkRelease")
21 | }
22 | tasks.getByName("spotlessJava").dependsOn("compileDebugSwift")
23 | tasks.getByName("spotlessKotlin").dependsOn("compileDebugSwift")
24 | tasks.getByName("spotlessSwift").dependsOn("compileDebugSwift")
25 |
26 |
--------------------------------------------------------------------------------
/wire-tests-swift/no-manifest/build.gradle.kts:
--------------------------------------------------------------------------------
1 | plugins {
2 | id("swift-library")
3 | id("xcode")
4 | id("xctest")
5 | }
6 |
7 | library {
8 | sourceCompatibility = SwiftVersion.SWIFT5
9 | dependencies {
10 | api(projects.wireRuntimeSwift)
11 | }
12 |
13 | module.set("WireTests")
14 | }
15 |
--------------------------------------------------------------------------------
/wire-tests-swift/no-manifest/src/main/swift/EnumVersionOne.swift:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.kotlin.unknownfields.EnumVersionOne in unknown_fields.proto
3 | import Wire
4 |
5 | public enum EnumVersionOne : Int32, CaseIterable, Proto2Enum {
6 |
7 | case SHREK_V1 = 1
8 | case DONKEY_V1 = 2
9 | case FIONA_V1 = 3
10 |
11 | public var description: String {
12 | switch self {
13 | case .SHREK_V1: return "SHREK_V1"
14 | case .DONKEY_V1: return "DONKEY_V1"
15 | case .FIONA_V1: return "FIONA_V1"
16 | }
17 | }
18 |
19 | }
20 |
21 | extension EnumVersionOne : Sendable {
22 | }
23 |
--------------------------------------------------------------------------------
/wire-tests-swift/no-manifest/src/main/swift/Error_.swift:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.kotlin.swift_modules.Error in swift_edge_cases.proto
3 | import Wire
4 |
5 | public enum Error_ : Int32, CaseIterable, Proto2Enum {
6 |
7 | case UNKNOWN = 0
8 | case BAD_VALUE = 1
9 |
10 | public var description: String {
11 | switch self {
12 | case .UNKNOWN: return "UNKNOWN"
13 | case .BAD_VALUE: return "BAD_VALUE"
14 | }
15 | }
16 |
17 | }
18 |
19 | extension Error_ : Sendable {
20 | }
21 |
--------------------------------------------------------------------------------
/wire-tests-swift/no-manifest/src/main/swift/ForeignEnum.swift:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.kotlin.foreign.ForeignEnum in foreign.proto
3 | import Wire
4 |
5 | public enum ForeignEnum : Int32, CaseIterable, Proto2Enum {
6 |
7 | case BAV = 0
8 | case BAX = 1
9 |
10 | public var description: String {
11 | switch self {
12 | case .BAV: return "BAV"
13 | case .BAX: return "BAX"
14 | }
15 | }
16 |
17 | }
18 |
19 | extension ForeignEnum : Sendable {
20 | }
21 |
--------------------------------------------------------------------------------
/wire-tests-swift/no-manifest/src/main/swift/NegativeValueEnum.swift:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.kotlin.NegativeValueEnum in negative_value_enum.proto
3 | import Wire
4 |
5 | public enum NegativeValueEnum : Int32, CaseIterable, Proto2Enum {
6 |
7 | case DO_NOT_USE = -1
8 |
9 | public var description: String {
10 | switch self {
11 | case .DO_NOT_USE: return "DO_NOT_USE"
12 | }
13 | }
14 |
15 | }
16 |
17 | extension NegativeValueEnum : Sendable {
18 | }
19 |
--------------------------------------------------------------------------------
/wire-tests/src/commonMain/kotlin/com/squareup/wire/Tests.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright (C) 2023 Square, Inc.
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * https://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | */
16 | package com.squareup.wire
17 |
18 | object Tests
19 |
--------------------------------------------------------------------------------
/wire-tests/src/commonTest/proto-kotlin/com/squareup/wire/protos/custom_options/ServiceWithOptionsClient.kt:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.custom_options.ServiceWithOptions in custom_options.proto
3 | @file:Suppress(
4 | "DEPRECATION",
5 | "RUNTIME_ANNOTATION_NOT_SUPPORTED",
6 | )
7 |
8 | package com.squareup.wire.protos.custom_options
9 |
10 | import com.squareup.wire.GrpcCall
11 | import com.squareup.wire.Service
12 | import kotlin.Suppress
13 |
14 | @ServiceOptionOneOption(456)
15 | public interface ServiceWithOptionsClient : Service {
16 | @MethodOptionOneOption(789)
17 | public fun MethodWithOptions(): GrpcCall
18 | }
19 |
--------------------------------------------------------------------------------
/wire-tests/src/commonTest/proto/kotlin/easter.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto3";
2 | package squareup;
3 |
4 | message Easter {
5 | optional EasterAnimal optional_easter_animal = 2;
6 | EasterAnimal identity_easter_animal = 3;
7 | repeated EasterAnimal easter_animals = 4;
8 | repeated EasterAnimal easter_animals_packed = 5 [packed = true];
9 | }
10 |
11 | enum EasterAnimal {
12 | EASTER_ANIMAL_DEFAULT = 0;
13 | BUNNY = 1;
14 | HEN = 2;
15 | }
16 |
--------------------------------------------------------------------------------
/wire-tests/src/commonTest/proto/kotlin/protos.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/square/wire/916087d48d8c54c73c4707d310e2a70330139d10/wire-tests/src/commonTest/proto/kotlin/protos.jar
--------------------------------------------------------------------------------
/wire-tests/src/commonTest/proto3/kotlin/contains_duration.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto3";
2 |
3 | import "google/protobuf/duration.proto";
4 | package squareup.protos3.kotlin.contains_duration;
5 |
6 | option java_package = "com.squareup.wire.proto3.kotlin.containsDuration";
7 |
8 | message ContainsDuration {
9 | google.protobuf.Duration duration = 1;
10 | }
11 |
--------------------------------------------------------------------------------
/wire-tests/src/commonTest/proto3/kotlin/contains_timestamp.proto:
--------------------------------------------------------------------------------
1 | syntax = "proto3";
2 |
3 | import "google/protobuf/timestamp.proto";
4 | package squareup.protos3.kotlin.contains_timestamp;
5 |
6 | option java_package = "com.squareup.wire.proto3.kotlin.containsTimestamp";
7 |
8 | message ContainsTimestamp {
9 | google.protobuf.Timestamp timestamp = 1;
10 | }
11 |
--------------------------------------------------------------------------------
/wire-tests/src/commonTest/shared/json/all_struct_identity_proto3.json:
--------------------------------------------------------------------------------
1 | {
2 | "struct": {
3 | "a": null
4 | },
5 | "list": [],
6 | "valueA": {
7 | "a": [
8 | "b",
9 | 2.0,
10 | {
11 | "c": false
12 | }
13 | ]
14 | },
15 | "valueB": [
16 | {
17 | "d": null,
18 | "e": "trois"
19 | }
20 | ],
21 | "valueC": [],
22 | "valueD": {}
23 | }
24 |
--------------------------------------------------------------------------------
/wire-tests/src/commonTest/shared/json/all_struct_identity_written_proto3.json:
--------------------------------------------------------------------------------
1 | {
2 | "mapInt32List": {},
3 | "mapInt32NullValue": {},
4 | "mapInt32Struct": {},
5 | "mapInt32ValueA": {},
6 | "repList": [],
7 | "repNullValue": [],
8 | "repStruct": [],
9 | "repValueA": [],
10 | "struct": {
11 | "a": null
12 | },
13 | "list": [],
14 | "valueA": {
15 | "a": [
16 | "b",
17 | 2.0,
18 | {
19 | "c": false
20 | }
21 | ]
22 | },
23 | "valueB": [
24 | {
25 | "d": null,
26 | "e": "trois"
27 | }
28 | ],
29 | "valueC": [],
30 | "valueD": {}
31 | }
32 |
--------------------------------------------------------------------------------
/wire-tests/src/commonTest/shared/json/all_struct_proto3.json:
--------------------------------------------------------------------------------
1 | {
2 | "struct": {
3 | "a": 1.0
4 | },
5 | "list": [
6 | "a",
7 | 3.0
8 | ],
9 | "valueA": "a",
10 | "valueB": 33.0,
11 | "valueC": true,
12 | "valueE": {
13 | "a": 1.0
14 | },
15 | "valueF": [
16 | "a",
17 | 3.0
18 | ]
19 | }
20 |
--------------------------------------------------------------------------------
/wire-tests/src/commonTest/shared/json/all_types_identity_proto3.json:
--------------------------------------------------------------------------------
1 | {}
2 |
--------------------------------------------------------------------------------
/wire-tests/src/commonTest/shared/json/camel_case_proto3.json:
--------------------------------------------------------------------------------
1 | {
2 | "RepInt32": [
3 | 1.0,
4 | 2.0
5 | ],
6 | "IDitItMyWAy": "frank",
7 | "mapInt32Int32": {
8 | "1": 2.0
9 | },
10 | "nestedMessage": {
11 | "oneInt32": 1.0
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/wire-tests/src/commonTest/shared/json/pizza_delivery_literal_nulls_proto3.json:
--------------------------------------------------------------------------------
1 | {
2 | "address": null,
3 | "deliveredWithinOrFree": null,
4 | "pizzas": [
5 | {
6 | "toppings": null
7 | }
8 | ],
9 | "loyalty": null,
10 | "promotion": {
11 | "@type": "type.googleapis.com/squareup.proto3.BuyOneGetOnePromotion",
12 | "coupon": null
13 | },
14 | "orderedAt": null
15 | }
16 |
--------------------------------------------------------------------------------
/wire-tests/src/commonTest/shared/json/pizza_delivery_proto3.json:
--------------------------------------------------------------------------------
1 | {
2 | "address": "507 Cross Street",
3 | "deliveredWithinOrFree": "1799.500s",
4 | "pizzas": [
5 | {
6 | "toppings": [
7 | "pineapple",
8 | "onion"
9 | ]
10 | }
11 | ],
12 | "loyalty": {},
13 | "promotion": {
14 | "@type": "type.googleapis.com/squareup.proto3.BuyOneGetOnePromotion",
15 | "coupon": "MAUI"
16 | },
17 | "orderedAt": "1950-01-01T00:00:00.250Z"
18 | }
19 |
--------------------------------------------------------------------------------
/wire-tests/src/commonTest/shared/json/pizza_delivery_unknown_type_proto3.json:
--------------------------------------------------------------------------------
1 | {
2 | "address": "507 Cross Street",
3 | "deliveredWithinOrFree": "1799.500s",
4 | "pizzas": [
5 | {
6 | "toppings": [
7 | "pineapple",
8 | "onion"
9 | ]
10 | }
11 | ],
12 | "loyalty": {},
13 | "promotion": {
14 | "@type": "type.googleapis.com/squareup.proto3.FreeGarlicBreadPromotion",
15 | "is_extra_cheesey": true
16 | },
17 | "orderedAt": "1950-01-01T00:00:00.250Z"
18 | }
19 |
--------------------------------------------------------------------------------
/wire-tests/src/commonTest/shared/json/pizza_delivery_without_type_proto3.json:
--------------------------------------------------------------------------------
1 | {
2 | "address": "507 Cross Street",
3 | "deliveredWithinOrFree": "1799.500s",
4 | "pizzas": [
5 | {
6 | "toppings": [
7 | "pineapple",
8 | "onion"
9 | ]
10 | }
11 | ],
12 | "loyalty": {},
13 | "promotion": {
14 | "is_extra_cheesey": true
15 | },
16 | "orderedAt": "1950-01-01T00:00:00.250Z"
17 | }
18 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/com/squareup/wire/protos/custom_options/EnumOptionOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.custom_options.enum_option in custom_options.proto
3 | package com.squareup.wire.protos.custom_options;
4 |
5 | import java.lang.annotation.ElementType;
6 | import java.lang.annotation.Retention;
7 | import java.lang.annotation.RetentionPolicy;
8 | import java.lang.annotation.Target;
9 |
10 | /**
11 | * This is a reasonable option! Apply it to your available enum types.
12 | */
13 | @Retention(RetentionPolicy.RUNTIME)
14 | @Target(ElementType.TYPE)
15 | public @interface EnumOptionOption {
16 | boolean value();
17 | }
18 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/com/squareup/wire/protos/custom_options/EnumValueOptionOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.custom_options.enum_value_option in custom_options.proto
3 | package com.squareup.wire.protos.custom_options;
4 |
5 | import java.lang.annotation.ElementType;
6 | import java.lang.annotation.Retention;
7 | import java.lang.annotation.RetentionPolicy;
8 | import java.lang.annotation.Target;
9 |
10 | /**
11 | * This is a nice option! Apply it to your friendly enum constants.
12 | */
13 | @Retention(RetentionPolicy.RUNTIME)
14 | @Target(ElementType.FIELD)
15 | public @interface EnumValueOptionOption {
16 | int value();
17 | }
18 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/com/squareup/wire/protos/custom_options/MethodOptionOneOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.custom_options.method_option_one in custom_options.proto
3 | package com.squareup.wire.protos.custom_options;
4 |
5 | import java.lang.annotation.ElementType;
6 | import java.lang.annotation.Retention;
7 | import java.lang.annotation.RetentionPolicy;
8 | import java.lang.annotation.Target;
9 |
10 | /**
11 | * This is a shiny option! Apply it to your brightest methods.
12 | */
13 | @Retention(RetentionPolicy.RUNTIME)
14 | @Target(ElementType.METHOD)
15 | public @interface MethodOptionOneOption {
16 | int value();
17 | }
18 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/com/squareup/wire/protos/custom_options/MyFieldOptionFiveOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.custom_options.my_field_option_five in custom_options.proto
3 | package com.squareup.wire.protos.custom_options;
4 |
5 | import java.lang.annotation.ElementType;
6 | import java.lang.annotation.Retention;
7 | import java.lang.annotation.RetentionPolicy;
8 | import java.lang.annotation.Target;
9 |
10 | @Retention(RetentionPolicy.RUNTIME)
11 | @Target(ElementType.FIELD)
12 | public @interface MyFieldOptionFiveOption {
13 | int[] value();
14 | }
15 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/com/squareup/wire/protos/custom_options/MyFieldOptionOneOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.custom_options.my_field_option_one in custom_options.proto
3 | package com.squareup.wire.protos.custom_options;
4 |
5 | import java.lang.annotation.ElementType;
6 | import java.lang.annotation.Retention;
7 | import java.lang.annotation.RetentionPolicy;
8 | import java.lang.annotation.Target;
9 |
10 | /**
11 | * This is a superb option! Apply it to your greatest fields.
12 | */
13 | @Retention(RetentionPolicy.RUNTIME)
14 | @Target(ElementType.FIELD)
15 | public @interface MyFieldOptionOneOption {
16 | int value();
17 | }
18 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/com/squareup/wire/protos/custom_options/MyFieldOptionSevenOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.custom_options.my_field_option_seven in custom_options.proto
3 | package com.squareup.wire.protos.custom_options;
4 |
5 | import com.squareup.wire.protos.foreign.ForeignEnum;
6 | import java.lang.annotation.ElementType;
7 | import java.lang.annotation.Retention;
8 | import java.lang.annotation.RetentionPolicy;
9 | import java.lang.annotation.Target;
10 |
11 | @Retention(RetentionPolicy.RUNTIME)
12 | @Target(ElementType.FIELD)
13 | public @interface MyFieldOptionSevenOption {
14 | ForeignEnum[] value();
15 | }
16 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/com/squareup/wire/protos/custom_options/MyFieldOptionSixOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.custom_options.my_field_option_six in custom_options.proto
3 | package com.squareup.wire.protos.custom_options;
4 |
5 | import java.lang.String;
6 | import java.lang.annotation.ElementType;
7 | import java.lang.annotation.Retention;
8 | import java.lang.annotation.RetentionPolicy;
9 | import java.lang.annotation.Target;
10 |
11 | @Retention(RetentionPolicy.RUNTIME)
12 | @Target(ElementType.FIELD)
13 | public @interface MyFieldOptionSixOption {
14 | String[] value();
15 | }
16 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/com/squareup/wire/protos/custom_options/MyFieldOptionThreeOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.custom_options.my_field_option_three in custom_options.proto
3 | package com.squareup.wire.protos.custom_options;
4 |
5 | import java.lang.annotation.ElementType;
6 | import java.lang.annotation.Retention;
7 | import java.lang.annotation.RetentionPolicy;
8 | import java.lang.annotation.Target;
9 |
10 | @Retention(RetentionPolicy.RUNTIME)
11 | @Target(ElementType.FIELD)
12 | public @interface MyFieldOptionThreeOption {
13 | FooBar.FooBarBazEnum value();
14 | }
15 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/com/squareup/wire/protos/custom_options/MyFieldOptionTwoOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.custom_options.my_field_option_two in custom_options.proto
3 | package com.squareup.wire.protos.custom_options;
4 |
5 | import java.lang.annotation.ElementType;
6 | import java.lang.annotation.Retention;
7 | import java.lang.annotation.RetentionPolicy;
8 | import java.lang.annotation.Target;
9 |
10 | @Retention(RetentionPolicy.RUNTIME)
11 | @Target(ElementType.FIELD)
12 | public @interface MyFieldOptionTwoOption {
13 | float value();
14 | }
15 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/com/squareup/wire/protos/custom_options/MyMessageOptionEightOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.custom_options.my_message_option_eight in custom_options.proto
3 | package com.squareup.wire.protos.custom_options;
4 |
5 | import java.lang.String;
6 | import java.lang.annotation.ElementType;
7 | import java.lang.annotation.Retention;
8 | import java.lang.annotation.RetentionPolicy;
9 | import java.lang.annotation.Target;
10 |
11 | @Retention(RetentionPolicy.RUNTIME)
12 | @Target(ElementType.TYPE)
13 | public @interface MyMessageOptionEightOption {
14 | String[] value();
15 | }
16 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/com/squareup/wire/protos/custom_options/MyMessageOptionFourOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.custom_options.my_message_option_four in custom_options.proto
3 | package com.squareup.wire.protos.custom_options;
4 |
5 | import java.lang.annotation.ElementType;
6 | import java.lang.annotation.Retention;
7 | import java.lang.annotation.RetentionPolicy;
8 | import java.lang.annotation.Target;
9 |
10 | @Retention(RetentionPolicy.RUNTIME)
11 | @Target(ElementType.TYPE)
12 | public @interface MyMessageOptionFourOption {
13 | FooBar.FooBarBazEnum value();
14 | }
15 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/com/squareup/wire/protos/custom_options/MyMessageOptionNineOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.custom_options.my_message_option_nine in custom_options.proto
3 | package com.squareup.wire.protos.custom_options;
4 |
5 | import com.squareup.wire.protos.foreign.ForeignEnum;
6 | import java.lang.annotation.ElementType;
7 | import java.lang.annotation.Retention;
8 | import java.lang.annotation.RetentionPolicy;
9 | import java.lang.annotation.Target;
10 |
11 | @Retention(RetentionPolicy.RUNTIME)
12 | @Target(ElementType.TYPE)
13 | public @interface MyMessageOptionNineOption {
14 | ForeignEnum[] value();
15 | }
16 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/com/squareup/wire/protos/custom_options/MyMessageOptionSevenOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.custom_options.my_message_option_seven in custom_options.proto
3 | package com.squareup.wire.protos.custom_options;
4 |
5 | import java.lang.annotation.ElementType;
6 | import java.lang.annotation.Retention;
7 | import java.lang.annotation.RetentionPolicy;
8 | import java.lang.annotation.Target;
9 |
10 | /**
11 | * 50007 is taken.
12 | */
13 | @Retention(RetentionPolicy.RUNTIME)
14 | @Target(ElementType.TYPE)
15 | public @interface MyMessageOptionSevenOption {
16 | int[] value();
17 | }
18 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/com/squareup/wire/protos/custom_options/MyMessageOptionTwoOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.custom_options.my_message_option_two in custom_options.proto
3 | package com.squareup.wire.protos.custom_options;
4 |
5 | import java.lang.annotation.ElementType;
6 | import java.lang.annotation.Retention;
7 | import java.lang.annotation.RetentionPolicy;
8 | import java.lang.annotation.Target;
9 |
10 | @Retention(RetentionPolicy.RUNTIME)
11 | @Target(ElementType.TYPE)
12 | public @interface MyMessageOptionTwoOption {
13 | float value();
14 | }
15 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/com/squareup/wire/protos/custom_options/RepeatedEnumValueOptionOneOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.custom_options.repeated_enum_value_option_one in custom_options.proto
3 | package com.squareup.wire.protos.custom_options;
4 |
5 | import java.lang.annotation.ElementType;
6 | import java.lang.annotation.Retention;
7 | import java.lang.annotation.RetentionPolicy;
8 | import java.lang.annotation.Target;
9 |
10 | /**
11 | * 70002 is taken.
12 | */
13 | @Retention(RetentionPolicy.RUNTIME)
14 | @Target(ElementType.FIELD)
15 | public @interface RepeatedEnumValueOptionOneOption {
16 | int[] value();
17 | }
18 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/com/squareup/wire/protos/custom_options/RepeatedEnumValueOptionOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.custom_options.repeated_enum_value_option in custom_options.proto
3 | package com.squareup.wire.protos.custom_options;
4 |
5 | import java.lang.annotation.ElementType;
6 | import java.lang.annotation.Retention;
7 | import java.lang.annotation.RetentionPolicy;
8 | import java.lang.annotation.Target;
9 |
10 | /**
11 | * 70002 is taken.
12 | */
13 | @Retention(RetentionPolicy.RUNTIME)
14 | @Target(ElementType.FIELD)
15 | public @interface RepeatedEnumValueOptionOption {
16 | int[] value();
17 | }
18 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/com/squareup/wire/protos/custom_options/RepeatedEnumValueOptionTwoOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.custom_options.repeated_enum_value_option_two in custom_options.proto
3 | package com.squareup.wire.protos.custom_options;
4 |
5 | import java.lang.String;
6 | import java.lang.annotation.ElementType;
7 | import java.lang.annotation.Retention;
8 | import java.lang.annotation.RetentionPolicy;
9 | import java.lang.annotation.Target;
10 |
11 | @Retention(RetentionPolicy.RUNTIME)
12 | @Target(ElementType.FIELD)
13 | public @interface RepeatedEnumValueOptionTwoOption {
14 | String[] value();
15 | }
16 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/com/squareup/wire/protos/custom_options/ServiceOptionOneOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.custom_options.service_option_one in custom_options.proto
3 | package com.squareup.wire.protos.custom_options;
4 |
5 | import java.lang.annotation.ElementType;
6 | import java.lang.annotation.Retention;
7 | import java.lang.annotation.RetentionPolicy;
8 | import java.lang.annotation.Target;
9 |
10 | /**
11 | * This is a fluffy option! Apply it to your softest service types.
12 | */
13 | @Retention(RetentionPolicy.RUNTIME)
14 | @Target(ElementType.TYPE)
15 | public @interface ServiceOptionOneOption {
16 | int value();
17 | }
18 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/com/squareup/wire/protos/foreign/ForeignEnumValueOptionOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.foreign.foreign_enum_value_option in foreign.proto
3 | package com.squareup.wire.protos.foreign;
4 |
5 | import java.lang.annotation.ElementType;
6 | import java.lang.annotation.Retention;
7 | import java.lang.annotation.RetentionPolicy;
8 | import java.lang.annotation.Target;
9 |
10 | @Retention(RetentionPolicy.RUNTIME)
11 | @Target(ElementType.FIELD)
12 | public @interface ForeignEnumValueOptionOption {
13 | boolean value();
14 | }
15 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/squareup/options/misc/HideOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.options.misc.hide in options.proto
3 | package squareup.options.misc;
4 |
5 | import java.lang.annotation.ElementType;
6 | import java.lang.annotation.Retention;
7 | import java.lang.annotation.RetentionPolicy;
8 | import java.lang.annotation.Target;
9 |
10 | @Retention(RetentionPolicy.RUNTIME)
11 | @Target(ElementType.METHOD)
12 | public @interface HideOption {
13 | boolean value();
14 | }
15 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/squareup/options/misc/HttpOneOnlyOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.options.misc.httpOneOnly in options.proto
3 | package squareup.options.misc;
4 |
5 | import java.lang.annotation.ElementType;
6 | import java.lang.annotation.Retention;
7 | import java.lang.annotation.RetentionPolicy;
8 | import java.lang.annotation.Target;
9 |
10 | @Retention(RetentionPolicy.RUNTIME)
11 | @Target(ElementType.TYPE)
12 | public @interface HttpOneOnlyOption {
13 | boolean value();
14 | }
15 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/squareup/options/misc/MessageExportEnabledOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.options.misc.message_export_enabled in options.proto
3 | package squareup.options.misc;
4 |
5 | import java.lang.annotation.ElementType;
6 | import java.lang.annotation.Retention;
7 | import java.lang.annotation.RetentionPolicy;
8 | import java.lang.annotation.Target;
9 |
10 | @Retention(RetentionPolicy.RUNTIME)
11 | @Target(ElementType.TYPE)
12 | public @interface MessageExportEnabledOption {
13 | boolean value();
14 | }
15 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/squareup/options/misc/RelevantOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.options.misc.relevant in options.proto
3 | package squareup.options.misc;
4 |
5 | import java.lang.annotation.ElementType;
6 | import java.lang.annotation.Retention;
7 | import java.lang.annotation.RetentionPolicy;
8 | import java.lang.annotation.Target;
9 |
10 | @Retention(RetentionPolicy.RUNTIME)
11 | @Target(ElementType.FIELD)
12 | public @interface RelevantOption {
13 | boolean value();
14 | }
15 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/squareup/options/misc/TextAlignmentOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.options.misc.text_alignment in options.proto
3 | package squareup.options.misc;
4 |
5 | import java.lang.annotation.ElementType;
6 | import java.lang.annotation.Retention;
7 | import java.lang.annotation.RetentionPolicy;
8 | import java.lang.annotation.Target;
9 |
10 | @Retention(RetentionPolicy.RUNTIME)
11 | @Target(ElementType.FIELD)
12 | public @interface TextAlignmentOption {
13 | int value();
14 | }
15 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/squareup/options/misc/UnusedOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.options.misc.unused in options.proto
3 | package squareup.options.misc;
4 |
5 | import java.lang.annotation.ElementType;
6 | import java.lang.annotation.Retention;
7 | import java.lang.annotation.RetentionPolicy;
8 | import java.lang.annotation.Target;
9 |
10 | @Retention(RetentionPolicy.RUNTIME)
11 | @Target(ElementType.FIELD)
12 | public @interface UnusedOption {
13 | boolean value();
14 | }
15 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/squareup/protos/extension_collision_1/AOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.extension_collision_1.a in extension_collision_1.proto
3 | package squareup.protos.extension_collision_1;
4 |
5 | import java.lang.String;
6 | import java.lang.annotation.ElementType;
7 | import java.lang.annotation.Retention;
8 | import java.lang.annotation.RetentionPolicy;
9 | import java.lang.annotation.Target;
10 |
11 | @Retention(RetentionPolicy.RUNTIME)
12 | @Target(ElementType.FIELD)
13 | public @interface AOption {
14 | String value();
15 | }
16 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/squareup/protos/extension_collision_1/BOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.extension_collision_1.b in extension_collision_1.proto
3 | package squareup.protos.extension_collision_1;
4 |
5 | import java.lang.String;
6 | import java.lang.annotation.ElementType;
7 | import java.lang.annotation.Retention;
8 | import java.lang.annotation.RetentionPolicy;
9 | import java.lang.annotation.Target;
10 |
11 | @Retention(RetentionPolicy.RUNTIME)
12 | @Target(ElementType.FIELD)
13 | public @interface BOption {
14 | String value();
15 | }
16 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/squareup/protos/extension_collision_2/AOption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.extension_collision_2.a in extension_collision_2.proto
3 | package squareup.protos.extension_collision_2;
4 |
5 | import java.lang.String;
6 | import java.lang.annotation.ElementType;
7 | import java.lang.annotation.Retention;
8 | import java.lang.annotation.RetentionPolicy;
9 | import java.lang.annotation.Target;
10 |
11 | @Retention(RetentionPolicy.RUNTIME)
12 | @Target(ElementType.FIELD)
13 | public @interface AOption {
14 | String value();
15 | }
16 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJavaTest/proto-java/squareup/protos/extension_collision_2/COption.java:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.extension_collision_2.c in extension_collision_2.proto
3 | package squareup.protos.extension_collision_2;
4 |
5 | import java.lang.String;
6 | import java.lang.annotation.ElementType;
7 | import java.lang.annotation.Retention;
8 | import java.lang.annotation.RetentionPolicy;
9 | import java.lang.annotation.Target;
10 |
11 | @Retention(RetentionPolicy.RUNTIME)
12 | @Target(ElementType.FIELD)
13 | public @interface COption {
14 | String value();
15 | }
16 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmJsonTest/README.md:
--------------------------------------------------------------------------------
1 | ## JvmJsonTest
2 |
3 | This module is consumed by both `jvmJsonJavaTest` and `jvmJsonKotlinTest`. This allows us to run
4 | the same tests against code generated in both java and kotlin.
5 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmKotlinInteropTest/proto-kotlin/com/squareup/wire/protos/custom_options/ServiceWithOptionsClient.kt:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.custom_options.ServiceWithOptions in custom_options.proto
3 | @file:Suppress(
4 | "DEPRECATION",
5 | "RUNTIME_ANNOTATION_NOT_SUPPORTED",
6 | )
7 |
8 | package com.squareup.wire.protos.custom_options
9 |
10 | import com.squareup.wire.GrpcCall
11 | import com.squareup.wire.Service
12 | import kotlin.Suppress
13 |
14 | @ServiceOptionOneOption(456)
15 | public interface ServiceWithOptionsClient : Service {
16 | @MethodOptionOneOption(789)
17 | public fun MethodWithOptions(): GrpcCall
18 | }
19 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmKotlinInteropTest/proto-kotlin/com/squareup/wire/protos/kotlin/services/NoPackageServiceClient.kt:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: NoPackageService in service_without_package.proto
3 | @file:Suppress(
4 | "DEPRECATION",
5 | "RUNTIME_ANNOTATION_NOT_SUPPORTED",
6 | )
7 |
8 | package com.squareup.wire.protos.kotlin.services
9 |
10 | import com.squareup.wire.GrpcCall
11 | import com.squareup.wire.Service
12 | import kotlin.Suppress
13 |
14 | public interface NoPackageServiceClient : Service {
15 | public fun NoPackageMethod(): GrpcCall
16 | }
17 |
--------------------------------------------------------------------------------
/wire-tests/src/jvmKotlinInteropTest/proto-kotlin/com/squareup/wire/protos/kotlin/services/SomeServiceClient.kt:
--------------------------------------------------------------------------------
1 | // Code generated by Wire protocol buffer compiler, do not edit.
2 | // Source: squareup.protos.kotlin.SomeService in service_kotlin.proto
3 | @file:Suppress(
4 | "DEPRECATION",
5 | "RUNTIME_ANNOTATION_NOT_SUPPORTED",
6 | )
7 |
8 | package com.squareup.wire.protos.kotlin.services
9 |
10 | import com.squareup.wire.GrpcCall
11 | import com.squareup.wire.Service
12 | import kotlin.Suppress
13 |
14 | public interface SomeServiceClient : Service {
15 | public fun SomeMethod(): GrpcCall
16 | }
17 |
--------------------------------------------------------------------------------