vm_service
A library to communicate with a service implementing the Dart VM service protocol.
15.3.0
15M downloads/mo
#3 most downloaded on pub.dev
dart-lang/sdk
What this package is like to depend on
Last release 5 days ago
18 Aug 2026
Release timing varies
gaps range from 2 weeks to 10 months
Nearly every release is documented
notes for 86 of 90 stable releases
2 versions withdrawn
withdrawn after publishing
7 years old
99 releases · first in 2019
3 releases in the last 12 months
see the full history below
Release timeline
99 releases · Jul 2019 to Aug 2026
2020
2021
2022
2023
2024
2025
2026
Releases
latest 60 of 99-
15.3.018 Aug 2026 -
15.2.028 Apr 2026Release notes
Open source →- Update to version
4.22of the spec. - Deprecate
Messagetype andmessagesfield ofStacktype. - Fix an issue introduced in 15.1.0 that could cause
parse()methods (such asVM.parse()) to leave collections asnullinstead of empty lists when they were not present in the JSON.
- Update to version
-
15.1.014 Apr 2026Release notes
Open source →- Update to version
4.21of the spec. - Add
PointertoInstanceKind. - Add
valueAsStringfields toInstanceforPointerkind. - Add a default
pingIntervalof 15s to VM Service connections with the ability to override when callingvmServiceConnectUri. - Deprecate
streamCpuSamplesWithUserTagRPC. - Fix bug where
RPCErrorexceptions thrown by service callbacks were incorrectly wrapped askServerError, losing the original error code.
- Update to version
-
15.0.205 Jun 2025 -
15.0.121 May 2025Release notes
Open source →- Update to version
4.19of the spec. - Add
Timerstream. - Add
detailsproperty toEvent. - Add
getQueuedMicrotasksRPC. - Add
MicrotaskandQueuedMicrotaskstypes. - Add
RPCErrorKind.kCannotGetQueuedMicrotasks.
- Update to version
-
15.0.002 Dec 2024Release notes
Open source →- Update type of
CodeRef.functionfromFuncReftodynamicto allow forNativeFunctionfunctions (flutter/devtools #8567).
- Update type of
-
14.3.122 Oct 2024Release notes
Open source →- Fix crash that could occur when trying to send a service extension response after the service connection had already been disposed of (flutter/flutter #157296).
-
14.3.025 Sep 2024Release notes
Open source →- Update to version
4.16of the spec. - Add
reloadFailureReasonproperty toEvent. - Add a new constant (
RPCErrorKind.kConnectionDisposed = -32010) for requests failing because the service connection was closed. This value is not currently used but is provided for clients to handle in preperation for a future release that will use it to avoid clients having to read error messages. - Add
createIdZone,deleteIdZone, andinvalidateIdZoneRPCs. - Add optional
idZoneIdparameter toevaluate,evaluateInFrame,getInboundReferences,getInstances,getInstancesAsList,getObject,getRetainingPath,getStack, andinvokeRPCs.
- Update to version
-
14.2.516 Aug 2024Release notes
Open source →- Include a stack trace in the RPCError that is thrown when an attempt is made
to invoke an RPC using a
VmServiceinstance that has been disposed.
- Include a stack trace in the RPCError that is thrown when an attempt is made
to invoke an RPC using a
-
14.2.414 Jun 2024Release notes
Open source →- Improved deserialization performance by utilizing a combination of
Utf8DecoderandJsonDecoderto avoid extra type conversions.
- Improved deserialization performance by utilizing a combination of
-
14.2.330 May 2024Release notes
Open source →- An instance of RPCError is now thrown when attempting to invoke an RPC after the
VmServiceinstance has been disposed.
- An instance of RPCError is now thrown when attempting to invoke an RPC after the
-
14.2.207 May 2024Release notes
Open source →- Fixes issue where outstanding service requests were not automatically completed with an error when the VM service connection was closed.
-
14.2.116 Apr 2024 -
14.2.020 Mar 2024Release notes
Open source →- Update to version
4.15of the spec. - Added
closureReceiverproperty toInstanceandInstanceRef. - Added
Finalizer,NativeFinalizer, andFinalizerEntryinstance kinds.
- Update to version
-
14.1.027 Feb 2024Release notes
Open source →- Added
HeapSnapshotGraph.toChunks(). - Added optional
calculateReferrers,decodeObjectData,decodeExternalProperties, anddecodeIdentityHashCodesparameters toHeapSnapshotGraph.fromChunks().
- Added
-
14.0.012 Dec 2023Release notes
Open source →- Add the following error codes to
RPCErrorKind:kVmMustBePausedkCannotAddBreakpointkIsolateMustBeRunnablekIsolateCannotBeResumedkIsolateIsReloadingkIsolateCannotReloadkIsolateNoReloadChangesAppliedkInvalidTimelineRequest
- Update to version
4.0of the Dart IO service protocol extensions by making the following changes:- Change the type of the
updatedSinceparameter ofgetHttpProfilefromint?toDateTime?. - Change the type of the
timestampproperty ofHttpProfilefrominttoDateTime. - Add
eventsproperty toHttpProfileRequestRefandHttpProfileRequest. - Change the type of the
startTimeproperty ofHttpProfileRequestRefandHttpProfileRequestfrominttoDateTime. - Change the type of the
endTimeproperty ofHttpProfileRequestRefandHttpProfileRequestfromint?toDateTime?. - Remove the
eventsandmethodproperties fromHttpProfileRequestData. - Make the
contentLength,cookies,followRedirects,headers,maxRedirects,method, andpersistentConnectionproperties ofHttpProfileRequestDatanullable. - Change the type of the
startTimeproperty ofHttpProfileResponseDatafrominttoDateTime?. - Change the type of the
endTimeproperty ofHttpProfileResponseDatafromint?toDateTime?. - Make the
cookies,headers,compressionState,reasonPhrase,isRedirect,persistentConnection,contentLength,statusCode, andstartTimeproperties ofHttpProfileResponseDatanullable. - Add
isDirectandportproperties toHttpProfileProxyData. - Add
argumentsproperty toHttpProfileRequestEvent. - Change the type of the
timestampproperty ofHttpProfileRequestEventfrominttoDateTime.
- Change the type of the
- Add the following error codes to
-
13.0.025 Oct 2023Release notes
Open source →- Add Dart IO extension methods:
isSocketProfilingAvailableisHttpTimelineLoggingAvailableisHttpProfilingAvailable.
- Remove deprecated Dart IO extension methods:
startSocketProfilingpauseSocketProfilinggetHttpEnableTimelineLoggingsetHttpEnableTimelineLogging
- Remove deprecated
vmServiceConnectfrompackage:vm_service/vm_service_io.dart. - Remove deprecated constants from
RPCError. - Add
wrapFuturemethod that can be overridden to add additional logic to each VM service RPC call (like logging, tracking values, etc.). - Add
vmServiceConnectUriWithFactoryhelper that can create a generic [VmService] instance and connect it to a web socket URI. - Add
VmServiceFactorytypedef. - Add a static method
VmService.defaultFactorythat provides aVmServiceFactorymethod for theVmServiceclass. - Update SDK constraint to ^3.0.0
- Add Dart IO extension methods:
-
12.0.002 Oct 2023Release notes
Open source →- Update to version
4.13of the spec. - Add optional
librariesAlreadyCompiledparameter togetSourceReportRPC.
- Update to version
-
11.10.024 Aug 2023Release notes
Open source →- Add
wsUriproperty toVmService. If set, this property can be used to associate aVmServiceinstance to its targeted VM service based on its URI.
- Add
-
11.9.003 Aug 2023Release notes
Open source →- Update to version
4.12of the spec. - Add
TypeParametersRef; change supertype ofTypeParameterstoObj.
- Update to version
-
11.8.017 Jul 2023Release notes
Open source →- Update to version
4.11of the spec. - Add
isGetterandisSetterproperties toFuncRefandFunc.
- Update to version
-
11.7.223 Jun 2023 -
11.7.112 Jun 2023 -
11.7.010 May 2023 withdrawnNothing published for this version
-
11.6.010 May 2023Release notes
Open source →- Update to version
4.7of the spec. - Add deprecation notice to
Stack.awaiterFrames. - Add deprecation notice to
FrameKind.kAsyncActivation.
- Update to version
-
11.5.004 May 2023Release notes
Open source →- Update to version
4.6of the spec. - Add
getPerfettoCpuSamplesRPC. - Add deprecation notice to
InstanceKind.TypeRef.
- Update to version
-
11.4.021 Apr 2023 -
11.3.023 Mar 2023Release notes
Open source →- Update to version
4.4of the spec. - Add
labelproperty toInstanceRef. - Add
kUserTagtoInstanceKind.
- Update to version
-
11.2.120 Mar 2023Release notes
Open source →- Prevent
VmServerConnectionfrom convertingSentinelExceptions intoRPCErrors.
- Prevent
-
11.2.027 Feb 2023Release notes
Open source →- Update to version
4.3of the spec. - Add
isSealed,isMixinClass,isBaseClass,isInterfaceClass, andisFinalproperties toClass.
- Update to version
-
11.1.021 Feb 2023Release notes
Open source →- Reduce number of type checks in
toJson()methods. - Update to version
4.2of the spec. - Add
getInstancesAsListRPC.
- Reduce number of type checks in
-
11.0.107 Feb 2023 -
11.0.006 Feb 2023Release notes
Open source →- Change
HttpProfileRequestRef.idtype frominttoString. - Change
SocketStatistic.idtype frominttoString. - Change
ext.dart.io.getHttpProfileRequestidparameter type frominttoString. - Change
ext.dart.io.httpEnableTimelineLoggingparameter from 'enable' to 'enabled'.
- Change
-
10.1.227 Jan 2023 -
10.1.127 Jan 2023 withdrawnNothing published for this version
-
10.1.019 Jan 2023Release notes
Open source →- Update to version
4.1of the spec. - Add optional
includeSubclassesandincludeImplementersparameters togetInstances.
- Update to version
-
10.0.010 Jan 2023Release notes
Open source →- Update to version
4.0of the spec. - Update for incorrectly documented types for
WeakReference'starget,WeakProperty'skeyandvalue, andMirrorReference'smirrorReferent. - Add
Set,Record, andRecordTypetoInstanceKind. - Add deprecation notice to the
declproperty ofBoundField. - Add
nameproperty toBoundField. - Add deprecation notice to the
parentListIndexproperty ofInboundReference. - Change the type of the
parentFieldproperty ofInboundReferencefromFieldReftoFieldRef|String|int. - Add deprecation notice to the
parentListIndexproperty ofRetainingObject. - Change the type of the
parentFieldproperty ofRetainingObjectfromStringtoString|int. - Remove deprecated
timeSpanproperty fromCpuSamples. - Remove deprecated
timeSpanproperty fromCpuSamplesEvent.
- Update to version
-
9.4.006 Sep 2022Release notes
Open source →- Update to version
3.61of the spec. - Add
isolateGroupIdproperty to@IsolateandIsolate.
- Update to version
-
9.3.020 Jul 2022 -
9.2.020 Jul 2022 -
9.0.013 Jun 2022Release notes
Open source →- Update to version
3.58of the spec. - Added optional
localparameter tolookupResolvedPackageUrisRPC.
- Update to version
-
8.3.010 May 2022Release notes
Open source →- Update to version
3.57of the spec. - Added optional
libraryFiltersparameter togetSourceReportRPC.
- Update to version
-
8.2.217 Mar 2022Release notes
Open source →- Updated the following optional fields to be nullable in
SocketStatistic:endTimelastReadTimelastWriteTime
- Updated the following optional fields to be nullable in
-
8.2.109 Mar 2022Release notes
Open source →- Changed type of
UriList.urisfromdynamictoList<String?>?. - Remove
example/vm_service_asserts.dart'
- Changed type of
-
8.2.023 Feb 2022Release notes
Open source →- Update to version
3.56of the spec. - Added optional
lineandcolumnproperties toSourceLocation. - Added a new
SourceReportKind,BranchCoverage, which reports branch level coverage information.
- Update to version
-
8.1.017 Dec 2021Release notes
Open source →- Update to version
3.55of the spec. - Added
streamCpuSamplesWithUserTagRPC.
- Update to version
-
7.5.018 Nov 2021Release notes
Open source →- Update to version
3.53of the spec. - Added
setIsolatePauseModeRPC. - Deprecated
setExceptionPauseModein favor ofsetIsolatePauseMode.
- Update to version
-
7.4.004 Nov 2021Release notes
Open source →- Update to version
3.52of the spec. - Added
lookupResolvedPackageUrisandlookupPackageUrisRPCs andUriListtype.
- Update to version
-
7.3.031 Aug 2021Release notes
Open source →- Update to version
3.51of the spec. - Added optional
reportLinesparameter togetSourceReportRPC.
- Update to version
-
7.2.028 Jul 2021Nothing published for this version
-
7.1.115 Jul 2021Release notes
Open source →- Update to version
3.48of the spec. - Added
showsandhidesproperties toLibraryDependency. - Added
Profilerstream,UserTagChangedevent kind, andupdatedTagandpreviousTagproperties toEvent. - Fixed bug where a response without a type would cause a null type failure (dart-lang/sdk#46559).
- Update to version
-
7.1.003 Jun 2021Release notes
Open source →- Update to version
3.46of the spec. - Move
sourcePositionproperties intoClassRef,FieldRef, andFuncRef.
- Update to version
-
7.0.011 May 2021Release notes
Open source →- breaking bug fix: Fixed issue where response parsing could fail for
Context. - Add support for
setBreakpointStateRPC and updatedBreakpointclass to includeenabledproperty.
- breaking bug fix: Fixed issue where response parsing could fail for
-
6.2.029 Mar 2021Release notes
Open source →- Added support for
getHttpProfileandclearHttpProfiledart:ioservice extensions.
- Added support for
-
6.1.018 Feb 2021Release notes
Open source →- breaking bug fix: Fixed issue where the root object was omitted from
HeapSnapshot.classesand the sentinelHeapSnapshotObjectwas omitted fromHeapSnapshot.objects - Added
identityHashCodeproperty toHeapSnapshotObject, which can be used to compare objects across heap snapshots. - Added
successorsiterable toHeapSnapshotObject, which provides a convenient way to access children of a given object. - Added
klassgetter toHeapSnapshotObject. - Fixed issue where
nullcould be returned instead ofInstanceRefof typeNull. - Added
getAllocationTracesandsetTraceClassAllocationRPCs. - Updated
CpuSampleto includeidentityHashCodeandclassIdproperties. - Updated
Classto includetraceAllocationsproperty.
- breaking bug fix: Fixed issue where the root object was omitted from
-
6.1.0+119 Feb 2021 -
6.0.103 Feb 2021 -
6.0.1-nullsafety.128 Jan 2021 pre-releaseRelease notes
Open source →- Fix issue where some
Instanceproperties were not being populated correctly.
- Fix issue where some
-
6.0.1-nullsafety.022 Jan 2021 pre-release -
6.0.0-nullsafety-dev11 Jan 2021 pre-release