Modified version of dotty suporting language specific and library-specific optimizations
XML String Interpolator for Dotty
benchmark compilation of Dotty
Generic programming for Scala
A simple web interface for benchmarks
leafty/sav-prooving-data-structure 1
SAV Project: Proving Correctness of Scala Lists Data Structure
Research platform for new language concepts and compiler technologies for Scala.
issue closedlampepfl/dotty
RepeatedParamType should not be a subtype of anything (until ElimRepeated)
While looking at scala/bug#4775, scala/bug#8344, scala/bug#11015, I was thinking that T* should not be a subtype of Seq[T] (nor even Any, as it's not an expression type) until we've eliminated repeated params. This is important for overloading resolution (see referenced bugs).
Right? 🤔
closed time in 8 minutes
adriaanmcreate barnchdotty-staging/scalatest
branch : increase-heapsize-community-build
created branch time in 8 minutes
push eventdotty-staging/scalatest
commit sha 52184070338b6e8935181a97a0d7b25a359697e1
.jvmopts: Increase max heap size to 10 GB The previous default of 4 GB lead to the JVM getting stuck in garbage collection seemingly forever.
push time in 10 minutes
issue commentscalacenter/scala-3-migration-guide
Document editors (metals) support for cross-built projects
Not sure where to add it, we are saying here that Scala 3 is supported. We could add it also to overview, but the default behaviour is that Metals supports multiple versions at the same time.
We could add a mention in migration guide that multiple versions are supported and link to Metals with a comment to check exactly what is supported.
comment created time in 10 minutes
issue commentscalacenter/scala-3-migration-guide
Document editors (metals) support for cross-built projects
I agree that we are lacking documentation on this side. But it is a general concern about cross-built project (version and platform).
@tgodzik Don't you think it should be documented in the Metals website? This way we could add a link from here and maybe elaborate further for the context of the migration.
comment created time in 29 minutes
pull request commentlampepfl/dotty
[sbt-dotty] Use sbt loader as parent of scala instance loader
@eed3si9n @eatkins
My plan is to use a filtered version of appConfiguration.provider.loader as a parent of scalaInstance.loader so that the Scala 3 compiler can load the xsbti.* classes from the same loader than sbt. A similar thing is already done inside sbt to load the jline Terminal provided by sbt in the Scala REPL (code here)
Right now I am testing this in sbt-dotty but my plan is to implement it in sbt by reusing the scalaInstanceTopLoader key. This thing will allow me to get rid of the messy CompilerClassLoader that is needed today.
Can you confirm that this is the right direction?
comment created time in 34 minutes
issue openedscalacenter/scala-3-migration-guide
Document editors (metals) support for cross-built projects
AFAIK there's no documentation available rn about using an editor (vscode) together with metals and have support for both Scala 2.x and Scala 3 in a single project. It would be nice if that rather common use case was supported and documented.
created time in 35 minutes
push eventJetBrains/intellij-scala
commit sha 00c124ab3fb3aa4a230cab87e92a96cf9e368491
extract utility extension method #SCL-16515
push time in 38 minutes
PR closed JetBrains/intellij-scala
Hey, this is my first contribution here, so let me know if I need to do something differently.
This change should fix https://youtrack.jetbrains.com/issue/SCL-16515
I'm not particularly fond of the code. I didn't study the API very deeply, I just went with the simplest thing that seemed to fix the issue. I'm open to any suggestions to make it cleaner.
I'd like to use the setting Trailing Comma: Add when multiline but until this is fixed, it is nearly unusable.
pr closed time in 40 minutes
pull request commentJetBrains/intellij-scala
don't add trailing commas for block parameters not enclosed in parentheses
Thanks for your contribution! I will manually cherry-pick the fix.
comment created time in 40 minutes
push eventJetBrains/intellij-scala
commit sha 49e641de2ca1377a2cde53137ec3c022b9d69c00
Compilation charts: fix zoom action. #SCL-17802
commit sha 049d1c71d4295f8ac58219c3ae0948de52cebaff
fix NPE null editor is passed sometimes, for example in ShowAutoImportPass.getImportHints EA-244812
commit sha 8411b6fefc4fe99e4c914e84cb30310f3452bf96
don't restart daemon and clear BuildManager state for the default project EA-247139
commit sha 91a20bbfbc7012410677f8b20d3eb4dab754e640
use platform api to run timing-based performance tests it should have more robust computation of expected time depending on hardware #flakyTest
commit sha 651053ccc0ddca79b1a96d21fec337d3a493de9e
use `textContains` method it is optimized for AST based psi elements HighlightingPerformanceTest fixed
commit sha 5ff3014443935ce0dbf867032958cefae24affa1
Merged branch idea203.release-niktrop into idea203.release
commit sha c29fa7a5d5b856367c356a90728facdae3d6d99e
Merged branch idea203.release-dnaumenko into idea203.release
commit sha 8f73b521c68575e6a043409dc76da73489318b47
TASTy: v3.0.0-M2
commit sha 8e129774a30a62f8082eac5affd792af2f80f95c
don't add trailing commas for block parameters not enclosed in parentheses #SCL-16515 fixed
commit sha 278f8c0d6f71635f9a8b8a6b707d0ba948da255c
extract utility extension method #SCL-16515
commit sha c8c4e5fee4a58b4360282bdb9deea12e549f4ed9
extract utility extension method, move method call closer to usage place #SCL-16515
push time in 41 minutes
Pull request review commentlampepfl/dotty
Fix #10464: Match overridden definitions
+import scala.quoted._++object MatchMac {++ inline def apply(inline any: Any): Unit = ${ printMacImpl('any) }++ def printMacImpl(any: Expr[Any])(using Quotes): Expr[Unit] = {+ import quotes.reflect._+ val res = any match {+ case '{ ($f: Person).name } => "matched!"+ case _ => "not matched"+ }+ '{ println(${Expr(res)}) }+ }
The subtle semantics in quoted patterns may cause problems.
Maybe the programmer can change to Reflection for such use cases?
Or, instead of quoted patterns, add extractors to support pattern match on Expr[T] with clear intention and more predictable semantics.
comment created time in 43 minutes
issue commentlampepfl/dotty
Adopt the configurable warning mechanism from Scala 2.13.2
@som-snytt have you pushed the changes to some branch? Then maybe I could have a look
comment created time in an hour
issue commentlampepfl/dotty
Adopt the configurable warning mechanism from Scala 2.13.2
@prolativ I did a little bit on -Wconf and some more on "align compiler options with scala 2". I didn't do work on reporters yet, so you can pick it up if you like. I know Martin doesn't favor warnings, so I think the important use case is migration warnings. I have some day job obligations. I didn't look further at -language as merely warning suppression.
comment created time in an hour
pull request commentlampepfl/dotty
[sbt-dotty] Use sbt loader as parent of scala instance loader
OK, I'd be interested in hearing the opinion of the sbt maintainers on this direction.
comment created time in an hour
issue commentlampepfl/dotty
Adopt the configurable warning mechanism from Scala 2.13.2
The sooner the better of course, but I don't think it's critical for RC1.
comment created time in an hour
pull request commentlampepfl/dotty
[sbt-dotty] Use sbt loader as parent of scala instance loader
@smarter
If this works well enough, could this be done upstream in sbt for Scala 2 too so we don't need a special case just for Scala 3?
Yes absolutely I test it first in sbt-dotty then I will generalize in sbt for all Scala versions.
comment created time in an hour
pull request commentlampepfl/dotty
[sbt-dotty] Use sbt loader as parent of scala instance loader
This PR fix the problem by using the sbt ClassLoader as a parent of the ScalaInstance.loader.
If this works well enough, could this be done upstream in sbt for Scala 2 too so we don't need a special case just for Scala 3?
comment created time in an hour
pull request commentlampepfl/dotty
[sbt-dotty] Use sbt loader as parent of scala instance loader
As a side note, here is the code in Mill that create the ScalaInstance loader:
https://github.com/lihaoyi/mill/blob/aa3240a52a72cfa5fe76c4d4c747f7f61eef2f1d/scalalib/worker/src/ZincWorkerImpl.scala#L309-L321
comment created time in an hour
pull request commentlampepfl/dotty
[sbt-dotty] Use sbt loader as parent of scala instance loader
The new sbt-dotty works well without the CompilerClassLoader.
However Mill won't work until we apply the same logic inside it: Mill should create a ScalaInstance whose loader is compatible with the Zinc loader.
So, before merging this PR, I will have to:
- apply the
ScalaInstanceloader fix in Mill - release Mill
- update the community build projects that rely on Mill
@sjrd and @smarter: Do you confirm this is the right direction?
comment created time in an hour
issue commentlampepfl/dotty
Adopt the configurable warning mechanism from Scala 2.13.2
@som-snytt what's the status of this? Is choosing the proper compiler setting name the only blocker? If think it might be quite important to reproduce scala2's functionality before 3.0.0-RC1. Otherwise users who are used to treating warnings as errors might be reluctant to switch to scala3. @smarter what do you think?
comment created time in an hour
push eventlampepfl/dotty
commit sha 35c1c90c3b6111f7745645ce94e0a44c846b920b
Handle exports presenting in scala3doc
commit sha f8e2559d14a368793e151a3247b3db9a560f86e2
Add proper flag exported handling in compiler and fix type presentation for constant types
commit sha 5633399b7313b3bc3e0e6130830db4bcae6c3cbb
Add testcases of exports for manual testing
commit sha ff3db41f0355c1a4da5d51e1fe48f1fd47176164
Handle exports of object properties
commit sha 1efc4af5945880df5c07fbf6b24cd626da1a720a
Normalize name of objects with exported definitions
commit sha 85e48f77970b3b627a840538d5a3b52be9ea9a1a
Merge pull request #10504 from BarkingBad/scala3doc-exports Handle exports presenting in scala3doc
push time in an hour
issue closedlampepfl/dotty
Add `Exported` flag to reflection API
closed time in an hour
nicolasstucki