Skip to content

Conversation

@szeiger
Copy link
Contributor

@szeiger szeiger commented Jun 22, 2016

Trying to figure out what's wrong with #5237

nicolasstucki and others added 13 commits June 3, 2016 10:41
Cherry-picked c5f3d3f

Edited comment: in stringOf, let GenIterable subsume
both Iterable and ParIterable.

This change is required for Scala.js compatibility as it does not
support parallel collections.

Conflicts:

	src/library/scala/runtime/ScalaRunTime.scala
Fresh name for catcher gets a dollar. "Here, have a dollar."
Test due to retronym demonstrates possible conflict.

Over the lifetime of the universe, surely at least one code
monkey would type in that identifier to catch a banana.
SI-9737 [no-merge] Backport stringOf ParIterable
SI-9245 Fresher name in Try and test
- Support directories in `-doc-external-doc`: It is documented as
  accepting a “classpath_entry_path” for the keys but this only worked
  for JARs and not for individual class files. When checking for
  external-doc mappings for a Symbol, we now find the root directory
  relative to a class file instead of using the full class file path.
  The corresponding tests for SI-191 and SI8557 are also fixed to
  support individual class files instead of JARs in partest. This is
  required for the sbt build which runs partest on “quick” instead of
  “pack”.

- Fix version and repository handling for bootstrapping. The bootstrap
  `scalaInstance` can now be resolved from any repository added to the
  project (not just the bootstrap repositories) by using a different
  workaround for sbt/sbt#1872.

- Workaround for sbt/sbt#2640 (putting the
  wrong `scalaInstance` on partest’s classpath). The required
  `ScalaInstance` constructor is deprecated, so we have to disable
  deprecation warnings and fatal warnings until there is a better fix.

- Add MiMa to the sbt build (port of the old `test.bc` ant task). The
  sbt-mima plugin doesn’t have all the features we need, so we do it
  manually in a similar way to what the plugin does. Checks are done
  in both directions for the `library` and `compiler` projects. The
  base version has to be set in `build.sbt`. When set to `None`, MiMa
  checks are skipped. MiMa checks are run sequentially to avoid spurious
  errors (see lightbend-labs/mima#115).

- Port the OSGi tests to the sbt build. The set of JARs that gets copied
  into build/osgi as bundles is a bit different from the ant build. We
  omit the source JARs but add additional modules that are part of the
  Scala distribution, which seems more correct.

- Get rid up `pull-binary-libs.sh` for the sbt build. Add artifacts are
  resolved from the special bootstrap repository through Ivy. The
  special `code.jar` and `instrumented.jar` artifacts are copied to the
  location where partest expects them (because these paths are hardcoded
  in partest). Other extra JARs for partest in `test/files/lib` are
  referenced directly from the Ivy cache.

- Move common settings that should be available with unqualified names
  in local `.sbt` files and on the command line into an auto-plugin.

- Add an `antStyle` setting to sbt to allow users to easily enable
  ant-style incremental compilation instead of sbt’s standard name
  hashing with `set antStyle := true`.

- Disable verbose `info`-level logging during sbt startup for both,
  `validate/test` and `validate/publish-core` jobs. Update logging is
  no longer disabled when running locally (where it is useful and
  doesn’t generate excessive output).

- Pass optimization flags for scalac down to partest, using the new
  partest version 1.0.15\6.

- Call the new sbt-based PR validation from `scripts/jobs/validate/test`.

- Disable the tests `run/t7843-jsr223-service` and `run/t7933` from
  scala#4959 for now. We need to set up
  a new test project (either partest or junit) that can run them on a
  packaged version of Scala, or possibly move them into a separate
  project that would naturally run from a packaged Scala as part of the
  community build.
Use sbt for PR validation [ci: last-only]
@scala-jenkins scala-jenkins added this to the 2.12.0-RC1 milestone Jun 22, 2016
"partest --srcpath scaladoc" \
osgiTestFelix/clean \
osgiTestFelix/test \
osgiTestEclipse/clean \
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@szeiger should we revert this change?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I'll revert. It doesn't really hurt but should not be needed.

@lrytz
Copy link
Member

lrytz commented Jun 22, 2016

thanks for performing the osgi-versions-dance!

@szeiger
Copy link
Contributor Author

szeiger commented Jun 23, 2016

@lrytz: It was actually you who peformed the osgi versions dance. The history of the ant build points to 8247b8f. I just copied what you did there. I still don't know why the old version failed (and apparently, neither did you).

- More memory for compiling partest tests

- Enable more detailed logging for partest failures:

  Partest’s `AntRunner` has extra code for logging details of all failed
  tests at the end of a run which is not present in `SbtRunner` but we
  can set the `--show-log` and `--show-diff` options to get similar
  output interspersed with the main test log.

- Update OSGi test dependencies for sbt build to same versions as in ant
  (see 8247b8f for the motivation for
  this change).

- Disable MiMa checks (to be reactivated after M5).
@szeiger szeiger force-pushed the wip/merge-2.11-to-2.12-june-19 branch from 7ae877a to 2d85fe4 Compare June 23, 2016 10:53
@szeiger
Copy link
Contributor Author

szeiger commented Jun 23, 2016

Squashed (omitting 7958b3d)

@szeiger
Copy link
Contributor Author

szeiger commented Jun 23, 2016

All tests green. Since this was originally @lrytz's PR, I suppose it's up to me to say: LGTM

@adriaanm adriaanm merged commit 4e95083 into scala:2.12.x Jun 23, 2016
@adriaanm adriaanm modified the milestones: 2.12.0-M5, 2.12.0-RC1 Jun 23, 2016
@adriaanm adriaanm added 2.12 and removed 2.12 labels Oct 29, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants