Skip to content

Commit

Permalink
Version 3.3.0-6.0.dev
Browse files Browse the repository at this point in the history
Merge d87a48d into dev
  • Loading branch information
Dart CI committed Oct 10, 2023
2 parents 0023fc3 + d87a48d commit 0732be6
Show file tree
Hide file tree
Showing 33 changed files with 437 additions and 578 deletions.
2 changes: 1 addition & 1 deletion DEPS
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ vars = {
# hashes.
"co19_rev": "6ec024498b3546c775b65cd2d964eb3c6ff0fb2f",
# This line prevents conflicts when both packages are rolled simultaneously.
"co19_2_rev": "0454b178fdf6697e898b5e5c7ee553a9bc266faa",
"co19_2_rev": "d87f9096ec0a14cd7c32c33316fb2378b89d6a45",

# The internal benchmarks to use. See go/dart-benchmarks-internal
"benchmarks_internal_rev": "f048a4a853e3062056d39c3db100acdde42f16d6",
Expand Down
6 changes: 3 additions & 3 deletions pkg/analysis_server/lib/lsp_protocol/protocol.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

export 'package:analysis_server/lsp_protocol/protocol_custom_generated.dart'
export 'package:language_server_protocol/protocol_custom_generated.dart'
hide jsonEncoder;
export 'package:analysis_server/lsp_protocol/protocol_generated.dart';
export 'package:analysis_server/lsp_protocol/protocol_special.dart';
export 'package:language_server_protocol/protocol_generated.dart';
export 'package:language_server_protocol/protocol_special.dart';
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,15 @@

import 'dart:async';

import 'package:analysis_server/lsp_protocol/protocol_custom_generated.dart';
import 'package:analysis_server/lsp_protocol/protocol_special.dart';
import 'package:analysis_server/protocol/protocol.dart';
import 'package:analysis_server/protocol/protocol_generated.dart';
import 'package:analysis_server/src/handler/legacy/legacy_handler.dart';
import 'package:analysis_server/src/lsp/constants.dart';
import 'package:analysis_server/src/lsp/handlers/handler_states.dart';
import 'package:analysis_server/src/lsp/handlers/handlers.dart' as lsp;
import 'package:analysis_server/src/lsp/json_parsing.dart';
import 'package:language_server_protocol/json_parsing.dart';
import 'package:language_server_protocol/protocol_custom_generated.dart';
import 'package:language_server_protocol/protocol_special.dart';

/// The handler for the `lsp.handle` request.
class LspOverLegacyHandler extends LegacyHandler {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ import 'dart:io';

import 'package:analysis_server/lsp_protocol/protocol.dart';
import 'package:analysis_server/src/lsp/channel/lsp_channel.dart';
import 'package:analysis_server/src/lsp/json_parsing.dart';
import 'package:analysis_server/src/lsp/lsp_packet_transformer.dart';
import 'package:analyzer/instrumentation/instrumentation.dart';
import 'package:language_server_protocol/json_parsing.dart';

/// Instances of the class [LspByteStreamServerChannel] implement an
/// [LspServerCommunicationChannel] that uses a stream and a sink (typically,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@

import 'dart:async';

import 'package:analysis_server/lsp_protocol/protocol_generated.dart';
import 'package:analysis_server/lsp_protocol/protocol_special.dart';
import 'package:analysis_server/src/analysis_server.dart';
import 'package:analysis_server/src/computer/computer_call_hierarchy.dart'
as call_hierarchy;
Expand All @@ -17,6 +15,8 @@ import 'package:analyzer/dart/analysis/results.dart';
import 'package:analyzer/dart/analysis/session.dart';
import 'package:analyzer/source/line_info.dart';
import 'package:analyzer/source/source_range.dart';
import 'package:language_server_protocol/protocol_generated.dart';
import 'package:language_server_protocol/protocol_special.dart';

typedef StaticOptions
= Either3<bool, CallHierarchyOptions, CallHierarchyRegistrationOptions>;
Expand Down
2 changes: 1 addition & 1 deletion pkg/analysis_server/lib/src/lsp/handlers/handlers.dart
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@ import 'package:analysis_server/src/analysis_server.dart';
import 'package:analysis_server/src/lsp/constants.dart';
import 'package:analysis_server/src/lsp/handlers/handler_cancel_request.dart';
import 'package:analysis_server/src/lsp/handlers/handler_reject.dart';
import 'package:analysis_server/src/lsp/json_parsing.dart';
import 'package:analysis_server/src/lsp/lsp_analysis_server.dart';
import 'package:analysis_server/src/lsp/progress.dart';
import 'package:analysis_server/src/request_handler_mixin.dart';
Expand All @@ -19,6 +18,7 @@ import 'package:analyzer/src/util/performance/operation_performance.dart';
import 'package:analyzer/src/utilities/cancellation.dart';
import 'package:analyzer_plugin/protocol/protocol.dart';
import 'package:analyzer_plugin/src/protocol/protocol_internal.dart';
import 'package:language_server_protocol/json_parsing.dart';
import 'package:path/path.dart' as path;

export 'package:analyzer/src/utilities/cancellation.dart';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

import 'package:analysis_server/lsp_protocol/protocol_custom_generated.dart';
import 'package:analysis_server/src/services/refactoring/agnostic/change_method_signature.dart';
import 'package:analysis_server/src/services/refactoring/framework/formal_parameter.dart';
import 'package:analysis_server/src/services/refactoring/framework/refactoring_producer.dart';
import 'package:analysis_server/src/services/refactoring/framework/write_invocation_arguments.dart'
show ArgumentsTrailingComma;
import 'package:analyzer_plugin/utilities/change_builder/change_builder_core.dart';
import 'package:language_server_protocol/protocol_custom_generated.dart';

/// The refactoring that converts all formal parameters into required named.
class ConvertAllFormalParametersToNamed extends RefactoringProducer {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

import 'package:analysis_server/lsp_protocol/protocol_custom_generated.dart';
import 'package:analysis_server/src/services/refactoring/agnostic/change_method_signature.dart';
import 'package:analysis_server/src/services/refactoring/framework/formal_parameter.dart';
import 'package:analysis_server/src/services/refactoring/framework/refactoring_producer.dart';
import 'package:analysis_server/src/services/refactoring/framework/write_invocation_arguments.dart'
show ArgumentsTrailingComma;
import 'package:analyzer/src/utilities/extensions/collection.dart';
import 'package:analyzer_plugin/utilities/change_builder/change_builder_core.dart';
import 'package:language_server_protocol/protocol_custom_generated.dart';

/// The refactoring that converts selected formal parameters into required
/// named.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

import 'package:analysis_server/lsp_protocol/protocol_generated.dart';
import 'package:analysis_server/src/lsp/constants.dart';
import 'package:analysis_server/src/services/refactoring/convert_all_formal_parameters_to_named.dart';
import 'package:analysis_server/src/services/refactoring/convert_selected_formal_parameters_to_named.dart';
import 'package:analysis_server/src/services/refactoring/framework/refactoring_context.dart';
import 'package:analysis_server/src/services/refactoring/framework/refactoring_producer.dart';
import 'package:analysis_server/src/services/refactoring/move_selected_formal_parameters_left.dart';
import 'package:analysis_server/src/services/refactoring/move_top_level_to_file.dart';
import 'package:language_server_protocol/protocol_generated.dart';

/// A function that can be executed to create a refactoring producer.
typedef ProducerGenerator = RefactoringProducer Function(RefactoringContext);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

import 'package:analysis_server/lsp_protocol/protocol_custom_generated.dart';
import 'package:analysis_server/lsp_protocol/protocol_generated.dart';
import 'package:analysis_server/src/services/correction/util.dart';
import 'package:analysis_server/src/services/refactoring/framework/refactoring_context.dart';
import 'package:analysis_server/src/services/search/search_engine.dart';
Expand All @@ -13,6 +11,8 @@ import 'package:analyzer/dart/ast/ast.dart';
import 'package:analyzer/dart/ast/token.dart';
import 'package:analyzer/src/dart/analysis/session_helper.dart';
import 'package:analyzer_plugin/utilities/change_builder/change_builder_core.dart';
import 'package:language_server_protocol/protocol_custom_generated.dart';
import 'package:language_server_protocol/protocol_generated.dart';

/// An object that can compute a refactoring in a Dart file.
abstract class RefactoringProducer {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

import 'package:analysis_server/lsp_protocol/protocol_custom_generated.dart';
import 'package:analysis_server/src/services/refactoring/agnostic/change_method_signature.dart';
import 'package:analysis_server/src/services/refactoring/framework/refactoring_producer.dart';
import 'package:analysis_server/src/services/refactoring/framework/write_invocation_arguments.dart'
show ArgumentsTrailingComma;
import 'package:analyzer_plugin/utilities/change_builder/change_builder_core.dart';
import 'package:collection/collection.dart';
import 'package:language_server_protocol/protocol_custom_generated.dart';

/// The refactoring that move selected formal parameters one position left
/// in the list of formal parameters.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,6 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

import 'package:analysis_server/lsp_protocol/protocol_custom_generated.dart'
show CommandParameter, SaveUriCommandParameter;
import 'package:analysis_server/lsp_protocol/protocol_generated.dart';
import 'package:analysis_server/src/lsp/constants.dart';
import 'package:analysis_server/src/services/refactoring/framework/refactoring_producer.dart';
import 'package:analysis_server/src/utilities/extensions/ast.dart';
Expand All @@ -19,6 +16,9 @@ import 'package:analyzer_plugin/utilities/change_builder/change_builder_core.dar
import 'package:analyzer_plugin/utilities/change_builder/change_builder_dart.dart';
import 'package:analyzer_plugin/utilities/range_factory.dart';
import 'package:collection/collection.dart';
import 'package:language_server_protocol/protocol_custom_generated.dart'
show CommandParameter, SaveUriCommandParameter;
import 'package:language_server_protocol/protocol_generated.dart';

/// A refactoring that will move one or more top-level declarations to a
/// different file. The destination file can either be a new file or an existing
Expand Down
3 changes: 3 additions & 0 deletions pkg/analysis_server/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ dependencies:
crypto: any
dart_style: any
http: any
language_server_protocol: any
leak_tracker: any
linter: any
meta: any
Expand Down Expand Up @@ -82,6 +83,8 @@ dependency_overrides:
path: ../../third_party/pkg/intl
js:
path: ../js
language_server_protocol:
path: ../../third_party/pkg/language_server_protocol
linter:
path: ../linter
lints:
Expand Down
2 changes: 1 addition & 1 deletion pkg/analysis_server/test/lsp/call_hierarchy_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

import 'package:analysis_server/lsp_protocol/protocol_generated.dart';
import 'package:language_server_protocol/protocol_generated.dart';
import 'package:test/test.dart';
import 'package:test_reflective_loader/test_reflective_loader.dart';

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ import 'dart:async';

import 'package:analysis_server/lsp_protocol/protocol.dart';
import 'package:analysis_server/src/lsp/constants.dart';
import 'package:analysis_server/src/lsp/json_parsing.dart';
import 'package:analyzer/src/test_utilities/test_code_format.dart';
import 'package:language_server_protocol/json_parsing.dart';
import 'package:test/test.dart';
import 'package:test_reflective_loader/test_reflective_loader.dart';

Expand Down
2 changes: 1 addition & 1 deletion pkg/analysis_server/test/lsp/initialization_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,11 @@ import 'dart:async';
import 'package:analysis_server/lsp_protocol/protocol.dart';
import 'package:analysis_server/src/analysis_server.dart';
import 'package:analysis_server/src/lsp/constants.dart';
import 'package:analysis_server/src/lsp/json_parsing.dart';
import 'package:analysis_server/src/lsp/server_capabilities_computer.dart';
import 'package:analysis_server/src/plugin/plugin_manager.dart';
import 'package:analyzer/file_system/memory_file_system.dart';
import 'package:analyzer/src/util/file_paths.dart' as file_paths;
import 'package:language_server_protocol/json_parsing.dart';
import 'package:test/test.dart';
import 'package:test_reflective_loader/test_reflective_loader.dart';

Expand Down
2 changes: 1 addition & 1 deletion pkg/analysis_server/test/lsp/request_helpers_mixin.dart
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@ import 'dart:async';

import 'package:analysis_server/lsp_protocol/protocol.dart';
import 'package:analysis_server/src/lsp/constants.dart';
import 'package:analysis_server/src/lsp/json_parsing.dart';
import 'package:analysis_server/src/lsp/mapping.dart';
import 'package:analyzer/source/line_info.dart';
import 'package:collection/collection.dart';
import 'package:language_server_protocol/json_parsing.dart';
import 'package:test/test.dart' as test show expect;
import 'package:test/test.dart' hide expect;

Expand Down
2 changes: 1 addition & 1 deletion pkg/analysis_server/test/lsp/server_abstract.dart
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ import 'package:analysis_server/lsp_protocol/protocol.dart';
import 'package:analysis_server/src/analytics/analytics_manager.dart';
import 'package:analysis_server/src/legacy_analysis_server.dart';
import 'package:analysis_server/src/lsp/constants.dart';
import 'package:analysis_server/src/lsp/json_parsing.dart';
import 'package:analysis_server/src/lsp/lsp_analysis_server.dart';
import 'package:analysis_server/src/plugin/plugin_manager.dart';
import 'package:analysis_server/src/server/crash_reporting_attachments.dart';
Expand All @@ -24,6 +23,7 @@ import 'package:analyzer/src/util/file_paths.dart' as file_paths;
import 'package:analyzer_plugin/protocol/protocol.dart' as plugin;
import 'package:analyzer_plugin/src/protocol/protocol_internal.dart' as plugin;
import 'package:collection/collection.dart';
import 'package:language_server_protocol/json_parsing.dart';
import 'package:path/path.dart' as path;
import 'package:test/test.dart' hide expect;
import 'package:unified_analytics/unified_analytics.dart';
Expand Down
2 changes: 1 addition & 1 deletion pkg/analysis_server/test/lsp/type_hierarchy_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

import 'package:analysis_server/lsp_protocol/protocol_generated.dart';
import 'package:analyzer/src/test_utilities/test_code_format.dart';
import 'package:language_server_protocol/protocol_generated.dart';
import 'package:test/test.dart';
import 'package:test_reflective_loader/test_reflective_loader.dart';

Expand Down
2 changes: 1 addition & 1 deletion pkg/analysis_server/test/tool/lsp_spec/json_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
import 'dart:convert';

import 'package:analysis_server/lsp_protocol/protocol.dart';
import 'package:analysis_server/src/lsp/json_parsing.dart';
import 'package:language_server_protocol/json_parsing.dart';
import 'package:test/test.dart';

void main() {
Expand Down
4 changes: 2 additions & 2 deletions pkg/analysis_server/test/tool/lsp_spec/readme_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@ import '../../../tool/lsp_spec/meta_model_reader.dart';
void main() {
final serverPkgPath = _getAnalysisServerPkgPath();
final readmeFile = File(path.join(serverPkgPath, 'tool/lsp_spec/README.md'));
final metaModelJsonFile =
File(path.join(serverPkgPath, 'tool/lsp_spec/lsp_meta_model.json'));
final metaModelJsonFile = File(path.join(serverPkgPath,
'../../third_party/pkg/language_server_protocol/lsp_meta_model.json'));

group('LSP readme', () {
test('contains all methods', () {
Expand Down
30 changes: 8 additions & 22 deletions pkg/analysis_server/tool/lsp_spec/codegen_dart.dart
Original file line number Diff line number Diff line change
Expand Up @@ -627,7 +627,14 @@ void _writeEquals(IndentableStringBuffer buffer, Interface interface) {
for (var field in _getAllFields(interface)) {
buffer.write(' && ');
final type = resolveTypeAlias(field.type);
_writeEqualsExpression(buffer, type, field.name, 'other.${field.name}');
final thisName = field.name;
final otherName = 'other.${field.name}';
if (type is ArrayType || type is MapType) {
buffer.write(
'const DeepCollectionEquality().equals($thisName, $otherName)');
} else {
buffer.write('$thisName == $otherName');
}
}
buffer
..writeln(';')
Expand All @@ -636,27 +643,6 @@ void _writeEquals(IndentableStringBuffer buffer, Interface interface) {
..writeIndentedln('}');
}

void _writeEqualsExpression(IndentableStringBuffer buffer, TypeBase type,
String thisName, String otherName) {
if (type is ArrayType) {
final elementType = type.elementType;
final elementDartType = elementType.dartTypeWithTypeArgs;
buffer.write(
'listEqual($thisName, $otherName, ($elementDartType a, $elementDartType b) => ');
_writeEqualsExpression(buffer, elementType, 'a', 'b');
buffer.write(')');
} else if (type is MapType) {
final valueType = type.valueType;
final valueDartType = valueType.dartTypeWithTypeArgs;
buffer.write(
'mapEqual($thisName, $otherName, ($valueDartType a, $valueDartType b) => ');
_writeEqualsExpression(buffer, valueType, 'a', 'b');
buffer.write(')');
} else {
buffer.write('$thisName == $otherName');
}
}

void _writeField(
IndentableStringBuffer buffer, Interface interface, Field field) {
_writeDocCommentsAndAnnotations(buffer, field);
Expand Down
Loading

0 comments on commit 0732be6

Please sign in to comment.