Skip to content

Commit

Permalink
feat(dynamite): remove dependency on universal_io in the generated code
Browse files Browse the repository at this point in the history
Signed-off-by: Nikolas Rimikis <leptopoda@users.noreply.github.com>
  • Loading branch information
Leptopoda committed Jan 1, 2024
1 parent 1a111fb commit a43b8df
Show file tree
Hide file tree
Showing 44 changed files with 508 additions and 539 deletions.
1 change: 0 additions & 1 deletion packages/dynamite/dynamite/README.md
Expand Up @@ -12,7 +12,6 @@ dependencies:
collection: ^1.0.0
dynamite_runtime: ^0.0.1
meta: ^1.0.0
universal_io: ^2.0.0
uri: ^1.0.0
dev_dependencies:
build_runner: ^2.4.0
Expand Down
9 changes: 4 additions & 5 deletions packages/dynamite/dynamite/example/lib/petstore.openapi.dart
Expand Up @@ -15,7 +15,6 @@ import 'package:built_value/standard_json_plugin.dart' as _i3;
import 'package:dynamite_runtime/built_value.dart' as _i2;
import 'package:dynamite_runtime/http_client.dart' as _i1;
import 'package:meta/meta.dart';
import 'package:universal_io/io.dart';
import 'package:uri/uri.dart';

