PackageTrack
Sign in Get early access

swagger_parser

Package that generates REST clients and data classes from OpenApi definition file

1.44.1 41K downloads/mo #1595 most downloaded on pub.dev Carapacik/swagger_parser

What this package is like to depend on

Last release 22 days ago

02 Aug 2026

Ships fairly regularly

a new release about every 3 weeks

Nearly every release is documented

notes for 148 of 148 stable releases

Nothing withdrawn

no release was ever pulled

4 years old

148 releases · first in 2022

20 releases in the last 12 months

see the full history below

Release timeline

148 releases · Oct 2022 to Aug 2026
2023 2024 2025 2026
Release Pre-release

Releases

latest 60 of 148
  1. 1.44.1 02 Aug 2026
    Release notes
    • Fixes dart_mappable enum generation for JSON Schema type lists by quoting
      non-numeric JSON values (#468).
    Open source →
    Release notes
    • Fixes dart_mappable enum generation for JSON Schema type lists by quoting non-numeric JSON values (#468).
    Open source →
  2. 1.44.0 22 Jun 2026
    Release notes
    • Add preserve_schema_casing option to preserve original casing of schema-derived identifiers, defaults to false for backwards compatibility, which normalises to PascalCase
    • Fix crash when a multipart/form-data request body references a schema without properties
    • Fix nullable handling for single-element allOf, oneOf, and anyOf schemas with sibling nullable: true
    • Fix missing imports for nested union properties in Freezed discriminated-union variants
    Open source →
    Release notes
    • Adds preserve_schema_casing option to preserve original casing of schema-derived identifiers, defaults to false for backwards compatibility, which normalises to PascalCase.
    • Fixes crash when a multipart/form-datarequest body references a schema withoutproperties.
    • Fixes nullable handling for single-element allOf, oneOf, and anyOf schemas with sibling nullable: true.
    • Fixes missing imports for nested union properties in Freezed discriminated-union variants.
    Open source →
  3. 1.43.1 21 Apr 2026
    Release notes
    • Fix escaping $unknown in generated enum toJson error messages
    • Fix generated code when using json_serializable
    • Fix default enum values for dart_mappable
    • Add README section about Server-Sent Events
    Open source →
    Release notes
    • Fixes escaping $unknownin generated enumtoJson error messages.
    • Fixes generated code when using json_serializable.
    • Fixes default enum values for dart_mappable.
    • Adds README section about Server-Sent Events.
    Open source →
  4. 1.43.0 03 Mar 2026
    Release notes
    • Allow standard dart_mappable serializer method naming convention
    • Fix default values for Enums in forms
    • Fix errors with corrector
    Open source →
    Release notes
    • Allows standard dart_mappable serializer method naming convention.
    • Fixes default values for Enums in forms.
    • Fixes errors with corrector.
    Open source →
  5. 1.42.0 02 Feb 2026
    Release notes
    • Support for streaming & SSE
    • Fix preserve property names and required modifiers in properties blocks
    • Fix API path definitions are incorrectly converted to PascalCase
    Open source →
    Release notes
    • Adds support for streaming & SSE.
    • Fixes preserve property names and required modifiers in properties blocks.
    • Fixes API path definitions are incorrectly converted to PascalCase.
    Open source →
  6. 1.41.0 28 Jan 2026
    Release notes
    • Add field_parsers option for setting field parsers for JSON serializable
    Open source →
    Release notes
    • Adds field_parsers option for setting field parsers for JSON serializable.
    Open source →
  7. 1.40.0 23 Jan 2026
    Release notes
    • Add include_paths option for filtering endpoints by paths
    • Add generate_urls_constants option for generating URL constants for all endpoints
    Open source →
    Release notes
    • Adds include_paths option for filtering endpoints by paths.
    • Adds generate_urls_constants option for generating URL constants for all endpoints.
    Open source →
  8. 1.39.1 19 Jan 2026
    Release notes
    • Fixes client methods returning ModelNameUnioninstead ofModelNameSealed for oneOf types (#393).
    Open source →
  9. 1.39.0 18 Jan 2026
    Release notes
    • Handle request body name generation case when request body is declared within request
    • Fix incorrect deserialization syntax for undiscriminated unions (Freezed serializer)
    Open source →
    Release notes
    • Handles request body name generation case when request body is declared within request.
    • Fixes incorrect deserialization syntax for undiscriminated unions (Freezed serializer).
    Open source →
  10. 1.38.0 14 Jan 2026
    Release notes
    • Add replacement_rules_for_raw_schema option for raw schema objects replacement rules
    Open source →
    Release notes
    • Adds replacement_rules_for_raw_schema option for raw schema objects replacement rules.
    Open source →
  11. 1.37.1 23 Dec 2025
    Release notes
    • Fixes missing import for MultipartFile(#408).
    • Fixes refs in components.responses.
    Open source →
  12. 1.37.0 08 Dec 2025
    Release notes
    • Add use_flutter_compute option for Flutter isolate-based multithreading support
      • Generates @RestApi(parser: Parser.FlutterCompute) annotation in Retrofit clients
      • Generates top-level serialization functions in each DTO model file following Retrofit's naming convention
      • Works with all serializers: freezed, json_serializable, dart_mappable
    swagger_parser:
      use_flutter_compute: true
    Open source →
    Release notes
    • Adds use_flutter_compute option for Flutter isolate-based multithreading support.
      • Generates @RestApi(parser: Parser.FlutterCompute) annotation in Retrofit clients.
      • Generates top-level serialization functions in each DTO model file following Retrofit's naming convention.
      • Works with all serializers: freezed, json_serializable, dart_mappable.
    swagger_parser:
      use_flutter_compute: true
    
    Open source →
  13. 1.36.0 03 Dec 2025
    Release notes
    • Adds add_openapi_metadata(defaultfalse) to generate OpenAPI tags, operationId, and externalDocsUrlconstants for each endpoint; whenextras_parameter_by_defaultistrue, the metadata is also prefilled into Dio extras—handy for interceptors and logging without overwriting user-supplied extras.
    • Uses fully-qualified default extras values (e.g. BannerApi.findAllBannersOpenapiExtras) so generated implementations can access the static metadata constants.
    swagger_parser:
      extras_parameter_by_default: true
      add_openapi_metadata: true
    
    abstract class PetsClient {
      static const Map<String, dynamic> listPetsOpenapiExtras =
          <String, dynamic>{
        'openapi': <String, dynamic>{
          'tags': <String>['pets'],
          'operationId': 'listPets',
          'externalDocsUrl': 'https://docs.example.com/pets',
        },
      };
    
      @GET('/pets')
      Future<void> listPets({
        // defaults to the OpenAPI metadata; merge with your own extras if needed
        @Extras() Map<String, dynamic>? extras =
            PetsClient.listPetsOpenapiExtras,
        @DioOptions() RequestOptions? options,
      });
    }
    
    # https://openapi.sepc/pets/listPets
    
    Open source →
  14. 1.35.2 28 Nov 2025
    Release notes
    • Fixes enum name values being an int returned in a toString.
    Open source →
  15. 1.35.1 25 Nov 2025
    Release notes
    • Fixes enum names generation.
    Open source →
  16. 1.35.0 01 Nov 2025
    Release notes
    • Adds infer_required_from_nullable.
    infer_required_from_nullable: true
    
    Schema without required array:
    - id: type: integer → required int id
    - name: type: string → required String name
    - desc: type: string, nullable: true → String? desc
    
    • Fixes nullable array item types generation.
    Open source →
  17. 1.34.0 18 Oct 2025
    Release notes
    • Adds includeIfNullhandling, disabled by default; setinclude_if_null: true to enable it.
    Open source →
  18. 1.32.1 16 Oct 2025
    Release notes
    • Fixes CHANGELOG duplication.
    Open source →
  19. 1.32.0 16 Oct 2025
    Release notes
    • Adds complete support for sealed classes (oneOf/anyOf) with the json_serializable serializer.
      • WARNING: Undiscriminated sealed classes use O(n) try-catch deserialization where n is the number of variants.
      • RECOMMENDED: Adds discriminator properties to your OpenAPI specification for O(1) performance.
      • Adds support for sealed classes fallback for failed decoding.
    • Adds complete support for sealed classes (oneOf/anyOf) with the dart_mappable serializer.
      • WARNING: Undiscriminated sealed classes use O(n) try-catch deserialization where n is the number of variants.
      • RECOMMENDED: Adds discriminator properties to your OpenAPI specification for O(1) performance.
      • Adds support for sealed classes fallback for failed decoding.
    • Adds dart_mappable_convenient_whenoption to control union type generation fordart_mappable serializer.
      • dart_mappable_convenient_when: truegenerates legacywhen<T>, maybeWhen<T> methods.
      • dart_mappable_convenient_when: false (default) generates sealed classes for better type safety.
    • Adds the @Deprecated()annotation to thewhen<T>andmaybeWhen<T> methods for dart_mappable; use Dart pattern matching instead.
    • Fixes duplicate unknownenum values fordart_mappable when unknown_enum_value: true is enabled.
    • Fixes nullable discriminator union handling.
    Open source →
  20. 1.30.1 30 Sep 2025
    Release notes
    • Fixes resolve inline schemas nested within tagged operations.
    Open source →
  21. 1.30.0 20 Aug 2025
    Release notes
    • Adds support for merging all generated code into single output file using the merge_outputs option.
    Open source →
  22. 1.29.0 19 Aug 2025
    Release notes

    Features

    • Adds support for non-discriminated unions (oneOf/anyOf without a discriminator).
    • Filters out unused schemas when using include_tagsorexclude_tags.

    Fixes

    • Fixes the client name for untagged paths to properly fall back to the configured fallback_client instead of client.
    • Fixes the fallback_clientconfiguration to default tofallbackinstead ofdefault to avoid conflicts with the Dart default keyword in the generated code.
    • Fixes OpenAPI spec parsing to correctly preserve casing for SCREAMING_SNAKE_CASE.
    • Fixes filtering so paths without tags are filtered out when include_tags is specified.
    Open source →
  23. 1.28.0 06 Aug 2025
    Release notes
    • Fixes documentation.
    • Fixes ensure consistent file naming for tags with alphanumeric suffixes.
    Open source →
  24. 1.27.0 01 Aug 2025
    Release notes
    • Allows filtering generated client endpoints by tags.
    • Adds a fallback client for endpoints without tags (#271).
    Open source →
  25. 1.26.3 22 Jul 2025
    Release notes
    • Fixes collisions between untagged endpoints and endpoints tagged Client that caused generated clients to overwrite each other.
    Open source →
  26. 1.26.2 15 Jul 2025
    Release notes
    • Aligns default value handling for parameters according to OpenAPi Spec https://swagger.io/docs/specification/v3_0/describing-parameters/#default-parameter-values.
    Open source →
  27. 1.26.1 08 Jul 2025
    Release notes
    • Adds a toStringoverride fordart_mappable.
    • Makes dart_mappable toJson return a string.
    Open source →
  28. 1.25.0 07 Jul 2025
    Release notes
    • Allows using MultipartFileinstead ofFile in multipart requests, to support usage on web.
    Open source →
  29. 1.24.5 30 Jun 2025
    Release notes
    • Adds an enum toString() override that provides a JSON value to third-party consumers such as Retrofit.
    Open source →
  30. 1.24.4 29 Jun 2025
    Release notes
    • Adds the $valuesDefined getter to filter out unknown values automatically.
    Open source →
  31. 1.24.3 17 Jun 2025
    Release notes
    • Deduplicates property names for allOfschemas that mixrefandproperties, preventing naming overlaps.
    Open source →
  32. 1.24.2 16 Jun 2025
    Release notes
    Open source →
  33. 1.24.1 27 May 2025
    Release notes
    • Removes duplicate parameters in dataclass(#322).
    Open source →
  34. 1.24.0 26 May 2025
    Release notes
    • Fixes detection of nullable list with non-null items vs nullable list with nullable items(#323).
    • Requires Dart 3.6 or later.
    Open source →
  35. 1.23.2 05 May 2025
    Release notes
    • Fixes error with client parameters with $(#262).
    Open source →
  36. 1.23.1 30 Apr 2025
    Release notes
    • Updates dart_mappable template.
    Open source →
  37. 1.23.0 29 Apr 2025
    Release notes
    • Adds support for allOf composition and xOf (#239).
    • Fixes nullable handling (#251).
    • Makes list with null in items nullable.
    Open source →
  38. 1.22.1 29 Mar 2025
    Release notes
    • Adds supports for freezed 3.
    Open source →
  39. 1.22.0 15 Mar 2025
    Release notes
    • Adds supports oneOf polymorphic types with dart_mappable (#290).
    Open source →
  40. 1.21.4 18 Feb 2025
    Release notes
    • Adds x-enumNames(#289).
    • Fixes errors with nullable in enums (#216).
    • Fixes duplicate class generation when using discriminator (#300).
    Open source →
  41. 1.21.3 30 Jan 2025
    Release notes
    Open source →
  42. 1.21.2 27 Jan 2025
    Release notes
    • Adds use_x_nullable parameter to config(#295).
    • Fixes error with config(#296).
    Open source →
  43. 1.21.1 24 Jan 2025
    Release notes
    • Fixes config properties inheritance with multi-scheme URLs(#293).
    Open source →
  44. 1.21.0 16 Jan 2025
    Release notes
    • Adds support for union types oneOf(#265, #286).
    • Fixes config property inheritance.
    Open source →
  45. 1.20.1 05 Dec 2024
    Release notes
    • Fixes errors with config parsing.
    Open source →
  46. 1.20.0 04 Dec 2024
    Release notes
    • Adds validation params to generated freezed classes.
    • Fixes errors with empty schema properties(#280).
    Open source →
  47. 1.19.2 14 Oct 2024
    Release notes
    • Fixes replacement rules for OpenAPI v2(#266).
    • Adds x-nullable field for null definition in OpenAPI v2(#268).
    Open source →
  48. 1.19.1 30 Sep 2024
    Release notes
    • Fixes generation with anyOf, oneOfandallOf properties(#260).
    Open source →
  49. 1.19.0 06 Sep 2024
    Release notes
    • Adds version getter to root client:
    final version = RestClient.version;
    
    • Adds dio_options_parameter_by_default.
    Open source →
  50. 1.18.3 28 Aug 2024
    Release notes
    • Removes support of BigInt in Dart for int64 types.
    Open source →
  51. 1.18.2 26 Aug 2024
    Release notes
    • Adds support for int64 types.
    Open source →
  52. 1.18.1 09 Aug 2024
    Release notes
    • Fixes errors with nullable: false.
    • Fixes same property name conflict(#235).
    Open source →
  53. 1.18.0 06 Jun 2024
    Release notes
    • Handles empty enum value case (#238).
    • Fixes replacement rules.
    • Adds support for nullable lists and maps.
    • Removes the required_by_default config parameter; behavior now matches required_by_default: false.
    • Requires Dart 3.4.
    Open source →
  54. 1.17.3 09 May 2024
    Release notes
    • Fixes unnecessary null types with required_by_default: false.
    • Fixes generation of class parameters that are set directly from the request specification (#224).
    • Fixes changing case and applying replacement rules to class names (#223).
    • Generates maps with additionalProperties correctly (#214).
    Open source →
  55. 1.17.2 01 Apr 2024
    Release notes
    • Adds MappableField to dart_mappable template.
    Open source →
  56. 1.17.1 13 Mar 2024
    Release notes
    • Fixes error with nullable in multipart (#211).
    Open source →
  57. 1.17.0 05 Mar 2024
    Release notes
    Open source →
  58. 1.16.4 03 Mar 2024
    Release notes
    • Fixes errors with required_by_default.
    Open source →
  59. 1.16.3 02 Mar 2024
    Release notes
    • Adds a temporary fix for #110.
    • Ignores parameters start with x- for (#185).
    • Fixes parameter type (#186.
    • Fixes handle $ref (#187) and (#183).
    Open source →
  60. 1.16.2 28 Feb 2024
    Release notes
    • Adds new exceptions to export.
    • Fixes file name from schemeUrl.
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive