# This pubspec is currently mainly used to make it easier to develop on dart2js
# by making it a standalone package.
name: compiler
# This package is not intended for consumption on pub.dev. DO NOT publish.
publish_to: none
environment:
  sdk: '>=2.6.0 <3.0.0'

# NOTE: `pub get / pub upgrade` are generally not needed when working on this
# package. The `.packages` file in the repository root will be used by default.
dependencies:
  # Published packages - repo version ensured via dependency_overrides
  collection: any
  crypto: any
  dart2js_info: any
  front_end:
    path: ../front_end
  kernel:
    path: ../kernel

  # Unpublished packages that can be used via path dependency
  _fe_analyzer_shared:
    path: ../_fe_analyzer_shared
  _js_interop_checks:
    path: ../_js_interop_checks
  js_ast:
    path: ../js_ast
  js_runtime:
    path: ../js_runtime

dev_dependencies:
  # Published packages - repo version ensured via dependency_overrides
  args: any
  http: any
  js:
    path: ../js
  package_config: any
  path: any
  source_maps: any
  test: any
  # Unpublished packages that can be used via path dependency
  async_helper:
    path: ../async_helper
  dart2js_tools:
    path: ../dart2js_tools
  expect:
    path: ../expect
  modular_test:
    path: ../modular_test
  sourcemap_testing:
    path: ../sourcemap_testing
  testing:
    path: ../testing

dependency_overrides:
  # Packages with source in the SDK
  front_end:
    path: ../front_end
  kernel:
    path: ../kernel
  meta:
    path: ../meta

  # Packages brought in via DEPS
  args:
    path: ../../third_party/pkg/args
  async:
    path: ../../third_party/pkg/async
  charcode:
    path: ../../third_party/pkg/charcode
  collection:
    path: ../../third_party/pkg/collection
  convert:
    path: ../../third_party/pkg/convert
  crypto:
    path: ../../third_party/pkg/crypto
  dart2js_info:
    path: ../../third_party/pkg/dart2js_info
  fixnum:
    path: ../../third_party/pkg/fixnum
  http_parser:
    path: ../../third_party/pkg/http_parser
  matcher:
    path: ../../third_party/pkg/matcher
  mime:
    path: ../../third_party/pkg/mime
  package_config:
    path: ../../third_party/pkg_tested/package_config
  path:
    path: ../../third_party/pkg/path
  protobuf:
    path: ../../third_party/pkg/protobuf
  quiver:
    path: ../../third_party/pkg/quiver
  shelf:
    path: ../../third_party/pkg/shelf
  shelf_static:
    path: ../../third_party/pkg/shelf_static
  source_span:
    path: ../../third_party/pkg/source_span
  stack_trace:
    path: ../../third_party/pkg/stack_trace
  stream_channel:
    path: ../../third_party/pkg/stream_channel
  string_scanner:
    path: ../../third_party/pkg/string_scanner
  typed_data:
    path: ../../third_party/pkg/typed_data
  yaml:
    path: ../../third_party/pkg/yaml