part 'petstore.openapi.g.dart';
Expand Down Expand Up @@ -79,7 +78,7 @@ class $Client extends _i1.DynamiteClient {
///
/// This method and the response it returns is experimental. The API might change without a major version bump.
///
/// Returns a [Future] containing a `DynamiteRawResponse` with the raw [HttpClientResponse] and serialization helpers.
/// Returns a [Future] containing a `DynamiteRawResponse` with the raw `HttpClientResponse` and serialization helpers.
/// Throws a `DynamiteApiException` if the API call does not return an expected status code.
///
/// Parameters:
Expand Down Expand Up @@ -146,7 +145,7 @@ class $Client extends _i1.DynamiteClient {
///
/// This method and the response it returns is experimental. The API might change without a major version bump.
///
/// Returns a [Future] containing a `DynamiteRawResponse` with the raw [HttpClientResponse] and serialization helpers.
/// Returns a [Future] containing a `DynamiteRawResponse` with the raw `HttpClientResponse` and serialization helpers.
/// Throws a `DynamiteApiException` if the API call does not return an expected status code.
///
/// Status codes:
Expand Down Expand Up @@ -205,7 +204,7 @@ class $Client extends _i1.DynamiteClient {
///
/// This method and the response it returns is experimental. The API might change without a major version bump.
///
/// Returns a [Future] containing a `DynamiteRawResponse` with the raw [HttpClientResponse] and serialization helpers.
/// Returns a [Future] containing a `DynamiteRawResponse` with the raw `HttpClientResponse` and serialization helpers.
/// Throws a `DynamiteApiException` if the API call does not return an expected status code.
///
/// Parameters:
Expand Down Expand Up @@ -268,7 +267,7 @@ class $Client extends _i1.DynamiteClient {
///
/// This method and the response it returns is experimental. The API might change without a major version bump.
///
/// Returns a [Future] containing a `DynamiteRawResponse` with the raw [HttpClientResponse] and serialization helpers.
/// Returns a [Future] containing a `DynamiteRawResponse` with the raw `HttpClientResponse` and serialization helpers.
/// Throws a `DynamiteApiException` if the API call does not return an expected status code.
///
/// Parameters:
Expand Down
1 change: 0 additions & 1 deletion packages/dynamite/dynamite/example/pubspec.yaml
Expand Up @@ -11,7 +11,6 @@ dependencies:
built_value: ^8.0.1
dynamite_runtime: ^0.1.0
meta: ^1.0.0
universal_io: ^2.0.0
uri: ^1.0.0

dev_dependencies:
Expand Down
2 changes: 1 addition & 1 deletion packages/dynamite/dynamite/lib/src/builder/client.dart
Expand Up @@ -446,7 +446,7 @@ return rawResponse.future;
b
..name = '${name}Raw'
..docs.addAll(operation.formattedDescription(name, isRawRequest: true))
..annotations.add(refer('experimental'));
..annotations.add(refer('experimental', 'package:meta/meta.dart'));

if (annotations != null) {
b.annotations.add(annotations);
Expand Down
4 changes: 2 additions & 2 deletions packages/dynamite/dynamite/lib/src/builder/serializer.dart
Expand Up @@ -10,7 +10,7 @@ List<Spec> buildSerializer(State state) => [
///
/// Serializes values into the `built_value` wire format.
/// See: [$jsonSerializers] for serializing into json.''')
..annotations.add(refer('visibleForTesting'))
..annotations.add(refer('visibleForTesting', 'package:meta/meta.dart'))
..modifier = FieldModifier.final$
..type = refer('Serializers')
..name = r'$serializers'
Expand Down Expand Up @@ -42,7 +42,7 @@ List<Spec> buildSerializer(State state) => [
///
/// Serializes values into the json. Json serialization is more expensive than the built_value wire format.
/// See: [$serializers] for serializing into the `built_value` wire format.''')
..annotations.add(refer('visibleForTesting'))
..annotations.add(refer('visibleForTesting', 'package:meta/meta.dart'))
..modifier = FieldModifier.final$
..type = refer('Serializers')
..name = r'$jsonSerializers'
Expand Down
Expand Up @@ -8,7 +8,6 @@ final dependencies = {
'collection': Version.parse('1.0.0'),
'dynamite_runtime': Version.parse('0.1.0'),
'meta': Version.parse('1.0.0'),
'universal_io': Version.parse('2.0.0'),
'uri': Version.parse('1.0.0'),
};

Expand Down
Expand Up @@ -59,7 +59,7 @@ abstract class Operation implements Built<Operation, OperationBuilder> {
yield '''
$docsSeparator This method and the response it returns is experimental. The API might change without a major version bump.
$docsSeparator
$docsSeparator Returns a [Future] containing a `DynamiteRawResponse` with the raw [HttpClientResponse] and serialization helpers.''';
$docsSeparator Returns a [Future] containing a `DynamiteRawResponse` with the raw `HttpClientResponse` and serialization helpers.''';
} else {
yield '$docsSeparator Returns a [Future] containing a `DynamiteResponse` with the status code, deserialized body and headers.';
}
Expand Down
2 changes: 0 additions & 2 deletions packages/dynamite/dynamite/lib/src/openapi_builder.dart
Expand Up @@ -90,8 +90,6 @@ class OpenAPIBuilder implements Builder {
Directive.import('package:built_value/serializer.dart'),
Directive.import('package:collection/collection.dart'),
Directive.import('package:dynamite_runtime/models.dart'),
Directive.import('package:meta/meta.dart'),
Directive.import('package:universal_io/io.dart'),
Directive.import('package:uri/uri.dart'),
])
..body.addAll(generateClients(spec, state))
Expand Down
Expand Up @@ -9,9 +9,9 @@

import 'package:built_value/built_value.dart';
import 'package:built_value/serializer.dart';
import 'package:built_value/standard_json_plugin.dart' as _i2;
import 'package:dynamite_runtime/built_value.dart' as _i1;
import 'package:meta/meta.dart';
import 'package:built_value/standard_json_plugin.dart' as _i3;
import 'package:dynamite_runtime/built_value.dart' as _i2;
import 'package:meta/meta.dart' as _i1;

part 'all_of.openapi.g.dart';

Expand Down Expand Up @@ -175,7 +175,7 @@ abstract class OneValueAllOf implements $OneValueAllOfInterface, Built<OneValueA
///
/// Serializes values into the `built_value` wire format.
/// See: [$jsonSerializers] for serializing into json.
@visibleForTesting
@_i1.visibleForTesting
final Serializers $serializers = _$serializers;
final Serializers _$serializers = (Serializers().toBuilder()
..addBuilderFactory(const FullType(ObjectAllOf), ObjectAllOfBuilder.new)
Expand All @@ -194,12 +194,12 @@ final Serializers _$serializers = (Serializers().toBuilder()
///
/// Serializes values into the json. Json serialization is more expensive than the built_value wire format.
/// See: [$serializers] for serializing into the `built_value` wire format.
@visibleForTesting
@_i1.visibleForTesting
final Serializers $jsonSerializers = _$jsonSerializers;
final Serializers _$jsonSerializers = (_$serializers.toBuilder()
..add(_i1.DynamiteDoubleSerializer())
..addPlugin(_i2.StandardJsonPlugin())
..addPlugin(const _i1.HeaderPlugin())
..addPlugin(const _i1.ContentStringPlugin()))
..add(_i2.DynamiteDoubleSerializer())
..addPlugin(_i3.StandardJsonPlugin())
..addPlugin(const _i2.HeaderPlugin())
..addPlugin(const _i2.ContentStringPlugin()))
.build();
// coverage:ignore-end
Expand Up @@ -9,10 +9,10 @@

import 'package:built_value/built_value.dart';
import 'package:built_value/serializer.dart';
import 'package:built_value/standard_json_plugin.dart' as _i3;
import 'package:dynamite_runtime/built_value.dart' as _i2;
import 'package:built_value/standard_json_plugin.dart' as _i4;
import 'package:dynamite_runtime/built_value.dart' as _i3;
import 'package:dynamite_runtime/utils.dart' as _i1;
import 'package:meta/meta.dart';
import 'package:meta/meta.dart' as _i2;

part 'any_of.openapi.g.dart';

Expand Down Expand Up @@ -382,7 +382,7 @@ class _$b6d67dc2a96424d2f407f8e51557f3deSerializer implements PrimitiveSerialize
///
/// Serializes values into the `built_value` wire format.
/// See: [$jsonSerializers] for serializing into json.
@visibleForTesting
@_i2.visibleForTesting
final Serializers $serializers = _$serializers;
final Serializers _$serializers = (Serializers().toBuilder()
..addBuilderFactory(const FullType(ObjectAnyOf0), ObjectAnyOf0Builder.new)
Expand All @@ -402,12 +402,12 @@ final Serializers _$serializers = (Serializers().toBuilder()
///
/// Serializes values into the json. Json serialization is more expensive than the built_value wire format.
/// See: [$serializers] for serializing into the `built_value` wire format.
@visibleForTesting
@_i2.visibleForTesting
final Serializers $jsonSerializers = _$jsonSerializers;
final Serializers _$jsonSerializers = (_$serializers.toBuilder()
..add(_i2.DynamiteDoubleSerializer())
..addPlugin(_i3.StandardJsonPlugin())
..addPlugin(const _i2.HeaderPlugin())
..addPlugin(const _i2.ContentStringPlugin()))
..add(_i3.DynamiteDoubleSerializer())
..addPlugin(_i4.StandardJsonPlugin())
..addPlugin(const _i3.HeaderPlugin())
..addPlugin(const _i3.ContentStringPlugin()))
.build();
// coverage:ignore-end
Expand Up @@ -9,12 +9,11 @@

import 'package:built_value/json_object.dart';
import 'package:built_value/serializer.dart';
import 'package:built_value/standard_json_plugin.dart' as _i3;
import 'package:built_value/standard_json_plugin.dart' as _i4;
import 'package:collection/collection.dart';
import 'package:dynamite_runtime/built_value.dart' as _i2;
import 'package:dynamite_runtime/built_value.dart' as _i3;
import 'package:dynamite_runtime/http_client.dart' as _i1;
import 'package:meta/meta.dart';
import 'package:universal_io/io.dart';
import 'package:meta/meta.dart' as _i2;

class $Client extends _i1.DynamiteClient {
/// Creates a new `DynamiteClient` for untagged requests.
Expand Down Expand Up @@ -53,15 +52,15 @@ class $Client extends _i1.DynamiteClient {

/// This method and the response it returns is experimental. The API might change without a major version bump.
///
/// Returns a [Future] containing a `DynamiteRawResponse` with the raw [HttpClientResponse] and serialization helpers.
/// Returns a [Future] containing a `DynamiteRawResponse` with the raw `HttpClientResponse` and serialization helpers.
/// Throws a `DynamiteApiException` if the API call does not return an expected status code.
///
/// Status codes:
/// * 200
///
/// See:
/// * [noAuthentication] for an operation that returns a `DynamiteResponse` with a stable API.
@experimental
@_i2.experimental
_i1.DynamiteRawResponse<JsonObject, void> noAuthenticationRaw() {
const _headers = <String, String>{
'Accept': 'application/json',
Expand Down Expand Up @@ -98,15 +97,15 @@ class $Client extends _i1.DynamiteClient {

/// This method and the response it returns is experimental. The API might change without a major version bump.
///
/// Returns a [Future] containing a `DynamiteRawResponse` with the raw [HttpClientResponse] and serialization helpers.
/// Returns a [Future] containing a `DynamiteRawResponse` with the raw `HttpClientResponse` and serialization helpers.
/// Throws a `DynamiteApiException` if the API call does not return an expected status code.
///
/// Status codes:
/// * 200
///
/// See:
/// * [basicAuthentication] for an operation that returns a `DynamiteResponse` with a stable API.
@experimental
@_i2.experimental
_i1.DynamiteRawResponse<JsonObject, void> basicAuthenticationRaw() {
final _headers = <String, String>{
'Accept': 'application/json',
Expand Down Expand Up @@ -160,15 +159,15 @@ class $Client extends _i1.DynamiteClient {

/// This method and the response it returns is experimental. The API might change without a major version bump.
///
/// Returns a [Future] containing a `DynamiteRawResponse` with the raw [HttpClientResponse] and serialization helpers.
/// Returns a [Future] containing a `DynamiteRawResponse` with the raw `HttpClientResponse` and serialization helpers.
/// Throws a `DynamiteApiException` if the API call does not return an expected status code.
///
/// Status codes:
/// * 200
///
/// See:
/// * [bearerAuthentication] for an operation that returns a `DynamiteResponse` with a stable API.
@experimental
@_i2.experimental
_i1.DynamiteRawResponse<JsonObject, void> bearerAuthenticationRaw() {
final _headers = <String, String>{
'Accept': 'application/json',
Expand Down Expand Up @@ -222,15 +221,15 @@ class $Client extends _i1.DynamiteClient {

/// This method and the response it returns is experimental. The API might change without a major version bump.
///
/// Returns a [Future] containing a `DynamiteRawResponse` with the raw [HttpClientResponse] and serialization helpers.
/// Returns a [Future] containing a `DynamiteRawResponse` with the raw `HttpClientResponse` and serialization helpers.
/// Throws a `DynamiteApiException` if the API call does not return an expected status code.
///
/// Status codes:
/// * 200
///
/// See:
/// * [multipleAuthentications] for an operation that returns a `DynamiteResponse` with a stable API.
@experimental
@_i2.experimental
_i1.DynamiteRawResponse<JsonObject, void> multipleAuthenticationsRaw() {
final _headers = <String, String>{
'Accept': 'application/json',
Expand Down Expand Up @@ -274,20 +273,20 @@ class $Client extends _i1.DynamiteClient {
///
/// Serializes values into the `built_value` wire format.
/// See: [$jsonSerializers] for serializing into json.
@visibleForTesting
@_i2.visibleForTesting
final Serializers $serializers = _$serializers;
final Serializers _$serializers = Serializers();

/// Serializer for all values in this library.
///
/// Serializes values into the json. Json serialization is more expensive than the built_value wire format.
/// See: [$serializers] for serializing into the `built_value` wire format.
@visibleForTesting
@_i2.visibleForTesting
final Serializers $jsonSerializers = _$jsonSerializers;
final Serializers _$jsonSerializers = (_$serializers.toBuilder()
..add(_i2.DynamiteDoubleSerializer())
..addPlugin(_i3.StandardJsonPlugin())
..addPlugin(const _i2.HeaderPlugin())
..addPlugin(const _i2.ContentStringPlugin()))
..add(_i3.DynamiteDoubleSerializer())
..addPlugin(_i4.StandardJsonPlugin())
..addPlugin(const _i3.HeaderPlugin())
..addPlugin(const _i3.ContentStringPlugin()))
.build();
// coverage:ignore-end
18 changes: 9 additions & 9 deletions packages/dynamite/dynamite_end_to_end_test/lib/enum.openapi.dart
Expand Up @@ -10,9 +10,9 @@
import 'package:built_collection/built_collection.dart';
import 'package:built_value/built_value.dart';
import 'package:built_value/serializer.dart';
import 'package:built_value/standard_json_plugin.dart' as _i2;
import 'package:dynamite_runtime/built_value.dart' as _i1;
import 'package:meta/meta.dart';
import 'package:built_value/standard_json_plugin.dart' as _i3;
import 'package:dynamite_runtime/built_value.dart' as _i2;
import 'package:meta/meta.dart' as _i1;

part 'enum.openapi.g.dart';

Expand Down Expand Up @@ -400,7 +400,7 @@ abstract class EnumReference implements $EnumReferenceInterface, Built<EnumRefer
///
/// Serializes values into the `built_value` wire format.
/// See: [$jsonSerializers] for serializing into json.
@visibleForTesting
@_i1.visibleForTesting
final Serializers $serializers = _$serializers;
final Serializers _$serializers = (Serializers().toBuilder()
..add(EnumString.serializer)
Expand All @@ -418,12 +418,12 @@ final Serializers _$serializers = (Serializers().toBuilder()
///
/// Serializes values into the json. Json serialization is more expensive than the built_value wire format.
/// See: [$serializers] for serializing into the `built_value` wire format.
@visibleForTesting
@_i1.visibleForTesting
final Serializers $jsonSerializers = _$jsonSerializers;
final Serializers _$jsonSerializers = (_$serializers.toBuilder()
..add(_i1.DynamiteDoubleSerializer())
..addPlugin(_i2.StandardJsonPlugin())
..addPlugin(const _i1.HeaderPlugin())
..addPlugin(const _i1.ContentStringPlugin()))
..add(_i2.DynamiteDoubleSerializer())
..addPlugin(_i3.StandardJsonPlugin())
..addPlugin(const _i2.HeaderPlugin())
..addPlugin(const _i2.ContentStringPlugin()))
.build();
// coverage:ignore-end

0 comments on commit a43b8df

Please sign in to comment.